@reown/appkit-ui-react-native 2.0.1 → 2.0.2

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 (35) hide show
  1. package/lib/commonjs/assets/svg/WalletConnect.js +4 -5
  2. package/lib/commonjs/assets/svg/WalletConnect.js.map +1 -1
  3. package/lib/commonjs/composites/wui-qr-code/index.js +51 -19
  4. package/lib/commonjs/composites/wui-qr-code/index.js.map +1 -1
  5. package/lib/commonjs/composites/wui-qr-code/styles.js +0 -3
  6. package/lib/commonjs/composites/wui-qr-code/styles.js.map +1 -1
  7. package/lib/commonjs/context/ThemeContext.js +2 -5
  8. package/lib/commonjs/context/ThemeContext.js.map +1 -1
  9. package/lib/commonjs/utils/QRCodeUtil.js +217 -116
  10. package/lib/commonjs/utils/QRCodeUtil.js.map +1 -1
  11. package/lib/module/assets/svg/WalletConnect.js +4 -5
  12. package/lib/module/assets/svg/WalletConnect.js.map +1 -1
  13. package/lib/module/composites/wui-qr-code/index.js +50 -19
  14. package/lib/module/composites/wui-qr-code/index.js.map +1 -1
  15. package/lib/module/composites/wui-qr-code/styles.js +0 -3
  16. package/lib/module/composites/wui-qr-code/styles.js.map +1 -1
  17. package/lib/module/context/ThemeContext.js +2 -5
  18. package/lib/module/context/ThemeContext.js.map +1 -1
  19. package/lib/module/utils/QRCodeUtil.js +216 -116
  20. package/lib/module/utils/QRCodeUtil.js.map +1 -1
  21. package/lib/typescript/assets/svg/WalletConnect.d.ts.map +1 -1
  22. package/lib/typescript/composites/wui-qr-code/index.d.ts +3 -1
  23. package/lib/typescript/composites/wui-qr-code/index.d.ts.map +1 -1
  24. package/lib/typescript/composites/wui-qr-code/styles.d.ts +0 -3
  25. package/lib/typescript/composites/wui-qr-code/styles.d.ts.map +1 -1
  26. package/lib/typescript/context/ThemeContext.d.ts +2 -2
  27. package/lib/typescript/context/ThemeContext.d.ts.map +1 -1
  28. package/lib/typescript/utils/QRCodeUtil.d.ts +22 -2
  29. package/lib/typescript/utils/QRCodeUtil.d.ts.map +1 -1
  30. package/package.json +2 -2
  31. package/src/assets/svg/WalletConnect.tsx +4 -5
  32. package/src/composites/wui-qr-code/index.tsx +75 -16
  33. package/src/composites/wui-qr-code/styles.ts +0 -3
  34. package/src/context/ThemeContext.tsx +4 -7
  35. package/src/utils/QRCodeUtil.tsx +265 -142
@@ -1,13 +1,11 @@
1
1
  "use strict";
2
2
 
3
- import { Line, Rect, Circle } from 'react-native-svg';
4
3
  import QRCode from 'qrcode';
5
- import { LightTheme } from '../utils/ThemeUtil';
6
- import { jsx as _jsx } from "react/jsx-runtime";
7
4
  const CONNECTING_ERROR_MARGIN = 0.1;
8
5
  const CIRCLE_SIZE_MODIFIER = 2.5;
9
6
  const QRCODE_MATRIX_MARGIN = 7;
