@edifice.io/react 2.5.4-develop-pedago.20251212164024 → 2.5.4-develop-b2school.20251215115453

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 (60) hide show
  1. package/dist/components/AppIcon/index.d.ts +1 -0
  2. package/dist/components/Divider/Divider.d.ts +38 -0
  3. package/dist/components/Divider/Divider.js +11 -0
  4. package/dist/components/Divider/index.d.ts +2 -0
  5. package/dist/components/Flex/Flex.js +1 -1
  6. package/dist/components/Menu/components/MenuButton.d.ts +2 -0
  7. package/dist/components/Menu/components/MenuButton.js +13 -4
  8. package/dist/components/SegmentedControl/SegmentedControl.d.ts +59 -0
  9. package/dist/components/SegmentedControl/SegmentedControl.js +21 -0
  10. package/dist/components/SegmentedControl/index.d.ts +2 -0
  11. package/dist/components/Select/Select.d.ts +6 -2
  12. package/dist/components/Select/Select.js +10 -4
  13. package/dist/components/index.d.ts +2 -0
  14. package/dist/editor.js +40 -36
  15. package/dist/hooks/index.d.ts +1 -0
  16. package/dist/hooks/useInfiniteScroll/index.d.ts +1 -0
  17. package/dist/hooks/useInfiniteScroll/useInfiniteScroll.d.ts +33 -0
  18. package/dist/hooks/useInfiniteScroll/useInfiniteScroll.js +20 -0
  19. package/dist/icons.js +296 -298
  20. package/dist/index.js +180 -170
  21. package/dist/modals.js +8 -6
  22. package/dist/modules/comments/components/Comment.js +4 -2
  23. package/dist/modules/comments/components/CommentList.js +1 -1
  24. package/dist/modules/comments/components/DeleteModal.js +14 -8
  25. package/dist/modules/editor/components/Editor/EditorPreview.d.ts +14 -0
  26. package/dist/modules/editor/components/Editor/EditorPreview.js +56 -0
  27. package/dist/modules/editor/components/Editor/EditorPreviewSkeleton.d.ts +8 -0
  28. package/dist/modules/editor/components/Editor/EditorPreviewSkeleton.js +24 -0
  29. package/dist/modules/editor/components/Editor/index.d.ts +2 -0
  30. package/dist/modules/editor/components/Renderer/MediaRenderer.js +2 -2
  31. package/dist/modules/editor/hooks/useResizeMedia.js +3 -3
  32. package/dist/modules/icons/components/IconClockAlert.d.ts +7 -0
  33. package/dist/modules/icons/components/IconClockAlert.js +17 -0
  34. package/dist/modules/icons/components/index.d.ts +1 -2
  35. package/dist/modules/modals/ShareModal/ShareBookmark.d.ts +1 -1
  36. package/dist/modules/modals/ShareModal/ShareBookmark.js +5 -2
  37. package/dist/modules/modals/ShareModal/ShareModal.d.ts +1 -11
  38. package/dist/modules/modals/ShareModal/ShareModal.js +13 -105
  39. package/dist/modules/modals/ShareModal/ShareResources.d.ts +174 -0
  40. package/dist/modules/modals/ShareModal/ShareResources.js +137 -0
  41. package/dist/modules/modals/ShareModal/hooks/useSearch.d.ts +2 -1
  42. package/dist/modules/modals/ShareModal/hooks/useSearch.js +3 -2
  43. package/dist/modules/modals/ShareModal/hooks/useShare.d.ts +12 -5
  44. package/dist/modules/modals/ShareModal/hooks/useShare.js +20 -13
  45. package/dist/modules/modals/ShareModal/hooks/useShareBookmark.d.ts +1 -1
  46. package/dist/modules/modals/ShareModal/hooks/useShareBookmark.js +1 -1
  47. package/dist/modules/modals/ShareModal/index.d.ts +3 -1
  48. package/dist/modules/multimedia/FileCard/FileCard.js +1 -1
  49. package/dist/modules/multimedia/FileCard/FileIcon.js +1 -1
  50. package/dist/modules/multimedia/Linker/InternalLinker/InternalLinker.js +1 -4
  51. package/dist/style.css +1 -1
  52. package/dist/utilities/index.d.ts +1 -0
  53. package/dist/utilities/react-query/index.d.ts +1 -0
  54. package/dist/utilities/react-query/react-query-utils.d.ts +21 -0
  55. package/dist/utilities/react-query/react-query-utils.js +13 -0
  56. package/package.json +6 -6
  57. package/dist/modules/icons/components/IconThumbDown.d.ts +0 -7
  58. package/dist/modules/icons/components/IconThumbDown.js +0 -12
  59. package/dist/modules/icons/components/IconThumbUp.d.ts +0 -7
  60. package/dist/modules/icons/components/IconThumbUp.js +0 -12
