@procivis/one-react-native-components 0.3.53 → 0.3.71

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) hide show
  1. package/lib/commonjs/components/credential/credential.js +6 -3
  2. package/lib/commonjs/components/credential/credential.js.map +1 -1
  3. package/lib/commonjs/components/history/history-list-item-icon.js +3 -1
  4. package/lib/commonjs/components/history/history-list-item-icon.js.map +1 -1
  5. package/lib/commonjs/components/history/history-list-screen.js +2 -2
  6. package/lib/commonjs/components/history/history-list-screen.js.map +1 -1
  7. package/lib/commonjs/components/proof-request/select-credential.js +7 -3
  8. package/lib/commonjs/components/proof-request/select-credential.js.map +1 -1
  9. package/lib/commonjs/components/proof-request/share-credential.js +6 -9
  10. package/lib/commonjs/components/proof-request/share-credential.js.map +1 -1
  11. package/lib/commonjs/ui-components/buttons/index.js +7 -0
  12. package/lib/commonjs/ui-components/buttons/index.js.map +1 -1
  13. package/lib/commonjs/ui-components/buttons/share-button.js +54 -0
  14. package/lib/commonjs/ui-components/buttons/share-button.js.map +1 -0
  15. package/lib/commonjs/ui-components/credential/card/credential-card.js +14 -29
  16. package/lib/commonjs/ui-components/credential/card/credential-card.js.map +1 -1
  17. package/lib/commonjs/ui-components/credential/card/credential-details-card.js +27 -28
  18. package/lib/commonjs/ui-components/credential/card/credential-details-card.js.map +1 -1
  19. package/lib/commonjs/ui-components/credential/card/credential-details-list-item.js +10 -6
  20. package/lib/commonjs/ui-components/credential/card/credential-details-list-item.js.map +1 -1
  21. package/lib/commonjs/ui-components/header/header.js +7 -5
  22. package/lib/commonjs/ui-components/header/header.js.map +1 -1
  23. package/lib/commonjs/ui-components/history/history-details.js +3 -1
  24. package/lib/commonjs/ui-components/history/history-details.js.map +1 -1
  25. package/lib/commonjs/ui-components/icons/icons.js +123 -1
  26. package/lib/commonjs/ui-components/icons/icons.js.map +1 -1
  27. package/lib/commonjs/ui-components/index.js +11 -0
  28. package/lib/commonjs/ui-components/index.js.map +1 -1
  29. package/lib/commonjs/ui-components/loader/loading-result.js +8 -1
  30. package/lib/commonjs/ui-components/loader/loading-result.js.map +1 -1
  31. package/lib/commonjs/ui-components/nfc/index.js +14 -0
  32. package/lib/commonjs/ui-components/nfc/index.js.map +1 -0
  33. package/lib/commonjs/ui-components/nfc/nfc-process.js +77 -0
  34. package/lib/commonjs/ui-components/nfc/nfc-process.js.map +1 -0
  35. package/lib/commonjs/ui-components/screens/section-list-screen.js +20 -5
  36. package/lib/commonjs/ui-components/screens/section-list-screen.js.map +1 -1
  37. package/lib/commonjs/ui-components/searchbar/animated-search-bar.js +10 -8
  38. package/lib/commonjs/ui-components/searchbar/animated-search-bar.js.map +1 -1
  39. package/lib/commonjs/utils/hooks/core/backup.js +1 -1
  40. package/lib/commonjs/utils/hooks/core/backup.js.map +1 -1
  41. package/lib/commonjs/utils/hooks/core/core-init.js +2 -1
  42. package/lib/commonjs/utils/hooks/core/core-init.js.map +1 -1
  43. package/lib/commonjs/utils/hooks/core/credentials.js +4 -4
  44. package/lib/commonjs/utils/hooks/core/credentials.js.map +1 -1
  45. package/lib/commonjs/utils/hooks/core/proofs.js +13 -3
  46. package/lib/commonjs/utils/hooks/core/proofs.js.map +1 -1
  47. package/lib/commonjs/utils/hooks/index.js +11 -0
  48. package/lib/commonjs/utils/hooks/index.js.map +1 -1
  49. package/lib/commonjs/utils/hooks/nfc/nfc-status.js +40 -0
  50. package/lib/commonjs/utils/hooks/nfc/nfc-status.js.map +1 -0
  51. package/lib/commonjs/utils/index.js +12 -0
  52. package/lib/commonjs/utils/index.js.map +1 -1
  53. package/lib/commonjs/utils/parsers/credential-sharing.js +18 -1
  54. package/lib/commonjs/utils/parsers/credential-sharing.js.map +1 -1
  55. package/lib/commonjs/utils/parsers/credential.js.map +1 -1
  56. package/lib/commonjs/utils/parsers/query.js +1 -1
  57. package/lib/commonjs/utils/parsers/query.js.map +1 -1
  58. package/lib/commonjs/utils/url.js +80 -0
  59. package/lib/commonjs/utils/url.js.map +1 -0
  60. package/lib/module/components/credential/credential.js +5 -3
  61. package/lib/module/components/credential/credential.js.map +1 -1
  62. package/lib/module/components/history/history-list-item-icon.js +3 -1
  63. package/lib/module/components/history/history-list-item-icon.js.map +1 -1
  64. package/lib/module/components/history/history-list-screen.js +2 -2
  65. package/lib/module/components/history/history-list-screen.js.map +1 -1
  66. package/lib/module/components/proof-request/select-credential.js +5 -2
  67. package/lib/module/components/proof-request/select-credential.js.map +1 -1
  68. package/lib/module/components/proof-request/share-credential.js +7 -10
  69. package/lib/module/components/proof-request/share-credential.js.map +1 -1
  70. package/lib/module/ui-components/buttons/index.js +2 -1
  71. package/lib/module/ui-components/buttons/index.js.map +1 -1
  72. package/lib/module/ui-components/buttons/share-button.js +47 -0
  73. package/lib/module/ui-components/buttons/share-button.js.map +1 -0
  74. package/lib/module/ui-components/credential/card/credential-card.js +15 -30
  75. package/lib/module/ui-components/credential/card/credential-card.js.map +1 -1
  76. package/lib/module/ui-components/credential/card/credential-details-card.js +27 -28
  77. package/lib/module/ui-components/credential/card/credential-details-card.js.map +1 -1
  78. package/lib/module/ui-components/credential/card/credential-details-list-item.js +10 -6
  79. package/lib/module/ui-components/credential/card/credential-details-list-item.js.map +1 -1
  80. package/lib/module/ui-components/header/header.js +7 -5
  81. package/lib/module/ui-components/header/header.js.map +1 -1
  82. package/lib/module/ui-components/history/history-details.js +4 -2
  83. package/lib/module/ui-components/history/history-details.js.map +1 -1
  84. package/lib/module/ui-components/icons/icons.js +117 -0
  85. package/lib/module/ui-components/icons/icons.js.map +1 -1
  86. package/lib/module/ui-components/index.js +1 -0
  87. package/lib/module/ui-components/index.js.map +1 -1
  88. package/lib/module/ui-components/loader/loading-result.js +8 -1
  89. package/lib/module/ui-components/loader/loading-result.js.map +1 -1
  90. package/lib/module/ui-components/nfc/index.js +3 -0
  91. package/lib/module/ui-components/nfc/index.js.map +1 -0
  92. package/lib/module/ui-components/nfc/nfc-process.js +69 -0
  93. package/lib/module/ui-components/nfc/nfc-process.js.map +1 -0
  94. package/lib/module/ui-components/screens/section-list-screen.js +21 -6
  95. package/lib/module/ui-components/screens/section-list-screen.js.map +1 -1
  96. package/lib/module/ui-components/searchbar/animated-search-bar.js +10 -8
  97. package/lib/module/ui-components/searchbar/animated-search-bar.js.map +1 -1
  98. package/lib/module/utils/hooks/core/backup.js +1 -1
  99. package/lib/module/utils/hooks/core/backup.js.map +1 -1
  100. package/lib/module/utils/hooks/core/core-init.js +1 -0
  101. package/lib/module/utils/hooks/core/core-init.js.map +1 -1
  102. package/lib/module/utils/hooks/core/credentials.js +4 -4
  103. package/lib/module/utils/hooks/core/credentials.js.map +1 -1
  104. package/lib/module/utils/hooks/core/proofs.js +12 -2
  105. package/lib/module/utils/hooks/core/proofs.js.map +1 -1
  106. package/lib/module/utils/hooks/index.js +1 -0
  107. package/lib/module/utils/hooks/index.js.map +1 -1
  108. package/lib/module/utils/hooks/nfc/nfc-status.js +32 -0
  109. package/lib/module/utils/hooks/nfc/nfc-status.js.map +1 -0
  110. package/lib/module/utils/index.js +1 -0
  111. package/lib/module/utils/index.js.map +1 -1
  112. package/lib/module/utils/parsers/credential-sharing.js +18 -1
  113. package/lib/module/utils/parsers/credential-sharing.js.map +1 -1
  114. package/lib/module/utils/parsers/credential.js.map +1 -1
  115. package/lib/module/utils/parsers/query.js +1 -1
  116. package/lib/module/utils/parsers/query.js.map +1 -1
  117. package/lib/module/utils/url.js +71 -0
  118. package/lib/module/utils/url.js.map +1 -0
  119. package/lib/typescript/components/proof-request/share-credential.d.ts +4 -5
  120. package/lib/typescript/ui-components/buttons/index.d.ts +3 -1
  121. package/lib/typescript/ui-components/buttons/share-button.d.ts +10 -0
  122. package/lib/typescript/ui-components/credential/card/credential-card.d.ts +1 -0
  123. package/lib/typescript/ui-components/header/header.d.ts +1 -1
  124. package/lib/typescript/ui-components/icons/icons.d.ts +5 -0
  125. package/lib/typescript/ui-components/index.d.ts +1 -0
  126. package/lib/typescript/ui-components/loader/loading-result.d.ts +2 -0
  127. package/lib/typescript/ui-components/nfc/index.d.ts +2 -0
  128. package/lib/typescript/ui-components/nfc/nfc-process.d.ts +17 -0
  129. package/lib/typescript/ui-components/screens/section-list-screen.d.ts +2 -1
  130. package/lib/typescript/ui-components/searchbar/animated-search-bar.d.ts +2 -2
  131. package/lib/typescript/utils/hooks/core/backup.d.ts +1 -1
  132. package/lib/typescript/utils/hooks/core/core-init.d.ts +2 -1
  133. package/lib/typescript/utils/hooks/core/credentials.d.ts +2 -6
  134. package/lib/typescript/utils/hooks/core/proofs.d.ts +9 -1
  135. package/lib/typescript/utils/hooks/index.d.ts +1 -0
  136. package/lib/typescript/utils/hooks/nfc/nfc-status.d.ts +6 -0
  137. package/lib/typescript/utils/index.d.ts +1 -0
  138. package/lib/typescript/utils/parsers/credential-sharing.d.ts +6 -6
  139. package/lib/typescript/utils/parsers/credential.d.ts +6 -3
  140. package/lib/typescript/utils/url.d.ts +19 -0
  141. package/package.json +7 -3
  142. package/src/components/credential/credential.tsx +4 -2
  143. package/src/components/history/history-list-item-icon.tsx +2 -0
  144. package/src/components/history/history-list-screen.tsx +9 -7
  145. package/src/components/proof-request/select-credential.tsx +4 -2
  146. package/src/components/proof-request/share-credential.tsx +10 -10
  147. package/src/ui-components/buttons/index.ts +4 -0
  148. package/src/ui-components/buttons/share-button.stories.tsx +25 -0
  149. package/src/ui-components/buttons/share-button.tsx +55 -0
  150. package/src/ui-components/credential/card/credential-card.stories.tsx +14 -2
  151. package/src/ui-components/credential/card/credential-card.tsx +16 -23
  152. package/src/ui-components/credential/card/credential-details-card.stories.tsx +14 -4
  153. package/src/ui-components/credential/card/credential-details-card.tsx +32 -34
  154. package/src/ui-components/credential/card/credential-details-list-item.tsx +10 -6
  155. package/src/ui-components/detail/detail.stories.tsx +3 -3
  156. package/src/ui-components/header/header.stories.tsx +8 -6
  157. package/src/ui-components/header/header.tsx +7 -5
  158. package/src/ui-components/history/history-details.tsx +3 -1
  159. package/src/ui-components/icons/icons.tsx +107 -0
  160. package/src/ui-components/index.ts +1 -0
  161. package/src/ui-components/loader/loading-result.stories.tsx +4 -1
  162. package/src/ui-components/loader/loading-result.tsx +7 -0
  163. package/src/ui-components/nfc/index.ts +3 -0
  164. package/src/ui-components/nfc/nfc-process.tsx +80 -0
  165. package/src/ui-components/screens/section-list-screen.tsx +21 -4
  166. package/src/ui-components/searchbar/animated-search-bar.tsx +11 -9
  167. package/src/utils/hooks/core/backup.ts +5 -2
  168. package/src/utils/hooks/core/core-init.ts +5 -1
  169. package/src/utils/hooks/core/credentials.ts +3 -3
  170. package/src/utils/hooks/core/proofs.ts +20 -5
  171. package/src/utils/hooks/index.ts +1 -0
  172. package/src/utils/hooks/nfc/nfc-status.ts +31 -0
  173. package/src/utils/index.ts +1 -0
  174. package/src/utils/parsers/credential-sharing.tsx +34 -11
  175. package/src/utils/parsers/credential.ts +8 -4
  176. package/src/utils/parsers/query.ts +1 -0
  177. package/src/utils/url.ts +61 -0
