@soul-refiner/design-system 2.13.13 → 2.14.2
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/assets/custom_emoji_data.json.js +1 -0
- package/dist/components/custom/help_center/help_center-auth.js +1 -0
- package/dist/components/custom/help_center/help_center-customModal.js +7 -0
- package/dist/components/custom/help_center/help_center-defaultArticle.js +60 -0
- package/dist/components/custom/help_center/help_center-editable-content.js +31 -0
- package/dist/components/custom/help_center/help_center-mainPage.js +32 -0
- package/dist/components/custom/help_center/help_center-sidebar.js +1 -0
- package/dist/components/custom/help_center/help_center.js +1 -0
- package/dist/components/custom/help_center/help_center_articlle-list.js +30 -0
- package/dist/components/custom/help_center/help_center_categoryList.js +55 -0
- package/dist/components/custom/help_center/help_center_dataStore.js +1 -0
- package/dist/components/custom/help_center/help_center_layout.js +64 -0
- package/dist/components/custom/help_center/help_center_sub-category.js +27 -0
- package/dist/components/custom/help_center/types.js +1 -0
- package/dist/components/editor/context.js +1 -1
- package/dist/components/editor/editor.js +1 -1
- package/dist/components/editor/plugins/blocks/qa.js +2 -2
- package/dist/components/feedback/emojiPicker/constants.js +1 -0
- package/dist/components/feedback/emojiPicker/emoji-picker.js +84 -0
- package/dist/components/feedback/emojiPicker/emoji-reactions.js +17 -0
- package/dist/components/feedback/emojiPicker/sparkle-reaction.js +5 -0
- package/dist/components/feedback/emojiPicker/utils.js +1 -0
- package/dist/components/media/audio-player/progress-bar.js +4 -0
- package/dist/components/media/video/video.js +1 -1
- package/dist/components/media/video-player/playlist-item.js +2 -2
- package/dist/components/surfaces/comment/comment.js +8 -8
- package/dist/components/surfaces/discuss_post/discuss_post.js +7 -7
- package/dist/components/surfaces/post/post.js +2 -2
- package/dist/emojis/64-2Q7F4PKG.png +0 -0
- package/dist/index.js +1 -1
- package/dist/src/components/custom/help_center/help_center-auth.d.ts +7 -0
- package/dist/src/components/custom/help_center/help_center-customModal.d.ts +4 -0
- package/dist/src/components/custom/help_center/help_center-defaultArticle.d.ts +15 -0
- package/dist/src/components/custom/help_center/help_center-editable-content.d.ts +7 -0
- package/dist/src/components/custom/help_center/help_center-mainPage.d.ts +3 -0
- package/dist/src/components/custom/help_center/help_center-sidebar.d.ts +3 -0
- package/dist/src/components/custom/help_center/help_center.d.ts +13 -0
- package/dist/src/components/custom/help_center/help_center_articlle-list.d.ts +7 -0
- package/dist/src/components/custom/help_center/help_center_categoryList.d.ts +6 -0
- package/dist/src/components/custom/help_center/help_center_dataStore.d.ts +4 -0
- package/dist/src/components/custom/help_center/help_center_layout.d.ts +3 -0
- package/dist/src/components/custom/help_center/help_center_seedData.d.ts +2 -0
- package/dist/src/components/custom/help_center/help_center_sub-category.d.ts +7 -0
- package/dist/src/components/custom/help_center/index.d.ts +1 -0
- package/dist/src/components/custom/help_center/types.d.ts +124 -0
- package/dist/src/components/editor/context.d.ts +1 -0
- package/dist/src/components/editor/editor.d.ts +2 -1
- package/dist/src/components/feedback/emojiPicker/constants.d.ts +17 -0
- package/dist/src/components/feedback/emojiPicker/emoji-picker.d.ts +8 -0
- package/dist/src/components/feedback/emojiPicker/emoji-reactions.d.ts +12 -0
- package/dist/src/components/feedback/emojiPicker/grid-mapper.d.ts +2 -0
- package/dist/src/components/feedback/emojiPicker/index.d.ts +3 -0
- package/dist/src/components/feedback/emojiPicker/sparkle-reaction.d.ts +4 -0
- package/dist/src/components/feedback/emojiPicker/types.d.ts +37 -0
- package/dist/src/components/feedback/emojiPicker/utils.d.ts +3 -0
- package/dist/src/components/feedback/index.d.ts +3 -0
- package/dist/src/components/iconography/EmojiPicker/Reaction.d.ts +9 -0
- package/dist/src/components/iconography/EmojiPicker/emoji-picker.d.ts +18 -0
- package/dist/src/components/iconography/EmojiPicker/grid-mapper.d.ts +2 -0
- package/dist/src/components/media/audio-player/progress-bar.d.ts +14 -0
- package/dist/src/components/media/video/video.d.ts +2 -1
- package/dist/src/components/surfaces/comment/comment.d.ts +3 -1
- package/dist/src/components/surfaces/discuss_post/discuss_post.d.ts +3 -1
- package/dist/src/components/surfaces/post/post.d.ts +1 -0
- package/dist/src/emoji/sparkle-emoji.d.ts +15 -0
- package/dist/src/emoji/sprite-emoji.d.ts +9 -0
- package/dist/src/hooks/useSparkle.d.ts +12 -0
- package/dist/src/styles/globals.css +1 -1
- package/dist/src/utils/debounce.d.ts +1 -0
- package/dist/styles/output.css +1911 -0
- package/package.json +116 -113
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
"use strict";var React=require("react"),Link=require("next/link"),styled=require("styled-components"),regex=require("../../../common/regex.js"),styles=require("../../../common/styles.js"),box=require("../../atoms/box/box.js"),hide=require("../../atoms/hide/hide.js"),highlighter=require("../../atoms/highlighter/highlighter.js"),time_ago=require("../../atoms/time_ago/time_ago.js"),paragraph=require("../../atoms/typography/paragraph.js"),avatar=require("../../iconography/avatar/avatar.js"),helpers=require("./helpers.js");function _interopDefaultCompat(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var React__default=_interopDefaultCompat(React),Link__default=_interopDefaultCompat(Link),styled__default=_interopDefaultCompat(styled);const MAX_REACTIONS_SHOWN=5,DiscussPost=({avatarSx:e,content:t,createdDate:a,editActions:r,editing:l,firstNewPost:
|
|
2
|
+
"use strict";var React=require("react"),Link=require("next/link"),styled=require("styled-components"),regex=require("../../../common/regex.js"),styles=require("../../../common/styles.js"),box=require("../../atoms/box/box.js"),hide=require("../../atoms/hide/hide.js"),highlighter=require("../../atoms/highlighter/highlighter.js"),time_ago=require("../../atoms/time_ago/time_ago.js"),paragraph=require("../../atoms/typography/paragraph.js"),avatar=require("../../iconography/avatar/avatar.js"),helpers=require("./helpers.js"),emojiReactions=require("../../feedback/emojiPicker/emoji-reactions.js");function _interopDefaultCompat(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var React__default=_interopDefaultCompat(React),Link__default=_interopDefaultCompat(Link),styled__default=_interopDefaultCompat(styled);const MAX_REACTIONS_SHOWN=5,DiscussPost=({avatarSx:e,content:t,createdDate:a,editActions:r,editing:l,firstNewPost:o,handleContentChange:i,id:n,onReact:d,popupActions:u,latestReaction:c,popupSx:s,reactions:p,reactionModal:f,replyContent:x,replyUserHref:_,replyUserImageUri:g,replyUserName:m,sx:h,userHref:R,userImageUri:y,userName:b,isAdmin:$,userReactions:v})=>{const E=React__default.default.useRef(null),[w,k]=React__default.default.useState(!1);React__default.default.useEffect(()=>{E.current&&(E.current.value=t)},[t]),React__default.default.useEffect(()=>{E?.current&&E.current.value!==t&&i&&i(E.current.value)},[w]);var j=React__default.default.useMemo(()=>helpers.isSameDay(new Date,new Date(a))?React__default.default.createElement(time_ago.TimeAgo,{date:a}):new Intl.DateTimeFormat("en-US",{minute:"numeric",hour:"numeric",day:"numeric",month:"long",year:"numeric"}).format(a),[a]),A=React__default.default.useMemo(()=>{if(p){let e=Object.entries(p);return(e=f?e.slice(0,MAX_REACTIONS_SHOWN):e).sort((e,t)=>e[1]<t[1]?1:-1).map(([e,t])=>React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(emojiReactions.EmojiReaction,{key:n+e,emoji:e,isActive:v?.includes(e),onReact:()=>d(e),count:t,showSparkle:e===c,showCount:!0})))}},[p,v]);return React__default.default.createElement(Wrapper,{$editing:l,$firstNewPost:o,$sx:h,id:n},React__default.default.createElement(hide.HideButRender,{show:!l&&!!x},React__default.default.createElement(box.Box,{$align:"center",$gap:4,sx:"margin-left: 56px;"},React__default.default.createElement(ReplyMarker,null),React__default.default.createElement(avatar.Avatar,{as:Link__default.default,href:_,image:g,size:16,sx:"img { cursor: pointer;}"}),React__default.default.createElement(paragraph.P,{as:Link__default.default,href:_,$color:"primary-blue-2",$fontSize:12,$lineHeight:16,sx:"flex-shrink: 0; text-decoration: none;"},"@",m),React__default.default.createElement(paragraph.P,{sx:"word-break: break-word; white-space: pre-line;",$fontSize:12,$lineHeight:16,$textClampLines:1},x))),React__default.default.createElement(hide.HideButRender,{show:l},React__default.default.createElement(box.Box,{$gap:16,$align:"flex-start",className:"editing"},React__default.default.createElement(avatar.Avatar,{as:Link__default.default,href:R,image:y,size:40,sx:e}),React__default.default.createElement(box.Box,{$gap:10,sx:`
|
|
3
3
|
flex: 1;
|
|
4
4
|
background-color: var(--color-grey-10);
|
|
5
5
|
border-radius: 8px;
|
|
6
6
|
@media (max-width: 768px) {
|
|
7
7
|
flex-direction: column;
|
|
8
|
-
min-height: calc(${
|
|
8
|
+
min-height: calc(${E?.current?.style?.height||"360px"} + 24px);
|
|
9
9
|
}
|
|
10
|
-
`},React__default.default.createElement(TextAreaElement,{onChange:()=>
|
|
10
|
+
`},React__default.default.createElement(TextAreaElement,{onChange:()=>k(e=>!e),onInput:e=>{e=e.target;e.style.height="48px",e.style.height=Math.max(e.scrollHeight,e.offsetHeight)+"px"},ref:E}),React__default.default.createElement(EditActionsWrapper,null,r)))),React__default.default.createElement(hide.HideButRender,{show:!l},React__default.default.createElement(box.Box,{$gap:16,$align:"flex-start"},React__default.default.createElement(PopupActionsWrapper,{$sx:s,className:"popup-actions"},u),React__default.default.createElement(avatar.Avatar,{as:Link__default.default,href:R,image:y,size:40,sx:"img { cursor: pointer; }; "+e}),React__default.default.createElement(box.Box,{$gap:4,$dir:"column",sx:"flex: 1;"},React__default.default.createElement(box.Box,{$align:"center",$gap:8,sx:`height: 20px;
|
|
11
11
|
@media screen and (max-width: 400px) {
|
|
12
12
|
flex-direction: column;
|
|
13
13
|
align-items: flex-start;
|
|
14
14
|
height: 40px;
|
|
15
15
|
gap: 0px;
|
|
16
|
-
}`},React__default.default.createElement(paragraph.P,{$bold:!0,$color
|
|
16
|
+
}`},React__default.default.createElement(paragraph.P,{$bold:!0,$color:$?"special-orange-1":"primary-blue-2",$fontSize:14,$lineHeight:20,as:R?Link__default.default:"span",href:R},b),React__default.default.createElement(paragraph.P,{$color:"grey-4",$fontSize:10,$lineHeight:14},j)),React__default.default.createElement(paragraph.P,{$fontSize:14,$lineHeight:20,sx:"white-space: pre-line; word-break: break-word;"},React__default.default.createElement(highlighter.Highlighter,{highlightRender:e=>React__default.default.createElement(paragraph.P,{as:"span",$color:"primary-blue-2",sx:"font-size: inherit; line-height: inherit;"},React__default.default.createElement(Link__default.default,{href:e,target:"_blank"},e)),seperator:regex.URL_REGEX,text:t})),React__default.default.createElement(box.Box,{$display:"flex",$flow:"row wrap",$gap:6,sx:"margin-left: auto;"},A,f)))))},Wrapper=styled__default.default.div`
|
|
17
17
|
position: relative;
|
|
18
18
|
padding: 12px 16px;
|
|
19
19
|
display: flex;
|
|
@@ -90,7 +90,7 @@
|
|
|
90
90
|
border-left: 2px solid var(--color-grey-9);
|
|
91
91
|
border-top: 2px solid var(--color-grey-9);
|
|
92
92
|
border-radius: 6px 0px 0px 0px;
|
|
93
|
-
`,
|
|
93
|
+
`,PopupActionsWrapper=(styled__default.default.div`
|
|
94
94
|
${styles.Styles.flex}
|
|
95
95
|
display: flex;
|
|
96
96
|
padding: 2px 6px;
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
background-color: var(--color-primary-blue-4);
|
|
101
101
|
border: 1px solid var(--color-primary-blue-3);
|
|
102
102
|
`:""}
|
|
103
|
-
`,
|
|
103
|
+
`,styled__default.default.div`
|
|
104
104
|
position: absolute;
|
|
105
105
|
top: -16px;
|
|
106
106
|
right: 16px;
|
|
@@ -111,7 +111,7 @@
|
|
|
111
111
|
border: 1px solid var(--color-grey-9);
|
|
112
112
|
box-shadow: var(--elevation-1);
|
|
113
113
|
${({$sx:e})=>e||""}
|
|
114
|
-
|
|
114
|
+
`),EditActionsWrapper=styled__default.default.div`
|
|
115
115
|
display: flex;
|
|
116
116
|
align-items: center;
|
|
117
117
|
gap: 4px;
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
height: ${k.y};
|
|
5
5
|
width: ${k.x};
|
|
6
6
|
margin: 0 auto;
|
|
7
|
-
`},React__default.default.createElement(NavArrow,{$side:"left",$visible:0!==E,onClick:W},React__default.default.createElement(chevron_left.ChevronLeft,{color:"white",size:48})),React__default.default.createElement(Image__default.default,{alt:"",fill:!0,quality:100,onLoad:e=>{var{naturalHeight:e,naturalWidth:t}=e.target;let a=t+"px",l=e+"px";window?.innerHeight<e&&window?.innerWidth<t?(a=Math.floor(.95*window.innerHeight*t/e)+"px",l=Math.round(.95*window.innerWidth*e/t)+"px"):window?.innerHeight<e?(a=Math.floor(.95*window.innerHeight*t/e)+"px",l="95vh"):window?.innerWidth<t&&(a="95vw",l=Math.round(.95*window.innerWidth*e/t)+"px"),C({x:a,y:l})},draggable:!1,priority:!0,sizes:"100vw",src:p[E],style:{objectFit:"cover"}}),React__default.default.createElement(NavArrow,{$side:"right",$visible:E!==p.length-1,onClick:q},React__default.default.createElement(chevron_right.ChevronRight,{color:"white",size:48})))),React__default.default.createElement(Header,null,React__default.default.createElement(avatar.Avatar,{isPaidUser:h,as:l?Link__default.default:"button",href:l,image:r,size:64,status:a?"online":void 0,subtitle:React__default.default.createElement(paragraph.P,{as:"span",sx:"vertical-align: top;",$fontSize:14,$lineHeight:20},React__default.default.createElement(time_ago.TimeAgo,{date:new Date(u)})),title:React__default.default.createElement(heading.H,{as:l?Link__default.default:"span",href:l,sx:"text-decoration:none;",$bold:!0,$fontSize:18,$lineHeight:26},t),textPosition:"right",tooltipContent:i,tooltipSx:o,sx:l?"img { cursor: pointer; }":void 0}),c),!!d?.length&&React__default.default.createElement("div",{style:{padding:"16px 24px"}},g&&1<R?React__default.default.createElement(ShowMoreText__default.default,{lines:2,more:"Continue Reading",onClick:x,anchorClass:"see-more",expanded:!1,truncatedEndingComponent:"... "},React__default.default.createElement(paragraph.P,{$sx:"white-space: pre-line; word-break: break-word;",$textClampLines:2},React__default.default.createElement(highlighter.Highlighter,{highlightRender:e=>React__default.default.createElement(paragraph.P,{as:"span",$color:"primary-blue-2"},React__default.default.createElement(Link__default.default,{href:e,target:"_blank"},e)),seperator:regex.URL_REGEX,text:d}))):React__default.default.createElement(paragraph.P,{$sx:"white-space: pre-line; word-break: break-word;",innerRef:w},React__default.default.createElement(highlighter.Highlighter,{highlightRender:e=>React__default.default.createElement(paragraph.P,{as:"span",$color:"primary-blue-2"},React__default.default.createElement(Link__default.default,{href:e,target:"_blank"},e)),seperator:regex.URL_REGEX,text:g&&1===R?"This is a premium post. Join to the membership to unlock the full access.":d})),g&&!p?.length&&React__default.default.createElement(JoinNow,{onClick:x},React__default.default.createElement(paragraph.P,{$fontSize:14,$mediumBold:!0},"Join now for $",y," per month"))),g&&!!p?.length&&!j&&React__default.default.createElement(BlurredContentWrapper,null,React__default.default.createElement(Image__default.default,{alt:"",width:650,height:427,priority:!0,quality:100,src:p[0],style:{objectFit:"fill",height:"100%",width:"100%",filter:"blur(60px)",position:"absolute",top:0,left:"50%",transform:"translateX(-50%)"}}),React__default.default.createElement(lock.Lock,{size:40,color:"white",sx:"z-index: 1"}),React__default.default.createElement("div",{style:{display:"flex",flexDirection:"column",zIndex:1}},React__default.default.createElement(paragraph.P,{$color:"white",$fontSize:14,$bold:!0,$lineHeight:20},"Become a member"),React__default.default.createElement(paragraph.P,{$color:"white",$fontSize:14,$bold:!0,$lineHeight:20},"to unlock this post")),React__default.default.createElement(JoinNow,{onClick:x,style:{zIndex:1,marginTop:0}},React__default.default.createElement(paragraph.P,{$fontSize:14,$mediumBold:!0},"Join now for $",y," per month"))),!!p?.length&&!j&&!g&&React__default.default.createElement(ImagesWrapper,{$numImages:p.length},p.slice(0,4).map((e,t)=>React__default.default.createElement(ImageWrapper,{key:""+v+e.slice(0,15)+t},React__default.default.createElement(Image__default.default,{alt:"",fill:!0,onClick:()=>$(t),quality:100,src:e,draggable:!1,style:{cursor:"pointer",objectFit:"cover"}}))),4<p.length&&React__default.default.createElement(heading.H,{as:"p",className:"more-than",sx:"pointer-events: none;",$color:"grey-10",$fontSize:28,$lineHeight:36,$semiBold:!0},"+",p.length-4)),!p?.length&&!j&&m&&!g&&React__default.default.createElement(Link__default.default,{href:m.url,target:"_blank"},React__default.default.createElement(ImageWrapper,null,React__default.default.createElement(Image__default.default,{alt:"",fill:!0,quality:100,src:m.imageUrl,draggable:!1,style:{cursor:"pointer",objectFit:"cover"}})),React__default.default.createElement(box.Box,{$dir:"column",$gap:8,sx:"padding: 8px 16px;"},React__default.default.createElement(paragraph.P,{$color:"grey-2",$semiBold:!0},m.title),React__default.default.createElement(paragraph.P,{$color:"grey-5"},m.description))),j&&React__default.default.createElement(VideoWrapper,null,React__default.default.createElement(video.Video,{src:_.url,thumbnail:_.thumbnail,subtitles:[]})),!!e.length&&React__default.default.createElement(ActionsWrapper,null,!g&&e),s&&!!n.length&&React__default.default.createElement(CommentWrapper,null,n))},Wrapper=styled.styled.div`
|
|
7
|
+
`},React__default.default.createElement(NavArrow,{$side:"left",$visible:0!==E,onClick:W},React__default.default.createElement(chevron_left.ChevronLeft,{color:"white",size:48})),React__default.default.createElement(Image__default.default,{alt:"",fill:!0,quality:100,onLoad:e=>{var{naturalHeight:e,naturalWidth:t}=e.target;let a=t+"px",l=e+"px";window?.innerHeight<e&&window?.innerWidth<t?(a=Math.floor(.95*window.innerHeight*t/e)+"px",l=Math.round(.95*window.innerWidth*e/t)+"px"):window?.innerHeight<e?(a=Math.floor(.95*window.innerHeight*t/e)+"px",l="95vh"):window?.innerWidth<t&&(a="95vw",l=Math.round(.95*window.innerWidth*e/t)+"px"),C({x:a,y:l})},draggable:!1,priority:!0,sizes:"100vw",src:p[E],style:{objectFit:"cover"}}),React__default.default.createElement(NavArrow,{$side:"right",$visible:E!==p.length-1,onClick:q},React__default.default.createElement(chevron_right.ChevronRight,{color:"white",size:48})))),React__default.default.createElement(Header,null,React__default.default.createElement(avatar.Avatar,{isPaidUser:h,as:l?Link__default.default:"button",href:l,image:r,size:64,status:a?"online":void 0,subtitle:React__default.default.createElement(paragraph.P,{as:"span",sx:"vertical-align: top;",$fontSize:14,$lineHeight:20},React__default.default.createElement(time_ago.TimeAgo,{date:new Date(u)})),title:React__default.default.createElement(heading.H,{as:l?Link__default.default:"span",href:l,sx:"text-decoration:none;",$bold:!0,$fontSize:18,$lineHeight:26},t),textPosition:"right",tooltipContent:i,tooltipSx:o,sx:l?"img { cursor: pointer; }":void 0}),c),!!d?.length&&React__default.default.createElement("div",{style:{padding:"16px 24px"}},g&&1<R?React__default.default.createElement(ShowMoreText__default.default,{lines:2,more:"Continue Reading",onClick:x,anchorClass:"see-more",expanded:!1,truncatedEndingComponent:"... "},React__default.default.createElement(paragraph.P,{$sx:"white-space: pre-line; word-break: break-word;",$textClampLines:2},React__default.default.createElement(highlighter.Highlighter,{highlightRender:e=>React__default.default.createElement(paragraph.P,{as:"span",$color:"primary-blue-2"},React__default.default.createElement(Link__default.default,{href:e,target:"_blank"},e)),seperator:regex.URL_REGEX,text:d}))):React__default.default.createElement(paragraph.P,{$sx:"white-space: pre-line; word-break: break-word;",innerRef:w},React__default.default.createElement(highlighter.Highlighter,{highlightRender:e=>React__default.default.createElement(paragraph.P,{as:"span",$color:"primary-blue-2"},React__default.default.createElement(Link__default.default,{href:e,target:"_blank"},e)),seperator:regex.URL_REGEX,text:g&&1===R?"This is a premium post. Join to the membership to unlock the full access.":d})),g&&!p?.length&&React__default.default.createElement(JoinNow,{onClick:x},React__default.default.createElement(paragraph.P,{$fontSize:14,$mediumBold:!0},"Join now for $",y," per month"))),g&&!!p?.length&&!j&&React__default.default.createElement(BlurredContentWrapper,null,React__default.default.createElement(Image__default.default,{alt:"",width:650,height:427,priority:!0,quality:100,src:p[0],style:{objectFit:"fill",height:"100%",width:"100%",filter:"blur(60px)",position:"absolute",top:0,left:"50%",transform:"translateX(-50%)"}}),React__default.default.createElement(lock.Lock,{size:40,color:"white",sx:"z-index: 1"}),React__default.default.createElement("div",{style:{display:"flex",flexDirection:"column",zIndex:1}},React__default.default.createElement(paragraph.P,{$color:"white",$fontSize:14,$bold:!0,$lineHeight:20},"Become a member"),React__default.default.createElement(paragraph.P,{$color:"white",$fontSize:14,$bold:!0,$lineHeight:20},"to unlock this post")),React__default.default.createElement(JoinNow,{onClick:x,style:{zIndex:1,marginTop:0}},React__default.default.createElement(paragraph.P,{$fontSize:14,$mediumBold:!0},"Join now for $",y," per month"))),!!p?.length&&!j&&!g&&React__default.default.createElement(ImagesWrapper,{$numImages:p.length},p.slice(0,4).map((e,t)=>React__default.default.createElement(ImageWrapper,{key:""+v+e.slice(0,15)+t},React__default.default.createElement(Image__default.default,{alt:"",fill:!0,onClick:()=>$(t),quality:100,src:e,draggable:!1,style:{cursor:"pointer",objectFit:"cover"}}))),4<p.length&&React__default.default.createElement(heading.H,{as:"p",className:"more-than",sx:"pointer-events: none;",$color:"grey-10",$fontSize:28,$lineHeight:36,$semiBold:!0},"+",p.length-4)),!p?.length&&!j&&m&&!g&&React__default.default.createElement(Link__default.default,{href:m.url,target:"_blank"},React__default.default.createElement(ImageWrapper,null,React__default.default.createElement(Image__default.default,{alt:"",fill:!0,quality:100,src:m.imageUrl,draggable:!1,style:{cursor:"pointer",objectFit:"cover"}})),React__default.default.createElement(box.Box,{$dir:"column",$gap:8,sx:"padding: 8px 16px;"},React__default.default.createElement(paragraph.P,{$color:"grey-2",$semiBold:!0},m.title),React__default.default.createElement(paragraph.P,{$color:"grey-5"},m.description))),j&&React__default.default.createElement(VideoWrapper,null,React__default.default.createElement(video.Video,{src:_.url,thumbnail:_.thumbnail,subtitles:[],title:_?.title})),!!e.length&&React__default.default.createElement(ActionsWrapper,null,!g&&e),s&&!!n.length&&React__default.default.createElement(CommentWrapper,null,n))},Wrapper=styled.styled.div`
|
|
8
8
|
position: relative;
|
|
9
9
|
max-width: 700px;
|
|
10
10
|
width: 100%;
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
`,VideoWrapper=styled.styled.div`
|
|
82
82
|
position: relative;
|
|
83
83
|
width: 100%;
|
|
84
|
-
height:
|
|
84
|
+
height: 480px;
|
|
85
85
|
`,BlurredContentWrapper=styled.styled.div`
|
|
86
86
|
position: relative;
|
|
87
87
|
display: flex;
|
|
Binary file
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var button=require("./components/actions/button/button.js"),dropdown=require("./components/actions/dropdown/dropdown.js"),rate=require("./components/actions/rate/rate.js"),_switch=require("./components/actions/switch/switch.js"),toggle=require("./components/actions/toggle/toggle.js"),upload=require("./components/actions/upload/upload.js"),box=require("./components/atoms/box/box.js"),hide=require("./components/atoms/hide/hide.js"),highlighter=require("./components/atoms/highlighter/highlighter.js"),seconds_to_duration=require("./components/atoms/seconds_to_duration/seconds_to_duration.js"),display=require("./components/atoms/typography/display.js"),heading=require("./components/atoms/typography/heading.js"),paragraph=require("./components/atoms/typography/paragraph.js"),typography=require("./components/atoms/typography/typography.js"),time_ago=require("./components/atoms/time_ago/time_ago.js"),card=require("./components/card/card.js"),editor=require("./components/editor/editor.js"),simple_editor=require("./components/editor/simple_editor/simple_editor.js"),badge=require("./components/feedback/badge/badge.js"),banner=require("./components/feedback/banner/banner.js"),loader=require("./components/feedback/loader/loader.js"),notification=require("./components/feedback/notification/notification.js"),progress=require("./components/feedback/progress/progress.js"),toast=require("./components/feedback/toast/toast.js"),tooltip=require("./components/feedback/tooltip/tooltip.js"),animated_toast=require("./components/feedback/animated_toast/animated_toast.js"),avatar=require("./components/iconography/avatar/avatar.js"),icon=require("./components/iconography/icon/icon.js"),checkbox=require("./components/input/checkbox/checkbox.js"),date=require("./components/input/date/date.js"),filter=require("./components/input/filter/filter.js"),radio=require("./components/input/radio/radio.js"),search=require("./components/input/search/search.js"),select=require("./components/input/select/select.js"),text_area=require("./components/input/text_area/text_area.js"),text_input=require("./components/input/text_input/text_input.js"),calendar=require("./components/input/calendar/calendar.js"),time=require("./components/input/time/time.js"),time_input=require("./components/input/time_input/time_input.js"),audioPlayer=require("./components/media/audio-player/audio-player.js"),audioPlaylist=require("./components/media/audio-playlist/audio-playlist.js"),audioPreview=require("./components/media/audio-preview/audio-preview.js"),video=require("./components/media/video/video.js"),video$1=require("./components/media/video-player/video.js"),playing_indicator=require("./components/media/audio-playlist/playing_indicator.js"),breadcrumb=require("./components/navigation/breadcrumb/breadcrumb.js"),inner=require("./components/navigation/inner/inner.js"),tabs=require("./components/navigation/tabs/tabs.js"),accordion=require("./components/surfaces/accordion/accordion.js"),card$1=require("./components/surfaces/carousel/card/card.js"),comment=require("./components/surfaces/comment/comment.js"),discuss_post=require("./components/surfaces/discuss_post/discuss_post.js"),drawer=require("./components/surfaces/drawer/drawer.js"),message=require("./components/surfaces/message/message.js"),modal=require("./components/surfaces/modal/modal.js"),portal=require("./components/surfaces/portal/portal.js"),post=require("./components/surfaces/post/post.js"),calendar_date=require("./components/surfaces/calendar_date/calendar_date.js"),table=require("./components/table/table/table.js"),users_selection=require("./components/custom/users_selection/users_selection.js"),courses_selection=require("./components/custom/courses_selection/courses_selection.js"),index=require("./icons/index.js"),emojis=require("./emoji/emojis.json.js");exports.Button=button.Button,exports.Dropdown=dropdown.Dropdown,exports.Rate=rate.Rate,exports.Switch=_switch.Switch,exports.Toggle=toggle.Toggle,exports.Upload=upload.Upload,exports.Box=box.Box,exports.HideButRender=hide.HideButRender,exports.Highlighter=highlighter.Highlighter,exports.SecToDuration=seconds_to_duration.SecToDuration,exports.Display=display.Display,exports.H=heading.H,exports.P=paragraph.P,exports.Typography=typography.Typography,exports.TimeAgo=time_ago.TimeAgo,exports.Card=card.Card,exports.Editor=editor.Editor,exports.SimpleEditor=simple_editor.SimpleEditor,exports.Badge=badge.Badge,exports.Banner=banner.Banner,exports.Loader=loader.Loader,exports.Notification=notification.Notification,exports.Progress=progress.Progress,exports.Toast=toast.Toast,exports.Tooltip=tooltip.Tooltip,exports.AnimatedToast=animated_toast.AnimatedToast,exports.Avatar=avatar.Avatar,exports.Icon=icon.Icon,exports.Checkbox=checkbox.Checkbox,exports.DatePicker=date.DatePicker,exports.Filter=filter.Filter,exports.Radio=radio.Radio,exports.Search=search.Search,exports.Select=select.Select,exports.TextArea=text_area.TextArea,exports.TextInput=text_input.TextInput,exports.CalendarInput=calendar.CalendarInput,exports.Time=time.Time,exports.TimeInput=time_input.TimeInput,exports.AudioPlayer=audioPlayer.AudioPlayer,exports.AudioPlaylist=audioPlaylist.AudioPlaylist,exports.AudioPreview=audioPreview.AudioPreview,exports.Video=video.Video,exports.VideoPlayer=video$1.VideoPlayer,exports.NowPlaying=playing_indicator.NowPlaying,exports.Breadcrumb=breadcrumb.Breadcrumb,exports.InnerNav=inner.InnerNav,exports.Tabs=tabs.Tabs,exports.Accordion=accordion.Accordion,exports.CardCarousel=card$1.CardCarousel,exports.Comment=comment.Comment,exports.DiscussPost=discuss_post.DiscussPost,exports.Drawer=drawer.Drawer,exports.Message=message.Message,exports.Modal=modal.Modal,exports.Portal=portal.Portal,exports.Post=post.Post,exports.CalendarDate=calendar_date.CalendarDate,exports.Table=table.Table,exports.UsersSelection=users_selection.UsersSelection,exports.CoursesSelection=courses_selection.CoursesSelection,exports.Icons=index,exports.emoji=emojis;
|
|
1
|
+
"use strict";var button=require("./components/actions/button/button.js"),dropdown=require("./components/actions/dropdown/dropdown.js"),rate=require("./components/actions/rate/rate.js"),_switch=require("./components/actions/switch/switch.js"),toggle=require("./components/actions/toggle/toggle.js"),upload=require("./components/actions/upload/upload.js"),box=require("./components/atoms/box/box.js"),hide=require("./components/atoms/hide/hide.js"),highlighter=require("./components/atoms/highlighter/highlighter.js"),seconds_to_duration=require("./components/atoms/seconds_to_duration/seconds_to_duration.js"),display=require("./components/atoms/typography/display.js"),heading=require("./components/atoms/typography/heading.js"),paragraph=require("./components/atoms/typography/paragraph.js"),typography=require("./components/atoms/typography/typography.js"),time_ago=require("./components/atoms/time_ago/time_ago.js"),card=require("./components/card/card.js"),editor=require("./components/editor/editor.js"),simple_editor=require("./components/editor/simple_editor/simple_editor.js"),badge=require("./components/feedback/badge/badge.js"),banner=require("./components/feedback/banner/banner.js"),loader=require("./components/feedback/loader/loader.js"),notification=require("./components/feedback/notification/notification.js"),progress=require("./components/feedback/progress/progress.js"),toast=require("./components/feedback/toast/toast.js"),tooltip=require("./components/feedback/tooltip/tooltip.js"),animated_toast=require("./components/feedback/animated_toast/animated_toast.js"),emojiPicker=require("./components/feedback/emojiPicker/emoji-picker.js"),emojiReactions=require("./components/feedback/emojiPicker/emoji-reactions.js"),avatar=require("./components/iconography/avatar/avatar.js"),icon=require("./components/iconography/icon/icon.js"),checkbox=require("./components/input/checkbox/checkbox.js"),date=require("./components/input/date/date.js"),filter=require("./components/input/filter/filter.js"),radio=require("./components/input/radio/radio.js"),search=require("./components/input/search/search.js"),select=require("./components/input/select/select.js"),text_area=require("./components/input/text_area/text_area.js"),text_input=require("./components/input/text_input/text_input.js"),calendar=require("./components/input/calendar/calendar.js"),time=require("./components/input/time/time.js"),time_input=require("./components/input/time_input/time_input.js"),audioPlayer=require("./components/media/audio-player/audio-player.js"),audioPlaylist=require("./components/media/audio-playlist/audio-playlist.js"),audioPreview=require("./components/media/audio-preview/audio-preview.js"),video=require("./components/media/video/video.js"),video$1=require("./components/media/video-player/video.js"),playing_indicator=require("./components/media/audio-playlist/playing_indicator.js"),breadcrumb=require("./components/navigation/breadcrumb/breadcrumb.js"),inner=require("./components/navigation/inner/inner.js"),tabs=require("./components/navigation/tabs/tabs.js"),accordion=require("./components/surfaces/accordion/accordion.js"),card$1=require("./components/surfaces/carousel/card/card.js"),comment=require("./components/surfaces/comment/comment.js"),discuss_post=require("./components/surfaces/discuss_post/discuss_post.js"),drawer=require("./components/surfaces/drawer/drawer.js"),message=require("./components/surfaces/message/message.js"),modal=require("./components/surfaces/modal/modal.js"),portal=require("./components/surfaces/portal/portal.js"),post=require("./components/surfaces/post/post.js"),calendar_date=require("./components/surfaces/calendar_date/calendar_date.js"),table=require("./components/table/table/table.js"),users_selection=require("./components/custom/users_selection/users_selection.js"),courses_selection=require("./components/custom/courses_selection/courses_selection.js"),index=require("./icons/index.js"),emojis=require("./emoji/emojis.json.js");exports.Button=button.Button,exports.Dropdown=dropdown.Dropdown,exports.Rate=rate.Rate,exports.Switch=_switch.Switch,exports.Toggle=toggle.Toggle,exports.Upload=upload.Upload,exports.Box=box.Box,exports.HideButRender=hide.HideButRender,exports.Highlighter=highlighter.Highlighter,exports.SecToDuration=seconds_to_duration.SecToDuration,exports.Display=display.Display,exports.H=heading.H,exports.P=paragraph.P,exports.Typography=typography.Typography,exports.TimeAgo=time_ago.TimeAgo,exports.Card=card.Card,exports.Editor=editor.Editor,exports.SimpleEditor=simple_editor.SimpleEditor,exports.Badge=badge.Badge,exports.Banner=banner.Banner,exports.Loader=loader.Loader,exports.Notification=notification.Notification,exports.Progress=progress.Progress,exports.Toast=toast.Toast,exports.Tooltip=tooltip.Tooltip,exports.AnimatedToast=animated_toast.AnimatedToast,exports.CustomEmojiPicker=emojiPicker.CustomEmojiPicker,exports.EmojiReaction=emojiReactions.EmojiReaction,exports.Avatar=avatar.Avatar,exports.Icon=icon.Icon,exports.Checkbox=checkbox.Checkbox,exports.DatePicker=date.DatePicker,exports.Filter=filter.Filter,exports.Radio=radio.Radio,exports.Search=search.Search,exports.Select=select.Select,exports.TextArea=text_area.TextArea,exports.TextInput=text_input.TextInput,exports.CalendarInput=calendar.CalendarInput,exports.Time=time.Time,exports.TimeInput=time_input.TimeInput,exports.AudioPlayer=audioPlayer.AudioPlayer,exports.AudioPlaylist=audioPlaylist.AudioPlaylist,exports.AudioPreview=audioPreview.AudioPreview,exports.Video=video.Video,exports.VideoPlayer=video$1.VideoPlayer,exports.NowPlaying=playing_indicator.NowPlaying,exports.Breadcrumb=breadcrumb.Breadcrumb,exports.InnerNav=inner.InnerNav,exports.Tabs=tabs.Tabs,exports.Accordion=accordion.Accordion,exports.CardCarousel=card$1.CardCarousel,exports.Comment=comment.Comment,exports.DiscussPost=discuss_post.DiscussPost,exports.Drawer=drawer.Drawer,exports.Message=message.Message,exports.Modal=modal.Modal,exports.Portal=portal.Portal,exports.Post=post.Post,exports.CalendarDate=calendar_date.CalendarDate,exports.Table=table.Table,exports.UsersSelection=users_selection.UsersSelection,exports.CoursesSelection=courses_selection.CoursesSelection,exports.Icons=index,exports.emoji=emojis;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface DefaultArticlePageProps {
|
|
3
|
+
articleId: string;
|
|
4
|
+
title: string;
|
|
5
|
+
handleCreateCategory: (value: string) => void;
|
|
6
|
+
handleCreateArticle: () => void;
|
|
7
|
+
}
|
|
8
|
+
export declare const HowCanWeHelpPage: React.FC;
|
|
9
|
+
export declare const DefaultArticlePage: React.FC<DefaultArticlePageProps>;
|
|
10
|
+
interface DefaultSubcategoryPageProps {
|
|
11
|
+
categoryId: string;
|
|
12
|
+
subcategoryId: string;
|
|
13
|
+
}
|
|
14
|
+
export declare const DefaultSubcategoryPage: React.FC<DefaultSubcategoryPageProps>;
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Category, USER_ROLES } from './types';
|
|
3
|
+
interface HelpCenterProps {
|
|
4
|
+
initialData: {
|
|
5
|
+
categories: Category[];
|
|
6
|
+
userRole: (typeof USER_ROLES)[keyof typeof USER_ROLES];
|
|
7
|
+
};
|
|
8
|
+
onDataChange?: (data: {
|
|
9
|
+
categories: Category[];
|
|
10
|
+
}) => void;
|
|
11
|
+
}
|
|
12
|
+
export declare const HelpCenter: React.FC<HelpCenterProps>;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { HelpCenterContextValue, HelpCenterProviderProps } from './types';
|
|
3
|
+
export declare const HelpCenterContext: React.Context<HelpCenterContextValue | undefined>;
|
|
4
|
+
export declare const HelpCenterProvider: React.FC<HelpCenterProviderProps>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { HelpCenter } from './help_center';
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { TElement } from '@udecode/plate';
|
|
3
|
+
import { IStyledComponent } from 'styled-components';
|
|
4
|
+
import { FastOmit } from 'styled-components/dist/types';
|
|
5
|
+
export interface Category {
|
|
6
|
+
id: string;
|
|
7
|
+
name: string;
|
|
8
|
+
subcategories: Subcategory[];
|
|
9
|
+
}
|
|
10
|
+
export interface Subcategory {
|
|
11
|
+
id: string;
|
|
12
|
+
name: string;
|
|
13
|
+
categoryId: string;
|
|
14
|
+
articles: Article[];
|
|
15
|
+
}
|
|
16
|
+
export interface WithPermissionProps {
|
|
17
|
+
role: (typeof USER_ROLES)[keyof typeof USER_ROLES];
|
|
18
|
+
permission: string;
|
|
19
|
+
}
|
|
20
|
+
export declare const USER_ROLES: {
|
|
21
|
+
readonly ADMIN: "admin";
|
|
22
|
+
readonly EDITOR: "editor";
|
|
23
|
+
readonly VIEWER: "viewer";
|
|
24
|
+
};
|
|
25
|
+
export interface User {
|
|
26
|
+
id: string;
|
|
27
|
+
email: string;
|
|
28
|
+
role: (typeof USER_ROLES)[keyof typeof USER_ROLES];
|
|
29
|
+
}
|
|
30
|
+
export interface Category {
|
|
31
|
+
id: string;
|
|
32
|
+
name: string;
|
|
33
|
+
subcategories: Subcategory[];
|
|
34
|
+
}
|
|
35
|
+
export declare enum DropdownOptions {
|
|
36
|
+
RENAME = "Rename",
|
|
37
|
+
CREATE_SUBCATEGORY = "Create Sub-Category",
|
|
38
|
+
DELETE_CATEGORY = "Remove the Category",
|
|
39
|
+
CREATE_ARTICLES = "Create Articles",
|
|
40
|
+
DELETE_SUBCATEGORY = "Remove"
|
|
41
|
+
}
|
|
42
|
+
export interface CustomModalProps {
|
|
43
|
+
title: string;
|
|
44
|
+
isOpen: boolean;
|
|
45
|
+
setIsOpen: React.Dispatch<React.SetStateAction<boolean>>;
|
|
46
|
+
initialValue?: string;
|
|
47
|
+
modalType: modalType;
|
|
48
|
+
submitButtonText?: string;
|
|
49
|
+
cancelButtonText?: string;
|
|
50
|
+
mainContent?: React.ReactNode;
|
|
51
|
+
headerContent?: React.ReactNode;
|
|
52
|
+
footerContent?: React.ReactNode;
|
|
53
|
+
onSubmit: (value: string) => void;
|
|
54
|
+
trigger: React.ReactNode;
|
|
55
|
+
}
|
|
56
|
+
export type modalType = 'create' | 'edit' | 'delete' | 'create-article-category' | 'edit-article' | 'edit-article-category' | 'delete-article-category' | 'edit-article-QA' | 'delete-article-QA' | 'articleQuestion';
|
|
57
|
+
export interface Subcategory {
|
|
58
|
+
id: string;
|
|
59
|
+
name: string;
|
|
60
|
+
categoryId: string;
|
|
61
|
+
articles: Article[];
|
|
62
|
+
}
|
|
63
|
+
export interface ArticleCategory {
|
|
64
|
+
id: string;
|
|
65
|
+
title?: string;
|
|
66
|
+
articleId: string;
|
|
67
|
+
description?: string;
|
|
68
|
+
questions?: ArticleQuestion[];
|
|
69
|
+
}
|
|
70
|
+
export interface ArticleQuestion {
|
|
71
|
+
id: string;
|
|
72
|
+
articleCategoryId: string;
|
|
73
|
+
question?: string;
|
|
74
|
+
answer?: TElement[];
|
|
75
|
+
}
|
|
76
|
+
export interface Article {
|
|
77
|
+
id: string;
|
|
78
|
+
title: string;
|
|
79
|
+
content: ArticleCategory[];
|
|
80
|
+
categoryId: string;
|
|
81
|
+
subcategoryId: string;
|
|
82
|
+
}
|
|
83
|
+
export interface HelpCenterContextValue {
|
|
84
|
+
categories: Category[];
|
|
85
|
+
isLoading: boolean;
|
|
86
|
+
selectedArticle: Article | null;
|
|
87
|
+
isNewArticle: boolean;
|
|
88
|
+
selectedSubcategory: Subcategory | null;
|
|
89
|
+
error: string | null;
|
|
90
|
+
userRole: (typeof USER_ROLES)[keyof typeof USER_ROLES];
|
|
91
|
+
breadcrumbTrail: string[];
|
|
92
|
+
setSelectedSubcategory: React.Dispatch<React.SetStateAction<Subcategory | null>>;
|
|
93
|
+
setSelectedArticle: React.Dispatch<React.SetStateAction<Article | null>>;
|
|
94
|
+
setIsNewArticle: React.Dispatch<React.SetStateAction<boolean>>;
|
|
95
|
+
setBreadcrumbTrail: React.Dispatch<React.SetStateAction<string[]>>;
|
|
96
|
+
addCategory: (name: string) => void;
|
|
97
|
+
updateCategory: (id: string, name: string) => void;
|
|
98
|
+
deleteCategory: (id: string) => void;
|
|
99
|
+
addSubcategory: (categoryId: string, name: string) => void;
|
|
100
|
+
addArticleCategory: (categoryId: string, subcategoryId: string, articleId: string, newCategory: Omit<ArticleCategory, 'id'>) => void;
|
|
101
|
+
deleteArticleQuestion: (categoryId: string, subcategoryId: string, articleId: string, articleCategoryId: string, questionId: string) => void;
|
|
102
|
+
deleteArticleCategory: (categoryId: string, subcategoryId: string, articleId: string, articleCategoryId: string) => void;
|
|
103
|
+
updateArticleCategory: (categoryId: string, subcategoryId: string, articleId: string, articleCategoryId: string, updatedCategoryName: string) => void;
|
|
104
|
+
addArticleQuestion: (categoryId: string, subcategoryId: string, articleId: string, articleCategoryId: string, newQuestion: Omit<ArticleQuestion, 'id'>) => void;
|
|
105
|
+
updateArticleQuestion: (categoryId: string, subcategoryId: string, articleId: string, articleCategoryId: string, articleQuestionId: string, updatedQuestion: Omit<ArticleQuestion, 'id'>) => void;
|
|
106
|
+
updateSubcategory: (categoryId: string, subcategoryId: string, name: string) => void;
|
|
107
|
+
deleteSubcategory: (categoryId: string, subcategoryId: string) => void;
|
|
108
|
+
addArticle: (categoryId: string, subcategoryId: string, title: string, content: ArticleCategory[]) => string;
|
|
109
|
+
updateArticle: (categoryId: string, subcategoryId: string, articleId: string, title: string, content: ArticleCategory[]) => void;
|
|
110
|
+
deleteArticle: (categoryId: string, subcategoryId: string, articleId: string) => void;
|
|
111
|
+
}
|
|
112
|
+
export interface HelpCenterProviderProps extends HelpCenterProps {
|
|
113
|
+
children: React.ReactNode;
|
|
114
|
+
}
|
|
115
|
+
export interface HelpCenterProps {
|
|
116
|
+
initialData: {
|
|
117
|
+
categories: Category[];
|
|
118
|
+
userRole: (typeof USER_ROLES)[keyof typeof USER_ROLES];
|
|
119
|
+
};
|
|
120
|
+
onDataChange?: (data: {
|
|
121
|
+
categories: Category[];
|
|
122
|
+
}) => void;
|
|
123
|
+
}
|
|
124
|
+
export type StyledType = IStyledComponent<'web', FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>;
|
|
@@ -14,6 +14,7 @@ export interface EditorProps {
|
|
|
14
14
|
courseMediaId: number;
|
|
15
15
|
}) => React.ReactElement;
|
|
16
16
|
filterComponent?: React.ComponentType<FilterComponentProps>;
|
|
17
|
+
hideShowAnswersButton?: boolean;
|
|
17
18
|
}
|
|
18
19
|
export type EditorContent = TElement;
|
|
19
|
-
export declare const Editor: ({ commentInputLoader, commentLoader, editable, handleVideoClick, imageSrcLoader, onChange, previousContent, defaultFilter, videoTitleLoader, filterComponent, }: EditorProps) => React.JSX.Element;
|
|
20
|
+
export declare const Editor: ({ commentInputLoader, commentLoader, editable, handleVideoClick, imageSrcLoader, onChange, previousContent, defaultFilter, videoTitleLoader, filterComponent, hideShowAnswersButton, }: EditorProps) => React.JSX.Element;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare const FREQUENTLY_USED_IDS: string[];
|
|
2
|
+
export declare enum CategoryId {
|
|
3
|
+
FREQUENTLY = "frequently",
|
|
4
|
+
PEOPLE = "people",
|
|
5
|
+
NATURE = "nature",
|
|
6
|
+
FOODS = "foods",
|
|
7
|
+
ACTIVITY = "activity",
|
|
8
|
+
OBJECTS = "objects",
|
|
9
|
+
SYMBOLS = "symbols",
|
|
10
|
+
FLAGS = "flags"
|
|
11
|
+
}
|
|
12
|
+
export declare const CATEGORY_ICONS: Record<CategoryId, string>;
|
|
13
|
+
export declare const RAINBOW_COLORS: string[];
|
|
14
|
+
export declare const SPRITE_URL = "/emojis/64-2Q7F4PKG.png";
|
|
15
|
+
export declare const SPRITE_COLUMNS = 62;
|
|
16
|
+
export declare const TILE_SIZE = 25;
|
|
17
|
+
export declare const SPRITE_SIZE = 100;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface EmojiReactionProps {
|
|
3
|
+
emoji: string;
|
|
4
|
+
isActive: boolean;
|
|
5
|
+
size?: number;
|
|
6
|
+
showSparkle?: boolean;
|
|
7
|
+
count?: number;
|
|
8
|
+
onReact: () => void;
|
|
9
|
+
showCount?: boolean;
|
|
10
|
+
}
|
|
11
|
+
export declare const EmojiReaction: React.FC<EmojiReactionProps>;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export type NormalizedEmojiType = {
|
|
2
|
+
id: string;
|
|
3
|
+
name: string;
|
|
4
|
+
keywords?: string[];
|
|
5
|
+
skins: {
|
|
6
|
+
unified: string;
|
|
7
|
+
native: string;
|
|
8
|
+
}[];
|
|
9
|
+
coordinates?: {
|
|
10
|
+
x: number;
|
|
11
|
+
y: number;
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
export interface ReactionEmojiProps {
|
|
15
|
+
emojiId: string;
|
|
16
|
+
size?: number;
|
|
17
|
+
sparkleOnMount?: boolean;
|
|
18
|
+
coordinates?: {
|
|
19
|
+
x: number;
|
|
20
|
+
y: number;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
export type RawEmojiDataType = {
|
|
24
|
+
emojis: Record<string, NormalizedEmojiType>;
|
|
25
|
+
categories: {
|
|
26
|
+
id: string;
|
|
27
|
+
emojis: string[];
|
|
28
|
+
}[];
|
|
29
|
+
};
|
|
30
|
+
export type PreprocessedEmojiDataType = {
|
|
31
|
+
categories: {
|
|
32
|
+
[categoryId: string]: NormalizedEmojiType[];
|
|
33
|
+
};
|
|
34
|
+
emojiMap: {
|
|
35
|
+
[emojiId: string]: NormalizedEmojiType;
|
|
36
|
+
};
|
|
37
|
+
};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { NormalizedEmojiType, PreprocessedEmojiDataType, RawEmojiDataType } from './types';
|
|
2
|
+
export declare function preprocessEmojiData(rawData: RawEmojiDataType, FREQUENTLY_USED_IDS: string[]): PreprocessedEmojiDataType;
|
|
3
|
+
export declare function buildNativeEmojiMap(emojis: Record<string, NormalizedEmojiType>): Record<string, NormalizedEmojiType>;
|
|
@@ -14,3 +14,6 @@ export { Tooltip } from './tooltip';
|
|
|
14
14
|
export type { TooltipProps } from './tooltip';
|
|
15
15
|
export { AnimatedToast } from './animated_toast';
|
|
16
16
|
export type { AnimatedToastProps } from './animated_toast';
|
|
17
|
+
export { CustomEmojiPicker } from './emojiPicker';
|
|
18
|
+
export { EmojiReaction } from './emojiPicker';
|
|
19
|
+
export type { NormalizedEmojiType } from './emojiPicker';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import './reaction-sparkle.css';
|
|
3
|
+
interface RainbowReactionEmojiProps {
|
|
4
|
+
emojiId: string;
|
|
5
|
+
size?: number;
|
|
6
|
+
sparkleOnMount?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare const RainbowReactionEmoji: React.FC<RainbowReactionEmojiProps>;
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
type NormalizedEmoji = {
|
|
3
|
+
id: string;
|
|
4
|
+
name: string;
|
|
5
|
+
keywords?: string[];
|
|
6
|
+
skins: {
|
|
7
|
+
unified: string;
|
|
8
|
+
native: string;
|
|
9
|
+
}[];
|
|
10
|
+
coordinates?: {
|
|
11
|
+
x: number;
|
|
12
|
+
y: number;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
export declare const CustomEmojiPicker: React.FC<{
|
|
16
|
+
onSelect: (emoji: NormalizedEmoji) => void;
|
|
17
|
+
}>;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface AudioProgressBarProps {
|
|
3
|
+
/**
|
|
4
|
+
* @param duration the total duration of the audio media in seconds
|
|
5
|
+
* */
|
|
6
|
+
duration: number;
|
|
7
|
+
/**
|
|
8
|
+
* @param progress the amount of the audio media listened to
|
|
9
|
+
* */
|
|
10
|
+
progress: number;
|
|
11
|
+
onSeek: (percent: number) => void;
|
|
12
|
+
}
|
|
13
|
+
export declare const AudioProgressBar: ({ duration, progress, onSeek, }: AudioProgressBarProps) => React.JSX.Element;
|
|
14
|
+
export {};
|
|
@@ -13,5 +13,6 @@ export interface VideoProps {
|
|
|
13
13
|
thumbnailObjectFit?: 'cover' | 'contain' | 'fill' | 'unset';
|
|
14
14
|
forwardedRef?: React.RefObject<ReactPlayer>;
|
|
15
15
|
playing?: boolean;
|
|
16
|
+
title?: string;
|
|
16
17
|
}
|
|
17
|
-
export declare const Video: ({ controls, loop, muted, playsInline, src, subtitles, style, thumbnail, thumbnailObjectFit, forwardedRef, playing, }: VideoProps) => React.JSX.Element;
|
|
18
|
+
export declare const Video: ({ controls, loop, muted, playsInline, src, subtitles, style, thumbnail, thumbnailObjectFit, forwardedRef, playing, title, }: VideoProps) => React.JSX.Element;
|
|
@@ -19,6 +19,8 @@ export interface CommentProps {
|
|
|
19
19
|
reactions?: Record<string, number>;
|
|
20
20
|
replies?: React.ReactElement[];
|
|
21
21
|
userImageUri: string;
|
|
22
|
+
latestReaction?: string;
|
|
23
|
+
setLatestUserReaction?: React.Dispatch<React.SetStateAction<string>>;
|
|
22
24
|
customPlaceHolder?: string;
|
|
23
25
|
userName: string;
|
|
24
26
|
userReactions?: string[];
|
|
@@ -26,4 +28,4 @@ export interface CommentProps {
|
|
|
26
28
|
sx?: string;
|
|
27
29
|
moveButtonsToLeft?: boolean;
|
|
28
30
|
}
|
|
29
|
-
export declare const Comment: ({ avatarTooltipContent, avatarTooltipSx, content, createdDate, hasMoreReplies, id, onComment, onReact, onShowReplies, onEdit, isEditing, setIsEditing, dropdown, reactionModal, reactions, replies, userImageUri, userName, userReactions, visibilityIcon, customPlaceHolder, userProfileUri, sx, moveButtonsToLeft, }: CommentProps) => React.JSX.Element;
|
|
31
|
+
export declare const Comment: ({ avatarTooltipContent, avatarTooltipSx, content, createdDate, hasMoreReplies, id, onComment, onReact, latestReaction, onShowReplies, onEdit, isEditing, setIsEditing, dropdown, reactionModal, reactions, replies, userImageUri, userName, userReactions, visibilityIcon, customPlaceHolder, userProfileUri, sx, moveButtonsToLeft, }: CommentProps) => React.JSX.Element;
|
|
@@ -20,8 +20,10 @@ export interface DiscussPostProps {
|
|
|
20
20
|
sx?: string;
|
|
21
21
|
userHref: string;
|
|
22
22
|
userImageUri: string;
|
|
23
|
+
latestReaction?: string;
|
|
24
|
+
setLatestUserReaction?: React.Dispatch<React.SetStateAction<string>>;
|
|
23
25
|
userName: string;
|
|
24
26
|
isAdmin?: boolean;
|
|
25
27
|
userReactions?: string[];
|
|
26
28
|
}
|
|
27
|
-
export declare const DiscussPost: ({ avatarSx, content, createdDate, editActions, editing, firstNewPost, handleContentChange, id, onReact, popupActions, popupSx, reactions, reactionModal, replyContent, replyUserHref, replyUserImageUri, replyUserName, sx, userHref, userImageUri, userName, isAdmin, userReactions, }: DiscussPostProps) => React.JSX.Element;
|
|
29
|
+
export declare const DiscussPost: ({ avatarSx, content, createdDate, editActions, editing, firstNewPost, handleContentChange, id, onReact, popupActions, latestReaction, popupSx, reactions, reactionModal, replyContent, replyUserHref, replyUserImageUri, replyUserName, sx, userHref, userImageUri, userName, isAdmin, userReactions, }: DiscussPostProps) => React.JSX.Element;
|