@blocklet/discuss-kit 1.0.10 → 1.0.12

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.
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ const joinUrl = require("url-join");
4
+ const uppload$1 = require("uppload");
5
+ const _interopDefaultLegacy = (e) => e && typeof e === "object" && "default" in e ? e : { default: e };
6
+ const joinUrl__default = /* @__PURE__ */ _interopDefaultLegacy(joinUrl);
7
+ const uppload = "";
8
+ const light = "";
9
+ const getEndpoint = () => {
10
+ const obj = new window.URL(window.location.origin);
11
+ obj.pathname = joinUrl__default.default(window.blocklet.prefix, "/api/uploads");
12
+ return obj.href;
13
+ };
14
+ const upload = uppload$1.xhrUploader({
15
+ endpoint: getEndpoint(),
16
+ fileKeyName: "image",
17
+ responseFunction: (text) => {
18
+ try {
19
+ const json = JSON.parse(text);
20
+ return json.url;
21
+ } catch (error) {
22
+ return Promise.reject(error);
23
+ }
24
+ }
25
+ });
26
+ const uploader = new uppload$1.Uppload({
27
+ lang: uppload$1.en,
28
+ defaultService: "local",
29
+ maxWidth: 1440,
30
+ maxHeight: 900,
31
+ uploader: uppload$1.xhrUploader({
32
+ endpoint: getEndpoint(),
33
+ fileKeyName: "image"
34
+ })
35
+ });
36
+ uploader.use([new uppload$1.Local({
37
+ mimeTypes: ["image/png", "image/jpeg", "image/gif"]
38
+ }), new uppload$1.Camera(), new uppload$1.Screenshot(), new uppload$1.URL(), new uppload$1.Twitter(), new uppload$1.Facebook()]);
39
+ uploader.use([new uppload$1.Preview(), new uppload$1.Rotate(), new uppload$1.Crop(), new uppload$1.Blur(), new uppload$1.Contrast(), new uppload$1.Grayscale(), new uppload$1.Saturate()]);
40
+ exports.default = uploader;
41
+ exports.upload = upload;
@@ -16,6 +16,7 @@ const discussKitUx = require("@blocklet/discuss-kit-ux");
16
16
  const ErrorFallback = require("./components/error-fallback");
17
17
  const locales = require("./locales");
18
18
  const getWsClient = require("./ws");
19
+ const UploadProvider = require("./components/upload-provider");
19
20
  const api = require("./api");
20
21
  const jsxRuntime = require("react/jsx-runtime");
21
22
  const _interopDefaultLegacy = (e) => e && typeof e === "object" && "default" in e ? e : { default: e };
