finsignal-feed-explore 3.28.0 → 3.30.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.
@@ -1,174 +1,62 @@
1
- /* CSS Variables for theming */
2
1
  :root {
3
- --skeleton-bg: #e5e7eb;
4
- --skeleton-shimmer: rgba(255, 255, 255, 0.5);
2
+ --skeleton-bg: rgba(4, 4, 5, 0.06);
5
3
  }
6
4
 
7
5
  .dark {
8
- --skeleton-bg: rgba(255, 255, 255, 0.1);
9
- --skeleton-shimmer: rgba(255, 255, 255, 0.05);
6
+ --skeleton-bg: rgba(255, 255, 255, 0.08);
10
7
  }
11
8
 
12
9
  .news-skeleton-container {
13
10
  display: flex;
14
11
  flex-direction: column;
15
- gap: 0;
12
+ align-self: stretch;
16
13
  }
17
14
 
18
15
  .news-skeleton {
19
- padding: 12px;
20
16
  display: flex;
17
+ padding: 16px;
21
18
  flex-direction: column;
19
+ justify-content: center;
20
+ align-items: flex-start;
22
21
  gap: 12px;
23
- animation: pulse 1.5s ease-in-out infinite;
22
+ align-self: stretch;
23
+ border-radius: 0;
24
+ animation: skeleton-pulse 1.8s ease-in-out infinite;
24
25
  }
25
26
 