@@ -21,16 +21,30 @@ const SectionListScreen = ({
21
21
  stickySectionHeadersEnabled,
22
22
  ...listProps
23
23
  },
24
+ modalPresentation,
24
25
  style,
25
26
  ...viewProps
26
27
  }) => {
27
28
  const colorScheme = (0, _colorSchemeContext.useAppColorScheme)();
28
- const safeAreaInsets = (0, _reactNativeSafeAreaContext.useSafeAreaInsets)();
29
- const contentInsetsStyle = (0, _listContentInset.useListContentInset)();
29
+ const {
30
+ top
31
+ } = (0, _reactNativeSafeAreaContext.useSafeAreaInsets)();
32
+ const contentInsetsStyle = (0, _listContentInset.useListContentInset)({
33
+ headerHeight: modalPresentation && _reactNative.Platform.OS === 'ios' ? 63 : 48,
34
+ modalPresentation
35
+ });
30
36
  const {
31
37
  titleVisible,
32
38
  onScroll
33
39
  } = (0, _onScrollHeaderState.useOnScrollHeaderState)();
40
+ let headerPaddingStyle;
41
+ if (!modalPresentation || _reactNative.Platform.OS === 'android') {
42
+ headerPaddingStyle = {
43
+ paddingTop: top
44
+ };
45
+ } else if (modalPresentation && !header.modalHandleVisible && _reactNative.Platform.OS === 'ios') {
46
+ headerPaddingStyle = styles.modalHeaderWithoutHandle;
47
+ }
34
48
  return /*#__PURE__*/_react.default.createElement(_reactNative.View, _extends({
35
49
  style: [styles.container, {
36
50
  backgroundColor: colorScheme.background
@@ -46,9 +60,7 @@ const SectionListScreen = ({
46
60
  }, listProps)), /*#__PURE__*/_react.default.createElement(_navigationHeader.default, _extends({
47
61
  animate: true,
48
62
  blurred: true,
49
- style: [styles.header, {
50
- paddingTop: safeAreaInsets.top
51
- }],
63
+ style: [styles.header, headerPaddingStyle],
52
64
  titleVisible: header.static || titleVisible
53
65
  }, header)));
54
66
  };
@@ -59,6 +71,9 @@ const styles = _reactNative.StyleSheet.create({
59
71
  header: {
60
72
  position: 'absolute',
61
73
  width: '100%'
74
+ },
75
+ modalHeaderWithoutHandle: {
76
+ paddingTop: 15
62
77
  }
63
78
  });
64
79
  var _default = exports.default = SectionListScreen;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeSafeAreaContext","_onScrollHeaderState","_listContentInset","_navigationHeader","_listTitleHeader","_colorSchemeContext","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","SectionListScreen","header","list","contentContainerStyle","stickySectionHeadersEnabled","listProps","style","viewProps","colorScheme","useAppColorScheme","safeAreaInsets","useSafeAreaInsets","contentInsetsStyle","useListContentInset","titleVisible","onScroll","useOnScrollHeaderState","createElement","View","styles","container","backgroundColor","background","SectionList","ListHeaderComponent","static","title","undefined","scrollEventThrottle","animate","blurred","paddingTop","top","StyleSheet","create","flex","position","width","_default","exports"],"sources":["section-list-screen.tsx"],"sourcesContent":["import React from 'react';\nimport { SectionList, SectionListProps, StyleSheet, View, ViewProps } from 'react-native';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\n\nimport { useOnScrollHeaderState } from '../../utils/hooks/header/on-scroll-header-state';\nimport { useListContentInset } from '../../utils/hooks/list/list-content-inset';\nimport NavigationHeader, { NavigationHeaderProps } from '../header/navigation-header';\nimport ListTitleHeader from '../list/list-title-header';\nimport { useAppColorScheme } from '../theme/color-scheme-context';\n\nexport type SectionListScreenProps<ItemT, SectionT> = ViewProps & {\n header: Omit<NavigationHeaderProps, 'animate' | 'blurred' | 'style' | 'title' | 'titleVisible'> & {\n static?: boolean;\n title: string;\n };\n list: Omit<SectionListProps<ItemT, SectionT>, 'ListHeaderComponent' | 'onScroll'>;\n};\n\nconst SectionListScreen = <ItemT, SectionT>({\n header,\n list: { contentContainerStyle, stickySectionHeadersEnabled, ...listProps },\n style,\n ...viewProps\n}: SectionListScreenProps<ItemT, SectionT>) => {\n const colorScheme = useAppColorScheme();\n const safeAreaInsets = useSafeAreaInsets();\n const contentInsetsStyle = useListContentInset();\n const { titleVisible, onScroll } = useOnScrollHeaderState();\n\n return (\n <View style={[styles.container, { backgroundColor: colorScheme.background }, style]} {...viewProps}>\n <SectionList<ItemT, SectionT>\n ListHeaderComponent={!header.static ? <ListTitleHeader title={header.title} /> : undefined}\n contentContainerStyle={[contentInsetsStyle, contentContainerStyle]}\n onScroll={onScroll}\n scrollEventThrottle={100}\n stickySectionHeadersEnabled={stickySectionHeadersEnabled ?? false}\n {...listProps}\n />\n <NavigationHeader\n animate\n blurred\n style={[styles.header, { paddingTop: safeAreaInsets.top }]}\n titleVisible={header.static || titleVisible}\n {...header}\n />\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n },\n header: {\n position: 'absolute',\n width: '100%',\n },\n});\n\nexport default SectionListScreen;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_reactNativeSafeAreaContext","_onScrollHeaderState","_listContentInset","_navigationHeader","_listTitleHeader","_colorSchemeContext","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","SectionListScreen","header","list","contentContainerStyle","stickySectionHeadersEnabled","listProps","modalPresentation","style","viewProps","colorScheme","useAppColorScheme","top","useSafeAreaInsets","contentInsetsStyle","useListContentInset","headerHeight","Platform","OS","titleVisible","onScroll","useOnScrollHeaderState","headerPaddingStyle","paddingTop","modalHandleVisible","styles","modalHeaderWithoutHandle","createElement","View","container","backgroundColor","background","SectionList","ListHeaderComponent","static","title","undefined","scrollEventThrottle","animate","blurred","StyleSheet","create","flex","position","width","_default","exports"],"sources":["section-list-screen.tsx"],"sourcesContent":["import React from 'react';\nimport { Platform, SectionList, SectionListProps, StyleSheet, View, ViewProps, ViewStyle } from 'react-native';\nimport { useSafeAreaInsets } from 'react-native-safe-area-context';\n\nimport { useOnScrollHeaderState } from '../../utils/hooks/header/on-scroll-header-state';\nimport { useListContentInset } from '../../utils/hooks/list/list-content-inset';\nimport NavigationHeader, { NavigationHeaderProps } from '../header/navigation-header';\nimport ListTitleHeader from '../list/list-title-header';\nimport { useAppColorScheme } from '../theme/color-scheme-context';\n\nexport type SectionListScreenProps<ItemT, SectionT> = ViewProps & {\n header: Omit<NavigationHeaderProps, 'animate' | 'blurred' | 'style' | 'title' | 'titleVisible'> & {\n static?: boolean;\n title: string;\n };\n list: Omit<SectionListProps<ItemT, SectionT>, 'ListHeaderComponent' | 'onScroll'>;\n modalPresentation?: boolean;\n};\n\nconst SectionListScreen = <ItemT, SectionT>({\n header,\n list: { contentContainerStyle, stickySectionHeadersEnabled, ...listProps },\n modalPresentation,\n style,\n ...viewProps\n}: SectionListScreenProps<ItemT, SectionT>) => {\n const colorScheme = useAppColorScheme();\n const { top } = useSafeAreaInsets();\n const contentInsetsStyle = useListContentInset({\n headerHeight: modalPresentation && Platform.OS === 'ios' ? 63 : 48,\n modalPresentation,\n });\n const { titleVisible, onScroll } = useOnScrollHeaderState();\n\n let headerPaddingStyle: ViewStyle | undefined;\n if (!modalPresentation || Platform.OS === 'android') {\n headerPaddingStyle = {\n paddingTop: top,\n };\n } else if (modalPresentation && !header.modalHandleVisible && Platform.OS === 'ios') {\n headerPaddingStyle = styles.modalHeaderWithoutHandle;\n }\n\n return (\n <View style={[styles.container, { backgroundColor: colorScheme.background }, style]} {...viewProps}>\n <SectionList<ItemT, SectionT>\n ListHeaderComponent={!header.static ? <ListTitleHeader title={header.title} /> : undefined}\n contentContainerStyle={[contentInsetsStyle, contentContainerStyle]}\n onScroll={onScroll}\n scrollEventThrottle={100}\n stickySectionHeadersEnabled={stickySectionHeadersEnabled ?? false}\n {...listProps}\n />\n <NavigationHeader\n animate\n blurred\n style={[styles.header, headerPaddingStyle]}\n titleVisible={header.static || titleVisible}\n {...header}\n />\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n },\n header: {\n position: 'absolute',\n width: '100%',\n },\n modalHeaderWithoutHandle: {\n paddingTop: 15,\n },\n});\n\nexport default SectionListScreen;\n"],"mappings":"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","ignoreList":[]}
@@ -17,9 +17,9 @@ const AnimatedSearchBar = ({
17
17
  collapsed,
18
18
  rightButtonAlwaysVisible = false,
19
19
  searchBarProps,
20
- rightButton
20
+ rightButtons = []
21
21
  }) => {
22
- const [rightIconFadeAnimation] = (0, _react.useState)(() => new _reactNative.Animated.Value(rightButton && rightButtonAlwaysVisible ? 1.5 : 0));
22
+ const [rightIconFadeAnimation] = (0, _react.useState)(() => new _reactNative.Animated.Value(rightButtons && rightButtonAlwaysVisible ? 1.5 : 0));
23
23
  const [searchPaddingAnimation] = (0, _react.useState)(() => new _reactNative.Animated.Value(0));
24
24
  (0, _react.useEffect)(() => {
25
25
  _reactNative.Animated.timing(searchPaddingAnimation, {
@@ -34,10 +34,10 @@ const AnimatedSearchBar = ({
34
34
  }
35
35
  _reactNative.Animated.timing(rightIconFadeAnimation, {
36
36
  duration: 250,
37
- toValue: collapsed && rightButton ? 1.5 : 0,
37
+ toValue: collapsed && rightButtons ? 1.5 : 0,
38
38
  useNativeDriver: false
39
39
  }).start();
40
- }, [rightButtonAlwaysVisible, rightIconFadeAnimation, rightButton, collapsed]);
40
+ }, [rightButtonAlwaysVisible, rightIconFadeAnimation, rightButtons, collapsed]);
41
41
  const searchBarContainerAnimatedStyle = {
42
42
  paddingHorizontal: searchPaddingAnimation.interpolate({
43
43
  extrapolate: 'clamp',
@@ -56,7 +56,7 @@ const AnimatedSearchBar = ({
56
56
  width: rightIconFadeAnimation.interpolate({
57
57
  extrapolate: 'clamp',
58
58
  inputRange: [0, 1],
59
- outputRange: ['100%', '88%']
59
+ outputRange: ['100%', `${100 - 12 * rightButtons.length}%`]
60
60
  })
61
61
  };
62
62
  const {
@@ -67,13 +67,15 @@ const AnimatedSearchBar = ({
67
67
  style: [styles.searchBarContainer, searchBarContainerAnimatedStyle, searchBarStyle]
68
68
  }, /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, {
69
69
  style: searchBarAnimatedStyle
70
- }, /*#__PURE__*/_react.default.createElement(_searchBar.default, searchProps)), rightButton && /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, {
70
+ }, /*#__PURE__*/_react.default.createElement(_searchBar.default, searchProps)), rightButtons && /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, {
71
71
  style: [styles.rightButtonWrapper, optionsIconAnimatedStyle]
72
- }, rightButton));
72
+ }, rightButtons));
73
73
  };
74
74
  const styles = _reactNative.StyleSheet.create({
75
75
  rightButtonWrapper: {
76
- alignItems: 'flex-end',
76
+ alignItems: 'center',
77
+ flexDirection: 'row',
78
+ gap: '16',
77
79
  justifyContent: 'center'
78
80
  },
79
81
  searchBarContainer: {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_searchBar","_interopRequireDefault","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","AnimatedSearchBar","collapsed","rightButtonAlwaysVisible","searchBarProps","rightButton","rightIconFadeAnimation","useState","Animated","Value","searchPaddingAnimation","useEffect","timing","duration","toValue","useNativeDriver","start","searchBarContainerAnimatedStyle","paddingHorizontal","interpolate","extrapolate","inputRange","outputRange","optionsIconAnimatedStyle","opacity","searchBarAnimatedStyle","width","style","searchBarStyle","searchProps","createElement","View","styles","searchBarContainer","rightButtonWrapper","StyleSheet","create","alignItems","justifyContent","flexDirection","paddingBottom","_default","exports"],"sources":["animated-search-bar.tsx"],"sourcesContent":["import React, { ReactNode, useEffect, useState } from 'react';\nimport { Animated, StyleSheet, ViewStyle } from 'react-native';\n\nimport SearchBar, { SearchBarProps } from './search-bar';\n\nexport type AnimatedSearchBarProps = {\n collapsed: boolean;\n rightButton?: ReactNode;\n rightButtonAlwaysVisible?: boolean;\n searchBarProps: SearchBarProps;\n};\n\n// Animated search bar, according to\n// https://www.figma.com/design/52qDYWUMjXAGre1dcnz5bz/Procivis-One-Wallet?node-id=1143-40433&m=dev\n\nconst AnimatedSearchBar = ({\n collapsed,\n rightButtonAlwaysVisible = false,\n searchBarProps,\n rightButton,\n}: AnimatedSearchBarProps) => {\n const [rightIconFadeAnimation] = useState(\n () => new Animated.Value(rightButton && rightButtonAlwaysVisible ? 1.5 : 0),\n );\n const [searchPaddingAnimation] = useState(() => new Animated.Value(0));\n\n useEffect(() => {\n Animated.timing(searchPaddingAnimation, {\n duration: 250,\n toValue: collapsed ? 1 : 0,\n useNativeDriver: false,\n }).start();\n }, [collapsed, searchPaddingAnimation]);\n\n useEffect(() => {\n if (rightButtonAlwaysVisible) {\n return;\n }\n\n Animated.timing(rightIconFadeAnimation, {\n duration: 250,\n toValue: collapsed && rightButton ? 1.5 : 0,\n useNativeDriver: false,\n }).start();\n }, [rightButtonAlwaysVisible, rightIconFadeAnimation, rightButton, collapsed]);\n\n const searchBarContainerAnimatedStyle = {\n paddingHorizontal: searchPaddingAnimation.interpolate({\n extrapolate: 'clamp',\n inputRange: [0, 1],\n outputRange: [16, 20],\n }),\n };\n\n const optionsIconAnimatedStyle: Animated.WithAnimatedObject<ViewStyle> = {\n opacity: rightIconFadeAnimation.interpolate({\n extrapolate: 'clamp',\n inputRange: [1, 1.5],\n outputRange: [0, 1],\n }),\n };\n\n const searchBarAnimatedStyle = {\n width: rightIconFadeAnimation.interpolate({\n extrapolate: 'clamp',\n inputRange: [0, 1],\n outputRange: ['100%', '88%'],\n }),\n };\n\n const { style: searchBarStyle, ...searchProps } = searchBarProps;\n return (\n <Animated.View style={[styles.searchBarContainer, searchBarContainerAnimatedStyle, searchBarStyle]}>\n <Animated.View style={searchBarAnimatedStyle}>\n <SearchBar {...searchProps} />\n </Animated.View>\n {rightButton && (\n <Animated.View style={[styles.rightButtonWrapper, optionsIconAnimatedStyle]}>{rightButton}</Animated.View>\n )}\n </Animated.View>\n );\n};\n\nconst styles = StyleSheet.create({\n rightButtonWrapper: {\n alignItems: 'flex-end',\n justifyContent: 'center',\n },\n searchBarContainer: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n paddingBottom: 12,\n },\n});\n\nexport default AnimatedSearchBar;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_searchBar","_interopRequireDefault","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","AnimatedSearchBar","collapsed","rightButtonAlwaysVisible","searchBarProps","rightButtons","rightIconFadeAnimation","useState","Animated","Value","searchPaddingAnimation","useEffect","timing","duration","toValue","useNativeDriver","start","searchBarContainerAnimatedStyle","paddingHorizontal","interpolate","extrapolate","inputRange","outputRange","optionsIconAnimatedStyle","opacity","searchBarAnimatedStyle","width","length","style","searchBarStyle","searchProps","createElement","View","styles","searchBarContainer","rightButtonWrapper","StyleSheet","create","alignItems","flexDirection","gap","justifyContent","paddingBottom","_default","exports"],"sources":["animated-search-bar.tsx"],"sourcesContent":["import React, { ReactNode, useEffect, useState } from 'react';\nimport { Animated, StyleSheet, ViewStyle } from 'react-native';\n\nimport SearchBar, { SearchBarProps } from './search-bar';\n\nexport type AnimatedSearchBarProps = {\n collapsed: boolean;\n rightButtons?: ReactNode[];\n rightButtonAlwaysVisible?: boolean;\n searchBarProps: SearchBarProps;\n};\n\n// Animated search bar, according to\n// https://www.figma.com/design/52qDYWUMjXAGre1dcnz5bz/Procivis-One-Wallet?node-id=1143-40433&m=dev\n\nconst AnimatedSearchBar = ({\n collapsed,\n rightButtonAlwaysVisible = false,\n searchBarProps,\n rightButtons = [],\n}: AnimatedSearchBarProps) => {\n const [rightIconFadeAnimation] = useState(\n () => new Animated.Value(rightButtons && rightButtonAlwaysVisible ? 1.5 : 0),\n );\n const [searchPaddingAnimation] = useState(() => new Animated.Value(0));\n\n useEffect(() => {\n Animated.timing(searchPaddingAnimation, {\n duration: 250,\n toValue: collapsed ? 1 : 0,\n useNativeDriver: false,\n }).start();\n }, [collapsed, searchPaddingAnimation]);\n\n useEffect(() => {\n if (rightButtonAlwaysVisible) {\n return;\n }\n\n Animated.timing(rightIconFadeAnimation, {\n duration: 250,\n toValue: collapsed && rightButtons ? 1.5 : 0,\n useNativeDriver: false,\n }).start();\n }, [rightButtonAlwaysVisible, rightIconFadeAnimation, rightButtons, collapsed]);\n\n const searchBarContainerAnimatedStyle = {\n paddingHorizontal: searchPaddingAnimation.interpolate({\n extrapolate: 'clamp',\n inputRange: [0, 1],\n outputRange: [16, 20],\n }),\n };\n\n const optionsIconAnimatedStyle: Animated.WithAnimatedObject<ViewStyle> = {\n opacity: rightIconFadeAnimation.interpolate({\n extrapolate: 'clamp',\n inputRange: [1, 1.5],\n outputRange: [0, 1],\n }),\n };\n\n const searchBarAnimatedStyle = {\n width: rightIconFadeAnimation.interpolate({\n extrapolate: 'clamp',\n inputRange: [0, 1],\n outputRange: ['100%', `${100 - 12 * rightButtons.length}%`],\n }),\n };\n\n const { style: searchBarStyle, ...searchProps } = searchBarProps;\n return (\n <Animated.View style={[styles.searchBarContainer, searchBarContainerAnimatedStyle, searchBarStyle]}>\n <Animated.View style={searchBarAnimatedStyle}>\n <SearchBar {...searchProps} />\n </Animated.View>\n {rightButtons && (\n <Animated.View style={[styles.rightButtonWrapper, optionsIconAnimatedStyle]}>{rightButtons}</Animated.View>\n )}\n </Animated.View>\n );\n};\n\nconst styles = StyleSheet.create({\n rightButtonWrapper: {\n alignItems: 'center',\n flexDirection: 'row',\n gap: '16',\n justifyContent: 'center',\n },\n searchBarContainer: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n paddingBottom: 12,\n },\n});\n\nexport default AnimatedSearchBar;\n"],"mappings":"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","ignoreList":[]}
@@ -105,7 +105,7 @@ const useBackupFinalizeImportProcedure = ({
105
105
  (0, _reporting.reportException)(err, 'Failed to create base identifiers');
106
106
  throw err;
107
107
  });
108
- }, [core, organisationId, finalizeImport, generateHwKey, generateSwKey]);
108
+ }, [finalizeImport, generateSwKey, generateHwKey, core, organisationId]);
109
109
  };
