@limetech/lime-crm-building-blocks 1.92.1 → 1.92.2
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.
- package/CHANGELOG.md +7 -0
- package/dist/cjs/limebb-feed.cjs.entry.js +25 -19
- package/dist/cjs/limebb-icon-picker.cjs.entry.js +24 -0
- package/dist/collection/components/feed/feed.css +37 -3
- package/dist/collection/components/feed/feed.js +24 -18
- package/dist/components/limebb-feed.js +25 -19
- package/dist/components/limebb-icon-picker.js +24 -0
- package/dist/esm/limebb-feed.entry.js +25 -19
- package/dist/esm/limebb-icon-picker.entry.js +24 -0
- package/dist/lime-crm-building-blocks/lime-crm-building-blocks.esm.js +1 -1
- package/dist/lime-crm-building-blocks/{p-e71e462b.entry.js → p-46d2f604.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-bebe4db0.entry.js +1 -0
- package/dist/types/components/feed/feed.d.ts +6 -1
- package/package.json +3 -3
- package/dist/lime-crm-building-blocks/p-79d60b0f.entry.js +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
## [1.92.2](https://github.com/Lundalogik/lime-crm-building-blocks/compare/v1.92.1...v1.92.2) (2025-09-26)
|
|
2
|
+
|
|
3
|
+
### Bug Fixes
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
* **feed:** group items by date & keep the date visible while scrolling ([7ad1a86](https://github.com/Lundalogik/lime-crm-building-blocks/commit/7ad1a86839ed770611a2d471319047f3995fee34))
|
|
7
|
+
|
|
1
8
|
## [1.92.1](https://github.com/Lundalogik/lime-crm-building-blocks/compare/v1.92.0...v1.92.1) (2025-09-09)
|
|
2
9
|
|
|
3
10
|
### Bug Fixes
|
|
@@ -165,7 +165,7 @@ function differenceInMinutes(dateLeft, dateRight, options) {
|
|
|
165
165
|
return getRoundingMethod(options?.roundingMethod)(diff);
|
|
166
166
|
}
|
|
167
167
|
|
|
168
|
-
const feedCss = ":host(limebb-feed){--limebb-feed-background-color:var(\n --feed-background-color,\n rgb(var(--contrast-100))\n );--limebb-feed-item-background-color:var(--contrast-300);display:flex;flex-direction:column;gap:0.25rem;max-width:45rem;background-color:var(--limebb-feed-background-color)}limel-spinner{align-self:center;justify-self:center;margin:auto}.date-heading{
|
|
168
|
+
const feedCss = ":host(limebb-feed){--limebb-feed-background-color:var(\n --feed-background-color,\n rgb(var(--contrast-100))\n );--limebb-feed-item-background-color:var(--contrast-300);display:flex;flex-direction:column;gap:0.25rem;max-width:45rem;background-color:var(--limebb-feed-background-color)}limel-spinner{align-self:center;justify-self:center;margin:auto}.date-group{isolation:isolate;display:flex;flex-direction:column;gap:0.375rem}.date-heading{position:sticky;z-index:1;top:0.25rem;display:flex;border-radius:9rem;padding:0.25rem 0.5rem;margin:0 auto 0 -0.5rem;width:fit-content;font-size:0.75rem;line-height:1;color:rgb(var(--contrast-900));backdrop-filter:blur(0.5rem);-webkit-backdrop-filter:blur(0.5rem);transition:color 0.2s ease, border-color 0.4s ease}.date-heading:hover{color:rgb(var(--contrast-1000));border-color:rgb(var(--contrast-500))}.date-heading:hover:before{opacity:1}.date-heading:before{transition:opacity 0.2s ease;content:\"\";position:absolute;z-index:-1;inset:0;opacity:0.6;border-radius:inherit;background-color:rgb(var(--contrast-100))}limebb-feed-timeline-item:has(+limebb-feed-timeline-item[is-bundled]){--limebb-promoted-action-bar-grid-template-rows:0fr}.load-more-button{margin-top:0.5rem}.new-items-indicator{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:flex-end}.new-items-indicator hr{border:none;position:absolute;width:100%;height:1px;background-color:rgb(var(--color-red-lighter))}.new-items-indicator h3{z-index:1;padding:0 0.5rem;border-radius:1rem;margin:0.5rem 1rem;font-size:small;text-transform:lowercase;color:rgb(var(--color-red-default));background-color:var(--limebb-feed-background-color)}.new-items-indicator+.date-heading{margin-top:-0.5rem}limebb-feed-timeline-item:focus{outline:none}limebb-feed-timeline-item[aria-current=true]:focus{animation:highlight-animation ease-in-out;animation-duration:var(--limebb-feed-highlight-duration)}@keyframes highlight-animation{0%,20%,100%{box-shadow:none}10%,50%,60%{box-shadow:var(--shadow-focused-state)}}";
|
|
169
169
|
const LimebbFeedStyle0 = feedCss;
|
|
170
170
|
|
|
171
171
|
const MINUTES_OF_PROXIMITY = 5;
|
|
@@ -255,13 +255,10 @@ const Feed = class {
|
|
|
255
255
|
}
|
|
256
256
|
}
|
|
257
257
|
renderFeedItems() {
|
|
258
|
-
return this.items.map((item, index$1) =>
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
index.h("limebb-feed-timeline-item", { platform: this.platform, context: this.context, item: item, key: item.id, ui: item === null || item === void 0 ? void 0 : item.ui, helperText: item === null || item === void 0 ? void 0 : item.helperText, hasError: item === null || item === void 0 ? void 0 : item.hasError, isBundled: this.isBundled(item, index$1) }),
|
|
263
|
-
];
|
|
264
|
-
});
|
|
258
|
+
return this.groupedItems.map((group) => (index.h("section", { class: "date-group", key: `date-group-${group.date}-${group.items[0].index}` }, index.h("a", { class: "date-heading" }, group.date), group.items.map(({ item, index: index$1 }) => [
|
|
259
|
+
this.renderNewItemsIndicator(item.timestamp, index$1),
|
|
260
|
+
index.h("limebb-feed-timeline-item", { platform: this.platform, context: this.context, item: item, key: item.id, ui: item === null || item === void 0 ? void 0 : item.ui, helperText: item === null || item === void 0 ? void 0 : item.helperText, hasError: item === null || item === void 0 ? void 0 : item.hasError, isBundled: this.isBundled(item, index$1) }),
|
|
261
|
+
]))));
|
|
265
262
|
}
|
|
266
263
|
renderNewItemsIndicator(timestamp, index) {
|
|
267
264
|
if (!this.lastVisitedTimestamp) {
|
|
@@ -293,17 +290,6 @@ const Feed = class {
|
|
|
293
290
|
renderIndicator() {
|
|
294
291
|
return (index.h("div", { class: "new-items-indicator" }, index.h("hr", null), index.h("h3", null, this.translator.get('webclient.new'))));
|
|
295
292
|
}
|
|
296
|
-
renderDateHeader(timestamp, index$1) {
|
|
297
|
-
const currentIndexDate = this.dateTimeFormatter.format(timestamp, 'date');
|
|
298
|
-
if (index$1 === 0) {
|
|
299
|
-
return index.h("a", { class: "date-heading" }, currentIndexDate);
|
|
300
|
-
}
|
|
301
|
-
const previousIndexDate = this.dateTimeFormatter.format(this.items[index$1 - 1].timestamp, 'date');
|
|
302
|
-
if (previousIndexDate === currentIndexDate) {
|
|
303
|
-
return;
|
|
304
|
-
}
|
|
305
|
-
return index.h("a", { class: "date-heading" }, currentIndexDate);
|
|
306
|
-
}
|
|
307
293
|
renderLoadMore() {
|
|
308
294
|
if (this.items.length === 0 || this.totalCount <= this.items.length) {
|
|
309
295
|
return;
|
|
@@ -319,6 +305,26 @@ const Feed = class {
|
|
|
319
305
|
get translator() {
|
|
320
306
|
return this.platform.get(index_esm.c.Translate);
|
|
321
307
|
}
|
|
308
|
+
/**
|
|
309
|
+
* Groups feed items by calendar date (formatted using date formatter 'date').
|
|
310
|
+
* Returns an array of groups each containing the display date string and
|
|
311
|
+
* the original items with their indices.
|
|
312
|
+
*/
|
|
313
|
+
get groupedItems() {
|
|
314
|
+
const groups = [];
|
|
315
|
+
for (let index = 0; index < this.items.length; index++) {
|
|
316
|
+
const item = this.items[index];
|
|
317
|
+
const dateKey = this.dateTimeFormatter.format(item.timestamp, 'date');
|
|
318
|
+
const lastGroup = groups.at(-1);
|
|
319
|
+
if (!lastGroup || lastGroup.date !== dateKey) {
|
|
320
|
+
groups.push({ date: dateKey, items: [{ item, index }] });
|
|
321
|
+
}
|
|
322
|
+
else {
|
|
323
|
+
lastGroup.items.push({ item, index });
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
return groups;
|
|
327
|
+
}
|
|
322
328
|
highlightedItemIdChanged(newValue) {
|
|
323
329
|
if (newValue !== undefined) {
|
|
324
330
|
this.highlightItem(newValue);
|
|
@@ -26020,6 +26020,30 @@ const icons = [
|
|
|
26020
26020
|
"userlike"
|
|
26021
26021
|
]
|
|
26022
26022
|
},
|
|
26023
|
+
{
|
|
26024
|
+
id: "-lime-logo-bankid-sweden.svg",
|
|
26025
|
+
tags: [
|
|
26026
|
+
"esign"
|
|
26027
|
+
]
|
|
26028
|
+
},
|
|
26029
|
+
{
|
|
26030
|
+
id: "-lime-logo-bankid-norway.svg",
|
|
26031
|
+
tags: [
|
|
26032
|
+
"esign"
|
|
26033
|
+
]
|
|
26034
|
+
},
|
|
26035
|
+
{
|
|
26036
|
+
id: "-lime-logo-ftn.svg",
|
|
26037
|
+
tags: [
|
|
26038
|
+
"esign"
|
|
26039
|
+
]
|
|
26040
|
+
},
|
|
26041
|
+
{
|
|
26042
|
+
id: "-lime-logo-mitid.svg",
|
|
26043
|
+
tags: [
|
|
26044
|
+
"esign"
|
|
26045
|
+
]
|
|
26046
|
+
},
|
|
26023
26047
|
{
|
|
26024
26048
|
id: "-lime-widget-size-preset-full-width.svg",
|
|
26025
26049
|
tags: [
|
|
@@ -20,11 +20,45 @@ limel-spinner {
|
|
|
20
20
|
margin: auto;
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
+
.date-group {
|
|
24
|
+
isolation: isolate;
|
|
25
|
+
display: flex;
|
|
26
|
+
flex-direction: column;
|
|
27
|
+
gap: 0.375rem;
|
|
28
|
+
}
|
|
29
|
+
|
|
23
30
|
.date-heading {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
31
|
+
position: sticky;
|
|
32
|
+
z-index: 1;
|
|
33
|
+
top: 0.25rem;
|
|
34
|
+
display: flex;
|
|
35
|
+
border-radius: 9rem;
|
|
36
|
+
padding: 0.25rem 0.5rem;
|
|
37
|
+
margin: 0 auto 0 -0.5rem;
|
|
38
|
+
width: fit-content;
|
|
39
|
+
font-size: 0.75rem;
|
|
40
|
+
line-height: 1;
|
|
27
41
|
color: rgb(var(--contrast-900));
|
|
42
|
+
backdrop-filter: blur(0.5rem);
|
|
43
|
+
-webkit-backdrop-filter: blur(0.5rem);
|
|
44
|
+
transition: color 0.2s ease, border-color 0.4s ease;
|
|
45
|
+
}
|
|
46
|
+
.date-heading:hover {
|
|
47
|
+
color: rgb(var(--contrast-1000));
|
|
48
|
+
border-color: rgb(var(--contrast-500));
|
|
49
|
+
}
|
|
50
|
+
.date-heading:hover:before {
|
|
51
|
+
opacity: 1;
|
|
52
|
+
}
|
|
53
|
+
.date-heading:before {
|
|
54
|
+
transition: opacity 0.2s ease;
|
|
55
|
+
content: "";
|
|
56
|
+
position: absolute;
|
|
57
|
+
z-index: -1;
|
|
58
|
+
inset: 0;
|
|
59
|
+
opacity: 0.6;
|
|
60
|
+
border-radius: inherit;
|
|
61
|
+
background-color: rgb(var(--contrast-100));
|
|
28
62
|
}
|
|
29
63
|
|
|
30
64
|
limebb-feed-timeline-item:has(+ limebb-feed-timeline-item[is-bundled]) {
|
|
@@ -117,13 +117,10 @@ export class Feed {
|
|
|
117
117
|
}
|
|
118
118
|
}
|
|
119
119
|
renderFeedItems() {
|
|
120
|
-
return this.items.map((item, index) =>
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
h("limebb-feed-timeline-item", { platform: this.platform, context: this.context, item: item, key: item.id, ui: item === null || item === void 0 ? void 0 : item.ui, helperText: item === null || item === void 0 ? void 0 : item.helperText, hasError: item === null || item === void 0 ? void 0 : item.hasError, isBundled: this.isBundled(item, index) }),
|
|
125
|
-
];
|
|
126
|
-
});
|
|
120
|
+
return this.groupedItems.map((group) => (h("section", { class: "date-group", key: `date-group-${group.date}-${group.items[0].index}` }, h("a", { class: "date-heading" }, group.date), group.items.map(({ item, index }) => [
|
|
121
|
+
this.renderNewItemsIndicator(item.timestamp, index),
|
|
122
|
+
h("limebb-feed-timeline-item", { platform: this.platform, context: this.context, item: item, key: item.id, ui: item === null || item === void 0 ? void 0 : item.ui, helperText: item === null || item === void 0 ? void 0 : item.helperText, hasError: item === null || item === void 0 ? void 0 : item.hasError, isBundled: this.isBundled(item, index) }),
|
|
123
|
+
]))));
|
|
127
124
|
}
|
|
128
125
|
renderNewItemsIndicator(timestamp, index) {
|
|
129
126
|
if (!this.lastVisitedTimestamp) {
|
|
@@ -155,17 +152,6 @@ export class Feed {
|
|
|
155
152
|
renderIndicator() {
|
|
156
153
|
return (h("div", { class: "new-items-indicator" }, h("hr", null), h("h3", null, this.translator.get('webclient.new'))));
|
|
157
154
|
}
|
|
158
|
-
renderDateHeader(timestamp, index) {
|
|
159
|
-
const currentIndexDate = this.dateTimeFormatter.format(timestamp, 'date');
|
|
160
|
-
if (index === 0) {
|
|
161
|
-
return h("a", { class: "date-heading" }, currentIndexDate);
|
|
162
|
-
}
|
|
163
|
-
const previousIndexDate = this.dateTimeFormatter.format(this.items[index - 1].timestamp, 'date');
|
|
164
|
-
if (previousIndexDate === currentIndexDate) {
|
|
165
|
-
return;
|
|
166
|
-
}
|
|
167
|
-
return h("a", { class: "date-heading" }, currentIndexDate);
|
|
168
|
-
}
|
|
169
155
|
renderLoadMore() {
|
|
170
156
|
if (this.items.length === 0 || this.totalCount <= this.items.length) {
|
|
171
157
|
return;
|
|
@@ -181,6 +167,26 @@ export class Feed {
|
|
|
181
167
|
get translator() {
|
|
182
168
|
return this.platform.get(PlatformServiceName.Translate);
|
|
183
169
|
}
|
|
170
|
+
/**
|
|
171
|
+
* Groups feed items by calendar date (formatted using date formatter 'date').
|
|
172
|
+
* Returns an array of groups each containing the display date string and
|
|
173
|
+
* the original items with their indices.
|
|
174
|
+
*/
|
|
175
|
+
get groupedItems() {
|
|
176
|
+
const groups = [];
|
|
177
|
+
for (let index = 0; index < this.items.length; index++) {
|
|
178
|
+
const item = this.items[index];
|
|
179
|
+
const dateKey = this.dateTimeFormatter.format(item.timestamp, 'date');
|
|
180
|
+
const lastGroup = groups.at(-1);
|
|
181
|
+
if (!lastGroup || lastGroup.date !== dateKey) {
|
|
182
|
+
groups.push({ date: dateKey, items: [{ item, index }] });
|
|
183
|
+
}
|
|
184
|
+
else {
|
|
185
|
+
lastGroup.items.push({ item, index });
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
return groups;
|
|
189
|
+
}
|
|
184
190
|
highlightedItemIdChanged(newValue) {
|
|
185
191
|
if (newValue !== undefined) {
|
|
186
192
|
this.highlightItem(newValue);
|
|
@@ -166,7 +166,7 @@ function differenceInMinutes(dateLeft, dateRight, options) {
|
|
|
166
166
|
return getRoundingMethod(options?.roundingMethod)(diff);
|
|
167
167
|
}
|
|
168
168
|
|
|
169
|
-
const feedCss = ":host(limebb-feed){--limebb-feed-background-color:var(\n --feed-background-color,\n rgb(var(--contrast-100))\n );--limebb-feed-item-background-color:var(--contrast-300);display:flex;flex-direction:column;gap:0.25rem;max-width:45rem;background-color:var(--limebb-feed-background-color)}limel-spinner{align-self:center;justify-self:center;margin:auto}.date-heading{
|
|
169
|
+
const feedCss = ":host(limebb-feed){--limebb-feed-background-color:var(\n --feed-background-color,\n rgb(var(--contrast-100))\n );--limebb-feed-item-background-color:var(--contrast-300);display:flex;flex-direction:column;gap:0.25rem;max-width:45rem;background-color:var(--limebb-feed-background-color)}limel-spinner{align-self:center;justify-self:center;margin:auto}.date-group{isolation:isolate;display:flex;flex-direction:column;gap:0.375rem}.date-heading{position:sticky;z-index:1;top:0.25rem;display:flex;border-radius:9rem;padding:0.25rem 0.5rem;margin:0 auto 0 -0.5rem;width:fit-content;font-size:0.75rem;line-height:1;color:rgb(var(--contrast-900));backdrop-filter:blur(0.5rem);-webkit-backdrop-filter:blur(0.5rem);transition:color 0.2s ease, border-color 0.4s ease}.date-heading:hover{color:rgb(var(--contrast-1000));border-color:rgb(var(--contrast-500))}.date-heading:hover:before{opacity:1}.date-heading:before{transition:opacity 0.2s ease;content:\"\";position:absolute;z-index:-1;inset:0;opacity:0.6;border-radius:inherit;background-color:rgb(var(--contrast-100))}limebb-feed-timeline-item:has(+limebb-feed-timeline-item[is-bundled]){--limebb-promoted-action-bar-grid-template-rows:0fr}.load-more-button{margin-top:0.5rem}.new-items-indicator{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:flex-end}.new-items-indicator hr{border:none;position:absolute;width:100%;height:1px;background-color:rgb(var(--color-red-lighter))}.new-items-indicator h3{z-index:1;padding:0 0.5rem;border-radius:1rem;margin:0.5rem 1rem;font-size:small;text-transform:lowercase;color:rgb(var(--color-red-default));background-color:var(--limebb-feed-background-color)}.new-items-indicator+.date-heading{margin-top:-0.5rem}limebb-feed-timeline-item:focus{outline:none}limebb-feed-timeline-item[aria-current=true]:focus{animation:highlight-animation ease-in-out;animation-duration:var(--limebb-feed-highlight-duration)}@keyframes highlight-animation{0%,20%,100%{box-shadow:none}10%,50%,60%{box-shadow:var(--shadow-focused-state)}}";
|
|
170
170
|
const LimebbFeedStyle0 = feedCss;
|
|
171
171
|
|
|
172
172
|
const MINUTES_OF_PROXIMITY = 5;
|
|
@@ -258,13 +258,10 @@ const Feed = /*@__PURE__*/ proxyCustomElement(class Feed extends HTMLElement {
|
|
|
258
258
|
}
|
|
259
259
|
}
|
|
260
260
|
renderFeedItems() {
|
|
261
|
-
return this.items.map((item, index) =>
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
h("limebb-feed-timeline-item", { platform: this.platform, context: this.context, item: item, key: item.id, ui: item === null || item === void 0 ? void 0 : item.ui, helperText: item === null || item === void 0 ? void 0 : item.helperText, hasError: item === null || item === void 0 ? void 0 : item.hasError, isBundled: this.isBundled(item, index) }),
|
|
266
|
-
];
|
|
267
|
-
});
|
|
261
|
+
return this.groupedItems.map((group) => (h("section", { class: "date-group", key: `date-group-${group.date}-${group.items[0].index}` }, h("a", { class: "date-heading" }, group.date), group.items.map(({ item, index }) => [
|
|
262
|
+
this.renderNewItemsIndicator(item.timestamp, index),
|
|
263
|
+
h("limebb-feed-timeline-item", { platform: this.platform, context: this.context, item: item, key: item.id, ui: item === null || item === void 0 ? void 0 : item.ui, helperText: item === null || item === void 0 ? void 0 : item.helperText, hasError: item === null || item === void 0 ? void 0 : item.hasError, isBundled: this.isBundled(item, index) }),
|
|
264
|
+
]))));
|
|
268
265
|
}
|
|
269
266
|
renderNewItemsIndicator(timestamp, index) {
|
|
270
267
|
if (!this.lastVisitedTimestamp) {
|
|
@@ -296,17 +293,6 @@ const Feed = /*@__PURE__*/ proxyCustomElement(class Feed extends HTMLElement {
|
|
|
296
293
|
renderIndicator() {
|
|
297
294
|
return (h("div", { class: "new-items-indicator" }, h("hr", null), h("h3", null, this.translator.get('webclient.new'))));
|
|
298
295
|
}
|
|
299
|
-
renderDateHeader(timestamp, index) {
|
|
300
|
-
const currentIndexDate = this.dateTimeFormatter.format(timestamp, 'date');
|
|
301
|
-
if (index === 0) {
|
|
302
|
-
return h("a", { class: "date-heading" }, currentIndexDate);
|
|
303
|
-
}
|
|
304
|
-
const previousIndexDate = this.dateTimeFormatter.format(this.items[index - 1].timestamp, 'date');
|
|
305
|
-
if (previousIndexDate === currentIndexDate) {
|
|
306
|
-
return;
|
|
307
|
-
}
|
|
308
|
-
return h("a", { class: "date-heading" }, currentIndexDate);
|
|
309
|
-
}
|
|
310
296
|
renderLoadMore() {
|
|
311
297
|
if (this.items.length === 0 || this.totalCount <= this.items.length) {
|
|
312
298
|
return;
|
|
@@ -322,6 +308,26 @@ const Feed = /*@__PURE__*/ proxyCustomElement(class Feed extends HTMLElement {
|
|
|
322
308
|
get translator() {
|
|
323
309
|
return this.platform.get(c.Translate);
|
|
324
310
|
}
|
|
311
|
+
/**
|
|
312
|
+
* Groups feed items by calendar date (formatted using date formatter 'date').
|
|
313
|
+
* Returns an array of groups each containing the display date string and
|
|
314
|
+
* the original items with their indices.
|
|
315
|
+
*/
|
|
316
|
+
get groupedItems() {
|
|
317
|
+
const groups = [];
|
|
318
|
+
for (let index = 0; index < this.items.length; index++) {
|
|
319
|
+
const item = this.items[index];
|
|
320
|
+
const dateKey = this.dateTimeFormatter.format(item.timestamp, 'date');
|
|
321
|
+
const lastGroup = groups.at(-1);
|
|
322
|
+
if (!lastGroup || lastGroup.date !== dateKey) {
|
|
323
|
+
groups.push({ date: dateKey, items: [{ item, index }] });
|
|
324
|
+
}
|
|
325
|
+
else {
|
|
326
|
+
lastGroup.items.push({ item, index });
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
return groups;
|
|
330
|
+
}
|
|
325
331
|
highlightedItemIdChanged(newValue) {
|
|
326
332
|
if (newValue !== undefined) {
|
|
327
333
|
this.highlightItem(newValue);
|
|
@@ -26016,6 +26016,30 @@ const icons = [
|
|
|
26016
26016
|
"userlike"
|
|
26017
26017
|
]
|
|
26018
26018
|
},
|
|
26019
|
+
{
|
|
26020
|
+
id: "-lime-logo-bankid-sweden.svg",
|
|
26021
|
+
tags: [
|
|
26022
|
+
"esign"
|
|
26023
|
+
]
|
|
26024
|
+
},
|
|
26025
|
+
{
|
|
26026
|
+
id: "-lime-logo-bankid-norway.svg",
|
|
26027
|
+
tags: [
|
|
26028
|
+
"esign"
|
|
26029
|
+
]
|
|
26030
|
+
},
|
|
26031
|
+
{
|
|
26032
|
+
id: "-lime-logo-ftn.svg",
|
|
26033
|
+
tags: [
|
|
26034
|
+
"esign"
|
|
26035
|
+
]
|
|
26036
|
+
},
|
|
26037
|
+
{
|
|
26038
|
+
id: "-lime-logo-mitid.svg",
|
|
26039
|
+
tags: [
|
|
26040
|
+
"esign"
|
|
26041
|
+
]
|
|
26042
|
+
},
|
|
26019
26043
|
{
|
|
26020
26044
|
id: "-lime-widget-size-preset-full-width.svg",
|
|
26021
26045
|
tags: [
|
|
@@ -161,7 +161,7 @@ function differenceInMinutes(dateLeft, dateRight, options) {
|
|
|
161
161
|
return getRoundingMethod(options?.roundingMethod)(diff);
|
|
162
162
|
}
|
|
163
163
|
|
|
164
|
-
const feedCss = ":host(limebb-feed){--limebb-feed-background-color:var(\n --feed-background-color,\n rgb(var(--contrast-100))\n );--limebb-feed-item-background-color:var(--contrast-300);display:flex;flex-direction:column;gap:0.25rem;max-width:45rem;background-color:var(--limebb-feed-background-color)}limel-spinner{align-self:center;justify-self:center;margin:auto}.date-heading{
|
|
164
|
+
const feedCss = ":host(limebb-feed){--limebb-feed-background-color:var(\n --feed-background-color,\n rgb(var(--contrast-100))\n );--limebb-feed-item-background-color:var(--contrast-300);display:flex;flex-direction:column;gap:0.25rem;max-width:45rem;background-color:var(--limebb-feed-background-color)}limel-spinner{align-self:center;justify-self:center;margin:auto}.date-group{isolation:isolate;display:flex;flex-direction:column;gap:0.375rem}.date-heading{position:sticky;z-index:1;top:0.25rem;display:flex;border-radius:9rem;padding:0.25rem 0.5rem;margin:0 auto 0 -0.5rem;width:fit-content;font-size:0.75rem;line-height:1;color:rgb(var(--contrast-900));backdrop-filter:blur(0.5rem);-webkit-backdrop-filter:blur(0.5rem);transition:color 0.2s ease, border-color 0.4s ease}.date-heading:hover{color:rgb(var(--contrast-1000));border-color:rgb(var(--contrast-500))}.date-heading:hover:before{opacity:1}.date-heading:before{transition:opacity 0.2s ease;content:\"\";position:absolute;z-index:-1;inset:0;opacity:0.6;border-radius:inherit;background-color:rgb(var(--contrast-100))}limebb-feed-timeline-item:has(+limebb-feed-timeline-item[is-bundled]){--limebb-promoted-action-bar-grid-template-rows:0fr}.load-more-button{margin-top:0.5rem}.new-items-indicator{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:flex-end}.new-items-indicator hr{border:none;position:absolute;width:100%;height:1px;background-color:rgb(var(--color-red-lighter))}.new-items-indicator h3{z-index:1;padding:0 0.5rem;border-radius:1rem;margin:0.5rem 1rem;font-size:small;text-transform:lowercase;color:rgb(var(--color-red-default));background-color:var(--limebb-feed-background-color)}.new-items-indicator+.date-heading{margin-top:-0.5rem}limebb-feed-timeline-item:focus{outline:none}limebb-feed-timeline-item[aria-current=true]:focus{animation:highlight-animation ease-in-out;animation-duration:var(--limebb-feed-highlight-duration)}@keyframes highlight-animation{0%,20%,100%{box-shadow:none}10%,50%,60%{box-shadow:var(--shadow-focused-state)}}";
|
|
165
165
|
const LimebbFeedStyle0 = feedCss;
|
|
166
166
|
|
|
167
167
|
const MINUTES_OF_PROXIMITY = 5;
|
|
@@ -251,13 +251,10 @@ const Feed = class {
|
|
|
251
251
|
}
|
|
252
252
|
}
|
|
253
253
|
renderFeedItems() {
|
|
254
|
-
return this.items.map((item, index) =>
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
h("limebb-feed-timeline-item", { platform: this.platform, context: this.context, item: item, key: item.id, ui: item === null || item === void 0 ? void 0 : item.ui, helperText: item === null || item === void 0 ? void 0 : item.helperText, hasError: item === null || item === void 0 ? void 0 : item.hasError, isBundled: this.isBundled(item, index) }),
|
|
259
|
-
];
|
|
260
|
-
});
|
|
254
|
+
return this.groupedItems.map((group) => (h("section", { class: "date-group", key: `date-group-${group.date}-${group.items[0].index}` }, h("a", { class: "date-heading" }, group.date), group.items.map(({ item, index }) => [
|
|
255
|
+
this.renderNewItemsIndicator(item.timestamp, index),
|
|
256
|
+
h("limebb-feed-timeline-item", { platform: this.platform, context: this.context, item: item, key: item.id, ui: item === null || item === void 0 ? void 0 : item.ui, helperText: item === null || item === void 0 ? void 0 : item.helperText, hasError: item === null || item === void 0 ? void 0 : item.hasError, isBundled: this.isBundled(item, index) }),
|
|
257
|
+
]))));
|
|
261
258
|
}
|
|
262
259
|
renderNewItemsIndicator(timestamp, index) {
|
|
263
260
|
if (!this.lastVisitedTimestamp) {
|
|
@@ -289,17 +286,6 @@ const Feed = class {
|
|
|
289
286
|
renderIndicator() {
|
|
290
287
|
return (h("div", { class: "new-items-indicator" }, h("hr", null), h("h3", null, this.translator.get('webclient.new'))));
|
|
291
288
|
}
|
|
292
|
-
renderDateHeader(timestamp, index) {
|
|
293
|
-
const currentIndexDate = this.dateTimeFormatter.format(timestamp, 'date');
|
|
294
|
-
if (index === 0) {
|
|
295
|
-
return h("a", { class: "date-heading" }, currentIndexDate);
|
|
296
|
-
}
|
|
297
|
-
const previousIndexDate = this.dateTimeFormatter.format(this.items[index - 1].timestamp, 'date');
|
|
298
|
-
if (previousIndexDate === currentIndexDate) {
|
|
299
|
-
return;
|
|
300
|
-
}
|
|
301
|
-
return h("a", { class: "date-heading" }, currentIndexDate);
|
|
302
|
-
}
|
|
303
289
|
renderLoadMore() {
|
|
304
290
|
if (this.items.length === 0 || this.totalCount <= this.items.length) {
|
|
305
291
|
return;
|
|
@@ -315,6 +301,26 @@ const Feed = class {
|
|
|
315
301
|
get translator() {
|
|
316
302
|
return this.platform.get(c.Translate);
|
|
317
303
|
}
|
|
304
|
+
/**
|
|
305
|
+
* Groups feed items by calendar date (formatted using date formatter 'date').
|
|
306
|
+
* Returns an array of groups each containing the display date string and
|
|
307
|
+
* the original items with their indices.
|
|
308
|
+
*/
|
|
309
|
+
get groupedItems() {
|
|
310
|
+
const groups = [];
|
|
311
|
+
for (let index = 0; index < this.items.length; index++) {
|
|
312
|
+
const item = this.items[index];
|
|
313
|
+
const dateKey = this.dateTimeFormatter.format(item.timestamp, 'date');
|
|
314
|
+
const lastGroup = groups.at(-1);
|
|
315
|
+
if (!lastGroup || lastGroup.date !== dateKey) {
|
|
316
|
+
groups.push({ date: dateKey, items: [{ item, index }] });
|
|
317
|
+
}
|
|
318
|
+
else {
|
|
319
|
+
lastGroup.items.push({ item, index });
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
return groups;
|
|
323
|
+
}
|
|
318
324
|
highlightedItemIdChanged(newValue) {
|
|
319
325
|
if (newValue !== undefined) {
|
|
320
326
|
this.highlightItem(newValue);
|
|
@@ -26016,6 +26016,30 @@ const icons = [
|
|
|
26016
26016
|
"userlike"
|
|
26017
26017
|
]
|
|
26018
26018
|
},
|
|
26019
|
+
{
|
|
26020
|
+
id: "-lime-logo-bankid-sweden.svg",
|
|
26021
|
+
tags: [
|
|
26022
|
+
"esign"
|
|
26023
|
+
]
|
|
26024
|
+
},
|
|
26025
|
+
{
|
|
26026
|
+
id: "-lime-logo-bankid-norway.svg",
|
|
26027
|
+
tags: [
|
|
26028
|
+
"esign"
|
|
26029
|
+
]
|
|
26030
|
+
},
|
|
26031
|
+
{
|
|
26032
|
+
id: "-lime-logo-ftn.svg",
|
|
26033
|
+
tags: [
|
|
26034
|
+
"esign"
|
|
26035
|
+
]
|
|
26036
|
+
},
|
|
26037
|
+
{
|
|
26038
|
+
id: "-lime-logo-mitid.svg",
|
|
26039
|
+
tags: [
|
|
26040
|
+
"esign"
|
|
26041
|
+
]
|
|
26042
|
+
},
|
|
26019
26043
|
{
|
|
26020
26044
|
id: "-lime-widget-size-preset-full-width.svg",
|
|
26021
26045
|
tags: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e,b as t}from"./p-1556b545.js";export{s as setNonce}from"./p-1556b545.js";import{g as i}from"./p-e1255160.js";(()=>{const t=import.meta.url,i={};return""!==t&&(i.resourcesUrl=new URL(".",t).href),e(i)})().then((async e=>(await i(),t([["p-
|
|
1
|
+
import{p as e,b as t}from"./p-1556b545.js";export{s as setNonce}from"./p-1556b545.js";import{g as i}from"./p-e1255160.js";(()=>{const t=import.meta.url,i={};return""!==t&&(i.resourcesUrl=new URL(".",t).href),e(i)})().then((async e=>(await i(),t([["p-bebe4db0",[[1,"limebb-feed",{platform:[16],context:[16],items:[16],emptyStateMessage:[1,"empty-state-message"],heading:[1],loading:[4],minutesOfProximity:[2,"minutes-of-proximity"],totalCount:[2,"total-count"],direction:[1],lastVisitedTimestamp:[1,"last-visited-timestamp"],highlightedItemId:[8,"highlighted-item-id"]},null,{highlightedItemId:["highlightedItemIdChanged"]}]]],["p-3a406a20",[[1,"limebb-kanban",{platform:[16],context:[16],groups:[16]}]]],["p-8c8b7115",[[1,"limebb-chat-list",{platform:[16],context:[16],items:[16],loading:[516],isTypingIndicatorVisible:[516,"is-typing-indicator-visible"],lastVisitedTimestamp:[513,"last-visited-timestamp"],order:[513]},null,{items:["handleItemsChange"]}]]],["p-efc9d455",[[1,"limebb-text-editor",{platform:[16],context:[16],allowMentioning:[4,"allow-mentioning"],contentType:[1,"content-type"],language:[513],disabled:[516],readonly:[516],helperText:[513,"helper-text"],placeholder:[513],label:[513],invalid:[516],required:[516],selectedContext:[16],ui:[513],allowResize:[4,"allow-resize"],value:[1],draftIdentifier:[1,"draft-identifier"],triggerMap:[16],customElements:[16],allowInlineImages:[4,"allow-inline-images"],items:[32],highlightedItemIndex:[32],editorPickerQuery:[32],searchableLimetypes:[32],isPickerOpen:[32],isSearching:[32]},null,{isPickerOpen:["watchOpen"],editorPickerQuery:["watchQuery"]}]]],["p-8491aaa1",[[1,"limebb-date-range",{platform:[16],context:[16],startTime:[16],endTime:[16],startTimeLabel:[1,"start-time-label"],endTimeLabel:[1,"end-time-label"],language:[1],timeFormat:[1,"time-format"],type:[1]}]]],["p-568b7520",[[1,"limebb-info-tile-currency-format",{platform:[16],context:[16],value:[16]}]]],["p-42f6a0d2",[[1,"limebb-limeobject-file-viewer",{platform:[16],context:[16],property:[1],fileTypes:[16],limeobject:[32],limetype:[32]}]]],["p-d4016891",[[1,"limebb-notification-list",{platform:[16],context:[16],items:[16],loading:[4],lastVisitedTimestamp:[1,"last-visited-timestamp"]},null,{items:["handleItemsChange"]}]]],["p-5e4ba110",[[17,"limebb-browser",{platform:[16],context:[16],items:[16],layout:[1],filter:[32]}]]],["p-92ec9205",[[1,"limebb-component-config",{platform:[16],context:[16],value:[16],required:[4],readonly:[4],disabled:[4],label:[1],helperText:[1,"helper-text"],formInfo:[16],type:[1],nameField:[1,"name-field"],configComponent:[32],configViewType:[32]},null,{formInfo:["watchFormInfo"],configComponent:["watchconfigComponent"]}]]],["p-42e52b50",[[1,"limebb-component-picker",{platform:[16],context:[16],type:[1],tags:[16],value:[1],copyLabel:[1,"copy-label"],hideCopyButton:[4,"hide-copy-button"],required:[4],readonly:[4],disabled:[4],label:[1],helperText:[1,"helper-text"]}]]],["p-10ac8b3e",[[1,"limebb-dashboard-widget",{heading:[513],subheading:[513],supportingText:[513,"supporting-text"],icon:[513]}]]],["p-46d2f604",[[1,"limebb-icon-picker",{value:[1],required:[4],readonly:[4],invalid:[4],disabled:[4],label:[1],helperText:[1,"helper-text"]}]]],["p-16199127",[[1,"limebb-info-tile",{platform:[16],context:[16],filterId:[513,"filter-id"],disabled:[4],icon:[513],label:[1],prefix:[1],suffix:[1],propertyName:[1,"property-name"],aggregateOperator:[1,"aggregate-operator"],format:[16],config:[32],filters:[32],value:[32],loading:[32],error:[32]},null,{filterId:["watchFilterId"],propertyName:["watchPropertyName"],aggregateOperator:["watchAggregateOperator"]}]]],["p-01cff04f",[[1,"limebb-info-tile-date-format",{value:[16]}]]],["p-4caa8bbe",[[1,"limebb-info-tile-decimal-format",{value:[16]}]]],["p-d6af09a8",[[1,"limebb-info-tile-format",{platform:[16],context:[16],type:[1],value:[16]}]]],["p-25e1a434",[[1,"limebb-info-tile-relative-date-format",{value:[16]}]]],["p-6c56121c",[[1,"limebb-info-tile-unit-format",{value:[16]}]]],["p-2aa18c2b",[[1,"limebb-loader",{platform:[16],context:[16]}]]],["p-98c63d2d",[[1,"limebb-locale-picker",{platform:[16],context:[16],value:[1],required:[4],disabled:[4],label:[1],helperText:[1,"helper-text"],readonly:[4],multipleChoice:[4,"multiple-choice"],allLanguages:[32]}]]],["p-3a620226",[[1,"limebb-mention",{limetype:[1],objectid:[2],limeobject:[32]}]]],["p-5821e0c8",[[1,"limebb-mention-group-counter",{count:[2],limetype:[16],helperLabel:[1,"helper-label"]}]]],["p-df6ff5d6",[[1,"limebb-percentage-visualizer",{platform:[16],context:[16],value:[520],rangeMax:[514,"range-max"],rangeMin:[514,"range-min"],multiplier:[514],label:[513],invalid:[516],required:[516],helperText:[513,"helper-text"],reducePresence:[516,"reduce-presence"],displayPercentageColors:[516,"display-percentage-colors"]},null,{value:["valueChanged"]}]]],["p-aac46e3c",[[1,"limebb-trend-indicator",{platform:[16],context:[16],value:[520],formerValue:[514,"former-value"],suffix:[513],label:[513],invalid:[516],required:[516],helperText:[513,"helper-text"],reducePresence:[516,"reduce-presence"]},null,{value:["valueChanged"]}]]],["p-a44f543c",[[1,"limebb-feed-item-thumbnail-file-info",{description:[1]}]]],["p-5f336ee9",[[1,"limebb-summary-popover",{triggerDelay:[514,"trigger-delay"],heading:[513],subheading:[513],image:[16],icon:[513],value:[1],openDirection:[513,"open-direction"],popoverMaxWidth:[513,"popover-max-width"],popoverMaxHeight:[513,"popover-max-height"],actions:[16],isPopoverOpen:[32]}],[17,"limebb-navigation-button",{href:[513],tooltipLabel:[513,"tooltip-label"],tooltipHelperLabel:[513,"tooltip-helper-label"],type:[513]}]]],["p-e2f9e0cc",[[1,"limebb-feed-timeline-item",{platform:[16],context:[16],item:[16],ui:[513],helperText:[1,"helper-text"],hasError:[516,"has-error"],isBundled:[516,"is-bundled"],headingCanExpand:[32],isHeadingExpanded:[32],showMore:[32],isTall:[32]}]]],["p-88cc5b66",[[1,"limebb-kanban-group",{platform:[16],context:[16],identifier:[1],heading:[513],help:[1],items:[16],summary:[1],loading:[516],totalCount:[514,"total-count"]}]]],["p-218b7f38",[[1,"limebb-text-editor-picker",{items:[16],open:[516],isSearching:[4,"is-searching"],emptyMessage:[1,"empty-message"]},null,{open:["watchOpen"]}]]],["p-34357744",[[1,"limebb-currency-picker",{platform:[16],context:[16],label:[513],currencies:[16],helperText:[513,"helper-text"],required:[516],readonly:[516],invalid:[516],disabled:[516],value:[1]}]]],["p-f402184f",[[1,"limebb-date-picker",{platform:[16],context:[16],disabled:[516],readonly:[516],invalid:[516],label:[513],placeholder:[513],helperText:[513,"helper-text"],required:[516],value:[1],type:[513]}]]],["p-8274ea5c",[[1,"limebb-live-docs-info"]]],["p-e3c0183c",[[1,"limebb-notification-item",{platform:[16],context:[16],item:[16]}]]],["p-5be6acf1",[[1,"limebb-kanban-item",{platform:[16],context:[16],item:[16]}]]],["p-3b42fbbc",[[1,"limebb-chat-item",{platform:[16],context:[16],item:[16],helperText:[1,"helper-text"],hasError:[516,"has-error"]}],[1,"limebb-typing-indicator"]]],["p-292631ea",[[1,"limebb-empty-state",{heading:[513],value:[513],icon:[16]}]]]],e))));
|