finsignal-feed-explore 3.28.0 → 3.29.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,96 @@
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);
3
+ --skeleton-shimmer: rgba(4, 4, 5, 0.02);
5
4
  }
6
5
 
7
6
  .dark {
8
- --skeleton-bg: rgba(255, 255, 255, 0.1);
9
- --skeleton-shimmer: rgba(255, 255, 255, 0.05);
7
+ --skeleton-bg: rgba(255, 255, 255, 0.08);
8
+ --skeleton-shimmer: rgba(255, 255, 255, 0.03);
10
9
  }
11
10
 
12
11
  .news-skeleton-container {
13
12
  display: flex;
14
13
  flex-direction: column;
15
- gap: 0;
14
+ align-self: stretch;
16
15
  }
17
16
 
18
17
  .news-skeleton {
19
- padding: 12px;
20
18
  display: flex;
19
+ padding: var(--Spacing-spacing-16, 16px);
21
20
  flex-direction: column;
22
- gap: 12px;
23
- animation: pulse 1.5s ease-in-out infinite;
24
- }
25
-
26
- .news-skeleton__header {
27
- display: flex;
21
+ justify-content: center;
28
22
  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;
23
+ gap: var(--Spacing-spacing-12, 12px);
24
+ align-self: stretch;
25
+ border-radius: var(--Radius-radius-0, 0);
26
+ opacity: var(--Opacity-stateDefault, 1);
27
+ animation: skeleton-pulse 1.8s ease-in-out infinite;
51
28
  }
52
29
 
53
- .news-skeleton__source {
30
+ .news-skeleton__header,
31
+ .news-skeleton__body,
32
+ .news-skeleton__footer {
54
33
  display: flex;
55
34
  align-items: center;
56
35
  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
36
  width: 100%;
76
- background-color: var(--skeleton-bg);
77
- border-radius: 4px;
78
- }
79
-
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
37
  }
88
38
 
89
- .news-skeleton__ai-icon {
90
- width: 24px;
91
- height: 24px;
92
- border-radius: 50%;
93
- background-color: var(--skeleton-bg);
39
+ .news-skeleton__footer {
40
+ gap: 6px;
94
41
  }
95
42
 
96
- .news-skeleton__ai-text {
97
- flex: 1;
98
- height: 16px;
99
- background-color: var(--skeleton-bg);
43
+ .news-skeleton__line {
44
+ background: var(--skeleton-bg);
100
45
  border-radius: 4px;
46
+ flex-shrink: 0;
101
47
  }
102
48
 
103
- .news-skeleton__stock-card {
104
- display: flex;
105
- align-items: center;
106
- justify-content: space-between;
107
- padding: 8px;
108
- border-radius: 8px;
109
- background-color: var(--skeleton-bg);
110
- opacity: 0.5;
49
+ /* Timestamp */
50
+ .news-skeleton__line--timestamp {
51
+ height: 12px;
52
+ width: 56px;
53
+ flex-shrink: 0;
111
54
  }
112
55
 
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;
56
+ /* Category tag */
57
+ .news-skeleton__line--tag {
58
+ height: 12px;
59
+ width: 72px;
60
+ margin-left: auto;
131
61
  }
132
62
 
133
- .news-skeleton__stock-right {
134
- display: flex;
135
- align-items: center;
136
- gap: 8px;
137
- }
138
-
139
- .news-skeleton__stock-change {
63
+ /* Title full line */
64
+ .news-skeleton__line--full {
140
65
  height: 14px;
141
- width: 50px;
142
- background-color: var(--skeleton-bg);
143
- border-radius: 4px;
66
+ width: 100%;
144
67
  }
145
68
 
146
- .news-skeleton__stock-price {
147
- height: 18px;
148
- width: 60px;
149
- background-color: var(--skeleton-bg);
150
- border-radius: 4px;
69
+ /* Title partial line */
70
+ .news-skeleton__line--partial {
71
+ height: 14px;
72
+ width: 65%;
151
73
  }
152
74
 
153
- .news-skeleton__actions {
154
- display: flex;
155
- justify-content: flex-end;
156
- gap: 4px;
75
+ /* Source avatar circle */
76
+ .news-skeleton__line--avatar {
77
+ width: 16px;
78
+ height: 16px;
79
+ border-radius: 50%;
157
80
  }
158
81
 
159
- .news-skeleton__action-btn {
160
- width: 32px;
161
- height: 32px;
162
- border-radius: 50%;
163
- background-color: var(--skeleton-bg);
82
+ /* Source name */
83
+ .news-skeleton__line--source {
84
+ height: 12px;
85
+ width: 90px;
164
86
  }
165
87
 
166
- @keyframes pulse {
88
+ @keyframes skeleton-pulse {
167
89
  0%, 100% {
168
90
  opacity: 1;
169
91
  }
170
92
  50% {
171
- opacity: 0.5;
93
+ opacity: 0.45;
172
94
  }
173
95
  }
174
96
 
@@ -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;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;AAAA;EAGE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;AACA;EACE;EACA;EACA;;;AAGF;AACA;EACE;EACA;EACA;;;AAGF;AACA;EACE;EACA;;;AAGF;AACA;EACE;EACA;;;AAGF;AACA;EACE;EACA;EACA;;;AAGF;AACA;EACE;EACA;;;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,CA4BpD,CAAC"}
@@ -1,36 +1,15 @@
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' : ''}` },
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
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" })))))));
6
+ React.createElement("div", { className: "news-skeleton__line news-skeleton__line--timestamp" }),
7
+ React.createElement("div", { className: "news-skeleton__line news-skeleton__line--tag" })),
8
+ React.createElement("div", { className: "news-skeleton__body" },
9
+ React.createElement("div", { className: "news-skeleton__line news-skeleton__line--full" }),
10
+ React.createElement("div", { className: "news-skeleton__line news-skeleton__line--partial" })),
11
+ React.createElement("div", { className: "news-skeleton__footer" },
12
+ React.createElement("div", { className: "news-skeleton__line news-skeleton__line--avatar" }),
13
+ React.createElement("div", { className: "news-skeleton__line news-skeleton__line--source" })))))));
35
14
  };
36
15
  //# 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,uBAAuB;YACpC,6BAAK,SAAS,EAAC,oDAAoD,GAAG;YACtE,6BAAK,SAAS,EAAC,8CAA8C,GAAG,CAC5D;QAEN,6BAAK,SAAS,EAAC,qBAAqB;YAClC,6BAAK,SAAS,EAAC,+CAA+C,GAAG;YACjE,6BAAK,SAAS,EAAC,kDAAkD,GAAG,CAChE;QAEN,6BAAK,SAAS,EAAC,uBAAuB;YACpC,6BAAK,SAAS,EAAC,iDAAiD,GAAG;YACnE,6BAAK,SAAS,EAAC,iDAAiD,GAAG,CAC/D,CACF,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.29.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",