@ledgerhq/lumen-ui-rnative 0.1.24 → 0.1.26

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 (124) hide show
  1. package/dist/module/index.js +1 -0
  2. package/dist/module/index.js.map +1 -1
  3. package/dist/module/lib/Components/Avatar/Avatar.js +22 -23
  4. package/dist/module/lib/Components/Avatar/Avatar.js.map +1 -1
  5. package/dist/module/lib/Components/Avatar/Avatar.test.js +17 -23
  6. package/dist/module/lib/Components/Avatar/Avatar.test.js.map +1 -1
  7. package/dist/module/lib/Components/DotCount/DotCount.js +128 -0
  8. package/dist/module/lib/Components/DotCount/DotCount.js.map +1 -0
  9. package/dist/module/lib/Components/DotCount/DotCount.mdx +86 -0
  10. package/dist/module/lib/Components/DotCount/DotCount.stories.js +172 -0
  11. package/dist/module/lib/Components/DotCount/DotCount.stories.js.map +1 -0
  12. package/dist/module/lib/Components/DotCount/DotCount.test.js +174 -0
  13. package/dist/module/lib/Components/DotCount/DotCount.test.js.map +1 -0
  14. package/dist/module/lib/Components/DotCount/index.js +5 -0
  15. package/dist/module/lib/Components/DotCount/index.js.map +1 -0
  16. package/dist/module/lib/Components/DotCount/types.js +4 -0
  17. package/dist/module/lib/Components/DotCount/types.js.map +1 -0
  18. package/dist/module/lib/Components/DotIcon/DotIcon.js +134 -0
  19. package/dist/module/lib/Components/DotIcon/DotIcon.js.map +1 -0
  20. package/dist/module/lib/Components/DotIcon/DotIcon.mdx +56 -0
  21. package/dist/module/lib/Components/DotIcon/DotIcon.stories.js +217 -0
  22. package/dist/module/lib/Components/DotIcon/DotIcon.stories.js.map +1 -0
  23. package/dist/module/lib/Components/DotIcon/DotIcon.test.js +238 -0
  24. package/dist/module/lib/Components/DotIcon/DotIcon.test.js.map +1 -0
  25. package/dist/module/lib/Components/DotIcon/index.js +5 -0
  26. package/dist/module/lib/Components/DotIcon/index.js.map +1 -0
  27. package/dist/module/lib/Components/DotIcon/types.js +4 -0
  28. package/dist/module/lib/Components/DotIcon/types.js.map +1 -0
  29. package/dist/module/lib/Components/DotIndicator/DotIndicator.js +89 -0
  30. package/dist/module/lib/Components/DotIndicator/DotIndicator.js.map +1 -0
  31. package/dist/module/lib/Components/DotIndicator/DotIndicator.mdx +82 -0
  32. package/dist/module/lib/Components/DotIndicator/DotIndicator.stories.js +84 -0
  33. package/dist/module/lib/Components/DotIndicator/DotIndicator.stories.js.map +1 -0
  34. package/dist/module/lib/Components/DotIndicator/DotIndicator.test.js +136 -0
  35. package/dist/module/lib/Components/DotIndicator/DotIndicator.test.js.map +1 -0
  36. package/dist/module/lib/Components/DotIndicator/index.js +5 -0
  37. package/dist/module/lib/Components/DotIndicator/index.js.map +1 -0
  38. package/dist/module/lib/Components/DotIndicator/types.js +4 -0
  39. package/dist/module/lib/Components/DotIndicator/types.js.map +1 -0
  40. package/dist/module/lib/Components/DotSymbol/DotSymbol.js +29 -22
  41. package/dist/module/lib/Components/DotSymbol/DotSymbol.js.map +1 -1
  42. package/dist/module/lib/Components/DotSymbol/DotSymbol.stories.js +31 -9
  43. package/dist/module/lib/Components/DotSymbol/DotSymbol.stories.js.map +1 -1
  44. package/dist/module/lib/Components/MediaImage/MediaImage.js +2 -1
  45. package/dist/module/lib/Components/MediaImage/MediaImage.js.map +1 -1
  46. package/dist/module/lib/Components/MediaImage/MediaImage.stories.js +4 -0
  47. package/dist/module/lib/Components/MediaImage/MediaImage.stories.js.map +1 -1
  48. package/dist/module/lib/Components/Spinner/Spinner.js +6 -1
  49. package/dist/module/lib/Components/Spinner/Spinner.js.map +1 -1
  50. package/dist/module/lib/Components/TabBar/TabBar.js +16 -13
  51. package/dist/module/lib/Components/TabBar/TabBar.js.map +1 -1
  52. package/dist/module/lib/Components/Tag/Tag.js +2 -0
  53. package/dist/module/lib/Components/Tag/Tag.js.map +1 -1
  54. package/dist/module/lib/Components/Tag/Tag.stories.js +8 -1
  55. package/dist/module/lib/Components/Tag/Tag.stories.js.map +1 -1
  56. package/dist/module/lib/Components/index.js +3 -0
  57. package/dist/module/lib/Components/index.js.map +1 -1
  58. package/dist/typescript/src/index.d.ts +1 -0
  59. package/dist/typescript/src/index.d.ts.map +1 -1
  60. package/dist/typescript/src/lib/Components/Avatar/Avatar.d.ts +1 -1
  61. package/dist/typescript/src/lib/Components/Avatar/Avatar.d.ts.map +1 -1
  62. package/dist/typescript/src/lib/Components/DotCount/DotCount.d.ts +3 -0
  63. package/dist/typescript/src/lib/Components/DotCount/DotCount.d.ts.map +1 -0
  64. package/dist/typescript/src/lib/Components/DotCount/index.d.ts +3 -0
  65. package/dist/typescript/src/lib/Components/DotCount/index.d.ts.map +1 -0
  66. package/dist/typescript/src/lib/Components/DotCount/types.d.ts +40 -0
  67. package/dist/typescript/src/lib/Components/DotCount/types.d.ts.map +1 -0
  68. package/dist/typescript/src/lib/Components/DotIcon/DotIcon.d.ts +30 -0
  69. package/dist/typescript/src/lib/Components/DotIcon/DotIcon.d.ts.map +1 -0
  70. package/dist/typescript/src/lib/Components/DotIcon/index.d.ts +3 -0
  71. package/dist/typescript/src/lib/Components/DotIcon/index.d.ts.map +1 -0
  72. package/dist/typescript/src/lib/Components/DotIcon/types.d.ts +40 -0
  73. package/dist/typescript/src/lib/Components/DotIcon/types.d.ts.map +1 -0
  74. package/dist/typescript/src/lib/Components/DotIndicator/DotIndicator.d.ts +3 -0
  75. package/dist/typescript/src/lib/Components/DotIndicator/DotIndicator.d.ts.map +1 -0
  76. package/dist/typescript/src/lib/Components/DotIndicator/index.d.ts +3 -0
  77. package/dist/typescript/src/lib/Components/DotIndicator/index.d.ts.map +1 -0
  78. package/dist/typescript/src/lib/Components/DotIndicator/types.d.ts +25 -0
  79. package/dist/typescript/src/lib/Components/DotIndicator/types.d.ts.map +1 -0
  80. package/dist/typescript/src/lib/Components/DotSymbol/DotSymbol.d.ts.map +1 -1
  81. package/dist/typescript/src/lib/Components/MediaImage/MediaImage.d.ts.map +1 -1
  82. package/dist/typescript/src/lib/Components/MediaImage/types.d.ts +1 -1
  83. package/dist/typescript/src/lib/Components/MediaImage/types.d.ts.map +1 -1
  84. package/dist/typescript/src/lib/Components/Spinner/Spinner.d.ts +1 -1
  85. package/dist/typescript/src/lib/Components/Spinner/Spinner.d.ts.map +1 -1
  86. package/dist/typescript/src/lib/Components/TabBar/TabBar.d.ts.map +1 -1
  87. package/dist/typescript/src/lib/Components/Tag/Tag.d.ts.map +1 -1
  88. package/dist/typescript/src/lib/Components/Tag/types.d.ts +1 -1
  89. package/dist/typescript/src/lib/Components/Tag/types.d.ts.map +1 -1
  90. package/dist/typescript/src/lib/Components/index.d.ts +3 -0
  91. package/dist/typescript/src/lib/Components/index.d.ts.map +1 -1
  92. package/package.json +1 -1
  93. package/src/index.ts +1 -0
  94. package/src/lib/Components/Avatar/Avatar.test.tsx +17 -27
  95. package/src/lib/Components/Avatar/Avatar.tsx +24 -21
  96. package/src/lib/Components/DotCount/DotCount.mdx +86 -0
  97. package/src/lib/Components/DotCount/DotCount.stories.tsx +124 -0
  98. package/src/lib/Components/DotCount/DotCount.test.tsx +150 -0
  99. package/src/lib/Components/DotCount/DotCount.tsx +130 -0
  100. package/src/lib/Components/DotCount/index.ts +2 -0
  101. package/src/lib/Components/DotCount/types.ts +40 -0
  102. package/src/lib/Components/DotIcon/DotIcon.mdx +56 -0
  103. package/src/lib/Components/DotIcon/DotIcon.stories.tsx +154 -0
  104. package/src/lib/Components/DotIcon/DotIcon.test.tsx +224 -0
  105. package/src/lib/Components/DotIcon/DotIcon.tsx +146 -0
  106. package/src/lib/Components/DotIcon/index.ts +6 -0
  107. package/src/lib/Components/DotIcon/types.ts +44 -0
  108. package/src/lib/Components/DotIndicator/DotIndicator.mdx +82 -0
  109. package/src/lib/Components/DotIndicator/DotIndicator.stories.tsx +67 -0
  110. package/src/lib/Components/DotIndicator/DotIndicator.test.tsx +132 -0
  111. package/src/lib/Components/DotIndicator/DotIndicator.tsx +97 -0
  112. package/src/lib/Components/DotIndicator/index.ts +2 -0
  113. package/src/lib/Components/DotIndicator/types.ts +25 -0
  114. package/src/lib/Components/DotSymbol/DotSymbol.stories.tsx +26 -7
  115. package/src/lib/Components/DotSymbol/DotSymbol.tsx +22 -23
  116. package/src/lib/Components/MediaImage/MediaImage.stories.tsx +1 -0
  117. package/src/lib/Components/MediaImage/MediaImage.tsx +3 -1
  118. package/src/lib/Components/MediaImage/types.ts +1 -1
  119. package/src/lib/Components/Spinner/Spinner.tsx +6 -2
  120. package/src/lib/Components/TabBar/TabBar.tsx +17 -16
  121. package/src/lib/Components/Tag/Tag.stories.tsx +11 -1
  122. package/src/lib/Components/Tag/Tag.tsx +2 -0
  123. package/src/lib/Components/Tag/types.ts +8 -1
  124. package/src/lib/Components/index.ts +3 -0
