impact-nova 1.7.43 → 1.7.50

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,5 +1,4 @@
1
- import { default as React } from 'react';
2
- import { NotificationListProps, NotificationGroupProps } from '../types/notification-panel.types';
3
- export declare const NotificationEmpty: ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => import("react/jsx-runtime").JSX.Element;
4
- export declare const NotificationList: ({ children, className, onLoadMore, isLoading, hasMore, loader, emptyState }: NotificationListProps) => import("react/jsx-runtime").JSX.Element;
5
- export declare const NotificationGroup: ({ label, children, className }: NotificationGroupProps) => import("react/jsx-runtime").JSX.Element;
1
+ import { NotificationListProps, NotificationGroupProps, NotificationEmptyProps } from '../types/notification-panel.types';
2
+ export declare const NotificationEmpty: ({ title, description, className, ...props }: NotificationEmptyProps) => import("react/jsx-runtime").JSX.Element;
3
+ export declare const NotificationList: ({ children, className, onLoadMore, isLoading, hasMore, loader, }: NotificationListProps) => import("react/jsx-runtime").JSX.Element;
4
+ export declare const NotificationGroup: ({ label, children, className, }: NotificationGroupProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,45 +1,82 @@
1
- import { jsxs as c, jsx as e } from "react/jsx-runtime";
2
- import p, { useRef as d, useEffect as x } from "react";
3
- import { cn as i } from "../../../lib/utils.js";
4
- import { Loader2 as h } from "lucide-react";
5
- import { MulticolorBell as v } from "../../../icons/index.js";
6
- const E = ({ className: t, ...r }) => /* @__PURE__ */ c("div", { className: i("flex flex-col gap-4 items-center justify-center h-full text-center p-8", t), ...r, children: [
7
- /* @__PURE__ */ e(v, { size: 72 }),
8
- /* @__PURE__ */ c("div", { children: [
9
- /* @__PURE__ */ e("h3", { className: "text-xl font-bold text-content", children: "Everything looks quiet for now" }),
10
- /* @__PURE__ */ e("p", { className: "text-sm text-navigation-muted", children: "We'll notify you when something new comes up" })
11
- ] })
12
- ] }), j = ({
13
- children: t,
14
- className: r,
15
- onLoadMore: l,
1
+ import { jsxs as l, jsx as e } from "react/jsx-runtime";
2
+ import { useRef as p, useEffect as u } from "react";
3
+ import { cn as a } from "../../../lib/utils.js";
4
+ import { Loader2 as d } from "lucide-react";
5
+ import { MulticolorBell as x } from "../../../icons/index.js";
6
+ import { useImpactNovaI18n as v } from "../../../i18n/ImpactNovaI18nContext.js";
7
+ const w = ({
8
+ title: r,
9
+ description: i,
10
+ className: t,
11
+ ...o
12
+ }) => {
13
+ const { t: c } = v(), s = r ?? c("notificationPanel.everythingQuiet"), n = i ?? c("notificationPanel.everythingQuietSub");
14
+ return /* @__PURE__ */ l(
15
+ "div",
16
+ {
17
+ "data-component": "notification-empty",
18
+ className: a(
19
+ "flex min-h-0 w-full flex-1 flex-col items-center justify-center gap-4 text-center",
20
+ t
21
+ ),
22
+ ...o,
23
+ children: [
24
+ /* @__PURE__ */ e(x, { size: 72, className: "shrink-0", alt: "", "aria-hidden": !0 }),
25
+ /* @__PURE__ */ l("div", { className: "flex w-full flex-col items-center justify-center gap-1 px-8 text-center", children: [
26
+ /* @__PURE__ */ e("span", { className: "text-xl font-extrabold leading-7 text-content", children: s }),
27
+ /* @__PURE__ */ e("span", { className: "text-sm font-medium leading-normal text-content-icon", children: n })
28
+ ] })
29
+ ]
30
+ }
31
+ );
32
+ }, j = ({
33
+ children: r,
34
+ className: i,
35
+ onLoadMore: t,
16
36
  isLoading: o,
17
- hasMore: s,
18
- loader: m,
19
- emptyState: a
37
+ hasMore: c,
38
+ loader: s
20
39
  }) => {
21
- const n = d(null);
22
- return x(() => {
40
+ const n = p(null);
41
+ return u(() => {
23
42
  const f = new IntersectionObserver(
24
- (u) => {
25
- u[0].isIntersecting && s && !o && l && l();
43
+ (m) => {
44
+ m[0].isIntersecting && c && !o && t && t();
26
45
  },
27
46
  { threshold: 0.1 }
28
47
  );
29
48
  return n.current && f.observe(n.current), () => {
30
49
  n.current && f.unobserve(n.current);
31
50
  };
32
- }, [s, o, l]), p.Children.count(t) === 0 && !o && a ? /* @__PURE__ */ e("div", { className: "h-full w-full", children: a }) : /* @__PURE__ */ c("div", { className: i("flex flex-1 flex-col overflow-y-auto min-h-0", r), children: [
33
- /* @__PURE__ */ e("div", { className: "flex flex-col gap-2 p-2", children: t }),
51
+ }, [c, o, t]), /* @__PURE__ */ l("div", { className: a("flex flex-1 flex-col overflow-y-auto min-h-0", i), children: [
52
+ /* @__PURE__ */ e("div", { className: "flex flex-col gap-2 p-2", children: r }),
34
53
  /* @__PURE__ */ e("div", { ref: n, className: "h-4 w-full flex-shrink-0" }),
35
- o && /* @__PURE__ */ e("div", { className: "flex justify-center p-4", children: m || /* @__PURE__ */ e(h, { className: "h-6 w-6 animate-spin text-content-muted" }) })
54
+ o && /* @__PURE__ */ e("div", { className: "flex justify-center p-4", children: s || /* @__PURE__ */ e(d, { className: "h-6 w-6 animate-spin text-content-muted" }) })
36
55
  ] });
37
- }, z = ({ label: t, children: r, className: l }) => /* @__PURE__ */ c("div", { "data-component": "notification-group", className: i("flex flex-col", l), children: [
38
- /* @__PURE__ */ e("div", { "data-component": "notification-group-label", className: "sticky top-0 z-10 bg-canvas/95 backdrop-blur supports-[backdrop-filter]:bg-canvas/60 px-4 py-2 text-sm font-medium text-content-muted border-b border-stroke/50", children: t }),
39
- /* @__PURE__ */ e("div", { className: "flex flex-col gap-2 p-2", children: r })
40
- ] });
56
+ }, I = ({
57
+ label: r,
58
+ children: i,
59
+ className: t
60
+ }) => /* @__PURE__ */ l(
61
+ "div",
62
+ {
63
+ "data-component": "notification-group",
64
+ className: a("flex flex-col", t),
65
+ children: [
66
+ /* @__PURE__ */ e(
67
+ "div",
68
+ {
69
+ "data-component": "notification-group-label",
70
+ className: "sticky top-0 z-10 bg-canvas/95 backdrop-blur supports-[backdrop-filter]:bg-canvas/60 px-4 py-2 text-sm font-medium text-content-muted border-b border-stroke/50",
71
+ children: r
72
+ }
73
+ ),
74
+ /* @__PURE__ */ e("div", { className: "flex flex-col gap-2 p-2", children: i })
75
+ ]
76
+ }
77
+ );
41
78
  export {
42
- E as NotificationEmpty,
43
- z as NotificationGroup,
79
+ w as NotificationEmpty,
80
+ I as NotificationGroup,
44
81
  j as NotificationList
45
82
  };
@@ -43,10 +43,10 @@ export interface NotificationListProps {
43
43
  * Custom loader component to show when isLoading is true
44
44
  */
45
45
  loader?: React.ReactNode;
46
- /**
47
- * Component to show when list is empty
48
- */
49
- emptyState?: React.ReactNode;
46
+ }
47
+ export interface NotificationEmptyProps extends React.HTMLAttributes<HTMLDivElement> {
48
+ title?: string;
49
+ description?: string;
50
50
  }
51
51
  export interface NotificationGroupProps {
52
52
  label: string;
@@ -195,6 +195,16 @@ export interface FilterPanelMessages {
195
195
  export interface NotificationPanelMessages {
196
196
  title: string;
197
197
  description: string;
198
+ everythingQuiet: string;
199
+ everythingQuietSub: string;
200
+ emptyUnreadTitle: string;
201
+ emptyUnreadSub: string;
202
+ emptyReadTitle: string;
203
+ emptyReadSub: string;
204
+ emptyBookmarkedTitle: string;
205
+ emptyBookmarkedSub: string;
206
+ emptyArchivedTitle: string;
207
+ emptyArchivedSub: string;
198
208
  }
199
209
  export interface HorizontalScrollerMessages {
200
210
  scrollLeft: string;
@@ -168,7 +168,17 @@ const e = {
168
168
  additionalInfoAvailable: "Additional information available"
169
169
  }, u = {
170
170
  title: "Notifications",
171
- description: "Notifications"
171
+ description: "Notifications",
172
+ everythingQuiet: "Everything looks quiet for now",
173
+ everythingQuietSub: "We'll notify you when something new comes up",
174
+ emptyUnreadTitle: "No unread notifications",
175
+ emptyUnreadSub: "You have no unread notifications in this view.",
176
+ emptyReadTitle: "No read notifications",
177
+ emptyReadSub: "You have no read notifications in this view.",
178
+ emptyBookmarkedTitle: "No bookmarked notifications",
179
+ emptyBookmarkedSub: "Bookmark notifications to find them here.",
180
+ emptyArchivedTitle: "No archived notifications",
181
+ emptyArchivedSub: "Archived notifications will appear here."
172
182
  }, m = {
173
183
  scrollLeft: "Scroll left",
174
184
  scrollRight: "Scroll right"
@@ -230,7 +230,17 @@ const e = {
230
230
  },
231
231
  notificationPanel: {
232
232
  title: "Benachrichtigungen",
233
- description: "Benachrichtigungen"
233
+ description: "Benachrichtigungen",
234
+ everythingQuiet: "Alles wirkt gerade ruhig",
235
+ everythingQuietSub: "Wir benachrichtigen Sie, wenn etwas Neues kommt.",
236
+ emptyUnreadTitle: "Keine ungelesenen Benachrichtigungen",
237
+ emptyUnreadSub: "In dieser Ansicht gibt es keine ungelesenen Benachrichtigungen.",
238
+ emptyReadTitle: "Keine gelesenen Benachrichtigungen",
239
+ emptyReadSub: "In dieser Ansicht gibt es keine gelesenen Benachrichtigungen.",
240
+ emptyBookmarkedTitle: "Keine Lesezeichen-Benachrichtigungen",
241
+ emptyBookmarkedSub: "Markieren Sie Benachrichtigungen, um sie hier zu finden.",
242
+ emptyArchivedTitle: "Keine archivierten Benachrichtigungen",
243
+ emptyArchivedSub: "Archivierte Benachrichtigungen erscheinen hier."
234
244
  },
235
245
  horizontalScroller: {
236
246
  scrollLeft: "Nach links scrollen",
@@ -230,7 +230,17 @@ const e = {
230
230
  },
231
231
  notificationPanel: {
232
232
  title: "Notificaciones",
233
- description: "Notificaciones"
233
+ description: "Notificaciones",
234
+ everythingQuiet: "Todo está en silencio por ahora",
235
+ everythingQuietSub: "Te avisaremos cuando haya novedades.",
236
+ emptyUnreadTitle: "No hay notificaciones no leídas",
237
+ emptyUnreadSub: "No tienes notificaciones no leídas en esta vista.",
238
+ emptyReadTitle: "No hay notificaciones leídas",
239
+ emptyReadSub: "No tienes notificaciones leídas en esta vista.",
240
+ emptyBookmarkedTitle: "No hay notificaciones marcadas",
241
+ emptyBookmarkedSub: "Marca notificaciones para encontrarlas aquí.",
242
+ emptyArchivedTitle: "No hay notificaciones archivadas",
243
+ emptyArchivedSub: "Las notificaciones archivadas aparecerán aquí."
234
244
  },
235
245
  horizontalScroller: {
236
246
  scrollLeft: "Desplazar a la izquierda",
@@ -230,7 +230,17 @@ const e = {
230
230
  },
231
231
  notificationPanel: {
232
232
  title: "सूचनाएं",
233
- description: "सूचनाएं"
233
+ description: "सूचनाएं",
234
+ everythingQuiet: "अभी सब शांत लग रहा है",
235
+ everythingQuietSub: "जब कुछ नया आएगा तो हम सूचित करेंगे।",
236
+ emptyUnreadTitle: "कोई अपठित सूचना नहीं",
237
+ emptyUnreadSub: "इस दृश्य में कोई अपठित सूचना नहीं है।",
238
+ emptyReadTitle: "कोई पढ़ी हुई सूचना नहीं",
239
+ emptyReadSub: "इस दृश्य में कोई पढ़ी हुई सूचना नहीं है।",
240
+ emptyBookmarkedTitle: "कोई बुकमार्क सूचना नहीं",
241
+ emptyBookmarkedSub: "सूचनाओं को बुकमार्क करें ताकि वे यहाँ मिलें।",
242
+ emptyArchivedTitle: "कोई संग्रहीत सूचना नहीं",
243
+ emptyArchivedSub: "संग्रहीत सूचनाएँ यहाँ दिखाई देंगी।"
234
244
  },
235
245
  horizontalScroller: {
236
246
  scrollLeft: "बाएं स्क्रॉल करें",
@@ -230,7 +230,17 @@ const e = {
230
230
  },
231
231
  notificationPanel: {
232
232
  title: "ಅಧಿಸೂಚನೆಗಳು",
233
- description: "ಅಧಿಸೂಚನೆಗಳು"
233
+ description: "ಅಧಿಸೂಚನೆಗಳು",
234
+ everythingQuiet: "ಇದೀಗ ಎಲ್ಲವೂ ಶಾಂತವಾಗಿದೆ",
235
+ everythingQuietSub: "ಏನಾದರೂ ಹೊಸದು ಬಂದಾಗ ನಾವು ನಿಮಗೆ ತಿಳಿಸುತ್ತೇವೆ.",
236
+ emptyUnreadTitle: "ಓದದ ಅಧಿಸೂಚನೆಗಳಿಲ್ಲ",
237
+ emptyUnreadSub: "ಈ ವೀಕ್ಷಣೆಯಲ್ಲಿ ಓದದ ಅಧಿಸೂಚನೆಗಳಿಲ್ಲ.",
238
+ emptyReadTitle: "ಓದಿದ ಅಧಿಸೂಚನೆಗಳಿಲ್ಲ",
239
+ emptyReadSub: "ಈ ವೀಕ್ಷಣೆಯಲ್ಲಿ ಓದಿದ ಅಧಿಸೂಚನೆಗಳಿಲ್ಲ.",
240
+ emptyBookmarkedTitle: "ಬುಕ್ಮಾರ್ಕ್ ಅಧಿಸೂಚನೆಗಳಿಲ್ಲ",
241
+ emptyBookmarkedSub: "ಅಧಿಸೂಚನೆಗಳನ್ನು ಬುಕ್ಮಾರ್ಕ್ ಮಾಡಿ ಇಲ್ಲಿ ಹುಡುಕಿ.",
242
+ emptyArchivedTitle: "ಆರ್ಕೈವ್ ಅಧಿಸೂಚನೆಗಳಿಲ್ಲ",
243
+ emptyArchivedSub: "ಆರ್ಕೈವ್ ಮಾಡಿದ ಅಧಿಸೂಚನೆಗಳು ಇಲ್ಲಿ ಕಾಣಿಸುತ್ತವೆ."
234
244
  },
235
245
  horizontalScroller: {
236
246
  scrollLeft: "ಎಡಕ್ಕೆ ಸ್ಕ್ರಾಲ್ ಮಾಡಿ",
@@ -0,0 +1,5 @@
1
+ import * as e from "react";
2
+ const r = (t) => /* @__PURE__ */ e.createElement("svg", { width: 14, height: 14, viewBox: "0 0 14 14", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...t }, /* @__PURE__ */ e.createElement("path", { d: "M6.66667 13.3333C5.74444 13.3333 4.87778 13.1583 4.06667 12.8083C3.25556 12.4583 2.55 11.9833 1.95 11.3833C1.35 10.7833 0.875 10.0778 0.525 9.26667C0.175 8.45555 0 7.58889 0 6.66667C0 5.74444 0.175 4.87778 0.525 4.06667C0.875 3.25556 1.35 2.55 1.95 1.95C2.55 1.35 3.25556 0.875 4.06667 0.525C4.87778 0.175 5.74444 0 6.66667 0C7.58889 0 8.45555 0.175 9.26667 0.525C10.0778 0.875 10.7833 1.35 11.3833 1.95C11.9833 2.55 12.4583 3.25556 12.8083 4.06667C13.1583 4.87778 13.3333 5.74444 13.3333 6.66667C13.3333 7.58889 13.1583 8.45555 12.8083 9.26667C12.4583 10.0778 11.9833 10.7833 11.3833 11.3833C10.7833 11.9833 10.0778 12.4583 9.26667 12.8083C8.45555 13.1583 7.58889 13.3333 6.66667 13.3333ZM6.66667 12C8.15555 12 9.41667 11.4833 10.45 10.45C11.4833 9.41667 12 8.15555 12 6.66667C12 5.17778 11.4833 3.91667 10.45 2.88333C9.41667 1.85 8.15555 1.33333 6.66667 1.33333C5.17778 1.33333 3.91667 1.85 2.88333 2.88333C1.85 3.91667 1.33333 5.17778 1.33333 6.66667C1.33333 8.15555 1.85 9.41667 2.88333 10.45C3.91667 11.4833 5.17778 12 6.66667 12Z", fill: "currentColor" }), /* @__PURE__ */ e.createElement("path", { d: "M2.77 7.05L4.59 8.99C4.59 8.99 4.89 8.33 5.52 7.83", stroke: "currentColor", strokeWidth: 1.1, strokeLinecap: "round", strokeLinejoin: "round" }), /* @__PURE__ */ e.createElement("path", { d: "M5.11 7.05L7.15 8.99L10.57 5.11", stroke: "currentColor", strokeWidth: 1.1, strokeLinecap: "round", strokeLinejoin: "round" }), /* @__PURE__ */ e.createElement("path", { d: "M8.23 5.11L6.84 6.59", stroke: "currentColor", strokeWidth: 1.1, strokeLinecap: "round", strokeLinejoin: "round" }));
3
+ export {
4
+ r as default
5
+ };
@@ -53,6 +53,7 @@ export declare const Bookmark: IconComponent;
53
53
  export declare const BookmarkFilled: IconComponent;
54
54
  export declare const Download: IconComponent;
55
55
  export declare const CircleTick: IconComponent;
56
+ export declare const CircleDoubleTick: IconComponent;
56
57
  export declare const CircleCross: IconComponent;
57
58
  export declare const Info: IconComponent;
58
59
  export declare const InfoCircleFilled: IconComponent;