@procivis/one-react-native-components 0.3.27 → 0.3.50
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/entity/entity-attributes.js +14 -1
- package/lib/commonjs/components/entity/entity-attributes.js.map +1 -1
- package/lib/commonjs/components/entity/entity-details-with-buttons.js +9 -42
- package/lib/commonjs/components/entity/entity-details-with-buttons.js.map +1 -1
- package/lib/commonjs/components/entity/entity-details.js +60 -32
- package/lib/commonjs/components/entity/entity-details.js.map +1 -1
- package/lib/commonjs/components/entity/index.js +2 -15
- package/lib/commonjs/components/entity/index.js.map +1 -1
- package/lib/commonjs/components/history/history-list-item.js +14 -12
- package/lib/commonjs/components/history/history-list-item.js.map +1 -1
- package/lib/commonjs/components/proof-request/share-credential.js +1 -2
- package/lib/commonjs/components/proof-request/share-credential.js.map +1 -1
- package/lib/commonjs/ui-components/blur/index.js +2 -9
- package/lib/commonjs/ui-components/blur/index.js.map +1 -1
- package/lib/commonjs/ui-components/buttons/hold-button.js +3 -2
- package/lib/commonjs/ui-components/buttons/hold-button.js.map +1 -1
- package/lib/commonjs/ui-components/camera/index.js +2 -9
- package/lib/commonjs/ui-components/camera/index.js.map +1 -1
- package/lib/commonjs/ui-components/control/index.js +0 -12
- package/lib/commonjs/ui-components/control/index.js.map +1 -1
- package/lib/commonjs/ui-components/credential/card/credential-details-card.js +1 -1
- package/lib/commonjs/ui-components/credential/card/credential-details-card.js.map +1 -1
- package/lib/commonjs/ui-components/credential/credential-carousel-images.js +15 -8
- package/lib/commonjs/ui-components/credential/credential-carousel-images.js.map +1 -1
- package/lib/commonjs/ui-components/entity/entity-cluster.js +50 -2
- package/lib/commonjs/ui-components/entity/entity-cluster.js.map +1 -1
- package/lib/commonjs/ui-components/entity/index.js +3 -16
- package/lib/commonjs/ui-components/entity/index.js.map +1 -1
- package/lib/commonjs/ui-components/history/history-details.js +1 -1
- package/lib/commonjs/ui-components/history/history-details.js.map +1 -1
- package/lib/commonjs/ui-components/history/index.js +4 -27
- package/lib/commonjs/ui-components/history/index.js.map +1 -1
- package/lib/commonjs/ui-components/icons/entity.js +10 -13
- package/lib/commonjs/ui-components/icons/entity.js.map +1 -1
- package/lib/commonjs/ui-components/input/index.js +3 -32
- package/lib/commonjs/ui-components/input/index.js.map +1 -1
- package/lib/commonjs/ui-components/list/index.js +4 -19
- package/lib/commonjs/ui-components/list/index.js.map +1 -1
- package/lib/commonjs/ui-components/loader/index.js +2 -13
- package/lib/commonjs/ui-components/loader/index.js.map +1 -1
- package/lib/commonjs/ui-components/pin/index.js +2 -21
- package/lib/commonjs/ui-components/pin/index.js.map +1 -1
- package/lib/commonjs/ui-components/screens/nerd-mode-screen.js.map +1 -1
- package/lib/commonjs/ui-components/searchbar/index.js +3 -16
- package/lib/commonjs/ui-components/searchbar/index.js.map +1 -1
- package/lib/commonjs/ui-components/settings/index.js +6 -37
- package/lib/commonjs/ui-components/settings/index.js.map +1 -1
- package/lib/commonjs/ui-components/state/index.js +2 -15
- package/lib/commonjs/ui-components/state/index.js.map +1 -1
- package/lib/commonjs/utils/date.js +1 -1
- package/lib/commonjs/utils/date.js.map +1 -1
- package/lib/commonjs/utils/hooks/connectivity/connectivity.test.js +4 -0
- package/lib/commonjs/utils/hooks/connectivity/connectivity.test.js.map +1 -1
- package/lib/commonjs/utils/hooks/core/backup.js +22 -66
- package/lib/commonjs/utils/hooks/core/backup.js.map +1 -1
- package/lib/commonjs/utils/hooks/core/core-init.js +6 -2
- package/lib/commonjs/utils/hooks/core/core-init.js.map +1 -1
- package/lib/commonjs/utils/hooks/core/identifiers.js +23 -1
- package/lib/commonjs/utils/hooks/core/identifiers.js.map +1 -1
- package/lib/commonjs/utils/hooks/core/proofs.js +24 -14
- package/lib/commonjs/utils/hooks/core/proofs.js.map +1 -1
- package/lib/commonjs/utils/hooks/core/trust-entity.js +56 -14
- package/lib/commonjs/utils/hooks/core/trust-entity.js.map +1 -1
- package/lib/commonjs/utils/parsers/credential-sharing.js +6 -15
- package/lib/commonjs/utils/parsers/credential-sharing.js.map +1 -1
- package/lib/commonjs/utils/parsers/credential.js +2 -2
- package/lib/commonjs/utils/parsers/credential.js.map +1 -1
- package/lib/commonjs/utils/parsers/query.js +23 -86
- package/lib/commonjs/utils/parsers/query.js.map +1 -1
- package/lib/module/components/entity/entity-attributes.js +15 -2
- package/lib/module/components/entity/entity-attributes.js.map +1 -1
- package/lib/module/components/entity/entity-details-with-buttons.js +11 -44
- package/lib/module/components/entity/entity-details-with-buttons.js.map +1 -1
- package/lib/module/components/entity/entity-details.js +61 -33
- package/lib/module/components/entity/entity-details.js.map +1 -1
- package/lib/module/components/entity/index.js +2 -2
- package/lib/module/components/entity/index.js.map +1 -1
- package/lib/module/components/history/history-list-item.js +15 -13
- package/lib/module/components/history/history-list-item.js.map +1 -1
- package/lib/module/components/proof-request/share-credential.js +1 -2
- package/lib/module/components/proof-request/share-credential.js.map +1 -1
- package/lib/module/ui-components/blur/index.js +2 -2
- package/lib/module/ui-components/blur/index.js.map +1 -1
- package/lib/module/ui-components/buttons/hold-button.js +4 -3
- package/lib/module/ui-components/buttons/hold-button.js.map +1 -1
- package/lib/module/ui-components/camera/index.js +2 -2
- package/lib/module/ui-components/camera/index.js.map +1 -1
- package/lib/module/ui-components/control/index.js +3 -3
- package/lib/module/ui-components/control/index.js.map +1 -1
- package/lib/module/ui-components/credential/card/credential-details-card.js +1 -1
- package/lib/module/ui-components/credential/card/credential-details-card.js.map +1 -1
- package/lib/module/ui-components/credential/credential-carousel-images.js +15 -8
- package/lib/module/ui-components/credential/credential-carousel-images.js.map +1 -1
- package/lib/module/ui-components/entity/entity-cluster.js +51 -3
- package/lib/module/ui-components/entity/entity-cluster.js.map +1 -1
- package/lib/module/ui-components/entity/index.js +4 -4
- package/lib/module/ui-components/entity/index.js.map +1 -1
- package/lib/module/ui-components/history/history-details.js +1 -1
- package/lib/module/ui-components/history/history-details.js.map +1 -1
- package/lib/module/ui-components/history/index.js +6 -6
- package/lib/module/ui-components/history/index.js.map +1 -1
- package/lib/module/ui-components/icons/entity.js +10 -13
- package/lib/module/ui-components/icons/entity.js.map +1 -1
- package/lib/module/ui-components/input/index.js +6 -6
- package/lib/module/ui-components/input/index.js.map +1 -1
- package/lib/module/ui-components/list/index.js +4 -4
- package/lib/module/ui-components/list/index.js.map +1 -1
- package/lib/module/ui-components/loader/index.js +4 -4
- package/lib/module/ui-components/loader/index.js.map +1 -1
- package/lib/module/ui-components/pin/index.js +3 -3
- package/lib/module/ui-components/pin/index.js.map +1 -1
- package/lib/module/ui-components/screens/nerd-mode-screen.js.map +1 -1
- package/lib/module/ui-components/searchbar/index.js +4 -4
- package/lib/module/ui-components/searchbar/index.js.map +1 -1
- package/lib/module/ui-components/settings/index.js +10 -10
- package/lib/module/ui-components/settings/index.js.map +1 -1
- package/lib/module/ui-components/state/index.js +2 -2
- package/lib/module/ui-components/state/index.js.map +1 -1
- package/lib/module/utils/date.js +1 -1
- package/lib/module/utils/date.js.map +1 -1
- package/lib/module/utils/hooks/connectivity/connectivity.test.js +4 -0
- package/lib/module/utils/hooks/connectivity/connectivity.test.js.map +1 -1
- package/lib/module/utils/hooks/core/backup.js +24 -68
- package/lib/module/utils/hooks/core/backup.js.map +1 -1
- package/lib/module/utils/hooks/core/core-init.js +5 -3
- package/lib/module/utils/hooks/core/core-init.js.map +1 -1
- package/lib/module/utils/hooks/core/identifiers.js +21 -0
- package/lib/module/utils/hooks/core/identifiers.js.map +1 -1
- package/lib/module/utils/hooks/core/proofs.js +24 -14
- package/lib/module/utils/hooks/core/proofs.js.map +1 -1
- package/lib/module/utils/hooks/core/trust-entity.js +57 -15
- package/lib/module/utils/hooks/core/trust-entity.js.map +1 -1
- package/lib/module/utils/parsers/credential-sharing.js +6 -15
- package/lib/module/utils/parsers/credential-sharing.js.map +1 -1
- package/lib/module/utils/parsers/credential.js +2 -2
- package/lib/module/utils/parsers/credential.js.map +1 -1
- package/lib/module/utils/parsers/query.js +21 -85
- package/lib/module/utils/parsers/query.js.map +1 -1
- package/lib/typescript/components/entity/entity-attributes.d.ts +1 -0
- package/lib/typescript/components/entity/entity-details-with-buttons.d.ts +1 -2
- package/lib/typescript/components/entity/entity-details.d.ts +3 -2
- package/lib/typescript/components/entity/index.d.ts +2 -1
- package/lib/typescript/ui-components/blur/index.d.ts +2 -1
- package/lib/typescript/ui-components/buttons/hold-button.d.ts +2 -2
- package/lib/typescript/ui-components/camera/index.d.ts +2 -1
- package/lib/typescript/ui-components/control/index.d.ts +4 -2
- package/lib/typescript/ui-components/credential/credential-carousel-images.d.ts +1 -0
- package/lib/typescript/ui-components/entity/entity-cluster.d.ts +1 -0
- package/lib/typescript/ui-components/entity/index.d.ts +4 -2
- package/lib/typescript/ui-components/history/history-details.d.ts +4 -1
- package/lib/typescript/ui-components/history/index.d.ts +6 -3
- package/lib/typescript/ui-components/input/index.d.ts +6 -3
- package/lib/typescript/ui-components/list/index.d.ts +4 -2
- package/lib/typescript/ui-components/loader/index.d.ts +4 -2
- package/lib/typescript/ui-components/pin/index.d.ts +4 -2
- package/lib/typescript/ui-components/screens/nerd-mode-screen.d.ts +1 -1
- package/lib/typescript/ui-components/searchbar/index.d.ts +4 -2
- package/lib/typescript/ui-components/settings/index.d.ts +10 -5
- package/lib/typescript/ui-components/state/index.d.ts +2 -1
- package/lib/typescript/utils/hooks/core/backup.d.ts +5 -0
- package/lib/typescript/utils/hooks/core/core-init.d.ts +4 -1
- package/lib/typescript/utils/hooks/core/identifiers.d.ts +4 -1
- package/lib/typescript/utils/hooks/core/proofs.d.ts +1 -0
- package/lib/typescript/utils/hooks/core/trust-entity.d.ts +9 -3
- package/lib/typescript/utils/parsers/query.d.ts +8 -7
- package/package.json +10 -5
- package/src/components/entity/entity-attributes.tsx +16 -2
- package/src/components/entity/entity-details-with-buttons.tsx +11 -42
- package/src/components/entity/entity-details.tsx +96 -33
- package/src/components/entity/index.ts +2 -1
- package/src/components/history/history-list-item.tsx +17 -13
- package/src/components/proof-request/share-credential.tsx +0 -1
- package/src/ui-components/blur/index.ts +2 -1
- package/src/ui-components/buttons/hold-button.tsx +6 -5
- package/src/ui-components/camera/index.tsx +2 -1
- package/src/ui-components/control/index.ts +4 -2
- package/src/ui-components/credential/card/credential-details-card.tsx +1 -1
- package/src/ui-components/credential/credential-carousel-images.tsx +15 -8
- package/src/ui-components/entity/entity-cluster.tsx +63 -10
- package/src/ui-components/entity/index.ts +4 -2
- package/src/ui-components/history/history-details.tsx +5 -2
- package/src/ui-components/history/index.ts +6 -3
- package/src/ui-components/icons/entity.tsx +8 -12
- package/src/ui-components/input/index.ts +6 -3
- package/src/ui-components/list/index.ts +4 -2
- package/src/ui-components/loader/index.ts +4 -2
- package/src/ui-components/pin/index.ts +4 -2
- package/src/ui-components/screens/nerd-mode-screen.tsx +1 -1
- package/src/ui-components/searchbar/index.ts +4 -2
- package/src/ui-components/settings/index.ts +10 -5
- package/src/ui-components/state/index.ts +2 -1
- package/src/utils/date.ts +1 -1
- package/src/utils/hooks/connectivity/connectivity.test.ts +7 -2
- package/src/utils/hooks/core/backup.ts +30 -72
- package/src/utils/hooks/core/core-init.ts +5 -3
- package/src/utils/hooks/core/identifiers.ts +22 -1
- package/src/utils/hooks/core/proofs.ts +27 -16
- package/src/utils/hooks/core/trust-entity.ts +73 -23
- package/src/utils/parsers/credential-sharing.tsx +8 -14
- package/src/utils/parsers/credential.ts +2 -1
- package/src/utils/parsers/query.ts +149 -0
- package/src/utils/parsers/query.tsx +0 -82
|
@@ -13,6 +13,7 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
|
|
|
13
13
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
14
14
|
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); }
|
|
15
15
|
const EntityAttributes = ({
|
|
16
|
+
certificate,
|
|
16
17
|
did,
|
|
17
18
|
trustEntity,
|
|
18
19
|
trusted,
|
|
@@ -34,17 +35,29 @@ const EntityAttributes = ({
|
|
|
34
35
|
canBeCopied: true,
|
|
35
36
|
highlightedText: didMethod,
|
|
36
37
|
testID: 'issuerDID'
|
|
38
|
+
}), ...(0, _array.addElementIf)(Boolean(certificate), {
|
|
39
|
+
attributeKey: entityType === _nerdModeScreen.EntityType.CredentialEntity ? labels.issuerIdentifier : labels.entityIdentifier,
|
|
40
|
+
attributeText: certificate,
|
|
41
|
+
canBeCopied: true,
|
|
42
|
+
testID: 'issuerCertificate'
|
|
37
43
|
}), ...(0, _array.addElementIf)(trusted && Boolean(trustEntity === null || trustEntity === void 0 ? void 0 : trustEntity.role), {
|
|
38
44
|
attributeKey: labels.role,
|
|
39
45
|
highlightedText: trustEntity === null || trustEntity === void 0 ? void 0 : trustEntity.role,
|
|
40
46
|
testID: 'role'
|
|
41
47
|
})];
|
|
42
|
-
return /*#__PURE__*/_react.default.createElement(_reactNative.View,
|
|
48
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
49
|
+
style: styles.wrapper
|
|
50
|
+
}, attributes.map(attribute => /*#__PURE__*/_react.default.createElement(_nerdView.NerdModeItem, _extends({
|
|
43
51
|
key: attribute.attributeKey
|
|
44
52
|
}, attribute, {
|
|
45
53
|
labels: labels,
|
|
46
54
|
onCopyToClipboard: onCopyToClipboard
|
|
47
55
|
}))));
|
|
48
56
|
};
|
|
57
|
+
const styles = _reactNative.StyleSheet.create({
|
|
58
|
+
wrapper: {
|
|
59
|
+
marginBottom: 20
|
|
60
|
+
}
|
|
61
|
+
});
|
|
49
62
|
var _default = exports.default = /*#__PURE__*/(0, _react.memo)(EntityAttributes);
|
|
50
63
|
//# sourceMappingURL=entity-attributes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_nerdView","_nerdModeScreen","_array","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","EntityAttributes","did","trustEntity","trusted","labels","entityType","onCopyToClipboard","_did$split","didSections","split","identifier","pop","didMethod","join","attributes","addElementIf","attributeKey","trustRegistry","highlightedText","trustAnchor","name","testID","Boolean","EntityType","CredentialEntity","issuerIdentifier","entityIdentifier","attributeText","canBeCopied","role","createElement","View","map","attribute","NerdModeItem","key","_default","exports","memo"],"sources":["entity-attributes.tsx"],"sourcesContent":["import { TrustEntity } from '@procivis/react-native-one-core';\nimport React, { FC, memo } from 'react';\nimport { View } from 'react-native';\n\nimport { NerdModeItem } from '../../ui-components/nerd-view';\nimport { AttributesLabels, EntityType } from '../../ui-components/screens/nerd-mode-screen';\nimport { addElementIf } from '../../utils/array';\n\ninterface EntityAttributesProps {\n did?: string;\n trustEntity?: TrustEntity;\n trusted: boolean;\n labels: AttributesLabels;\n onCopyToClipboard: (value: string) => void;\n entityType: EntityType;\n}\n\nconst EntityAttributes: FC<EntityAttributesProps> = ({\n did,\n trustEntity,\n trusted,\n labels,\n entityType,\n onCopyToClipboard,\n}) => {\n const didSections = did?.split(':') ?? [];\n const identifier = didSections.pop();\n const didMethod = didSections.length ? didSections.join(':') + ':' : '';\n\n const attributes = [\n ...addElementIf(trusted, {\n attributeKey: labels.trustRegistry,\n highlightedText: trustEntity?.trustAnchor.name,\n testID: 'trustRegistry',\n }),\n ...addElementIf(Boolean(did), {\n attributeKey: entityType === EntityType.CredentialEntity ? labels.issuerIdentifier : labels.entityIdentifier,\n attributeText: identifier,\n canBeCopied: true,\n highlightedText: didMethod,\n testID: 'issuerDID',\n }),\n ...addElementIf(trusted && Boolean(trustEntity?.role), {\n attributeKey: labels.role,\n highlightedText: trustEntity?.role,\n testID: 'role',\n }),\n ];\n return (\n <View>\n {attributes.map((attribute) => (\n <NerdModeItem\n key={attribute.attributeKey}\n {...attribute}\n labels={labels}\n onCopyToClipboard={onCopyToClipboard}\n />\n ))}\n </View>\n );\n};\n\nexport default memo(EntityAttributes);\n"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,eAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AAAiD,SAAAK,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAP,wBAAAO,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAW,SAAA,WAAAA,QAAA,GAAAR,MAAA,CAAAS,MAAA,GAAAT,MAAA,CAAAS,MAAA,CAAAC,IAAA,eAAAb,CAAA,aAAAR,CAAA,MAAAA,CAAA,GAAAsB,SAAA,CAAAC,MAAA,EAAAvB,CAAA,UAAAG,CAAA,GAAAmB,SAAA,CAAAtB,CAAA,YAAAE,CAAA,IAAAC,CAAA,OAAAY,cAAA,CAAAC,IAAA,CAAAb,CAAA,EAAAD,CAAA,MAAAM,CAAA,CAAAN,CAAA,IAAAC,CAAA,CAAAD,CAAA,aAAAM,CAAA,KAAAW,QAAA,CAAAK,KAAA,OAAAF,SAAA;
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_nerdView","_nerdModeScreen","_array","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","EntityAttributes","certificate","did","trustEntity","trusted","labels","entityType","onCopyToClipboard","_did$split","didSections","split","identifier","pop","didMethod","join","attributes","addElementIf","attributeKey","trustRegistry","highlightedText","trustAnchor","name","testID","Boolean","EntityType","CredentialEntity","issuerIdentifier","entityIdentifier","attributeText","canBeCopied","role","createElement","View","style","styles","wrapper","map","attribute","NerdModeItem","key","StyleSheet","create","marginBottom","_default","exports","memo"],"sources":["entity-attributes.tsx"],"sourcesContent":["import { TrustEntity } from '@procivis/react-native-one-core';\nimport React, { FC, memo } from 'react';\nimport { StyleSheet, View } from 'react-native';\n\nimport { NerdModeItem } from '../../ui-components/nerd-view';\nimport { AttributesLabels, EntityType } from '../../ui-components/screens/nerd-mode-screen';\nimport { addElementIf } from '../../utils/array';\n\ninterface EntityAttributesProps {\n certificate?: string;\n did?: string;\n trustEntity?: TrustEntity;\n trusted: boolean;\n labels: AttributesLabels;\n onCopyToClipboard: (value: string) => void;\n entityType: EntityType;\n}\n\nconst EntityAttributes: FC<EntityAttributesProps> = ({\n certificate,\n did,\n trustEntity,\n trusted,\n labels,\n entityType,\n onCopyToClipboard,\n}) => {\n const didSections = did?.split(':') ?? [];\n const identifier = didSections.pop();\n const didMethod = didSections.length ? didSections.join(':') + ':' : '';\n\n const attributes = [\n ...addElementIf(trusted, {\n attributeKey: labels.trustRegistry,\n highlightedText: trustEntity?.trustAnchor.name,\n testID: 'trustRegistry',\n }),\n ...addElementIf(Boolean(did), {\n attributeKey: entityType === EntityType.CredentialEntity ? labels.issuerIdentifier : labels.entityIdentifier,\n attributeText: identifier,\n canBeCopied: true,\n highlightedText: didMethod,\n testID: 'issuerDID',\n }),\n ...addElementIf(Boolean(certificate), {\n attributeKey: entityType === EntityType.CredentialEntity ? labels.issuerIdentifier : labels.entityIdentifier,\n attributeText: certificate,\n canBeCopied: true,\n testID: 'issuerCertificate',\n }),\n ...addElementIf(trusted && Boolean(trustEntity?.role), {\n attributeKey: labels.role,\n highlightedText: trustEntity?.role,\n testID: 'role',\n }),\n ];\n return (\n <View style={styles.wrapper}>\n {attributes.map((attribute) => (\n <NerdModeItem\n key={attribute.attributeKey}\n {...attribute}\n labels={labels}\n onCopyToClipboard={onCopyToClipboard}\n />\n ))}\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n wrapper: {\n marginBottom: 20,\n }\n})\n\nexport default memo(EntityAttributes);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -7,12 +7,11 @@ exports.default = void 0;
|
|
|
7
7
|
var _reactNativeOneCore = require("@procivis/react-native-one-core");
|
|
8
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
9
|
var _reactNative = require("react-native");
|
|
10
|
-
var _entityCluster = _interopRequireDefault(require("../../ui-components/entity/entity-cluster"));
|
|
11
|
-
var _icons = require("../../ui-components/icons");
|
|
12
10
|
var _colorSchemeContext = require("../../ui-components/theme/color-scheme-context");
|
|
13
11
|
var _utils = require("../../utils");
|
|
14
12
|
var _trustEntity = require("../../utils/hooks/core/trust-entity");
|
|
15
13
|
var _entityAttributes = _interopRequireDefault(require("./entity-attributes"));
|
|
14
|
+
var _entityDetails = _interopRequireDefault(require("./entity-details"));
|
|
16
15
|
var _EntityButtons = _interopRequireDefault(require("./EntityButtons"));
|
|
17
16
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
17
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
@@ -28,7 +27,7 @@ const EntityDetailsWithButtons = ({
|
|
|
28
27
|
testID,
|
|
29
28
|
...props
|
|
30
29
|
}) => {
|
|
31
|
-
var
|
|
30
|
+
var _identifierDetail$cer, _identifierDetail$did;
|
|
32
31
|
let {
|
|
33
32
|
data
|
|
34
33
|
} = (0, _trustEntity.useTrustEntity)(identifier === null || identifier === void 0 ? void 0 : identifier.id);
|
|
@@ -38,56 +37,24 @@ const EntityDetailsWithButtons = ({
|
|
|
38
37
|
const trustEntity = data !== null && data !== void 0 ? data : undefined;
|
|
39
38
|
const colorScheme = (0, _colorSchemeContext.useAppColorScheme)();
|
|
40
39
|
const trusted = Boolean(trustEntity && trustEntity.state === _reactNativeOneCore.TrustEntityStateEnum.ACTIVE && (trustEntity.role === _reactNativeOneCore.TrustEntityRoleEnum.BOTH || trustEntity.role === role));
|
|
41
|
-
const trustEntityName = (0, _react.useMemo)(() => {
|
|
42
|
-
if (!trustEntity || !trusted) {
|
|
43
|
-
if (identifierDetail !== null && identifierDetail !== void 0 && identifierDetail.did) {
|
|
44
|
-
return (0, _utils.replaceBreakingHyphens)(identifierDetail.did.did);
|
|
45
|
-
}
|
|
46
|
-
return role === _reactNativeOneCore.TrustEntityRoleEnum.ISSUER ? entityLabels.unknownIssuer : entityLabels.unknownVerifier;
|
|
47
|
-
}
|
|
48
|
-
return trustEntity.name;
|
|
49
|
-
}, [entityLabels, role, trustEntity, trusted, identifierDetail]);
|
|
50
|
-
const trustEntitySubline = (0, _react.useMemo)(() => {
|
|
51
|
-
if (!trusted) {
|
|
52
|
-
return undefined;
|
|
53
|
-
}
|
|
54
|
-
return `${entityLabels.trusted} • ${trustEntity === null || trustEntity === void 0 ? void 0 : trustEntity.trustAnchor.name}`;
|
|
55
|
-
}, [trustEntity, trusted, entityLabels.trusted]);
|
|
56
|
-
const trustEntityStatusIcon = (0, _react.useMemo)(() => {
|
|
57
|
-
if (!trusted) {
|
|
58
|
-
return /*#__PURE__*/_react.default.createElement(_icons.EntityNotTrustedIcon, {
|
|
59
|
-
testID: (0, _utils.concatTestID)(testID, 'statusIcon', 'notTrusted')
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
return /*#__PURE__*/_react.default.createElement(_icons.EntityTrustedIcon, {
|
|
63
|
-
testID: (0, _utils.concatTestID)(testID, 'statusIcon', 'trusted')
|
|
64
|
-
});
|
|
65
|
-
}, [testID, trusted]);
|
|
66
40
|
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
67
41
|
style: {
|
|
68
42
|
backgroundColor: colorScheme.nerdView.background
|
|
69
43
|
}
|
|
70
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
uri: trustEntity.logo
|
|
75
|
-
}
|
|
76
|
-
} : undefined,
|
|
77
|
-
placeholderText: trusted ? trustEntity === null || trustEntity === void 0 ? void 0 : trustEntity.name.substring(0, 1) : "U",
|
|
78
|
-
statusIcon: trustEntityStatusIcon,
|
|
79
|
-
testID: (0, _utils.concatTestID)(testID, 'avatar')
|
|
44
|
+
}, /*#__PURE__*/_react.default.createElement(_entityDetails.default, _extends({
|
|
45
|
+
identifier: identifier,
|
|
46
|
+
labels: {
|
|
47
|
+
unknown: role === _reactNativeOneCore.TrustEntityRoleEnum.ISSUER ? entityLabels.unknownIssuer : entityLabels.unknownVerifier
|
|
80
48
|
},
|
|
81
|
-
|
|
82
|
-
subline: trustEntitySubline,
|
|
83
|
-
sublineColor: trusted ? colorScheme.success : colorScheme.white,
|
|
49
|
+
role: role,
|
|
84
50
|
testID: testID
|
|
85
51
|
}, props)), trusted && /*#__PURE__*/_react.default.createElement(_EntityButtons.default, {
|
|
86
52
|
entity: trustEntity,
|
|
87
53
|
labels: entityLabels,
|
|
88
54
|
testID: (0, _utils.concatTestID)(testID, 'links')
|
|
89
55
|
}), /*#__PURE__*/_react.default.createElement(_entityAttributes.default, {
|
|
90
|
-
|
|
56
|
+
certificate: identifierDetail === null || identifierDetail === void 0 || (_identifierDetail$cer = identifierDetail.certificates) === null || _identifierDetail$cer === void 0 || (_identifierDetail$cer = _identifierDetail$cer[0]) === null || _identifierDetail$cer === void 0 ? void 0 : _identifierDetail$cer.chain,
|
|
57
|
+
did: identifierDetail === null || identifierDetail === void 0 || (_identifierDetail$did = identifierDetail.did) === null || _identifierDetail$did === void 0 ? void 0 : _identifierDetail$did.did,
|
|
91
58
|
trustEntity: trustEntity,
|
|
92
59
|
trusted: trusted,
|
|
93
60
|
labels: attributesLabels,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeOneCore","require","_react","_interopRequireWildcard","_reactNative","_entityCluster","_interopRequireDefault","_icons","_colorSchemeContext","_utils","_trustEntity","_entityAttributes","_EntityButtons","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","EntityDetailsWithButtons","identifier","entityLabels","attributesLabels","onCopyToClipboard","role","entityType","testID","props","_trustEntity$did","data","useTrustEntity","id","identifierDetail","useIdentifierDetails","trustEntity","undefined","colorScheme","useAppColorScheme","trusted","Boolean","state","TrustEntityStateEnum","ACTIVE","TrustEntityRoleEnum","BOTH","trustEntityName","useMemo","did","replaceBreakingHyphens","ISSUER","unknownIssuer","unknownVerifier","name","trustEntitySubline","trustAnchor","trustEntityStatusIcon","createElement","EntityNotTrustedIcon","concatTestID","EntityTrustedIcon","View","style","backgroundColor","nerdView","background","avatar","logo","imageSource","uri","placeholderText","substring","statusIcon","entityName","subline","sublineColor","success","white","entity","labels","_default","exports","memo"],"sources":["entity-details-with-buttons.tsx"],"sourcesContent":["import { TrustEntityRoleEnum, TrustEntityStateEnum } from '@procivis/react-native-one-core';\nimport { IdentifierListItem } from '@procivis/react-native-one-core/dist/src/identifier';\nimport React, { FC, memo, useMemo } from 'react';\nimport { StyleProp, View, ViewStyle } from 'react-native';\n\nimport EntityCluster from '../../ui-components/entity/entity-cluster';\nimport { EntityNotTrustedIcon, EntityTrustedIcon } from '../../ui-components/icons';\nimport { AttributesLabels, EntityLabels, EntityType } from '../../ui-components/screens/nerd-mode-screen';\nimport { useAppColorScheme } from '../../ui-components/theme/color-scheme-context';\nimport { concatTestID, replaceBreakingHyphens, useIdentifierDetails } from '../../utils';\nimport { useTrustEntity } from '../../utils/hooks/core/trust-entity';\nimport EntityAttributes from './entity-attributes';\nimport EntityButtons from './EntityButtons';\n\nexport type ContextRole = Exclude<TrustEntityRoleEnum, TrustEntityRoleEnum.BOTH>;\n\ninterface EntityDetailsWithButtonsProps {\n identifier?: IdentifierListItem;\n entityLabels: EntityLabels;\n attributesLabels: AttributesLabels;\n style?: StyleProp<ViewStyle>;\n textColor?: string;\n testID?: string;\n role: ContextRole;\n onCopyToClipboard: (value: string) => void;\n entityType: EntityType;\n}\n\nconst EntityDetailsWithButtons: FC<EntityDetailsWithButtonsProps> = ({\n identifier,\n entityLabels,\n attributesLabels,\n onCopyToClipboard,\n role,\n entityType,\n testID,\n ...props\n}) => {\n let { data } = useTrustEntity(identifier?.id);\n let { data: identifierDetail } = useIdentifierDetails(identifier?.id);\n const trustEntity = data ?? undefined;\n\n const colorScheme = useAppColorScheme();\n\n const trusted = Boolean(\n trustEntity &&\n trustEntity.state === TrustEntityStateEnum.ACTIVE &&\n (trustEntity.role === TrustEntityRoleEnum.BOTH || trustEntity.role === role),\n );\n\n const trustEntityName = useMemo(() => {\n if (!trustEntity || !trusted) {\n if (identifierDetail?.did) {\n return replaceBreakingHyphens(identifierDetail.did.did);\n }\n\n return role === TrustEntityRoleEnum.ISSUER ? entityLabels.unknownIssuer : entityLabels.unknownVerifier;\n }\n return trustEntity.name;\n }, [entityLabels, role, trustEntity, trusted, identifierDetail]);\n\n const trustEntitySubline = useMemo(() => {\n if (!trusted) {\n return undefined;\n }\n\n return `${entityLabels.trusted} • ${trustEntity?.trustAnchor.name}`;\n }, [trustEntity, trusted, entityLabels.trusted]);\n\n const trustEntityStatusIcon = useMemo(() => {\n if (!trusted) {\n return <EntityNotTrustedIcon testID={concatTestID(testID, 'statusIcon', 'notTrusted')} />;\n }\n return <EntityTrustedIcon testID={concatTestID(testID, 'statusIcon', 'trusted')} />;\n }, [testID, trusted]);\n\n return (\n <View style={{ backgroundColor: colorScheme.nerdView.background }}>\n <EntityCluster\n avatar={{\n avatar: trusted && trustEntity?.logo ? { imageSource: { uri: trustEntity.logo } } : undefined,\n placeholderText: trusted ? trustEntity?.name.substring(0, 1) : \"U\",\n statusIcon: trustEntityStatusIcon,\n testID: concatTestID(testID, 'avatar'),\n }}\n entityName={trustEntityName}\n subline={trustEntitySubline}\n sublineColor={trusted ? colorScheme.success : colorScheme.white}\n testID={testID}\n {...props}\n />\n {trusted && <EntityButtons entity={trustEntity} labels={entityLabels} testID={concatTestID(testID, 'links')} />}\n <EntityAttributes\n did={trustEntity?.did?.did}\n trustEntity={trustEntity}\n trusted={trusted}\n labels={attributesLabels}\n onCopyToClipboard={onCopyToClipboard}\n entityType={entityType}\n />\n </View>\n );\n};\n\nexport default memo(EntityDetailsWithButtons);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_reactNativeOneCore","require","_react","_interopRequireWildcard","_reactNative","_colorSchemeContext","_utils","_trustEntity","_entityAttributes","_interopRequireDefault","_entityDetails","_EntityButtons","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","EntityDetailsWithButtons","identifier","entityLabels","attributesLabels","onCopyToClipboard","role","entityType","testID","props","_identifierDetail$cer","_identifierDetail$did","data","useTrustEntity","id","identifierDetail","useIdentifierDetails","trustEntity","undefined","colorScheme","useAppColorScheme","trusted","Boolean","state","TrustEntityStateEnum","ACTIVE","TrustEntityRoleEnum","BOTH","createElement","View","style","backgroundColor","nerdView","background","labels","unknown","ISSUER","unknownIssuer","unknownVerifier","entity","concatTestID","certificate","certificates","chain","did","_default","exports","memo"],"sources":["entity-details-with-buttons.tsx"],"sourcesContent":["import { IdentifierListItem, TrustEntityRoleEnum, TrustEntityStateEnum } from '@procivis/react-native-one-core';\nimport React, { FC, memo } from 'react';\nimport { StyleProp, View, ViewStyle } from 'react-native';\n\nimport { AttributesLabels, EntityLabels, EntityType } from '../../ui-components/screens/nerd-mode-screen';\nimport { useAppColorScheme } from '../../ui-components/theme/color-scheme-context';\nimport { concatTestID, useIdentifierDetails } from '../../utils';\nimport { useTrustEntity } from '../../utils/hooks/core/trust-entity';\nimport EntityAttributes from './entity-attributes';\nimport EntityDetails from './entity-details';\nimport EntityButtons from './EntityButtons';\n\nexport type ContextRole = Exclude<TrustEntityRoleEnum, TrustEntityRoleEnum.BOTH>;\n\ninterface EntityDetailsWithButtonsProps {\n identifier?: IdentifierListItem;\n entityLabels: EntityLabels;\n attributesLabels: AttributesLabels;\n style?: StyleProp<ViewStyle>;\n textColor?: string;\n testID?: string;\n role: ContextRole;\n onCopyToClipboard: (value: string) => void;\n entityType: EntityType;\n}\n\nconst EntityDetailsWithButtons: FC<EntityDetailsWithButtonsProps> = ({\n identifier,\n entityLabels,\n attributesLabels,\n onCopyToClipboard,\n role,\n entityType,\n testID,\n ...props\n}) => {\n let { data } = useTrustEntity(identifier?.id);\n let { data: identifierDetail } = useIdentifierDetails(identifier?.id);\n const trustEntity = data ?? undefined;\n\n const colorScheme = useAppColorScheme();\n\n const trusted = Boolean(\n trustEntity &&\n trustEntity.state === TrustEntityStateEnum.ACTIVE &&\n (trustEntity.role === TrustEntityRoleEnum.BOTH || trustEntity.role === role),\n );\n\n return (\n <View style={{ backgroundColor: colorScheme.nerdView.background }}>\n <EntityDetails\n identifier={identifier}\n labels={{\n unknown: role === TrustEntityRoleEnum.ISSUER ? entityLabels.unknownIssuer : entityLabels.unknownVerifier,\n }}\n role={role}\n testID={testID}\n {...props}\n />\n {trusted && <EntityButtons entity={trustEntity} labels={entityLabels} testID={concatTestID(testID, 'links')} />}\n <EntityAttributes\n certificate={identifierDetail?.certificates?.[0]?.chain}\n did={identifierDetail?.did?.did}\n trustEntity={trustEntity}\n trusted={trusted}\n labels={attributesLabels}\n onCopyToClipboard={onCopyToClipboard}\n entityType={entityType}\n />\n </View>\n );\n};\n\nexport default memo(EntityDetailsWithButtons);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -13,60 +13,88 @@ var _trustEntity = require("../../utils/hooks/core/trust-entity");
|
|
|
13
13
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
14
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
15
15
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
16
|
+
const getCertificateCommonName = certificate => {
|
|
17
|
+
var _certificate$x509Attr;
|
|
18
|
+
return (_certificate$x509Attr = certificate.x509Attributes.subject.split(', ').find(s => s.startsWith('CN'))) === null || _certificate$x509Attr === void 0 || (_certificate$x509Attr = _certificate$x509Attr.split('=')) === null || _certificate$x509Attr === void 0 ? void 0 : _certificate$x509Attr.pop();
|
|
19
|
+
};
|
|
16
20
|
const EntityDetails = ({
|
|
17
21
|
labels,
|
|
18
22
|
renderMore,
|
|
19
23
|
role,
|
|
20
24
|
style,
|
|
21
25
|
testID,
|
|
26
|
+
sublineColor,
|
|
27
|
+
textColor,
|
|
22
28
|
...props
|
|
23
29
|
}) => {
|
|
24
30
|
var _props$identifier, _props$identifier2;
|
|
25
31
|
const {
|
|
26
|
-
data
|
|
32
|
+
data,
|
|
33
|
+
isLoading: isLoadingTrustEntity
|
|
27
34
|
} = (0, _trustEntity.useTrustEntity)('identifier' in props ? (_props$identifier = props.identifier) === null || _props$identifier === void 0 ? void 0 : _props$identifier.id : undefined);
|
|
28
35
|
const trustEntity = 'entity' in props ? props.entity : data !== null && data !== void 0 ? data : undefined;
|
|
29
36
|
const {
|
|
30
|
-
data: identifierDetail
|
|
37
|
+
data: identifierDetail,
|
|
38
|
+
isLoading: isLoadingIdentifier
|
|
31
39
|
} = (0, _utils.useIdentifierDetails)('identifier' in props ? (_props$identifier2 = props.identifier) === null || _props$identifier2 === void 0 ? void 0 : _props$identifier2.id : undefined);
|
|
32
40
|
const trusted = trustEntity && trustEntity.state === _reactNativeOneCore.TrustEntityStateEnum.ACTIVE && (trustEntity.role === _reactNativeOneCore.TrustEntityRoleEnum.BOTH || trustEntity.role === role);
|
|
41
|
+
const isLoading = isLoadingIdentifier || isLoadingTrustEntity;
|
|
42
|
+
const avatarProps = (0, _react.useMemo)(() => {
|
|
43
|
+
var _identifierDetail$cer, _getCertificateCommon;
|
|
44
|
+
if (isLoading) {
|
|
45
|
+
return undefined;
|
|
46
|
+
}
|
|
47
|
+
const avatar = trusted && (identifierDetail === null || identifierDetail === void 0 ? void 0 : identifierDetail.type) === 'DID' && trustEntity.logo ? {
|
|
48
|
+
imageSource: {
|
|
49
|
+
uri: trustEntity.logo
|
|
50
|
+
}
|
|
51
|
+
} : undefined;
|
|
52
|
+
const placeholderText = (identifierDetail === null || identifierDetail === void 0 ? void 0 : identifierDetail.type) === _reactNativeOneCore.IdentifierTypeEnum.CERTIFICATE && (_identifierDetail$cer = identifierDetail.certificates) !== null && _identifierDetail$cer !== void 0 && _identifierDetail$cer[0] ? (_getCertificateCommon = getCertificateCommonName(identifierDetail.certificates[0])) === null || _getCertificateCommon === void 0 ? void 0 : _getCertificateCommon.substring(0, 1) : 'D';
|
|
53
|
+
const statusIcon = trusted ? /*#__PURE__*/_react.default.createElement(_icons.EntityTrustedIcon, {
|
|
54
|
+
testID: (0, _utils.concatTestID)(testID, 'statusIcon', 'trusted')
|
|
55
|
+
}) : /*#__PURE__*/_react.default.createElement(_icons.EntityNotTrustedIcon, {
|
|
56
|
+
testID: (0, _utils.concatTestID)(testID, 'statusIcon', 'notTrusted')
|
|
57
|
+
});
|
|
58
|
+
if (trustEntity) {
|
|
59
|
+
return {
|
|
60
|
+
avatar,
|
|
61
|
+
placeholderText: trusted && (identifierDetail === null || identifierDetail === void 0 ? void 0 : identifierDetail.type) === 'DID' ? trustEntity.name.substring(0, 1) : placeholderText,
|
|
62
|
+
statusIcon,
|
|
63
|
+
testID: (0, _utils.concatTestID)(testID, 'avatar')
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
return {
|
|
67
|
+
placeholderText,
|
|
68
|
+
statusIcon
|
|
69
|
+
};
|
|
70
|
+
}, [trustEntity, trusted, identifierDetail, isLoading, testID]);
|
|
33
71
|
const trustEntityName = (0, _react.useMemo)(() => {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
72
|
+
var _identifierDetail$cer2, _identifierDetail$did;
|
|
73
|
+
if (isLoading) {
|
|
74
|
+
return '';
|
|
75
|
+
}
|
|
76
|
+
if ((identifierDetail === null || identifierDetail === void 0 ? void 0 : identifierDetail.type) === _reactNativeOneCore.IdentifierTypeEnum.CERTIFICATE && (_identifierDetail$cer2 = identifierDetail.certificates) !== null && _identifierDetail$cer2 !== void 0 && _identifierDetail$cer2[0]) {
|
|
77
|
+
const commonName = getCertificateCommonName(identifierDetail.certificates[0]);
|
|
78
|
+
if (commonName) {
|
|
79
|
+
return commonName;
|
|
38
80
|
}
|
|
39
|
-
return labels.unknown;
|
|
40
81
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
const trustEntityStatusIcon = (0, _react.useMemo)(() => {
|
|
44
|
-
if (!trusted) {
|
|
45
|
-
return /*#__PURE__*/_react.default.createElement(_icons.EntityNotTrustedIcon, {
|
|
46
|
-
testID: (0, _utils.concatTestID)(testID, 'statusIcon', 'notTrusted')
|
|
47
|
-
});
|
|
82
|
+
if (trustEntity) {
|
|
83
|
+
return trustEntity.name;
|
|
48
84
|
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
}
|
|
52
|
-
|
|
85
|
+
if (identifierDetail !== null && identifierDetail !== void 0 && (_identifierDetail$did = identifierDetail.did) !== null && _identifierDetail$did !== void 0 && _identifierDetail$did.did) {
|
|
86
|
+
return (0, _utils.replaceBreakingHyphens)(identifierDetail.did.did);
|
|
87
|
+
}
|
|
88
|
+
return labels.unknown;
|
|
89
|
+
}, [labels.unknown, trustEntity, identifierDetail, isLoading]);
|
|
53
90
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_entityCluster.default, {
|
|
54
|
-
avatar:
|
|
55
|
-
avatar: trusted && trustEntity.logo ? {
|
|
56
|
-
imageSource: {
|
|
57
|
-
uri: trustEntity.logo
|
|
58
|
-
}
|
|
59
|
-
} : undefined,
|
|
60
|
-
placeholderText: trusted ? trustEntity.name.substring(0, 1) : "U",
|
|
61
|
-
statusIcon: trustEntityStatusIcon,
|
|
62
|
-
testID: (0, _utils.concatTestID)(testID, 'avatar')
|
|
63
|
-
} : {
|
|
64
|
-
statusIcon: trustEntityStatusIcon,
|
|
65
|
-
placeholderText: "U"
|
|
66
|
-
},
|
|
91
|
+
avatar: avatarProps,
|
|
67
92
|
entityName: trustEntityName,
|
|
68
93
|
style: style,
|
|
69
|
-
testID: testID
|
|
94
|
+
testID: testID,
|
|
95
|
+
textColor: textColor,
|
|
96
|
+
sublineColor: sublineColor,
|
|
97
|
+
isLoading: isLoading
|
|
70
98
|
}), trustEntity && renderMore && renderMore(trustEntity));
|
|
71
99
|
};
|
|
72
100
|
var _default = exports.default = EntityDetails;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeOneCore","require","_react","_interopRequireWildcard","_entityCluster","_interopRequireDefault","_icons","_utils","_trustEntity","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","EntityDetails","labels","renderMore","role","style","testID","props","_props$identifier","_props$identifier2","data","useTrustEntity","identifier","id","undefined","trustEntity","entity","identifierDetail","useIdentifierDetails","trusted","state","TrustEntityStateEnum","ACTIVE","TrustEntityRoleEnum","BOTH","trustEntityName","useMemo","_identifierDetail$did","did","replaceBreakingHyphens","unknown","name","trustEntityStatusIcon","createElement","EntityNotTrustedIcon","concatTestID","EntityTrustedIcon","Fragment","avatar","logo","imageSource","uri","placeholderText","substring","statusIcon","entityName","_default","exports"],"sources":["entity-details.tsx"],"sourcesContent":["import { TrustEntity, TrustEntityRoleEnum, TrustEntityStateEnum } from '@procivis/react-native-one-core';\nimport { IdentifierListItem } from '@procivis/react-native-one-core/dist/src/identifier';\nimport React, { FC, ReactNode, useMemo } from 'react';\nimport { StyleProp, ViewStyle } from 'react-native';\n\nimport EntityCluster from '../../ui-components/entity/entity-cluster';\nimport { EntityNotTrustedIcon, EntityTrustedIcon } from '../../ui-components/icons';\nimport { concatTestID, replaceBreakingHyphens, useIdentifierDetails } from '../../utils';\nimport { useTrustEntity } from '../../utils/hooks/core/trust-entity';\n\nexport type EntityDetailsLabels = {\n unknown: string;\n};\n\nexport type EntityDetailsProps = {\n labels: EntityDetailsLabels;\n renderMore?: (trustEntity: TrustEntity) => ReactNode;\n role: Exclude<TrustEntityRoleEnum, TrustEntityRoleEnum.BOTH>;\n style?: StyleProp<ViewStyle>;\n testID?: string;\n} & (\n | {\n identifier?: IdentifierListItem;\n }\n | {\n entity: TrustEntity;\n }\n );\n\nconst EntityDetails: FC<EntityDetailsProps> = ({ labels, renderMore, role, style, testID, ...props }) => {\n const { data } = useTrustEntity('identifier' in props ? props.identifier?.id : undefined);\n const trustEntity: TrustEntity | undefined = 'entity' in props ? props.entity : data ?? undefined;\n const { data: identifierDetail } = useIdentifierDetails('identifier' in props ? props.identifier?.id : undefined);\n\n const trusted =\n trustEntity &&\n trustEntity.state === TrustEntityStateEnum.ACTIVE &&\n (trustEntity.role === TrustEntityRoleEnum.BOTH || trustEntity.role === role);\n\n const trustEntityName = useMemo(() => {\n if (!trusted) {\n if (identifierDetail?.did?.did) {\n return replaceBreakingHyphens(identifierDetail.did.did);\n }\n return labels.unknown;\n }\n return trustEntity.name;\n }, [labels.unknown, trustEntity, trusted, identifierDetail]);\n\n const trustEntityStatusIcon = useMemo(() => {\n if (!trusted) {\n return <EntityNotTrustedIcon testID={concatTestID(testID, 'statusIcon', 'notTrusted')} />;\n }\n return <EntityTrustedIcon testID={concatTestID(testID, 'statusIcon', 'trusted')} />;\n }, [testID, trusted]);\n\n return (\n <>\n <EntityCluster\n avatar={\n trustEntity\n ? {\n avatar: trusted && trustEntity.logo ? { imageSource: { uri: trustEntity.logo } } : undefined,\n placeholderText: trusted ? trustEntity.name.substring(0, 1) : \"U\",\n statusIcon: trustEntityStatusIcon,\n testID: concatTestID(testID, 'avatar'),\n }\n : {\n statusIcon: trustEntityStatusIcon,\n placeholderText: \"U\",\n }\n }\n entityName={trustEntityName}\n style={style}\n testID={testID}\n />\n {trustEntity && renderMore && renderMore(trustEntity)}\n </>\n );\n};\n\nexport default EntityDetails;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_reactNativeOneCore","require","_react","_interopRequireWildcard","_entityCluster","_interopRequireDefault","_icons","_utils","_trustEntity","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","getCertificateCommonName","certificate","_certificate$x509Attr","x509Attributes","subject","split","find","s","startsWith","pop","EntityDetails","labels","renderMore","role","style","testID","sublineColor","textColor","props","_props$identifier","_props$identifier2","data","isLoading","isLoadingTrustEntity","useTrustEntity","identifier","id","undefined","trustEntity","entity","identifierDetail","isLoadingIdentifier","useIdentifierDetails","trusted","state","TrustEntityStateEnum","ACTIVE","TrustEntityRoleEnum","BOTH","avatarProps","useMemo","_identifierDetail$cer","_getCertificateCommon","avatar","type","logo","imageSource","uri","placeholderText","IdentifierTypeEnum","CERTIFICATE","certificates","substring","statusIcon","createElement","EntityTrustedIcon","concatTestID","EntityNotTrustedIcon","name","trustEntityName","_identifierDetail$cer2","_identifierDetail$did","commonName","did","replaceBreakingHyphens","unknown","Fragment","entityName","_default","exports"],"sources":["entity-details.tsx"],"sourcesContent":["import {\n IdentifierCertificateDetail,\n IdentifierListItem,\n IdentifierTypeEnum,\n TrustEntity,\n TrustEntityRoleEnum,\n TrustEntityStateEnum,\n} from '@procivis/react-native-one-core';\nimport React, { FC, ReactNode, useMemo } from 'react';\nimport { StyleProp, ViewStyle } from 'react-native';\n\nimport { AvatarProps } from '../../ui-components';\nimport EntityCluster from '../../ui-components/entity/entity-cluster';\nimport { EntityNotTrustedIcon, EntityTrustedIcon } from '../../ui-components/icons';\nimport { concatTestID, replaceBreakingHyphens, useIdentifierDetails } from '../../utils';\nimport { useTrustEntity } from '../../utils/hooks/core/trust-entity';\n\nexport type EntityDetailsLabels = {\n unknown: string;\n};\n\nexport type EntityDetailsProps = {\n labels: EntityDetailsLabels;\n renderMore?: (trustEntity: TrustEntity) => ReactNode;\n role: Exclude<TrustEntityRoleEnum, TrustEntityRoleEnum.BOTH>;\n style?: StyleProp<ViewStyle>;\n sublineColor?: string;\n textColor?: string;\n testID?: string;\n} & (\n | {\n identifier?: IdentifierListItem;\n }\n | {\n entity: TrustEntity;\n }\n);\n\nconst getCertificateCommonName = (certificate: IdentifierCertificateDetail): string | undefined => {\n return certificate.x509Attributes.subject\n .split(', ')\n .find((s) => s.startsWith('CN'))\n ?.split('=')\n ?.pop();\n};\n\nconst EntityDetails: FC<EntityDetailsProps> = ({\n labels,\n renderMore,\n role,\n style,\n testID,\n sublineColor,\n textColor,\n ...props\n}) => {\n const { data, isLoading: isLoadingTrustEntity } = useTrustEntity(\n 'identifier' in props ? props.identifier?.id : undefined,\n );\n const trustEntity: TrustEntity | undefined = 'entity' in props ? props.entity : data ?? undefined;\n const { data: identifierDetail, isLoading: isLoadingIdentifier } = useIdentifierDetails(\n 'identifier' in props ? props.identifier?.id : undefined,\n );\n\n const trusted =\n trustEntity &&\n trustEntity.state === TrustEntityStateEnum.ACTIVE &&\n (trustEntity.role === TrustEntityRoleEnum.BOTH || trustEntity.role === role);\n\n const isLoading = isLoadingIdentifier || isLoadingTrustEntity;\n\n const avatarProps: AvatarProps | undefined = useMemo(() => {\n if (isLoading) {\n return undefined;\n }\n\n const avatar =\n trusted && identifierDetail?.type === 'DID' && trustEntity.logo\n ? { imageSource: { uri: trustEntity.logo } }\n : undefined;\n\n const placeholderText =\n identifierDetail?.type === IdentifierTypeEnum.CERTIFICATE && identifierDetail.certificates?.[0]\n ? getCertificateCommonName(identifierDetail.certificates[0])?.substring(0, 1)\n : 'D';\n\n const statusIcon = trusted ? (\n <EntityTrustedIcon testID={concatTestID(testID, 'statusIcon', 'trusted')} />\n ) : (\n <EntityNotTrustedIcon testID={concatTestID(testID, 'statusIcon', 'notTrusted')} />\n );\n\n if (trustEntity) {\n return {\n avatar,\n placeholderText:\n trusted && identifierDetail?.type === 'DID' ? trustEntity.name.substring(0, 1) : placeholderText,\n statusIcon,\n testID: concatTestID(testID, 'avatar'),\n };\n }\n\n return {\n placeholderText,\n statusIcon,\n };\n }, [trustEntity, trusted, identifierDetail, isLoading, testID]);\n\n const trustEntityName = useMemo(() => {\n if (isLoading) {\n return '';\n }\n if (identifierDetail?.type === IdentifierTypeEnum.CERTIFICATE && identifierDetail.certificates?.[0]) {\n const commonName = getCertificateCommonName(identifierDetail.certificates[0]);\n if (commonName) {\n return commonName;\n }\n }\n if (trustEntity) {\n return trustEntity.name;\n }\n if (identifierDetail?.did?.did) {\n return replaceBreakingHyphens(identifierDetail.did.did);\n }\n\n return labels.unknown;\n }, [labels.unknown, trustEntity, identifierDetail, isLoading]);\n\n return (\n <>\n <EntityCluster\n avatar={avatarProps}\n entityName={trustEntityName}\n style={style}\n testID={testID}\n textColor={textColor}\n sublineColor={sublineColor}\n isLoading={isLoading}\n />\n {trustEntity && renderMore && renderMore(trustEntity)}\n </>\n );\n};\n\nexport default EntityDetails;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,19 +9,6 @@ Object.defineProperty(exports, "EntityDetails", {
|
|
|
9
9
|
return _entityDetails.default;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
get: function () {
|
|
15
|
-
return _entityDetails.EntityDetailsLabels;
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
Object.defineProperty(exports, "EntityDetailsProps", {
|
|
19
|
-
enumerable: true,
|
|
20
|
-
get: function () {
|
|
21
|
-
return _entityDetails.EntityDetailsProps;
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
var _entityDetails = _interopRequireWildcard(require("./entity-details"));
|
|
25
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
26
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
12
|
+
var _entityDetails = _interopRequireDefault(require("./entity-details"));
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
27
14
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_entityDetails","
|
|
1
|
+
{"version":3,"names":["_entityDetails","_interopRequireDefault","require","e","__esModule","default"],"sources":["index.ts"],"sourcesContent":["import type { EntityDetailsLabels, EntityDetailsProps } from './entity-details';\nimport EntityDetails from './entity-details';\n\nexport { EntityDetails, EntityDetailsLabels, EntityDetailsProps };\n"],"mappings":";;;;;;;;;;;AACA,IAAAA,cAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA6C,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA","ignoreList":[]}
|
|
@@ -21,19 +21,21 @@ const HistoryListItemView = ({
|
|
|
21
21
|
testID
|
|
22
22
|
}) => {
|
|
23
23
|
var _dateFormatter;
|
|
24
|
+
const identifierId = infoLabelMode === 'entity' ? item.target : undefined;
|
|
24
25
|
const {
|
|
25
|
-
data:
|
|
26
|
-
} = (0, _utils.useTrustEntity)(
|
|
26
|
+
data: trustEntity
|
|
27
|
+
} = (0, _utils.useTrustEntity)(identifierId);
|
|
27
28
|
const label = `${labels.entityTypes[item.entityType]} ${labels.actions[item.action]}`;
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
29
|
+
const info = (0, _react.useMemo)(() => {
|
|
30
|
+
switch (infoLabelMode) {
|
|
31
|
+
case 'entity':
|
|
32
|
+
return trustEntity === null || trustEntity === void 0 ? void 0 : trustEntity.name;
|
|
33
|
+
case 'associatedLabel':
|
|
34
|
+
return item.name;
|
|
35
|
+
case 'none':
|
|
36
|
+
return undefined;
|
|
37
|
+
}
|
|
38
|
+
}, [infoLabelMode, item, trustEntity]);
|
|
37
39
|
const icon = /*#__PURE__*/_react.default.createElement(_historyListItemIcon.HistoryListItemIcon, {
|
|
38
40
|
item: item
|
|
39
41
|
});
|
|
@@ -43,7 +45,7 @@ const HistoryListItemView = ({
|
|
|
43
45
|
return /*#__PURE__*/_react.default.createElement(_uiComponents.HistoryItemView, {
|
|
44
46
|
first: first,
|
|
45
47
|
icon: icon,
|
|
46
|
-
info:
|
|
48
|
+
info: info,
|
|
47
49
|
label: label,
|
|
48
50
|
last: last,
|
|
49
51
|
onPress: pressHandler,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_uiComponents","_utils","_historyListItemIcon","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","HistoryListItemView","dateFormatter","formatTime","first","infoLabelMode","item","labels","last","onPress","testID","_dateFormatter","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_uiComponents","_utils","_historyListItemIcon","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","HistoryListItemView","dateFormatter","formatTime","first","infoLabelMode","item","labels","last","onPress","testID","_dateFormatter","identifierId","target","undefined","data","trustEntity","useTrustEntity","label","entityTypes","entityType","actions","action","info","useMemo","name","icon","createElement","HistoryListItemIcon","pressHandler","useCallback","HistoryItemView","time","Date","createdDate","exports"],"sources":["history-list-item.tsx"],"sourcesContent":["import { HistoryActionEnum, HistoryEntityTypeEnum, HistoryListItem } from '@procivis/react-native-one-core';\nimport React, { FC, useCallback, useMemo } from 'react';\n\nimport { HistoryItemView } from '../../ui-components';\nimport { formatTime, useTrustEntity } from '../../utils';\nimport { HistoryListItemIcon } from './history-list-item-icon';\n\nexport type HistoryListItemLabels = {\n actions: { [key in keyof typeof HistoryActionEnum]: string };\n entityTypes: { [key in keyof typeof HistoryEntityTypeEnum]: string };\n};\n\nexport interface HistoryListItemViewProps {\n dateFormatter?: (date: Date) => string;\n first?: boolean;\n infoLabelMode?: 'entity' | 'associatedLabel' | 'none';\n item: HistoryListItem;\n labels: HistoryListItemLabels;\n last?: boolean;\n onPress?: (item: HistoryListItem) => void;\n testID?: string;\n}\n\nexport const HistoryListItemView: FC<HistoryListItemViewProps> = ({\n dateFormatter = formatTime,\n first,\n infoLabelMode = 'entity',\n item,\n labels,\n last,\n onPress,\n testID,\n}) => {\n const identifierId = infoLabelMode === 'entity' ? item.target : undefined;\n const { data: trustEntity } = useTrustEntity(identifierId);\n\n const label = `${labels.entityTypes[item.entityType]} ${labels.actions[item.action]}`;\n\n const info = useMemo(() => {\n switch (infoLabelMode) {\n case 'entity':\n return trustEntity?.name;\n case 'associatedLabel':\n return item.name;\n case 'none':\n return undefined;\n }\n }, [infoLabelMode, item, trustEntity]);\n\n const icon = <HistoryListItemIcon item={item} />;\n\n const pressHandler = useCallback(() => {\n onPress?.(item);\n }, [onPress, item]);\n\n return (\n <HistoryItemView\n first={first}\n icon={icon}\n info={info}\n label={label}\n last={last}\n onPress={pressHandler}\n testID={testID}\n time={dateFormatter(new Date(item.createdDate)) ?? ''}\n />\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -31,7 +31,7 @@ const ShareCredential = ({
|
|
|
31
31
|
style,
|
|
32
32
|
testID
|
|
33
33
|
}) => {
|
|
34
|
-
var _credential$
|
|
34
|
+
var _credential$issuer;
|
|
35
35
|
const colorScheme = (0, _uiComponents.useAppColorScheme)();
|
|
36
36
|
const {
|
|
37
37
|
data: credential,
|
|
@@ -47,7 +47,6 @@ const ShareCredential = ({
|
|
|
47
47
|
const multipleCredentialsAvailable = selectionOptions.length > 1;
|
|
48
48
|
const validityState = (0, _credential.getValidityState)(credential ? {
|
|
49
49
|
...credential,
|
|
50
|
-
issuerDid: credential === null || credential === void 0 || (_credential$issuerDid = credential.issuerDid) === null || _credential$issuerDid === void 0 ? void 0 : _credential$issuerDid.id,
|
|
51
50
|
issuer: credential === null || credential === void 0 || (_credential$issuer = credential.issuer) === null || _credential$issuer === void 0 ? void 0 : _credential$issuer.id
|
|
52
51
|
} : undefined);
|
|
53
52
|
const invalid = (0, _react.useMemo)(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeOneCore","require","_react","_interopRequireWildcard","_reactNative","_uiComponents","_utils","_coreConfig","_credentials","_credential","_credentialSharing","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ShareCredential","allCredentials","credentialId","expanded","labels","lastItem","onHeaderPress","onImagePreview","onSelectCredential","onSelectField","request","selectedCredentialId","selectedFields","style","testID","_credential$issuerDid","_credential$issuer","colorScheme","useAppColorScheme","data","credential","isLoading","useCredentialDetail","config","useCoreConfig","selectionOptions","useMemo","applicableCredentials","filter","applicableCredentialId","some","id","state","CredentialStateEnum","ACCEPTED","multipleCredentialsAvailable","length","validityState","getValidityState","issuerDid","issuer","undefined","invalid","lvvcIssuanceDate","validityCredentialNbf","Date","footer","ValidityState","Revoked","createElement","View","styles","notice","backgroundColor","background","concatTestID","Typography","align","color","text","preset","revokedCredentialNotice","Suspended","suspendedCredentialNotice","invalidCredentialNotice","multipleCredentialsNotice","Button","onPress","noticeButton","title","multipleCredentialsSelect","type","ButtonType","Secondary","card","attributes","shareCredentialCardFromCredential","Boolean","CredentialDetailsCardListItem","onAttributeSelected","borderColor","exports","StyleSheet","create","borderRadius","borderWidth","marginBottom","marginHorizontal","padding","marginTop","paddingVertical"],"sources":["share-credential.tsx"],"sourcesContent":["import {\n CredentialListItem,\n CredentialStateEnum,\n PresentationDefinitionField,\n PresentationDefinitionRequestedCredential,\n} from '@procivis/react-native-one-core';\nimport React, { FunctionComponent, useMemo } from 'react';\nimport { ImageSourcePropType, StyleProp, StyleSheet, View, ViewStyle } from 'react-native';\n\nimport { Button, ButtonType, CredentialDetailsCardListItem, Typography, useAppColorScheme } from '../../ui-components';\nimport { concatTestID } from '../../utils';\nimport { useCoreConfig } from '../../utils/hooks/core/core-config';\nimport { useCredentialDetail } from '../../utils/hooks/core/credentials';\nimport { getValidityState, ValidityState } from '../../utils/parsers/credential';\nimport { shareCredentialCardFromCredential, ShareCredentialCardLabels } from '../../utils/parsers/credential-sharing';\n\nexport type ShareCredentialLabels = ShareCredentialCardLabels & {\n revokedCredentialNotice: string;\n suspendedCredentialNotice: string;\n invalidCredentialNotice: string;\n multipleCredentialsNotice: string;\n multipleCredentialsSelect: string;\n};\n\nexport const ShareCredential: FunctionComponent<{\n allCredentials: CredentialListItem[];\n credentialId: string;\n expanded?: boolean;\n labels: ShareCredentialLabels;\n lastItem?: boolean;\n onHeaderPress?: (_credentialId?: string) => void;\n onImagePreview: (title: string, image: ImageSourcePropType) => void;\n onSelectCredential?: () => void;\n onSelectField: (_id: PresentationDefinitionField['id'], _selected: boolean) => void;\n request: PresentationDefinitionRequestedCredential;\n selectedCredentialId?: CredentialListItem['id'];\n selectedFields?: Array<PresentationDefinitionField['id']>;\n style?: StyleProp<ViewStyle>;\n testID: string;\n}> = ({\n allCredentials,\n credentialId,\n expanded,\n labels,\n lastItem,\n onHeaderPress,\n onImagePreview,\n onSelectCredential,\n onSelectField,\n request,\n selectedCredentialId,\n selectedFields,\n style,\n testID,\n}) => {\n const colorScheme = useAppColorScheme();\n const { data: credential, isLoading } = useCredentialDetail(selectedCredentialId);\n const { data: config } = useCoreConfig();\n\n const selectionOptions = useMemo(\n () =>\n request.applicableCredentials.filter((applicableCredentialId) =>\n allCredentials.some(({ id, state }) => id === applicableCredentialId && state === CredentialStateEnum.ACCEPTED),\n ),\n [allCredentials, request],\n );\n const multipleCredentialsAvailable = selectionOptions.length > 1;\n\n const validityState = getValidityState(\n credential\n ? {\n ...credential,\n issuerDid: credential?.issuerDid?.id,\n issuer: credential?.issuer?.id,\n }\n : undefined,\n );\n\n const invalid = useMemo(() => {\n if (!credential?.lvvcIssuanceDate || !request.validityCredentialNbf) {\n return false;\n }\n return new Date(credential.lvvcIssuanceDate) < new Date(request.validityCredentialNbf);\n }, [credential, request]);\n\n const footer = useMemo(() => {\n if (!expanded) {\n return;\n }\n if (validityState === ValidityState.Revoked) {\n return (\n <View\n style={[styles.notice, { backgroundColor: colorScheme.background }]}\n testID={concatTestID(testID, 'notice.revoked')}>\n <Typography align=\"center\" color={colorScheme.text} preset=\"s/line-height-capped\">\n {labels.revokedCredentialNotice}\n </Typography>\n </View>\n );\n }\n if (validityState === ValidityState.Suspended) {\n return (\n <View\n style={[styles.notice, { backgroundColor: colorScheme.background }]}\n testID={concatTestID(testID, 'notice.suspended')}>\n <Typography align=\"center\" color={colorScheme.text} preset=\"s/line-height-capped\">\n {labels.suspendedCredentialNotice}\n </Typography>\n </View>\n );\n }\n\n if (invalid) {\n return (\n <View\n style={[styles.notice, { backgroundColor: colorScheme.background }]}\n testID={concatTestID(testID, 'notice.invalid')}>\n <Typography align=\"center\" color={colorScheme.text} preset=\"s/line-height-capped\">\n {labels.invalidCredentialNotice}\n </Typography>\n </View>\n );\n }\n\n if (multipleCredentialsAvailable) {\n return (\n <View\n style={[styles.notice, { backgroundColor: colorScheme.background }]}\n testID={concatTestID(testID, 'notice.multiple')}>\n <Typography align=\"center\" color={colorScheme.text} preset=\"s/line-height-capped\">\n {labels.multipleCredentialsNotice}\n </Typography>\n <Button\n onPress={onSelectCredential}\n style={styles.noticeButton}\n testID={concatTestID(testID, 'notice.multiple.button')}\n title={labels.multipleCredentialsSelect}\n type={ButtonType.Secondary}\n />\n </View>\n );\n }\n }, [colorScheme, expanded, invalid, labels, multipleCredentialsAvailable, onSelectCredential, testID, validityState]);\n\n if (isLoading || !config) {\n return null;\n }\n\n const { card, attributes } = shareCredentialCardFromCredential(\n credential,\n invalid,\n Boolean(expanded),\n multipleCredentialsAvailable,\n request,\n selectedFields,\n config,\n testID,\n labels,\n );\n\n return (\n <CredentialDetailsCardListItem\n attributes={attributes}\n card={{\n ...card,\n credentialId,\n onHeaderPress,\n }}\n expanded={expanded}\n footer={footer}\n lastItem={lastItem}\n onAttributeSelected={onSelectField}\n onImagePreview={onImagePreview}\n style={[styles.credential, { borderColor: colorScheme.background }, style]}\n testID={testID}\n />\n );\n};\n\nconst styles = StyleSheet.create({\n credential: {\n borderRadius: 10,\n borderWidth: 1,\n marginBottom: 8,\n },\n notice: {\n marginBottom: 22,\n marginHorizontal: 12,\n padding: 12,\n },\n noticeButton: {\n marginTop: 24,\n paddingVertical: 11,\n },\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_reactNativeOneCore","require","_react","_interopRequireWildcard","_reactNative","_uiComponents","_utils","_coreConfig","_credentials","_credential","_credentialSharing","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ShareCredential","allCredentials","credentialId","expanded","labels","lastItem","onHeaderPress","onImagePreview","onSelectCredential","onSelectField","request","selectedCredentialId","selectedFields","style","testID","_credential$issuer","colorScheme","useAppColorScheme","data","credential","isLoading","useCredentialDetail","config","useCoreConfig","selectionOptions","useMemo","applicableCredentials","filter","applicableCredentialId","some","id","state","CredentialStateEnum","ACCEPTED","multipleCredentialsAvailable","length","validityState","getValidityState","issuer","undefined","invalid","lvvcIssuanceDate","validityCredentialNbf","Date","footer","ValidityState","Revoked","createElement","View","styles","notice","backgroundColor","background","concatTestID","Typography","align","color","text","preset","revokedCredentialNotice","Suspended","suspendedCredentialNotice","invalidCredentialNotice","multipleCredentialsNotice","Button","onPress","noticeButton","title","multipleCredentialsSelect","type","ButtonType","Secondary","card","attributes","shareCredentialCardFromCredential","Boolean","CredentialDetailsCardListItem","onAttributeSelected","borderColor","exports","StyleSheet","create","borderRadius","borderWidth","marginBottom","marginHorizontal","padding","marginTop","paddingVertical"],"sources":["share-credential.tsx"],"sourcesContent":["import {\n CredentialListItem,\n CredentialStateEnum,\n PresentationDefinitionField,\n PresentationDefinitionRequestedCredential,\n} from '@procivis/react-native-one-core';\nimport React, { FunctionComponent, useMemo } from 'react';\nimport { ImageSourcePropType, StyleProp, StyleSheet, View, ViewStyle } from 'react-native';\n\nimport { Button, ButtonType, CredentialDetailsCardListItem, Typography, useAppColorScheme } from '../../ui-components';\nimport { concatTestID } from '../../utils';\nimport { useCoreConfig } from '../../utils/hooks/core/core-config';\nimport { useCredentialDetail } from '../../utils/hooks/core/credentials';\nimport { getValidityState, ValidityState } from '../../utils/parsers/credential';\nimport { shareCredentialCardFromCredential, ShareCredentialCardLabels } from '../../utils/parsers/credential-sharing';\n\nexport type ShareCredentialLabels = ShareCredentialCardLabels & {\n revokedCredentialNotice: string;\n suspendedCredentialNotice: string;\n invalidCredentialNotice: string;\n multipleCredentialsNotice: string;\n multipleCredentialsSelect: string;\n};\n\nexport const ShareCredential: FunctionComponent<{\n allCredentials: CredentialListItem[];\n credentialId: string;\n expanded?: boolean;\n labels: ShareCredentialLabels;\n lastItem?: boolean;\n onHeaderPress?: (_credentialId?: string) => void;\n onImagePreview: (title: string, image: ImageSourcePropType) => void;\n onSelectCredential?: () => void;\n onSelectField: (_id: PresentationDefinitionField['id'], _selected: boolean) => void;\n request: PresentationDefinitionRequestedCredential;\n selectedCredentialId?: CredentialListItem['id'];\n selectedFields?: Array<PresentationDefinitionField['id']>;\n style?: StyleProp<ViewStyle>;\n testID: string;\n}> = ({\n allCredentials,\n credentialId,\n expanded,\n labels,\n lastItem,\n onHeaderPress,\n onImagePreview,\n onSelectCredential,\n onSelectField,\n request,\n selectedCredentialId,\n selectedFields,\n style,\n testID,\n}) => {\n const colorScheme = useAppColorScheme();\n const { data: credential, isLoading } = useCredentialDetail(selectedCredentialId);\n const { data: config } = useCoreConfig();\n\n const selectionOptions = useMemo(\n () =>\n request.applicableCredentials.filter((applicableCredentialId) =>\n allCredentials.some(({ id, state }) => id === applicableCredentialId && state === CredentialStateEnum.ACCEPTED),\n ),\n [allCredentials, request],\n );\n const multipleCredentialsAvailable = selectionOptions.length > 1;\n\n const validityState = getValidityState(\n credential\n ? {\n ...credential,\n issuer: credential?.issuer?.id,\n }\n : undefined,\n );\n\n const invalid = useMemo(() => {\n if (!credential?.lvvcIssuanceDate || !request.validityCredentialNbf) {\n return false;\n }\n return new Date(credential.lvvcIssuanceDate) < new Date(request.validityCredentialNbf);\n }, [credential, request]);\n\n const footer = useMemo(() => {\n if (!expanded) {\n return;\n }\n if (validityState === ValidityState.Revoked) {\n return (\n <View\n style={[styles.notice, { backgroundColor: colorScheme.background }]}\n testID={concatTestID(testID, 'notice.revoked')}>\n <Typography align=\"center\" color={colorScheme.text} preset=\"s/line-height-capped\">\n {labels.revokedCredentialNotice}\n </Typography>\n </View>\n );\n }\n if (validityState === ValidityState.Suspended) {\n return (\n <View\n style={[styles.notice, { backgroundColor: colorScheme.background }]}\n testID={concatTestID(testID, 'notice.suspended')}>\n <Typography align=\"center\" color={colorScheme.text} preset=\"s/line-height-capped\">\n {labels.suspendedCredentialNotice}\n </Typography>\n </View>\n );\n }\n\n if (invalid) {\n return (\n <View\n style={[styles.notice, { backgroundColor: colorScheme.background }]}\n testID={concatTestID(testID, 'notice.invalid')}>\n <Typography align=\"center\" color={colorScheme.text} preset=\"s/line-height-capped\">\n {labels.invalidCredentialNotice}\n </Typography>\n </View>\n );\n }\n\n if (multipleCredentialsAvailable) {\n return (\n <View\n style={[styles.notice, { backgroundColor: colorScheme.background }]}\n testID={concatTestID(testID, 'notice.multiple')}>\n <Typography align=\"center\" color={colorScheme.text} preset=\"s/line-height-capped\">\n {labels.multipleCredentialsNotice}\n </Typography>\n <Button\n onPress={onSelectCredential}\n style={styles.noticeButton}\n testID={concatTestID(testID, 'notice.multiple.button')}\n title={labels.multipleCredentialsSelect}\n type={ButtonType.Secondary}\n />\n </View>\n );\n }\n }, [colorScheme, expanded, invalid, labels, multipleCredentialsAvailable, onSelectCredential, testID, validityState]);\n\n if (isLoading || !config) {\n return null;\n }\n\n const { card, attributes } = shareCredentialCardFromCredential(\n credential,\n invalid,\n Boolean(expanded),\n multipleCredentialsAvailable,\n request,\n selectedFields,\n config,\n testID,\n labels,\n );\n\n return (\n <CredentialDetailsCardListItem\n attributes={attributes}\n card={{\n ...card,\n credentialId,\n onHeaderPress,\n }}\n expanded={expanded}\n footer={footer}\n lastItem={lastItem}\n onAttributeSelected={onSelectField}\n onImagePreview={onImagePreview}\n style={[styles.credential, { borderColor: colorScheme.background }, style]}\n testID={testID}\n />\n );\n};\n\nconst styles = StyleSheet.create({\n credential: {\n borderRadius: 10,\n borderWidth: 1,\n marginBottom: 8,\n },\n notice: {\n marginBottom: 22,\n marginHorizontal: 12,\n padding: 12,\n },\n noticeButton: {\n marginTop: 24,\n paddingVertical: 11,\n },\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,13 +9,6 @@ Object.defineProperty(exports, "BlurView", {
|
|
|
9
9
|
return _blurView.default;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
get: function () {
|
|
15
|
-
return _blurView.BlurViewProps;
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
var _blurView = _interopRequireWildcard(require("./blur-view"));
|
|
19
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
20
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
12
|
+
var _blurView = _interopRequireDefault(require("./blur-view"));
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
21
14
|
//# sourceMappingURL=index.js.map
|