@@ -0,0 +1,217 @@
1
+ "use strict";
2
+
3
+ import { ArrowDown, ArrowUp, Close, Link, Star } from "../../Symbols/index.js";
4
+ import { MediaImage } from "../MediaImage/index.js";
5
+ import { Spinner } from "../Spinner/index.js";
6
+ import { Box } from "../Utility/index.js";
7
+ import { DotIcon, mediaImageDotIconSizeMap } from "./DotIcon.js";
8
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
+ const meta = {
10
+ component: DotIcon,
11
+ title: 'Communication/DotIcon',
12
+ parameters: {
13
+ docs: {
14
+ source: {
15
+ language: 'tsx',
16
+ format: true,
17
+ type: 'code'
18
+ }
19
+ }
20
+ }
21
+ };
22
+ export default meta;
23
+ const parentSrc = 'https://crypto-icons.ledger.com/ADA.png';
24
+ export const Base = {
25
+ args: {
26
+ appearance: 'success',
27
+ icon: ArrowDown,
28
+ pin: 'bottom-end',
29
+ size: mediaImageDotIconSizeMap[48],
30
+ shape: 'circle',
31
+ children: /*#__PURE__*/_jsx(MediaImage, {
32
+ src: parentSrc,
33
+ alt: "Cardano",
34
+ size: 48,
35
+ shape: "circle"
36
+ })
37
+ }
38
+ };
39
+ export const PinShowcase = {
40
+ args: {
41
+ appearance: 'success',
42
+ icon: ArrowDown
43
+ },
44
+ render: () => /*#__PURE__*/_jsxs(Box, {
45
+ lx: {
46
+ flexDirection: 'row',
47
+ alignItems: 'center',
48
+ gap: 's32'
49
+ },
50
+ children: [/*#__PURE__*/_jsx(DotIcon, {
51
+ appearance: "success",
52
+ icon: ArrowDown,
53
+ pin: "bottom-end",
54
+ children: /*#__PURE__*/_jsx(MediaImage, {
55
+ src: parentSrc,
56
+ shape: "circle"
57
+ })
58
+ }), /*#__PURE__*/_jsx(DotIcon, {
59
+ appearance: "success",
60
+ icon: ArrowDown,
61
+ pin: "top-end",
62
+ children: /*#__PURE__*/_jsx(MediaImage, {
63
+ src: parentSrc,
64
+ shape: "circle"
65
+ })
66
+ }), /*#__PURE__*/_jsx(DotIcon, {
67
+ appearance: "success",
68
+ icon: ArrowDown,
69
+ pin: "bottom-start",
70
+ children: /*#__PURE__*/_jsx(MediaImage, {
71
+ src: parentSrc,
72
+ shape: "circle"
73
+ })
74
+ }), /*#__PURE__*/_jsx(DotIcon, {
75
+ appearance: "success",
76
+ icon: ArrowDown,
77
+ pin: "top-start",
78
+ children: /*#__PURE__*/_jsx(MediaImage, {
79
+ src: parentSrc,
80
+ shape: "circle"
81
+ })
82
+ })]
83
+ })
84
+ };
85
+ export const ShapeShowcase = {
86
+ args: {
87
+ appearance: 'muted',
88
+ icon: ArrowDown
89
+ },
90
+ render: () => /*#__PURE__*/_jsxs(Box, {
91
+ lx: {
92
+ flexDirection: 'row',
93
+ alignItems: 'center',
94
+ gap: 's48'
95
+ },
96
+ children: [/*#__PURE__*/_jsx(DotIcon, {
97
+ appearance: "muted",
98
+ icon: ArrowDown,
99
+ shape: "circle",
100
+ pin: "bottom-end",
101
+ children: /*#__PURE__*/_jsx(MediaImage, {
102
+ src: parentSrc,
103
+ size: 48,
104
+ shape: "circle"
105
+ })
106
+ }), /*#__PURE__*/_jsx(DotIcon, {
107
+ appearance: "muted",
108
+ icon: ArrowDown,
109
+ shape: "square",
110
+ pin: "bottom-end",
111
+ children: /*#__PURE__*/_jsx(MediaImage, {
112
+ src: parentSrc,
113
+ size: 48,
114
+ shape: "square"
115
+ })
116
+ })]
117
+ })
118
+ };
119
+ export const AppearanceShowcase = {
120
+ args: {
121
+ appearance: 'success',
122
+ icon: ArrowDown
123
+ },
124
+ render: () => /*#__PURE__*/_jsxs(Box, {
125
+ lx: {
126
+ flexDirection: 'row',
127
+ alignItems: 'center',
128
+ gap: 's32'
129
+ },
130
+ children: [/*#__PURE__*/_jsx(DotIcon, {
131
+ appearance: "success",
132
+ icon: ArrowDown,
133
+ size: mediaImageDotIconSizeMap[48],
134
+ pin: "bottom-end",
135
+ children: /*#__PURE__*/_jsx(MediaImage, {
136
+ src: parentSrc,
137
+ size: 48,
138
+ shape: "circle"
139
+ })
140
+ }), /*#__PURE__*/_jsx(DotIcon, {
141
+ appearance: "muted",
142
+ icon: ArrowUp,
143
+ size: mediaImageDotIconSizeMap[48],
144
+ pin: "bottom-end",
145
+ children: /*#__PURE__*/_jsx(MediaImage, {
146
+ src: parentSrc,
147
+ size: 48,
148
+ shape: "circle"
149
+ })
150
+ }), /*#__PURE__*/_jsx(DotIcon, {
151
+ appearance: "error",
152
+ icon: Close,
153
+ size: mediaImageDotIconSizeMap[48],
154
+ pin: "bottom-end",
155
+ children: /*#__PURE__*/_jsx(MediaImage, {
156
+ src: parentSrc,
157
+ size: 48,
158
+ shape: "circle"
159
+ })
160
+ })]
161
+ })
162
+ };
163
+ export const SizeShowcase = {
164
+ args: {
165
+ appearance: 'muted',
166
+ icon: Link
167
+ },
168
+ render: () => /*#__PURE__*/_jsxs(Box, {
169
+ lx: {
170
+ flexDirection: 'row',
171
+ alignItems: 'flex-end',
172
+ gap: 's24'
173
+ },
174
+ children: [/*#__PURE__*/_jsx(DotIcon, {
175
+ appearance: "muted",
176
+ icon: Link,
177
+ size: mediaImageDotIconSizeMap[40],
178
+ pin: "bottom-end",
179
+ children: /*#__PURE__*/_jsx(MediaImage, {
180
+ src: parentSrc,
181
+ size: 40,
182
+ shape: "circle"
183
+ })
184
+ }), /*#__PURE__*/_jsx(DotIcon, {
185
+ appearance: "success",
186
+ icon: Star,
187
+ size: mediaImageDotIconSizeMap[48],
188
+ pin: "bottom-end",
189
+ children: /*#__PURE__*/_jsx(MediaImage, {
190
+ src: parentSrc,
191
+ size: 48,
192
+ shape: "circle"
193
+ })
194
+ }), /*#__PURE__*/_jsx(DotIcon, {
195
+ appearance: "success",
196
+ icon: ArrowDown,
197
+ size: mediaImageDotIconSizeMap[56],
198
+ pin: "bottom-end",
199
+ children: /*#__PURE__*/_jsx(MediaImage, {
200
+ src: parentSrc,
201
+ size: 56,
202
+ shape: "circle"
203
+ })
204
+ }), /*#__PURE__*/_jsx(DotIcon, {
205
+ appearance: "muted",
206
+ icon: Spinner,
207
+ size: mediaImageDotIconSizeMap[64],
208
+ pin: "bottom-end",
209
+ children: /*#__PURE__*/_jsx(MediaImage, {
210
+ src: parentSrc,
211
+ size: 64,
212
+ shape: "circle"
213
+ })
214
+ })]
215
+ })
216
+ };
217
+ //# sourceMappingURL=DotIcon.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ArrowDown","ArrowUp","Close","Link","Star","MediaImage","Spinner","Box","DotIcon","mediaImageDotIconSizeMap","jsx","_jsx","jsxs","_jsxs","meta","component","title","parameters","docs","source","language","format","type","parentSrc","Base","args","appearance","icon","pin","size","shape","children","src","alt","PinShowcase","render","lx","flexDirection","alignItems","gap","ShapeShowcase","AppearanceShowcase","SizeShowcase"],"sourceRoot":"../../../../../src","sources":["lib/Components/DotIcon/DotIcon.stories.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,238 @@
1
+ "use strict";
2
+
3
+ import { describe, it, expect } from '@jest/globals';
4
+ import { ledgerLiveThemes } from '@ledgerhq/lumen-design-core';
5
+ import { render } from '@testing-library/react-native';
6
+ import { createRef } from 'react';
7
+ import { Text } from 'react-native';
8
+ import { ArrowDown } from "../../Symbols/index.js";
9
+ import { ThemeProvider } from "../ThemeProvider/ThemeProvider.js";
10
+ import { DotIcon } from "./DotIcon.js";
11
+ import { jsx as _jsx } from "react/jsx-runtime";
12
+ const {
13
+ colors,
14
+ sizes,
15
+ borderRadius
16
+ } = ledgerLiveThemes.dark;
17
+ const TestWrapper = ({
18
+ children
19
+ }) => /*#__PURE__*/_jsx(ThemeProvider, {
20
+ themes: ledgerLiveThemes,
21
+ colorScheme: "dark",
22
+ locale: "en",
23
+ children: children
24
+ });
25
+ describe('DotIcon Component', () => {
26
+ describe('Rendering', () => {
27
+ it('should render children', () => {
28
+ const {
29
+ getByText
30
+ } = render(/*#__PURE__*/_jsx(TestWrapper, {
31
+ children: /*#__PURE__*/_jsx(DotIcon, {
32
+ testID: "dot-icon",
33
+ appearance: "success",
34
+ icon: ArrowDown,
35
+ children: /*#__PURE__*/_jsx(Text, {
36
+ children: "Child"
37
+ })
38
+ })
39
+ }));
40
+ expect(getByText('Child')).toBeTruthy();
41
+ });
42
+ it('should render without children', () => {
43
+ const {
44
+ getByTestId
45
+ } = render(/*#__PURE__*/_jsx(TestWrapper, {
46
+ children: /*#__PURE__*/_jsx(DotIcon, {
47
+ testID: "dot-icon",
48
+ appearance: "success",
49
+ icon: ArrowDown
50
+ })
51
+ }));
52
+ expect(getByTestId('dot-icon')).toBeTruthy();
53
+ });
54
+ it('should have correct displayName', () => {
55
+ expect(DotIcon.displayName).toBe('DotIcon');
56
+ });
57
+ });
58
+ describe('Appearances', () => {
59
+ it.each([{
60
+ appearance: 'success',
61
+ expectedColor: colors.bg.successStrong
62
+ }, {
63
+ appearance: 'muted',
64
+ expectedColor: colors.bg.mutedStrong
65
+ }, {
66
+ appearance: 'error',
67
+ expectedColor: colors.bg.errorStrong
68
+ }])('should apply $appearance background color to the dot', ({
69
+ appearance,
70
+ expectedColor
71
+ }) => {
72
+ const {
73
+ getByTestId
74
+ } = render(/*#__PURE__*/_jsx(TestWrapper, {
75
+ children: /*#__PURE__*/_jsx(DotIcon, {
76
+ testID: "dot-icon",
77
+ appearance: appearance,
78
+ icon: ArrowDown
79
+ })
80
+ }));
81
+ const dotView = getByTestId('dot-icon-dot');
82
+ expect(dotView.props.style.backgroundColor).toBe(expectedColor);
83
+ });
84
+ });
85
+ describe('Sizes', () => {
86
+ it.each([{
87
+ size: 16,
88
+ expectedSize: sizes.s16
89
+ }, {
90
+ size: 20,
91
+ expectedSize: sizes.s20
92
+ }, {
93
+ size: 24,
94
+ expectedSize: sizes.s24
95
+ }])('should apply correct width and height for size $size', ({
96
+ size,
97
+ expectedSize
98
+ }) => {
99
+ const {
100
+ getByTestId
101
+ } = render(/*#__PURE__*/_jsx(TestWrapper, {
102
+ children: /*#__PURE__*/_jsx(DotIcon, {
103
+ testID: "dot-icon",
104
+ appearance: "success",
105
+ icon: ArrowDown,
106
+ size: size
107
+ })
108
+ }));
109
+ const dotView = getByTestId('dot-icon-dot');
110
+ expect(dotView.props.style.width).toBe(expectedSize);
111
+ expect(dotView.props.style.height).toBe(expectedSize);
112
+ });
113
+ });
114
+ describe('Pins', () => {
115
+ it.each([{
116
+ pin: 'bottom-end',
117
+ verticalKey: 'bottom',
118
+ horizontalKey: 'right'
119
+ }, {
120
+ pin: 'bottom-start',
121
+ verticalKey: 'bottom',
122
+ horizontalKey: 'left'
123
+ }, {
124
+ pin: 'top-end',
125
+ verticalKey: 'top',
126
+ horizontalKey: 'right'
127
+ }, {
128
+ pin: 'top-start',
129
+ verticalKey: 'top',
130
+ horizontalKey: 'left'
131
+ }])('should position dot at $pin', ({
132
+ pin,
133
+ verticalKey,
134
+ horizontalKey
135
+ }) => {
136
+ const {
137
+ getByTestId
138
+ } = render(/*#__PURE__*/_jsx(TestWrapper, {
139
+ children: /*#__PURE__*/_jsx(DotIcon, {
140
+ testID: "dot-icon",
141
+ appearance: "success",
142
+ icon: ArrowDown,
143
+ pin: pin
144
+ })
145
+ }));
146
+ const dotView = getByTestId('dot-icon-dot');
147
+ expect(dotView.props.style[verticalKey]).toBe(-3);
148
+ expect(dotView.props.style[horizontalKey]).toBe(-3);
149
+ });
150
+ });
151
+ describe('Shapes', () => {
152
+ it('should apply full border radius for circle shape', () => {
153
+ const {
154
+ getByTestId
155
+ } = render(/*#__PURE__*/_jsx(TestWrapper, {
156
+ children: /*#__PURE__*/_jsx(DotIcon, {
157
+ testID: "dot-icon",
158
+ appearance: "success",
159
+ icon: ArrowDown,
160
+ shape: "circle"
161
+ })
162
+ }));
163
+ const dotView = getByTestId('dot-icon-dot');
164
+ expect(dotView.props.style.borderRadius).toBe(borderRadius.full);
165
+ });
166
+ it.each([{
167
+ size: 16,
168
+ expectedRadius: 5
169
+ }, {
170
+ size: 20,
171
+ expectedRadius: 6
172
+ }, {
173
+ size: 24,
174
+ expectedRadius: 8
175
+ }])('should apply correct border radius for square shape at size $size', ({
176
+ size,
177
+ expectedRadius
178
+ }) => {
179
+ const {
180
+ getByTestId
181
+ } = render(/*#__PURE__*/_jsx(TestWrapper, {
182
+ children: /*#__PURE__*/_jsx(DotIcon, {
183
+ testID: "dot-icon",
184
+ appearance: "success",
185
+ icon: ArrowDown,
186
+ shape: "square",
187
+ size: size
188
+ })
189
+ }));
190
+ const dotView = getByTestId('dot-icon-dot');
191
+ expect(dotView.props.style.borderRadius).toBe(expectedRadius);
192
+ });
193
+ });
194
+ describe('Ref forwarding', () => {
195
+ it('should forward ref to the root element', () => {
196
+ const ref = /*#__PURE__*/createRef();
197
+ render(/*#__PURE__*/_jsx(TestWrapper, {
198
+ children: /*#__PURE__*/_jsx(DotIcon, {
199
+ ref: ref,
200
+ appearance: "success",
201
+ icon: ArrowDown
202
+ })
203
+ }));
204
+ expect(ref.current).not.toBeNull();
205
+ });
206
+ });
207
+ describe('Styling', () => {
208
+ it('should apply custom styles', () => {
209
+ const {
210
+ getByTestId
211
+ } = render(/*#__PURE__*/_jsx(TestWrapper, {
212
+ children: /*#__PURE__*/_jsx(DotIcon, {
213
+ testID: "dot-icon",
214
+ appearance: "success",
215
+ icon: ArrowDown,
216
+ style: {
217
+ marginTop: 10
218
+ }
219
+ })
220
+ }));
221
+ const root = getByTestId('dot-icon');
222
+ expect(root.props.style.marginTop).toBe(10);
223
+ });
224
+ it('should pass additional props', () => {
225
+ const {
226
+ getByTestId
227
+ } = render(/*#__PURE__*/_jsx(TestWrapper, {
228
+ children: /*#__PURE__*/_jsx(DotIcon, {
229
+ testID: "custom-dot",
230
+ appearance: "success",
231
+ icon: ArrowDown
232
+ })
233
+ }));
234
+ expect(getByTestId('custom-dot')).toBeTruthy();
235
+ });
236
+ });
237
+ });
238
+ //# sourceMappingURL=DotIcon.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["describe","it","expect","ledgerLiveThemes","render","createRef","Text","ArrowDown","ThemeProvider","DotIcon","jsx","_jsx","colors","sizes","borderRadius","dark","TestWrapper","children","themes","colorScheme","locale","getByText","testID","appearance","icon","toBeTruthy","getByTestId","displayName","toBe","each","expectedColor","bg","successStrong","mutedStrong","errorStrong","dotView","props","style","backgroundColor","size","expectedSize","s16","s20","s24","width","height","pin","verticalKey","horizontalKey","shape","full","expectedRadius","ref","current","not","toBeNull","marginTop","root"],"sourceRoot":"../../../../../src","sources":["lib/Components/DotIcon/DotIcon.test.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ export { DotIcon, mediaImageDotIconSizeMap, spotDotIconSizeMap } from "./DotIcon.js";
4
+ export * from "./types.js";
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DotIcon","mediaImageDotIconSizeMap","spotDotIconSizeMap"],"sourceRoot":"../../../../../src","sources":["lib/Components/DotIcon/index.ts"],"mappings":";;AAAA,SACEA,OAAO,EACPC,wBAAwB,EACxBC,kBAAkB,QACb,cAAW;AAClB,cAAc,YAAS","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export {};
4
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../../src","sources":["lib/Components/DotIcon/types.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+
3
+ import { useDisabledContext } from '@ledgerhq/lumen-utils-shared';
4
+ import { StyleSheet } from 'react-native';
5
+ import { useStyleSheet } from "../../../styles/index.js";
6
+ import { Box } from "../Utility/index.js";
7
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
8
+ export function DotIndicator({
9
+ size = 'sm',
10
+ appearance = 'base',
11
+ disabled: disabledProp = false,
12
+ lx = {},
13
+ style,
14
+ children,
15
+ accessibilityLabel,
16
+ ref,
17
+ ...props
18
+ }) {
19
+ const disabled = useDisabledContext({
20
+ consumerName: 'DotIndicator',
21
+ mergeWith: {
22
+ disabled: disabledProp
23
+ }
24
+ });
25
+ const styles = useStyles({
26
+ size,
27
+ appearance,
28
+ disabled,
29
+ pinned: !!children
30
+ });
31
+ return /*#__PURE__*/_jsxs(Box, {
32
+ ref: ref,
33
+ lx: lx,
34
+ style: StyleSheet.flatten([children ? {
35
+ position: 'relative'
36
+ } : undefined, style]),
37
+ ...props,
38
+ children: [/*#__PURE__*/_jsx(Box, {
39
+ style: styles.container,
40
+ accessibilityRole: "image",
41
+ accessibilityLabel: accessibilityLabel,
42
+ accessible: !!accessibilityLabel,
43
+ pointerEvents: "none"
44
+ }), children]
45
+ });
46
+ }
47
+ const useStyles = ({
48
+ size,
49
+ appearance,
50
+ disabled,
51
+ pinned
52
+ }) => {
53
+ return useStyleSheet(t => {
54
+ const sizeMap = {
55
+ xs: t.sizes.s10,
56
+ sm: t.sizes.s12,
57
+ md: t.sizes.s16
58
+ };
59
+ const bgColorMap = {
60
+ base: {
61
+ backgroundColor: t.colors.bg.interactive
62
+ },
63
+ red: {
64
+ backgroundColor: t.colors.bg.errorStrong
65
+ }
66
+ };
67
+ return {
68
+ container: {
69
+ height: sizeMap[size],
70
+ aspectRatio: 1,
71
+ alignItems: 'center',
72
+ justifyContent: 'center',
73
+ borderRadius: t.borderRadius.full,
74
+ ...(pinned && {
75
+ position: 'absolute',
76
+ top: t.spacings.s0,
77
+ right: t.spacings.s0,
78
+ zIndex: 1
79
+ }),
80
+ ...(disabled ? {
81
+ backgroundColor: t.colors.bg.disabled
82
+ } : {
83
+ ...bgColorMap[appearance]
84
+ })
85
+ }
86
+ };
87
+ }, [size, appearance, disabled, pinned]);
88
+ };
89
+ //# sourceMappingURL=DotIndicator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useDisabledContext","StyleSheet","useStyleSheet","Box","jsx","_jsx","jsxs","_jsxs","DotIndicator","size","appearance","disabled","disabledProp","lx","style","children","accessibilityLabel","ref","props","consumerName","mergeWith","styles","useStyles","pinned","flatten","position","undefined","container","accessibilityRole","accessible","pointerEvents","t","sizeMap","xs","sizes","s10","sm","s12","md","s16","bgColorMap","base","backgroundColor","colors","bg","interactive","red","errorStrong","height","aspectRatio","alignItems","justifyContent","borderRadius","full","top","spacings","s0","right","zIndex"],"sourceRoot":"../../../../../src","sources":["lib/Components/DotIndicator/DotIndicator.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,82 @@
1
+ import { Meta, Canvas, Controls } from '@storybook/addon-docs/blocks';
2
+ import * as DotIndicatorStories from './DotIndicator.stories';
3
+ import { CustomTabs, Tab } from '../../../../.storybook/components';
4
+
5
+ <Meta title='Communication/DotIndicator' of={DotIndicatorStories} />
6
+
7
+ # DotIndicator
8
+
9
+ <CustomTabs>
10
+ <Tab label="Overview">
11
+
12
+ ## Introduction
13
+
14
+ DotIndicator is a small colored dot used to signal status or draw attention without displaying a number. It supports two appearances (`base` and `red`) and can be pinned to the top-right of a child element.
15
+
16
+ > View in [Figma](https://www.figma.com/design/JxaLVMTWirCpU0rsbZ30k7/2.-Components-Library?node-id=16470-25597).
17
+
18
+ ## Properties
19
+
20
+ <Canvas of={DotIndicatorStories.Base} />
21
+ <Controls of={DotIndicatorStories.Base} />
22
+
23
+ ## Sizes
24
+
25
+ DotIndicator comes in three sizes:
26
+
27
+ - **xs** - compact dot for tight layouts.
28
+ - **sm** (default) - standard dot for most use cases.
29
+ - **md** - larger dot for prominent indicators.
30
+
31
+ <Canvas of={DotIndicatorStories.SizeShowcase} />
32
+
33
+ ## Appearances
34
+
35
+ Two color schemes are available:
36
+
37
+ - **base** (default) - neutral dot for general-purpose indicators.
38
+ - **red** - high-visibility dot, typically used for unread or alert states.
39
+
40
+ <Canvas of={DotIndicatorStories.AppearanceShowcase} />
41
+
42
+ ## With Children
43
+
44
+ When wrapping a child element, the dot pins itself to the top-right corner.
45
+
46
+ <Canvas of={DotIndicatorStories.WithChildren} />
47
+
48
+ </Tab>
49
+ <Tab label="Implementation">
50
+
51
+ ## Setup
52
+
53
+ Install and set up the library with our [Setup Guide →](?path=/docs/getting-started-setup--docs).
54
+
55
+ ## Basic Usage
56
+
57
+ ```tsx
58
+ import { DotIndicator } from '@ledgerhq/lumen-ui-rnative';
59
+
60
+ function MyComponent() {
61
+ return <DotIndicator appearance="red" />;
62
+ }
63
+ ```
64
+
65
+ ### Pinned to a child
66
+
67
+ ```tsx
68
+ <DotIndicator appearance="red">
69
+ <Button size="sm">Submit</Button>
70
+ </DotIndicator>
71
+ ```
72
+
73
+ ### Accessibility
74
+
75
+ Pass `accessibilityLabel` to provide screen reader context:
76
+
77
+ ```tsx
78
+ <DotIndicator accessibilityLabel="New notifications" />
79
+ ```
80
+
81
+ </Tab>
82
+ </CustomTabs>