110
110
  exports.useBackupFinalizeImportProcedure = useBackupFinalizeImportProcedure;
111
111
  //# sourceMappingURL=backup.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNativeOneCore","require","_react","_reactQuery","_reporting","_coreContext","_coreInit","_history","BACKUP_INFO_QUERY_KEY","useBackupInfo","core","useONECore","useQuery","backupInfo","keepPreviousData","exports","useCreateBackup","queryClient","useQueryClient","useMutation","password","outputPath","createBackup","onSuccess","invalidateQueries","HISTORY_LIST_QUERY_KEY","useUnpackBackup","inputPath","unpackBackup","resetQueries","useFinalizeImport","finalizeImport","useRollbackImport","rollbackImport","useBackupFinalizeImportProcedure","generateHwKey","generateSwKey","mutateAsync","organisationId","useCallback","swIdentifierId","_identifiers$values$f","identifiers","getIdentifiers","state","IdentifierStateEnum","ACTIVE","page","pageSize","types","IdentifierTypeEnum","DID","isRemote","values","find","identifier","name","startsWith","SW_DID_NAME_PREFIX","id","Promise","all","generateHwIdentifier","generateSwIdentifier","catch","err","reportException"],"sources":["backup.ts"],"sourcesContent":["import { IdentifierStateEnum, IdentifierTypeEnum } from '@procivis/react-native-one-core';\nimport { useCallback } from 'react';\nimport { useMutation, useQuery, useQueryClient } from 'react-query';\n\nimport { reportException } from '../../reporting';\nimport { useONECore } from './core-context';\nimport {\n generateHwIdentifier,\n generateSwIdentifier,\n IdentifiersInitializationConfig,\n SW_DID_NAME_PREFIX,\n} from './core-init';\nimport { HISTORY_LIST_QUERY_KEY } from './history';\n\nconst BACKUP_INFO_QUERY_KEY = 'backup-info';\n\nexport const useBackupInfo = () => {\n const { core } = useONECore();\n\n return useQuery([BACKUP_INFO_QUERY_KEY], () => core.backupInfo(), {\n keepPreviousData: true,\n });\n};\n\nexport const useCreateBackup = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async ({ password, outputPath }: { outputPath: string; password: string }) =>\n core.createBackup(password, outputPath),\n {\n onSuccess: () => queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY),\n },\n );\n};\n\nexport const useUnpackBackup = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async ({ password, inputPath }: { inputPath: string; password: string }) => core.unpackBackup(password, inputPath),\n {\n onSuccess: () => queryClient.resetQueries(),\n },\n );\n};\n\nexport const useFinalizeImport = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(async () => core.finalizeImport(), {\n onSuccess: () => queryClient.resetQueries(),\n });\n};\n\nexport const useRollbackImport = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(async () => core.rollbackImport(), {\n onSuccess: () => queryClient.resetQueries(),\n });\n};\n\n/**\n * Finalize backup import and extract/prepare identifiers\n * @param {IdentifiersInitializationConfig} config Select desired keys/dids to be restored/created\n * @returns [hwIdentifierId, swIdentifierId]\n */\nexport const useBackupFinalizeImportProcedure = ({ generateHwKey, generateSwKey }: IdentifiersInitializationConfig) => {\n const { mutateAsync: finalizeImport } = useFinalizeImport();\n const { core, organisationId } = useONECore();\n\n return useCallback(async () => {\n await finalizeImport();\n\n // update wallet identifier references\n let swIdentifierId: string | undefined;\n if (generateSwKey) {\n const identifiers = await core.getIdentifiers({\n state: IdentifierStateEnum.ACTIVE,\n organisationId,\n page: 0,\n pageSize: 1,\n types: [IdentifierTypeEnum.DID],\n isRemote: false,\n });\n swIdentifierId = identifiers.values.find((identifier) => identifier.name.startsWith(SW_DID_NAME_PREFIX))?.id;\n }\n\n return Promise.all([\n generateHwKey ? generateHwIdentifier(core, organisationId) : null,\n !swIdentifierId && generateSwKey ? generateSwIdentifier(core, organisationId) : swIdentifierId,\n ]).catch((err) => {\n reportException(err, 'Failed to create base identifiers');\n throw err;\n });\n }, [core, organisationId, finalizeImport, generateHwKey, generateSwKey]);\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNativeOneCore","require","_react","_reactQuery","_reporting","_coreContext","_coreInit","_history","BACKUP_INFO_QUERY_KEY","useBackupInfo","core","useONECore","useQuery","backupInfo","keepPreviousData","exports","useCreateBackup","queryClient","useQueryClient","useMutation","password","outputPath","createBackup","onSuccess","invalidateQueries","HISTORY_LIST_QUERY_KEY","useUnpackBackup","inputPath","unpackBackup","resetQueries","useFinalizeImport","finalizeImport","useRollbackImport","rollbackImport","useBackupFinalizeImportProcedure","generateHwKey","generateSwKey","mutateAsync","organisationId","useCallback","swIdentifierId","_identifiers$values$f","identifiers","getIdentifiers","state","IdentifierStateEnum","ACTIVE","page","pageSize","types","IdentifierTypeEnum","DID","isRemote","values","find","identifier","name","startsWith","SW_DID_NAME_PREFIX","id","Promise","all","generateHwIdentifier","generateSwIdentifier","catch","err","reportException"],"sources":["backup.ts"],"sourcesContent":["import { IdentifierStateEnum, IdentifierTypeEnum } from '@procivis/react-native-one-core';\nimport { useCallback } from 'react';\nimport { useMutation, useQuery, useQueryClient } from 'react-query';\n\nimport { reportException } from '../../reporting';\nimport { useONECore } from './core-context';\nimport {\n generateHwIdentifier,\n generateSwIdentifier,\n IdentifiersInitializationConfig,\n SW_DID_NAME_PREFIX,\n} from './core-init';\nimport { HISTORY_LIST_QUERY_KEY } from './history';\n\nconst BACKUP_INFO_QUERY_KEY = 'backup-info';\n\nexport const useBackupInfo = () => {\n const { core } = useONECore();\n\n return useQuery([BACKUP_INFO_QUERY_KEY], () => core.backupInfo(), {\n keepPreviousData: true,\n });\n};\n\nexport const useCreateBackup = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async ({ password, outputPath }: { outputPath: string; password: string }) =>\n core.createBackup(password, outputPath),\n {\n onSuccess: () => queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY),\n },\n );\n};\n\nexport const useUnpackBackup = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async ({ password, inputPath }: { inputPath: string; password: string }) => core.unpackBackup(password, inputPath),\n {\n onSuccess: () => queryClient.resetQueries(),\n },\n );\n};\n\nexport const useFinalizeImport = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(async () => core.finalizeImport(), {\n onSuccess: () => queryClient.resetQueries(),\n });\n};\n\nexport const useRollbackImport = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(async () => core.rollbackImport(), {\n onSuccess: () => queryClient.resetQueries(),\n });\n};\n\n/**\n * Finalize backup import and extract/prepare identifiers\n * @param {IdentifiersInitializationConfig} config Select desired keys/dids to be restored/created\n * @returns [hwIdentifierId, swIdentifierId]\n */\nexport const useBackupFinalizeImportProcedure = ({\n generateHwKey,\n generateSwKey,\n}: IdentifiersInitializationConfig) => {\n const { mutateAsync: finalizeImport } = useFinalizeImport();\n const { core, organisationId } = useONECore();\n\n return useCallback(async () => {\n await finalizeImport();\n\n // update wallet identifier references\n let swIdentifierId: string | undefined;\n if (generateSwKey) {\n const identifiers = await core.getIdentifiers({\n state: IdentifierStateEnum.ACTIVE,\n organisationId,\n page: 0,\n pageSize: 1,\n types: [IdentifierTypeEnum.DID],\n isRemote: false,\n });\n swIdentifierId = identifiers.values.find((identifier) => identifier.name.startsWith(SW_DID_NAME_PREFIX))?.id;\n }\n\n return Promise.all([\n generateHwKey ? generateHwIdentifier(core, organisationId) : null,\n !swIdentifierId && generateSwKey ? generateSwIdentifier(core, organisationId) : swIdentifierId,\n ]).catch((err) => {\n reportException(err, 'Failed to create base identifiers');\n throw err;\n });\n }, [finalizeImport, generateSwKey, generateHwKey, core, organisationId]);\n};\n"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.useInitializeONECoreIdentifiers = exports.generateSwIdentifier = exports.generateHwIdentifier = exports.SW_DID_NAME_PREFIX = exports.HW_DID_NAME_PREFIX = void 0;
