finsignal-feed-explore 2.20.3 → 2.21.0

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 (44) hide show
  1. package/dist/FeedList.css +97 -4
  2. package/dist/FeedList.css.map +1 -0
  3. package/dist/FeedList.d.ts +1 -1
  4. package/dist/FeedList.d.ts.map +1 -1
  5. package/dist/FeedList.js +1 -1
  6. package/dist/FeedList.js.map +1 -1
  7. package/dist/components/Chip.css +2 -4
  8. package/dist/components/Chip.css.map +1 -0
  9. package/dist/components/Chip.d.ts +1 -1
  10. package/dist/components/Chip.d.ts.map +1 -1
  11. package/dist/components/Chip.js +1 -1
  12. package/dist/components/Chip.js.map +1 -1
  13. package/dist/components/EmptyState.css +1 -0
  14. package/dist/components/EmptyState.css.map +1 -0
  15. package/dist/components/FilterButton.css +2 -0
  16. package/dist/components/FilterButton.css.map +1 -0
  17. package/dist/components/NewsSkeleton.css +151 -179
  18. package/dist/components/NewsSkeleton.css.map +1 -0
  19. package/dist/components/NewsSkeleton.d.ts +1 -1
  20. package/dist/components/NewsSkeleton.d.ts.map +1 -1
  21. package/dist/components/NewsSkeleton.js +1 -1
  22. package/dist/components/NewsSkeleton.js.map +1 -1
  23. package/dist/components/SearchButton.css +2 -0
  24. package/dist/components/SearchButton.css.map +1 -0
  25. package/dist/components/SearchInput.css +4 -2
  26. package/dist/components/SearchInput.css.map +1 -0
  27. package/dist/components/SearchInput.d.ts +1 -1
  28. package/dist/components/SearchInput.d.ts.map +1 -1
  29. package/dist/components/SearchInput.js +1 -1
  30. package/dist/components/SearchInput.js.map +1 -1
  31. package/dist/filters/FiltersOverlay.css +1 -2
  32. package/dist/filters/FiltersOverlay.css.map +1 -0
  33. package/dist/filters/FiltersOverlay.d.ts +1 -1
  34. package/dist/filters/FiltersOverlay.d.ts.map +1 -1
  35. package/dist/filters/FiltersOverlay.js +1 -1
  36. package/dist/filters/FiltersOverlay.js.map +1 -1
  37. package/dist/newsfeed.css +97 -4
  38. package/dist/snippets/NewsSnippet.css +139 -214
  39. package/dist/snippets/NewsSnippet.css.map +1 -0
  40. package/dist/snippets/NewsSnippet.d.ts +1 -1
  41. package/dist/snippets/NewsSnippet.d.ts.map +1 -1
  42. package/dist/snippets/NewsSnippet.js +1 -1
  43. package/dist/snippets/NewsSnippet.js.map +1 -1
  44. package/package.json +4 -2
@@ -1,3 +1,36 @@
1
+ @charset "UTF-8";
2
+ /* CSS Variables for theming */
3
+ .news-snippet {
4
+ --snippet-bg: #ffffff;
5
+ --snippet-text: rgba(4, 4, 5, 0.92);
6
+ --snippet-text-secondary: rgba(4, 4, 5, 0.72);
7
+ --snippet-text-tertiary: rgba(4, 4, 5, 0.56);
8
+ --snippet-border: rgba(36, 36, 41, 0.08);
9
+ --snippet-hover-overlay: rgba(0, 0, 0, 0.04);
10
+ --ai-summary-bg: rgba(120, 99, 246, 0.08);
11
+ --ai-summary-text: rgba(4, 4, 5, 0.92);
12
+ --stock-card-bg: rgba(120, 99, 246, 0.04);
13
+ --stock-price-text: rgba(4, 4, 5, 0.72);
14
+ --category-bg: rgba(4, 4, 5, 0.06);
15
+ --category-text: rgba(4, 4, 5, 0.72);
16
+ --action-btn-hover: rgba(4, 4, 5, 0.06);
17
+ }
18
+ .news-snippet[data-theme=dark] {
19
+ --snippet-bg: #1a1a1e;
20
+ --snippet-text: rgba(255, 255, 255, 0.92);
21
+ --snippet-text-secondary: rgba(255, 255, 255, 0.72);
22
+ --snippet-text-tertiary: rgba(255, 255, 255, 0.56);
23
+ --snippet-border: rgba(255, 255, 255, 0.12);
24
+ --snippet-hover-overlay: rgba(255, 255, 255, 0.06);
25
+ --ai-summary-bg: rgba(120, 99, 246, 0.12);
26
+ --ai-summary-text: rgba(255, 255, 255, 0.92);
27
+ --stock-card-bg: rgba(120, 99, 246, 0.08);
28
+ --stock-price-text: rgba(255, 255, 255, 0.72);
29
+ --category-bg: rgba(255, 255, 255, 0.08);
30
+ --category-text: rgba(255, 255, 255, 0.72);
31
+ --action-btn-hover: rgba(255, 255, 255, 0.08);
32
+ }
33
+
1
34
  /* Base styles */
