@selfcommunity/react-ui 0.1.19-alpha.1 → 0.2.0-alpha.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.
Files changed (118) hide show
  1. package/lib/cjs/components/Composer/Composer.d.ts.map +1 -1
  2. package/lib/cjs/components/Composer/Composer.js +3 -2
  3. package/lib/cjs/components/Composer/Composer.js.map +1 -1
  4. package/lib/cjs/components/Editor/plugins/DefaultHtmlValuePlugin.d.ts.map +1 -1
  5. package/lib/cjs/components/Editor/plugins/DefaultHtmlValuePlugin.js +10 -3
  6. package/lib/cjs/components/Editor/plugins/DefaultHtmlValuePlugin.js.map +1 -1
  7. package/lib/cjs/components/Feed/Feed.d.ts +16 -2
  8. package/lib/cjs/components/Feed/Feed.d.ts.map +1 -1
  9. package/lib/cjs/components/Feed/Feed.js +137 -97
  10. package/lib/cjs/components/Feed/Feed.js.map +1 -1
  11. package/lib/cjs/components/Feed/Skeleton.d.ts.map +1 -1
  12. package/lib/cjs/components/Feed/Skeleton.js +3 -1
  13. package/lib/cjs/components/Feed/Skeleton.js.map +1 -1
  14. package/lib/cjs/components/FeedObject/Contributors/Contributors.d.ts +1 -1
  15. package/lib/cjs/components/FeedObject/Contributors/Contributors.d.ts.map +1 -1
  16. package/lib/cjs/components/FeedObject/Contributors/Contributors.js +13 -16
  17. package/lib/cjs/components/FeedObject/Contributors/Contributors.js.map +1 -1
  18. package/lib/cjs/components/FeedObject/Contributors/Skeleton.d.ts +34 -0
  19. package/lib/cjs/components/FeedObject/Contributors/Skeleton.d.ts.map +1 -0
  20. package/lib/cjs/components/FeedObject/Contributors/Skeleton.js +66 -0
  21. package/lib/cjs/components/FeedObject/Contributors/Skeleton.js.map +1 -0
  22. package/lib/cjs/components/FeedObject/FeedObject.d.ts +10 -0
  23. package/lib/cjs/components/FeedObject/FeedObject.d.ts.map +1 -1
  24. package/lib/cjs/components/FeedObject/FeedObject.js +11 -11
  25. package/lib/cjs/components/FeedObject/FeedObject.js.map +1 -1
  26. package/lib/cjs/components/Notification/Notification.d.ts +10 -0
  27. package/lib/cjs/components/Notification/Notification.d.ts.map +1 -1
  28. package/lib/cjs/components/Notification/Notification.js +11 -3
  29. package/lib/cjs/components/Notification/Notification.js.map +1 -1
  30. package/lib/cjs/shared/ContributionActionsMenu/index.d.ts.map +1 -1
  31. package/lib/cjs/shared/ContributionActionsMenu/index.js +7 -2
  32. package/lib/cjs/shared/ContributionActionsMenu/index.js.map +1 -1
  33. package/lib/cjs/shared/Media/Image/PreviewComponent.d.ts.map +1 -1
  34. package/lib/cjs/shared/Media/Image/PreviewComponent.js +5 -10
  35. package/lib/cjs/shared/Media/Image/PreviewComponent.js.map +1 -1
  36. package/lib/cjs/shared/Media/Link/PreviewComponent.js +1 -2
  37. package/lib/cjs/shared/Media/Link/PreviewComponent.js.map +1 -1
  38. package/lib/cjs/shared/VirtualizedScroller/VirtualScrollerChild.d.ts +12 -0
  39. package/lib/cjs/shared/VirtualizedScroller/VirtualScrollerChild.d.ts.map +1 -0
  40. package/lib/cjs/shared/VirtualizedScroller/VirtualScrollerChild.js +41 -0
  41. package/lib/cjs/shared/VirtualizedScroller/VirtualScrollerChild.js.map +1 -0
  42. package/lib/cjs/shared/VirtualizedScroller/VirtualizedScroller.d.ts +2 -0
  43. package/lib/cjs/shared/VirtualizedScroller/VirtualizedScroller.d.ts.map +1 -0
  44. package/lib/cjs/shared/VirtualizedScroller/VirtualizedScroller.js +103 -0
  45. package/lib/cjs/shared/VirtualizedScroller/VirtualizedScroller.js.map +1 -0
  46. package/lib/cjs/shared/VirtualizedScroller/index.d.ts +5 -0
  47. package/lib/cjs/shared/VirtualizedScroller/index.d.ts.map +1 -0
  48. package/lib/cjs/shared/VirtualizedScroller/index.js +11 -0
  49. package/lib/cjs/shared/VirtualizedScroller/index.js.map +1 -0
  50. package/lib/cjs/utils/feed.d.ts +13 -0
  51. package/lib/cjs/utils/feed.d.ts.map +1 -0
  52. package/lib/cjs/utils/feed.js +23 -0
  53. package/lib/cjs/utils/feed.js.map +1 -0
  54. package/lib/esm/components/Composer/Composer.d.ts.map +1 -1
  55. package/lib/esm/components/Composer/Composer.js +3 -2
  56. package/lib/esm/components/Composer/Composer.js.map +1 -1
  57. package/lib/esm/components/Editor/plugins/DefaultHtmlValuePlugin.d.ts.map +1 -1
  58. package/lib/esm/components/Editor/plugins/DefaultHtmlValuePlugin.js +10 -3
  59. package/lib/esm/components/Editor/plugins/DefaultHtmlValuePlugin.js.map +1 -1
  60. package/lib/esm/components/Feed/Feed.d.ts +16 -2
  61. package/lib/esm/components/Feed/Feed.d.ts.map +1 -1
  62. package/lib/esm/components/Feed/Feed.js +138 -98
  63. package/lib/esm/components/Feed/Feed.js.map +1 -1
  64. package/lib/esm/components/Feed/Skeleton.d.ts.map +1 -1
  65. package/lib/esm/components/Feed/Skeleton.js +3 -1
  66. package/lib/esm/components/Feed/Skeleton.js.map +1 -1
  67. package/lib/esm/components/FeedObject/Contributors/Contributors.d.ts +1 -1
  68. package/lib/esm/components/FeedObject/Contributors/Contributors.d.ts.map +1 -1
  69. package/lib/esm/components/FeedObject/Contributors/Contributors.js +14 -17
  70. package/lib/esm/components/FeedObject/Contributors/Contributors.js.map +1 -1
  71. package/lib/esm/components/FeedObject/Contributors/Skeleton.d.ts +34 -0
  72. package/lib/esm/components/FeedObject/Contributors/Skeleton.d.ts.map +1 -0
  73. package/lib/esm/components/FeedObject/Contributors/Skeleton.js +60 -0
  74. package/lib/esm/components/FeedObject/Contributors/Skeleton.js.map +1 -0
  75. package/lib/esm/components/FeedObject/FeedObject.d.ts +10 -0
  76. package/lib/esm/components/FeedObject/FeedObject.d.ts.map +1 -1
  77. package/lib/esm/components/FeedObject/FeedObject.js +11 -11
  78. package/lib/esm/components/FeedObject/FeedObject.js.map +1 -1
  79. package/lib/esm/components/Notification/Notification.d.ts +10 -0
  80. package/lib/esm/components/Notification/Notification.d.ts.map +1 -1
  81. package/lib/esm/components/Notification/Notification.js +11 -3
  82. package/lib/esm/components/Notification/Notification.js.map +1 -1
  83. package/lib/esm/shared/ContributionActionsMenu/index.d.ts.map +1 -1
  84. package/lib/esm/shared/ContributionActionsMenu/index.js +7 -2
  85. package/lib/esm/shared/ContributionActionsMenu/index.js.map +1 -1
  86. package/lib/esm/shared/Media/Image/PreviewComponent.d.ts.map +1 -1
  87. package/lib/esm/shared/Media/Image/PreviewComponent.js +5 -10
  88. package/lib/esm/shared/Media/Image/PreviewComponent.js.map +1 -1
  89. package/lib/esm/shared/Media/Link/PreviewComponent.js +1 -2
  90. package/lib/esm/shared/Media/Link/PreviewComponent.js.map +1 -1
  91. package/lib/esm/shared/VirtualizedScroller/VirtualScrollerChild.d.ts +12 -0
  92. package/lib/esm/shared/VirtualizedScroller/VirtualScrollerChild.d.ts.map +1 -0
  93. package/lib/esm/shared/VirtualizedScroller/VirtualScrollerChild.js +16 -0
  94. package/lib/esm/shared/VirtualizedScroller/VirtualScrollerChild.js.map +1 -0
  95. package/lib/esm/shared/VirtualizedScroller/VirtualizedScroller.d.ts +2 -0
  96. package/lib/esm/shared/VirtualizedScroller/VirtualizedScroller.d.ts.map +1 -0
  97. package/lib/esm/shared/VirtualizedScroller/VirtualizedScroller.js +74 -0
  98. package/lib/esm/shared/VirtualizedScroller/VirtualizedScroller.js.map +1 -0
  99. package/lib/esm/shared/VirtualizedScroller/index.d.ts +5 -0
  100. package/lib/esm/shared/VirtualizedScroller/index.d.ts.map +1 -0
  101. package/lib/esm/shared/VirtualizedScroller/index.js +5 -0
  102. package/lib/esm/shared/VirtualizedScroller/index.js.map +1 -0
  103. package/lib/esm/utils/feed.d.ts +13 -0
  104. package/lib/esm/utils/feed.d.ts.map +1 -0
  105. package/lib/esm/utils/feed.js +18 -0
  106. package/lib/esm/utils/feed.js.map +1 -0
  107. package/lib/umd/react-ui.js +21 -21
  108. package/lib/umd/react-ui.js.LICENSE.txt +16 -0
  109. package/lib/umd/react-ui.js.map +1 -1
  110. package/package.json +5 -4
  111. package/lib/cjs/components/Feed/FeedVirtuoso.d.ts +0 -101
  112. package/lib/cjs/components/Feed/FeedVirtuoso.d.ts.map +0 -1
  113. package/lib/cjs/components/Feed/FeedVirtuoso.js +0 -252
  114. package/lib/cjs/components/Feed/FeedVirtuoso.js.map +0 -1
  115. package/lib/esm/components/Feed/FeedVirtuoso.d.ts +0 -101
  116. package/lib/esm/components/Feed/FeedVirtuoso.d.ts.map +0 -1
  117. package/lib/esm/components/Feed/FeedVirtuoso.js +0 -224
  118. 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.1.19-alpha.1",
