@soul-refiner/design-system 2.9.2 → 2.9.3
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/common/regex.js +1 -1
- package/dist/components/atoms/highlighter/highlighter.js +1 -1
- package/dist/components/atoms/highlighter/utils.js +1 -0
- package/dist/components/surfaces/discuss_post/discuss_post.js +2 -2
- package/dist/src/components/atoms/highlighter/utils.d.ts +7 -0
- package/package.json +1 -1
package/dist/common/regex.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const URL_REGEX=/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)
|
|
1
|
+
"use strict";const URL_REGEX=/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)/;exports.URL_REGEX=URL_REGEX;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
"use strict";var React=require("react"),styled=require("styled-components");function _interopDefaultCompat(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var React__default=_interopDefaultCompat(React),styled__default=_interopDefaultCompat(styled);const
|
|
2
|
+
"use strict";var React=require("react"),styled=require("styled-components"),utils=require("./utils.js");function _interopDefaultCompat(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var React__default=_interopDefaultCompat(React),styled__default=_interopDefaultCompat(styled);const DELIMITERS=["(",")",","," ","\n"],Highlighter=({highlightRender:l,highlightSx:u,seperator:e,text:t})=>{const r=React__default.default.useId(),d=new RegExp(e,"i");return d.test(t)?(e=utils.fieldsFunc(DELIMITERS,t),React__default.default.createElement(React__default.default.Fragment,null,e.filter(String).map((e,t)=>{if(!d.test(e))return React__default.default.createElement("span",{key:r+t},e);let a="";return e.endsWith(".")&&(e=e.slice(0,e.length-1),a+="."),l?React__default.default.createElement(React__default.default.Fragment,{key:r+t},l(e),a):React__default.default.createElement(React__default.default.Fragment,{key:r+t},React__default.default.createElement(Span,{$sx:u},e),a)}))):React__default.default.createElement(React__default.default.Fragment,null,t)},Span=styled__default.default.span`
|
|
3
3
|
${({$sx:e})=>e||""};
|
|
4
4
|
`;exports.Highlighter=Highlighter;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const fieldsFunc=(s,e)=>{let l=0,c=0,t=0;for(var u=[];l<e.length;){for(t=0;t<s.length;)s[t]===e[l]&&(u.push(e.slice(c,l)),u.push(e.slice(l,l+1)),c=l+1),t++;l++}return u.push(e.slice(c)),u};exports.fieldsFunc=fieldsFunc;
|
|
@@ -1,5 +1,5 @@
|
|
|
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");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:i,handleContentChange:o,id:n,onReact:d,popupActions:u,popupSx:c,reactions:s,reactionModal:p,replyContent:f,replyUserHref:x,replyUserImageUri:g,replyUserName:_,sx:h,userHref:m,userImageUri:y,userName:$,isAdmin:b,userReactions:R})=>{const v=React__default.default.useRef(null),[E,w]=React__default.default.useState(!1);React__default.default.useEffect(()=>{v.current&&(v.current.value=t)},[t]),React__default.default.useEffect(()=>{v?.current&&v.current.value!==t&&o&&o(v.current.value)},[E]);var k=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]),S=React__default.default.useMemo(()=>{if(s){let e=Object.entries(s);return(e=p?e.slice(0,MAX_REACTIONS_SHOWN):e).sort((e,t)=>e[1]<t[1]?1:-1).map(e=>React__default.default.createElement(Reaction,{key:n+e[0],onClick:()=>d(e[0]),$align:"center",$dir:"row",$gap:5,$userSelected:R?.includes(e[0])},e[0],React__default.default.createElement(paragraph.P,{$bold:!0,$fontSize:10,$lineHeight:14},e[1])))}},[s,R]);return React__default.default.createElement(Wrapper,{$editing:l,$firstNewPost:i,$sx:h,id:n},React__default.default.createElement(hide.HideButRender,{show:!l&&!!f},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:x,image:g,size:16,sx:"img { cursor: pointer;}"}),React__default.default.createElement(paragraph.P,{as:Link__default.default,href:x,$color:"primary-blue-2",$fontSize:12,$lineHeight:16,sx:"flex-shrink: 0; text-decoration: none;"},"@",_),React__default.default.createElement(paragraph.P,{sx:"word-break: break-word; white-space: pre-line;",$fontSize:12,$lineHeight:16,$textClampLines:1},f))),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:m,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;
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
align-items: flex-start;
|
|
14
14
|
height: 40px;
|
|
15
15
|
gap: 0px;
|
|
16
|
-
}`},React__default.default.createElement(paragraph.P,{$bold:!0,$color:b?"special-orange-1":"primary-blue-2",$fontSize:14,$lineHeight:20,as:m?Link__default.default:"span",href:m},$),React__default.default.createElement(paragraph.P,{$color:"grey-4",$fontSize:10,$lineHeight:14},k)),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"},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;"},S,p)))))},Wrapper=styled__default.default.div`
|
|
16
|
+
}`},React__default.default.createElement(paragraph.P,{$bold:!0,$color:b?"special-orange-1":"primary-blue-2",$fontSize:14,$lineHeight:20,as:m?Link__default.default:"span",href:m},$),React__default.default.createElement(paragraph.P,{$color:"grey-4",$fontSize:10,$lineHeight:14},k)),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;"},S,p)))))},Wrapper=styled__default.default.div`
|
|
17
17
|
position: relative;
|
|
18
18
|
padding: 12px 16px;
|
|
19
19
|
display: flex;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
*
|
|
3
|
+
* @param delimiters delimiter strings on which to split the text
|
|
4
|
+
* @param text the string to split
|
|
5
|
+
* @returns an array of strings split upon single character delimiters
|
|
6
|
+
*/
|
|
7
|
+
export declare const fieldsFunc: (delimiters: string[], text: string) => string[];
|