@@ -58,7 +58,8 @@ const defaultActions = [{
58
58
  resourceId,
59
59
  resourceCreatorId,
60
60
  shareRights,
61
- shareDispatch
61
+ shareDispatch,
62
+ urlResourceRights
62
63
  }) => {
63
64
  const [state, dispatch] = useReducer(reducer, initialState), debouncedSearchInputValue = useDebounce(state.searchInputValue, 500), {
64
65
  isAdml
@@ -82,7 +83,7 @@ const defaultActions = [{
82
83
  type: "isSearching",
83
84
  payload: !0
84
85
  }), !isAdml && debouncedSearchInputValue2.length >= 1 || isAdml && debouncedSearchInputValue2.length >= 3) {
85
- const resSearchShareSubjects = await odeServices.share().searchShareSubjects(appCode, resourceId, debouncedSearchInputValue2);
86
+ const resSearchShareSubjects = await odeServices.share().searchShareSubjects(appCode, resourceId, debouncedSearchInputValue2, urlResourceRights);
86
87
  dispatch({
87
88
  type: "addApiResult",
88
89
  payload: resSearchShareSubjects
@@ -1,5 +1,5 @@
1
- import { ShareRight, ShareRightAction, ShareRightActionDisplayName, ShareRightWithVisibles } from '@edifice.io/client';
2
- import { ShareOptions, ShareResourceMutation } from '../ShareModal';
1
+ import { ShareRight, ShareRightAction, ShareRightActionDisplayName, ShareRightWithVisibles, ShareUrls } from '@edifice.io/client';
2
+ import { ShareOptions, ShareResourceMutation } from '../ShareResources';
3
3
  interface UseShareResourceModalProps {
4
4
  /**
5
5
  * Resource ID (assetId)
@@ -15,10 +15,15 @@ interface UseShareResourceModalProps {
15
15
  resourceCreatorId: ShareOptions['resourceCreatorId'];
16
16
  shareResource?: ShareResourceMutation;
17
17
  onSuccess: () => void;
18
- setIsLoading: (value: boolean) => void;
18
+ setIsLoading?: (value: boolean) => void;
19
+ resourceShareRights?: ShareRightWithVisibles;
20
+ resourceShareRightActions?: ShareRightAction[];
21
+ filteredActions?: ShareRightActionDisplayName[];
22
+ shareUrls?: ShareUrls;
19
23
  }
20
24
  type State = {
21
25
  isSharing: boolean;
26
+ isDirty?: boolean;
22
27
  shareRights: ShareRightWithVisibles;
23
28
  shareRightActions: ShareRightAction[];
24
29
  };
@@ -38,9 +43,10 @@ export type ShareAction = {
38
43
  type: 'isSharing';
39
44
  payload: boolean;
40
45
  };
41
- export default function useShare({ resourceId, resourceRights, resourceCreatorId, shareResource, setIsLoading, onSuccess, }: UseShareResourceModalProps): {
46
+ export default function useShare({ resourceId, resourceRights, resourceCreatorId, shareResource, setIsLoading, onSuccess, filteredActions, shareUrls, }: UseShareResourceModalProps): {
42
47
  state: {
43
48
  isSharing: boolean;
49
+ isDirty?: boolean;
44
50
  shareRights: ShareRightWithVisibles;
45
51
  shareRightActions: ShareRightAction[];
46
52
  };
@@ -48,7 +54,8 @@ export default function useShare({ resourceId, resourceRights, resourceCreatorId
48
54
  currentIsAuthor: () => boolean;
49
55
  myAvatar: string;
50
56
  handleDeleteRow: (shareRight: ShareRight) => void;
51
- handleShare: () => Promise<void>;
57
+ handleShare: (notify?: boolean) => Promise<void>;
52
58
  toggleRight: (shareRight: ShareRight, actionName: ShareRightActionDisplayName) => void;
59
+ isDirty: boolean;
53
60
  };
54
61
  export {};
@@ -6,6 +6,7 @@ import useUser from "../../../../hooks/useUser/useUser.js";
6
6
  import useToast from "../../../../hooks/useToast/useToast.js";
7
7
  const initialState = {
8
8
  isSharing: !1,
9
+ isDirty: !1,
9
10
  shareRights: {
10
11
  rights: [],
11
12
  visibleBookmarks: [],
@@ -24,17 +25,20 @@ function reducer(state, action) {
24
25
  case "deleteRow":
25
26
  return {
26
27
  ...state,
27
- shareRights: action.payload
28
+ shareRights: action.payload,
29
+ isDirty: !0
28
30
  };
29
31
  case "updateShareRights":
30
32
  return {
31
33
  ...state,
32
- shareRights: action.payload
34
+ shareRights: action.payload,
35
+ isDirty: !0
33
36
  };
34
37
  case "toggleRight":
35
38
  return {
36
39
  ...state,
37
- shareRights: action.payload
40
+ shareRights: action.payload,
41
+ isDirty: !0
38
42
  };
39
43
  case "isSharing":
40
44
  return {
@@ -51,7 +55,9 @@ function useShare({
51
55
  resourceCreatorId,
52
56
  shareResource,
53
57
  setIsLoading,
54
- onSuccess
58
+ onSuccess,
59
+ filteredActions,
60
+ shareUrls
55
61
  }) {
56
62
  const {
57
63
  appCode
@@ -64,18 +70,18 @@ function useShare({
64
70
  useEffect(() => {
65
71
  resourceId && (async () => {
66
72
  try {
67
- const [shareRightActions, shareRights] = await Promise.all([odeServices.share().getActionsForApp(appCode), odeServices.share().getRightsForResource(appCode, resourceId)]);
73
+ const [shareRightActions, shareRights] = await Promise.all([odeServices.share().getActionsForApp(appCode, shareUrls == null ? void 0 : shareUrls.getShareMapping), odeServices.share().getRightsForResource(appCode, resourceId, shareUrls)]), filteredShareRightActions = filteredActions ? shareRightActions.filter((action) => filteredActions.includes(action.id)) : shareRightActions;
68
74
  dispatch({
69
75
  type: "init",
70
76
  payload: {
71
- shareRightActions,
77
+ shareRightActions: filteredShareRightActions,
72
78
  shareRights
73
79
  }
74
80
  });
75
81
  } catch (error) {
76
82
  console.error(error);
77
83
  }
78
- setIsLoading(!1);
84
+ setIsLoading == null || setIsLoading(!1);
79
85
  })();
80
86
  }, [resourceId]);
81
87
  const toggleRight = (shareRight, actionName) => {
@@ -143,7 +149,7 @@ function useShare({
143
149
  }
144
150
  });
145
151
  },
146
- handleShare: async () => {
152
+ handleShare: async (notify = !0) => {
147
153
  dispatch({
148
154
  type: "isSharing",
149
155
  payload: !0
@@ -169,12 +175,12 @@ function useShare({
169
175
  resourceId,
170
176
  rights: shares
171
177
  });
172
- notifySuccess(result);
178
+ notify && notifySuccess(result);
173
179
  } else {
174
- const result = await odeServices.share().saveRights(appCode, resourceId, shares);
175
- notifySuccess(result);
180
+ const result = await odeServices.share().saveRights(appCode, resourceId, shares, shareUrls);
181
+ notify && notifySuccess(result);
176
182
  }
177
- onSuccess();
183
+ shareUrls != null && shareUrls.getResourceRights && odeServices.cache().clearCache(shareUrls.getResourceRights), onSuccess();
178
184
  } catch (error) {
179
185
  typeof error == "string" && toast.error(t("explorer.shared.status.error")), typeof error == "object" && toast.error(t((error == null ? void 0 : error.error) || "explorer.shared.status.error")), console.error("Failed to save share", error);
180
186
  } finally {
@@ -184,7 +190,8 @@ function useShare({
184
190
  });
185
191
  }
186
192
  },
187
- toggleRight
193
+ toggleRight,
194
+ isDirty: !!state.isDirty
188
195
  };
189
196
  }
190
197
  export {
@@ -16,7 +16,7 @@ export declare const useShareBookmark: ({ shareRights, shareDispatch, }: UseShar
16
16
  bookmark: BookmarkProps;
17
17
  handleBookmarkChange: () => void;
18
18
  setBookmark: Dispatch<import('react').SetStateAction<BookmarkProps>>;
19
- handleOnSave: () => void;
19
+ handleOnSave: () => Promise<void>;
20
20
  toggleBookmark: () => void;
21
21
  toggleBookmarkInput: Dispatch<import('react').SetStateAction<boolean>>;
22
22
  };
@@ -56,7 +56,7 @@ const useShareBookmark = ({
56
56
  handleOnSave: () => {
57
57
  var _a;
58
58
  const inputValue = ((_a = refBookmark.current) == null ? void 0 : _a.value) || "";
59
- saveBookmark(inputValue);
59
+ return saveBookmark(inputValue);
60
60
  },
61
61
  toggleBookmark,
62
62
  toggleBookmarkInput
@@ -1,3 +1,5 @@
1
- export { default as ShareModal } from './ShareModal';
2
1
  export { default as ShareBlog } from './apps/ShareBlog';
3
2
  export { default as useShareMutation } from './hooks/useShareMutation';
3
+ export { default as ShareModal } from './ShareModal';
4
+ export * from './ShareResources';
5
+ export { default as ShareResources } from './ShareResources';
@@ -82,7 +82,7 @@ const FileCard = ({
82
82
  };
83
83
  return roleMappings[type2] || roleMappings.unknown;
84
84
  }
85
- const roleMap = getRoleMap(type ?? "unknown"), file = clsx("file position-relative rounded", (roleMap == null ? void 0 : roleMap.color) ?? "bg-yellow-200"), mediaSrc = doc.eType === "resource" ? doc.thumbnail : type === "img" || type === "video" ? odeServices.workspace().getThumbnailUrl(doc) : null, hasThumbnail = useThumbnail(mediaSrc, {
85
+ const roleMap = getRoleMap(type ?? "unknown"), file = clsx("file position-relative rounded", (roleMap == null ? void 0 : roleMap.color) ?? "bg-yellow-200"), mediaSrc = type === "img" || type === "video" ? odeServices.workspace().getThumbnailUrl(doc) : null, hasThumbnail = useThumbnail(mediaSrc, {
86
86
  ref
87
87
  }), imageStyles = hasThumbnail && {
88
88
  backgroundImage: `url(${mediaSrc})`,
@@ -5,7 +5,7 @@ const FileIcon = ({
5
5
  type,
6
6
  roleMap
7
7
  }) => {
8
- const hasShadow = typeof (roleMap == null ? void 0 : roleMap.icon) != "string" && type !== "unknown" && (roleMap == null ? void 0 : roleMap.hasShadow) !== !1, fileicon = clsx("position-absolute rounded-circle top-50 start-50 translate-middle", {
8
+ const hasShadow = typeof (roleMap == null ? void 0 : roleMap.icon) != "string" && type !== "unknown" && (roleMap == null ? void 0 : roleMap.hasShadow) !== !1, fileicon = clsx("position-absolute top-50 start-50 translate-middle", {
9
9
  "p-12 rounded-circle shadow": hasShadow
10
10
  }, roleMap == null ? void 0 : roleMap.color);
11
11
  return /* @__PURE__ */ jsx("div", { className: fileicon, children: (roleMap == null ? void 0 : roleMap.icon) ?? /* @__PURE__ */ jsx(SvgIconPaperclip, {}) });
@@ -111,10 +111,7 @@ const InternalLinker = ({
111
111
  }, [resources]), /* @__PURE__ */ jsxs("div", { className: "d-flex flex-column flex-fill overflow-hidden", children: [
112
112
  /* @__PURE__ */ jsxs("div", { className: "search d-flex bg-light rounded-top border border-bottom-0", children: [
113
113
  showApplicationSelector && /* @__PURE__ */ jsx("div", { className: "flex-shrink-1 px-8 py-12 border-end", children: /* @__PURE__ */ jsxs(Dropdown, { overflow: !0, children: [
114
- /* @__PURE__ */ jsx(Dropdown.Trigger, { icon: /* @__PURE__ */ jsx("div", { className: "pe-8", children: (selectedApplication == null ? void 0 : selectedApplication.icon) || /* @__PURE__ */ jsx(SvgIconApplications, {}) }), label: /* @__PURE__ */ jsxs("span", { className: "d-md-inline d-sm-none", children: [
115
- " ",
116
- t((selectedApplication == null ? void 0 : selectedApplication.displayName) || "bbm.linker.int.choose")
117
- ] }), variant: "ghost", size: "md" }),
114
+ /* @__PURE__ */ jsx(Dropdown.Trigger, { icon: /* @__PURE__ */ jsx("div", { className: "pe-8", children: (selectedApplication == null ? void 0 : selectedApplication.icon) || /* @__PURE__ */ jsx(SvgIconApplications, {}) }), label: t((selectedApplication == null ? void 0 : selectedApplication.displayName) || "bbm.linker.int.choose"), variant: "ghost", size: "md" }),
118
115
  /* @__PURE__ */ jsx(Dropdown.Menu, { children: options == null ? void 0 : options.map((option) => /* @__PURE__ */ jsx(Dropdown.Item, { icon: option.icon, onClick: () => handleOptionClick(option), children: option.displayName }, option.application)) })
119
116
  ] }) }),
120
117
  /* @__PURE__ */ jsx("div", { className: "flex-grow-1 align-self-center", children: /* @__PURE__ */ jsx("form", { className: "gap-16 d-flex w-100 align-items-center px-16 py-8", onSubmit: handleSubmit, children: /* @__PURE__ */ jsx(SearchBar, { isVariant: !0, placeholder: t("search"), size: "lg", className: "w-100", disabled: !selectedApplication, onChange: handleSearchChange }) }) })
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- :root .edifice{--ant-color-primary: var(--edifice-primary);--ant-color-success: var(--edifice-success);--ant-color-warning: var(--edifice-warning);--ant-blue: var(--edifice-blue);--ant-purple: var(--edifice-purple);--ant-cyan: var(--edifice-cyan);--ant-green: var(--edifice-green);--ant-magenta: var(--edifice-magenta);--ant-pink: var(--edifice-pink);--ant-red: var(--edifice-red);--ant-orange: var(--edifice-orange);--ant-yellow: var(--edifice-yellow);--ant-color-text-base: var(--edifice-body-color);--ant-color-bg-base: var(--edifice-body-bg)}
1
+ :root .edifice{--ant-border-radius: var(--edifice-border-radius)}
@@ -1,3 +1,4 @@
1
1
  export * from './check-user-rights';
2
2
  export * from './emptyscreen-mapping';
3
+ export * from './react-query';
3
4
  export * from './refs';
@@ -0,0 +1 @@
1
+ export * from './react-query-utils';
@@ -0,0 +1,21 @@
1
+ import { InvalidateQueryFilters, QueryClient } from '../../node_modules/@tanstack/react-query';
2
+ /**
3
+ * Invalidates queries and resets infinite query data to only contain the first page.
4
+ *
5
+ * This utility function is useful when you want to invalidate a query but also ensure
6
+ * that any infinite query data is reset to show only the first page, removing any
7
+ * previously loaded subsequent pages.
8
+ *
9
+ * @param queryClient - The TanStack Query client instance used to manage queries
10
+ * @param options - The invalidate query filters that specify which queries to invalidate
11
+ * @returns The result of the invalidateQueries operation, or undefined if no queryKey is provided
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * // Invalidate user queries and reset to first page only
16
+ * invalidateQueriesWithFirstPage(queryClient, {
17
+ * queryKey: ['users']
18
+ * });
19
+ * ```
20
+ */
21
+ export declare function invalidateQueriesWithFirstPage(queryClient: QueryClient, options: InvalidateQueryFilters): Promise<void> | undefined;
@@ -0,0 +1,13 @@
1
+ function invalidateQueriesWithFirstPage(queryClient, options) {
2
+ if (options.queryKey)
3
+ return queryClient.setQueriesData({
4
+ queryKey: options.queryKey
5
+ }, (oldData) => oldData != null && oldData.pages ? {
6
+ ...oldData,
7
+ pages: [oldData.pages[0]],
8
+ pageParams: [oldData.pageParams[0]]
9
+ } : oldData), queryClient.invalidateQueries(options);
10
+ }
11
+ export {
12
+ invalidateQueriesWithFirstPage
13
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@edifice.io/react",
3
- "version": "2.5.4-develop-pedago.20251212164024",
3
+ "version": "2.5.4-develop-b2school.20251215115453",
4
4
  "description": "Edifice React Library",
5
5
  "keywords": [
6
6
  "react",
@@ -133,9 +133,9 @@
133
133
  "react-slugify": "^3.0.3",
134
134
  "swiper": "^10.1.0",
135
135
  "ua-parser-js": "^1.0.36",
136
- "@edifice.io/bootstrap": "2.5.4-develop-pedago.20251212164024",
137
- "@edifice.io/tiptap-extensions": "2.5.4-develop-pedago.20251212164024",
138
- "@edifice.io/utilities": "2.5.4-develop-pedago.20251212164024"
136
+ "@edifice.io/bootstrap": "2.5.4-develop-b2school.20251215115453",
137
+ "@edifice.io/utilities": "2.5.4-develop-b2school.20251215115453",
138
+ "@edifice.io/tiptap-extensions": "2.5.4-develop-b2school.20251215115453"
139
139
  },
140
140
  "devDependencies": {
141
141
  "@babel/plugin-transform-react-pure-annotations": "^7.23.3",
@@ -166,8 +166,8 @@
166
166
  "vite": "^5.4.11",
167
167
  "vite-plugin-dts": "^4.1.0",
168
168
  "vite-tsconfig-paths": "^5.0.1",
169
- "@edifice.io/client": "2.5.4-develop-pedago.20251212164024",
170
- "@edifice.io/config": "2.5.4-develop-pedago.20251212164024"
169
+ "@edifice.io/client": "2.5.4-develop-b2school.20251215115453",
170
+ "@edifice.io/config": "2.5.4-develop-b2school.20251215115453"
171
171
  },
172
172
  "peerDependencies": {
173
173
  "@react-spring/web": "^9.7.5",
@@ -1,7 +0,0 @@
1
- import { SVGProps } from 'react';
2
- interface SVGRProps {
3
- title?: string;
4
- titleId?: string;
5
- }
6
- declare const SvgIconThumbDown: ({ title, titleId, ...props }: SVGProps<SVGSVGElement> & SVGRProps) => import("react/jsx-runtime").JSX.Element;
7
- export default SvgIconThumbDown;
@@ -1,12 +0,0 @@
1
- import { jsxs, jsx } from "react/jsx-runtime";
2
- const SvgIconThumbDown = ({
3
- title,
4
- titleId,
5
- ...props
6
- }) => /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", fill: "none", viewBox: "0 0 24 24", "aria-hidden": "true", "aria-labelledby": titleId, ...props, children: [
7
- title ? /* @__PURE__ */ jsx("title", { id: titleId, children: title }) : null,
8
- /* @__PURE__ */ jsx("path", { fill: "currentColor", fillRule: "evenodd", d: "M8.069 15a1.67 1.67 0 0 0 1.16 1.588l3.007-6.765V1.667H3.66a.834.834 0 0 0-.834.708v.002l-1.15 7.498-.009.09a.835.835 0 0 0 .843.869h4.726c.46 0 .833.373.833.833zm8.333-12.5a.833.833 0 0 0-.833-.833h-1.667v7.5h1.667a.833.833 0 0 0 .833-.833zm-10 10H2.52a2.5 2.5 0 0 1-2.49-2.875l1.15-7.5A2.5 2.5 0 0 1 3.668 0h11.9a2.5 2.5 0 0 1 2.5 2.5v5.833a2.5 2.5 0 0 1-2.5 2.5H13.61l-3.114 7.005-.057.108a.83.83 0 0 1-.704.387 3.333 3.333 0 0 1-3.334-3.333z", clipRule: "evenodd" })
9
- ] });
10
- export {
11
- SvgIconThumbDown as default
12
- };
@@ -1,7 +0,0 @@
1
- import { SVGProps } from 'react';
2
- interface SVGRProps {
3
- title?: string;
4
- titleId?: string;
5
- }
6
- declare const SvgIconThumbUp: ({ title, titleId, ...props }: SVGProps<SVGSVGElement> & SVGRProps) => import("react/jsx-runtime").JSX.Element;
7
- export default SvgIconThumbUp;
@@ -1,12 +0,0 @@
1
- import { jsxs, jsx } from "react/jsx-runtime";
2
- const SvgIconThumbUp = ({
3
- title,
4
- titleId,
5
- ...props
6
- }) => /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", fill: "none", viewBox: "0 0 24 24", "aria-hidden": "true", "aria-labelledby": titleId, ...props, children: [
7
- title ? /* @__PURE__ */ jsx("title", { id: titleId, children: title }) : null,
8
- /* @__PURE__ */ jsx("path", { fill: "currentColor", fillRule: "evenodd", d: "M10 3.333a1.67 1.67 0 0 0-1.16-1.587L5.833 8.511v8.156h8.576a.834.834 0 0 0 .833-.708l.001-.002 1.15-7.498.008-.09a.834.834 0 0 0-.842-.869h-4.726A.833.833 0 0 1 10 6.667zm-8.333 12.5a.833.833 0 0 0 .833.834h1.667v-7.5H2.5a.833.833 0 0 0-.833.833zm10-10h3.883a2.5 2.5 0 0 1 2.49 2.876l-1.15 7.5a2.5 2.5 0 0 1-2.49 2.124H2.5a2.5 2.5 0 0 1-2.5-2.5V10a2.5 2.5 0 0 1 2.5-2.5h1.958L7.572.495l.057-.108A.83.83 0 0 1 8.333 0a3.333 3.333 0 0 1 3.334 3.333z", clipRule: "evenodd" })
9
- ] });
10
- export {
11
- SvgIconThumbUp as default
12
- };