@selfcommunity/react-ui 0.1.19-alpha.3 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/components/Composer/Composer.d.ts.map +1 -1
- package/lib/cjs/components/Composer/Composer.js +3 -2
- package/lib/cjs/components/Composer/Composer.js.map +1 -1
- package/lib/cjs/components/Editor/plugins/DefaultHtmlValuePlugin.d.ts.map +1 -1
- package/lib/cjs/components/Editor/plugins/DefaultHtmlValuePlugin.js +10 -3
- package/lib/cjs/components/Editor/plugins/DefaultHtmlValuePlugin.js.map +1 -1
- package/lib/cjs/components/Feed/Feed.d.ts +16 -2
- package/lib/cjs/components/Feed/Feed.d.ts.map +1 -1
- package/lib/cjs/components/Feed/Feed.js +140 -96
- package/lib/cjs/components/Feed/Feed.js.map +1 -1
- package/lib/cjs/components/Feed/Skeleton.d.ts.map +1 -1
- package/lib/cjs/components/Feed/Skeleton.js +3 -1
- package/lib/cjs/components/Feed/Skeleton.js.map +1 -1
- package/lib/cjs/components/FeedObject/Contributors/Contributors.d.ts.map +1 -1
- package/lib/cjs/components/FeedObject/Contributors/Contributors.js +12 -15
- package/lib/cjs/components/FeedObject/Contributors/Contributors.js.map +1 -1
- package/lib/cjs/components/FeedObject/FeedObject.d.ts +10 -0
- package/lib/cjs/components/FeedObject/FeedObject.d.ts.map +1 -1
- package/lib/cjs/components/FeedObject/FeedObject.js +6 -2
- package/lib/cjs/components/FeedObject/FeedObject.js.map +1 -1
- package/lib/cjs/components/Notification/Notification.d.ts +10 -0
- package/lib/cjs/components/Notification/Notification.d.ts.map +1 -1
- package/lib/cjs/components/Notification/Notification.js +11 -3
- package/lib/cjs/components/Notification/Notification.js.map +1 -1
- package/lib/cjs/shared/ContributionActionsMenu/index.d.ts.map +1 -1
- package/lib/cjs/shared/ContributionActionsMenu/index.js +7 -2
- package/lib/cjs/shared/ContributionActionsMenu/index.js.map +1 -1
- package/lib/cjs/shared/Media/Link/PreviewComponent.js +1 -2
- package/lib/cjs/shared/Media/Link/PreviewComponent.js.map +1 -1
- package/lib/cjs/shared/VirtualizedScroller/VirtualScrollerChild.d.ts +12 -0
- package/lib/cjs/shared/VirtualizedScroller/VirtualScrollerChild.d.ts.map +1 -0
- package/lib/cjs/shared/VirtualizedScroller/VirtualScrollerChild.js +41 -0
- package/lib/cjs/shared/VirtualizedScroller/VirtualScrollerChild.js.map +1 -0
- package/lib/cjs/shared/VirtualizedScroller/VirtualizedScroller.d.ts +2 -0
- package/lib/cjs/shared/VirtualizedScroller/VirtualizedScroller.d.ts.map +1 -0
- package/lib/cjs/shared/VirtualizedScroller/VirtualizedScroller.js +103 -0
- package/lib/cjs/shared/VirtualizedScroller/VirtualizedScroller.js.map +1 -0
- package/lib/cjs/shared/VirtualizedScroller/index.d.ts +5 -0
- package/lib/cjs/shared/VirtualizedScroller/index.d.ts.map +1 -0
- package/lib/cjs/shared/VirtualizedScroller/index.js +11 -0
- package/lib/cjs/shared/VirtualizedScroller/index.js.map +1 -0
- package/lib/cjs/utils/feed.d.ts +13 -0
- package/lib/cjs/utils/feed.d.ts.map +1 -0
- package/lib/cjs/utils/feed.js +23 -0
- package/lib/cjs/utils/feed.js.map +1 -0
- package/lib/esm/components/Composer/Composer.d.ts.map +1 -1
- package/lib/esm/components/Composer/Composer.js +3 -2
- package/lib/esm/components/Composer/Composer.js.map +1 -1
- package/lib/esm/components/Editor/plugins/DefaultHtmlValuePlugin.d.ts.map +1 -1
- package/lib/esm/components/Editor/plugins/DefaultHtmlValuePlugin.js +10 -3
- package/lib/esm/components/Editor/plugins/DefaultHtmlValuePlugin.js.map +1 -1
- package/lib/esm/components/Feed/Feed.d.ts +16 -2
- package/lib/esm/components/Feed/Feed.d.ts.map +1 -1
- package/lib/esm/components/Feed/Feed.js +141 -97
- package/lib/esm/components/Feed/Feed.js.map +1 -1
- package/lib/esm/components/Feed/Skeleton.d.ts.map +1 -1
- package/lib/esm/components/Feed/Skeleton.js +3 -1
- package/lib/esm/components/Feed/Skeleton.js.map +1 -1
- package/lib/esm/components/FeedObject/Contributors/Contributors.d.ts.map +1 -1
- package/lib/esm/components/FeedObject/Contributors/Contributors.js +12 -15
- package/lib/esm/components/FeedObject/Contributors/Contributors.js.map +1 -1
- package/lib/esm/components/FeedObject/FeedObject.d.ts +10 -0
- package/lib/esm/components/FeedObject/FeedObject.d.ts.map +1 -1
- package/lib/esm/components/FeedObject/FeedObject.js +6 -2
- package/lib/esm/components/FeedObject/FeedObject.js.map +1 -1
- package/lib/esm/components/Notification/Notification.d.ts +10 -0
- package/lib/esm/components/Notification/Notification.d.ts.map +1 -1
- package/lib/esm/components/Notification/Notification.js +11 -3
- package/lib/esm/components/Notification/Notification.js.map +1 -1
- package/lib/esm/shared/ContributionActionsMenu/index.d.ts.map +1 -1
- package/lib/esm/shared/ContributionActionsMenu/index.js +7 -2
- package/lib/esm/shared/ContributionActionsMenu/index.js.map +1 -1
- package/lib/esm/shared/Media/Link/PreviewComponent.js +1 -2
- package/lib/esm/shared/Media/Link/PreviewComponent.js.map +1 -1
- package/lib/esm/shared/VirtualizedScroller/VirtualScrollerChild.d.ts +12 -0
- package/lib/esm/shared/VirtualizedScroller/VirtualScrollerChild.d.ts.map +1 -0
- package/lib/esm/shared/VirtualizedScroller/VirtualScrollerChild.js +16 -0
- package/lib/esm/shared/VirtualizedScroller/VirtualScrollerChild.js.map +1 -0
- package/lib/esm/shared/VirtualizedScroller/VirtualizedScroller.d.ts +2 -0
- package/lib/esm/shared/VirtualizedScroller/VirtualizedScroller.d.ts.map +1 -0
- package/lib/esm/shared/VirtualizedScroller/VirtualizedScroller.js +74 -0
- package/lib/esm/shared/VirtualizedScroller/VirtualizedScroller.js.map +1 -0
- package/lib/esm/shared/VirtualizedScroller/index.d.ts +5 -0
- package/lib/esm/shared/VirtualizedScroller/index.d.ts.map +1 -0
- package/lib/esm/shared/VirtualizedScroller/index.js +5 -0
- package/lib/esm/shared/VirtualizedScroller/index.js.map +1 -0
- package/lib/esm/utils/feed.d.ts +13 -0
- package/lib/esm/utils/feed.d.ts.map +1 -0
- package/lib/esm/utils/feed.js +18 -0
- package/lib/esm/utils/feed.js.map +1 -0
- package/lib/umd/react-ui.js +21 -21
- package/lib/umd/react-ui.js.LICENSE.txt +16 -0
- package/lib/umd/react-ui.js.map +1 -1
- package/package.json +9 -8
- package/lib/cjs/components/Feed/FeedVirtuoso.d.ts +0 -102
- package/lib/cjs/components/Feed/FeedVirtuoso.d.ts.map +0 -1
- package/lib/cjs/components/Feed/FeedVirtuoso.js +0 -311
- package/lib/cjs/components/Feed/FeedVirtuoso.js.map +0 -1
- package/lib/esm/components/Feed/FeedVirtuoso.d.ts +0 -102
- package/lib/esm/components/Feed/FeedVirtuoso.d.ts.map +0 -1
- package/lib/esm/components/Feed/FeedVirtuoso.js +0 -283
- package/lib/esm/components/Feed/FeedVirtuoso.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@selfcommunity/react-ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "React UI Components to integrate a Community created with SelfCommunity.",
|
|
5
5
|
"author": "SelfCommunity <https://www.selfcommunity.com>",
|
|
6
6
|
"homepage": "https://www.selfcommunity.com",
|
|
@@ -67,11 +67,11 @@
|
|
|
67
67
|
"@rpldy/upload-drop-zone": "^0.18.0",
|
|
68
68
|
"@rpldy/upload-preview": "^0.18.0",
|
|
69
69
|
"@rpldy/uploady": "^0.18.0",
|
|
70
|
-
"@selfcommunity/api-services": "^0.1.19
|
|
71
|
-
"@selfcommunity/react-core": "^0.1.19
|
|
72
|
-
"@selfcommunity/react-i18n": "^0.1.19
|
|
73
|
-
"@selfcommunity/types": "^0.1.19
|
|
74
|
-
"@selfcommunity/utils": "^0.1.19
|
|
70
|
+
"@selfcommunity/api-services": "^0.1.19",
|
|
71
|
+
"@selfcommunity/react-core": "^0.1.19",
|
|
72
|
+
"@selfcommunity/react-i18n": "^0.1.19",
|
|
73
|
+
"@selfcommunity/types": "^0.1.19",
|
|
74
|
+
"@selfcommunity/utils": "^0.1.19",
|
|
75
75
|
"@types/classnames": "^2.2.11",
|
|
76
76
|
"autosuggest-highlight": "^3.1.1",
|
|
77
77
|
"classnames": "^2.2.6",
|
|
@@ -97,7 +97,8 @@
|
|
|
97
97
|
"seamless-scroll-polyfill": "^2.1.8",
|
|
98
98
|
"sortablejs": "^1.14.0",
|
|
99
99
|
"spark-md5": "~3.0.2",
|
|
100
|
-
"use-deep-compare-effect": "^1.8.1"
|
|
100
|
+
"use-deep-compare-effect": "^1.8.1",
|
|
101
|
+
"virtual-scroller": "^1.9.1"
|
|
101
102
|
},
|
|
102
103
|
"devDependencies": {
|
|
103
104
|
"@babel/cli": "^7.12.13",
|
|
@@ -157,5 +158,5 @@
|
|
|
157
158
|
"bugs": {
|
|
158
159
|
"url": "https://github.com/selfcommunity/community-js/issues"
|
|
159
160
|
},
|
|
160
|
-
"gitHead": "
|
|
161
|
+
"gitHead": "987392f4858805e4e9d65eedc87961531ad974d9"
|
|
161
162
|
}
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import React, { ReactNode } from 'react';
|
|
2
|
-
import { SCFeedWidgetType } from '../../types/feed';
|
|
3
|
-
import { CustomAdvProps } from '../CustomAdv';
|
|
4
|
-
import { SCUserType } from '@selfcommunity/types';
|
|
5
|
-
import { EndpointType } from '@selfcommunity/api-services';
|
|
6
|
-
import { CacheStrategies } from '@selfcommunity/utils';
|
|
7
|
-
export interface FeedSidebarProps {
|
|
8
|
-
top: string | number;
|
|
9
|
-
bottomBoundary: string | number;
|
|
10
|
-
}
|
|
11
|
-
export declare type FeedRef = {
|
|
12
|
-
addFeedData: (obj: any) => void;
|
|
13
|
-
refresh: () => void;
|
|
14
|
-
};
|
|
15
|
-
export interface FeedProps {
|
|
16
|
-
/**
|
|
17
|
-
* Id of the feed object
|
|
18
|
-
* @default 'feed'
|
|
19
|
-
*/
|
|
20
|
-
id?: string;
|
|
21
|
-
/**
|
|
22
|
-
* Overrides or extends the styles applied to the component.
|
|
23
|
-
* @default null
|
|
24
|
-
*/
|
|
25
|
-
className?: string;
|
|
26
|
-
/**
|
|
27
|
-
* Feed API Endpoint
|
|
28
|
-
*/
|
|
29
|
-
endpoint: EndpointType;
|
|
30
|
-
/**
|
|
31
|
-
* Feed API Query Params
|
|
32
|
-
* @default [{'limit': 5}]
|
|
33
|
-
*/
|
|
34
|
-
endpointQueryParams?: Record<string, string | number>;
|
|
35
|
-
/**
|
|
36
|
-
* End message, rendered when no more feed item can be displayed
|
|
37
|
-
* @default <FormattedMessage id="ui.feed.noOtherFeedObject" defaultMessage="ui.feed.noOtherFeedObject" />
|
|
38
|
-
*/
|
|
39
|
-
endMessage?: ReactNode;
|
|
40
|
-
/**
|
|
41
|
-
* Refresh message, rendered when no more feed item can be displayed
|
|
42
|
-
* @default <FormattedMessage id="ui.feed.refreshRelease" defaultMessage="ui.feed.refreshRelease" />
|
|
43
|
-
*/
|
|
44
|
-
refreshMessage?: ReactNode;
|
|
45
|
-
/**
|
|
46
|
-
* Widgets to insert into the feed
|
|
47
|
-
* @default empty array
|
|
48
|
-
*/
|
|
49
|
-
widgets?: SCFeedWidgetType[];
|
|
50
|
-
/**
|
|
51
|
-
* Component used to render single feed item retrieved by the endpoint
|
|
52
|
-
*/
|
|
53
|
-
ItemComponent: React.ElementType;
|
|
54
|
-
/**
|
|
55
|
-
* Function used to convert the single result returned by the Endpoint into the props necessary to render the ItemComponent
|
|
56
|
-
*/
|
|
57
|
-
itemPropsGenerator: (scUser: SCUserType, item: any) => any;
|
|
58
|
-
/**
|
|
59
|
-
* Function used to generate an id from the single result returned by the Endpoint
|
|
60
|
-
*/
|
|
61
|
-
itemIdGenerator: (item: any) => any;
|
|
62
|
-
/**
|
|
63
|
-
* Props to spread to single feed item
|
|
64
|
-
* @default empty object
|
|
65
|
-
*/
|
|
66
|
-
ItemProps?: any;
|
|
67
|
-
/**
|
|
68
|
-
* Skeleton used to render loading effect during fetch
|
|
69
|
-
*/
|
|
70
|
-
ItemSkeleton: React.ElementType;
|
|
71
|
-
/**
|
|
72
|
-
* Props to spread to single feed item skeleton
|
|
73
|
-
* @default empty object
|
|
74
|
-
*/
|
|
75
|
-
ItemSkeletonProps?: any;
|
|
76
|
-
/**
|
|
77
|
-
* Callback invoked whenever data is loaded during paging
|
|
78
|
-
*/
|
|
79
|
-
onFetchData?: (data: any) => any;
|
|
80
|
-
/**
|
|
81
|
-
* Authenticated or not
|
|
82
|
-
*/
|
|
83
|
-
requireAuthentication?: boolean;
|
|
84
|
-
/**
|
|
85
|
-
* Caching strategies
|
|
86
|
-
* @default CacheStrategies.CACHE_FIRST
|
|
87
|
-
*/
|
|
88
|
-
cacheStrategy?: CacheStrategies;
|
|
89
|
-
/**
|
|
90
|
-
* Props to spread to single feed object
|
|
91
|
-
* @default {top: 0, bottomBoundary: `#${id}`}
|
|
92
|
-
*/
|
|
93
|
-
FeedSidebarProps?: FeedSidebarProps;
|
|
94
|
-
/**
|
|
95
|
-
* Props to spread to single custom adv element (this props can be used only if Custom Adv are enabled)
|
|
96
|
-
* @default {}
|
|
97
|
-
*/
|
|
98
|
-
CustomAdvProps?: CustomAdvProps;
|
|
99
|
-
}
|
|
100
|
-
declare const _default: React.ForwardRefExoticComponent<FeedProps & React.RefAttributes<FeedRef>>;
|
|
101
|
-
export default _default;
|
|
102
|
-
//# sourceMappingURL=FeedVirtuoso.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FeedVirtuoso.d.ts","sourceRoot":"","sources":["../../../../src/components/Feed/FeedVirtuoso.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAGZ,SAAS,EAOV,MAAM,OAAO,CAAC;AAKf,OAAO,EAAC,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAElD,OAAkB,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AACvD,OAAO,EAAsC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAAC,YAAY,EAAC,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAC,eAAe,EAAW,MAAM,sBAAsB,CAAC;AAkD/D,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC;CACjC;AAED,oBAAY,OAAO,GAAG;IACpB,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;IAChC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAEF,MAAM,WAAW,SAAS;IACxB;;;OAGG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,QAAQ,EAAE,YAAY,CAAC;IAEvB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IAEtD;;;OAGG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC;IAEvB;;;OAGG;IACH,cAAc,CAAC,EAAE,SAAS,CAAC;IAE3B;;;OAGG;IACH,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAE7B;;OAEG;IACH,aAAa,EAAE,KAAK,CAAC,WAAW,CAAC;IAEjC;;OAEG;IACH,kBAAkB,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,KAAA,KAAK,GAAG,CAAC;IAEtD;;OAEG;IACH,eAAe,EAAE,CAAC,IAAI,KAAA,KAAK,GAAG,CAAC;IAE/B;;;OAGG;IACH,SAAS,CAAC,EAAE,GAAG,CAAC;IAEhB;;OAEG;IACH,YAAY,EAAE,KAAK,CAAC,WAAW,CAAC;IAEhC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,GAAG,CAAC;IAExB;;OAEG;IACH,WAAW,CAAC,EAAE,CAAC,IAAI,KAAA,KAAK,GAAG,CAAC;IAE5B;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC;;;OAGG;IACH,aAAa,CAAC,EAAE,eAAe,CAAC;IAEhC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAEpC;;;OAGG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;;AAkWD,wBAAgC"}
|
|
@@ -1,311 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
const react_1 = __importStar(require("react"));
|
|
30
|
-
const styles_1 = require("@mui/material/styles");
|
|
31
|
-
const material_1 = require("@mui/material");
|
|
32
|
-
const react_intl_1 = require("react-intl");
|
|
33
|
-
const Skeleton_1 = require("../Skeleton");
|
|
34
|
-
const react_stickynode_1 = __importDefault(require("react-stickynode"));
|
|
35
|
-
const CustomAdv_1 = __importDefault(require("../CustomAdv"));
|
|
36
|
-
const types_1 = require("@selfcommunity/types");
|
|
37
|
-
const utils_1 = require("@selfcommunity/utils");
|
|
38
|
-
const react_core_1 = require("@selfcommunity/react-core");
|
|
39
|
-
const classnames_1 = __importDefault(require("classnames"));
|
|
40
|
-
const pubsub_js_1 = __importDefault(require("pubsub-js"));
|
|
41
|
-
const system_1 = require("@mui/system");
|
|
42
|
-
const react_virtuoso_1 = require("react-virtuoso");
|
|
43
|
-
const Widget_1 = __importDefault(require("../Widget"));
|
|
44
|
-
const react_intersection_observer_1 = require("react-intersection-observer");
|
|
45
|
-
const seamless_scroll_polyfill_1 = require("seamless-scroll-polyfill");
|
|
46
|
-
const PREFIX = 'SCFeed';
|
|
47
|
-
const classes = {
|
|
48
|
-
root: `${PREFIX}-root`,
|
|
49
|
-
left: `${PREFIX}-left`,
|
|
50
|
-
right: `${PREFIX}-right`,
|
|
51
|
-
end: `${PREFIX}-end`,
|
|
52
|
-
refresh: `${PREFIX}-refresh`
|
|
53
|
-
};
|
|
54
|
-
const Root = (0, styles_1.styled)(material_1.Grid, {
|
|
55
|
-
name: PREFIX,
|
|
56
|
-
slot: 'Root',
|
|
57
|
-
overridesResolver: (props, styles) => styles.root
|
|
58
|
-
})(({ theme }) => ({
|
|
59
|
-
marginTop: theme.spacing(-2),
|
|
60
|
-
[`& .${classes.left}`]: {
|
|
61
|
-
padding: '0 2px 0 2px',
|
|
62
|
-
minHeight: 800,
|
|
63
|
-
[theme.breakpoints.down('md')]: {
|
|
64
|
-
'& > .SCWidget-root, & > .SCCustomAdv-root': {
|
|
65
|
-
maxWidth: 700,
|
|
66
|
-
marginLeft: 'auto',
|
|
67
|
-
marginRight: 'auto'
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
},
|
|
71
|
-
[`& .${classes.end}, & .${classes.refresh}`]: {
|
|
72
|
-
textAlign: 'center'
|
|
73
|
-
}
|
|
74
|
-
}));
|
|
75
|
-
const PREFERENCES = [react_core_1.SCPreferences.ADVERTISING_CUSTOM_ADV_ENABLED, react_core_1.SCPreferences.ADVERTISING_CUSTOM_ADV_ONLY_FOR_ANONYMOUS_USERS_ENABLED];
|
|
76
|
-
/**
|
|
77
|
-
* A wrapper component for children of
|
|
78
|
-
* VirtualScroll. Computes inline style and
|
|
79
|
-
* handles whether to display props.children.
|
|
80
|
-
*/
|
|
81
|
-
const VirtualScrollChild = ({ cacheKey, index, cacheValue, cacheStrategy, restorationRef, children }) => {
|
|
82
|
-
const [ref, inView] = (0, react_intersection_observer_1.useInView)({ threshold: 0.5 });
|
|
83
|
-
(0, react_1.useEffect)(() => {
|
|
84
|
-
/* const _restoreItemKey = SCCache.getFeedSPCacheKey(cacheKey);
|
|
85
|
-
if (cacheStrategy === CacheStrategies.CACHE_FIRST && LRUCache.hasKey(_restoreItemKey)) {
|
|
86
|
-
const _cachevalue = LRUCache.get(_restoreItemKey);
|
|
87
|
-
if (_cachevalue === cacheValue) {
|
|
88
|
-
console.log('Restore from cache', LRUCache.get(_restoreItemKey));
|
|
89
|
-
const element = document.getElementById(LRUCache.get(_restoreItemKey));
|
|
90
|
-
if (element) {
|
|
91
|
-
window.requestAnimationFrame(() => {
|
|
92
|
-
scrollIntoView(element, {block: 'center', inline: 'center'});
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
|
-
}*/
|
|
96
|
-
// restorationRef is only provided to the ProductCard that needs to be scrolled to
|
|
97
|
-
if (!restorationRef || cacheStrategy !== utils_1.CacheStrategies.CACHE_FIRST) {
|
|
98
|
-
return;
|
|
99
|
-
}
|
|
100
|
-
console.log('Restore: ', restorationRef.current);
|
|
101
|
-
const element = document.getElementById(restorationRef.current);
|
|
102
|
-
console.log('Element', element);
|
|
103
|
-
if (element) {
|
|
104
|
-
console.log('Perform scroll: ');
|
|
105
|
-
console.log(element);
|
|
106
|
-
(0, seamless_scroll_polyfill_1.scrollIntoView)(element, { block: 'end', inline: 'end' });
|
|
107
|
-
restorationRef.current = null;
|
|
108
|
-
/* window.requestAnimationFrame(() => {
|
|
109
|
-
scrollIntoView(element, {block: 'center'});
|
|
110
|
-
restorationRef.current = null;
|
|
111
|
-
}); */
|
|
112
|
-
}
|
|
113
|
-
}, []);
|
|
114
|
-
(0, react_1.useEffect)(() => {
|
|
115
|
-
if (inView) {
|
|
116
|
-
console.log('Store cache value ', cacheValue);
|
|
117
|
-
utils_1.LRUCache.set(react_core_1.SCCache.getFeedSPCacheKey(cacheKey), cacheValue);
|
|
118
|
-
}
|
|
119
|
-
}, [inView]);
|
|
120
|
-
return (react_1.default.createElement("div", { ref: ref, id: cacheValue }, children));
|
|
121
|
-
};
|
|
122
|
-
/**
|
|
123
|
-
* > API documentation for the Community-JS Feed component. Learn about the available props and the CSS API.
|
|
124
|
-
|
|
125
|
-
#### Import
|
|
126
|
-
|
|
127
|
-
```jsx
|
|
128
|
-
import {Feed} from '@selfcommunity/react-ui';
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
#### Component Name
|
|
132
|
-
|
|
133
|
-
The name `SCFeed` can be used when providing style overrides in the theme.
|
|
134
|
-
|
|
135
|
-
#### CSS
|
|
136
|
-
|
|
137
|
-
|Rule Name|Global class|Description|
|
|
138
|
-
|---|---|---|
|
|
139
|
-
|root|.SCFeed-root|Styles applied to the root element.|
|
|
140
|
-
|left|.SCFeed-left|Styles applied to the left element.|
|
|
141
|
-
|right|.SCFeed-right|Styles applied to the right element.|
|
|
142
|
-
|end|.SCFeed-end|Styles applied to the end element.|
|
|
143
|
-
|refresh|.SCFeed-refresh|Styles applied to the refresh section.|
|
|
144
|
-
*
|
|
145
|
-
* @param inProps
|
|
146
|
-
*/
|
|
147
|
-
const Feed = (inProps, ref) => {
|
|
148
|
-
// PROPS
|
|
149
|
-
const props = (0, system_1.useThemeProps)({
|
|
150
|
-
props: inProps,
|
|
151
|
-
name: PREFIX
|
|
152
|
-
});
|
|
153
|
-
const { id = 'feed', className, endpoint, endpointQueryParams = { limit: 5, offset: 0 }, endMessage = react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.feed.noOtherFeedObject", defaultMessage: "ui.feed.noOtherFeedObject" }), refreshMessage = react_1.default.createElement(react_intl_1.FormattedMessage, { id: "ui.feed.refreshRelease", defaultMessage: "ui.feed.refreshRelease" }), widgets = [], ItemComponent, itemPropsGenerator, itemIdGenerator, ItemProps = {}, ItemSkeleton, ItemSkeletonProps = {}, onFetchData, FeedSidebarProps = { top: 0, bottomBoundary: `#${id}` }, CustomAdvProps = {}, requireAuthentication = false, cacheStrategy = utils_1.CacheStrategies.NETWORK_ONLY } = props;
|
|
154
|
-
// STATE
|
|
155
|
-
const feedDataObject = (0, react_core_1.useSCFetchFeed)({
|
|
156
|
-
id,
|
|
157
|
-
endpoint,
|
|
158
|
-
endpointQueryParams,
|
|
159
|
-
onChangePage: onFetchData,
|
|
160
|
-
cacheStrategy
|
|
161
|
-
});
|
|
162
|
-
console.log(feedDataObject);
|
|
163
|
-
const [headData, setHeadData] = (0, react_1.useState)([]);
|
|
164
|
-
const restorationRef = react_1.default.useRef(cacheStrategy === utils_1.CacheStrategies.CACHE_FIRST ? utils_1.LRUCache.get(react_core_1.SCCache.getFeedSPCacheKey(id)) : null);
|
|
165
|
-
// CONTEXT
|
|
166
|
-
const scPreferences = (0, react_core_1.useSCPreferences)();
|
|
167
|
-
const scUserContext = (0, react_1.useContext)(react_core_1.SCUserContext);
|
|
168
|
-
// CONST
|
|
169
|
-
const authUserId = scUserContext.user ? scUserContext.user.id : null;
|
|
170
|
-
// REFS
|
|
171
|
-
const virtuosoRef = (0, react_1.useRef)(null);
|
|
172
|
-
const refreshSubscription = (0, react_1.useRef)(null);
|
|
173
|
-
/**
|
|
174
|
-
* Compute preferences
|
|
175
|
-
*/
|
|
176
|
-
const preferences = (0, react_1.useMemo)(() => {
|
|
177
|
-
const _preferences = {};
|
|
178
|
-
PREFERENCES.map((p) => (_preferences[p] = p in scPreferences.preferences ? scPreferences.preferences[p].value : null));
|
|
179
|
-
return _preferences;
|
|
180
|
-
}, [scPreferences.preferences]);
|
|
181
|
-
/**
|
|
182
|
-
* Compute Widgets
|
|
183
|
-
*/
|
|
184
|
-
const _widgets = (0, react_1.useMemo)(() => {
|
|
185
|
-
if (preferences[react_core_1.SCPreferences.ADVERTISING_CUSTOM_ADV_ENABLED] &&
|
|
186
|
-
((preferences[react_core_1.SCPreferences.ADVERTISING_CUSTOM_ADV_ONLY_FOR_ANONYMOUS_USERS_ENABLED] && scUserContext.user === null) ||
|
|
187
|
-
!preferences[react_core_1.SCPreferences.ADVERTISING_CUSTOM_ADV_ONLY_FOR_ANONYMOUS_USERS_ENABLED])) {
|
|
188
|
-
return [
|
|
189
|
-
...widgets,
|
|
190
|
-
{
|
|
191
|
-
type: 'widget',
|
|
192
|
-
component: CustomAdv_1.default,
|
|
193
|
-
componentProps: Object.assign({ position: types_1.SCCustomAdvPosition.POSITION_FEED_SIDEBAR }, CustomAdvProps),
|
|
194
|
-
column: 'right',
|
|
195
|
-
position: 0
|
|
196
|
-
},
|
|
197
|
-
...Array.from({ length: feedDataObject.feedData.length / 10 }, (_, i) => i * 10).map((position) => {
|
|
198
|
-
return {
|
|
199
|
-
type: 'widget',
|
|
200
|
-
component: CustomAdv_1.default,
|
|
201
|
-
componentProps: Object.assign({ position: types_1.SCCustomAdvPosition.POSITION_FEED }, CustomAdvProps),
|
|
202
|
-
column: 'left',
|
|
203
|
-
position
|
|
204
|
-
};
|
|
205
|
-
})
|
|
206
|
-
];
|
|
207
|
-
}
|
|
208
|
-
return [...widgets];
|
|
209
|
-
}, [widgets, feedDataObject.feedData, preferences]);
|
|
210
|
-
const refresh = () => {
|
|
211
|
-
console.log('REFRESHHHHH');
|
|
212
|
-
feedDataObject.reload();
|
|
213
|
-
};
|
|
214
|
-
const subscriber = (msg, data) => {
|
|
215
|
-
if (data.refresh) {
|
|
216
|
-
refresh();
|
|
217
|
-
}
|
|
218
|
-
};
|
|
219
|
-
// EFFECTS
|
|
220
|
-
(0, react_1.useEffect)(() => {
|
|
221
|
-
if ((requireAuthentication && authUserId !== null) || !requireAuthentication) {
|
|
222
|
-
if (cacheStrategy !== utils_1.CacheStrategies.CACHE_FIRST) {
|
|
223
|
-
feedDataObject.getNextPage();
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
}, [authUserId]);
|
|
227
|
-
(0, react_1.useEffect)(() => {
|
|
228
|
-
refreshSubscription.current = pubsub_js_1.default.subscribe(id, subscriber);
|
|
229
|
-
return () => {
|
|
230
|
-
pubsub_js_1.default.unsubscribe(refreshSubscription.current);
|
|
231
|
-
};
|
|
232
|
-
}, []);
|
|
233
|
-
// EXPOSED METHODS
|
|
234
|
-
(0, react_1.useImperativeHandle)(ref, () => ({
|
|
235
|
-
addFeedData: (data) => {
|
|
236
|
-
setHeadData(data);
|
|
237
|
-
},
|
|
238
|
-
refresh: () => {
|
|
239
|
-
refresh();
|
|
240
|
-
}
|
|
241
|
-
}));
|
|
242
|
-
// RENDER
|
|
243
|
-
const theme = (0, styles_1.useTheme)();
|
|
244
|
-
const oneColLayout = (0, material_1.useMediaQuery)(theme.breakpoints.down('md'));
|
|
245
|
-
/* const getData = useMemo(
|
|
246
|
-
() => (): FeedData => {
|
|
247
|
-
const widgetSort = (w1, w2) => (w1.position > w2.position ? 1 : -1);
|
|
248
|
-
const widgetReducer = (value, w) => {
|
|
249
|
-
value.splice(w.position, 0, w);
|
|
250
|
-
return value;
|
|
251
|
-
};
|
|
252
|
-
if (oneColLayout) {
|
|
253
|
-
return {
|
|
254
|
-
left: _widgets
|
|
255
|
-
.map((w) => Object.assign({}, w, {position: w.position * (w.column === 'right' ? 5 : 1)}))
|
|
256
|
-
.sort(widgetSort)
|
|
257
|
-
.reduce(widgetReducer, [...headData, ...feedDataObject.feedData]),
|
|
258
|
-
right: []
|
|
259
|
-
};
|
|
260
|
-
} else {
|
|
261
|
-
return {
|
|
262
|
-
left: _widgets
|
|
263
|
-
.filter((w) => w.column === 'left')
|
|
264
|
-
.sort(widgetSort)
|
|
265
|
-
.reduce(widgetReducer, [...headData, ...feedDataObject.feedData]),
|
|
266
|
-
right: _widgets.filter((w) => w.column === 'right').sort(widgetSort)
|
|
267
|
-
};
|
|
268
|
-
}
|
|
269
|
-
},
|
|
270
|
-
[feedDataObject.isLoadingNext, oneColLayout, feedDataObject.feedData, _widgets, headData]
|
|
271
|
-
);
|
|
272
|
-
|
|
273
|
-
const data = getData(); */
|
|
274
|
-
const data = { left: feedDataObject.feedData, right: [] };
|
|
275
|
-
const InnerItem = (0, react_1.useMemo)(() => ({ index, d }) => {
|
|
276
|
-
return (react_1.default.createElement(VirtualScrollChild, { index: index, cacheKey: id, cacheValue: d.type === 'widget' ? `widget_left_${index}` : `item_${itemIdGenerator(d)}`, restorationRef: restorationRef, cacheStrategy: cacheStrategy }, d.type === 'widget' ? (react_1.default.createElement(d.component, Object.assign({ key: `widget_left_${index}` }, d.componentProps, (d.publishEvents && { publicationChannel: id })))) : (react_1.default.createElement(ItemComponent, Object.assign({ key: `item_${itemIdGenerator(d)}` }, itemPropsGenerator(scUserContext.user, d), ItemProps, { sx: { width: '100%' } })))));
|
|
277
|
-
}, []);
|
|
278
|
-
const itemContent = (i, d) => {
|
|
279
|
-
return react_1.default.createElement(InnerItem, { index: i, d: d });
|
|
280
|
-
};
|
|
281
|
-
const endReached = () => {
|
|
282
|
-
if (feedDataObject.feedData.length > 0) {
|
|
283
|
-
console.log('feedDataObject.getNextPage');
|
|
284
|
-
feedDataObject.getNextPage();
|
|
285
|
-
}
|
|
286
|
-
};
|
|
287
|
-
const startReached = () => {
|
|
288
|
-
if (feedDataObject.feedData.length > 0) {
|
|
289
|
-
console.log('feedDataObject.getPreviousPage');
|
|
290
|
-
feedDataObject.getPreviousPage();
|
|
291
|
-
}
|
|
292
|
-
};
|
|
293
|
-
return (react_1.default.createElement(Root, { container: true, spacing: 2, id: id, className: (0, classnames_1.default)(classes.root, className) },
|
|
294
|
-
react_1.default.createElement(material_1.Grid, { item: true, xs: 12, md: 7 },
|
|
295
|
-
react_1.default.createElement("div", { className: classes.left, style: { overflow: 'visible' } }, feedDataObject.isLoadingNext && !data.left.length ? (react_1.default.createElement(react_1.default.Fragment, null, [...Array(3)].map((v, i) => (react_1.default.createElement(ItemSkeleton, Object.assign({ key: i }, ItemSkeletonProps)))))) : (react_1.default.createElement(react_virtuoso_1.Virtuoso, Object.assign({ style: { height: '100%' }, initialScrollTop: 0, useWindowScroll: true, ref: virtuosoRef, overscan: { main: 5, reverse: 5 }, totalCount: data.left.length, data: data.left, endReached: endReached,
|
|
296
|
-
// startReached={startReached}
|
|
297
|
-
itemContent: itemContent }, (cacheStrategy === utils_1.CacheStrategies.CACHE_FIRST
|
|
298
|
-
? {
|
|
299
|
-
initialItemCount: data.left.length
|
|
300
|
-
}
|
|
301
|
-
: {}), { components: {
|
|
302
|
-
Footer: () => feedDataObject.next ? (react_1.default.createElement(ItemSkeleton, Object.assign({}, ItemSkeletonProps))) : (react_1.default.createElement(Widget_1.default, { className: classes.end },
|
|
303
|
-
react_1.default.createElement(material_1.CardContent, null, endMessage)))
|
|
304
|
-
} }))))),
|
|
305
|
-
data.right.length > 0 && (react_1.default.createElement(material_1.Hidden, { smDown: true },
|
|
306
|
-
react_1.default.createElement(material_1.Grid, { item: true, xs: 12, md: 5 },
|
|
307
|
-
react_1.default.createElement(react_stickynode_1.default, Object.assign({ enabled: true, className: classes.right }, FeedSidebarProps),
|
|
308
|
-
react_1.default.createElement(react_1.default.Suspense, { fallback: react_1.default.createElement(Skeleton_1.GenericSkeleton, null) }, data.right.map((d, i) => (react_1.default.createElement(d.component, Object.assign({ key: i }, d.componentProps)))))))))));
|
|
309
|
-
};
|
|
310
|
-
exports.default = (0, react_1.forwardRef)(Feed);
|
|
311
|
-
//# sourceMappingURL=FeedVirtuoso.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FeedVirtuoso.js","sourceRoot":"","sources":["../../../../src/components/Feed/FeedVirtuoso.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAUe;AACf,iDAAsD;AACtD,4CAA8E;AAC9E,2CAA4C;AAC5C,0CAA4C;AAE5C,wEAAsC;AACtC,6DAAuD;AACvD,gDAAqF;AAErF,gDAA+D;AAC/D,0DAQmC;AACnC,4DAAoC;AACpC,0DAA+B;AAC/B,wCAA0C;AAC1C,mDAAwD;AACxD,uDAA+B;AAC/B,6EAAsD;AACtD,uEAAwD;AAExD,MAAM,MAAM,GAAG,QAAQ,CAAC;AAExB,MAAM,OAAO,GAAG;IACd,IAAI,EAAE,GAAG,MAAM,OAAO;IACtB,IAAI,EAAE,GAAG,MAAM,OAAO;IACtB,KAAK,EAAE,GAAG,MAAM,QAAQ;IACxB,GAAG,EAAE,GAAG,MAAM,MAAM;IACpB,OAAO,EAAE,GAAG,MAAM,UAAU;CAC7B,CAAC;AAEF,MAAM,IAAI,GAAG,IAAA,eAAM,EAAC,eAAI,EAAE;IACxB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI;CAClD,CAAC,CAAC,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE,CAAC,CAAC;IACf,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC5B,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE;QACtB,OAAO,EAAE,aAAa;QACtB,SAAS,EAAE,GAAG;QACd,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE;YAC9B,2CAA2C,EAAE;gBAC3C,QAAQ,EAAE,GAAG;gBACb,UAAU,EAAE,MAAM;gBAClB,WAAW,EAAE,MAAM;aACpB;SACF;KACF;IACD,CAAC,MAAM,OAAO,CAAC,GAAG,QAAQ,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE;QAC5C,SAAS,EAAE,QAAQ;KACpB;CACF,CAAC,CAAC,CAAC;AAwHJ,MAAM,WAAW,GAAG,CAAC,0BAAa,CAAC,8BAA8B,EAAE,0BAAa,CAAC,uDAAuD,CAAC,CAAC;AAE1I;;;;GAIG;AACH,MAAM,kBAAkB,GAAG,CAAC,EAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,QAAQ,EAAC,EAAE,EAAE;IACpG,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,IAAA,uCAAS,EAAC,EAAC,SAAS,EAAE,GAAG,EAAC,CAAC,CAAC;IAElD,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb;;;;;;;;;;;aAWK;QACL,kFAAkF;QAClF,IAAI,CAAC,cAAc,IAAI,aAAa,KAAK,uBAAe,CAAC,WAAW,EAAE;YACpE,OAAO;SACR;QAED,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAChC,IAAI,OAAO,EAAE;YACX,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACrB,IAAA,yCAAc,EAAC,OAAO,EAAE,EAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAC,CAAC,CAAC;YACvD,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC;YAC9B;;;kBAGM;SACP;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,MAAM,EAAE;YACV,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,UAAU,CAAC,CAAC;YAC9C,gBAAQ,CAAC,GAAG,CAAC,oBAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,CAAC;SAC/D;IACH,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,OAAO,CACL,uCAAK,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,IAC1B,QAAQ,CACL,CACP,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,IAAI,GAAiD,CAAC,OAAkB,EAAE,GAAG,EAAe,EAAE;IAClG,QAAQ;IACR,MAAM,KAAK,GAAc,IAAA,sBAAa,EAAC;QACrC,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,MAAM;KACb,CAAC,CAAC;IACH,MAAM,EACJ,EAAE,GAAG,MAAM,EACX,SAAS,EACT,QAAQ,EACR,mBAAmB,GAAG,EAAC,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAC,EAC3C,UAAU,GAAG,8BAAC,6BAAgB,IAAC,EAAE,EAAC,2BAA2B,EAAC,cAAc,EAAC,2BAA2B,GAAG,EAC3G,cAAc,GAAG,8BAAC,6BAAgB,IAAC,EAAE,EAAC,wBAAwB,EAAC,cAAc,EAAC,wBAAwB,GAAG,EACzG,OAAO,GAAG,EAAE,EACZ,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,SAAS,GAAG,EAAE,EACd,YAAY,EACZ,iBAAiB,GAAG,EAAE,EACtB,WAAW,EACX,gBAAgB,GAAG,EAAC,GAAG,EAAE,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,EAAC,EACrD,cAAc,GAAG,EAAE,EACnB,qBAAqB,GAAG,KAAK,EAC7B,aAAa,GAAG,uBAAe,CAAC,YAAY,EAC7C,GAAG,KAAK,CAAC;IAEV,QAAQ;IACR,MAAM,cAAc,GAAG,IAAA,2BAAc,EAAC;QACpC,EAAE;QACF,QAAQ;QACR,mBAAmB;QACnB,YAAY,EAAE,WAAW;QACzB,aAAa;KACd,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC5B,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,EAAC,EAAE,CAAC,CAAC;IAC7C,MAAM,cAAc,GAAG,eAAK,CAAC,MAAM,CAAC,aAAa,KAAK,uBAAe,CAAC,WAAW,CAAC,CAAC,CAAC,gBAAQ,CAAC,GAAG,CAAC,oBAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAExI,UAAU;IACV,MAAM,aAAa,GAA6B,IAAA,6BAAgB,GAAE,CAAC;IACnE,MAAM,aAAa,GAAsB,IAAA,kBAAU,EAAC,0BAAa,CAAC,CAAC;IAEnE,QAAQ;IACR,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAErE,OAAO;IACP,MAAM,WAAW,GAAG,IAAA,cAAM,EAAiB,IAAI,CAAC,CAAC;IACjD,MAAM,mBAAmB,GAAG,IAAA,cAAM,EAAC,IAAI,CAAC,CAAC;IAEzC;;OAEG;IACH,MAAM,WAAW,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE;QAC/B,MAAM,YAAY,GAAG,EAAE,CAAC;QACxB,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACvH,OAAO,YAAY,CAAC;IACtB,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC;IAEhC;;OAEG;IACH,MAAM,QAAQ,GAAuB,IAAA,eAAO,EAAC,GAAG,EAAE;QAChD,IACE,WAAW,CAAC,0BAAa,CAAC,8BAA8B,CAAC;YACzD,CAAC,CAAC,WAAW,CAAC,0BAAa,CAAC,uDAAuD,CAAC,IAAI,aAAa,CAAC,IAAI,KAAK,IAAI,CAAC;gBAClH,CAAC,WAAW,CAAC,0BAAa,CAAC,uDAAuD,CAAC,CAAC,EACtF;YACA,OAAO;gBACL,GAAG,OAAO;gBACV;oBACE,IAAI,EAAE,QAAQ;oBACd,SAAS,EAAE,mBAAS;oBACpB,cAAc,kBACZ,QAAQ,EAAE,2BAAmB,CAAC,qBAAqB,IAChD,cAAc,CAClB;oBACD,MAAM,EAAE,OAAO;oBACf,QAAQ,EAAE,CAAC;iBACZ;gBACD,GAAG,KAAK,CAAC,IAAI,CAAC,EAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,MAAM,GAAG,EAAE,EAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAoB,EAAE;oBAChH,OAAO;wBACL,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,mBAAS;wBACpB,cAAc,kBACZ,QAAQ,EAAE,2BAAmB,CAAC,aAAa,IACxC,cAAc,CAClB;wBACD,MAAM,EAAE,MAAM;wBACd,QAAQ;qBACT,CAAC;gBACJ,CAAC,CAAC;aACH,CAAC;SACH;QACD,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;IACtB,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;IAEpD,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC3B,cAAc,CAAC,MAAM,EAAE,CAAC;IAC1B,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;QAC/B,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,OAAO,EAAE,CAAC;SACX;IACH,CAAC,CAAC;IAEF,UAAU;IACV,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,CAAC,qBAAqB,IAAI,UAAU,KAAK,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE;YAC5E,IAAI,aAAa,KAAK,uBAAe,CAAC,WAAW,EAAE;gBACjD,cAAc,CAAC,WAAW,EAAE,CAAC;aAC9B;SACF;IACH,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,mBAAmB,CAAC,OAAO,GAAG,mBAAM,CAAC,SAAS,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAC/D,OAAO,GAAG,EAAE;YACV,mBAAM,CAAC,WAAW,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAClD,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,kBAAkB;IAClB,IAAA,2BAAmB,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;QAC9B,WAAW,EAAE,CAAC,IAAS,EAAE,EAAE;YACzB,WAAW,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;QACD,OAAO,EAAE,GAAG,EAAE;YACZ,OAAO,EAAE,CAAC;QACZ,CAAC;KACF,CAAC,CAAC,CAAC;IAEJ,SAAS;IACT,MAAM,KAAK,GAAU,IAAA,iBAAQ,GAAE,CAAC;IAChC,MAAM,YAAY,GAAG,IAAA,wBAAa,EAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAEjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BA4B0B;IAC1B,MAAM,IAAI,GAAG,EAAC,IAAI,EAAE,cAAc,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAC,CAAC;IAExD,MAAM,SAAS,GAAG,IAAA,eAAO,EACvB,GAAG,EAAE,CACH,CAAC,EAAC,KAAK,EAAE,CAAC,EAAC,EAAE,EAAE;QACb,OAAO,CACL,8BAAC,kBAAkB,IACjB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,EAAE,EACZ,UAAU,EAAE,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,KAAK,EAAE,CAAC,CAAC,CAAC,QAAQ,eAAe,CAAC,CAAC,CAAC,EAAE,EACvF,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa,IAC3B,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CACrB,8BAAC,CAAC,CAAC,SAAS,kBAAC,GAAG,EAAE,eAAe,KAAK,EAAE,IAAM,CAAC,CAAC,cAAc,EAAM,CAAC,CAAC,CAAC,aAAa,IAAI,EAAC,kBAAkB,EAAE,EAAE,EAAC,CAAC,EAAgB,CAClI,CAAC,CAAC,CAAC,CACF,8BAAC,aAAa,kBAAC,GAAG,EAAE,QAAQ,eAAe,CAAC,CAAC,CAAC,EAAE,IAAM,kBAAkB,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,EAAM,SAAS,IAAE,EAAE,EAAE,EAAC,KAAK,EAAE,MAAM,EAAC,IAAI,CACxI,CACkB,CACtB,CAAC;IACJ,CAAC,EACH,EAAE,CACH,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC3B,OAAO,8BAAC,SAAS,IAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAI,CAAC;IACvC,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACtC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;YAC1C,cAAc,CAAC,WAAW,EAAE,CAAC;SAC9B;IACH,CAAC,CAAC;IACF,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACtC,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;YAC9C,cAAc,CAAC,eAAe,EAAE,CAAC;SAClC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,8BAAC,IAAI,IAAC,SAAS,QAAC,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAA,oBAAU,EAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC;QAChF,8BAAC,eAAI,IAAC,IAAI,QAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;YACtB,uCAAK,SAAS,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAAC,QAAQ,EAAE,SAAS,EAAC,IACvD,cAAc,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CACnD,8DACG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAC3B,8BAAC,YAAY,kBAAC,GAAG,EAAE,CAAC,IAAM,iBAAiB,EAAI,CAChD,CAAC,CACD,CACJ,CAAC,CAAC,CAAC,CACF,8BAAC,yBAAQ,kBACP,KAAK,EAAE,EAAC,MAAM,EAAE,MAAM,EAAC,EACvB,gBAAgB,EAAE,CAAC,EACnB,eAAe,QACf,GAAG,EAAE,WAAW,EAChB,QAAQ,EAAE,EAAC,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAC,EAC/B,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAC5B,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,UAAU,EAAE,UAAU;gBACtB,8BAA8B;gBAC9B,WAAW,EAAE,WAAW,IACpB,CAAC,aAAa,KAAK,uBAAe,CAAC,WAAW;gBAChD,CAAC,CAAC;oBACE,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM;iBACnC;gBACH,CAAC,CAAC,EAAE,CAAC,IACP,UAAU,EAAE;oBACV,MAAM,EAAE,GAAG,EAAE,CACX,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CACpB,8BAAC,YAAY,oBAAK,iBAAiB,EAAI,CACxC,CAAC,CAAC,CAAC,CACF,8BAAC,gBAAM,IAAC,SAAS,EAAE,OAAO,CAAC,GAAG;wBAC5B,8BAAC,sBAAW,QAAE,UAAU,CAAe,CAChC,CACV;iBACJ,IACD,CACH,CACG,CACD;QACN,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CACxB,8BAAC,iBAAM,IAAC,MAAM;YACZ,8BAAC,eAAI,IAAC,IAAI,QAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;gBACtB,8BAAC,0BAAM,kBAAC,OAAO,QAAC,SAAS,EAAE,OAAO,CAAC,KAAK,IAAM,gBAAgB;oBAC5D,8BAAC,eAAK,CAAC,QAAQ,IAAC,QAAQ,EAAE,8BAAC,0BAAe,OAAG,IAC1C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CACxB,8BAAC,CAAC,CAAC,SAAS,kBAAC,GAAG,EAAE,CAAC,IAAM,CAAC,CAAC,cAAc,EAAgB,CAC1D,CAAC,CACa,CACV,CACJ,CACA,CACV,CACI,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,IAAA,kBAAU,EAAC,IAAI,CAAC,CAAC"}
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import React, { ReactNode } from 'react';
|
|
2
|
-
import { SCFeedWidgetType } from '../../types/feed';
|
|
3
|
-
import { CustomAdvProps } from '../CustomAdv';
|
|
4
|
-
import { SCUserType } from '@selfcommunity/types';
|
|
5
|
-
import { EndpointType } from '@selfcommunity/api-services';
|
|
6
|
-
import { CacheStrategies } from '@selfcommunity/utils';
|
|
7
|
-
export interface FeedSidebarProps {
|
|
8
|
-
top: string | number;
|
|
9
|
-
bottomBoundary: string | number;
|
|
10
|
-
}
|
|
11
|
-
export declare type FeedRef = {
|
|
12
|
-
addFeedData: (obj: any) => void;
|
|
13
|
-
refresh: () => void;
|
|
14
|
-
};
|
|
15
|
-
export interface FeedProps {
|
|
16
|
-
/**
|
|
17
|
-
* Id of the feed object
|
|
18
|
-
* @default 'feed'
|
|
19
|
-
*/
|
|
20
|
-
id?: string;
|
|
21
|
-
/**
|
|
22
|
-
* Overrides or extends the styles applied to the component.
|
|
23
|
-
* @default null
|
|
24
|
-
*/
|
|
25
|
-
className?: string;
|
|
26
|
-
/**
|
|
27
|
-
* Feed API Endpoint
|
|
28
|
-
*/
|
|
29
|
-
endpoint: EndpointType;
|
|
30
|
-
/**
|
|
31
|
-
* Feed API Query Params
|
|
32
|
-
* @default [{'limit': 5}]
|
|
33
|
-
*/
|
|
34
|
-
endpointQueryParams?: Record<string, string | number>;
|
|
35
|
-
/**
|
|
36
|
-
* End message, rendered when no more feed item can be displayed
|
|
37
|
-
* @default <FormattedMessage id="ui.feed.noOtherFeedObject" defaultMessage="ui.feed.noOtherFeedObject" />
|
|
38
|
-
*/
|
|
39
|
-
endMessage?: ReactNode;
|
|
40
|
-
/**
|
|
41
|
-
* Refresh message, rendered when no more feed item can be displayed
|
|
42
|
-
* @default <FormattedMessage id="ui.feed.refreshRelease" defaultMessage="ui.feed.refreshRelease" />
|
|
43
|
-
*/
|
|
44
|
-
refreshMessage?: ReactNode;
|
|
45
|
-
/**
|
|
46
|
-
* Widgets to insert into the feed
|
|
47
|
-
* @default empty array
|
|
48
|
-
*/
|
|
49
|
-
widgets?: SCFeedWidgetType[];
|
|
50
|
-
/**
|
|
51
|
-
* Component used to render single feed item retrieved by the endpoint
|
|
52
|
-
*/
|
|
53
|
-
ItemComponent: React.ElementType;
|
|
54
|
-
/**
|
|
55
|
-
* Function used to convert the single result returned by the Endpoint into the props necessary to render the ItemComponent
|
|
56
|
-
*/
|
|
57
|
-
itemPropsGenerator: (scUser: SCUserType, item: any) => any;
|
|
58
|
-
/**
|
|
59
|
-
* Function used to generate an id from the single result returned by the Endpoint
|
|
60
|
-
*/
|
|
61
|
-
itemIdGenerator: (item: any) => any;
|
|
62
|
-
/**
|
|
63
|
-
* Props to spread to single feed item
|
|
64
|
-
* @default empty object
|
|
65
|
-
*/
|
|
66
|
-
ItemProps?: any;
|
|
67
|
-
/**
|
|
68
|
-
* Skeleton used to render loading effect during fetch
|
|
69
|
-
*/
|
|
70
|
-
ItemSkeleton: React.ElementType;
|
|
71
|
-
/**
|
|
72
|
-
* Props to spread to single feed item skeleton
|
|
73
|
-
* @default empty object
|
|
74
|
-
*/
|
|
75
|
-
ItemSkeletonProps?: any;
|
|
76
|
-
/**
|
|
77
|
-
* Callback invoked whenever data is loaded during paging
|
|
78
|
-
*/
|
|
79
|
-
onFetchData?: (data: any) => any;
|
|
80
|
-
/**
|
|
81
|
-
* Authenticated or not
|
|
82
|
-
*/
|
|
83
|
-
requireAuthentication?: boolean;
|
|
84
|
-
/**
|
|
85
|
-
* Caching strategies
|
|
86
|
-
* @default CacheStrategies.CACHE_FIRST
|
|
87
|
-
*/
|
|
88
|
-
cacheStrategy?: CacheStrategies;
|
|
89
|
-
/**
|
|
90
|
-
* Props to spread to single feed object
|
|
91
|
-
* @default {top: 0, bottomBoundary: `#${id}`}
|
|
92
|
-
*/
|
|
93
|
-
FeedSidebarProps?: FeedSidebarProps;
|
|
94
|
-
/**
|
|
95
|
-
* Props to spread to single custom adv element (this props can be used only if Custom Adv are enabled)
|
|
96
|
-
* @default {}
|
|
97
|
-
*/
|
|
98
|
-
CustomAdvProps?: CustomAdvProps;
|
|
99
|
-
}
|
|
100
|
-
declare const _default: React.ForwardRefExoticComponent<FeedProps & React.RefAttributes<FeedRef>>;
|
|
101
|
-
export default _default;
|
|
102
|
-
//# sourceMappingURL=FeedVirtuoso.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FeedVirtuoso.d.ts","sourceRoot":"","sources":["../../../../src/components/Feed/FeedVirtuoso.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAGZ,SAAS,EAOV,MAAM,OAAO,CAAC;AAKf,OAAO,EAAC,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAElD,OAAkB,EAAC,cAAc,EAAC,MAAM,cAAc,CAAC;AACvD,OAAO,EAAsC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAAC,YAAY,EAAC,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAC,eAAe,EAAW,MAAM,sBAAsB,CAAC;AAkD/D,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC;CACjC;AAED,oBAAY,OAAO,GAAG;IACpB,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;IAChC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAEF,MAAM,WAAW,SAAS;IACxB;;;OAGG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,QAAQ,EAAE,YAAY,CAAC;IAEvB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IAEtD;;;OAGG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC;IAEvB;;;OAGG;IACH,cAAc,CAAC,EAAE,SAAS,CAAC;IAE3B;;;OAGG;IACH,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAE7B;;OAEG;IACH,aAAa,EAAE,KAAK,CAAC,WAAW,CAAC;IAEjC;;OAEG;IACH,kBAAkB,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,KAAA,KAAK,GAAG,CAAC;IAEtD;;OAEG;IACH,eAAe,EAAE,CAAC,IAAI,KAAA,KAAK,GAAG,CAAC;IAE/B;;;OAGG;IACH,SAAS,CAAC,EAAE,GAAG,CAAC;IAEhB;;OAEG;IACH,YAAY,EAAE,KAAK,CAAC,WAAW,CAAC;IAEhC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,GAAG,CAAC;IAExB;;OAEG;IACH,WAAW,CAAC,EAAE,CAAC,IAAI,KAAA,KAAK,GAAG,CAAC;IAE5B;;OAEG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAEhC;;;OAGG;IACH,aAAa,CAAC,EAAE,eAAe,CAAC;IAEhC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAEpC;;;OAGG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;;AAkWD,wBAAgC"}
|