@@ -29,6 +30,7 @@ const CircularProgress__default = /* @__PURE__ */ _interopDefaultLegacy(Circular
29
30
  const ButtonGroup__default = /* @__PURE__ */ _interopDefaultLegacy(ButtonGroup);
30
31
  const ErrorFallback__default = /* @__PURE__ */ _interopDefaultLegacy(ErrorFallback);
31
32
  const getWsClient__default = /* @__PURE__ */ _interopDefaultLegacy(getWsClient);
33
+ const UploadProvider__default = /* @__PURE__ */ _interopDefaultLegacy(UploadProvider);
32
34
  const api__default = /* @__PURE__ */ _interopDefaultLegacy(api);
33
35
  const getPrefix = () => {
34
36
  var _a, _b;
@@ -115,6 +117,12 @@ const commentAPI = {
115
117
  },
116
118
  unrate: async (comment) => {
117
119
  await api__default.default.delete(`/objects/${comment.objectId}/comments/${comment.id}/ratings`);
120
+ },
121
+ fetchRatings: async (id) => {
122
+ const {
123
+ data
124
+ } = await api__default.default.get(`/ratings/${id}`);
125
+ return data;
118
126
  }
119
127
  };
120
128
  function DIDComment({
@@ -207,7 +215,8 @@ function DIDComment({
207
215
  onRate: handleOnRate,
208
216
  onUnrate: handleOnUnrate,
209
217
  variant: "inverse",
210
- size: "lg"
218
+ size: "lg",
219
+ fetchRatings: () => commentAPI.fetchRatings(object.id)
211
220
  })
212
221
  }), showConnectBtn && (session.user ? /* @__PURE__ */ jsxRuntime.jsx(SessionManager__default.default, {
213
222
  style: {
@@ -328,13 +337,15 @@ function Wrapper({
328
337
  translations: locales.translations,
329
338
  locale,
330
339
  children: /* @__PURE__ */ jsxRuntime.jsx(discussKitUx.InternalThemeProvider, {
331
- children: /* @__PURE__ */ jsxRuntime.jsx(discussKitUx.CommentsProvider, {
332
- target: object,
333
- api: commentAPI,
334
- flatView,
335
- children: /* @__PURE__ */ jsxRuntime.jsx(DIDComment, {
336
- ...rest,
337
- object
340
+ children: /* @__PURE__ */ jsxRuntime.jsx(UploadProvider__default.default, {
341
+ children: /* @__PURE__ */ jsxRuntime.jsx(discussKitUx.CommentsProvider, {
342
+ target: object,
343
+ api: commentAPI,
344
+ flatView,
345
+ children: /* @__PURE__ */ jsxRuntime.jsx(DIDComment, {
346
+ ...rest,
347
+ object
348
+ })
338
349
  })
339
350
  })
340
351
  })
package/lib/cjs/index.js CHANGED
@@ -3,10 +3,12 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
3
3
  const didComment = require("./did-comment");
4
4
  const didCommentWithSession = require("./did-comment-with-session");
5
5
  const themeProvider = require("./theme-provider");
6
+ const uploadProvider = require("./components/upload-provider");
6
7
  const _interopDefaultLegacy = (e) => e && typeof e === "object" && "default" in e ? e : { default: e };
7
8
  const didComment__default = /* @__PURE__ */ _interopDefaultLegacy(didComment);
8
9
  const didCommentWithSession__default = /* @__PURE__ */ _interopDefaultLegacy(didCommentWithSession);
9
10
  const themeProvider__default = /* @__PURE__ */ _interopDefaultLegacy(themeProvider);
11
+ const uploadProvider__default = /* @__PURE__ */ _interopDefaultLegacy(uploadProvider);
10
12
  Object.defineProperty(exports, "DIDComment", {
11
13
  enumerable: true,
12
14
  get: () => didComment__default.default
@@ -19,3 +21,7 @@ Object.defineProperty(exports, "ThemeProvider", {
19
21
  enumerable: true,
20
22
  get: () => themeProvider__default.default
21
23
  });
24
+ Object.defineProperty(exports, "UploadProvider", {
25
+ enumerable: true,
26
+ get: () => uploadProvider__default.default
27
+ });
package/lib/es/api.js CHANGED
@@ -7,7 +7,7 @@ request.interceptors.request.use(
7
7
  (error) => Promise.reject(error)
8
8
  );
9
9
  const fetchRatingStats = async (id) => {
10
- const { data } = await request.get(`/ratings/${id}`);
10
+ const { data } = await request.get(`/ratings/${id}/stats`);
11
11
  return data;
12
12
  };
13
13
  const fetchComments = async (params) => {
@@ -0,0 +1,18 @@
1
+ import { EditorConfigProvider } from "@blocklet/editor";
2
+ import { upload } from "./uploader";
3
+ import { jsx } from "react/jsx-runtime";
4
+ function UploadProvider(props) {
5
+ return /* @__PURE__ */ jsx(EditorConfigProvider, {
6
+ value: {
7
+ uploader: {
8
+ upload: (file) => upload(file).then((url) => ({
9
+ url
10
+ }))
11
+ }
12
+ },
13
+ ...props
14
+ });
15
+ }
16
+ export {
17
+ UploadProvider as default
18
+ };