@proulr/sdui-components 0.1.65 → 0.1.67

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 (172) hide show
  1. package/assets/icons/arrow-down-right.svg +8 -0
  2. package/assets/icons/arrow-right.svg +8 -0
  3. package/assets/icons/arrow-up-right.svg +8 -0
  4. package/assets/icons/attachment.svg +8 -0
  5. package/assets/icons/back.svg +8 -0
  6. package/assets/icons/bell.svg +10 -0
  7. package/assets/icons/bookmark.svg +8 -0
  8. package/assets/icons/boost.svg +11 -0
  9. package/assets/icons/camera.svg +10 -0
  10. package/assets/icons/chat.svg +11 -0
  11. package/assets/icons/check.svg +8 -0
  12. package/assets/icons/chevron-down.svg +8 -0
  13. package/assets/icons/chevron-right.svg +8 -0
  14. package/assets/icons/close.svg +8 -0
  15. package/assets/icons/communities.svg +10 -0
  16. package/assets/icons/copy.svg +11 -0
  17. package/assets/icons/crop.svg +10 -0
  18. package/assets/icons/download.svg +9 -0
  19. package/assets/icons/edit.svg +10 -0
  20. package/assets/icons/events.svg +15 -0
  21. package/assets/icons/fire.svg +8 -0
  22. package/assets/icons/flash.svg +8 -0
  23. package/assets/icons/flip-camera.svg +12 -0
  24. package/assets/icons/followers.svg +13 -0
  25. package/assets/icons/gallery.svg +12 -0
  26. package/assets/icons/gift.svg +11 -0
  27. package/assets/icons/globe.svg +10 -0
  28. package/assets/icons/heart-filled.svg +8 -0
  29. package/assets/icons/heart.svg +8 -0
  30. package/assets/icons/hourglass.svg +13 -0
  31. package/assets/icons/hunt.svg +12 -0
  32. package/assets/icons/incognito.svg +11 -0
  33. package/assets/icons/info.svg +10 -0
  34. package/assets/icons/list.svg +13 -0
  35. package/assets/icons/location.svg +8 -0
  36. package/assets/icons/lock.svg +11 -0
  37. package/assets/icons/mention.svg +9 -0
  38. package/assets/icons/mic.svg +10 -0
  39. package/assets/icons/overflow.svg +12 -0
  40. package/assets/icons/pause.svg +10 -0
  41. package/assets/icons/pending.svg +10 -0
  42. package/assets/icons/play.svg +8 -0
  43. package/assets/icons/plus.svg +8 -0
  44. package/assets/icons/poll.svg +9 -0
  45. package/assets/icons/profile.svg +10 -0
  46. package/assets/icons/publish.svg +9 -0
  47. package/assets/icons/radio-unchecked.svg +8 -0
  48. package/assets/icons/reply.svg +9 -0
  49. package/assets/icons/repost.svg +11 -0
  50. package/assets/icons/right-now.svg +14 -0
  51. package/assets/icons/search.svg +10 -0
  52. package/assets/icons/send.svg +9 -0
  53. package/assets/icons/settings.svg +8 -0
  54. package/assets/icons/share.svg +13 -0
  55. package/assets/icons/shield.svg +9 -0
  56. package/assets/icons/sign-out.svg +9 -0
  57. package/assets/icons/signal.svg +8 -0
  58. package/assets/icons/star.svg +8 -0
  59. package/assets/icons/story-effects.svg +12 -0
  60. package/assets/icons/story-mention.svg +10 -0
  61. package/assets/icons/story-music.svg +10 -0
  62. package/assets/icons/story-sticker.svg +11 -0
  63. package/assets/icons/story-text.svg +9 -0
  64. package/assets/icons/story.svg +10 -0
  65. package/assets/icons/tab-chat.svg +11 -0
  66. package/assets/icons/tab-discover.svg +11 -0
  67. package/assets/icons/tab-flash.svg +8 -0
  68. package/assets/icons/tab-random.svg +13 -0
  69. package/assets/icons/tab-vibes.svg +8 -0
  70. package/assets/icons/thumbs-up-filled.svg +8 -0
  71. package/assets/icons/thumbs-up.svg +9 -0
  72. package/assets/icons/trash.svg +10 -0
  73. package/assets/icons/travel.svg +11 -0
  74. package/assets/icons/video.svg +11 -0
  75. package/assets/icons/visibility-off.svg +10 -0
  76. package/assets/icons/visibility.svg +9 -0
  77. package/assets/icons/volume-off.svg +9 -0
  78. package/assets/icons/volume-on.svg +10 -0
  79. package/assets/icons/warning.svg +10 -0
  80. package/package.json +4 -2
  81. package/src/catalog/catalog.test.ts +3 -1
  82. package/src/renderer/theme/chrome-layout.ts +1 -1
  83. package/src/renderer/ui/app-icon-glyph-props.ts +5 -0
  84. package/src/renderer/ui/app-icon.test.ts +45 -0
  85. package/src/renderer/ui/app-icon.tsx +6 -166
  86. package/src/renderer/ui/compose-recent-media-grid.tsx +2 -2
  87. package/src/renderer/ui/compose-screen-header.tsx +2 -2
  88. package/src/renderer/ui/compose-visibility-row.tsx +2 -2
  89. package/src/renderer/ui/generated/arrow-down-right.tsx +16 -0
  90. package/src/renderer/ui/generated/arrow-right.tsx +16 -0
  91. package/src/renderer/ui/generated/arrow-up-right.tsx +16 -0
  92. package/src/renderer/ui/generated/attachment.tsx +16 -0
  93. package/src/renderer/ui/generated/back.tsx +16 -0
  94. package/src/renderer/ui/generated/bell.tsx +18 -0
  95. package/src/renderer/ui/generated/bookmark.tsx +16 -0
  96. package/src/renderer/ui/generated/boost.tsx +19 -0
  97. package/src/renderer/ui/generated/camera.tsx +18 -0
  98. package/src/renderer/ui/generated/chat.tsx +19 -0
  99. package/src/renderer/ui/generated/check.tsx +16 -0
  100. package/src/renderer/ui/generated/chevron-down.tsx +16 -0
  101. package/src/renderer/ui/generated/chevron-right.tsx +16 -0
  102. package/src/renderer/ui/generated/close.tsx +16 -0
  103. package/src/renderer/ui/generated/communities.tsx +18 -0
  104. package/src/renderer/ui/generated/copy.tsx +19 -0
  105. package/src/renderer/ui/generated/crop.tsx +18 -0
  106. package/src/renderer/ui/generated/download.tsx +17 -0
  107. package/src/renderer/ui/generated/edit.tsx +18 -0
  108. package/src/renderer/ui/generated/events.tsx +23 -0
  109. package/src/renderer/ui/generated/fire.tsx +16 -0
  110. package/src/renderer/ui/generated/flash.tsx +16 -0
  111. package/src/renderer/ui/generated/flip-camera.tsx +20 -0
  112. package/src/renderer/ui/generated/followers.tsx +21 -0
  113. package/src/renderer/ui/generated/gallery.tsx +20 -0
  114. package/src/renderer/ui/generated/gift.tsx +19 -0
  115. package/src/renderer/ui/generated/globe.tsx +18 -0
  116. package/src/renderer/ui/generated/heart-filled.tsx +16 -0
  117. package/src/renderer/ui/generated/heart.tsx +16 -0
  118. package/src/renderer/ui/generated/hourglass.tsx +21 -0
  119. package/src/renderer/ui/generated/hunt.tsx +20 -0
  120. package/src/renderer/ui/generated/incognito.tsx +19 -0
  121. package/src/renderer/ui/generated/index.ts +248 -0
  122. package/src/renderer/ui/generated/info.tsx +18 -0
  123. package/src/renderer/ui/generated/list.tsx +21 -0
  124. package/src/renderer/ui/generated/location.tsx +16 -0
  125. package/src/renderer/ui/generated/lock.tsx +19 -0
  126. package/src/renderer/ui/generated/mention.tsx +17 -0
  127. package/src/renderer/ui/generated/mic.tsx +18 -0
  128. package/src/renderer/ui/generated/overflow.tsx +20 -0
  129. package/src/renderer/ui/generated/pause.tsx +18 -0
  130. package/src/renderer/ui/generated/pending.tsx +18 -0
  131. package/src/renderer/ui/generated/play.tsx +16 -0
  132. package/src/renderer/ui/generated/plus.tsx +16 -0
  133. package/src/renderer/ui/generated/poll.tsx +17 -0
  134. package/src/renderer/ui/generated/profile.tsx +18 -0
  135. package/src/renderer/ui/generated/publish.tsx +17 -0
  136. package/src/renderer/ui/generated/radio-unchecked.tsx +16 -0
  137. package/src/renderer/ui/generated/reply.tsx +17 -0
  138. package/src/renderer/ui/generated/repost.tsx +19 -0
  139. package/src/renderer/ui/generated/right-now.tsx +22 -0
  140. package/src/renderer/ui/generated/search.tsx +18 -0
  141. package/src/renderer/ui/generated/send.tsx +17 -0
  142. package/src/renderer/ui/generated/settings.tsx +16 -0
  143. package/src/renderer/ui/generated/share.tsx +21 -0
  144. package/src/renderer/ui/generated/shield.tsx +17 -0
  145. package/src/renderer/ui/generated/sign-out.tsx +17 -0
  146. package/src/renderer/ui/generated/signal.tsx +16 -0
  147. package/src/renderer/ui/generated/star.tsx +16 -0
  148. package/src/renderer/ui/generated/story-effects.tsx +20 -0
  149. package/src/renderer/ui/generated/story-mention.tsx +18 -0
  150. package/src/renderer/ui/generated/story-music.tsx +18 -0
  151. package/src/renderer/ui/generated/story-sticker.tsx +19 -0
  152. package/src/renderer/ui/generated/story-text.tsx +17 -0
  153. package/src/renderer/ui/generated/story.tsx +18 -0
  154. package/src/renderer/ui/generated/tab-chat.tsx +19 -0
  155. package/src/renderer/ui/generated/tab-discover.tsx +19 -0
  156. package/src/renderer/ui/generated/tab-flash.tsx +16 -0
  157. package/src/renderer/ui/generated/tab-random.tsx +21 -0
  158. package/src/renderer/ui/generated/tab-vibes.tsx +16 -0
  159. package/src/renderer/ui/generated/thumbs-up-filled.tsx +16 -0
  160. package/src/renderer/ui/generated/thumbs-up.tsx +17 -0
  161. package/src/renderer/ui/generated/trash.tsx +18 -0
  162. package/src/renderer/ui/generated/travel.tsx +19 -0
  163. package/src/renderer/ui/generated/video.tsx +19 -0
  164. package/src/renderer/ui/generated/visibility-off.tsx +18 -0
  165. package/src/renderer/ui/generated/visibility.tsx +17 -0
  166. package/src/renderer/ui/generated/volume-off.tsx +17 -0
  167. package/src/renderer/ui/generated/volume-on.tsx +18 -0
  168. package/src/renderer/ui/generated/warning.tsx +18 -0
  169. package/src/renderer/ui/index.ts +2 -85
  170. package/src/renderer/ui/story-compose-header.tsx +2 -2
  171. package/src/renderer/ui/app-glyphs.tsx +0 -2082
  172. package/src/renderer/ui/compose-glyphs.tsx +0 -439