2
35
  .news-snippet {
3
36
  border-radius: 0;
@@ -8,48 +41,24 @@
8
41
  cursor: pointer;
9
42
  transition: background-color 0.2s ease;
10
43
  position: relative;
44
+ background-color: var(--snippet-bg);
45
+ /* Hover overlay effect */
11
46
  }
12
-
13
- /* Light theme */
14
- .news-snippet--light {
15
- background-color: #ffffff;
16
- }
17
-
18
- /* Dark theme */
19
- .news-snippet--dark {
20
- background-color: #1a1a1e;
21
- }
22
-
23
- /* Hover overlay effect */
24
47
  .news-snippet::before {
25
- content: '';
48
+ content: "";
26
49
  position: absolute;
27
50
  top: 0;
28
51
  left: 0;
29
52
  right: 0;
30
53
  bottom: 0;
31
- background-color: rgba(0, 0, 0, 0);
54
+ background-color: transparent;
32
55
  transition: background-color 0.2s ease;
33
56
  pointer-events: none;
34
57
  }
35
-
36
- .news-snippet--light::before {
37
- background-color: rgba(0, 0, 0, 0);
58
+ .news-snippet:hover::before {
59
+ background-color: var(--snippet-hover-overlay);
38
60
  }
39
-
40
- .news-snippet--dark::before {
41
- background-color: rgba(255, 255, 255, 0);
42
- }
43
-
44
- .news-snippet--light:hover::before {
45
- background-color: rgba(0, 0, 0, 0.04);
46
- }
47
-
48
- .news-snippet--dark:hover::before {
49
- background-color: rgba(255, 255, 255, 0.06);
50
- }
51
-
52
- .news-snippet[draggable="true"]:active {
61
+ .news-snippet[draggable=true]:active {
53
62
  opacity: 0.5;
54
63
  cursor: grabbing;
55
64
  }
@@ -74,160 +83,98 @@
74
83
  gap: 4px;
75
84
  }
76
85
 
77
- .news-snippet__date,
78
- .news-snippet__time {
79
- font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
80
- font-size: 12px;
81
- font-weight: 400;
82
- line-height: 16px;
83
- letter-spacing: -0.2px;
84
- }
85
-
86
- .news-snippet--light .news-snippet__date,
87
- .news-snippet--light .news-snippet__time {
88
- color: rgba(4, 4, 5, 0.56);
89
- }
90
-
91
- .news-snippet--dark .news-snippet__date,
92
- .news-snippet--dark .news-snippet__time {
93
- color: rgba(255, 255, 255, 0.56);
86
+ .news-snippet__clock-icon {
87
+ width: 12px;
88
+ height: 12px;
89
+ flex-shrink: 0;
94
90
  }
95
91
 
96
- .news-snippet__divider {
92
+ .news-snippet__time {
93
+ font-family: "Inter", sans-serif;
97
94
  font-size: 12px;
95
+ font-weight: 400;
98
96
  line-height: 16px;
99
- }
100
-
101
- .news-snippet--light .news-snippet__divider {
102
- color: rgba(4, 4, 5, 0.12);
103
- }
104
-
105
- .news-snippet--dark .news-snippet__divider {
106
- color: rgba(255, 255, 255, 0.12);
97
+ letter-spacing: 0.16px;
98
+ color: var(--snippet-text-tertiary);
107
99
  }
108
100
 
109
101
  .news-snippet__category {
110
- font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
102
+ display: inline-flex;
103
+ padding: 2px 8px;
104
+ align-items: center;
105
+ gap: 8px;
106
+ border-radius: 4px;
107
+ background: var(--category-bg);
108
+ font-family: "Inter", sans-serif;
111
109
  font-size: 12px;
112
- font-weight: 400;
110
+ font-weight: 500;
113
111
  line-height: 16px;
114
- letter-spacing: -0.2px;
115
- text-align: right;
116
- white-space: nowrap;
117
- }
118
-
119
- .news-snippet--light .news-snippet__category {
120
- color: rgba(4, 4, 5, 0.56);
121
- }
122
-
123
- .news-snippet--dark .news-snippet__category {
124
- color: rgba(255, 255, 255, 0.56);
112
+ letter-spacing: 0.16px;
113
+ color: var(--category-text);
125
114
  }
126
115
 
127
116
  /* Title */
128
117
  .news-snippet__title {
129
- font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
130
- font-size: 18px;
118
+ font-family: "Inter", sans-serif;
119
+ font-size: 14px;
131
120
  font-weight: 600;
132
- line-height: 24px;
133
- letter-spacing: -0.4px;
121
+ line-height: 20px;
122
+ letter-spacing: 0.16px;
123
+ color: var(--snippet-text);
134
124
  margin: 0;
135
- overflow: hidden;
136
- text-overflow: ellipsis;
137
- display: -webkit-box;
138
- -webkit-line-clamp: 3;
139
- -webkit-box-orient: vertical;
140
125
  }
141
126
 
142
- .news-snippet--light .news-snippet__title {
143
- color: #040405;
144
- }
145
-
146
- .news-snippet--dark .news-snippet__title {
147
- color: #ffffff;
148
- }
149
-
150
- /* Single Source */
127
+ /* Source: одно лого + имя */
151
128
  .news-snippet__source {
152
129
  display: flex;
153
130
  align-items: center;
154
- gap: 6px;
131
+ gap: 8px;
155
132
  }
156
133
 
157
134
  .news-snippet__source-logo {
158
135
  width: 16px;
159
136
  height: 16px;
160
- border-radius: 10.67px;
161
- border: 0.67px solid rgba(24, 23, 23, 1);
162
- object-fit: cover;
137
+ border-radius: 50%;
163
138
  flex-shrink: 0;
139
+ object-fit: cover;
164
140
  }
165
-
166
141
  .news-snippet__source-logo--fallback {
167
142
  display: flex;
168
143
  align-items: center;
169
144
  justify-content: center;
170
- background: rgba(4, 4, 5, 0.06);
145
+ background: var(--category-bg);
146
+ color: var(--snippet-text-tertiary);
171
147
  font-size: 10px;
172
148
  font-weight: 600;
173
- color: #040405;
174
149
  }
175
150
 
176
151
  .news-snippet__source-name {
177
- font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
178
- font-size: 14px;
179
- font-weight: 500;
152
+ font-family: "Inter", sans-serif;
153
+ font-size: 12px;
154
+ font-weight: 400;
180
155
  line-height: 16px;
181
- letter-spacing: -0.14px;
182
- }
183
-
184
- .news-snippet--light .news-snippet__source-name {
185
- color: #040405;
186
- }
187
-
188
- .news-snippet--dark .news-snippet__source-name {
189
- color: rgba(255, 255, 255, 0.87);
156
+ letter-spacing: 0.16px;
157
+ color: var(--snippet-text-secondary);
190
158
  }
191
159
 
192
- /* Content text */
160
+ /* Content Text */
193
161
  .news-snippet__content-text {
194
- font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
195
- font-size: 14px;
162
+ font-family: "Inter", sans-serif;
163
+ font-size: 12px;
196
164
  font-weight: 400;
197
- line-height: 20px;
198
- letter-spacing: -0.2px;
165
+ line-height: 16px;
166
+ letter-spacing: 0.16px;
167
+ color: var(--snippet-text-secondary);
199
168
  margin: 0;
200
- overflow: hidden;
201
- text-overflow: ellipsis;
202
- display: -webkit-box;
203
- -webkit-line-clamp: 4;
204
- -webkit-box-orient: vertical;
205
- }
206
-
207
- .news-snippet--light .news-snippet__content-text {
208
- color: #040405;
209
- }
210
-
211
- .news-snippet--dark .news-snippet__content-text {
212
- color: rgba(255, 255, 255, 0.72);
213
169
  }
214
170
 
215
171
  /* AI Summary */
216
172
  .news-snippet__ai-summary {
217
173
  display: flex;
218
- align-items: flex-start;
219
- gap: 8px;
220
174
  padding: 8px;
221
- border-radius: 4px;
222
- margin: 0 4px;
223
- }
224
-
225
- .news-snippet--light .news-snippet__ai-summary {
226
- background-color: rgba(120, 99, 246, 0.12);
227
- }
228
-
229
- .news-snippet--dark .news-snippet__ai-summary {
230
- background-color: rgba(120, 99, 246, 0.24);
175
+ gap: 8px;
176
+ border-radius: 8px;
177
+ background: var(--ai-summary-bg);
231
178
  }
232
179
 
233
180
  .news-snippet__ai-summary-icon {
@@ -235,91 +182,67 @@
235
182
  width: 24px;
236
183
  height: 24px;
237
184
  display: flex;
238
- align-items: center;
185
+ align-items: flex-start;
239
186
  justify-content: center;
240
187
  }
241
188
 
242
189
  .news-snippet__ai-summary-text {
243
190
  flex: 1;
244
- font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
191
+ font-family: "Inter", sans-serif;
245
192
  font-size: 12px;
246
193
  font-weight: 400;
247
194
  line-height: 16px;
248
- letter-spacing: -0.2px;
195
+ letter-spacing: 0.16px;
196
+ color: var(--ai-summary-text);
249
197
  margin: 0;
250
198
  }
251
199
 
252
- .news-snippet--light .news-snippet__ai-summary-text {
253
- color: #040405;
254
- }
255
-
256
- .news-snippet--dark .news-snippet__ai-summary-text {
257
- color: #ffffff;
258
- }
259
-
260
200
  /* Stock Cards */
261
201
  .news-snippet__stocks {
262
202
  display: flex;
263
203
  flex-direction: column;
264
204
  gap: 4px;
265
- padding: 0 4px;
266
205
  }
267
206
 
268
207
  .news-snippet__stock-card {
269
208
  display: flex;
209
+ padding: 6px 8px;
270
210
  align-items: center;
271
211
  justify-content: space-between;
272
- padding: 4px 8px 4px 4px;
273
- border-radius: 4px;
274
- }
275
-
276
- .news-snippet--light .news-snippet__stock-card {
277
- background-color: rgba(4, 4, 5, 0.04);
278
- }
279
-
280
- .news-snippet--dark .news-snippet__stock-card {
281
- background-color: rgba(255, 255, 255, 0.06);
212
+ border-radius: 8px;
213
+ background: var(--stock-card-bg);
282
214
  }
283
215
 
284
216
  .news-snippet__stock-left {
285
217
  display: flex;
286
218
  align-items: center;
287
219
  gap: 8px;
288
- min-width: 106.5px;
289
220
  }
290
221
 
291
222
  .news-snippet__stock-logo {
292
- width: 48px;
293
- height: 48px;
294
- border-radius: 100px;
295
- object-fit: cover;
223
+ width: 16px;
224
+ height: 16px;
225
+ border-radius: 50%;
296
226
  flex-shrink: 0;
227
+ object-fit: cover;
297
228
  }
298
-
299
229
  .news-snippet__stock-logo--fallback {
300
230
  display: flex;
301
231
  align-items: center;
302
232
  justify-content: center;
303
- background: rgba(4, 4, 5, 0.08);
304
- font-size: 20px;
233
+ background: var(--category-bg);
234
+ color: var(--snippet-text-tertiary);
235
+ font-size: 10px;
305
236
  font-weight: 600;
306
- color: #040405;
307
237
  }
308
238
 
309
239
  .news-snippet__stock-symbol {
310
- font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
311
- font-size: 14px;
312
- font-weight: 600;
313
- line-height: 20px;
314
- letter-spacing: -0.2px;
315
- }
316
-
317
- .news-snippet--light .news-snippet__stock-symbol {
318
- color: #040405;
319
- }
320
-
321
- .news-snippet--dark .news-snippet__stock-symbol {
322
- color: #ffffff;
240
+ font-family: "Inter", sans-serif;
241
+ font-size: 12px;
242
+ font-weight: 500;
243
+ line-height: 16px;
244
+ letter-spacing: 0.16px;
245
+ color: var(--snippet-text);
323
246
  }
324
247
 
325
248
  .news-snippet__stock-right {
@@ -329,43 +252,37 @@
329
252
  }
330
253
 
331
254
  .news-snippet__stock-change {
332
- font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
333
- font-size: 14px;
334
- font-weight: 400;
335
- line-height: 20px;
336
- letter-spacing: -0.2px;
255
+ font-family: "Inter", sans-serif;
256
+ font-size: 12px;
257
+ font-weight: 500;
258
+ line-height: 16px;
259
+ letter-spacing: 0.16px;
337
260
  }
338
-
339
261
  .news-snippet__stock-change--positive {
340
- color: #038c5a;
262
+ color: #10b981;
341
263
  }
342
-
343
264
  .news-snippet__stock-change--negative {
344
- color: #d02e2e;
265
+ color: #ef4444;
266
+ }
267
+ .news-snippet__stock-change--neutral {
268
+ color: var(--snippet-text-tertiary);
345
269
  }
346
270
 
347
271
  .news-snippet__stock-price {
348
- font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
349
- font-size: 14px;
272
+ font-family: "Inter", sans-serif;
273
+ font-size: 12px;
350
274
  font-weight: 400;
351
- line-height: 20px;
352
- letter-spacing: -0.2px;
353
- }
354
-
355
- .news-snippet--light .news-snippet__stock-price {
356
- color: #040405;
357
- }
358
-
359
- .news-snippet--dark .news-snippet__stock-price {
360
- color: rgba(255, 255, 255, 0.87);
275
+ line-height: 16px;
276
+ letter-spacing: 0.16px;
277
+ color: var(--stock-price-text);
361
278
  }
362
279
 
363
- /* Action Bar - только справа */
280
+ /* Action Bar - только bookmark и AI справа */
364
281
  .news-snippet__actions {
365
282
  display: flex;
366
- align-items: center;
367
283
  justify-content: flex-end;
368
- gap: 8px;
284
+ align-items: center;
285
+ gap: 4px;
369
286
  padding: 0 4px;
370
287
  }
371
288
 
@@ -373,21 +290,29 @@
373
290
  display: flex;
374
291
  align-items: center;
375
292
  justify-content: center;
376
- width: 16px;
377
- height: 16px;
378
- padding: 0;
293
+ width: 32px;
294
+ height: 32px;
379
295
  border: none;
380
296
  background: transparent;
297
+ border-radius: 50%;
381
298
  cursor: pointer;
382
- transition: opacity 0.2s ease;
299
+ transition: background-color 0.2s ease;
300
+ padding: 0;
383
301
  }
384
-
385
302
  .news-snippet__action-btn:hover {
386
- opacity: 0.7;
303
+ background: var(--action-btn-hover);
387
304
  }
388
-
389
- .news-snippet__action-btn:active {
390
- transform: scale(0.95);
305
+ .news-snippet__action-btn--active {
306
+ background: rgba(120, 99, 246, 0.12);
391
307
  }
392
308
 
309
+ /* Image */
310
+ .news-snippet__cover {
311
+ width: 100%;
312
+ height: auto;
313
+ max-height: 200px;
314
+ object-fit: cover;
315
+ border-radius: 8px;
316
+ }
393
317
 
318
+ /*# sourceMappingURL=NewsSnippet.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sourceRoot":"","sources":["../../src/snippets/NewsSnippet.scss"],"names":[],"mappings":";AAAA;AACA;EAEE;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;EACA;EAEA;;AAGA;EACE;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;EACA;EAEA;;;AAIJ;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAEA;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;;;AAGF;AACA;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AACA;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;AACA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AACA;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AACA;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;AACA;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;;AAIJ;AACA;EACE;EACA;EACA;EACA;EACA","file":"NewsSnippet.css"}
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { NewsItem } from '../types';
3
- import './NewsSnippet.css';
3
+ import './NewsSnippet.scss';
4
4
  export interface NewsSnippetProps {
5
5
  news: NewsItem;
6
6
  onPress?: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"NewsSnippet.d.ts","sourceRoot":"","sources":["../../src/snippets/NewsSnippet.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGpC,OAAO,mBAAmB,CAAC;AAE3B,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC;IAElB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAEzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;IAC3C,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;IAEzC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA4HlD,CAAC"}
1
+ {"version":3,"file":"NewsSnippet.d.ts","sourceRoot":"","sources":["../../src/snippets/NewsSnippet.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGpC,OAAO,oBAAoB,CAAC;AAE5B,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC;IAElB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAEzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;IAC3C,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;IAEzC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA4HlD,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { BookmarkIcon, AIStarIcon } from '../components/icons';
3
3
  import { formatTimestamp } from '../utils/formatTimestamp';
4
- import './NewsSnippet.css';
4
+ import './NewsSnippet.scss';
5
5
  export const NewsSnippet = ({ news, onPress, onBookmark, onAI, showBookmarkIcon = true, showAIIcon = true, isBookmarked = false, theme = 'light', draggable = false, onDragStart, onDragEnd }) => {
6
6
  const { date, time } = formatTimestamp(news.timestamp);
7
7
  const displaySourceName = news.sourceName || 'Источник';
@@ -1 +1 @@
1
- {"version":3,"file":"NewsSnippet.js","sourceRoot":"","sources":["../../src/snippets/NewsSnippet.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NewsSnippet.js","sourceRoot":"","sources":["../../src/snippets/NewsSnippet.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "finsignal-feed-explore",
3
- "version": "2.20.3",
3
+ "version": "2.21.0",
4
4
  "description": "News feed explorer components for React web applications",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",
@@ -10,7 +10,8 @@
10
10
  "README.md"
11
11
  ],
12
12
  "scripts": {
13
- "build": "tsc && cp src/FeedList.css dist/FeedList.css && cp src/FeedList.css dist/newsfeed.css && cp src/components/Chip.css dist/components/Chip.css && cp src/components/FilterButton.css dist/components/FilterButton.css && cp src/components/SearchButton.css dist/components/SearchButton.css && cp src/components/SearchInput.css dist/components/SearchInput.css && cp src/components/EmptyState.css dist/components/EmptyState.css && cp src/components/NewsSkeleton.css dist/components/NewsSkeleton.css && cp src/filters/FiltersOverlay.css dist/filters/FiltersOverlay.css && cp src/snippets/NewsSnippet.css dist/snippets/NewsSnippet.css",
13
+ "build": "tsc && npm run build:styles",
14
+ "build:styles": "sass src/FeedList.scss dist/FeedList.css && cp dist/FeedList.css dist/newsfeed.css && sass src/components/Chip.scss dist/components/Chip.css && sass src/components/FilterButton.scss dist/components/FilterButton.css && sass src/components/SearchButton.scss dist/components/SearchButton.css && sass src/components/SearchInput.scss dist/components/SearchInput.css && sass src/components/EmptyState.scss dist/components/EmptyState.css && sass src/components/NewsSkeleton.scss dist/components/NewsSkeleton.css && sass src/filters/FiltersOverlay.scss dist/filters/FiltersOverlay.css && sass src/snippets/NewsSnippet.scss dist/snippets/NewsSnippet.css",
14
15
  "prepublishOnly": "npm run build"
15
16
  },
16
17
  "keywords": [
@@ -38,6 +39,7 @@
38
39
  "devDependencies": {
39
40
  "@types/react": "^18.0.0",
40
41
  "@types/react-native": "^0.72.0",
42
+ "sass": "^1.69.0",
41
43
  "typescript": "^5.0.0"
42
44
  }
43
45
  }