@layers-app/shared 0.2.5 → 0.2.6
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/assets/svg/flags/es.svg.js +4 -0
- package/dist/assets/svg/flags/ru.svg.js +4 -0
- package/dist/assets/svg/flags/us.svg.js +4 -0
- package/dist/assets/svg/globeIcon.svg.js +5 -0
- package/dist/assets/svg/socials/github.svg.js +5 -0
- package/dist/assets/svg/socials/instagram.svg.js +5 -0
- package/dist/assets/svg/socials/x.svg.js +5 -0
- package/dist/assets/svg/socials/youtube.svg.js +5 -0
- package/dist/components/AppContainer/components/AppsSidebar/UserSection.d.ts.map +1 -1
- package/dist/components/AppContainer/components/AppsSidebar/UserSection.js +30 -30
- package/dist/components/AppContainer/hooks/useAppContainer.d.ts +1 -1
- package/dist/components/AppContainer/hooks/useAppContainer.d.ts.map +1 -1
- package/dist/components/AppContainer/hooks/useAppContainer.js +45 -42
- package/dist/components/AppContainer/hooks/useAppContainerDataStore.d.ts.map +1 -1
- package/dist/components/AppContainer/hooks/useAppContainerDataStore.js +1 -0
- package/dist/components/AppContainer/types.d.ts +1 -0
- package/dist/components/AppContainer/types.d.ts.map +1 -1
- package/dist/components/AttachmentsGalleryModal/components/ShakePlayer/ShakaPlayer.d.ts.map +1 -1
- package/dist/components/FilePicker/FilePicker.d.ts +33 -2
- package/dist/components/FilePicker/FilePicker.d.ts.map +1 -1
- package/dist/components/FilePicker/FilePicker.js +161 -110
- package/dist/components/FilePicker/FilePicker.module.css.js +9 -7
- package/dist/components/FilePicker/FilePickerGoogleDrive.d.ts +22 -0
- package/dist/components/FilePicker/FilePickerGoogleDrive.d.ts.map +1 -0
- package/dist/components/FilePicker/FilePickerGoogleDrive.js +86 -0
- package/dist/components/FilePicker/FilePickerUnsplash.d.ts.map +1 -1
- package/dist/components/FilePicker/FilePickerUnsplash.js +69 -52
- package/dist/components/FormViewer/hooks/useFormGlobalTheme.js +15 -15
- package/dist/components/FormViewer/hooks/useInterpolateText.js +3 -3
- package/dist/components/FormViewer/store/formStore.js +3 -3
- package/dist/components/FormViewer/store/selectors.js +1 -1
- package/dist/components/GroupAvatar/index.d.ts +1 -0
- package/dist/components/GroupAvatar/index.d.ts.map +1 -1
- package/dist/components/GroupAvatar/index.js +9 -8
- package/dist/components/ImageCropper/ImageCropper.d.ts +19 -0
- package/dist/components/ImageCropper/ImageCropper.d.ts.map +1 -0
- package/dist/components/ImageCropper/ImageCropper.js +356 -0
- package/dist/components/ImageCropper/ImageCropper.module.css.js +51 -0
- package/dist/components/ImageCropper/cropUtils.d.ts +22 -0
- package/dist/components/ImageCropper/cropUtils.d.ts.map +1 -0
- package/dist/components/ImageCropper/cropUtils.js +42 -0
- package/dist/components/ImageCropper/index.d.ts +4 -0
- package/dist/components/ImageCropper/index.d.ts.map +1 -0
- package/dist/components/ImageCropper/useCropInteraction.d.ts +28 -0
- package/dist/components/ImageCropper/useCropInteraction.d.ts.map +1 -0
- package/dist/components/ImageCropper/useCropInteraction.js +76 -0
- package/dist/components/IntegrationFlowAnimation/IntegrationFlowAnimation.d.ts +21 -0
- package/dist/components/IntegrationFlowAnimation/IntegrationFlowAnimation.d.ts.map +1 -0
- package/dist/components/IntegrationFlowAnimation/IntegrationFlowAnimation.js +73 -0
- package/dist/components/IntegrationFlowAnimation/IntegrationFlowAnimation.module.css.js +19 -0
- package/dist/components/IntegrationFlowAnimation/icons/GoogleDriveIcon.d.ts +6 -0
- package/dist/components/IntegrationFlowAnimation/icons/GoogleDriveIcon.d.ts.map +1 -0
- package/dist/components/IntegrationFlowAnimation/icons/GoogleDriveIcon.js +60 -0
- package/dist/components/IntegrationFlowAnimation/icons/LayersCubeIcon.d.ts +6 -0
- package/dist/components/IntegrationFlowAnimation/icons/LayersCubeIcon.d.ts.map +1 -0
- package/dist/components/IntegrationFlowAnimation/icons/LayersCubeIcon.js +21 -0
- package/dist/components/IntegrationFlowAnimation/icons/NotionIcon.d.ts +6 -0
- package/dist/components/IntegrationFlowAnimation/icons/NotionIcon.d.ts.map +1 -0
- package/dist/components/IntegrationFlowAnimation/icons/NotionIcon.js +35 -0
- package/dist/components/IntegrationFlowAnimation/icons/index.d.ts +4 -0
- package/dist/components/IntegrationFlowAnimation/icons/index.d.ts.map +1 -0
- package/dist/components/IntegrationFlowAnimation/index.d.ts +5 -0
- package/dist/components/IntegrationFlowAnimation/index.d.ts.map +1 -0
- package/dist/components/LanguagePicker/LanguagePicker.d.ts +2 -1
- package/dist/components/LanguagePicker/LanguagePicker.d.ts.map +1 -1
- package/dist/components/LanguagePicker/LanguagePicker.js +26 -22
- package/dist/components/MediaLibrary/MediaLibrary.d.ts +3 -0
- package/dist/components/MediaLibrary/MediaLibrary.d.ts.map +1 -0
- package/dist/components/MediaLibrary/MediaLibrary.js +93 -0
- package/dist/components/MediaLibrary/MediaLibrary.module.css.js +17 -0
- package/dist/components/MediaLibrary/MediaLibraryBreadcrumbs.d.ts +8 -0
- package/dist/components/MediaLibrary/MediaLibraryBreadcrumbs.d.ts.map +1 -0
- package/dist/components/MediaLibrary/MediaLibraryBreadcrumbs.js +22 -0
- package/dist/components/MediaLibrary/MediaLibraryBrowser.d.ts +12 -0
- package/dist/components/MediaLibrary/MediaLibraryBrowser.d.ts.map +1 -0
- package/dist/components/MediaLibrary/MediaLibraryBrowser.js +52 -0
- package/dist/components/MediaLibrary/MediaLibraryRow.d.ts +9 -0
- package/dist/components/MediaLibrary/MediaLibraryRow.d.ts.map +1 -0
- package/dist/components/MediaLibrary/MediaLibraryRow.js +29 -0
- package/dist/components/MediaLibrary/index.d.ts +4 -0
- package/dist/components/MediaLibrary/index.d.ts.map +1 -0
- package/dist/components/MediaLibrary/types.d.ts +31 -0
- package/dist/components/MediaLibrary/types.d.ts.map +1 -0
- package/dist/components/NoData/NoData.d.ts +6 -1
- package/dist/components/NoData/NoData.d.ts.map +1 -1
- package/dist/components/NoData/NoData.js +85 -82
- package/dist/components/SettingsSection/index.d.ts +12 -0
- package/dist/components/SettingsSection/index.d.ts.map +1 -0
- package/dist/components/SettingsSection/index.js +36 -0
- package/dist/components/SettingsSection/styles.module.css.js +7 -0
- package/dist/components/SocialLinkRow/index.d.ts +11 -0
- package/dist/components/SocialLinkRow/index.d.ts.map +1 -0
- package/dist/components/SocialLinkRow/index.js +109 -0
- package/dist/components/SortableList/components/SortableItem/SortableItem.js +3 -3
- package/dist/components/StorageUsageProgress/index.js +26 -24
- package/dist/components/TimezonePicker/index.d.ts +9 -0
- package/dist/components/TimezonePicker/index.d.ts.map +1 -0
- package/dist/components/TimezonePicker/index.js +90 -0
- package/dist/components/WorkspaceMenu/WorkspaceItem.d.ts.map +1 -1
- package/dist/components/WorkspaceMenu/WorkspaceItem.js +18 -17
- package/dist/components/WorkspaceMenu/WorkspaceMenu.d.ts.map +1 -1
- package/dist/components/WorkspaceMenu/WorkspaceMenu.js +70 -69
- package/dist/components/modals/RemoveConfirmModal.js +1 -1
- package/dist/components/table/components/TableHeaders.js +3 -3
- package/dist/components/table/components/TablePanel.js +1 -1
- package/dist/components/table/helpers/columns.js +3 -3
- package/dist/components/table/hooks/TableProvider.js +3 -3
- package/dist/components/table/selectors.js +6 -6
- package/dist/helpers/getFileType.d.ts +1 -2
- package/dist/helpers/getFileType.d.ts.map +1 -1
- package/dist/helpers/getFileType.js +5 -6
- package/dist/helpers/showNotifications.d.ts +14 -3
- package/dist/helpers/showNotifications.d.ts.map +1 -1
- package/dist/helpers/showNotifications.js +152 -61
- package/dist/helpers/showNotifications.module.css.js +29 -0
- package/dist/helpers/timezones.d.ts +12 -0
- package/dist/helpers/timezones.d.ts.map +1 -0
- package/dist/helpers/timezones.js +59 -0
- package/dist/hooks/useNumberQueryParam.js +3 -3
- package/dist/hooks/useVideoUploadGuard.d.ts +2 -0
- package/dist/hooks/useVideoUploadGuard.d.ts.map +1 -0
- package/dist/hooks/useVideoUploadGuard.js +24 -0
- package/dist/index.css +1 -1
- package/dist/index.d.ts +10 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +449 -406
- package/dist/lang/locales/ui_en.json.js +24 -22
- package/dist/lang/locales/ui_es.json.js +20 -18
- package/dist/lang/locales/ui_ru.json.js +20 -18
- package/dist/lib/contentImport/index.d.ts +4 -0
- package/dist/lib/contentImport/index.d.ts.map +1 -0
- package/dist/lib/contentImport/lexicalSerializer.d.ts +19 -0
- package/dist/lib/contentImport/lexicalSerializer.d.ts.map +1 -0
- package/dist/lib/contentImport/lexicalSerializer.js +215 -0
- package/dist/lib/contentImport/types.d.ts +161 -0
- package/dist/lib/contentImport/types.d.ts.map +1 -0
- package/dist/lib/contentImport/utils.d.ts +35 -0
- package/dist/lib/contentImport/utils.d.ts.map +1 -0
- package/dist/lib/contentImport/utils.js +145 -0
- package/dist/node_modules/countries-and-timezones/esm/index.js +4031 -0
- package/dist/store/plansModal.d.ts.map +1 -1
- package/dist/store/plansModal.js +8 -7
- package/dist/utils/formatStorage.d.ts +7 -1
- package/dist/utils/formatStorage.d.ts.map +1 -1
- package/dist/utils/formatStorage.js +10 -5
- package/dist/utils/getCroppedBlob.d.ts +3 -0
- package/dist/utils/getCroppedBlob.d.ts.map +1 -0
- package/dist/utils/getCroppedBlob.js +21 -0
- package/package.json +1 -1
- package/dist/assets/images/flags/es.svg.js +0 -4
- package/dist/assets/images/flags/ru.svg.js +0 -4
- package/dist/assets/images/flags/us.svg.js +0 -4
- package/dist/components/PaymentSuccess/PaymentSuccess.d.ts +0 -2
- package/dist/components/PaymentSuccess/PaymentSuccess.d.ts.map +0 -1
- package/dist/components/PaymentSuccess/PaymentSuccess.js +0 -41
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { FloatingPosition, PopoverProps } from '@mantine/core';
|
|
2
|
+
export interface MediaFile {
|
|
3
|
+
id: string;
|
|
4
|
+
title: string;
|
|
5
|
+
type: 'FOLDER' | 'ATTACHMENT';
|
|
6
|
+
contentType: string;
|
|
7
|
+
fileSize: number;
|
|
8
|
+
updatedAt: string;
|
|
9
|
+
}
|
|
10
|
+
export interface BreadcrumbItem {
|
|
11
|
+
id: string;
|
|
12
|
+
name: string;
|
|
13
|
+
}
|
|
14
|
+
export type MediaLibraryTab = 'disk' | 'favorites' | 'shared';
|
|
15
|
+
export interface MediaLibraryProps {
|
|
16
|
+
children: React.ReactNode;
|
|
17
|
+
items: MediaFile[];
|
|
18
|
+
isLoading?: boolean;
|
|
19
|
+
breadcrumbs?: BreadcrumbItem[];
|
|
20
|
+
activeTab?: MediaLibraryTab;
|
|
21
|
+
tabs?: MediaLibraryTab[];
|
|
22
|
+
onTabChange?: (tab: MediaLibraryTab) => void;
|
|
23
|
+
onFolderClick?: (folder: MediaFile) => void;
|
|
24
|
+
onBreadcrumbClick?: (crumb: BreadcrumbItem, index: number) => void;
|
|
25
|
+
onSelect?: (file: MediaFile) => void;
|
|
26
|
+
onOpenedChange?: (opened: boolean) => void;
|
|
27
|
+
width?: number;
|
|
28
|
+
position?: FloatingPosition;
|
|
29
|
+
popoverProps?: PopoverProps;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/MediaLibrary/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEpE,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,GAAG,YAAY,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;AAE9D,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,IAAI,CAAC,EAAE,eAAe,EAAE,CAAC;IACzB,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,IAAI,CAAC;IAC7C,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,CAAC;IAC5C,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnE,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IACrC,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B"}
|
|
@@ -154,16 +154,21 @@ export declare const illustrationMap: {
|
|
|
154
154
|
}>;
|
|
155
155
|
};
|
|
156
156
|
export type IllustrationType = keyof typeof illustrationMap | string | ReactNode;
|
|
157
|
+
interface NoDataButtonProps extends PolymorphicComponentProps<'button', ButtonProps> {
|
|
158
|
+
hidden?: boolean;
|
|
159
|
+
}
|
|
157
160
|
export type NoDataProps = {
|
|
158
161
|
title?: ReactNode;
|
|
159
162
|
titleProps?: TitleProps;
|
|
160
163
|
description?: ReactNode;
|
|
161
164
|
descriptionProps?: TextProps;
|
|
162
|
-
buttons?:
|
|
165
|
+
buttons?: NoDataButtonProps[];
|
|
163
166
|
illustration?: IllustrationType;
|
|
164
167
|
size?: number;
|
|
165
168
|
width?: number | string;
|
|
166
169
|
height?: number | string;
|
|
170
|
+
subStackProps?: StackProps;
|
|
167
171
|
} & StackProps;
|
|
168
172
|
export declare const NoData: FC<NoDataProps>;
|
|
173
|
+
export {};
|
|
169
174
|
//# sourceMappingURL=NoData.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NoData.d.ts","sourceRoot":"","sources":["../../../src/components/NoData/NoData.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAEL,WAAW,EAGX,yBAAyB,EAEzB,UAAU,EAEV,SAAS,EAET,UAAU,EACX,MAAM,eAAe,CAAC;AAiCvB,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0B3B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GACxB,MAAM,OAAO,eAAe,GAC5B,MAAM,GACN,SAAS,CAAC;AAEd,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,OAAO,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"NoData.d.ts","sourceRoot":"","sources":["../../../src/components/NoData/NoData.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAEL,WAAW,EAGX,yBAAyB,EAEzB,UAAU,EAEV,SAAS,EAET,UAAU,EACX,MAAM,eAAe,CAAC;AAiCvB,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0B3B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GACxB,MAAM,OAAO,eAAe,GAC5B,MAAM,GACN,SAAS,CAAC;AAEd,UAAU,iBACR,SAAQ,yBAAyB,CAAC,QAAQ,EAAE,WAAW,CAAC;IACxD,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC9B,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,UAAU,CAAC;CAC5B,GAAG,UAAU,CAAC;AAEf,eAAO,MAAM,MAAM,EAAE,EAAE,CAAC,WAAW,CA0ElC,CAAC"}
|
|
@@ -1,72 +1,73 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import
|
|
3
|
-
import { Stack as
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
-
import
|
|
17
|
-
import
|
|
18
|
-
import
|
|
19
|
-
import
|
|
20
|
-
import
|
|
21
|
-
import
|
|
22
|
-
import
|
|
23
|
-
import
|
|
24
|
-
import
|
|
25
|
-
import
|
|
26
|
-
import
|
|
27
|
-
import
|
|
28
|
-
import
|
|
29
|
-
const
|
|
30
|
-
empty:
|
|
31
|
-
noAccess:
|
|
32
|
-
trash:
|
|
33
|
-
noImage:
|
|
34
|
-
noResults:
|
|
35
|
-
noComments:
|
|
36
|
-
noData:
|
|
37
|
-
emptyFolder:
|
|
38
|
-
noTaskResults:
|
|
39
|
-
noSearchResults:
|
|
40
|
-
noMembers:
|
|
41
|
-
noGroups:
|
|
42
|
-
noNotifications:
|
|
43
|
-
noWorkspaces:
|
|
44
|
-
paymentSuccess:
|
|
45
|
-
notSuccessMan:
|
|
46
|
-
noAnswers:
|
|
47
|
-
alertMan:
|
|
48
|
-
noFlows:
|
|
49
|
-
noTasks:
|
|
50
|
-
noCloud:
|
|
51
|
-
noForms:
|
|
52
|
-
users:
|
|
53
|
-
404:
|
|
54
|
-
500:
|
|
55
|
-
},
|
|
56
|
-
title:
|
|
1
|
+
import { jsxs as c, jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import N from "react";
|
|
3
|
+
import { Stack as f, Flex as h, Title as j, Text as x, Group as y, Button as F } from "@mantine/core";
|
|
4
|
+
import R from "../../assets/svg/alertMan.svg.js";
|
|
5
|
+
import M from "../../assets/svg/noData/404.svg.js";
|
|
6
|
+
import k from "../../assets/svg/noData/500.svg.js";
|
|
7
|
+
import w from "../../assets/svg/noData/empty.svg.js";
|
|
8
|
+
import E from "../../assets/svg/noData/folder.svg.js";
|
|
9
|
+
import T from "../../assets/svg/noData/noAccess.svg.js";
|
|
10
|
+
import I from "../../assets/svg/noData/noAnswers.svg.js";
|
|
11
|
+
import A from "../../assets/svg/noData/noCloud.svg.js";
|
|
12
|
+
import C from "../../assets/svg/noData/noComments.svg.js";
|
|
13
|
+
import D from "../../assets/svg/noData/noData.svg.js";
|
|
14
|
+
import G from "../../assets/svg/noData/noFlows.svg.js";
|
|
15
|
+
import _ from "../../assets/svg/noData/noForms.svg.js";
|
|
16
|
+
import W from "../../assets/svg/noData/noGroups.svg.js";
|
|
17
|
+
import B from "../../assets/svg/noData/noImage.svg.js";
|
|
18
|
+
import P from "../../assets/svg/noData/noMembers.svg.js";
|
|
19
|
+
import U from "../../assets/svg/noData/noNotifications.svg.js";
|
|
20
|
+
import V from "../../assets/svg/noData/noResults.svg.js";
|
|
21
|
+
import b from "../../assets/svg/noData/noSearchResults.svg.js";
|
|
22
|
+
import q from "../../assets/svg/noData/noTaskResults.svg.js";
|
|
23
|
+
import z from "../../assets/svg/noData/noTasks.svg.js";
|
|
24
|
+
import H from "../../assets/svg/noData/noWorkspaces.svg.js";
|
|
25
|
+
import J from "../../assets/svg/noData/trash.svg.js";
|
|
26
|
+
import K from "../../assets/svg/notSuccessMan.svg.js";
|
|
27
|
+
import L from "../../assets/svg/successMan.svg.js";
|
|
28
|
+
import O from "../../assets/svg/users.svg.js";
|
|
29
|
+
const Q = (e) => new RegExp("(\\p{Emoji_Presentation}|\\p{Emoji}\\uFE0F)", "u").test(e), X = {
|
|
30
|
+
empty: w,
|
|
31
|
+
noAccess: T,
|
|
32
|
+
trash: J,
|
|
33
|
+
noImage: B,
|
|
34
|
+
noResults: V,
|
|
35
|
+
noComments: C,
|
|
36
|
+
noData: D,
|
|
37
|
+
emptyFolder: E,
|
|
38
|
+
noTaskResults: q,
|
|
39
|
+
noSearchResults: b,
|
|
40
|
+
noMembers: P,
|
|
41
|
+
noGroups: W,
|
|
42
|
+
noNotifications: U,
|
|
43
|
+
noWorkspaces: H,
|
|
44
|
+
paymentSuccess: L,
|
|
45
|
+
notSuccessMan: K,
|
|
46
|
+
noAnswers: I,
|
|
47
|
+
alertMan: R,
|
|
48
|
+
noFlows: G,
|
|
49
|
+
noTasks: z,
|
|
50
|
+
noCloud: A,
|
|
51
|
+
noForms: _,
|
|
52
|
+
users: O,
|
|
53
|
+
404: M,
|
|
54
|
+
500: k
|
|
55
|
+
}, ko = ({
|
|
56
|
+
title: e,
|
|
57
57
|
titleProps: t,
|
|
58
58
|
description: s,
|
|
59
|
-
descriptionProps:
|
|
59
|
+
descriptionProps: g,
|
|
60
60
|
buttons: n,
|
|
61
61
|
illustration: o,
|
|
62
|
-
size:
|
|
63
|
-
width:
|
|
64
|
-
height:
|
|
65
|
-
|
|
62
|
+
size: m = 145,
|
|
63
|
+
width: S,
|
|
64
|
+
height: l,
|
|
65
|
+
subStackProps: v,
|
|
66
|
+
...u
|
|
66
67
|
}) => {
|
|
67
|
-
const i = o && typeof o == "string" &&
|
|
68
|
-
return /* @__PURE__ */
|
|
69
|
-
|
|
68
|
+
const i = o && typeof o == "string" && Q(o) || o && N.isValidElement(o), p = o && !i ? X[o] : null;
|
|
69
|
+
return /* @__PURE__ */ c(
|
|
70
|
+
f,
|
|
70
71
|
{
|
|
71
72
|
gap: "sm",
|
|
72
73
|
justify: "center",
|
|
@@ -76,28 +77,30 @@ const O = (m) => new RegExp("(\\p{Emoji_Presentation}|\\p{Emoji}\\uFE0F)", "u").
|
|
|
76
77
|
style: {
|
|
77
78
|
zIndex: 3
|
|
78
79
|
},
|
|
79
|
-
...
|
|
80
|
+
...u,
|
|
80
81
|
children: [
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
82
|
+
/* @__PURE__ */ c(f, { align: "center", gap: "sm", ...v, children: [
|
|
83
|
+
o && /* @__PURE__ */ r(
|
|
84
|
+
h,
|
|
85
|
+
{
|
|
86
|
+
justify: "center",
|
|
87
|
+
style: {
|
|
88
|
+
height: l || m,
|
|
89
|
+
width: S || m,
|
|
90
|
+
fontSize: m
|
|
91
|
+
},
|
|
92
|
+
children: i ? /* @__PURE__ */ r("span", { children: o }) : p && /* @__PURE__ */ r(p, {})
|
|
93
|
+
}
|
|
94
|
+
),
|
|
95
|
+
e && /* @__PURE__ */ r(j, { order: 2, ta: "center", mt: 0, maw: 450, ...t, children: e }),
|
|
96
|
+
s && /* @__PURE__ */ r(x, { ta: "center", c: "dimmed", maw: 400, ...g, children: s })
|
|
97
|
+
] }),
|
|
98
|
+
n?.length ? /* @__PURE__ */ r(y, { gap: "xs", justify: "center", children: n.map((a, d) => a?.hidden ? null : /* @__PURE__ */ r(F, { variant: "filled", ...a }, d)) }) : null
|
|
96
99
|
]
|
|
97
100
|
}
|
|
98
101
|
);
|
|
99
102
|
};
|
|
100
103
|
export {
|
|
101
|
-
|
|
102
|
-
|
|
104
|
+
ko as NoData,
|
|
105
|
+
X as illustrationMap
|
|
103
106
|
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { GroupProps, StackProps } from '@mantine/core';
|
|
2
|
+
interface SettingsSectionProps extends StackProps {
|
|
3
|
+
title?: string;
|
|
4
|
+
subTitle?: string | React.ReactNode;
|
|
5
|
+
description?: string;
|
|
6
|
+
wrapperProps?: GroupProps;
|
|
7
|
+
leftSectionProps?: StackProps;
|
|
8
|
+
children?: React.ReactNode;
|
|
9
|
+
}
|
|
10
|
+
export declare const SettingsSection: ({ title, subTitle, description, children, wrapperProps, leftSectionProps, ...rest }: SettingsSectionProps) => import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/SettingsSection/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EAEV,UAAU,EAGX,MAAM,eAAe,CAAC;AAIvB,UAAU,oBAAqB,SAAQ,UAAU;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,gBAAgB,CAAC,EAAE,UAAU,CAAC;IAE9B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,eAAO,MAAM,eAAe,GAAI,qFAQ7B,oBAAoB,4CAyBtB,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { jsxs as e, jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import { Stack as s, Title as m, Group as d, Text as i } from "@mantine/core";
|
|
3
|
+
import g from "./styles.module.css.js";
|
|
4
|
+
const u = ({
|
|
5
|
+
title: t,
|
|
6
|
+
subTitle: n,
|
|
7
|
+
description: a,
|
|
8
|
+
children: c,
|
|
9
|
+
wrapperProps: o,
|
|
10
|
+
leftSectionProps: p,
|
|
11
|
+
...l
|
|
12
|
+
}) => /* @__PURE__ */ e(s, { ...l, w: "100%", gap: 12, children: [
|
|
13
|
+
t && /* @__PURE__ */ r(m, { order: 4, children: t }),
|
|
14
|
+
/* @__PURE__ */ e(
|
|
15
|
+
d,
|
|
16
|
+
{
|
|
17
|
+
justify: "space-between",
|
|
18
|
+
align: "start",
|
|
19
|
+
px: "sm",
|
|
20
|
+
py: "lg",
|
|
21
|
+
className: g.contentWrapper,
|
|
22
|
+
gap: "auto",
|
|
23
|
+
...o,
|
|
24
|
+
children: [
|
|
25
|
+
/* @__PURE__ */ e(s, { maw: 296, gap: 4, ...p, children: [
|
|
26
|
+
/* @__PURE__ */ r(i, { size: "sm", fw: 600, children: n }),
|
|
27
|
+
/* @__PURE__ */ r(i, { size: "xs", c: "gray", children: a })
|
|
28
|
+
] }),
|
|
29
|
+
c
|
|
30
|
+
]
|
|
31
|
+
}
|
|
32
|
+
)
|
|
33
|
+
] });
|
|
34
|
+
export {
|
|
35
|
+
u as SettingsSection
|
|
36
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
interface SocialLinkRowProps {
|
|
2
|
+
social: {
|
|
3
|
+
name: string;
|
|
4
|
+
link: string;
|
|
5
|
+
};
|
|
6
|
+
onSave: (link: string) => void;
|
|
7
|
+
onClear: () => void;
|
|
8
|
+
}
|
|
9
|
+
export declare const SocialLinkRow: ({ social, onSave, onClear, }: SocialLinkRowProps) => import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/SocialLinkRow/index.tsx"],"names":[],"mappings":"AA0BA,UAAU,kBAAkB;IAC1B,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,eAAO,MAAM,aAAa,GAAI,8BAI3B,kBAAkB,4CAqHpB,CAAC"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { jsxs as o, jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import a from "react";
|
|
3
|
+
import { useTranslation as E } from "react-i18next";
|
|
4
|
+
import { Cancel01Icon as f } from "@hugeicons/core-free-icons";
|
|
5
|
+
import { HugeiconsIcon as h } from "@hugeicons/react";
|
|
6
|
+
import { Group as S, Flex as i, Text as d, ActionIcon as g, Button as x, TextInput as b } from "@mantine/core";
|
|
7
|
+
import z from "../../assets/svg/socials/github.svg.js";
|
|
8
|
+
import T from "../../assets/svg/socials/instagram.svg.js";
|
|
9
|
+
import L from "../../assets/svg/socials/x.svg.js";
|
|
10
|
+
import _ from "../../assets/svg/socials/youtube.svg.js";
|
|
11
|
+
const D = {
|
|
12
|
+
Instagram: T,
|
|
13
|
+
"X (Twitter)": L,
|
|
14
|
+
Youtube: _,
|
|
15
|
+
GitHub: z
|
|
16
|
+
}, O = ({
|
|
17
|
+
social: n,
|
|
18
|
+
onSave: v,
|
|
19
|
+
onClear: w
|
|
20
|
+
}) => {
|
|
21
|
+
const { t: r } = E(), [I, l] = a.useState(!1), [s, c] = a.useState(n.link || ""), [k, u] = a.useState(null), m = (e) => e.length > 30 ? r("MAX_LENGTH_EXCEEDED", { max: 30, ns: "errors" }) : /[\u0400-\u04FF]/.test(e) ? r("CYRILLIC_NOT_ALLOWED", { ns: "errors" }) : null, C = (e) => {
|
|
22
|
+
c(e), u(m(e));
|
|
23
|
+
}, p = () => {
|
|
24
|
+
const e = m(s);
|
|
25
|
+
if (e) {
|
|
26
|
+
u(e);
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
v(s), l(!1);
|
|
30
|
+
};
|
|
31
|
+
return /* @__PURE__ */ o(S, { justify: "space-between", w: "100%", children: [
|
|
32
|
+
/* @__PURE__ */ o(i, { maw: 343, w: "100%", gap: 8, children: [
|
|
33
|
+
a.createElement(D[n.name], {
|
|
34
|
+
height: 16,
|
|
35
|
+
width: 16
|
|
36
|
+
}),
|
|
37
|
+
/* @__PURE__ */ t(d, { fw: 500, size: "sm", children: n.name })
|
|
38
|
+
] }),
|
|
39
|
+
n.link ? /* @__PURE__ */ o(i, { align: "center", gap: 16, children: [
|
|
40
|
+
/* @__PURE__ */ t(d, { size: "sm", c: "var(--mantine-color-text)", children: n.link }),
|
|
41
|
+
/* @__PURE__ */ t(
|
|
42
|
+
g,
|
|
43
|
+
{
|
|
44
|
+
color: "var(--mantine-color-text)",
|
|
45
|
+
variant: "subtle",
|
|
46
|
+
size: "xs",
|
|
47
|
+
children: /* @__PURE__ */ t(
|
|
48
|
+
h,
|
|
49
|
+
{
|
|
50
|
+
onClick: () => {
|
|
51
|
+
w(), c("");
|
|
52
|
+
},
|
|
53
|
+
icon: f
|
|
54
|
+
}
|
|
55
|
+
)
|
|
56
|
+
}
|
|
57
|
+
)
|
|
58
|
+
] }) : !n.link && !I ? /* @__PURE__ */ t(i, { children: /* @__PURE__ */ t(
|
|
59
|
+
x,
|
|
60
|
+
{
|
|
61
|
+
c: "var(--mantine-color-text)",
|
|
62
|
+
size: "xs",
|
|
63
|
+
variant: "light",
|
|
64
|
+
color: "gray",
|
|
65
|
+
onClick: () => {
|
|
66
|
+
l(!0);
|
|
67
|
+
},
|
|
68
|
+
children: r("addUsername")
|
|
69
|
+
}
|
|
70
|
+
) }) : /* @__PURE__ */ o(i, { flex: 1, align: "center", gap: 16, children: [
|
|
71
|
+
/* @__PURE__ */ t(
|
|
72
|
+
b,
|
|
73
|
+
{
|
|
74
|
+
flex: 1,
|
|
75
|
+
placeholder: r("username"),
|
|
76
|
+
variant: "default",
|
|
77
|
+
size: "xs",
|
|
78
|
+
value: s,
|
|
79
|
+
onChange: (e) => C(e.currentTarget.value),
|
|
80
|
+
onKeyDown: (e) => {
|
|
81
|
+
e.key === "Enter" && (e.preventDefault(), e.stopPropagation(), p());
|
|
82
|
+
},
|
|
83
|
+
error: k
|
|
84
|
+
}
|
|
85
|
+
),
|
|
86
|
+
/* @__PURE__ */ t(x, { onClick: p, variant: "transparent", px: 0, size: "xs", children: r("send") }),
|
|
87
|
+
/* @__PURE__ */ t(
|
|
88
|
+
g,
|
|
89
|
+
{
|
|
90
|
+
color: "var(--mantine-color-text)",
|
|
91
|
+
variant: "subtle",
|
|
92
|
+
size: "xs",
|
|
93
|
+
children: /* @__PURE__ */ t(
|
|
94
|
+
h,
|
|
95
|
+
{
|
|
96
|
+
onClick: () => {
|
|
97
|
+
c(""), l(!1), u(null);
|
|
98
|
+
},
|
|
99
|
+
icon: f
|
|
100
|
+
}
|
|
101
|
+
)
|
|
102
|
+
}
|
|
103
|
+
)
|
|
104
|
+
] })
|
|
105
|
+
] });
|
|
106
|
+
};
|
|
107
|
+
export {
|
|
108
|
+
O as SocialLinkRow
|
|
109
|
+
};
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsx as r } from "react/jsx-runtime";
|
|
2
|
-
import { useMemo as d,
|
|
2
|
+
import { useMemo as d, useContext as p, createContext as b } from "react";
|
|
3
3
|
import { useSortable as S } from "@dnd-kit/sortable";
|
|
4
4
|
import { CSS as v } from "@dnd-kit/utilities";
|
|
5
5
|
import { ActionIcon as x } from "@mantine/core";
|
|
6
6
|
import { IconGripVertical as g } from "@tabler/icons-react";
|
|
7
7
|
/* empty css */
|
|
8
|
-
const a =
|
|
8
|
+
const a = b({
|
|
9
9
|
attributes: {},
|
|
10
10
|
listeners: void 0,
|
|
11
11
|
ref() {
|
|
@@ -41,7 +41,7 @@ function D({
|
|
|
41
41
|
iconProps: o,
|
|
42
42
|
actionIconProps: n
|
|
43
43
|
}) {
|
|
44
|
-
const { attributes: t, listeners: e, ref: i } =
|
|
44
|
+
const { attributes: t, listeners: e, ref: i } = p(a);
|
|
45
45
|
return /* @__PURE__ */ r(
|
|
46
46
|
x,
|
|
47
47
|
{
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { useTranslation as
|
|
3
|
-
import { Box as
|
|
4
|
-
import { storageCategoryColors as
|
|
5
|
-
import { formatStorage as z } from "../../utils/formatStorage.js";
|
|
6
|
-
import
|
|
7
|
-
const
|
|
1
|
+
import { jsx as r, jsxs as i } from "react/jsx-runtime";
|
|
2
|
+
import { useTranslation as f } from "react-i18next";
|
|
3
|
+
import { Box as h, Progress as p, Tooltip as u, Stack as x, Text as n, Flex as S } from "@mantine/core";
|
|
4
|
+
import { storageCategoryColors as T } from "../../types/storageCategories.js";
|
|
5
|
+
import { formatStoragePercent as b, formatStorage as z } from "../../utils/formatStorage.js";
|
|
6
|
+
import v from "./StorageUsageProgress.module.css.js";
|
|
7
|
+
const w = ({
|
|
8
8
|
type: c,
|
|
9
|
-
description:
|
|
9
|
+
description: o,
|
|
10
10
|
usedKb: a,
|
|
11
11
|
percentage: t
|
|
12
|
-
}) => /* @__PURE__ */ i(
|
|
13
|
-
/* @__PURE__ */
|
|
14
|
-
/* @__PURE__ */ i(
|
|
12
|
+
}) => /* @__PURE__ */ i(x, { gap: 2, align: "center", children: [
|
|
13
|
+
/* @__PURE__ */ r(n, { size: "sm", children: c }),
|
|
14
|
+
/* @__PURE__ */ i(S, { gap: 5, children: [
|
|
15
15
|
/* @__PURE__ */ i(n, { size: "xl", children: [
|
|
16
16
|
t,
|
|
17
17
|
" %"
|
|
@@ -22,20 +22,20 @@ const v = ({
|
|
|
22
22
|
")"
|
|
23
23
|
] })
|
|
24
24
|
] }),
|
|
25
|
-
/* @__PURE__ */
|
|
25
|
+
/* @__PURE__ */ r(n, { size: "sm", c: "var(--mantine-color-gray-6)", children: o })
|
|
26
26
|
] }), N = ({
|
|
27
27
|
storageByCategory: c,
|
|
28
|
-
totalStorageKb:
|
|
28
|
+
totalStorageKb: o,
|
|
29
29
|
size: a = 30
|
|
30
30
|
}) => {
|
|
31
|
-
const { t } =
|
|
32
|
-
const s = e.usedKb /
|
|
31
|
+
const { t } = f("settingsPage"), g = 24, l = c.filter(({ usedKb: e }) => e > 0).map((e) => {
|
|
32
|
+
const s = e.usedKb / o * 100;
|
|
33
33
|
return {
|
|
34
34
|
...e,
|
|
35
35
|
percentage: parseFloat(s.toFixed(4))
|
|
36
36
|
};
|
|
37
37
|
});
|
|
38
|
-
return /* @__PURE__ */
|
|
38
|
+
return /* @__PURE__ */ r(h, { w: "100%", children: /* @__PURE__ */ r(
|
|
39
39
|
p.Root,
|
|
40
40
|
{
|
|
41
41
|
radius: "lg",
|
|
@@ -43,25 +43,27 @@ const v = ({
|
|
|
43
43
|
styles: {
|
|
44
44
|
root: { overflow: "visible" }
|
|
45
45
|
},
|
|
46
|
-
children: l.map(({ type: e, usedKb: s, percentage: d }, m) => /* @__PURE__ */
|
|
47
|
-
|
|
46
|
+
children: l.map(({ type: e, usedKb: s, percentage: d }, m) => /* @__PURE__ */ r(
|
|
47
|
+
u,
|
|
48
48
|
{
|
|
49
49
|
position: "bottom",
|
|
50
|
-
label: /* @__PURE__ */
|
|
51
|
-
|
|
50
|
+
label: /* @__PURE__ */ r(
|
|
51
|
+
w,
|
|
52
52
|
{
|
|
53
53
|
type: t(`workspace.categories.${e}`),
|
|
54
54
|
usedKb: z(s),
|
|
55
|
-
percentage: (
|
|
55
|
+
percentage: b(
|
|
56
|
+
s / o * 100
|
|
57
|
+
),
|
|
56
58
|
description: t(`workspace.catDescriptions.${e}`)
|
|
57
59
|
}
|
|
58
60
|
),
|
|
59
|
-
children: /* @__PURE__ */
|
|
61
|
+
children: /* @__PURE__ */ r(
|
|
60
62
|
p.Section,
|
|
61
63
|
{
|
|
62
64
|
value: d,
|
|
63
|
-
color:
|
|
64
|
-
className:
|
|
65
|
+
color: T[e],
|
|
66
|
+
className: v.section,
|
|
65
67
|
styles: {
|
|
66
68
|
section: {
|
|
67
69
|
borderRadius: 999,
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ComboboxProps } from '@mantine/core';
|
|
2
|
+
interface TimezonePickerProps extends ComboboxProps {
|
|
3
|
+
timezone: string | null;
|
|
4
|
+
label?: string;
|
|
5
|
+
onChange: (value: string) => void;
|
|
6
|
+
}
|
|
7
|
+
export declare const TimezonePicker: ({ label, timezone, onChange, ...rest }: TimezonePickerProps) => import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/TimezonePicker/index.tsx"],"names":[],"mappings":"AAMA,OAAO,EAEL,aAAa,EAQd,MAAM,eAAe,CAAC;AAIvB,UAAU,mBAAoB,SAAQ,aAAa;IACjD,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC;AAED,eAAO,MAAM,cAAc,GAAI,wCAK5B,mBAAmB,4CA8FrB,CAAC"}
|