@@ -1,439 +0,0 @@
1
- import { StyleSheet, Text, View } from 'react-native';
2
- import { m3Colors } from '../theme/proulr-theme';
3
-
4
- type GlyphProps = {
5
- color?: string;
6
- size?: number;
7
- };
8
-
9
- export function ComposeCloseGlyph({ color = m3Colors.onSurface, size = 18 }: GlyphProps) {
10
- return (
11
- <View style={{ width: size, height: size, alignItems: 'center', justifyContent: 'center' }}>
12
- <View style={[styles.diag, { width: size, backgroundColor: color, transform: [{ rotate: '45deg' }] }]} />
13
- <View style={[styles.diag, { width: size, backgroundColor: color, transform: [{ rotate: '-45deg' }] }]} />
14
- </View>
15
- );
16
- }
17
-
18
- export function ComposeCameraGlyph({ color = m3Colors.primary, size = 24 }: GlyphProps) {
19
- const bodyW = size * 0.92;
20
- const bodyH = size * 0.62;
21
- const lens = size * 0.28;
22
- return (
23
- <View style={{ width: size, height: size, alignItems: 'center', justifyContent: 'center' }}>
24
- <View
25
- style={{
26
- width: bodyW,
27
- height: bodyH,
28
- borderRadius: size * 0.12,
29
- borderWidth: 1.8,
30
- borderColor: color,
31
- alignItems: 'center',
32
- justifyContent: 'center',
33
- }}
34
- >
35
- <View
36
- style={{
37
- width: lens,
38
- height: lens,
39
- borderRadius: lens / 2,
40
- borderWidth: 1.8,
41
- borderColor: color,
42
- }}
43
- />
44
- </View>
45
- <View
46
- style={{
47
- position: 'absolute',
48
- top: size * 0.14,
49
- right: size * 0.18,
50
- width: size * 0.16,
51
- height: size * 0.1,
52
- borderRadius: 2,
53
- backgroundColor: color,
54
- }}
55
- />
56
- </View>
57
- );
58
- }
59
-
60
- export function ComposeGalleryGlyph({ color = m3Colors.primary, size = 24 }: GlyphProps) {
61
- const frame = size * 0.88;
62
- return (
63
- <View style={{ width: size, height: size, alignItems: 'center', justifyContent: 'center' }}>
64
- <View
65
- style={{
66
- width: frame,
67
- height: frame,
68
- borderRadius: size * 0.14,
69
- borderWidth: 1.8,
70
- borderColor: color,
71
- overflow: 'hidden',
72
- }}
73
- >
74
- <View
75
- style={{
76
- position: 'absolute',
77
- bottom: frame * 0.12,
78
- left: frame * 0.1,
79
- width: frame * 0.42,
80
- height: frame * 0.22,
81
- borderRadius: 2,
82
- backgroundColor: color,
83
- }}
84
- />
85
- <View
86
- style={{
87
- position: 'absolute',
88
- top: frame * 0.16,
89
- right: frame * 0.14,
90
- width: frame * 0.18,
91
- height: frame * 0.18,
92
- borderRadius: frame * 0.09,
93
- backgroundColor: color,
94
- }}
95
- />
96
- </View>
97
- </View>
98
- );
99
- }
100
-
101
- export function ComposeVideoGlyph({ color = m3Colors.primary, size = 24 }: GlyphProps) {
102
- const frame = size * 0.9;
103
- return (
104
- <View style={{ width: size, height: size, alignItems: 'center', justifyContent: 'center' }}>
105
- <View
106
- style={{
107
- width: frame,
108
- height: frame * 0.72,
109
- borderRadius: size * 0.1,
110
- borderWidth: 1.8,
111
- borderColor: color,
112
- alignItems: 'center',
113
- justifyContent: 'center',
114
- }}
115
- >
116
- <View
117
- style={{
118
- width: 0,
119
- height: 0,
120
- borderTopWidth: size * 0.14,
121
- borderBottomWidth: size * 0.14,
122
- borderLeftWidth: size * 0.22,
123
- borderTopColor: 'transparent',
124
- borderBottomColor: 'transparent',
125
- borderLeftColor: color,
126
- marginLeft: size * 0.04,
127
- }}
128
- />
129
- </View>
130
- </View>
131
- );
132
- }
133
-
134
- export function ComposeGlobeGlyph({ color = m3Colors.primary, size = 16 }: GlyphProps) {
135
- const diameter = size;
136
- return (
137
- <View
138
- style={{
139
- width: diameter,
140
- height: diameter,
141
- borderRadius: diameter / 2,
142
- borderWidth: 1.4,
143
- borderColor: color,
144
- alignItems: 'center',
145
- justifyContent: 'center',
146
- }}
147
- >
148
- <View style={{ width: diameter * 0.55, height: 1.2, backgroundColor: color }} />
149
- <View
150
- style={{
151
- position: 'absolute',
152
- width: diameter * 0.42,
153
- height: diameter * 0.72,
154
- borderRadius: diameter * 0.21,
155
- borderWidth: 1.2,
156
- borderColor: color,
157
- }}
158
- />
159
- </View>
160
- );
161
- }
162
-
163
- /** Mala / viagem — chrome badge. */
164
- export function ComposeTravelGlyph({ color = m3Colors.primary, size = 24 }: GlyphProps) {
165
- const stroke = Math.max(1.4, size * 0.07);
166
- const bodyW = size * 0.72;
167
- const bodyH = size * 0.52;
168
- const handleW = size * 0.34;
169
- const handleH = size * 0.18;
170
- return (
171
- <View style={{ width: size, height: size, alignItems: 'center', justifyContent: 'center' }}>
172
- <View
173
- style={{
174
- width: handleW,
175
- height: handleH,
176
- borderTopLeftRadius: handleW * 0.35,
177
- borderTopRightRadius: handleW * 0.35,
178
- borderWidth: stroke,
179
- borderBottomWidth: 0,
180
- borderColor: color,
181
- marginBottom: -stroke,
182
- }}
183
- />
184
- <View
185
- style={{
186
- width: bodyW,
187
- height: bodyH,
188
- borderRadius: size * 0.1,
189
- borderWidth: stroke,
190
- borderColor: color,
191
- alignItems: 'center',
192
- justifyContent: 'center',
193
- }}
194
- >
195
- <View style={{ width: stroke, height: bodyH * 0.55, backgroundColor: color, borderRadius: 1 }} />
196
- </View>
197
- </View>
198
- );
199
- }
200
-
201
- export function ComposeFollowersGlyph({ color = m3Colors.onPrimary, size = 20 }: GlyphProps) {
202
- const head = size * 0.22;
203
- return (
204
- <View style={{ width: size, height: size, alignItems: 'center', justifyContent: 'center' }}>
205
- <View
206
- style={{
207
- width: head,
208
- height: head,
209
- borderRadius: head / 2,
210
- backgroundColor: color,
211
- marginBottom: 1,
212
- }}
213
- />
214
- <View
215
- style={{
216
- width: size * 0.52,
217
- height: size * 0.24,
218
- borderTopLeftRadius: size * 0.26,
219
- borderTopRightRadius: size * 0.26,
220
- backgroundColor: color,
221
- }}
222
- />
223
- <View
224
- style={{
225
- position: 'absolute',
226
- right: size * 0.08,
227
- bottom: size * 0.18,
228
- width: size * 0.22,
229
- height: size * 0.22,
230
- borderRadius: size * 0.11,
231
- borderWidth: 1.4,
232
- borderColor: color,
233
- alignItems: 'center',
234
- justifyContent: 'center',
235
- }}
236
- >
237
- <View
238
- style={{
239
- width: 0,
240
- height: 0,
241
- borderLeftWidth: size * 0.05,
242
- borderRightWidth: size * 0.05,
243
- borderBottomWidth: size * 0.08,
244
- borderLeftColor: 'transparent',
245
- borderRightColor: 'transparent',
246
- borderBottomColor: color,
247
- transform: [{ rotate: '-90deg' }],
248
- marginLeft: size * 0.01,
249
- }}
250
- />
251
- </View>
252
- </View>
253
- );
254
- }
255
-
256
- export function ComposeFollowingGlyph({ color = m3Colors.onPrimary, size = 20 }: GlyphProps) {
257
- const head = size * 0.22;
258
- return (
259
- <View style={{ width: size, height: size, alignItems: 'center', justifyContent: 'center' }}>
260
- <View
261
- style={{
262
- width: head,
263
- height: head,
264
- borderRadius: head / 2,
265
- backgroundColor: color,
266
- marginBottom: 1,
267
- }}
268
- />
269
- <View
270
- style={{
271
- width: size * 0.52,
272
- height: size * 0.24,
273
- borderTopLeftRadius: size * 0.26,
274
- borderTopRightRadius: size * 0.26,
275
- backgroundColor: color,
276
- }}
277
- />
278
- <View
279
- style={{
280
- position: 'absolute',
281
- right: size * 0.1,
282
- bottom: size * 0.2,
283
- width: size * 0.18,
284
- height: size * 0.1,
285
- borderBottomWidth: 1.6,
286
- borderRightWidth: 1.6,
287
- borderColor: color,
288
- transform: [{ rotate: '45deg' }],
289
- }}
290
- />
291
- </View>
292
- );
293
- }
294
-
295
- export function ComposeMentionGlyph({ color = m3Colors.onPrimary, size = 20 }: GlyphProps) {
296
- return (
297
- <View style={{ width: size, height: size, alignItems: 'center', justifyContent: 'center' }}>
298
- <Text style={{ color, fontSize: size * 0.72, fontWeight: '700', lineHeight: size * 0.8 }}>@</Text>
299
- </View>
300
- );
301
- }
302
-
303
- export function ComposeTrashGlyph({ color = m3Colors.primary, size = 22 }: GlyphProps) {
304
- const binW = size * 0.62;
305
- const binH = size * 0.58;
306
- return (
307
- <View style={{ width: size, height: size, alignItems: 'center', justifyContent: 'center' }}>
308
- <View style={{ width: binW * 1.1, height: 1.6, backgroundColor: color, marginBottom: 2 }} />
309
- <View
310
- style={{
311
- width: binW,
312
- height: binH,
313
- borderBottomLeftRadius: 3,
314
- borderBottomRightRadius: 3,
315
- borderWidth: 1.6,
316
- borderTopWidth: 0,
317
- borderColor: color,
318
- }}
319
- />
320
- <View
321
- style={{
322
- position: 'absolute',
323
- top: size * 0.2,
324
- width: binW * 0.42,
325
- height: 1.6,
326
- backgroundColor: color,
327
- }}
328
- />
329
- </View>
330
- );
331
- }
332
-
333
- export function ComposePostGlyph({ color = m3Colors.onPrimary, size = 24 }: GlyphProps) {
334
- const stroke = Math.max(1.8, size * 0.075);
335
- const frame = size * 0.74;
336
- const plusLen = frame * 0.42;
337
- return (
338
- <View style={{ width: size, height: size, alignItems: 'center', justifyContent: 'center' }}>
339
- <View
340
- style={{
341
- width: frame,
342
- height: frame,
343
- borderRadius: size * 0.12,
344
- borderWidth: stroke,
345
- borderColor: color,
346
- alignItems: 'center',
347
- justifyContent: 'center',
348
- }}
349
- >
350
- <View style={{ width: plusLen, height: stroke, backgroundColor: color, borderRadius: 1 }} />
351
- <View
352
- style={{
353
- position: 'absolute',
354
- width: stroke,
355
- height: plusLen,
356
- backgroundColor: color,
357
- borderRadius: 1,
358
- }}
359
- />
360
- </View>
361
- </View>
362
- );
363
- }
364
-
365
- export function ComposeStoryGlyph({ color = m3Colors.primary, size = 22 }: GlyphProps) {
366
- const ring = size * 0.82;
367
- return (
368
- <View style={{ width: size, height: size, alignItems: 'center', justifyContent: 'center' }}>
369
- <View
370
- style={{
371
- width: ring,
372
- height: ring,
373
- borderRadius: ring / 2,
374
- borderWidth: 2,
375
- borderColor: color,
376
- alignItems: 'center',
377
- justifyContent: 'center',
378
- }}
379
- >
380
- <View
381
- style={{
382
- width: ring * 0.42,
383
- height: ring * 0.42,
384
- borderRadius: ring * 0.21,
385
- backgroundColor: color,
386
- }}
387
- />
388
- </View>
389
- </View>
390
- );
391
- }
392
-
393
- export function ComposeLiveGlyph({ color = m3Colors.primary, size = 22 }: GlyphProps) {
394
- const bodyW = size * 0.88;
395
- const bodyH = size * 0.58;
396
- return (
397
- <View style={{ width: size, height: size, alignItems: 'center', justifyContent: 'center' }}>
398
- <View
399
- style={{
400
- width: bodyW,
401
- height: bodyH,
402
- borderRadius: size * 0.1,
403
- borderWidth: 1.8,
404
- borderColor: color,
405
- alignItems: 'center',
406
- justifyContent: 'center',
407
- }}
408
- >
409
- <View
410
- style={{
411
- width: bodyW * 0.24,
412
- height: bodyH * 0.48,
413
- borderRadius: 2,
414
- backgroundColor: color,
415
- }}
416
- />
417
- </View>
418
- <View
419
- style={{
420
- position: 'absolute',
421
- right: size * 0.04,
422
- top: size * 0.2,
423
- width: size * 0.14,
424
- height: size * 0.1,
425
- borderRadius: 2,
426
- backgroundColor: color,
427
- }}
428
- />
429
- </View>
430
- );
431
- }
432
-
433
- const styles = StyleSheet.create({
434
- diag: {
435
- position: 'absolute',
436
- height: 1.8,
437
- borderRadius: 1,
438
- },
439
- });