3
+ "version": "0.2.0-alpha.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",
@@ -68,7 +68,7 @@
68
68
  "@rpldy/upload-preview": "^0.18.0",
69
69
  "@rpldy/uploady": "^0.18.0",
70
70
  "@selfcommunity/api-services": "^0.1.19-alpha.0",
71
- "@selfcommunity/react-core": "^0.1.19-alpha.1",
71
+ "@selfcommunity/react-core": "^0.1.19-alpha.3",
72
72
  "@selfcommunity/react-i18n": "^0.1.19-alpha.0",
73
73
  "@selfcommunity/types": "^0.1.19-alpha.0",
74
74
  "@selfcommunity/utils": "^0.1.19-alpha.0",
@@ -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": "068d1448d8d8e1839eeacf538820d654d58f2c94"
161
+ "gitHead": "7ef9350775fd457017263ee6aba11aa71ea95ff8"
161
162
  }
@@ -1,101 +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
- };
14
- export interface FeedProps {
15
- /**
16
- * Id of the feed object
17
- * @default 'feed'
18
- */
19
- id?: string;
20
- /**
21
- * Overrides or extends the styles applied to the component.
22
- * @default null
23
- */
24
- className?: string;
25
- /**
26
- * Feed API Endpoint
27
- */
28
- endpoint: EndpointType;
29
- /**
30
- * Feed API Query Params
31
- * @default [{'limit': 5}]
32
- */
33
- endpointQueryParams?: Record<string, string | number>;
34
- /**
35
- * End message, rendered when no more feed item can be displayed
36
- * @default <FormattedMessage id="ui.feed.noOtherFeedObject" defaultMessage="ui.feed.noOtherFeedObject" />
37
- */
38
- endMessage?: ReactNode;
39
- /**
40
- * Refresh message, rendered when no more feed item can be displayed
41
- * @default <FormattedMessage id="ui.feed.refreshRelease" defaultMessage="ui.feed.refreshRelease" />
42
- */
43
- refreshMessage?: ReactNode;
44
- /**
45
- * Widgets to insert into the feed
46
- * @default empty array
47
- */
48
- widgets?: SCFeedWidgetType[];
49
- /**
50
- * Component used to render single feed item retrieved by the endpoint
51
- */
52
- ItemComponent: React.ElementType;
53
- /**
54
- * Function used to convert the single result returned by the Endpoint into the props necessary to render the ItemComponent
55
- */
56
- itemPropsGenerator: (scUser: SCUserType, item: any) => any;
57
- /**
58
- * Function used to generate an id from the single result returned by the Endpoint
59
- */
60
- itemIdGenerator: (item: any) => any;
61
- /**
62
- * Props to spread to single feed item
63
- * @default empty object
64
- */
65
- ItemProps?: any;
66
- /**
67
- * Skeleton used to render loading effect during fetch
68
- */
69
- ItemSkeleton: React.ElementType;
70
- /**
71
- * Props to spread to single feed item skeleton
72
- * @default empty object
73
- */
74
- ItemSkeletonProps?: any;
75
- /**
76
- * Callback invoked whenever data is loaded during paging
77
- */
78
- onFetchData?: (data: any) => any;
79
- /**
80
- * Authenticated or not
81
- */
82
- requireAuthentication?: boolean;
83
- /**
84
- * Caching strategies
85
- * @default CacheStrategies.CACHE_FIRST
86
- */
87
- cacheStrategy?: CacheStrategies;
88
- /**
89
- * Props to spread to single feed object
90
- * @default {top: 0, bottomBoundary: `#${id}`}
91
- */
92
- FeedSidebarProps?: FeedSidebarProps;
93
- /**
94
- * Props to spread to single custom adv element (this props can be used only if Custom Adv are enabled)
95
- * @default {}
96
- */
97
- CustomAdvProps?: CustomAdvProps;
98
- }
99
- declare const _default: React.ForwardRefExoticComponent<FeedProps & React.RefAttributes<FeedRef>>;
100
- export default _default;
101
- //# 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,EAAuC,SAAS,EAAwE,MAAM,OAAO,CAAC;AAKpJ,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;AAgD/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;CACjC,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;;AA+RD,wBAAgC"}
@@ -1,252 +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 PREFIX = 'SCFeed';
46
- const classes = {
47
- root: `${PREFIX}-root`,
48
- left: `${PREFIX}-left`,
49
- right: `${PREFIX}-right`,
50
- end: `${PREFIX}-end`,
51
- refresh: `${PREFIX}-refresh`
52
- };
53
- const Root = (0, styles_1.styled)(material_1.Grid, {
54
- name: PREFIX,
55
- slot: 'Root',
56
- overridesResolver: (props, styles) => styles.root
57
- })(({ theme }) => ({
58
- marginTop: theme.spacing(-2),
59
- [`& .${classes.left}`]: {
60
- padding: '0 2px 0 2px',
61
- [theme.breakpoints.down('md')]: {
62
- '& > .SCWidget-root, & > .SCCustomAdv-root': {
63
- maxWidth: 700,
64
- marginLeft: 'auto',
65
- marginRight: 'auto'
66
- }
67
- }
68
- },
69
- [`& .${classes.end}, & .${classes.refresh}`]: {
70
- textAlign: 'center'
71
- }
72
- }));
73
- const PREFERENCES = [react_core_1.SCPreferences.ADVERTISING_CUSTOM_ADV_ENABLED, react_core_1.SCPreferences.ADVERTISING_CUSTOM_ADV_ONLY_FOR_ANONYMOUS_USERS_ENABLED];
74
- /**
75
- * A wrapper component for children of
76
- * VirtualScroll. Computes inline style and
77
- * handles whether to display props.children.
78
- */
79
- const VirtualScrollChild = ({ cacheKey, index, children }) => {
80
- const [ref, inView] = (0, react_intersection_observer_1.useInView)({ threshold: 0.5 });
81
- (0, react_1.useEffect)(() => {
82
- if (inView) {
83
- utils_1.LRUCache.set(react_core_1.SCCache.getFeedSPCacheKey(cacheKey), index);
84
- }
85
- }, [inView]);
86
- return react_1.default.createElement("div", { ref: ref }, children);
87
- };
88
- /**
89
- * > API documentation for the Community-JS Feed component. Learn about the available props and the CSS API.
90
-
91
- #### Import
92
-
93
- ```jsx
94
- import {Feed} from '@selfcommunity/react-ui';
95
- ```
96
-
97
- #### Component Name
98
-
99
- The name `SCFeed` can be used when providing style overrides in the theme.
100
-
101
- #### CSS
102
-
103
- |Rule Name|Global class|Description|
104
- |---|---|---|
105
- |root|.SCFeed-root|Styles applied to the root element.|
106
- |left|.SCFeed-left|Styles applied to the left element.|
107
- |right|.SCFeed-right|Styles applied to the right element.|
108
- |end|.SCFeed-end|Styles applied to the end element.|
109
- |refresh|.SCFeed-refresh|Styles applied to the refresh section.|
110
- *
111
- * @param inProps
112
- */
113
- const Feed = (inProps, ref) => {
114
- // PROPS
115
- const props = (0, system_1.useThemeProps)({
116
- props: inProps,
117
- name: PREFIX
118
- });
119
- const { id = 'feed', className, endpoint, endpointQueryParams = { limit: 10, 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;
120
- // STATE
121
- const feedDataObject = (0, react_core_1.useSCFetchFeed)({
122
- id,
123
- endpoint,
124
- endpointQueryParams,
125
- onChangePage: onFetchData,
126
- cacheStrategy
127
- });
128
- const [headData, setHeadData] = (0, react_1.useState)([]);
129
- // CONTEXT
130
- const scPreferences = (0, react_core_1.useSCPreferences)();
131
- const scUserContext = (0, react_1.useContext)(react_core_1.SCUserContext);
132
- // CONST
133
- const authUserId = scUserContext.user ? scUserContext.user.id : null;
134
- // REFS
135
- const virtuosoRef = (0, react_1.useRef)(null);
136
- const refreshSubscription = (0, react_1.useRef)(null);
137
- /**
138
- * Compute preferences
139
- */
140
- const preferences = (0, react_1.useMemo)(() => {
141
- const _preferences = {};
142
- PREFERENCES.map((p) => (_preferences[p] = p in scPreferences.preferences ? scPreferences.preferences[p].value : null));
143
- return _preferences;
144
- }, [scPreferences.preferences]);
145
- /**
146
- * Compute Widgets
147
- */
148
- const _widgets = (0, react_1.useMemo)(() => {
149
- if (preferences[react_core_1.SCPreferences.ADVERTISING_CUSTOM_ADV_ENABLED] &&
150
- ((preferences[react_core_1.SCPreferences.ADVERTISING_CUSTOM_ADV_ONLY_FOR_ANONYMOUS_USERS_ENABLED] && scUserContext.user === null) ||
151
- !preferences[react_core_1.SCPreferences.ADVERTISING_CUSTOM_ADV_ONLY_FOR_ANONYMOUS_USERS_ENABLED])) {
152
- return [
153
- ...widgets,
154
- {
155
- type: 'widget',
156
- component: CustomAdv_1.default,
157
- componentProps: Object.assign({ position: types_1.SCCustomAdvPosition.POSITION_FEED_SIDEBAR }, CustomAdvProps),
158
- column: 'right',
159
- position: 0
160
- },
161
- ...Array.from({ length: feedDataObject.feedData.length / 10 }, (_, i) => i * 10).map((position) => {
162
- return {
163
- type: 'widget',
164
- component: CustomAdv_1.default,
165
- componentProps: Object.assign({ position: types_1.SCCustomAdvPosition.POSITION_FEED }, CustomAdvProps),
166
- column: 'left',
167
- position
168
- };
169
- })
170
- ];
171
- }
172
- return [...widgets];
173
- }, [widgets, feedDataObject.feedData, preferences]);
174
- const refresh = () => {
175
- feedDataObject.reload();
176
- };
177
- const subscriber = (msg, data) => {
178
- if (data.refresh) {
179
- refresh();
180
- }
181
- };
182
- // EFFECTS
183
- (0, react_1.useEffect)(() => {
184
- if ((requireAuthentication && authUserId !== null) || !requireAuthentication) {
185
- feedDataObject.getNextPage();
186
- }
187
- }, [authUserId]);
188
- (0, react_1.useEffect)(() => {
189
- refreshSubscription.current = pubsub_js_1.default.subscribe(id, subscriber);
190
- return () => {
191
- pubsub_js_1.default.unsubscribe(refreshSubscription.current);
192
- };
193
- }, []);
194
- // EXPOSED METHODS
195
- (0, react_1.useImperativeHandle)(ref, () => ({
196
- addFeedData: (data) => {
197
- setHeadData(data);
198
- }
199
- }));
200
- // RENDER
201
- const theme = (0, styles_1.useTheme)();
202
- const oneColLayout = (0, material_1.useMediaQuery)(theme.breakpoints.down('md'));
203
- const getData = (0, react_1.useMemo)(() => () => {
204
- const widgetSort = (w1, w2) => (w1.position > w2.position ? 1 : -1);
205
- const widgetReducer = (value, w) => {
206
- value.splice(w.position, 0, w);
207
- return value;
208
- };
209
- if (oneColLayout) {
210
- return {
211
- left: _widgets
212
- .map((w) => Object.assign({}, w, { position: w.position * (w.column === 'right' ? 5 : 1) }))
213
- .sort(widgetSort)
214
- .reduce(widgetReducer, [...headData, ...feedDataObject.feedData]),
215
- right: []
216
- };
217
- }
218
- else {
219
- return {
220
- left: _widgets
221
- .filter((w) => w.column === 'left')
222
- .sort(widgetSort)
223
- .reduce(widgetReducer, [...headData, ...feedDataObject.feedData]),
224
- right: _widgets.filter((w) => w.column === 'right').sort(widgetSort)
225
- };
226
- }
227
- }, [feedDataObject.isLoadingNext, oneColLayout, feedDataObject.feedData, _widgets, headData]);
228
- const data = getData();
229
- const InnerItem = (0, react_1.useMemo)(() => ({ index, d }) => {
230
- return (react_1.default.createElement(VirtualScrollChild, { index: index, cacheKey: id }, 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%' } })))));
231
- }, []);
232
- const itemContent = (i, d) => {
233
- return react_1.default.createElement(InnerItem, { index: i, d: d });
234
- };
235
- return (react_1.default.createElement(Root, { container: true, spacing: 2, id: id, className: (0, classnames_1.default)(classes.root, className) },
236
- react_1.default.createElement(material_1.Grid, { item: true, xs: 12, md: 7 },
237
- 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({ ref: virtuosoRef, useWindowScroll: true, overscan: { main: 5, reverse: 5 }, totalCount: data.left.length, data: data.left, endReached: feedDataObject.feedData.length > 0 ? feedDataObject.getNextPage : () => null, itemContent: itemContent }, (cacheStrategy === utils_1.CacheStrategies.CACHE_FIRST && utils_1.LRUCache.get(react_core_1.SCCache.getFeedSPCacheKey(id))
238
- ? {
239
- initialItemCount: data.left.length,
240
- initialTopMostItemIndex: { align: 'start', index: utils_1.LRUCache.get(react_core_1.SCCache.getFeedSPCacheKey(id)), behavior: 'auto' }
241
- }
242
- : {}), { components: {
243
- Footer: () => feedDataObject.next ? (react_1.default.createElement(ItemSkeleton, Object.assign({}, ItemSkeletonProps))) : (react_1.default.createElement(Widget_1.default, { className: classes.end },
244
- react_1.default.createElement(material_1.CardContent, null, endMessage)))
245
- } }))))),
246
- data.right.length > 0 && (react_1.default.createElement(material_1.Hidden, { smDown: true },
247
- react_1.default.createElement(material_1.Grid, { item: true, xs: 12, md: 5 },
248
- react_1.default.createElement(react_stickynode_1.default, Object.assign({ enabled: true, className: classes.right }, FeedSidebarProps),
249
- 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)))))))))));
250
- };
251
- exports.default = (0, react_1.forwardRef)(Feed);
252
- //# sourceMappingURL=FeedVirtuoso.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FeedVirtuoso.js","sourceRoot":"","sources":["../../../../src/components/Feed/FeedVirtuoso.tsx"],"names":[],"mappings":"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"}
@@ -1,101 +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
- };
14
- export interface FeedProps {
15
- /**
16
- * Id of the feed object
17
- * @default 'feed'
18
- */
19
- id?: string;
20
- /**
21
- * Overrides or extends the styles applied to the component.
22
- * @default null
23
- */
24
- className?: string;
25
- /**
26
- * Feed API Endpoint
27
- */
28
- endpoint: EndpointType;
29
- /**
30
- * Feed API Query Params
31
- * @default [{'limit': 5}]
32
- */
33
- endpointQueryParams?: Record<string, string | number>;
34
- /**
35
- * End message, rendered when no more feed item can be displayed
36
- * @default <FormattedMessage id="ui.feed.noOtherFeedObject" defaultMessage="ui.feed.noOtherFeedObject" />
37
- */
38
- endMessage?: ReactNode;
39
- /**
40
- * Refresh message, rendered when no more feed item can be displayed
41
- * @default <FormattedMessage id="ui.feed.refreshRelease" defaultMessage="ui.feed.refreshRelease" />
42
- */
43
- refreshMessage?: ReactNode;
44
- /**
45
- * Widgets to insert into the feed
46
- * @default empty array
47
- */
48
- widgets?: SCFeedWidgetType[];
49
- /**
50
- * Component used to render single feed item retrieved by the endpoint
51
- */
52
- ItemComponent: React.ElementType;
53
- /**
54
- * Function used to convert the single result returned by the Endpoint into the props necessary to render the ItemComponent
55
- */
56
- itemPropsGenerator: (scUser: SCUserType, item: any) => any;
57
- /**
58
- * Function used to generate an id from the single result returned by the Endpoint
59
- */
60
- itemIdGenerator: (item: any) => any;
61
- /**
62
- * Props to spread to single feed item
63
- * @default empty object
64
- */
65
- ItemProps?: any;
66
- /**
67
- * Skeleton used to render loading effect during fetch
68
- */
69
- ItemSkeleton: React.ElementType;
70
- /**
71
- * Props to spread to single feed item skeleton
72
- * @default empty object
73
- */
74
- ItemSkeletonProps?: any;
75
- /**
76
- * Callback invoked whenever data is loaded during paging
77
- */
78
- onFetchData?: (data: any) => any;
79
- /**
80
- * Authenticated or not
81
- */
82
- requireAuthentication?: boolean;
83
- /**
84
- * Caching strategies
85
- * @default CacheStrategies.CACHE_FIRST
86
- */
87
- cacheStrategy?: CacheStrategies;
88
- /**
89
- * Props to spread to single feed object
90
- * @default {top: 0, bottomBoundary: `#${id}`}
91
- */
92
- FeedSidebarProps?: FeedSidebarProps;
93
- /**
94
- * Props to spread to single custom adv element (this props can be used only if Custom Adv are enabled)
95
- * @default {}
96
- */
97
- CustomAdvProps?: CustomAdvProps;
98
- }
99
- declare const _default: React.ForwardRefExoticComponent<FeedProps & React.RefAttributes<FeedRef>>;
100
- export default _default;
101
- //# 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,EAAuC,SAAS,EAAwE,MAAM,OAAO,CAAC;AAKpJ,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;AAgD/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;CACjC,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;;AA+RD,wBAAgC"}