powr-sdk-web 3.3.4 → 3.3.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/admin/index.js +3 -0
- package/dist/chat/index.js +0 -7
- package/dist/feeds/admin.js +237 -0
- package/dist/feeds/components/CreatePost.js +296 -0
- package/dist/feeds/components/FeedPost.js +266 -0
- package/dist/feeds/index.js +242 -0
- package/dist/forms/admin.js +32 -57
- package/dist/index.js +7 -0
- package/dist/waitlists/admin.js +17 -36
- package/package.json +1 -1
|
@@ -0,0 +1,266 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
var _auth = require("../../utils/auth");
|
|
10
|
+
var _comments = _interopRequireDefault(require("../../comments"));
|
|
11
|
+
var _likes = _interopRequireDefault(require("../../likes"));
|
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
13
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t3 in e) "default" !== _t3 && {}.hasOwnProperty.call(e, _t3) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t3)) && (i.get || i.set) ? o(f, _t3, i) : f[_t3] = e[_t3]); return f; })(e, t); }
|
|
14
|
+
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
|
|
15
|
+
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
|
|
16
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
17
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
18
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
19
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
20
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
21
|
+
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
|
|
22
|
+
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
|
|
23
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
24
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
25
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
26
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
27
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
28
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
29
|
+
var FeedPost = function FeedPost(_ref) {
|
|
30
|
+
var _post$author, _post$author2;
|
|
31
|
+
var post = _ref.post,
|
|
32
|
+
onDelete = _ref.onDelete,
|
|
33
|
+
onUpdate = _ref.onUpdate,
|
|
34
|
+
onLikeUpdate = _ref.onLikeUpdate,
|
|
35
|
+
onCommentUpdate = _ref.onCommentUpdate;
|
|
36
|
+
var _useState = (0, _react.useState)(false),
|
|
37
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
38
|
+
showComments = _useState2[0],
|
|
39
|
+
setShowComments = _useState2[1];
|
|
40
|
+
var _useState3 = (0, _react.useState)(false),
|
|
41
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
42
|
+
isEditing = _useState4[0],
|
|
43
|
+
setIsEditing = _useState4[1];
|
|
44
|
+
var _useState5 = (0, _react.useState)(post.content),
|
|
45
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
46
|
+
editContent = _useState6[0],
|
|
47
|
+
setEditContent = _useState6[1];
|
|
48
|
+
var _useState7 = (0, _react.useState)(false),
|
|
49
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
50
|
+
isSubmitting = _useState8[0],
|
|
51
|
+
setIsSubmitting = _useState8[1];
|
|
52
|
+
var formatDate = function formatDate(dateString) {
|
|
53
|
+
var date = new Date(dateString);
|
|
54
|
+
var now = new Date();
|
|
55
|
+
var diffInHours = (now - date) / (1000 * 60 * 60);
|
|
56
|
+
if (diffInHours < 1) {
|
|
57
|
+
var diffInMinutes = Math.floor((now - date) / (1000 * 60));
|
|
58
|
+
return "".concat(diffInMinutes, "m ago");
|
|
59
|
+
} else if (diffInHours < 24) {
|
|
60
|
+
return "".concat(Math.floor(diffInHours), "h ago");
|
|
61
|
+
} else {
|
|
62
|
+
return date.toLocaleDateString();
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
var handleEdit = /*#__PURE__*/function () {
|
|
66
|
+
var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
|
|
67
|
+
var _yield$apiCall, data, ok, _t;
|
|
68
|
+
return _regenerator().w(function (_context) {
|
|
69
|
+
while (1) switch (_context.n) {
|
|
70
|
+
case 0:
|
|
71
|
+
if (editContent.trim()) {
|
|
72
|
+
_context.n = 1;
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
return _context.a(2);
|
|
76
|
+
case 1:
|
|
77
|
+
setIsSubmitting(true);
|
|
78
|
+
_context.p = 2;
|
|
79
|
+
_context.n = 3;
|
|
80
|
+
return (0, _auth.apiCall)(null, "/feeds/".concat(post._id), null, {
|
|
81
|
+
method: 'PUT',
|
|
82
|
+
body: {
|
|
83
|
+
content: editContent.trim()
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
case 3:
|
|
87
|
+
_yield$apiCall = _context.v;
|
|
88
|
+
data = _yield$apiCall.data;
|
|
89
|
+
ok = _yield$apiCall.ok;
|
|
90
|
+
if (ok && data.success) {
|
|
91
|
+
onUpdate(_objectSpread(_objectSpread({}, post), {}, {
|
|
92
|
+
content: editContent.trim()
|
|
93
|
+
}));
|
|
94
|
+
setIsEditing(false);
|
|
95
|
+
}
|
|
96
|
+
_context.n = 5;
|
|
97
|
+
break;
|
|
98
|
+
case 4:
|
|
99
|
+
_context.p = 4;
|
|
100
|
+
_t = _context.v;
|
|
101
|
+
console.error('Error updating post:', _t);
|
|
102
|
+
case 5:
|
|
103
|
+
_context.p = 5;
|
|
104
|
+
setIsSubmitting(false);
|
|
105
|
+
return _context.f(5);
|
|
106
|
+
case 6:
|
|
107
|
+
return _context.a(2);
|
|
108
|
+
}
|
|
109
|
+
}, _callee, null, [[2, 4, 5, 6]]);
|
|
110
|
+
}));
|
|
111
|
+
return function handleEdit() {
|
|
112
|
+
return _ref2.apply(this, arguments);
|
|
113
|
+
};
|
|
114
|
+
}();
|
|
115
|
+
var handleDelete = /*#__PURE__*/function () {
|
|
116
|
+
var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
|
|
117
|
+
var _yield$apiCall2, data, ok, _t2;
|
|
118
|
+
return _regenerator().w(function (_context2) {
|
|
119
|
+
while (1) switch (_context2.n) {
|
|
120
|
+
case 0:
|
|
121
|
+
if (confirm('Are you sure you want to delete this post?')) {
|
|
122
|
+
_context2.n = 1;
|
|
123
|
+
break;
|
|
124
|
+
}
|
|
125
|
+
return _context2.a(2);
|
|
126
|
+
case 1:
|
|
127
|
+
_context2.p = 1;
|
|
128
|
+
_context2.n = 2;
|
|
129
|
+
return (0, _auth.apiCall)(null, "/feeds/".concat(post._id), null, {
|
|
130
|
+
method: 'DELETE'
|
|
131
|
+
});
|
|
132
|
+
case 2:
|
|
133
|
+
_yield$apiCall2 = _context2.v;
|
|
134
|
+
data = _yield$apiCall2.data;
|
|
135
|
+
ok = _yield$apiCall2.ok;
|
|
136
|
+
if (ok && data.success) {
|
|
137
|
+
onDelete(post._id);
|
|
138
|
+
}
|
|
139
|
+
_context2.n = 4;
|
|
140
|
+
break;
|
|
141
|
+
case 3:
|
|
142
|
+
_context2.p = 3;
|
|
143
|
+
_t2 = _context2.v;
|
|
144
|
+
console.error('Error deleting post:', _t2);
|
|
145
|
+
case 4:
|
|
146
|
+
return _context2.a(2);
|
|
147
|
+
}
|
|
148
|
+
}, _callee2, null, [[1, 3]]);
|
|
149
|
+
}));
|
|
150
|
+
return function handleDelete() {
|
|
151
|
+
return _ref3.apply(this, arguments);
|
|
152
|
+
};
|
|
153
|
+
}();
|
|
154
|
+
var handleLikeChange = function handleLikeChange(newLikeCount) {
|
|
155
|
+
onLikeUpdate(post._id, newLikeCount);
|
|
156
|
+
};
|
|
157
|
+
var handleCommentChange = function handleCommentChange(newCommentCount) {
|
|
158
|
+
onCommentUpdate(post._id, newCommentCount);
|
|
159
|
+
};
|
|
160
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
161
|
+
className: "bg-white rounded-lg shadow-sm border p-6"
|
|
162
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
163
|
+
className: "flex items-center justify-between mb-4"
|
|
164
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
165
|
+
className: "flex items-center space-x-3"
|
|
166
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
167
|
+
className: "w-10 h-10 bg-blue-500 rounded-full flex items-center justify-center text-white font-semibold"
|
|
168
|
+
}, ((_post$author = post.author) === null || _post$author === void 0 || (_post$author = _post$author.name) === null || _post$author === void 0 ? void 0 : _post$author.charAt(0)) || 'U'), /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
|
|
169
|
+
className: "font-semibold text-gray-900"
|
|
170
|
+
}, ((_post$author2 = post.author) === null || _post$author2 === void 0 ? void 0 : _post$author2.name) || 'Unknown User'), /*#__PURE__*/_react["default"].createElement("div", {
|
|
171
|
+
className: "text-sm text-gray-500"
|
|
172
|
+
}, formatDate(post.createdAt), !post.isPublic && /*#__PURE__*/_react["default"].createElement("span", {
|
|
173
|
+
className: "ml-2 text-blue-500"
|
|
174
|
+
}, "\uD83D\uDD12 Private")))), /*#__PURE__*/_react["default"].createElement("div", {
|
|
175
|
+
className: "flex items-center space-x-2"
|
|
176
|
+
}, /*#__PURE__*/_react["default"].createElement("button", {
|
|
177
|
+
onClick: function onClick() {
|
|
178
|
+
return setIsEditing(!isEditing);
|
|
179
|
+
},
|
|
180
|
+
className: "text-gray-500 hover:text-gray-700 p-1"
|
|
181
|
+
}, "\u270F\uFE0F"), /*#__PURE__*/_react["default"].createElement("button", {
|
|
182
|
+
onClick: handleDelete,
|
|
183
|
+
className: "text-gray-500 hover:text-red-500 p-1"
|
|
184
|
+
}, "\uD83D\uDDD1\uFE0F"))), isEditing ? /*#__PURE__*/_react["default"].createElement("div", {
|
|
185
|
+
className: "mb-4"
|
|
186
|
+
}, /*#__PURE__*/_react["default"].createElement("textarea", {
|
|
187
|
+
value: editContent,
|
|
188
|
+
onChange: function onChange(e) {
|
|
189
|
+
return setEditContent(e.target.value);
|
|
190
|
+
},
|
|
191
|
+
className: "w-full p-3 border border-gray-300 rounded-lg resize-none focus:ring-2 focus:ring-blue-500 focus:border-transparent",
|
|
192
|
+
rows: 3
|
|
193
|
+
}), /*#__PURE__*/_react["default"].createElement("div", {
|
|
194
|
+
className: "flex justify-end space-x-2 mt-2"
|
|
195
|
+
}, /*#__PURE__*/_react["default"].createElement("button", {
|
|
196
|
+
onClick: function onClick() {
|
|
197
|
+
return setIsEditing(false);
|
|
198
|
+
},
|
|
199
|
+
className: "px-3 py-1 text-sm bg-gray-200 text-gray-700 rounded hover:bg-gray-300"
|
|
200
|
+
}, "Cancel"), /*#__PURE__*/_react["default"].createElement("button", {
|
|
201
|
+
onClick: handleEdit,
|
|
202
|
+
disabled: isSubmitting,
|
|
203
|
+
className: "px-3 py-1 text-sm bg-blue-600 text-white rounded hover:bg-blue-700 disabled:opacity-50"
|
|
204
|
+
}, isSubmitting ? 'Saving...' : 'Save'))) : /*#__PURE__*/_react["default"].createElement("div", {
|
|
205
|
+
className: "mb-4"
|
|
206
|
+
}, /*#__PURE__*/_react["default"].createElement("p", {
|
|
207
|
+
className: "text-gray-900 whitespace-pre-wrap"
|
|
208
|
+
}, post.content)), post.media && post.media.length > 0 && /*#__PURE__*/_react["default"].createElement("div", {
|
|
209
|
+
className: "mb-4"
|
|
210
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
211
|
+
className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-2"
|
|
212
|
+
}, post.media.map(function (file, index) {
|
|
213
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
214
|
+
key: index,
|
|
215
|
+
className: "relative"
|
|
216
|
+
}, file.type === 'image' ? /*#__PURE__*/_react["default"].createElement("img", {
|
|
217
|
+
src: file.url,
|
|
218
|
+
alt: file.filename,
|
|
219
|
+
className: "w-full h-48 object-cover rounded-lg"
|
|
220
|
+
}) : /*#__PURE__*/_react["default"].createElement("div", {
|
|
221
|
+
className: "w-full h-48 bg-gray-100 rounded-lg flex items-center justify-center"
|
|
222
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
223
|
+
className: "text-center"
|
|
224
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
225
|
+
className: "text-3xl mb-2"
|
|
226
|
+
}, "\uD83D\uDCC4"), /*#__PURE__*/_react["default"].createElement("div", {
|
|
227
|
+
className: "text-sm text-gray-600"
|
|
228
|
+
}, file.filename))));
|
|
229
|
+
}))), post.tags && post.tags.length > 0 && /*#__PURE__*/_react["default"].createElement("div", {
|
|
230
|
+
className: "mb-4"
|
|
231
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
232
|
+
className: "flex flex-wrap gap-1"
|
|
233
|
+
}, post.tags.map(function (tag, index) {
|
|
234
|
+
return /*#__PURE__*/_react["default"].createElement("span", {
|
|
235
|
+
key: index,
|
|
236
|
+
className: "px-2 py-1 bg-blue-100 text-blue-800 text-xs rounded-full"
|
|
237
|
+
}, "#", tag);
|
|
238
|
+
}))), /*#__PURE__*/_react["default"].createElement("div", {
|
|
239
|
+
className: "flex items-center justify-between mb-4 text-sm text-gray-500"
|
|
240
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
241
|
+
className: "flex items-center space-x-4"
|
|
242
|
+
}, /*#__PURE__*/_react["default"].createElement("span", null, post.likesCount || 0, " likes"), /*#__PURE__*/_react["default"].createElement("span", null, post.commentsCount || 0, " comments"))), /*#__PURE__*/_react["default"].createElement("div", {
|
|
243
|
+
className: "flex items-center space-x-4 border-t pt-4"
|
|
244
|
+
}, /*#__PURE__*/_react["default"].createElement(_likes["default"], {
|
|
245
|
+
contentId: post._id,
|
|
246
|
+
onLikeChange: handleLikeChange
|
|
247
|
+
}), /*#__PURE__*/_react["default"].createElement("button", {
|
|
248
|
+
onClick: function onClick() {
|
|
249
|
+
return setShowComments(!showComments);
|
|
250
|
+
},
|
|
251
|
+
className: "flex items-center space-x-2 text-gray-500 hover:text-blue-600"
|
|
252
|
+
}, /*#__PURE__*/_react["default"].createElement("span", null, "\uD83D\uDCAC"), /*#__PURE__*/_react["default"].createElement("span", null, "Comment"))), showComments && /*#__PURE__*/_react["default"].createElement("div", {
|
|
253
|
+
className: "mt-4 border-t pt-4"
|
|
254
|
+
}, /*#__PURE__*/_react["default"].createElement(_comments["default"], {
|
|
255
|
+
contentId: post._id,
|
|
256
|
+
onCommentPosted: function onCommentPosted() {
|
|
257
|
+
var newCount = (post.commentsCount || 0) + 1;
|
|
258
|
+
handleCommentChange(newCount);
|
|
259
|
+
},
|
|
260
|
+
onCommentError: function onCommentError(error) {
|
|
261
|
+
return console.error('Comment error:', error);
|
|
262
|
+
},
|
|
263
|
+
maxComments: 10
|
|
264
|
+
})));
|
|
265
|
+
};
|
|
266
|
+
var _default = exports["default"] = FeedPost;
|
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
+
var _auth = require("../utils/auth");
|
|
11
|
+
var _FeedPost = _interopRequireDefault(require("./components/FeedPost"));
|
|
12
|
+
var _CreatePost = _interopRequireDefault(require("./components/CreatePost"));
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
|
|
14
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t2 in e) "default" !== _t2 && {}.hasOwnProperty.call(e, _t2) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t2)) && (i.get || i.set) ? o(f, _t2, i) : f[_t2] = e[_t2]); return f; })(e, t); }
|
|
15
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
16
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
17
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
18
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
19
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
20
|
+
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
|
|
21
|
+
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
|
|
22
|
+
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
|
|
23
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
24
|
+
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
|
|
25
|
+
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
|
|
26
|
+
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
|
|
27
|
+
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
|
|
28
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
29
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
30
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
31
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
32
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
33
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
34
|
+
var PowrBaseFeed = function PowrBaseFeed(_ref) {
|
|
35
|
+
var _ref$className = _ref.className,
|
|
36
|
+
className = _ref$className === void 0 ? '' : _ref$className,
|
|
37
|
+
_ref$style = _ref.style,
|
|
38
|
+
style = _ref$style === void 0 ? {} : _ref$style,
|
|
39
|
+
_ref$showCreatePost = _ref.showCreatePost,
|
|
40
|
+
showCreatePost = _ref$showCreatePost === void 0 ? true : _ref$showCreatePost,
|
|
41
|
+
_ref$maxPosts = _ref.maxPosts,
|
|
42
|
+
maxPosts = _ref$maxPosts === void 0 ? 20 : _ref$maxPosts,
|
|
43
|
+
_ref$autoRefresh = _ref.autoRefresh,
|
|
44
|
+
autoRefresh = _ref$autoRefresh === void 0 ? true : _ref$autoRefresh,
|
|
45
|
+
_ref$refreshInterval = _ref.refreshInterval,
|
|
46
|
+
refreshInterval = _ref$refreshInterval === void 0 ? 30000 : _ref$refreshInterval,
|
|
47
|
+
onPostCreated = _ref.onPostCreated,
|
|
48
|
+
onPostError = _ref.onPostError;
|
|
49
|
+
var _useState = (0, _react.useState)([]),
|
|
50
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
51
|
+
posts = _useState2[0],
|
|
52
|
+
setPosts = _useState2[1];
|
|
53
|
+
var _useState3 = (0, _react.useState)(true),
|
|
54
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
55
|
+
loading = _useState4[0],
|
|
56
|
+
setLoading = _useState4[1];
|
|
57
|
+
var _useState5 = (0, _react.useState)(true),
|
|
58
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
59
|
+
hasMore = _useState6[0],
|
|
60
|
+
setHasMore = _useState6[1];
|
|
61
|
+
var _useState7 = (0, _react.useState)(1),
|
|
62
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
63
|
+
page = _useState8[0],
|
|
64
|
+
setPage = _useState8[1];
|
|
65
|
+
var _useState9 = (0, _react.useState)(false),
|
|
66
|
+
_useState0 = _slicedToArray(_useState9, 2),
|
|
67
|
+
refreshing = _useState0[0],
|
|
68
|
+
setRefreshing = _useState0[1];
|
|
69
|
+
var fetchPosts = /*#__PURE__*/function () {
|
|
70
|
+
var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
|
|
71
|
+
var pageNum,
|
|
72
|
+
append,
|
|
73
|
+
_yield$apiCall,
|
|
74
|
+
data,
|
|
75
|
+
ok,
|
|
76
|
+
_args = arguments,
|
|
77
|
+
_t;
|
|
78
|
+
return _regenerator().w(function (_context) {
|
|
79
|
+
while (1) switch (_context.n) {
|
|
80
|
+
case 0:
|
|
81
|
+
pageNum = _args.length > 0 && _args[0] !== undefined ? _args[0] : 1;
|
|
82
|
+
append = _args.length > 1 && _args[1] !== undefined ? _args[1] : false;
|
|
83
|
+
_context.p = 1;
|
|
84
|
+
_context.n = 2;
|
|
85
|
+
return (0, _auth.apiCall)(null, "/feeds?page=".concat(pageNum, "&limit=").concat(maxPosts), null);
|
|
86
|
+
case 2:
|
|
87
|
+
_yield$apiCall = _context.v;
|
|
88
|
+
data = _yield$apiCall.data;
|
|
89
|
+
ok = _yield$apiCall.ok;
|
|
90
|
+
if (ok && data.success) {
|
|
91
|
+
if (append) {
|
|
92
|
+
setPosts(function (prev) {
|
|
93
|
+
return [].concat(_toConsumableArray(prev), _toConsumableArray(data.data));
|
|
94
|
+
});
|
|
95
|
+
} else {
|
|
96
|
+
setPosts(data.data);
|
|
97
|
+
}
|
|
98
|
+
setHasMore(data.pagination.page < data.pagination.pages);
|
|
99
|
+
setPage(data.pagination.page);
|
|
100
|
+
}
|
|
101
|
+
_context.n = 4;
|
|
102
|
+
break;
|
|
103
|
+
case 3:
|
|
104
|
+
_context.p = 3;
|
|
105
|
+
_t = _context.v;
|
|
106
|
+
console.error('Error fetching posts:', _t);
|
|
107
|
+
case 4:
|
|
108
|
+
_context.p = 4;
|
|
109
|
+
setLoading(false);
|
|
110
|
+
setRefreshing(false);
|
|
111
|
+
return _context.f(4);
|
|
112
|
+
case 5:
|
|
113
|
+
return _context.a(2);
|
|
114
|
+
}
|
|
115
|
+
}, _callee, null, [[1, 3, 4, 5]]);
|
|
116
|
+
}));
|
|
117
|
+
return function fetchPosts() {
|
|
118
|
+
return _ref2.apply(this, arguments);
|
|
119
|
+
};
|
|
120
|
+
}();
|
|
121
|
+
(0, _react.useEffect)(function () {
|
|
122
|
+
fetchPosts();
|
|
123
|
+
}, []);
|
|
124
|
+
(0, _react.useEffect)(function () {
|
|
125
|
+
if (!autoRefresh) return;
|
|
126
|
+
var interval = setInterval(function () {
|
|
127
|
+
setRefreshing(true);
|
|
128
|
+
fetchPosts();
|
|
129
|
+
}, refreshInterval);
|
|
130
|
+
return function () {
|
|
131
|
+
return clearInterval(interval);
|
|
132
|
+
};
|
|
133
|
+
}, [autoRefresh, refreshInterval]);
|
|
134
|
+
var handleLoadMore = function handleLoadMore() {
|
|
135
|
+
if (!hasMore || loading) return;
|
|
136
|
+
fetchPosts(page + 1, true);
|
|
137
|
+
};
|
|
138
|
+
var handlePostCreated = /*#__PURE__*/function () {
|
|
139
|
+
var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(newPost) {
|
|
140
|
+
return _regenerator().w(function (_context2) {
|
|
141
|
+
while (1) switch (_context2.n) {
|
|
142
|
+
case 0:
|
|
143
|
+
setPosts(function (prev) {
|
|
144
|
+
return [newPost].concat(_toConsumableArray(prev));
|
|
145
|
+
});
|
|
146
|
+
if (onPostCreated) {
|
|
147
|
+
onPostCreated(newPost);
|
|
148
|
+
}
|
|
149
|
+
case 1:
|
|
150
|
+
return _context2.a(2);
|
|
151
|
+
}
|
|
152
|
+
}, _callee2);
|
|
153
|
+
}));
|
|
154
|
+
return function handlePostCreated(_x) {
|
|
155
|
+
return _ref3.apply(this, arguments);
|
|
156
|
+
};
|
|
157
|
+
}();
|
|
158
|
+
var handlePostDeleted = function handlePostDeleted(postId) {
|
|
159
|
+
setPosts(function (prev) {
|
|
160
|
+
return prev.filter(function (post) {
|
|
161
|
+
return post._id !== postId;
|
|
162
|
+
});
|
|
163
|
+
});
|
|
164
|
+
};
|
|
165
|
+
var handlePostUpdated = function handlePostUpdated(updatedPost) {
|
|
166
|
+
setPosts(function (prev) {
|
|
167
|
+
return prev.map(function (post) {
|
|
168
|
+
return post._id === updatedPost._id ? updatedPost : post;
|
|
169
|
+
});
|
|
170
|
+
});
|
|
171
|
+
};
|
|
172
|
+
var handleLikeUpdate = function handleLikeUpdate(postId, newLikeCount) {
|
|
173
|
+
setPosts(function (prev) {
|
|
174
|
+
return prev.map(function (post) {
|
|
175
|
+
return post._id === postId ? _objectSpread(_objectSpread({}, post), {}, {
|
|
176
|
+
likesCount: newLikeCount
|
|
177
|
+
}) : post;
|
|
178
|
+
});
|
|
179
|
+
});
|
|
180
|
+
};
|
|
181
|
+
var handleCommentUpdate = function handleCommentUpdate(postId, newCommentCount) {
|
|
182
|
+
setPosts(function (prev) {
|
|
183
|
+
return prev.map(function (post) {
|
|
184
|
+
return post._id === postId ? _objectSpread(_objectSpread({}, post), {}, {
|
|
185
|
+
commentsCount: newCommentCount
|
|
186
|
+
}) : post;
|
|
187
|
+
});
|
|
188
|
+
});
|
|
189
|
+
};
|
|
190
|
+
if (loading && posts.length === 0) {
|
|
191
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
192
|
+
className: "powrbase-feed ".concat(className),
|
|
193
|
+
style: style
|
|
194
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
195
|
+
className: "flex items-center justify-center p-8"
|
|
196
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
197
|
+
className: "animate-spin rounded-full h-8 w-8 border-b-2 border-blue-600"
|
|
198
|
+
})));
|
|
199
|
+
}
|
|
200
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
201
|
+
className: "powrbase-feed ".concat(className),
|
|
202
|
+
style: _objectSpread(_objectSpread({}, style), {}, {
|
|
203
|
+
maxWidth: '100%',
|
|
204
|
+
margin: '0 auto'
|
|
205
|
+
})
|
|
206
|
+
}, showCreatePost && /*#__PURE__*/_react["default"].createElement("div", {
|
|
207
|
+
className: "mb-6"
|
|
208
|
+
}, /*#__PURE__*/_react["default"].createElement(_CreatePost["default"], {
|
|
209
|
+
onPostCreated: handlePostCreated,
|
|
210
|
+
onPostError: onPostError
|
|
211
|
+
})), /*#__PURE__*/_react["default"].createElement("div", {
|
|
212
|
+
className: "space-y-6"
|
|
213
|
+
}, posts.map(function (post) {
|
|
214
|
+
return /*#__PURE__*/_react["default"].createElement(_FeedPost["default"], {
|
|
215
|
+
key: post._id,
|
|
216
|
+
post: post,
|
|
217
|
+
onDelete: handlePostDeleted,
|
|
218
|
+
onUpdate: handlePostUpdated,
|
|
219
|
+
onLikeUpdate: handleLikeUpdate,
|
|
220
|
+
onCommentUpdate: handleCommentUpdate
|
|
221
|
+
});
|
|
222
|
+
})), hasMore && /*#__PURE__*/_react["default"].createElement("div", {
|
|
223
|
+
className: "mt-6 text-center"
|
|
224
|
+
}, /*#__PURE__*/_react["default"].createElement("button", {
|
|
225
|
+
onClick: handleLoadMore,
|
|
226
|
+
disabled: loading,
|
|
227
|
+
className: "px-4 py-2 bg-blue-600 text-white rounded-lg hover:bg-blue-700 disabled:opacity-50"
|
|
228
|
+
}, loading ? 'Loading...' : 'Load More')), refreshing && /*#__PURE__*/_react["default"].createElement("div", {
|
|
229
|
+
className: "fixed top-4 right-4 bg-green-500 text-white px-3 py-1 rounded-full text-sm"
|
|
230
|
+
}, "Refreshing..."));
|
|
231
|
+
};
|
|
232
|
+
PowrBaseFeed.propTypes = {
|
|
233
|
+
className: _propTypes["default"].string,
|
|
234
|
+
style: _propTypes["default"].object,
|
|
235
|
+
showCreatePost: _propTypes["default"].bool,
|
|
236
|
+
maxPosts: _propTypes["default"].number,
|
|
237
|
+
autoRefresh: _propTypes["default"].bool,
|
|
238
|
+
refreshInterval: _propTypes["default"].number,
|
|
239
|
+
onPostCreated: _propTypes["default"].func,
|
|
240
|
+
onPostError: _propTypes["default"].func
|
|
241
|
+
};
|
|
242
|
+
var _default = exports["default"] = PowrBaseFeed;
|