6
+ exports.useInitializeONECoreIdentifiers = exports.generateSwIdentifier = exports.generateHwIdentifier = exports.SW_DID_NAME_PREFIX = exports.HW_DID_NAME_PREFIX = exports.ATTESTATION_DID_NAME_PREFIX = void 0;
7
7
  var _reactNativeOneCore = require("@procivis/react-native-one-core");
8
8
  var _react = require("react");
9
9
  var _reporting = require("../../reporting");
@@ -11,6 +11,7 @@ var _coreContext = require("./core-context");
11
11
  var _errorCode = require("./error-code");
12
12
  const SW_DID_NAME_PREFIX = exports.SW_DID_NAME_PREFIX = 'holder-did-sw-key';
13
13
  const HW_DID_NAME_PREFIX = exports.HW_DID_NAME_PREFIX = 'holder-did-hw-key';
14
+ const ATTESTATION_DID_NAME_PREFIX = exports.ATTESTATION_DID_NAME_PREFIX = 'holder-did-attestation-key';
14
15
  const generateHwIdentifier = async (core, organisationId) => {
15
16
  const hwKeyId = await core.generateKey({
16
17
  keyParams: {},
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNativeOneCore","require","_react","_reporting","_coreContext","_errorCode","SW_DID_NAME_PREFIX","exports","HW_DID_NAME_PREFIX","generateHwIdentifier","core","organisationId","hwKeyId","generateKey","keyParams","keyType","name","storageParams","storageType","catch","e","OneError","code","OneErrorCode","KeyStorageNotSupported","createIdentifier","did","method","keys","assertionMethod","authentication","capabilityDelegation","capabilityInvocation","keyAgreement","params","generateSwIdentifier","swKeyId","useInitializeONECoreIdentifiers","generateHwKey","generateSwKey","useONECore","useCallback","createOrganisation","id","OrganisationAlreadyExists","then","Promise","all","err","reportException"],"sources":["core-init.ts"],"sourcesContent":["import { ONECore, OneError } from '@procivis/react-native-one-core';\nimport { useCallback } from 'react';\n\nimport { reportException } from '../../reporting';\nimport { useONECore } from './core-context';\nimport { OneErrorCode } from './error-code';\n\nexport const SW_DID_NAME_PREFIX = 'holder-did-sw-key';\nexport const HW_DID_NAME_PREFIX = 'holder-did-hw-key';\n\nexport const generateHwIdentifier = async (core: ONECore, organisationId: string) => {\n const hwKeyId = await core\n .generateKey({\n keyParams: {},\n keyType: 'ECDSA',\n name: 'holder-key-hw',\n organisationId,\n storageParams: {},\n storageType: 'SECURE_ELEMENT',\n })\n .catch((e) => {\n // ignore if HW keys not supported by device\n if (e instanceof OneError && e.code === OneErrorCode.KeyStorageNotSupported) {\n return null;\n }\n throw e;\n });\n\n if (hwKeyId) {\n return core.createIdentifier({\n did: {\n method: 'KEY',\n name: HW_DID_NAME_PREFIX,\n keys: {\n assertionMethod: [hwKeyId],\n authentication: [hwKeyId],\n capabilityDelegation: [hwKeyId],\n capabilityInvocation: [hwKeyId],\n keyAgreement: [hwKeyId],\n },\n params: {},\n },\n name: HW_DID_NAME_PREFIX,\n organisationId,\n });\n }\n\n return null;\n};\n\nexport const generateSwIdentifier = async (core: ONECore, organisationId: string) => {\n const swKeyId = await core.generateKey({\n keyParams: {},\n keyType: 'ECDSA',\n name: 'holder-key-sw',\n organisationId,\n storageParams: {},\n storageType: 'INTERNAL',\n });\n\n return core.createIdentifier({\n did: {\n method: 'KEY',\n name: SW_DID_NAME_PREFIX,\n keys: {\n assertionMethod: [swKeyId],\n authentication: [swKeyId],\n capabilityDelegation: [swKeyId],\n capabilityInvocation: [swKeyId],\n keyAgreement: [swKeyId],\n },\n params: {},\n },\n name: SW_DID_NAME_PREFIX,\n organisationId,\n });\n};\n\nexport interface IdentifiersInitializationConfig {\n generateHwKey: boolean;\n generateSwKey: boolean;\n}\n\n/**\n * Create base local identifiers\n * @param {IdentifiersInitializationConfig} config Select desired keys/dids to be created\n * @returns [hwIdentifierId, swIdentifierId]\n */\nexport const useInitializeONECoreIdentifiers = ({ generateHwKey, generateSwKey }: IdentifiersInitializationConfig) => {\n const { core, organisationId } = useONECore();\n\n return useCallback(async () => {\n return await core\n .createOrganisation({ id: organisationId })\n .catch((e) => {\n if (e instanceof OneError && e.code === OneErrorCode.OrganisationAlreadyExists) {\n return;\n }\n throw e;\n })\n .then(() =>\n Promise.all([\n generateHwKey ? generateHwIdentifier(core, organisationId) : null,\n generateSwKey ? generateSwIdentifier(core, organisationId) : null,\n ]),\n )\n .catch((err) => {\n reportException(err, 'Failed to create base identifiers');\n throw err;\n });\n }, [core, organisationId, generateHwKey, generateSwKey]);\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNativeOneCore","require","_react","_reporting","_coreContext","_errorCode","SW_DID_NAME_PREFIX","exports","HW_DID_NAME_PREFIX","ATTESTATION_DID_NAME_PREFIX","generateHwIdentifier","core","organisationId","hwKeyId","generateKey","keyParams","keyType","name","storageParams","storageType","catch","e","OneError","code","OneErrorCode","KeyStorageNotSupported","createIdentifier","did","method","keys","assertionMethod","authentication","capabilityDelegation","capabilityInvocation","keyAgreement","params","generateSwIdentifier","swKeyId","useInitializeONECoreIdentifiers","generateHwKey","generateSwKey","useONECore","useCallback","createOrganisation","id","OrganisationAlreadyExists","then","Promise","all","err","reportException"],"sources":["core-init.ts"],"sourcesContent":["import { ONECore, OneError } from '@procivis/react-native-one-core';\nimport { useCallback } from 'react';\n\nimport { reportException } from '../../reporting';\nimport { useONECore } from './core-context';\nimport { OneErrorCode } from './error-code';\n\nexport const SW_DID_NAME_PREFIX = 'holder-did-sw-key';\nexport const HW_DID_NAME_PREFIX = 'holder-did-hw-key';\nexport const ATTESTATION_DID_NAME_PREFIX = 'holder-did-attestation-key';\n\nexport const generateHwIdentifier = async (core: ONECore, organisationId: string) => {\n const hwKeyId = await core\n .generateKey({\n keyParams: {},\n keyType: 'ECDSA',\n name: 'holder-key-hw',\n organisationId,\n storageParams: {},\n storageType: 'SECURE_ELEMENT',\n })\n .catch((e) => {\n // ignore if HW keys not supported by device\n if (e instanceof OneError && e.code === OneErrorCode.KeyStorageNotSupported) {\n return null;\n }\n throw e;\n });\n\n if (hwKeyId) {\n return core.createIdentifier({\n did: {\n method: 'KEY',\n name: HW_DID_NAME_PREFIX,\n keys: {\n assertionMethod: [hwKeyId],\n authentication: [hwKeyId],\n capabilityDelegation: [hwKeyId],\n capabilityInvocation: [hwKeyId],\n keyAgreement: [hwKeyId],\n },\n params: {},\n },\n name: HW_DID_NAME_PREFIX,\n organisationId,\n });\n }\n\n return null;\n};\n\nexport const generateSwIdentifier = async (core: ONECore, organisationId: string) => {\n const swKeyId = await core.generateKey({\n keyParams: {},\n keyType: 'ECDSA',\n name: 'holder-key-sw',\n organisationId,\n storageParams: {},\n storageType: 'INTERNAL',\n });\n\n return core.createIdentifier({\n did: {\n method: 'KEY',\n name: SW_DID_NAME_PREFIX,\n keys: {\n assertionMethod: [swKeyId],\n authentication: [swKeyId],\n capabilityDelegation: [swKeyId],\n capabilityInvocation: [swKeyId],\n keyAgreement: [swKeyId],\n },\n params: {},\n },\n name: SW_DID_NAME_PREFIX,\n organisationId,\n });\n};\n\nexport interface IdentifiersInitializationConfig {\n generateHwKey: boolean;\n generateSwKey: boolean;\n}\n\n/**\n * Create base local identifiers\n * @param {IdentifiersInitializationConfig} config Select desired keys/dids to be created\n * @returns [hwIdentifierId, swIdentifierId]\n */\nexport const useInitializeONECoreIdentifiers = ({\n generateHwKey,\n generateSwKey,\n}: IdentifiersInitializationConfig) => {\n const { core, organisationId } = useONECore();\n\n return useCallback(async () => {\n return await core\n .createOrganisation({ id: organisationId })\n .catch((e) => {\n if (e instanceof OneError && e.code === OneErrorCode.OrganisationAlreadyExists) {\n return;\n }\n throw e;\n })\n .then(() =>\n Promise.all([\n generateHwKey ? generateHwIdentifier(core, organisationId) : null,\n generateSwKey ? generateSwIdentifier(core, organisationId) : null,\n ]),\n )\n .catch((err) => {\n reportException(err, 'Failed to create base identifiers');\n throw err;\n });\n }, [core, organisationId, generateHwKey, generateSwKey]);\n};\n"],"mappings":"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","ignoreList":[]}
@@ -72,10 +72,10 @@ const useInvitationHandler = () => {
72
72
  core,
73
73
  organisationId
74
74
  } = (0, _coreContext.useONECore)();
75
- return (0, _reactQuery.useMutation)(async ({
76
- invitationUrl,
77
- transport
78
- }) => core.handleInvitation(invitationUrl, organisationId, [transport]), {
75
+ return (0, _reactQuery.useMutation)(async request => core.handleInvitation({
76
+ organisationId,
77
+ ...request
78
+ }), {
79
79
  onSuccess: async result => {
80
80
  if ('credentialIds' in result) {
81
81
  await queryClient.invalidateQueries(CREDENTIAL_LIST_QUERY_KEY);
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNativeOneCore","require","_reactQuery","_query","_coreContext","_credentialSchemas","_errorCode","_history","PAGE_SIZE","CREDENTIAL_LIST_QUERY_KEY","exports","CREDENTIAL_LIST_PAGED_QUERY_KEY","CREDENTIAL_DETAIL_QUERY_KEY","useCredentials","queryParams","core","organisationId","useONECore","useQuery","getQueryKeyFromCredentialListQueryParams","values","getCredentials","page","pageSize","status","CredentialStateEnum","ACCEPTED","SUSPENDED","REVOKED","keepPreviousData","usePagedCredentials","useInfiniteQuery","pageParam","getNextPageParam","lastPage","allPages","length","totalPages","undefined","useCredentialDetail","credentialId","active","getCredential","enabled","Boolean","useInvitationHandler","queryClient","useQueryClient","useMutation","invitationUrl","transport","handleInvitation","onSuccess","result","invalidateQueries","CREDENTIAL_SCHEMA_LIST_QUERY_KEY","HISTORY_LIST_QUERY_KEY","useCredentialAccept","interactionId","didId","identifierId","keyId","txCode","holderAcceptCredential","useCredentialReject","holderRejectCredential","catch","e","OneError","code","OneErrorCode","OperationNotSupported","useCredentialRevocationCheck","forceRefresh","credentialIds","checkRevocation","useCredentialDelete","deleteCredential","_","removeQueries","useInvalidateCredentialDetails","useInitiateIssuance","request","initiateIssuance","useContinueIssuance","url","continueIssuance"],"sources":["credentials.ts"],"sourcesContent":["import {\n CredentialListQuery,\n CredentialStateEnum,\n InitiateIssuanceRequest,\n InvitationResult,\n OneError,\n} from '@procivis/react-native-one-core';\nimport { useInfiniteQuery, useMutation, useQuery, useQueryClient } from 'react-query';\n\nimport { getQueryKeyFromCredentialListQueryParams } from '../../parsers/query';\nimport { Transport } from '../connectivity/connectivity';\nimport { useONECore } from './core-context';\nimport { CREDENTIAL_SCHEMA_LIST_QUERY_KEY } from './credential-schemas';\nimport { OneErrorCode } from './error-code';\nimport { HISTORY_LIST_QUERY_KEY } from './history';\n\nconst PAGE_SIZE = 20;\nexport const CREDENTIAL_LIST_QUERY_KEY = 'credential-list';\nexport const CREDENTIAL_LIST_PAGED_QUERY_KEY = 'credential-list-paged';\nexport const CREDENTIAL_DETAIL_QUERY_KEY = 'credential-detail';\n\nexport const useCredentials = (queryParams?: Partial<CredentialListQuery>) => {\n const { core, organisationId } = useONECore();\n\n return useQuery(\n [CREDENTIAL_LIST_QUERY_KEY, ...getQueryKeyFromCredentialListQueryParams(queryParams)],\n async () => {\n const { values } = await core.getCredentials({\n organisationId,\n page: 0,\n // TODO: workaround pagination for now, until it's supported by UI\n pageSize: 10000,\n status: [CredentialStateEnum.ACCEPTED, CredentialStateEnum.SUSPENDED, CredentialStateEnum.REVOKED],\n ...queryParams,\n });\n return values;\n },\n {\n keepPreviousData: true,\n },\n );\n};\n\nexport const usePagedCredentials = (queryParams?: Partial<CredentialListQuery>) => {\n const { core, organisationId } = useONECore();\n\n return useInfiniteQuery(\n [\n CREDENTIAL_LIST_QUERY_KEY,\n CREDENTIAL_LIST_PAGED_QUERY_KEY,\n ...getQueryKeyFromCredentialListQueryParams(queryParams),\n ],\n ({ pageParam = 0 }) =>\n core.getCredentials({\n organisationId,\n page: pageParam,\n pageSize: PAGE_SIZE,\n status: [CredentialStateEnum.ACCEPTED, CredentialStateEnum.SUSPENDED, CredentialStateEnum.REVOKED],\n ...queryParams,\n }),\n {\n getNextPageParam: (lastPage, allPages) => (allPages.length < lastPage.totalPages ? allPages.length : undefined),\n keepPreviousData: true,\n },\n );\n};\n\nexport const useCredentialDetail = (credentialId: string | undefined, active = true) => {\n const { core } = useONECore();\n\n return useQuery(\n [CREDENTIAL_DETAIL_QUERY_KEY, credentialId],\n () => (credentialId ? core.getCredential(credentialId) : undefined),\n {\n enabled: active && Boolean(credentialId),\n keepPreviousData: true,\n },\n );\n};\n\nexport const useInvitationHandler = () => {\n const queryClient = useQueryClient();\n const { core, organisationId } = useONECore();\n\n return useMutation(\n async ({ invitationUrl, transport }: { invitationUrl: string; transport: Transport }) =>\n core.handleInvitation(invitationUrl, organisationId, [transport]),\n {\n onSuccess: async (result: InvitationResult) => {\n if ('credentialIds' in result) {\n await queryClient.invalidateQueries(CREDENTIAL_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(CREDENTIAL_SCHEMA_LIST_QUERY_KEY);\n }\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useCredentialAccept = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n type CredentialAcceptHookParams = {\n didId?: string;\n identifierId?: string;\n interactionId: string;\n keyId?: string;\n txCode?: string;\n };\n\n return useMutation(\n async ({ interactionId, didId, identifierId, keyId, txCode }: CredentialAcceptHookParams) =>\n core.holderAcceptCredential(interactionId, didId, identifierId, keyId, txCode),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(CREDENTIAL_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(CREDENTIAL_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useCredentialReject = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async (interactionId: string) =>\n core.holderRejectCredential(interactionId).catch((e) => {\n if (e instanceof OneError && e.code === OneErrorCode.OperationNotSupported) {\n return;\n }\n throw e;\n }),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(CREDENTIAL_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(CREDENTIAL_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useCredentialRevocationCheck = (forceRefresh: boolean) => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(async (credentialIds: string[]) => core.checkRevocation(credentialIds, forceRefresh), {\n onSuccess: async () => {\n await queryClient.invalidateQueries(CREDENTIAL_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(CREDENTIAL_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n });\n};\n\nexport const useCredentialDelete = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(async (credentialId: string) => core.deleteCredential(credentialId), {\n onSuccess: async (_, credentialId) => {\n await queryClient.invalidateQueries(CREDENTIAL_LIST_QUERY_KEY);\n await queryClient.removeQueries([CREDENTIAL_DETAIL_QUERY_KEY, credentialId]);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n });\n};\n\nexport const useInvalidateCredentialDetails = () => {\n const queryClient = useQueryClient();\n\n return (credentialId: string | undefined) =>\n queryClient.invalidateQueries([CREDENTIAL_DETAIL_QUERY_KEY, credentialId]);\n};\n\nexport const useInitiateIssuance = () => {\n const queryClient = useQueryClient();\n const { core, organisationId } = useONECore();\n\n return useMutation(\n async (request: Omit<InitiateIssuanceRequest, 'organisationId'>) =>\n core.initiateIssuance({ organisationId, ...request }),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useContinueIssuance = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(async (url: string) => core.continueIssuance(url), {\n onSuccess: async () => {\n await queryClient.invalidateQueries(CREDENTIAL_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(CREDENTIAL_SCHEMA_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n });\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNativeOneCore","require","_reactQuery","_query","_coreContext","_credentialSchemas","_errorCode","_history","PAGE_SIZE","CREDENTIAL_LIST_QUERY_KEY","exports","CREDENTIAL_LIST_PAGED_QUERY_KEY","CREDENTIAL_DETAIL_QUERY_KEY","useCredentials","queryParams","core","organisationId","useONECore","useQuery","getQueryKeyFromCredentialListQueryParams","values","getCredentials","page","pageSize","status","CredentialStateEnum","ACCEPTED","SUSPENDED","REVOKED","keepPreviousData","usePagedCredentials","useInfiniteQuery","pageParam","getNextPageParam","lastPage","allPages","length","totalPages","undefined","useCredentialDetail","credentialId","active","getCredential","enabled","Boolean","useInvitationHandler","queryClient","useQueryClient","useMutation","request","handleInvitation","onSuccess","result","invalidateQueries","CREDENTIAL_SCHEMA_LIST_QUERY_KEY","HISTORY_LIST_QUERY_KEY","useCredentialAccept","interactionId","didId","identifierId","keyId","txCode","holderAcceptCredential","useCredentialReject","holderRejectCredential","catch","e","OneError","code","OneErrorCode","OperationNotSupported","useCredentialRevocationCheck","forceRefresh","credentialIds","checkRevocation","useCredentialDelete","deleteCredential","_","removeQueries","useInvalidateCredentialDetails","useInitiateIssuance","initiateIssuance","useContinueIssuance","url","continueIssuance"],"sources":["credentials.ts"],"sourcesContent":["import {\n CredentialListQuery,\n CredentialStateEnum,\n HandleInvitationRequest,\n InitiateIssuanceRequest,\n InvitationResult,\n OneError,\n} from '@procivis/react-native-one-core';\nimport { useInfiniteQuery, useMutation, useQuery, useQueryClient } from 'react-query';\n\nimport { getQueryKeyFromCredentialListQueryParams } from '../../parsers/query';\nimport { useONECore } from './core-context';\nimport { CREDENTIAL_SCHEMA_LIST_QUERY_KEY } from './credential-schemas';\nimport { OneErrorCode } from './error-code';\nimport { HISTORY_LIST_QUERY_KEY } from './history';\n\nconst PAGE_SIZE = 20;\nexport const CREDENTIAL_LIST_QUERY_KEY = 'credential-list';\nexport const CREDENTIAL_LIST_PAGED_QUERY_KEY = 'credential-list-paged';\nexport const CREDENTIAL_DETAIL_QUERY_KEY = 'credential-detail';\n\nexport const useCredentials = (queryParams?: Partial<CredentialListQuery>) => {\n const { core, organisationId } = useONECore();\n\n return useQuery(\n [CREDENTIAL_LIST_QUERY_KEY, ...getQueryKeyFromCredentialListQueryParams(queryParams)],\n async () => {\n const { values } = await core.getCredentials({\n organisationId,\n page: 0,\n // TODO: workaround pagination for now, until it's supported by UI\n pageSize: 10000,\n status: [CredentialStateEnum.ACCEPTED, CredentialStateEnum.SUSPENDED, CredentialStateEnum.REVOKED],\n ...queryParams,\n });\n return values;\n },\n {\n keepPreviousData: true,\n },\n );\n};\n\nexport const usePagedCredentials = (queryParams?: Partial<CredentialListQuery>) => {\n const { core, organisationId } = useONECore();\n\n return useInfiniteQuery(\n [\n CREDENTIAL_LIST_QUERY_KEY,\n CREDENTIAL_LIST_PAGED_QUERY_KEY,\n ...getQueryKeyFromCredentialListQueryParams(queryParams),\n ],\n ({ pageParam = 0 }) =>\n core.getCredentials({\n organisationId,\n page: pageParam,\n pageSize: PAGE_SIZE,\n status: [CredentialStateEnum.ACCEPTED, CredentialStateEnum.SUSPENDED, CredentialStateEnum.REVOKED],\n ...queryParams,\n }),\n {\n getNextPageParam: (lastPage, allPages) => (allPages.length < lastPage.totalPages ? allPages.length : undefined),\n keepPreviousData: true,\n },\n );\n};\n\nexport const useCredentialDetail = (credentialId: string | undefined, active = true) => {\n const { core } = useONECore();\n\n return useQuery(\n [CREDENTIAL_DETAIL_QUERY_KEY, credentialId],\n () => (credentialId ? core.getCredential(credentialId) : undefined),\n {\n enabled: active && Boolean(credentialId),\n keepPreviousData: true,\n },\n );\n};\n\nexport const useInvitationHandler = () => {\n const queryClient = useQueryClient();\n const { core, organisationId } = useONECore();\n\n return useMutation(\n async (request: Omit<HandleInvitationRequest, 'organisationId'>) =>\n core.handleInvitation({ organisationId, ...request }),\n {\n onSuccess: async (result: InvitationResult) => {\n if ('credentialIds' in result) {\n await queryClient.invalidateQueries(CREDENTIAL_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(CREDENTIAL_SCHEMA_LIST_QUERY_KEY);\n }\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useCredentialAccept = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n type CredentialAcceptHookParams = {\n didId?: string;\n identifierId?: string;\n interactionId: string;\n keyId?: string;\n txCode?: string;\n };\n\n return useMutation(\n async ({ interactionId, didId, identifierId, keyId, txCode }: CredentialAcceptHookParams) =>\n core.holderAcceptCredential(interactionId, didId, identifierId, keyId, txCode),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(CREDENTIAL_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(CREDENTIAL_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useCredentialReject = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async (interactionId: string) =>\n core.holderRejectCredential(interactionId).catch((e) => {\n if (e instanceof OneError && e.code === OneErrorCode.OperationNotSupported) {\n return;\n }\n throw e;\n }),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(CREDENTIAL_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(CREDENTIAL_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useCredentialRevocationCheck = (forceRefresh: boolean) => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(async (credentialIds: string[]) => core.checkRevocation(credentialIds, forceRefresh), {\n onSuccess: async () => {\n await queryClient.invalidateQueries(CREDENTIAL_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(CREDENTIAL_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n });\n};\n\nexport const useCredentialDelete = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(async (credentialId: string) => core.deleteCredential(credentialId), {\n onSuccess: async (_, credentialId) => {\n await queryClient.invalidateQueries(CREDENTIAL_LIST_QUERY_KEY);\n await queryClient.removeQueries([CREDENTIAL_DETAIL_QUERY_KEY, credentialId]);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n });\n};\n\nexport const useInvalidateCredentialDetails = () => {\n const queryClient = useQueryClient();\n\n return (credentialId: string | undefined) =>\n queryClient.invalidateQueries([CREDENTIAL_DETAIL_QUERY_KEY, credentialId]);\n};\n\nexport const useInitiateIssuance = () => {\n const queryClient = useQueryClient();\n const { core, organisationId } = useONECore();\n\n return useMutation(\n async (request: Omit<InitiateIssuanceRequest, 'organisationId'>) =>\n core.initiateIssuance({ organisationId, ...request }),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useContinueIssuance = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(async (url: string) => core.continueIssuance(url), {\n onSuccess: async () => {\n await queryClient.invalidateQueries(CREDENTIAL_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(CREDENTIAL_SCHEMA_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n });\n};\n"],"mappings":"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","ignoreList":[]}
@@ -3,11 +3,12 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.useShareProof = exports.useRetainProofCheck = exports.useProposeProof = exports.useProofs = exports.useProofUrl = exports.useProofState = exports.useProofReject = exports.useProofForSchemaIdWithTransport = exports.useProofDetail = exports.useProofDelete = exports.useProofCreate = exports.useProofAccept = exports.useDeleteProofData = exports.useDeleteAllProofsData = exports.useCleanupUnusedProofs = exports.VerificationProtocol = exports.PROOF_STATE_QUERY_KEY = exports.PROOF_LIST_QUERY_KEY = exports.PROOF_DETAIL_QUERY_KEY = exports.IssuanceProtocol = void 0;
6
+ exports.useShareProof = exports.useRetainProofCheck = exports.useProposeProof = exports.useProofs = exports.useProofUrl = exports.useProofState = exports.useProofReject = exports.useProofForSchemaIdWithTransport = exports.useProofDetail = exports.useProofDelete = exports.useProofCreate = exports.useProofAccept = exports.useDeleteProofData = exports.useDeleteAllProofsData = exports.useCleanupUnusedProofs = exports.VerificationProtocol = exports.VerificationEngagement = exports.PROOF_STATE_QUERY_KEY = exports.PROOF_LIST_QUERY_KEY = exports.PROOF_DETAIL_QUERY_KEY = exports.IssuanceProtocol = void 0;
7
7
  var _reactNativeOneCore = require("@procivis/react-native-one-core");
8
8
  var _react = require("react");
9
9
  var _reactQuery = require("react-query");
10
10
  var _query = require("../../parsers/query");
11
+ var _reporting = require("../../reporting");
11
12
  var _coreConfig = require("./core-config");
12
13
  var _coreContext = require("./core-context");
13
14
  var _errorCode = require("./error-code");
@@ -66,7 +67,8 @@ const useProofAccept = () => {
66
67
  identifierId,
67
68
  keyId
68
69
  }) => core.holderSubmitProof(interactionId, credentials, didId, identifierId, keyId), {
69
- onError: async () => {
70
+ onError: async err => {
71
+ (0, _reporting.reportException)(err, 'Proof submission failure');
70
72
  await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);
71
73
  },
72
74
  onSuccess: async () => {
@@ -106,13 +108,21 @@ let VerificationProtocol = exports.VerificationProtocol = /*#__PURE__*/function
106
108
  VerificationProtocol["SCAN_TO_VERIFY"] = "SCAN_TO_VERIFY";
107
109
  return VerificationProtocol;
108
110
  }({});
111
+ let VerificationEngagement = exports.VerificationEngagement = /*#__PURE__*/function (VerificationEngagement) {
112
+ VerificationEngagement["QR_CODE"] = "QR_CODE";
113
+ VerificationEngagement["NFC"] = "NFC";
114
+ return VerificationEngagement;
115
+ }({});
109
116
  const useProposeProof = () => {
110
117
  const queryClient = (0, _reactQuery.useQueryClient)();
111
118
  const {
112
119
  core,
113
120
  organisationId
114
121
  } = (0, _coreContext.useONECore)();
115
- return (0, _reactQuery.useMutation)(async exchange => core.proposeProof(exchange, organisationId), {
122
+ return (0, _reactQuery.useMutation)(async ({
123
+ exchange,
124
+ engagement
125
+ }) => core.proposeProof(exchange, organisationId, engagement), {
116
126
  onSuccess: async () => {
117
127
  await queryClient.invalidateQueries(_history.HISTORY_LIST_QUERY_KEY);
118
128
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNativeOneCore","require","_react","_reactQuery","_query","_coreConfig","_coreContext","_errorCode","_history","_identifiers","_proofSchemas","PAGE_SIZE","PROOF_DETAIL_QUERY_KEY","exports","PROOF_STATE_QUERY_KEY","PROOF_LIST_QUERY_KEY","useProofDetail","proofId","core","useONECore","useQuery","getProof","undefined","enabled","Boolean","keepPreviousData","useProofState","isPolling","then","proof","state","refetchInterval","useProofUrl","queryClient","useQueryClient","useMutation","request","shareProof","url","onSuccess","invalidateQueries","useProofAccept","interactionId","credentials","didId","identifierId","keyId","holderSubmitProof","onError","HISTORY_LIST_QUERY_KEY","useProofReject","holderRejectProof","catch","e","OneError","code","OneErrorCode","OperationNotSupported","IssuanceProtocol","VerificationProtocol","useProposeProof","organisationId","exchange","proposeProof","useProofDelete","deleteProof","useProofs","queryParams","queryKey","getQueryKeyFromProofListQueryParams","pageParam","getProofs","page","pageSize","useProofCreate","data","createProof","getIdentifierFilterForProofSchema","proofSchema","config","requestedFormats","proofInputSchemas","map","schema","credentialSchema","format","requestedFormatsCapabilities","_config$format$format","capabilities","filter","x","keyAlgorithms","reduce","others","_others$filter","current","verificationKeyAlgorithms","item","includes","keyStorages","_others$filter2","verificationKeyStorages","useProofForSchemaIdWithTransport","proofSchemaId","transport","useProofSchemaDetail","useCoreConfig","identifierFilter","useMemo","identifiers","useIdentifiers","mutateAsync","deleting","setDeleting","useState","setProofIdState","proofIdRef","useRef","proofState","setProofId","useCallback","id","useEffect","ProofStateEnum","CREATED","PENDING","values","length","protocol","OPENID4VP_PROXIMITY_DRAFT00","verifierIdentifierId","useCleanupUnusedProofs","proofs","proofStates","cleaned","setCleaned","forEach","useShareProof","proofUrlProps","sharedProof","setSharedProof","bleAdapterDisabled","error","_error$cause","cause","useRetainProofCheck","runTask","removeQueries","useDeleteProofData","deleteProofClaims","useDeleteAllProofsData","schemaId","proofSchemaIds","ACCEPTED","result","Promise","all","reverse"],"sources":["proofs.ts"],"sourcesContent":["import {\n Config,\n CreateProofRequest,\n IdentifierListQuery,\n OneError,\n PresentationSubmitCredentialRequest,\n ProofListQuery,\n ProofSchema,\n ProofStateEnum,\n ShareProofRequest,\n} from '@procivis/react-native-one-core';\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { useMutation, useQuery, useQueryClient } from 'react-query';\n\nimport { getQueryKeyFromProofListQueryParams } from '../../parsers/query';\nimport { Transport } from '../connectivity/connectivity';\nimport { useCoreConfig } from './core-config';\nimport { useONECore } from './core-context';\nimport { OneErrorCode } from './error-code';\nimport { HISTORY_LIST_QUERY_KEY } from './history';\nimport { useIdentifiers } from './identifiers';\nimport { useProofSchemaDetail } from './proof-schemas';\n\nconst PAGE_SIZE = 10;\nexport const PROOF_DETAIL_QUERY_KEY = 'proof-detail';\nexport const PROOF_STATE_QUERY_KEY = 'proof-state';\nexport const PROOF_LIST_QUERY_KEY = 'proof-list';\n\nexport const useProofDetail = (proofId: string | undefined) => {\n const { core } = useONECore();\n\n return useQuery([PROOF_DETAIL_QUERY_KEY, proofId], () => (proofId ? core.getProof(proofId) : undefined), {\n enabled: Boolean(proofId),\n keepPreviousData: true,\n });\n};\n\nexport const useProofState = (proofId: string | undefined, isPolling: boolean) => {\n const { core } = useONECore();\n\n return useQuery(\n [PROOF_STATE_QUERY_KEY, proofId],\n () => (proofId ? core.getProof(proofId).then((proof) => proof.state) : undefined),\n {\n enabled: Boolean(proofId),\n refetchInterval: isPolling ? 1000 : false,\n },\n );\n};\n\ntype ProofUrlHookParams = { proofId: string; request?: ShareProofRequest };\n\nexport const useProofUrl = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async ({ proofId, request }: ProofUrlHookParams) =>\n core.shareProof(proofId, request ?? {}).then((proof) => proof.url),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_STATE_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useProofAccept = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async ({\n interactionId,\n credentials,\n didId,\n identifierId,\n keyId,\n }: {\n credentials: Record<string, PresentationSubmitCredentialRequest>;\n didId?: string;\n identifierId?: string;\n interactionId: string;\n keyId?: string;\n }) => core.holderSubmitProof(interactionId, credentials, didId, identifierId, keyId),\n {\n onError: async () => {\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n },\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useProofReject = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async (interactionId: string) =>\n core.holderRejectProof(interactionId).catch((e) => {\n if (e instanceof OneError && e.code === OneErrorCode.OperationNotSupported) {\n return;\n }\n throw e;\n }),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport enum IssuanceProtocol {\n OPENID4VCI_DRAFT13 = 'OPENID4VCI_DRAFT13',\n}\n\nexport enum VerificationProtocol {\n ISO_MDL = 'ISO_MDL',\n OPENID4VP_DRAFT20 = 'OPENID4VP_DRAFT20',\n OPENID4VP_DRAFT25 = 'OPENID4VP_DRAFT25',\n OPENID4VP_PROXIMITY_DRAFT00 = 'OPENID4VP_PROXIMITY_DRAFT00',\n SCAN_TO_VERIFY = 'SCAN_TO_VERIFY',\n}\n\nexport const useProposeProof = () => {\n const queryClient = useQueryClient();\n const { core, organisationId } = useONECore();\n\n return useMutation(async (exchange: VerificationProtocol) => core.proposeProof(exchange, organisationId), {\n onSuccess: async () => {\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n });\n};\n\nexport const useProofDelete = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async (proofId: string) => {\n return core.deleteProof(proofId).catch((e) => {\n if (e instanceof OneError && e.code === OneErrorCode.OperationNotSupported) {\n return;\n }\n throw e;\n });\n },\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_STATE_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useProofs = (queryParams?: Partial<ProofListQuery>) => {\n const { core, organisationId } = useONECore();\n\n const queryKey = [PROOF_LIST_QUERY_KEY, ...getQueryKeyFromProofListQueryParams(queryParams)];\n\n return useQuery(\n queryKey,\n ({ pageParam = 0 }) =>\n core.getProofs({\n organisationId,\n page: pageParam,\n pageSize: PAGE_SIZE,\n ...queryParams,\n }),\n {\n keepPreviousData: false,\n },\n );\n};\n\nexport const useProofCreate = () => {\n const queryClient = useQueryClient();\n\n const { core } = useONECore();\n\n return useMutation(async (data: CreateProofRequest) => core.createProof(data), {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_STATE_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n },\n });\n};\n\nconst getIdentifierFilterForProofSchema = (proofSchema: ProofSchema, config: Config): Partial<IdentifierListQuery> => {\n const requestedFormats = proofSchema.proofInputSchemas.map((schema) => schema.credentialSchema.format);\n const requestedFormatsCapabilities = requestedFormats\n .map((format) => config.format[format]?.capabilities)\n .filter((x) => x);\n\n // key algorithms must be supported by all requested formats\n const keyAlgorithms = requestedFormatsCapabilities.reduce<string[] | undefined>((others, capabilities) => {\n const current = capabilities.verificationKeyAlgorithms;\n return others?.filter((item) => current.includes(item)) ?? current;\n }, undefined);\n\n // key storages must be supported by all requested formats\n const keyStorages = requestedFormatsCapabilities.reduce<string[] | undefined>((others, capabilities) => {\n const current = capabilities.verificationKeyStorages;\n return others?.filter((item) => current.includes(item)) ?? current;\n }, undefined);\n\n return { keyAlgorithms, keyStorages };\n};\n\nexport const useProofForSchemaIdWithTransport = (\n proofSchemaId: string,\n transport: Transport[] | undefined,\n enabled: boolean,\n) => {\n const { data: proofSchema } = useProofSchemaDetail(proofSchemaId, enabled);\n const { data: config } = useCoreConfig();\n\n const identifierFilter = useMemo(\n () => (proofSchema && config ? getIdentifierFilterForProofSchema(proofSchema, config) : undefined),\n [config, proofSchema],\n );\n\n const { data: identifiers } = useIdentifiers(identifierFilter);\n const { mutateAsync: createProof } = useProofCreate();\n const { mutateAsync: deleteProof } = useProofDelete();\n\n const [deleting, setDeleting] = useState(false);\n const [proofId, setProofIdState] = useState<string | undefined>(undefined);\n const proofIdRef = useRef<string>();\n\n const { data: proofState } = useProofState(deleting ? undefined : proofId, enabled);\n\n const setProofId = useCallback((id: string | undefined) => {\n proofIdRef.current = id;\n setProofIdState(id);\n }, []);\n\n useEffect(() => {\n if (!proofIdRef.current) {\n return;\n }\n setDeleting(true);\n deleteProof(proofIdRef.current)\n .then(() => {\n setProofId(undefined);\n setDeleting(false);\n })\n .catch(() => {});\n }, [proofIdRef, deleteProof, proofSchemaId, transport, setProofId]);\n\n useEffect(() => {\n if (enabled) {\n return;\n }\n\n if (proofState !== ProofStateEnum.CREATED && proofState !== ProofStateEnum.PENDING) {\n setProofId(undefined);\n } else {\n setDeleting(true);\n deleteProof(proofIdRef.current || '')\n .then(() => {\n setProofId(undefined);\n setDeleting(false);\n })\n .catch(() => {});\n }\n }, [deleteProof, enabled, proofId, proofState, setProofId]);\n\n useEffect(() => {\n if (\n deleting ||\n !enabled ||\n proofId ||\n !identifiers ||\n !identifierFilter ||\n !identifiers.values.length ||\n !transport ||\n transport.length === 0\n ) {\n return;\n }\n\n createProof({\n protocol: VerificationProtocol.OPENID4VP_PROXIMITY_DRAFT00,\n proofSchemaId,\n transport,\n verifierIdentifierId: identifiers.values[0].id,\n })\n .then((id) => {\n setProofId(id);\n })\n .catch(() => {});\n }, [proofSchemaId, identifiers, identifierFilter, createProof, enabled, transport, proofId, setProofId, deleting]);\n\n return deleting ? undefined : proofId;\n};\n\nexport const useCleanupUnusedProofs = () => {\n const { mutateAsync: deleteProof } = useProofDelete();\n const { data: proofs } = useProofs({\n page: 0,\n pageSize: 100,\n proofStates: [ProofStateEnum.CREATED, ProofStateEnum.PENDING],\n });\n const [cleaned, setCleaned] = useState(false);\n\n useEffect(() => {\n if (cleaned || !proofs) {\n return;\n }\n setCleaned(true);\n proofs.values.forEach((proof) => deleteProof(proof.id));\n }, [cleaned, deleteProof, proofs]);\n};\n\nexport const useShareProof = (proofUrlProps: ProofUrlHookParams | undefined, enabled: boolean) => {\n const { mutateAsync: shareProof } = useProofUrl();\n const { data: proofState } = useProofState(proofUrlProps?.proofId, enabled);\n\n const [sharedProof, setSharedProof] = useState<{\n bleAdapterDisabled: boolean;\n url?: string;\n error?: unknown;\n }>();\n\n // reset when proofId changes or the proof was retracted\n useEffect(() => {\n if (!proofUrlProps?.proofId || proofState === ProofStateEnum.CREATED) {\n setSharedProof(undefined);\n }\n }, [proofUrlProps?.proofId, proofState]);\n\n useEffect(() => {\n if (!proofUrlProps || !enabled || sharedProof) {\n return;\n }\n\n shareProof(proofUrlProps)\n .then((url) => {\n setSharedProof({\n bleAdapterDisabled: false,\n url,\n });\n })\n .catch((error: unknown) => {\n if (error instanceof OneError && error.cause?.includes('BLE adapter not enabled')) {\n setSharedProof({\n bleAdapterDisabled: true,\n });\n } else {\n setSharedProof({ error, bleAdapterDisabled: false });\n }\n });\n }, [enabled, proofUrlProps, shareProof, sharedProof]);\n\n return sharedProof;\n};\n\nexport const useRetainProofCheck = (proofId?: string) => {\n const queryClient = useQueryClient();\n\n const { core } = useONECore();\n\n return useMutation(async () => core.runTask('RETAIN_PROOF_CHECK'), {\n onSuccess: async () => {\n if (proofId) {\n await queryClient.removeQueries([PROOF_DETAIL_QUERY_KEY, proofId]);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n }\n },\n });\n};\n\nexport const useDeleteProofData = (proofId: string) => {\n const queryClient = useQueryClient();\n\n const { core } = useONECore();\n\n return useMutation(async () => core.deleteProofClaims(proofId), {\n onSuccess: async () => {\n await queryClient.removeQueries([PROOF_DETAIL_QUERY_KEY, proofId]);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n });\n};\n\nexport const useDeleteAllProofsData = (schemaId: string) => {\n const queryClient = useQueryClient();\n\n const { core, organisationId } = useONECore();\n\n return useMutation(\n async () =>\n core\n .getProofs({\n organisationId,\n page: 0,\n pageSize: 1000,\n proofSchemaIds: [schemaId],\n proofStates: [ProofStateEnum.ACCEPTED],\n })\n .then((result) => Promise.all(result.values.reverse().map((proof) => core.deleteProofClaims(proof.id)))),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNativeOneCore","require","_react","_reactQuery","_query","_reporting","_coreConfig","_coreContext","_errorCode","_history","_identifiers","_proofSchemas","PAGE_SIZE","PROOF_DETAIL_QUERY_KEY","exports","PROOF_STATE_QUERY_KEY","PROOF_LIST_QUERY_KEY","useProofDetail","proofId","core","useONECore","useQuery","getProof","undefined","enabled","Boolean","keepPreviousData","useProofState","isPolling","then","proof","state","refetchInterval","useProofUrl","queryClient","useQueryClient","useMutation","request","shareProof","url","onSuccess","invalidateQueries","useProofAccept","interactionId","credentials","didId","identifierId","keyId","holderSubmitProof","onError","err","reportException","HISTORY_LIST_QUERY_KEY","useProofReject","holderRejectProof","catch","e","OneError","code","OneErrorCode","OperationNotSupported","IssuanceProtocol","VerificationProtocol","VerificationEngagement","useProposeProof","organisationId","exchange","engagement","proposeProof","useProofDelete","deleteProof","useProofs","queryParams","queryKey","getQueryKeyFromProofListQueryParams","pageParam","getProofs","page","pageSize","useProofCreate","data","createProof","getIdentifierFilterForProofSchema","proofSchema","config","requestedFormats","proofInputSchemas","map","schema","credentialSchema","format","requestedFormatsCapabilities","_config$format$format","capabilities","filter","x","keyAlgorithms","reduce","others","_others$filter","current","verificationKeyAlgorithms","item","includes","keyStorages","_others$filter2","verificationKeyStorages","useProofForSchemaIdWithTransport","proofSchemaId","transport","useProofSchemaDetail","useCoreConfig","identifierFilter","useMemo","identifiers","useIdentifiers","mutateAsync","deleting","setDeleting","useState","setProofIdState","proofIdRef","useRef","proofState","setProofId","useCallback","id","useEffect","ProofStateEnum","CREATED","PENDING","values","length","protocol","OPENID4VP_PROXIMITY_DRAFT00","verifierIdentifierId","useCleanupUnusedProofs","proofs","proofStates","cleaned","setCleaned","forEach","useShareProof","proofUrlProps","sharedProof","setSharedProof","bleAdapterDisabled","error","_error$cause","cause","useRetainProofCheck","runTask","removeQueries","useDeleteProofData","deleteProofClaims","useDeleteAllProofsData","schemaId","proofSchemaIds","ACCEPTED","result","Promise","all","reverse"],"sources":["proofs.ts"],"sourcesContent":["import {\n Config,\n CreateProofRequest,\n IdentifierListQuery,\n OneError,\n PresentationSubmitCredentialRequest,\n ProofListQuery,\n ProofSchema,\n ProofStateEnum,\n ShareProofRequest,\n} from '@procivis/react-native-one-core';\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { useMutation, useQuery, useQueryClient } from 'react-query';\n\nimport { getQueryKeyFromProofListQueryParams } from '../../parsers/query';\nimport { reportException } from '../../reporting';\nimport { Transport } from '../connectivity/connectivity';\nimport { useCoreConfig } from './core-config';\nimport { useONECore } from './core-context';\nimport { OneErrorCode } from './error-code';\nimport { HISTORY_LIST_QUERY_KEY } from './history';\nimport { useIdentifiers } from './identifiers';\nimport { useProofSchemaDetail } from './proof-schemas';\n\nconst PAGE_SIZE = 10;\nexport const PROOF_DETAIL_QUERY_KEY = 'proof-detail';\nexport const PROOF_STATE_QUERY_KEY = 'proof-state';\nexport const PROOF_LIST_QUERY_KEY = 'proof-list';\n\nexport const useProofDetail = (proofId: string | undefined) => {\n const { core } = useONECore();\n\n return useQuery([PROOF_DETAIL_QUERY_KEY, proofId], () => (proofId ? core.getProof(proofId) : undefined), {\n enabled: Boolean(proofId),\n keepPreviousData: true,\n });\n};\n\nexport const useProofState = (proofId: string | undefined, isPolling: boolean) => {\n const { core } = useONECore();\n\n return useQuery(\n [PROOF_STATE_QUERY_KEY, proofId],\n () => (proofId ? core.getProof(proofId).then((proof) => proof.state) : undefined),\n {\n enabled: Boolean(proofId),\n refetchInterval: isPolling ? 1000 : false,\n },\n );\n};\n\ntype ProofUrlHookParams = { proofId: string; request?: ShareProofRequest };\n\nexport const useProofUrl = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async ({ proofId, request }: ProofUrlHookParams) =>\n core.shareProof(proofId, request ?? {}).then((proof) => proof.url),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_STATE_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useProofAccept = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async ({\n interactionId,\n credentials,\n didId,\n identifierId,\n keyId,\n }: {\n credentials: Record<string, PresentationSubmitCredentialRequest>;\n didId?: string;\n identifierId?: string;\n interactionId: string;\n keyId?: string;\n }) => core.holderSubmitProof(interactionId, credentials, didId, identifierId, keyId),\n {\n onError: async (err) => {\n reportException(err, 'Proof submission failure');\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n },\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useProofReject = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async (interactionId: string) =>\n core.holderRejectProof(interactionId).catch((e) => {\n if (e instanceof OneError && e.code === OneErrorCode.OperationNotSupported) {\n return;\n }\n throw e;\n }),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport enum IssuanceProtocol {\n OPENID4VCI_DRAFT13 = 'OPENID4VCI_DRAFT13',\n}\n\nexport enum VerificationProtocol {\n ISO_MDL = 'ISO_MDL',\n OPENID4VP_DRAFT20 = 'OPENID4VP_DRAFT20',\n OPENID4VP_DRAFT25 = 'OPENID4VP_DRAFT25',\n OPENID4VP_PROXIMITY_DRAFT00 = 'OPENID4VP_PROXIMITY_DRAFT00',\n SCAN_TO_VERIFY = 'SCAN_TO_VERIFY',\n}\n\nexport enum VerificationEngagement {\n QR_CODE = 'QR_CODE',\n NFC = 'NFC',\n}\n\nexport interface ProposeProofRequest {\n exchange: VerificationProtocol;\n engagement: VerificationEngagement[];\n}\n\nexport const useProposeProof = () => {\n const queryClient = useQueryClient();\n const { core, organisationId } = useONECore();\n\n return useMutation(\n async ({ exchange, engagement }: ProposeProofRequest) => core.proposeProof(exchange, organisationId, engagement),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useProofDelete = () => {\n const queryClient = useQueryClient();\n const { core } = useONECore();\n\n return useMutation(\n async (proofId: string) => {\n return core.deleteProof(proofId).catch((e) => {\n if (e instanceof OneError && e.code === OneErrorCode.OperationNotSupported) {\n return;\n }\n throw e;\n });\n },\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_STATE_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n\nexport const useProofs = (queryParams?: Partial<ProofListQuery>) => {\n const { core, organisationId } = useONECore();\n\n const queryKey = [PROOF_LIST_QUERY_KEY, ...getQueryKeyFromProofListQueryParams(queryParams)];\n\n return useQuery(\n queryKey,\n ({ pageParam = 0 }) =>\n core.getProofs({\n organisationId,\n page: pageParam,\n pageSize: PAGE_SIZE,\n ...queryParams,\n }),\n {\n keepPreviousData: false,\n },\n );\n};\n\nexport const useProofCreate = () => {\n const queryClient = useQueryClient();\n\n const { core } = useONECore();\n\n return useMutation(async (data: CreateProofRequest) => core.createProof(data), {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_LIST_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_STATE_QUERY_KEY);\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n },\n });\n};\n\nconst getIdentifierFilterForProofSchema = (proofSchema: ProofSchema, config: Config): Partial<IdentifierListQuery> => {\n const requestedFormats = proofSchema.proofInputSchemas.map((schema) => schema.credentialSchema.format);\n const requestedFormatsCapabilities = requestedFormats\n .map((format) => config.format[format]?.capabilities)\n .filter((x) => x);\n\n // key algorithms must be supported by all requested formats\n const keyAlgorithms = requestedFormatsCapabilities.reduce<string[] | undefined>((others, capabilities) => {\n const current = capabilities.verificationKeyAlgorithms;\n return others?.filter((item) => current.includes(item)) ?? current;\n }, undefined);\n\n // key storages must be supported by all requested formats\n const keyStorages = requestedFormatsCapabilities.reduce<string[] | undefined>((others, capabilities) => {\n const current = capabilities.verificationKeyStorages;\n return others?.filter((item) => current.includes(item)) ?? current;\n }, undefined);\n\n return { keyAlgorithms, keyStorages };\n};\n\nexport const useProofForSchemaIdWithTransport = (\n proofSchemaId: string,\n transport: Transport[] | undefined,\n enabled: boolean,\n) => {\n const { data: proofSchema } = useProofSchemaDetail(proofSchemaId, enabled);\n const { data: config } = useCoreConfig();\n\n const identifierFilter = useMemo(\n () => (proofSchema && config ? getIdentifierFilterForProofSchema(proofSchema, config) : undefined),\n [config, proofSchema],\n );\n\n const { data: identifiers } = useIdentifiers(identifierFilter);\n const { mutateAsync: createProof } = useProofCreate();\n const { mutateAsync: deleteProof } = useProofDelete();\n\n const [deleting, setDeleting] = useState(false);\n const [proofId, setProofIdState] = useState<string | undefined>(undefined);\n const proofIdRef = useRef<string>();\n\n const { data: proofState } = useProofState(deleting ? undefined : proofId, enabled);\n\n const setProofId = useCallback((id: string | undefined) => {\n proofIdRef.current = id;\n setProofIdState(id);\n }, []);\n\n useEffect(() => {\n if (!proofIdRef.current) {\n return;\n }\n setDeleting(true);\n deleteProof(proofIdRef.current)\n .then(() => {\n setProofId(undefined);\n setDeleting(false);\n })\n .catch(() => {});\n }, [proofIdRef, deleteProof, proofSchemaId, transport, setProofId]);\n\n useEffect(() => {\n if (enabled) {\n return;\n }\n\n if (proofState !== ProofStateEnum.CREATED && proofState !== ProofStateEnum.PENDING) {\n setProofId(undefined);\n } else {\n setDeleting(true);\n deleteProof(proofIdRef.current || '')\n .then(() => {\n setProofId(undefined);\n setDeleting(false);\n })\n .catch(() => {});\n }\n }, [deleteProof, enabled, proofId, proofState, setProofId]);\n\n useEffect(() => {\n if (\n deleting ||\n !enabled ||\n proofId ||\n !identifiers ||\n !identifierFilter ||\n !identifiers.values.length ||\n !transport ||\n transport.length === 0\n ) {\n return;\n }\n\n createProof({\n protocol: VerificationProtocol.OPENID4VP_PROXIMITY_DRAFT00,\n proofSchemaId,\n transport,\n verifierIdentifierId: identifiers.values[0].id,\n })\n .then((id) => {\n setProofId(id);\n })\n .catch(() => {});\n }, [proofSchemaId, identifiers, identifierFilter, createProof, enabled, transport, proofId, setProofId, deleting]);\n\n return deleting ? undefined : proofId;\n};\n\nexport const useCleanupUnusedProofs = () => {\n const { mutateAsync: deleteProof } = useProofDelete();\n const { data: proofs } = useProofs({\n page: 0,\n pageSize: 100,\n proofStates: [ProofStateEnum.CREATED, ProofStateEnum.PENDING],\n });\n const [cleaned, setCleaned] = useState(false);\n\n useEffect(() => {\n if (cleaned || !proofs) {\n return;\n }\n setCleaned(true);\n proofs.values.forEach((proof) => deleteProof(proof.id));\n }, [cleaned, deleteProof, proofs]);\n};\n\nexport const useShareProof = (proofUrlProps: ProofUrlHookParams | undefined, enabled: boolean) => {\n const { mutateAsync: shareProof } = useProofUrl();\n const { data: proofState } = useProofState(proofUrlProps?.proofId, enabled);\n\n const [sharedProof, setSharedProof] = useState<{\n bleAdapterDisabled: boolean;\n url?: string;\n error?: unknown;\n }>();\n\n // reset when proofId changes or the proof was retracted\n useEffect(() => {\n if (!proofUrlProps?.proofId || proofState === ProofStateEnum.CREATED) {\n setSharedProof(undefined);\n }\n }, [proofUrlProps?.proofId, proofState]);\n\n useEffect(() => {\n if (!proofUrlProps || !enabled || sharedProof) {\n return;\n }\n\n shareProof(proofUrlProps)\n .then((url) => {\n setSharedProof({\n bleAdapterDisabled: false,\n url,\n });\n })\n .catch((error: unknown) => {\n if (error instanceof OneError && error.cause?.includes('BLE adapter not enabled')) {\n setSharedProof({\n bleAdapterDisabled: true,\n });\n } else {\n setSharedProof({ error, bleAdapterDisabled: false });\n }\n });\n }, [enabled, proofUrlProps, shareProof, sharedProof]);\n\n return sharedProof;\n};\n\nexport const useRetainProofCheck = (proofId?: string) => {\n const queryClient = useQueryClient();\n\n const { core } = useONECore();\n\n return useMutation(async () => core.runTask('RETAIN_PROOF_CHECK'), {\n onSuccess: async () => {\n if (proofId) {\n await queryClient.removeQueries([PROOF_DETAIL_QUERY_KEY, proofId]);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n }\n },\n });\n};\n\nexport const useDeleteProofData = (proofId: string) => {\n const queryClient = useQueryClient();\n\n const { core } = useONECore();\n\n return useMutation(async () => core.deleteProofClaims(proofId), {\n onSuccess: async () => {\n await queryClient.removeQueries([PROOF_DETAIL_QUERY_KEY, proofId]);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n });\n};\n\nexport const useDeleteAllProofsData = (schemaId: string) => {\n const queryClient = useQueryClient();\n\n const { core, organisationId } = useONECore();\n\n return useMutation(\n async () =>\n core\n .getProofs({\n organisationId,\n page: 0,\n pageSize: 1000,\n proofSchemaIds: [schemaId],\n proofStates: [ProofStateEnum.ACCEPTED],\n })\n .then((result) => Promise.all(result.values.reverse().map((proof) => core.deleteProofClaims(proof.id)))),\n {\n onSuccess: async () => {\n await queryClient.invalidateQueries(PROOF_DETAIL_QUERY_KEY);\n await queryClient.invalidateQueries(HISTORY_LIST_QUERY_KEY);\n },\n },\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -69,6 +69,17 @@ Object.keys(_navigation).forEach(function (key) {
69
69
  }
70
70
  });
71
71
  });
72
+ var _nfcStatus = require("./nfc/nfc-status");
73
+ Object.keys(_nfcStatus).forEach(function (key) {
74
+ if (key === "default" || key === "__esModule") return;
75
+ if (key in exports && exports[key] === _nfcStatus[key]) return;
76
+ Object.defineProperty(exports, key, {
77
+ enumerable: true,
78
+ get: function () {
79
+ return _nfcStatus[key];
80
+ }
81
+ });
82
+ });
72
83
  var _pinSecurity = require("./pin-security/pin-security");
73
84
  Object.keys(_pinSecurity).forEach(function (key) {
74
85
  if (key === "default" || key === "__esModule") return;