@edifice.io/react 2.6.7-develop-b2school.20261009142401 → 2.6.7-develop-b2school.20261012101734
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/dist/components/Layout/components/Header.js +4 -4
- package/dist/components/Layout/components/NavLink.d.ts +3 -3
- package/dist/components/Layout/components/NavLink.js +5 -3
- package/dist/components/RadioTile/RadioTile.d.ts +35 -0
- package/dist/components/RadioTile/RadioTile.js +22 -0
- package/dist/components/RadioTile/index.d.ts +2 -0
- package/dist/components/index.d.ts +1 -0
- package/dist/homepage.js +6 -0
- package/dist/index.js +138 -136
- package/dist/modules/homepage/components/Agenda/Agenda.d.ts +10 -0
- package/dist/modules/homepage/components/Agenda/Agenda.js +54 -0
- package/dist/modules/homepage/components/Agenda/AgendaContainer.d.ts +1 -0
- package/dist/modules/homepage/components/Agenda/AgendaContainer.js +14 -0
- package/dist/modules/homepage/components/Agenda/AgendaEventCard.d.ts +10 -0
- package/dist/modules/homepage/components/Agenda/AgendaEventCard.js +30 -0
- package/dist/modules/homepage/components/Agenda/hooks/useAgendaContainer.d.ts +14 -0
- package/dist/modules/homepage/components/Agenda/hooks/useAgendaContainer.js +27 -0
- package/dist/modules/homepage/components/Agenda/index.d.ts +3 -0
- package/dist/modules/homepage/components/Agenda/services/api/agendaService.d.ts +24 -0
- package/dist/modules/homepage/components/Agenda/services/api/agendaService.js +45 -0
- package/dist/modules/homepage/components/Agenda/services/api/index.d.ts +4 -0
- package/dist/modules/homepage/components/Agenda/services/api/index.js +5 -0
- package/dist/modules/homepage/components/Agenda/services/queries/agenda.d.ts +19 -0
- package/dist/modules/homepage/components/Agenda/services/queries/agenda.js +26 -0
- package/dist/modules/homepage/components/Communities/Communities.js +2 -2
- package/dist/modules/homepage/components/Header/Header.js +27 -11
- package/dist/modules/homepage/components/Header/MyAppsPopover.d.ts +5 -0
- package/dist/modules/homepage/components/Header/MyAppsPopover.js +28 -0
- package/dist/modules/homepage/components/Header/useSafeHoverPopover.js +32 -0
- package/dist/modules/homepage/components/HomeCard/HomeCardHeader.d.ts +5 -1
- package/dist/modules/homepage/components/HomeCard/HomeCardHeader.js +1 -1
- package/dist/modules/homepage/components/MessageFlashList/MessageFlash.js +1 -1
- package/dist/modules/homepage/components/Notifications/NotificationList.js +5 -5
- package/dist/modules/homepage/components/Notifications/NotificationSkeleton.js +2 -2
- package/dist/modules/homepage/components/Notifications/components/NotificationFilterMenu.js +1 -5
- package/dist/modules/homepage/components/Notifications/components/NotificationFilterModal.js +10 -12
- package/dist/modules/homepage/components/Notifications/components/NotificationOptionsMenu.js +3 -9
- package/dist/modules/homepage/components/Notifications/components/notificationAdapter.js +12 -10
- package/dist/modules/homepage/components/Notifications/hooks/useNotificationList.js +9 -10
- package/dist/modules/homepage/components/UserSpace/UserSpace.js +1 -1
- package/dist/modules/homepage/components/index.d.ts +1 -0
- package/package.json +6 -6
|
@@ -138,7 +138,7 @@ const Header = ({
|
|
|
138
138
|
/* @__PURE__ */ jsxs("ul", { className: "navbar-nav", children: [
|
|
139
139
|
/* @__PURE__ */ jsx(NavItem, { children: /* @__PURE__ */ jsx(NavLink, { link: "/timeline/timeline", translate: t("navbar.home"), children: /* @__PURE__ */ jsx(SvgIconHome, { color: "#fff" }) }) }),
|
|
140
140
|
/* @__PURE__ */ jsxs(NavItem, { className: "position-relative", ref: appsRef, id: popoverAppsId, "aria-haspopup": "true", "aria-expanded": isAppsHovered, children: [
|
|
141
|
-
/* @__PURE__ */ jsx(NavLink, { link: "/welcome", translate: t("navbar.applications"), children: /* @__PURE__ */ jsx(SvgIconMyApps, { color: "#fff" }) }),
|
|
141
|
+
/* @__PURE__ */ jsx(NavLink, { link: "/welcome", translate: t("navbar.applications"), "data-testid": "header-my-apps-button", children: /* @__PURE__ */ jsx(SvgIconMyApps, { color: "#fff" }) }),
|
|
142
142
|
/* @__PURE__ */ jsxs(Popover, { className: "top-100 widget", id: popoverAppsId, isVisible: isAppsHovered, children: [
|
|
143
143
|
/* @__PURE__ */ jsx(PopoverBody, { children: /* @__PURE__ */ jsx(WidgetAppsBody, { bookmarkedApps }) }),
|
|
144
144
|
/* @__PURE__ */ jsx(PopoverFooter, { className: "widget-footer border-top border-ghost", children: /* @__PURE__ */ jsx(WidgetAppsFooter, {}) })
|
|
@@ -174,17 +174,17 @@ const Header = ({
|
|
|
174
174
|
/* @__PURE__ */ jsx(NavItem, { children: /* @__PURE__ */ jsxs("div", { className: "dropdown", children: [
|
|
175
175
|
/* @__PURE__ */ jsx("button", { className: "nav-link btn btn-naked d-md-none", type: "button", "aria-controls": "dropdown-navbar", "aria-expanded": !isCollapsed, "aria-label": t("navbar.open.menu"), onClick: toggleCollapsedNav, children: /* @__PURE__ */ jsx(SvgIconRafterDown, { className: "icon rafter-down", width: "20", height: "20", color: "#fff" }) }),
|
|
176
176
|
/* @__PURE__ */ jsxs("ul", { className: `dropdown-menu dropdown-menu-end ${isCollapsed ? "" : "show"}`, id: "dropdown-navbar", children: [
|
|
177
|
-
communitiesWorkflow && /* @__PURE__ */ jsx(NavItem, { children: /* @__PURE__ */ jsxs("a", { href: "/communities", className: "nav-link dropdown-item", children: [
|
|
177
|
+
communitiesWorkflow && /* @__PURE__ */ jsx(NavItem, { children: /* @__PURE__ */ jsxs("a", { href: "/communities", className: "nav-link dropdown-item", "data-testid": "header-community-button", children: [
|
|
178
178
|
/* @__PURE__ */ jsx(SvgIconCommunities, { className: "icon communities" }),
|
|
179
179
|
/* @__PURE__ */ jsx("span", { className: "nav-text", children: t("navbar.community") })
|
|
180
180
|
] }) }),
|
|
181
181
|
searchWorkflow ? /* @__PURE__ */ jsx(SearchEngine, {}) : null,
|
|
182
|
-
/* @__PURE__ */ jsx(NavItem, { children: /* @__PURE__ */ jsxs("a", { href: "/userbook/mon-compte", className: "nav-link dropdown-item", children: [
|
|
182
|
+
/* @__PURE__ */ jsx(NavItem, { children: /* @__PURE__ */ jsxs("a", { href: "/userbook/mon-compte", className: "nav-link dropdown-item", "data-testid": "header-user-profile-button", children: [
|
|
183
183
|
/* @__PURE__ */ jsx(Avatar, { alt: userName, size: "sm", src: userAvatar, variant: "circle", className: "bg-white", width: "32", height: "32" }),
|
|
184
184
|
/* @__PURE__ */ jsx("span", { className: "nav-text", children: t("navbar.myaccount") })
|
|
185
185
|
] }) }),
|
|
186
186
|
/* @__PURE__ */ jsx(NavItem, { children: /* @__PURE__ */ jsx("hr", { className: "dropdown-divider" }) }),
|
|
187
|
-
/* @__PURE__ */ jsx(NavItem, { children: /* @__PURE__ */ jsxs("a", { href: "/auth/logout?callback=" + ((theme == null ? void 0 : theme.logoutCallback) ?? ""), className: "nav-link dropdown-item", children: [
|
|
187
|
+
/* @__PURE__ */ jsx(NavItem, { children: /* @__PURE__ */ jsxs("a", { href: "/auth/logout?callback=" + ((theme == null ? void 0 : theme.logoutCallback) ?? ""), className: "nav-link dropdown-item", "data-testid": "header-logout-button", children: [
|
|
188
188
|
/* @__PURE__ */ jsx(SvgIconDisconnect, { className: "icon logout" }),
|
|
189
189
|
/* @__PURE__ */ jsx("span", { id: "logout-label", className: "nav-text", children: t("navbar.disconnect") })
|
|
190
190
|
] }) })
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ReactNode } from 'react';
|
|
2
|
-
export interface NavLinkProps<T> {
|
|
1
|
+
import { ComponentPropsWithoutRef, ReactNode } from 'react';
|
|
2
|
+
export interface NavLinkProps<T> extends Omit<ComponentPropsWithoutRef<'a'>, 'className' | 'translate'> {
|
|
3
3
|
/**
|
|
4
4
|
* href link
|
|
5
5
|
*/
|
|
@@ -21,4 +21,4 @@ export interface NavLinkProps<T> {
|
|
|
21
21
|
*/
|
|
22
22
|
button?: boolean;
|
|
23
23
|
}
|
|
24
|
-
export declare
|
|
24
|
+
export declare const NavLink: import('react').ForwardRefExoticComponent<NavLinkProps<string> & import('react').RefAttributes<HTMLAnchorElement>>;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef } from "react";
|
|
2
3
|
import clsx from "clsx";
|
|
3
4
|
import VisuallyHidden from "../../VisuallyHidden/VisuallyHidden.js";
|
|
4
|
-
function
|
|
5
|
+
function NavLinkRender({
|
|
5
6
|
link,
|
|
6
7
|
className,
|
|
7
8
|
children,
|
|
@@ -9,13 +10,14 @@ function NavLink({
|
|
|
9
10
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
10
11
|
button,
|
|
11
12
|
...restProps
|
|
12
|
-
}) {
|
|
13
|
+
}, ref) {
|
|
13
14
|
const classes = clsx("nav-link", className);
|
|
14
|
-
return /* @__PURE__ */ jsxs("a", { href: link, className: classes, ...restProps, children: [
|
|
15
|
+
return /* @__PURE__ */ jsxs("a", { ref, href: link, className: classes, ...restProps, children: [
|
|
15
16
|
children,
|
|
16
17
|
translate && /* @__PURE__ */ jsx(VisuallyHidden, { children: /* @__PURE__ */ jsx("span", { className: "nav-text", children: translate }) })
|
|
17
18
|
] });
|
|
18
19
|
}
|
|
20
|
+
const NavLink = /* @__PURE__ */ forwardRef(NavLinkRender);
|
|
19
21
|
export {
|
|
20
22
|
NavLink
|
|
21
23
|
};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { CSSProperties, InputHTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
export interface RadioTileProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'type' | 'children' | 'className' | 'style'> {
|
|
3
|
+
/**
|
|
4
|
+
* Label of the tile. Also used as the accessible name of the radio input.
|
|
5
|
+
*/
|
|
6
|
+
label: ReactNode;
|
|
7
|
+
/**
|
|
8
|
+
* Optional image: an URL, or any React node (e.g. a background preview).
|
|
9
|
+
*/
|
|
10
|
+
image?: string | ReactNode;
|
|
11
|
+
/**
|
|
12
|
+
* Layout of a tile with both an image and a label.
|
|
13
|
+
* Ignored when there is no image or when the label is hidden.
|
|
14
|
+
*/
|
|
15
|
+
orientation?: 'horizontal' | 'vertical';
|
|
16
|
+
/**
|
|
17
|
+
* Visually hide the label (it stays available to screen readers).
|
|
18
|
+
* Use it with an `image` to render an image-only tile.
|
|
19
|
+
*/
|
|
20
|
+
hideLabel?: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Additional CSS class names applied to the tile (root element).
|
|
23
|
+
*/
|
|
24
|
+
className?: string;
|
|
25
|
+
/**
|
|
26
|
+
* Inline styles applied to the tile (root element).
|
|
27
|
+
*/
|
|
28
|
+
style?: CSSProperties;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* A radio input presented as a selectable tile, with a label, an image or both.
|
|
32
|
+
* Group tiles together by giving them the same `name`.
|
|
33
|
+
*/
|
|
34
|
+
declare const RadioTile: import('react').ForwardRefExoticComponent<RadioTileProps & import('react').RefAttributes<HTMLInputElement>>;
|
|
35
|
+
export default RadioTile;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef } from "react";
|
|
3
|
+
import clsx from "clsx";
|
|
4
|
+
const RadioTile = /* @__PURE__ */ forwardRef(({
|
|
5
|
+
label,
|
|
6
|
+
image,
|
|
7
|
+
orientation = "horizontal",
|
|
8
|
+
hideLabel = !1,
|
|
9
|
+
className,
|
|
10
|
+
style,
|
|
11
|
+
...inputProps
|
|
12
|
+
}, ref) => {
|
|
13
|
+
const hasImage = image != null && image !== !1;
|
|
14
|
+
return /* @__PURE__ */ jsxs("label", { className: clsx("radio-tile", `radio-tile--${hasImage ? hideLabel ? "image" : orientation === "vertical" ? "vertical" : "horizontal" : "text"}`, className), style, children: [
|
|
15
|
+
/* @__PURE__ */ jsx("input", { ref, type: "radio", className: "radio-tile__input visually-hidden", ...inputProps }),
|
|
16
|
+
hasImage && /* @__PURE__ */ jsx("span", { className: "radio-tile__image", children: typeof image == "string" ? /* @__PURE__ */ jsx("img", { src: image, alt: "", loading: "lazy" }) : image }),
|
|
17
|
+
/* @__PURE__ */ jsx("span", { className: clsx("radio-tile__label", hideLabel && "visually-hidden"), children: label })
|
|
18
|
+
] });
|
|
19
|
+
});
|
|
20
|
+
export {
|
|
21
|
+
RadioTile as default
|
|
22
|
+
};
|
|
@@ -45,6 +45,7 @@ export * from './PreventPropagation';
|
|
|
45
45
|
export * from './PromotionCard';
|
|
46
46
|
export * from './Radio';
|
|
47
47
|
export * from './RadioCard';
|
|
48
|
+
export * from './RadioTile';
|
|
48
49
|
export * from './SearchBar';
|
|
49
50
|
export * from './SegmentedControl';
|
|
50
51
|
export * from './Select';
|
package/dist/homepage.js
CHANGED
|
@@ -11,6 +11,9 @@ import { default as default11 } from "./modules/homepage/components/Notification
|
|
|
11
11
|
import { NotificationListContainer } from "./modules/homepage/components/Notifications/NotificationListContainer.js";
|
|
12
12
|
import { default as default12 } from "./modules/homepage/components/SchoolSpace/SchoolSpace.js";
|
|
13
13
|
import { default as default13 } from "./modules/homepage/components/UserSpace/UserSpace.js";
|
|
14
|
+
import { Agenda } from "./modules/homepage/components/Agenda/Agenda.js";
|
|
15
|
+
import { AgendaContainer } from "./modules/homepage/components/Agenda/AgendaContainer.js";
|
|
16
|
+
import { AgendaEventCard } from "./modules/homepage/components/Agenda/AgendaEventCard.js";
|
|
14
17
|
import { CommunitiesContainer } from "./modules/homepage/components/Communities/CommunitiesContainer.js";
|
|
15
18
|
import { Favorites } from "./modules/homepage/components/Favorites/Favorites.js";
|
|
16
19
|
import { FavoritesContainer } from "./modules/homepage/components/Favorites/FavoritesContainer.js";
|
|
@@ -28,6 +31,9 @@ import { WidgetToggle } from "./modules/homepage/components/WidgetsPersonalizati
|
|
|
28
31
|
import { WidgetsPersonalizationPanel } from "./modules/homepage/components/WidgetsPersonalizationPanel/WidgetsPersonalizationPanel.js";
|
|
29
32
|
import { useCommunities } from "./modules/homepage/components/Communities/useCommunities.js";
|
|
30
33
|
export {
|
|
34
|
+
Agenda,
|
|
35
|
+
AgendaContainer,
|
|
36
|
+
AgendaEventCard,
|
|
31
37
|
default2 as Communities,
|
|
32
38
|
CommunitiesContainer,
|
|
33
39
|
default3 as CommunitiesItem,
|
package/dist/index.js
CHANGED
|
@@ -53,72 +53,73 @@ import { default as default51, Root } from "./components/PromotionCard/Promotion
|
|
|
53
53
|
import { default as default52 } from "./modules/modals/PublishModal/PublishModal.js";
|
|
54
54
|
import { default as default53 } from "./components/Radio/Radio.js";
|
|
55
55
|
import { default as default54 } from "./components/RadioCard/RadioCard.js";
|
|
56
|
-
import { default as default55 } from "./components/
|
|
57
|
-
import { default as default56 } from "./components/
|
|
58
|
-
import { default as default57 } from "./components/
|
|
59
|
-
import { default as default58 } from "./components/
|
|
60
|
-
import { default as default59 } from "./
|
|
61
|
-
import { default as default60 } from "./modules/modals/ShareModal/
|
|
62
|
-
import { default as default61 } from "./modules/modals/ShareModal/
|
|
63
|
-
import { default as default62 } from "./
|
|
64
|
-
import { default as default63 } from "./components/
|
|
65
|
-
import { default as default64 } from "./components/
|
|
66
|
-
import { default as default65 } from "./components/
|
|
67
|
-
import { default as default66 } from "./components/
|
|
68
|
-
import { default as default67 } from "./components/
|
|
69
|
-
import { default as default68 } from "./components/
|
|
70
|
-
import { default as default69 } from "./components/
|
|
71
|
-
import { default as default70 } from "./components/
|
|
72
|
-
import { default as default71 } from "./components/
|
|
73
|
-
import { default as default72 } from "./
|
|
74
|
-
import { default as default73 } from "./modules/multimedia/
|
|
75
|
-
import { default as default74 } from "./modules/multimedia/
|
|
76
|
-
import { default as default75 } from "./modules/multimedia/
|
|
77
|
-
import { default as default76 } from "./
|
|
78
|
-
import { default as default77 } from "./
|
|
79
|
-
import { default as default78 } from "./modules/multimedia/
|
|
80
|
-
import { default as default79 } from "./
|
|
81
|
-
import { default as default80 } from "./hooks/
|
|
82
|
-
import { default as default81 } from "./hooks/
|
|
83
|
-
import { default as default82 } from "./hooks/
|
|
84
|
-
import { default as default83 } from "./hooks/
|
|
85
|
-
import { default as default84 } from "./hooks/
|
|
86
|
-
import { default as default85 } from "./hooks/
|
|
87
|
-
import { default as default86 } from "./hooks/
|
|
88
|
-
import { default as default87 } from "./hooks/
|
|
89
|
-
import { default as default88 } from "./hooks/
|
|
90
|
-
import { default as default89 } from "./hooks/
|
|
91
|
-
import { default as default90 } from "./hooks/
|
|
92
|
-
import { default as default91 } from "./hooks/
|
|
93
|
-
import { default as default92 } from "./hooks/
|
|
94
|
-
import { default as default93 } from "./hooks/
|
|
95
|
-
import { default as default94 } from "./hooks/
|
|
96
|
-
import { default as default95 } from "./hooks/
|
|
97
|
-
import { default as default96 } from "./hooks/
|
|
98
|
-
import { default as default97 } from "./hooks/
|
|
99
|
-
import { default as default98 } from "./hooks/
|
|
100
|
-
import { default as default99 } from "./hooks/
|
|
101
|
-
import { default as default100 } from "./hooks/
|
|
102
|
-
import { default as default101 } from "./hooks/
|
|
103
|
-
import { default as default102 } from "./hooks/
|
|
104
|
-
import { default as default103 } from "./hooks/
|
|
105
|
-
import { default as default104 } from "./
|
|
106
|
-
import { default as default105 } from "./hooks/
|
|
107
|
-
import { default as default106 } from "./hooks/
|
|
108
|
-
import { default as default107 } from "./hooks/
|
|
109
|
-
import { default as default108 } from "./hooks/
|
|
110
|
-
import { default as default109 } from "./hooks/
|
|
111
|
-
import { default as default110 } from "./hooks/
|
|
112
|
-
import { default as default111 } from "./
|
|
113
|
-
import { default as default112 } from "./hooks/
|
|
114
|
-
import { default as default113 } from "./hooks/
|
|
115
|
-
import { default as default114 } from "./hooks/
|
|
116
|
-
import { default as default115 } from "./hooks/
|
|
117
|
-
import { default as default116 } from "./hooks/
|
|
118
|
-
import {
|
|
119
|
-
import { default as default118 } from "./hooks/
|
|
120
|
-
import { default as default119 } from "./hooks/
|
|
121
|
-
import { default as default120 } from "./hooks/
|
|
56
|
+
import { default as default55 } from "./components/RadioTile/RadioTile.js";
|
|
57
|
+
import { default as default56 } from "./components/SearchBar/SearchBar.js";
|
|
58
|
+
import { default as default57 } from "./components/Button/SearchButton.js";
|
|
59
|
+
import { default as default58 } from "./components/SegmentedControl/SegmentedControl.js";
|
|
60
|
+
import { default as default59 } from "./components/Select/Select.js";
|
|
61
|
+
import { default as default60 } from "./modules/modals/ShareModal/apps/ShareBlog.js";
|
|
62
|
+
import { default as default61 } from "./modules/modals/ShareModal/ShareModal.js";
|
|
63
|
+
import { default as default62 } from "./modules/modals/ShareModal/ShareResources.js";
|
|
64
|
+
import { default as default63 } from "./components/Tree/components/SortableTree.js";
|
|
65
|
+
import { default as default64 } from "./components/StackedGroup/StackedGroup.js";
|
|
66
|
+
import { default as default65 } from "./components/Stepper/Stepper.js";
|
|
67
|
+
import { default as default66 } from "./components/Switch/Switch.js";
|
|
68
|
+
import { default as default67 } from "./components/Table/components/Table.js";
|
|
69
|
+
import { default as default68 } from "./components/TextArea/TextArea.js";
|
|
70
|
+
import { default as default69 } from "./components/Skeleton/TextSkeleton.js";
|
|
71
|
+
import { default as default70 } from "./components/Tooltip/Tooltip.js";
|
|
72
|
+
import { default as default71 } from "./components/Tree/components/Tree.js";
|
|
73
|
+
import { default as default72 } from "./components/TreeView/TreeView.js";
|
|
74
|
+
import { default as default73 } from "./modules/multimedia/UploadCard/UploadCard.js";
|
|
75
|
+
import { default as default74 } from "./modules/multimedia/UploadFiles/UploadFiles.js";
|
|
76
|
+
import { default as default75 } from "./modules/multimedia/VideoEmbed/VideoEmbed.js";
|
|
77
|
+
import { default as default76 } from "./modules/multimedia/VideoRecorder/VideoRecorder.js";
|
|
78
|
+
import { default as default77 } from "./components/VisuallyHidden/VisuallyHidden.js";
|
|
79
|
+
import { default as default78 } from "./modules/multimedia/Workspace/Workspace.js";
|
|
80
|
+
import { default as default79 } from "./modules/multimedia/WorkspaceFolders/WorkspaceFolders.js";
|
|
81
|
+
import { default as default80 } from "./hooks/useBookmark/useBookmark.js";
|
|
82
|
+
import { default as default81 } from "./hooks/useBreakpoint/useBreakpoint.js";
|
|
83
|
+
import { default as default82 } from "./hooks/useBrowserInfo/useBrowserInfo.js";
|
|
84
|
+
import { default as default83 } from "./hooks/useCantoo/useCantoo.js";
|
|
85
|
+
import { default as default84 } from "./hooks/useClickOutside/useClickOutside.js";
|
|
86
|
+
import { default as default85 } from "./hooks/useConversation/useConversation.js";
|
|
87
|
+
import { default as default86 } from "./hooks/useDate/useDate.js";
|
|
88
|
+
import { default as default87 } from "./hooks/useDebounce/useDebounce.js";
|
|
89
|
+
import { default as default88 } from "./hooks/useDirectory/useDirectory.js";
|
|
90
|
+
import { default as default89 } from "./hooks/useDropdown/useDropdown.js";
|
|
91
|
+
import { default as default90 } from "./hooks/useDropzone/useDropzone.js";
|
|
92
|
+
import { default as default91 } from "./hooks/useEdificeIcons/useEdificeIcons.js";
|
|
93
|
+
import { default as default92 } from "./hooks/useHasWorkflow/useHasWorkflow.js";
|
|
94
|
+
import { default as default93 } from "./hooks/useHover/useHover.js";
|
|
95
|
+
import { default as default94 } from "./hooks/useHttpErrorToast/useHttpErrorToast.js";
|
|
96
|
+
import { default as default95 } from "./hooks/useImage/useImage.js";
|
|
97
|
+
import { default as default96 } from "./hooks/useInfiniteScroll/useInfiniteScroll.js";
|
|
98
|
+
import { default as default97 } from "./hooks/useIsAdmc/useIsAdmc.js";
|
|
99
|
+
import { default as default98 } from "./hooks/useIsAdml/useIsAdml.js";
|
|
100
|
+
import { default as default99 } from "./hooks/useIsAdmlcOrAdmc/useIsAdmlcOrAdmc.js";
|
|
101
|
+
import { default as default100 } from "./hooks/useKeyPress/useKeyPress.js";
|
|
102
|
+
import { default as default101 } from "./hooks/useLibraryUrl/useLibraryUrl.js";
|
|
103
|
+
import { default as default102 } from "./hooks/useMediaLibrary/useMediaLibrary.js";
|
|
104
|
+
import { default as default103 } from "./hooks/usePublicConf/usePublicConf.js";
|
|
105
|
+
import { default as default104 } from "./hooks/useScrollToTop/useScrollToTop.js";
|
|
106
|
+
import { default as default105 } from "./modules/modals/ShareModal/hooks/useShareMutation.js";
|
|
107
|
+
import { default as default106 } from "./hooks/useTitle/useTitle.js";
|
|
108
|
+
import { default as default107 } from "./hooks/useToast/useToast.js";
|
|
109
|
+
import { default as default108 } from "./hooks/useToggle/useToggle.js";
|
|
110
|
+
import { default as default109 } from "./hooks/useTrapFocus/useTrapFocus.js";
|
|
111
|
+
import { default as default110 } from "./hooks/useTrashedResource/useTrashedResource.js";
|
|
112
|
+
import { default as default111 } from "./hooks/useUiOverride/useUiOverride.js";
|
|
113
|
+
import { default as default112 } from "./modules/modals/ResourceModal/hooks/useUpdateMutation.js";
|
|
114
|
+
import { default as default113 } from "./hooks/useUpload/useUpload.js";
|
|
115
|
+
import { default as default114 } from "./hooks/useUploadFiles/useUploadFiles.js";
|
|
116
|
+
import { default as default115 } from "./hooks/useUser/useUser.js";
|
|
117
|
+
import { default as default116 } from "./hooks/useWorkspaceFile/useWorkspaceFile.js";
|
|
118
|
+
import { default as default117 } from "./hooks/useWorkspaceFolders/useWorkspaceFolders.js";
|
|
119
|
+
import { WORKSPACE_SHARED_FOLDER_ID, WORKSPACE_USER_FOLDER_ID, default as default118 } from "./hooks/useWorkspaceFolders/useWorkspaceFoldersTree.js";
|
|
120
|
+
import { default as default119 } from "./hooks/useWorkspaceSearch/useWorkspaceSearch.js";
|
|
121
|
+
import { default as default120 } from "./hooks/useXitiTrackPageLoad/useXitiTrackPageLoad.js";
|
|
122
|
+
import { default as default121 } from "./hooks/useZendeskGuide/useZendeskGuide.js";
|
|
122
123
|
import { AccessiblePalette, DefaultPalette } from "./components/ColorPicker/ColorPalette.js";
|
|
123
124
|
import { AntProvider } from "./providers/AntThemeProvider/AntProvider.js";
|
|
124
125
|
import { BetaSwitch } from "./components/BetaSwitch/BetaSwitch.js";
|
|
@@ -154,7 +155,7 @@ import { emptyScreenMapping } from "./utilities/emptyscreen-mapping/emptyscreen-
|
|
|
154
155
|
import { getRotateTransitionStyle } from "./utilities/rotate-transition-style/get-rotate-transition-style.js";
|
|
155
156
|
import { invalidateQueriesWithFirstPage } from "./utilities/react-query/react-query-utils.js";
|
|
156
157
|
import { mergeRefs, setRef } from "./utilities/refs/ref.js";
|
|
157
|
-
import { default as
|
|
158
|
+
import { default as default122 } from "./hooks/useBackground/useBackground.js";
|
|
158
159
|
import { useCheckable } from "./hooks/useCheckable/useCheckable.js";
|
|
159
160
|
import { useEdificeClient } from "./providers/EdificeClientProvider/EdificeClientProvider.hook.js";
|
|
160
161
|
import { useEdificeTheme } from "./providers/EdificeThemeProvider/EdificeThemeProvider.hook.js";
|
|
@@ -163,7 +164,7 @@ import { useOverlay } from "./components/PageLayout/hook/useOverlay.js";
|
|
|
163
164
|
import { useScreeb } from "./hooks/useScreeb/useScreeb.js";
|
|
164
165
|
import { useTreeSortable } from "./components/Tree/hooks/useTreeSortable.js";
|
|
165
166
|
import { useTreeView } from "./components/TreeView/hooks/useTreeView.js";
|
|
166
|
-
import { default as
|
|
167
|
+
import { default as default123 } from "./hooks/useUserPreferences/useUserPreferences.js";
|
|
167
168
|
export {
|
|
168
169
|
AccessiblePalette,
|
|
169
170
|
default2 as ActionBar,
|
|
@@ -244,42 +245,43 @@ export {
|
|
|
244
245
|
default52 as PublishModal,
|
|
245
246
|
default53 as Radio,
|
|
246
247
|
default54 as RadioCard,
|
|
248
|
+
default55 as RadioTile,
|
|
247
249
|
ResourceModal,
|
|
248
250
|
Root,
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
251
|
+
default56 as SearchBar,
|
|
252
|
+
default57 as SearchButton,
|
|
253
|
+
default58 as SegmentedControl,
|
|
254
|
+
default59 as Select,
|
|
255
|
+
default60 as ShareBlog,
|
|
256
|
+
default61 as ShareModal,
|
|
257
|
+
default62 as ShareResources,
|
|
258
|
+
default63 as SortableTree,
|
|
259
|
+
default64 as StackedGroup,
|
|
260
|
+
default65 as Stepper,
|
|
261
|
+
default66 as Switch,
|
|
262
|
+
default67 as Table,
|
|
261
263
|
Tabs,
|
|
262
|
-
|
|
263
|
-
|
|
264
|
+
default68 as TextArea,
|
|
265
|
+
default69 as TextSkeleton,
|
|
264
266
|
Toolbar,
|
|
265
|
-
|
|
266
|
-
|
|
267
|
+
default70 as Tooltip,
|
|
268
|
+
default71 as Tree,
|
|
267
269
|
TreeNode,
|
|
268
270
|
TreeNodeFolderWrapper,
|
|
269
|
-
|
|
271
|
+
default72 as TreeView,
|
|
270
272
|
Upload,
|
|
271
|
-
|
|
272
|
-
|
|
273
|
+
default73 as UploadCard,
|
|
274
|
+
default74 as UploadFiles,
|
|
273
275
|
UserRightsList,
|
|
274
276
|
UserSearch,
|
|
275
|
-
|
|
276
|
-
|
|
277
|
+
default75 as VideoEmbed,
|
|
278
|
+
default76 as VideoRecorder,
|
|
277
279
|
VisibleType,
|
|
278
|
-
|
|
280
|
+
default77 as VisuallyHidden,
|
|
279
281
|
WORKSPACE_SHARED_FOLDER_ID,
|
|
280
282
|
WORKSPACE_USER_FOLDER_ID,
|
|
281
|
-
|
|
282
|
-
|
|
283
|
+
default78 as Workspace,
|
|
284
|
+
default79 as WorkspaceFolders,
|
|
283
285
|
addNode,
|
|
284
286
|
arrayUnique,
|
|
285
287
|
buildTree,
|
|
@@ -310,59 +312,59 @@ export {
|
|
|
310
312
|
setRef,
|
|
311
313
|
updateNode,
|
|
312
314
|
updateParentIds,
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
315
|
+
default122 as useBackground,
|
|
316
|
+
default80 as useBookmark,
|
|
317
|
+
default81 as useBreakpoint,
|
|
318
|
+
default82 as useBrowserInfo,
|
|
319
|
+
default83 as useCantoo,
|
|
318
320
|
useCheckable,
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
321
|
+
default84 as useClickOutside,
|
|
322
|
+
default85 as useConversation,
|
|
323
|
+
default86 as useDate,
|
|
324
|
+
default87 as useDebounce,
|
|
325
|
+
default88 as useDirectory,
|
|
326
|
+
default89 as useDropdown,
|
|
327
|
+
default90 as useDropzone,
|
|
326
328
|
useDropzoneContext,
|
|
327
329
|
useEdificeClient,
|
|
328
|
-
|
|
330
|
+
default91 as useEdificeIcons,
|
|
329
331
|
useEdificeTheme,
|
|
330
332
|
useFileToAttachment,
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
333
|
+
default92 as useHasWorkflow,
|
|
334
|
+
default93 as useHover,
|
|
335
|
+
default94 as useHttpErrorToast,
|
|
336
|
+
default95 as useImage,
|
|
337
|
+
default96 as useInfiniteScroll,
|
|
338
|
+
default97 as useIsAdmc,
|
|
339
|
+
default98 as useIsAdml,
|
|
340
|
+
default99 as useIsAdmlcOrAdmc,
|
|
341
|
+
default100 as useKeyPress,
|
|
342
|
+
default101 as useLibraryUrl,
|
|
343
|
+
default102 as useMediaLibrary,
|
|
342
344
|
useOverlay,
|
|
343
345
|
usePageLayout,
|
|
344
|
-
|
|
346
|
+
default103 as usePublicConf,
|
|
345
347
|
useScreeb,
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
348
|
+
default104 as useScrollToTop,
|
|
349
|
+
default105 as useShareMutation,
|
|
350
|
+
default106 as useTitle,
|
|
351
|
+
default107 as useToast,
|
|
352
|
+
default108 as useToggle,
|
|
353
|
+
default109 as useTrapFocus,
|
|
354
|
+
default110 as useTrashedResource,
|
|
353
355
|
useTreeSortable,
|
|
354
356
|
useTreeView,
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
357
|
+
default111 as useUiOverride,
|
|
358
|
+
default112 as useUpdateMutation,
|
|
359
|
+
default113 as useUpload,
|
|
360
|
+
default114 as useUploadFiles,
|
|
361
|
+
default115 as useUser,
|
|
362
|
+
default123 as useUserPreferences,
|
|
363
|
+
default116 as useWorkspaceFile,
|
|
364
|
+
default117 as useWorkspaceFolders,
|
|
365
|
+
default118 as useWorkspaceFoldersTree,
|
|
366
|
+
default119 as useWorkspaceSearch,
|
|
367
|
+
default120 as useXitiTrackPageLoad,
|
|
368
|
+
default121 as useZendeskGuide,
|
|
367
369
|
wrapTreeNode
|
|
368
370
|
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { CalendarEvent } from '@edifice.io/client';
|
|
2
|
+
export interface AgendaProps {
|
|
3
|
+
events: CalendarEvent[];
|
|
4
|
+
onEventClick?: (event: CalendarEvent) => void;
|
|
5
|
+
onOpenAgendaClick?: () => void;
|
|
6
|
+
}
|
|
7
|
+
export declare const Agenda: {
|
|
8
|
+
({ events, onEventClick, onOpenAgendaClick, }: AgendaProps): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
displayName: string;
|
|
10
|
+
};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo } from "react";
|
|
3
|
+
import { useTranslation } from "react-i18next";
|
|
4
|
+
import illuEmptyAgenda from "@edifice.io/bootstrap/dist/images/homepage/illu-empty-agenda.svg";
|
|
5
|
+
import SvgIconExternalLink from "../../../icons/components/IconExternalLink.js";
|
|
6
|
+
import HomeCard from "../HomeCard/HomeCard.js";
|
|
7
|
+
import { AgendaEventCard } from "./AgendaEventCard.js";
|
|
8
|
+
import useDate from "../../../../hooks/useDate/useDate.js";
|
|
9
|
+
import Flex from "../../../../components/Flex/Flex.js";
|
|
10
|
+
const capitalize = (value) => value.charAt(0).toUpperCase() + value.slice(1), Agenda = ({
|
|
11
|
+
events,
|
|
12
|
+
onEventClick,
|
|
13
|
+
onOpenAgendaClick = () => window.open("/calendar", "_self")
|
|
14
|
+
}) => {
|
|
15
|
+
const {
|
|
16
|
+
t
|
|
17
|
+
} = useTranslation(), {
|
|
18
|
+
formatDate,
|
|
19
|
+
dateIsSame
|
|
20
|
+
} = useDate(), dayGroups = useMemo(() => {
|
|
21
|
+
const now = (/* @__PURE__ */ new Date()).toISOString();
|
|
22
|
+
return events.reduce((groups, event) => {
|
|
23
|
+
const lastGroup = groups[groups.length - 1];
|
|
24
|
+
return lastGroup && dateIsSame(lastGroup.date, event.startMoment, "day") ? (lastGroup.events.push(event), groups) : (groups.push({
|
|
25
|
+
key: event.id,
|
|
26
|
+
date: event.startMoment,
|
|
27
|
+
weekday: capitalize(formatDate(event.startMoment, "ddd")),
|
|
28
|
+
day: formatDate(event.startMoment, "D"),
|
|
29
|
+
month: dateIsSame(event.startMoment, now, "month") ? void 0 : formatDate(event.startMoment, "MMM"),
|
|
30
|
+
events: [event]
|
|
31
|
+
}), groups);
|
|
32
|
+
}, []);
|
|
33
|
+
}, [events, dateIsSame, formatDate]);
|
|
34
|
+
return /* @__PURE__ */ jsxs(HomeCard, { variant: "primary", children: [
|
|
35
|
+
/* @__PURE__ */ jsx(HomeCard.Header, { title: t("homepage.agenda.title"), actionLeftIcon: /* @__PURE__ */ jsx(SvgIconExternalLink, { width: "20", height: "20" }), onActionClick: onOpenAgendaClick, actionProps: {
|
|
36
|
+
"aria-label": t("homepage.agenda.openAgenda"),
|
|
37
|
+
"data-testid": "agenda-button-open"
|
|
38
|
+
} }),
|
|
39
|
+
/* @__PURE__ */ jsx(HomeCard.Content, { children: dayGroups.length === 0 ? /* @__PURE__ */ jsxs(Flex, { direction: "column", align: "center", gap: "8", className: "agenda-empty", children: [
|
|
40
|
+
/* @__PURE__ */ jsx("img", { src: illuEmptyAgenda, alt: "", width: 64, height: 64 }),
|
|
41
|
+
/* @__PURE__ */ jsx("span", { className: "agenda-empty-text", children: t("homepage.agenda.empty") })
|
|
42
|
+
] }) : /* @__PURE__ */ jsx(Flex, { direction: "column", gap: "8", className: "agenda-content", children: dayGroups.map((group) => /* @__PURE__ */ jsxs(Flex, { gap: "4", className: "agenda-day-group", "data-testid": "agenda-day-group", children: [
|
|
43
|
+
/* @__PURE__ */ jsxs(Flex, { direction: "column", align: "center", className: "agenda-day-group-date", children: [
|
|
44
|
+
/* @__PURE__ */ jsx("span", { children: group.weekday }),
|
|
45
|
+
/* @__PURE__ */ jsx("span", { className: "agenda-day-group-date-number", children: group.day }),
|
|
46
|
+
group.month && /* @__PURE__ */ jsx("span", { children: group.month })
|
|
47
|
+
] }),
|
|
48
|
+
/* @__PURE__ */ jsx(Flex, { direction: "column", gap: "8", className: "agenda-day-group-events", children: group.events.map((event) => /* @__PURE__ */ jsx(AgendaEventCard, { event, onClick: () => onEventClick == null ? void 0 : onEventClick(event) }, event.id)) })
|
|
49
|
+
] }, group.key)) }) })
|
|
50
|
+
] });
|
|
51
|
+
};
|
|
52
|
+
export {
|
|
53
|
+
Agenda
|
|
54
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function AgendaContainer(): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Agenda } from "./Agenda.js";
|
|
3
|
+
import { useAgendaContainer } from "./hooks/useAgendaContainer.js";
|
|
4
|
+
function AgendaContainer() {
|
|
5
|
+
const {
|
|
6
|
+
events
|
|
7
|
+
} = useAgendaContainer();
|
|
8
|
+
return /* @__PURE__ */ jsx(Agenda, { events, onEventClick: (event) => {
|
|
9
|
+
window.open(`/calendar#/view/${event.calendarId}/event/${event.id}`, "_self");
|
|
10
|
+
} });
|
|
11
|
+
}
|
|
12
|
+
export {
|
|
13
|
+
AgendaContainer
|
|
14
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { CalendarEvent } from '@edifice.io/client';
|
|
2
|
+
import { MouseEventHandler } from 'react';
|
|
3
|
+
export interface AgendaEventCardProps {
|
|
4
|
+
event: CalendarEvent;
|
|
5
|
+
onClick?: MouseEventHandler<HTMLButtonElement>;
|
|
6
|
+
}
|
|
7
|
+
export declare const AgendaEventCard: {
|
|
8
|
+
({ event, onClick }: AgendaEventCardProps): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
displayName: string;
|
|
10
|
+
};
|