26
- .news-skeleton__header {
27
- display: flex;
28
- align-items: center;
29
- justify-content: space-between;
30
- }
31
-
32
- .news-skeleton__time {
33
- height: 14px;
34
- width: 60px;
35
- background-color: var(--skeleton-bg);
36
- border-radius: 4px;
37
- }
38
-
39
- .news-skeleton__category {
40
- height: 14px;
41
- width: 80px;
42
- background-color: var(--skeleton-bg);
43
- border-radius: 4px;
44
- }
45
-
46
- .news-skeleton__title {
47
- height: 20px;
48
- width: 100%;
49
- background-color: var(--skeleton-bg);
50
- border-radius: 4px;
51
- }
52
-
53
- .news-skeleton__source {
27
+ .news-skeleton__row {
54
28
  display: flex;
55
29
  align-items: center;
56
30
  gap: 8px;
57
- }
58
-
59
- .news-skeleton__source-logo {
60
- width: 16px;
61
- height: 16px;
62
- border-radius: 50%;
63
- background-color: var(--skeleton-bg);
64
- }
65
-
66
- .news-skeleton__source-name {
67
- height: 14px;
68
- width: 100px;
69
- background-color: var(--skeleton-bg);
70
- border-radius: 4px;
71
- }
72
-
73
- .news-skeleton__content {
74
- height: 18px;
75
31
  width: 100%;
76
- background-color: var(--skeleton-bg);
77
- border-radius: 4px;
78
32
  }
79
33
 
80
- .news-skeleton__ai-summary {
81
- display: flex;
82
- gap: 8px;
83
- padding: 8px;
84
- border-radius: 8px;
85
- background-color: var(--skeleton-bg);
86
- opacity: 0.5;
87
- }
88
-
89
- .news-skeleton__ai-icon {
90
- width: 24px;
91
- height: 24px;
92
- border-radius: 50%;
93
- background-color: var(--skeleton-bg);
94
- }
95
-
96
- .news-skeleton__ai-text {
97
- flex: 1;
98
- height: 16px;
99
- background-color: var(--skeleton-bg);
100
- border-radius: 4px;
101
- }
102
-
103
- .news-skeleton__stock-card {
104
- display: flex;
105
- align-items: center;
34
+ .news-skeleton__row--between {
106
35
  justify-content: space-between;
107
- padding: 8px;
108
- border-radius: 8px;
109
- background-color: var(--skeleton-bg);
110
- opacity: 0.5;
111
- }
112
-
113
- .news-skeleton__stock-left {
114
- display: flex;
115
- align-items: center;
116
- gap: 8px;
117
- }
118
-
119
- .news-skeleton__stock-logo {
120
- width: 20px;
121
- height: 20px;
122
- border-radius: 50%;
123
- background-color: var(--skeleton-bg);
124
- }
125
-
126
- .news-skeleton__stock-symbol {
127
- height: 18px;
128
- width: 50px;
129
- background-color: var(--skeleton-bg);
130
- border-radius: 4px;
131
- }
132
-
133
- .news-skeleton__stock-right {
134
- display: flex;
135
- align-items: center;
136
- gap: 8px;
137
36
  }
138
37
 
139
- .news-skeleton__stock-change {
140
- height: 14px;
141
- width: 50px;
142
- background-color: var(--skeleton-bg);
38
+ .news-skeleton__block {
39
+ background: var(--skeleton-bg);
143
40
  border-radius: 4px;
41
+ flex-shrink: 0;
144
42
  }
145
43
 
146
- .news-skeleton__stock-price {
147
- height: 18px;
148
- width: 60px;
149
- background-color: var(--skeleton-bg);
150
- border-radius: 4px;
151
- }
152
-
153
- .news-skeleton__actions {
154
- display: flex;
155
- justify-content: flex-end;
156
- gap: 4px;
44
+ .news-skeleton__block--stretch {
45
+ width: 100%;
46
+ align-self: stretch;
47
+ flex-shrink: unset;
157
48
  }
158
49
 
159
- .news-skeleton__action-btn {
160
- width: 32px;
161
- height: 32px;
50
+ .news-skeleton__block--circle {
162
51
  border-radius: 50%;
163
- background-color: var(--skeleton-bg);
164
52
  }
165
53
 
166
- @keyframes pulse {
54
+ @keyframes skeleton-pulse {
167
55
  0%, 100% {
168
56
  opacity: 1;
169
57
  }
170
58
  50% {
171
- opacity: 0.5;
59
+ opacity: 0.45;
172
60
  }
173
61
  }
174
62
 
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../../src/components/NewsSkeleton.scss"],"names":[],"mappings":"AAAA;AACA;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;IACE;;EAEF;IACE","file":"NewsSkeleton.css"}
1
+ {"version":3,"sourceRoot":"","sources":["../../src/components/NewsSkeleton.scss"],"names":[],"mappings":"AAAA;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;IACE;;EAEF;IACE","file":"NewsSkeleton.css"}
@@ -1 +1 @@
1
- {"version":3,"file":"NewsSkeleton.d.ts","sourceRoot":"","sources":["../../src/components/NewsSkeleton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,oBAAoB,CAAC;AAE5B,MAAM,WAAW,iBAAiB;IAKhC,KAAK,CAAC,EAAE,MAAM,CAAC;IAKf,SAAS,CAAC,EAAE,MAAM,CAAC;IAMnB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC1B;AAOD,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAkEpD,CAAC"}
1
+ {"version":3,"file":"NewsSkeleton.d.ts","sourceRoot":"","sources":["../../src/components/NewsSkeleton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,oBAAoB,CAAC;AAE5B,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC1B;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA+BpD,CAAC"}
@@ -1,36 +1,16 @@
1
1
  import React from 'react';
2
2
  import './NewsSkeleton.css';
3
- export const NewsSkeleton = ({ count = 3, className = '', theme = 'light' }) => {
4
- return (React.createElement("div", { className: `news-skeleton-container ${theme === 'dark' ? 'dark' : ''} ${className}`, "data-theme": theme }, Array.from({ length: count }).map((_, index) => (React.createElement("div", { key: index, className: `news-skeleton ${theme === 'dark' ? 'dark' : ''}` },
5
- React.createElement("div", { className: "news-skeleton__header" },
6
- React.createElement("div", { className: "news-skeleton__timestamp" }),
7
- React.createElement("div", { className: "news-skeleton__category" })),
8
- React.createElement("div", { className: "news-skeleton__title" },
9
- React.createElement("div", { className: "news-skeleton__title-line news-skeleton__title-line--full" }),
10
- React.createElement("div", { className: "news-skeleton__title-line news-skeleton__title-line--partial" })),
11
- React.createElement("div", { className: "news-skeleton__source" },
12
- React.createElement("div", { className: "news-skeleton__source-logo" }),
13
- React.createElement("div", { className: "news-skeleton__source-name" })),
14
- React.createElement("div", { className: "news-skeleton__content" },
15
- React.createElement("div", { className: "news-skeleton__content-line" }),
16
- React.createElement("div", { className: "news-skeleton__content-line" }),
17
- React.createElement("div", { className: "news-skeleton__content-line news-skeleton__content-line--short" })),
18
- React.createElement("div", { className: "news-skeleton__ai-summary" },
19
- React.createElement("div", { className: "news-skeleton__ai-icon" }),
20
- React.createElement("div", { className: "news-skeleton__ai-text" },
21
- React.createElement("div", { className: "news-skeleton__ai-text-line" }),
22
- React.createElement("div", { className: "news-skeleton__ai-text-line news-skeleton__ai-text-line--short" }))),
23
- React.createElement("div", { className: "news-skeleton__stocks" },
24
- React.createElement("div", { className: "news-skeleton__stock-card" },
25
- React.createElement("div", { className: "news-skeleton__stock-logo" }),
26
- React.createElement("div", { className: "news-skeleton__stock-text" }),
27
- React.createElement("div", { className: "news-skeleton__stock-change" })),
28
- React.createElement("div", { className: "news-skeleton__stock-card" },
29
- React.createElement("div", { className: "news-skeleton__stock-logo" }),
30
- React.createElement("div", { className: "news-skeleton__stock-text" }),
31
- React.createElement("div", { className: "news-skeleton__stock-change" }))),
32
- React.createElement("div", { className: "news-skeleton__actions" },
33
- React.createElement("div", { className: "news-skeleton__action-icon" }),
34
- React.createElement("div", { className: "news-skeleton__action-icon" })))))));
3
+ export const NewsSkeleton = ({ count = 4, className = '', theme = 'light', }) => {
4
+ return (React.createElement("div", { className: `news-skeleton-container ${theme === 'dark' ? 'dark' : ''} ${className}` }, Array.from({ length: count }).map((_, index) => (React.createElement("div", { key: index, className: "news-skeleton" },
5
+ React.createElement("div", { className: "news-skeleton__row news-skeleton__row--between" },
6
+ React.createElement("div", { className: "news-skeleton__block", style: { width: 40, height: 16 } }),
7
+ React.createElement("div", { className: "news-skeleton__block", style: { width: 88, height: 16 } })),
8
+ React.createElement("div", { className: "news-skeleton__block news-skeleton__block--stretch", style: { height: 20 } }),
9
+ React.createElement("div", { className: "news-skeleton__block", style: { width: '70%', height: 20 } }),
10
+ React.createElement("div", { className: "news-skeleton__row", style: { gap: 6 } },
11
+ React.createElement("div", { className: "news-skeleton__block news-skeleton__block--circle", style: { width: 16, height: 16 } }),
12
+ React.createElement("div", { className: "news-skeleton__block", style: { width: 100, height: 16 } })),
13
+ React.createElement("div", { className: "news-skeleton__block news-skeleton__block--stretch", style: { height: 16 } }),
14
+ React.createElement("div", { className: "news-skeleton__block", style: { width: '80%', height: 16 } }))))));
35
15
  };
36
16
  //# sourceMappingURL=NewsSkeleton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NewsSkeleton.js","sourceRoot":"","sources":["../../src/components/NewsSkeleton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,oBAAoB,CAAC;AA0B5B,MAAM,CAAC,MAAM,YAAY,GAAgC,CAAC,EACxD,KAAK,GAAG,CAAC,EACT,SAAS,GAAG,EAAE,EACd,KAAK,GAAG,OAAO,EAChB,EAAE,EAAE;IACH,OAAO,CACL,6BAAK,SAAS,EAAE,2BAA2B,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,SAAS,EAAE,gBAAc,KAAK,IACxG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAC/C,6BAAK,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,iBAAiB,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QAE3E,6BAAK,SAAS,EAAC,uBAAuB;YACpC,6BAAK,SAAS,EAAC,0BAA0B,GAAG;YAC5C,6BAAK,SAAS,EAAC,yBAAyB,GAAG,CACvC;QAGN,6BAAK,SAAS,EAAC,sBAAsB;YACnC,6BAAK,SAAS,EAAC,2DAA2D,GAAG;YAC7E,6BAAK,SAAS,EAAC,8DAA8D,GAAG,CAC5E;QAGN,6BAAK,SAAS,EAAC,uBAAuB;YACpC,6BAAK,SAAS,EAAC,4BAA4B,GAAG;YAC9C,6BAAK,SAAS,EAAC,4BAA4B,GAAG,CAC1C;QAGN,6BAAK,SAAS,EAAC,wBAAwB;YACrC,6BAAK,SAAS,EAAC,6BAA6B,GAAG;YAC/C,6BAAK,SAAS,EAAC,6BAA6B,GAAG;YAC/C,6BAAK,SAAS,EAAC,gEAAgE,GAAG,CAC9E;QAGN,6BAAK,SAAS,EAAC,2BAA2B;YACxC,6BAAK,SAAS,EAAC,wBAAwB,GAAG;YAC1C,6BAAK,SAAS,EAAC,wBAAwB;gBACrC,6BAAK,SAAS,EAAC,6BAA6B,GAAG;gBAC/C,6BAAK,SAAS,EAAC,gEAAgE,GAAG,CAC9E,CACF;QAGN,6BAAK,SAAS,EAAC,uBAAuB;YACpC,6BAAK,SAAS,EAAC,2BAA2B;gBACxC,6BAAK,SAAS,EAAC,2BAA2B,GAAG;gBAC7C,6BAAK,SAAS,EAAC,2BAA2B,GAAG;gBAC7C,6BAAK,SAAS,EAAC,6BAA6B,GAAG,CAC3C;YACN,6BAAK,SAAS,EAAC,2BAA2B;gBACxC,6BAAK,SAAS,EAAC,2BAA2B,GAAG;gBAC7C,6BAAK,SAAS,EAAC,2BAA2B,GAAG;gBAC7C,6BAAK,SAAS,EAAC,6BAA6B,GAAG,CAC3C,CACF;QAGN,6BAAK,SAAS,EAAC,wBAAwB;YACrC,6BAAK,SAAS,EAAC,4BAA4B,GAAG;YAC9C,6BAAK,SAAS,EAAC,4BAA4B,GAAG,CAC1C,CACF,CACP,CAAC,CACE,CACP,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"NewsSkeleton.js","sourceRoot":"","sources":["../../src/components/NewsSkeleton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,oBAAoB,CAAC;AAQ5B,MAAM,CAAC,MAAM,YAAY,GAAgC,CAAC,EACxD,KAAK,GAAG,CAAC,EACT,SAAS,GAAG,EAAE,EACd,KAAK,GAAG,OAAO,GAChB,EAAE,EAAE;IACH,OAAO,CACL,6BAAK,SAAS,EAAE,2BAA2B,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,SAAS,EAAE,IACrF,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAC/C,6BAAK,GAAG,EAAE,KAAK,EAAE,SAAS,EAAC,eAAe;QAExC,6BAAK,SAAS,EAAC,gDAAgD;YAC7D,6BAAK,SAAS,EAAC,sBAAsB,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,GAAI;YAC1E,6BAAK,SAAS,EAAC,sBAAsB,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,GAAI,CACtE;QAEN,6BAAK,SAAS,EAAC,oDAAoD,EAAC,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,GAAI;QAE7F,6BAAK,SAAS,EAAC,sBAAsB,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,GAAI;QAE7E,6BAAK,SAAS,EAAC,oBAAoB,EAAC,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE;YACnD,6BAAK,SAAS,EAAC,mDAAmD,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,GAAI;YACvG,6BAAK,SAAS,EAAC,sBAAsB,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,GAAI,CACvE;QAEN,6BAAK,SAAS,EAAC,oDAAoD,EAAC,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,GAAI;QAE7F,6BAAK,SAAS,EAAC,sBAAsB,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,GAAI,CACzE,CACP,CAAC,CACE,CACP,CAAC;AACJ,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "finsignal-feed-explore",
3
- "version": "3.28.0",
3
+ "version": "3.30.0",
4
4
  "description": "News feed explorer and portfolio widgets for React web applications",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",