10
- function isAdjecentDots(cy, otherCy, cellSize) {
7
+ const LOGO_PADDING = 25;
8
+ function isAdjacentDots(cy, otherCy, cellSize) {
11
9
  if (cy === otherCy) {
12
10
  return false;
13
11
  }
@@ -21,128 +19,230 @@ function getMatrix(value, errorCorrectionLevel) {
21
19
  const sqrt = Math.sqrt(arr.length);
22
20
  return arr.reduce((rows, key, index) => (index % sqrt === 0 ? rows.push([key]) : rows[rows.length - 1].push(key)) && rows, []);
23
21
  }
24
- export const QRCodeUtil = {
25
- generate(uri, size, logoSize) {
26
- const dotColor = LightTheme['inverse-000'];
27
- const edgeColor = LightTheme['inverse-100'];
28
- const dots = [];
29
- const matrix = getMatrix(uri, 'Q');
30
- const cellSize = size / matrix.length;
31
- const qrList = [{
32
- x: 0,
33
- y: 0
34
- }, {
35
- x: 1,
36
- y: 0
37
- }, {
38
- x: 0,
39
- y: 1
40
- }];
41
- qrList.forEach(({
42
- x,
43
- y
44
- }) => {
45
- const x1 = (matrix.length - QRCODE_MATRIX_MARGIN) * cellSize * x;
46
- const y1 = (matrix.length - QRCODE_MATRIX_MARGIN) * cellSize * y;
47
- const borderRadius = 0.32;
48
- for (let i = 0; i < qrList.length; i += 1) {
49
- const dotSize = cellSize * (QRCODE_MATRIX_MARGIN - i * 2);
50
- dots.push(/*#__PURE__*/_jsx(Rect, {
51
- fill: i % 2 === 0 ? dotColor : edgeColor,
52
- height: dotSize,
53
- rx: dotSize * borderRadius,
54
- ry: dotSize * borderRadius,
55
- width: dotSize,
56
- x: x1 + cellSize * i,
57
- y: y1 + cellSize * i
58
- }, `rect_${x1 + cellSize * i}_${y1 + cellSize * i}`));
59
- }
60
- });
61
- const clearArenaSize = Math.floor((logoSize + 25) / cellSize);
62
- const matrixMiddleStart = matrix.length / 2 - clearArenaSize / 2;
63
- const matrixMiddleEnd = matrix.length / 2 + clearArenaSize / 2 - 1;
64
- const circles = [];
65
-
66
- // Getting coordinates for each of the QR code dots
67
- matrix.forEach((row, i) => {
68
- row.forEach((_, j) => {
69
- if (matrix[i][j]) {
70
- if (!(i < QRCODE_MATRIX_MARGIN && j < QRCODE_MATRIX_MARGIN || i > matrix.length - (QRCODE_MATRIX_MARGIN + 1) && j < QRCODE_MATRIX_MARGIN || i < QRCODE_MATRIX_MARGIN && j > matrix.length - (QRCODE_MATRIX_MARGIN + 1))) {
71
- if (!(i > matrixMiddleStart && i < matrixMiddleEnd && j > matrixMiddleStart && j < matrixMiddleEnd)) {
72
- const cx = i * cellSize + cellSize / 2;
73
- const cy = j * cellSize + cellSize / 2;
74
- circles.push([cx, cy]);
75
- }
76
- }
77
- }
22
+ function processQRMatrix(matrix, size, logoSize, logoBorderRadius) {
23
+ const matrixLength = matrix.length;
24
+ const cellSize = size / matrixLength;
25
+ const halfCellSize = cellSize / 2;
26
+ const strokeWidth = cellSize / (CIRCLE_SIZE_MODIFIER / 2);
27
+ const circleRadius = cellSize / CIRCLE_SIZE_MODIFIER;
28
+ const rects = [];
29
+ const circles = [];
30
+ const lines = [];
31
+
32
+ // Generate corner rectangles - optimized with direct indexing
33
+ const qrList = [{
34
+ x: 0,
35
+ y: 0
36
+ }, {
37
+ x: 1,
38
+ y: 0
39
+ }, {
40
+ x: 0,
41
+ y: 1
42
+ }];
43
+ const baseOffset = (matrixLength - QRCODE_MATRIX_MARGIN) * cellSize;
44
+ for (let qrIdx = 0; qrIdx < 3; qrIdx++) {
45
+ const qr = qrList[qrIdx];
46
+ const x1 = baseOffset * qr.x;
47
+ const y1 = baseOffset * qr.y;
48
+ for (let i = 0; i < 3; i++) {
49
+ const dotSize = cellSize * (QRCODE_MATRIX_MARGIN - i * 2);
50
+ rects.push({
51
+ x: x1 + cellSize * i,
52
+ y: y1 + cellSize * i,
53
+ size: dotSize,
54
+ fillType: i % 2 === 0 ? 'dot' : 'edge'
78
55
  });
79
- });
56
+ }
57
+ }
58
+ const circleCoords = [];
59
+
60
+ // Determine if using circular or rounded rectangle hole
61
+ const isCircular = logoBorderRadius === undefined;
62
+ const effectiveBorderRadius = logoBorderRadius ?? (logoSize + LOGO_PADDING) / 2;
80
63
 
81
- // Cx to multiple cys
82
- const circlesToConnect = {};
64
+ // Calculate circle coordinates - optimized with configurable hole shape
65
+ for (let i = 0; i < matrixLength; i++) {
66
+ const row = matrix[i];
67
+ const rowLength = row.length;
68
+ for (let j = 0; j < rowLength; j++) {
69
+ if (!row[j]) continue;
70
+
71
+ // Skip corners check
72
+ if (i < QRCODE_MATRIX_MARGIN && j < QRCODE_MATRIX_MARGIN || i > matrixLength - (QRCODE_MATRIX_MARGIN + 1) && j < QRCODE_MATRIX_MARGIN || i < QRCODE_MATRIX_MARGIN && j > matrixLength - (QRCODE_MATRIX_MARGIN + 1)) {
73
+ continue;
74
+ }
83
75
 
84
- // Mapping all dots cicles on the same x axis
85
- circles.forEach(([cx, cy]) => {
86
- if (circlesToConnect[cx]) {
87
- circlesToConnect[cx]?.push(cy);
76
+ // Calculate pixel coordinates first
77
+ const cx = i * cellSize + halfCellSize;
78
+ const cy = j * cellSize + halfCellSize;
79
+
80
+ // Skip hole calculation if logoSize is 0 (arenaClear)
81
+ if (logoSize === 0) {
82
+ circleCoords.push([cx, cy]);
83
+ continue;
84
+ }
85
+
86
+ // Calculate distance from center in pixel space
87
+ const centerX = size / 2;
88
+ const centerY = size / 2;
89
+ let isOutsideLogoArea = false;
90
+ if (isCircular) {
91
+ // Circular hole
92
+ const dx = cx - centerX;
93
+ const dy = cy - centerY;
94
+ const distanceFromCenter = Math.sqrt(dx * dx + dy * dy);
95
+ const pixelRadius = (logoSize + LOGO_PADDING) / 2;
96
+ isOutsideLogoArea = distanceFromCenter >= pixelRadius;
88
97
  } else {
89
- circlesToConnect[cx] = [cy];
98
+ // Rounded rectangle hole
99
+ const halfLogoArea = (logoSize + LOGO_PADDING) / 2;
100
+ const dx = Math.abs(cx - centerX);
101
+ const dy = Math.abs(cy - centerY);
102
+
103
+ // Check if point is outside the rounded rectangle
104
+ if (dx > halfLogoArea || dy > halfLogoArea) {
105
+ isOutsideLogoArea = true;
106
+ } else if (dx > halfLogoArea - effectiveBorderRadius && dy > halfLogoArea - effectiveBorderRadius) {
107
+ // Check corner radius
108
+ const cornerDx = dx - (halfLogoArea - effectiveBorderRadius);
109
+ const cornerDy = dy - (halfLogoArea - effectiveBorderRadius);
110
+ const cornerDistance = Math.sqrt(cornerDx * cornerDx + cornerDy * cornerDy);
111
+ isOutsideLogoArea = cornerDistance >= effectiveBorderRadius;
112
+ } else {
113
+ isOutsideLogoArea = false;
114
+ }
115
+ }
116
+ if (isOutsideLogoArea) {
117
+ circleCoords.push([cx, cy]);
90
118
  }
91
- });
92
-
93
- // Drawing lonely dots
94
- Object.entries(circlesToConnect)
95
- // Only get dots that have neighbors
96
- .map(([cx, cys]) => {
97
- const newCys = cys.filter(cy => cys.every(otherCy => !isAdjecentDots(cy, otherCy, cellSize)));
98
- return [Number(cx), newCys];
99
- }).forEach(([cx, cys]) => {
100
- cys.forEach(cy => {
101
- dots.push(/*#__PURE__*/_jsx(Circle, {
102
- cx: cx,
103
- cy: cy,
104
- fill: dotColor,
105
- r: cellSize / CIRCLE_SIZE_MODIFIER
106
- }, `circle_${cx}_${cy}`));
119
+ }
120
+ }
121
+
122
+ // Build circlesToConnect - optimized loop
123
+ const circlesToConnect = {};
124
+ for (let k = 0; k < circleCoords.length; k++) {
125
+ const [cx, cy] = circleCoords[k];
126
+ const existing = circlesToConnect[cx];
127
+ if (existing) {
128
+ existing.push(cy);
129
+ } else {
130
+ circlesToConnect[cx] = [cy];
131
+ }
132
+ }
133
+
134
+ // Process circles and lines - optimized to avoid Object.entries
135
+ for (const cxKey in circlesToConnect) {
136
+ const cx = Number(cxKey);
137
+ const cys = circlesToConnect[cxKey];
138
+ if (cys.length === 1) {
139
+ const firstCy = cys[0];
140
+ if (firstCy === undefined) continue;
141
+
142
+ // Single dot, add as circle
143
+ circles.push({
144
+ cx,
145
+ cy: firstCy,
146
+ r: circleRadius
107
147
  });
108
- });
109
-
110
- // Drawing lines for dots that are close to each other
111
- Object.entries(circlesToConnect)
112
- // Only get dots that have more than one dot on the x axis
113
- .filter(([_, cys]) => cys.length > 1)
114
- // Removing dots with no neighbors
115
- .map(([cx, cys]) => {
116
- const newCys = cys.filter(cy => cys.some(otherCy => isAdjecentDots(cy, otherCy, cellSize)));
117
- return [Number(cx), newCys];
118
- })
119
- // Get the coordinates of the first and last dot of a line
120
- .map(([cx, cys]) => {
121
- cys.sort((a, b) => a < b ? -1 : 1);
122
- const groups = [];
123
- for (const cy of cys) {
124
- const group = groups.find(item => item.some(otherCy => isAdjecentDots(cy, otherCy, cellSize)));
125
- if (group) {
126
- group.push(cy);
148
+ continue;
149
+ }
150
+
151
+ // Sort once for line grouping
152
+ cys.sort((a, b) => a - b);
153
+
154
+ // Track which dots are connected and which are lonely
155
+ const isConnected = new Array(cys.length).fill(false);
156
+
157
+ // Find all adjacent pairs
158
+ for (let i = 0; i < cys.length - 1; i++) {
159
+ const currentCy = cys[i];
160
+ const nextCy = cys[i + 1];
161
+ if (currentCy !== undefined && nextCy !== undefined && isAdjacentDots(currentCy, nextCy, cellSize)) {
162
+ isConnected[i] = true;
163
+ isConnected[i + 1] = true;
164
+ }
165
+ }
166
+
167
+ // Add lonely dots as circles and build line groups
168
+ let groupStart = -1;
169
+ let groupEnd = -1;
170
+ for (let i = 0; i < cys.length; i++) {
171
+ const cy = cys[i];
172
+ if (cy === undefined) continue;
173
+ if (!isConnected[i]) {
174
+ // Lonely dot - add as circle
175
+ circles.push({
176
+ cx,
177
+ cy,
178
+ r: circleRadius
179
+ });
180
+
181
+ // Finish any ongoing line group
182
+ if (groupStart !== -1 && groupEnd !== -1 && groupStart !== groupEnd) {
183
+ lines.push({
184
+ x1: cx,
185
+ x2: cx,
186
+ y1: groupStart,
187
+ y2: groupEnd,
188
+ strokeWidth
189
+ });
190
+ }
191
+ groupStart = -1;
192
+ groupEnd = -1;
193
+ } else {
194
+ // Part of a line group
195
+ if (groupStart === -1) {
196
+ groupStart = cy;
197
+ groupEnd = cy;
127
198
  } else {
128
- groups.push([cy]);
199
+ // Check if adjacent to previous
200
+ const prevCy = cys[i - 1];
201
+ if (i > 0 && prevCy !== undefined && isAdjacentDots(cy, prevCy, cellSize)) {
202
+ groupEnd = cy;
203
+ } else {
204
+ // Gap in the group, finish previous line
205
+ if (groupStart !== groupEnd) {
206
+ lines.push({
207
+ x1: cx,
208
+ x2: cx,
209
+ y1: groupStart,
210
+ y2: groupEnd,
211
+ strokeWidth
212
+ });
213
+ }
214
+ groupStart = cy;
215
+ groupEnd = cy;
216
+ }
129
217
  }
130
218
  }
131
- return [cx, groups.map(item => [item[0], item[item.length - 1]])];
132
- }).forEach(([cx, groups]) => {
133
- groups.forEach(([y1, y2]) => {
134
- dots.push(/*#__PURE__*/_jsx(Line, {
135
- x1: cx,
136
- x2: cx,
137
- y1: y1,
138
- y2: y2,
139
- stroke: dotColor,
140
- strokeWidth: cellSize / (CIRCLE_SIZE_MODIFIER / 2),
141
- strokeLinecap: "round"
142
- }, `line_${cx}_${y1}_${y2}`));
219
+ }
220
+
221
+ // Don't forget the last group
222
+ if (groupStart !== -1 && groupEnd !== -1 && groupStart !== groupEnd) {
223
+ lines.push({
224
+ x1: cx,
225
+ x2: cx,
226
+ y1: groupStart,
227
+ y2: groupEnd,
228
+ strokeWidth
143
229
  });
144
- });
145
- return dots;
230
+ }
146
231
  }
232
+ return {
233
+ rects,
234
+ circles,
235
+ lines
236
+ };
237
+ }
238
+ export function generateQRData(uri, size, logoSize, logoBorderRadius) {
239
+ if (!uri || size <= 0) {
240
+ throw new Error('Invalid QR code parameters');
241
+ }
242
+ const matrix = getMatrix(uri, 'Q');
243
+ return processQRMatrix(matrix, size, logoSize, logoBorderRadius);
244
+ }
245
+ export const QRCodeUtil = {
246
+ generate: generateQRData
147
247
  };
148
248
  //# sourceMappingURL=QRCodeUtil.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Line","Rect","Circle","QRCode","LightTheme","jsx","_jsx","CONNECTING_ERROR_MARGIN","CIRCLE_SIZE_MODIFIER","QRCODE_MATRIX_MARGIN","isAdjecentDots","cy","otherCy","cellSize","diff","getMatrix","value","errorCorrectionLevel","arr","Array","prototype","slice","call","create","modules","data","sqrt","Math","length","reduce","rows","key","index","push","QRCodeUtil","generate","uri","size","logoSize","dotColor","edgeColor","dots","matrix","qrList","x","y","forEach","x1","y1","borderRadius","i","dotSize","fill","height","rx","ry","width","clearArenaSize","floor","matrixMiddleStart","matrixMiddleEnd","circles","row","_","j","cx","circlesToConnect","Object","entries","map","cys","newCys","filter","every","Number","r","some","sort","a","b","groups","group","find","item","y2","x2","stroke","strokeWidth","strokeLinecap"],"sourceRoot":"../../../src","sources":["utils/QRCodeUtil.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["QRCode","CONNECTING_ERROR_MARGIN","CIRCLE_SIZE_MODIFIER","QRCODE_MATRIX_MARGIN","LOGO_PADDING","isAdjacentDots","cy","otherCy","cellSize","diff","getMatrix","value","errorCorrectionLevel","arr","Array","prototype","slice","call","create","modules","data","sqrt","Math","length","reduce","rows","key","index","push","processQRMatrix","matrix","size","logoSize","logoBorderRadius","matrixLength","halfCellSize","strokeWidth","circleRadius","rects","circles","lines","qrList","x","y","baseOffset","qrIdx","qr","x1","y1","i","dotSize","fillType","circleCoords","isCircular","undefined","effectiveBorderRadius","row","rowLength","j","cx","centerX","centerY","isOutsideLogoArea","dx","dy","distanceFromCenter","pixelRadius","halfLogoArea","abs","cornerDx","cornerDy","cornerDistance","circlesToConnect","k","existing","cxKey","Number","cys","firstCy","r","sort","a","b","isConnected","fill","currentCy","nextCy","groupStart","groupEnd","x2","y2","prevCy","generateQRData","uri","Error","QRCodeUtil","generate"],"sourceRoot":"../../../src","sources":["utils/QRCodeUtil.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"WalletConnect.d.ts","sourceRoot":"","sources":["../../../../src/assets/svg/WalletConnect.tsx"],"names":[],"mappings":"AAAA,OAAY,EAA2B,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC/E,QAAA,MAAM,gBAAgB,UAAW,QAAQ,4CAYxC,CAAC;AACF,eAAe,gBAAgB,CAAC;AAEhC,eAAO,MAAM,0BAA0B,UAAW,QAAQ,4CAqBzD,CAAC"}
1
+ {"version":3,"file":"WalletConnect.d.ts","sourceRoot":"","sources":["../../../../src/assets/svg/WalletConnect.tsx"],"names":[],"mappings":"AAAA,OAAY,EAA2B,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC/E,QAAA,MAAM,gBAAgB,UAAW,QAAQ,4CAWxC,CAAC;AACF,eAAe,gBAAgB,CAAC;AAEhC,eAAO,MAAM,0BAA0B,UAAW,QAAQ,4CAqBzD,CAAC"}
@@ -9,7 +9,9 @@ export interface QrCodeProps {
9
9
  testID?: string;
10
10
  arenaClear?: boolean;
11
11
  style?: StyleProp<ViewStyle>;
12
+ logoSize?: number;
13
+ logoBorderRadius?: number;
12
14
  }
13
- export declare function QrCode_({ size, uri, imageSrc, testID, arenaClear, icon, style }: QrCodeProps): import("react/jsx-runtime").JSX.Element;
15
+ export declare function QrCode_({ size, uri, imageSrc, testID, arenaClear, icon, style, logoSize, logoBorderRadius }: QrCodeProps): import("react/jsx-runtime").JSX.Element;
14
16
  export declare const QrCode: import("react").MemoExoticComponent<typeof QrCode_>;
15
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/composites/wui-qr-code/index.tsx"],"names":[],"mappings":";AACA,OAAO,EAAQ,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAOpE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGtD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B;AAED,wBAAgB,OAAO,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,WAAW,2CAwD5F;AAED,eAAO,MAAM,MAAM,qDAMjB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/composites/wui-qr-code/index.tsx"],"names":[],"mappings":";AACA,OAAO,EAAQ,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAOpE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGtD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,OAAO,CAAC,EACtB,IAAI,EACJ,GAAG,EACH,QAAQ,EACR,MAAM,EACN,UAAU,EACV,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,gBAAgB,EACjB,EAAE,WAAW,2CAsGb;AAED,eAAO,MAAM,MAAM,qDAOjB,CAAC"}
@@ -6,9 +6,6 @@ declare const _default: {
6
6
  padding: number;
7
7
  alignSelf: "center";
8
8
  };
9
- icon: {
10
- position: "absolute";
11
- };
12
9
  };
13
10
  export default _default;
14
11
  //# sourceMappingURL=styles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../src/composites/wui-qr-code/styles.ts"],"names":[],"mappings":";;;;;;;;;;;;AAGA,wBAWG"}
1
+ {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../src/composites/wui-qr-code/styles.ts"],"names":[],"mappings":";;;;;;;;;AAGA,wBAQG"}
@@ -1,13 +1,13 @@
1
1
  import { type ReactNode } from 'react';
2
2
  import type { ThemeMode, ThemeVariables } from '@reown/appkit-common-react-native';
3
3
  type ThemeContextType = {
4
- themeMode?: ThemeMode;
4
+ themeMode: ThemeMode;
5
5
  themeVariables?: ThemeVariables;
6
6
  };
7
7
  export declare const ThemeContext: import("react").Context<ThemeContextType | undefined>;
8
8
  interface ThemeProviderProps {
9
9
  children: ReactNode;
10
- themeMode?: ThemeMode;
10
+ themeMode: ThemeMode;
11
11
  themeVariables?: ThemeVariables;
12
12
  }
13
13
  export declare function ThemeProvider({ children, themeMode, themeVariables }: ThemeProviderProps): import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeContext.d.ts","sourceRoot":"","sources":["../../../src/context/ThemeContext.tsx"],"names":[],"mappings":"AACA,OAAO,EAAsC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3E,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAInF,KAAK,gBAAgB,GAAG;IACtB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC,CAAC;AAEF,eAAO,MAAM,YAAY,uDAAyD,CAAC;AAEnF,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAED,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,EAAE,kBAAkB,2CAIxF;AAED,wBAAgB,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoBvB"}
1
+ {"version":3,"file":"ThemeContext.d.ts","sourceRoot":"","sources":["../../../src/context/ThemeContext.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAsC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3E,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAInF,KAAK,gBAAgB,GAAG;IACtB,SAAS,EAAE,SAAS,CAAC;IACrB,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC,CAAC;AAEF,eAAO,MAAM,YAAY,uDAAyD,CAAC;AAEnF,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAED,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,EAAE,kBAAkB,2CAIxF;AAED,wBAAgB,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkBvB"}
@@ -1,5 +1,25 @@
1
- import type { ReactNode } from 'react';
1
+ export interface QRData {
2
+ rects: {
3
+ x: number;
4
+ y: number;
5
+ size: number;
6
+ fillType: 'dot' | 'edge';
7
+ }[];
8
+ circles: {
9
+ cx: number;
10
+ cy: number;
11
+ r: number;
12
+ }[];
13
+ lines: {
14
+ x1: number;
15
+ x2: number;
16
+ y1: number;
17
+ y2: number;
18
+ strokeWidth: number;
19
+ }[];
20
+ }
21
+ export declare function generateQRData(uri: string, size: number, logoSize: number, logoBorderRadius?: number): QRData;
2
22
  export declare const QRCodeUtil: {
3
- generate(uri: string, size: number, logoSize: number): ReactNode[];
23
+ generate: typeof generateQRData;
4
24
  };
5
25
  //# sourceMappingURL=QRCodeUtil.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"QRCodeUtil.d.ts","sourceRoot":"","sources":["../../../src/utils/QRCodeUtil.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAkCvC,eAAO,MAAM,UAAU;kBACP,MAAM,QAAQ,MAAM,YAAY,MAAM;CAqJrD,CAAC"}
1
+ {"version":3,"file":"QRCodeUtil.d.ts","sourceRoot":"","sources":["../../../src/utils/QRCodeUtil.tsx"],"names":[],"mappings":"AAOA,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE;QACL,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,KAAK,GAAG,MAAM,CAAC;KAC1B,EAAE,CAAC;IACJ,OAAO,EAAE;QACP,EAAE,EAAE,MAAM,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,CAAC,EAAE,MAAM,CAAC;KACX,EAAE,CAAC;IACJ,KAAK,EAAE;QACL,EAAE,EAAE,MAAM,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,WAAW,EAAE,MAAM,CAAC;KACrB,EAAE,CAAC;CACL;AAwQD,wBAAgB,cAAc,CAC5B,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,gBAAgB,CAAC,EAAE,MAAM,GACxB,MAAM,CAQR;AAED,eAAO,MAAM,UAAU;;CAEtB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reown/appkit-ui-react-native",
3
- "version": "2.0.1",
3
+ "version": "2.0.2",
4
4
  "main": "lib/commonjs/index.js",
5
5
  "types": "lib/typescript/index.d.ts",
6
6
  "module": "lib/module/index.js",
@@ -40,7 +40,7 @@
40
40
  "provenance": true
41
41
  },
42
42
  "dependencies": {
43
- "@reown/appkit-common-react-native": "2.0.1",
43
+ "@reown/appkit-common-react-native": "2.0.2",
44
44
  "polished": "4.3.1",
45
45
  "qrcode": "1.5.3"
46
46
  },
@@ -1,14 +1,13 @@
1
1
  import Svg, { ClipPath, Defs, G, Path, type SvgProps } from 'react-native-svg';
2
2
  const SvgWalletConnect = (props: SvgProps) => (
3
- <Svg fill="none" viewBox="0 0 96 67" {...props}>
3
+ <Svg fill="none" viewBox="0 0 37 23" {...props}>
4
4
  <Path
5
5
  fill={props.fill ?? '#fff'}
6
- d="M25.32 18.8a32.56 32.56 0 0 1 45.36 0l1.5 1.47c.63.62.63 1.61 0 2.22l-5.15 5.05c-.31.3-.82.3-1.14 0l-2.07-2.03a22.71 22.71 0 0 0-31.64 0l-2.22 2.18c-.31.3-.82.3-1.14 0l-5.15-5.05a1.55 1.55 0 0 1 0-2.22l1.65-1.62Zm56.02 10.44 4.59 4.5c.63.6.63 1.6 0 2.21l-20.7 20.26c-.62.61-1.63.61-2.26 0L48.28 41.83a.4.4 0 0 0-.56 0L33.03 56.21c-.63.61-1.64.61-2.27 0L10.07 35.95a1.55 1.55 0 0 1 0-2.22l4.59-4.5a1.63 1.63 0 0 1 2.27 0L31.6 43.63a.4.4 0 0 0 .57 0l14.69-14.38a1.63 1.63 0 0 1 2.26 0l14.69 14.38a.4.4 0 0 0 .57 0l14.68-14.38a1.63 1.63 0 0 1 2.27 0Z"
6
+ d="M26.6428 8.62163L29.8418 5.42265C22.6115 -1.80755 13.6277 -1.80755 6.39746 5.42265L9.59644 8.62163C15.0953 3.12281 21.1477 3.12281 26.6465 8.62163H26.6428Z"
7
7
  />
8
8
  <Path
9
- stroke="#000"
10
- strokeOpacity=".1"
11
- d="M25.67 19.15a32.06 32.06 0 0 1 44.66 0l1.5 1.48c.43.42.43 1.09 0 1.5l-5.15 5.05a.31.31 0 0 1-.44 0l-2.07-2.03a23.21 23.21 0 0 0-32.34 0l-2.22 2.18a.31.31 0 0 1-.44 0l-5.15-5.05a1.05 1.05 0 0 1 0-1.5l1.65-1.63ZM81 29.6l4.6 4.5c.42.41.42 1.09 0 1.5l-20.7 20.26c-.43.43-1.14.43-1.57 0L48.63 41.47a.9.9 0 0 0-1.26 0L32.68 55.85c-.43.43-1.14.43-1.57 0L10.42 35.6a1.05 1.05 0 0 1 0-1.5l4.59-4.5a1.13 1.13 0 0 1 1.57 0l14.68 14.38a.9.9 0 0 0 1.27 0l-.35-.35.35.35L47.22 29.6a1.13 1.13 0 0 1 1.56 0l14.7 14.38a.9.9 0 0 0 1.26 0L79.42 29.6a1.13 1.13 0 0 1 1.57 0Z"
9
+ fill={props.fill ?? '#fff'}
10
+ d="M25.5769 16.0749L18.1164 8.61435L10.6558 16.0749L3.19526 8.61435L0 11.8096L10.6558 22.4691L18.1164 15.0086L25.5769 22.4691L36.2328 11.8096L33.0375 8.61435L25.5769 16.0749Z"
12
11
  />
13
12
  </Svg>
14
13
  );