@skitter/assistant_md 1.0.2 → 1.0.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.
@@ -1 +1 @@
1
- {"mappings":"AAeA,kCAAkC,GAAG,EAAE,MAAM;;;IA2B5C;AAiDD,kBAAkB;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF,wBAAwB;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1C,gBAAgB;IACd,IAAI,EAAE,gBAAgB,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,kBAAkB;IAChB,MAAM,EAAE,gBAAgB,CAAC;IACzB,aAAa,EAAE,QAAQ,CAAC;CACzB,CAAC;AAEF,qBAAqB;IACnB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,aAAa,EAAE,WAAW,CAAC;CAC5B,CAAC;AAEF,0BAA0B;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,qBAAqB;IACnB,SAAS,EAAE,kBAAkB,CAAC;IAC9B,aAAa,EAAE,WAAW,CAAC;CAC5B,CAAC;AAEF,cAAc;IACZ,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB,CAAC;AAEF,sBAAsB;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,cAAc,CAAC;CAC/B,CAAC;AAEF,wBAAwB;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,gBAAgB,CAAC;CACjC,CAAC;AAEF,mBAAmB;IACjB,aAAa,EAAE,SAAS,CAAC;CAC1B,CAAC;AAEF,uBAAuB;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,kBAAkB;IAChB,IAAI,EAAE,eAAe,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,cACI,UAAU,GACV,QAAQ,GACR,UAAU,GACV,aAAa,GACb,aAAa,GACb,cAAc,GACd,gBAAgB,GAChB,UAAU,GACV,WAAW,CAAC;AAEhB,kBAAkB;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AA8ErC,oCAAoC,EAAE,MAAM,EAAE,EAAE,UAAU,eAgDzD","sources":["src/src/assistant_md.tsx","src/assistant_md.tsx"],"sourcesContent":[null,"import React from \"react\";\n\nconst URL_REGEX =\n /[(http(s)?):\\/\\/(www\\.)?a-zA-Z0-9@:%._\\+~#=-]{2,256}\\.[a-z]{2,6}\\b([-a-zA-Z0-9@:%_\\+.~#?&//=]*)/;\n\nconst normalStr = (str: string) => ({\n type: \"normal_str\",\n value: str,\n});\n\nconst urlStr = (str: string) => ({\n type: \"url\",\n value: str,\n});\n\nexport function parseUrlAndString(str: string) {\n const results = [];\n let remaining = str;\n while (remaining) {\n let match = remaining.match(URL_REGEX);\n if (!match) {\n results.push(normalStr(remaining));\n break;\n }\n\n if (match.index !== 0) {\n results.push(normalStr(remaining.slice(0, match.index)));\n results.push(\n urlStr(\n remaining.slice(\n match.index,\n match.index && match.index + match[0].length\n )\n )\n );\n remaining = remaining.slice(match.index && match.index + match[0].length);\n continue;\n }\n results.push(urlStr(remaining.slice(0, match[0].length)));\n remaining = remaining.slice(match[0].length);\n }\n return results;\n}\n\nconst DisplayLineBreaks = ({ text }: { text: string }) => {\n let texts = text.split(\"\\n\");\n let lastOne = texts[texts.length - 1];\n let exceptLastOne = texts.slice(0, texts.length - 1);\n return (\n <>\n {exceptLastOne.reduce(\n (arr: (string | JSX.Element)[], text) => [\n ...arr,\n text,\n <br key={arr.length} />,\n ],\n []\n )}\n {lastOne}\n </>\n );\n};\n\nconst DisplayURL = ({ text }: { text: string }) => {\n const parsed = parseUrlAndString(text);\n return (\n <>\n {parsed.map(({ type, value }, i) =>\n type === \"url\" ? (\n <a href={value} target=\"_blank\" key={i} rel=\"noreferrer\">\n {value}\n </a>\n ) : (\n <DisplayLineBreaks text={value} key={i}></DisplayLineBreaks>\n )\n )}\n </>\n );\n};\n\ntype MdTypes =\n | \"normal_text\"\n | \"bold\"\n | \"italic\"\n | \"underline\"\n | \"hyperlink\"\n | \"ordered_list\"\n | \"unordered_list\"\n | \"newline\"\n | \"join\";\n\ntype NormalText = {\n normal_text: string;\n markdown_text: \"normal_text\";\n};\n\ntype MdValueContainer = { value: MdText };\n\ntype BoldText = {\n bold: MdValueContainer;\n markdown_text: \"bold\";\n};\n\ntype ItalicText = {\n italic: MdValueContainer;\n markdown_text: \"italic\";\n};\n\ntype UnderlineText = {\n underline: MdValueContainer;\n markdown_text: \"underline\";\n};\n\ntype HyperLinkContainer = {\n link: string;\n value: MdText;\n};\n\ntype HyperLinkText = {\n hyperlink: HyperLinkContainer;\n markdown_text: \"hyperlink\";\n};\n\ntype MdList = {\n list: MdText[];\n};\n\ntype OrdredListText = {\n ordered_list: MdList;\n markdown_text: \"ordered_list\";\n};\n\ntype UnOrdredListText = {\n unordered_list: MdList;\n markdown_text: \"unordered_list\";\n};\n\ntype NewlineText = {\n markdown_text: \"newline\";\n};\n\ntype JoinMdContainer = {\n lhs: MdText;\n rhs: MdText;\n};\n\ntype JoinMdText = {\n join: JoinMdContainer;\n markdown_text: \"join\";\n};\n\ntype MdText =\n | NormalText\n | BoldText\n | ItalicText\n | UnderlineText\n | HyperLinkText\n | OrdredListText\n | UnOrdredListText\n | JoinMdText\n | NewlineText;\n\ntype MdTextProp = { mdText: MdText };\n\ntype NormalRenderes = React.FunctionComponent<{ mdText: MdValueContainer }>;\n\ntype ListRenderers = React.FunctionComponent<{ mdText: MdList }>;\n\ntype TextRenderer = React.FunctionComponent<{ mdText: string }>;\n\ntype JoinMdRenderer = React.FunctionComponent<{ mdText: JoinMdContainer }>;\n\ntype HyperLinkRenderer = React.FunctionComponent<{\n mdText: HyperLinkContainer;\n}>;\n\nconst normalWrapper: (TagName: React.ElementType) => NormalRenderes =\n (TagName: React.ElementType) =>\n ({ mdText }) =>\n (\n <TagName>\n <AssistantMd mdText={mdText.value} />\n </TagName>\n );\n\nconst listWrapper: (TagName: React.ElementType) => ListRenderers =\n (TagName) =>\n ({ mdText: { list } }) =>\n (\n <TagName>\n {list.map((mdText) => (\n <li>\n <AssistantMd mdText={mdText} />\n </li>\n ))}\n </TagName>\n );\n\ntype RenderTypes = MdTypes;\n\ntype MdRenderers =\n | NormalRenderes\n | ListRenderers\n | TextRenderer\n | HyperLinkRenderer\n | JoinMdRenderer;\n\n// type RenderMap = Record<RenderTypes, MdRenderers>;\n\nconst NormalTextMd: TextRenderer = ({ mdText }) => {\n return <DisplayURL text={mdText} />;\n};\n\nconst HyperLinkMd: HyperLinkRenderer = ({ mdText }) => (\n <a href={mdText.link}>\n <AssistantMd mdText={mdText.value} />\n </a>\n);\n\nconst JoinMd: JoinMdRenderer = ({ mdText: { lhs, rhs } }) => (\n <>\n <AssistantMd mdText={lhs} />\n <AssistantMd mdText={rhs} />\n </>\n);\n\nconst mdTypeRenderers = {\n normal_text: NormalTextMd,\n bold: normalWrapper(\"strong\"),\n italic: normalWrapper(\"em\"),\n underline: normalWrapper(\"u\"),\n hyperlink: HyperLinkMd,\n ordered_list: listWrapper(\"ol\"),\n unordered_list: listWrapper(\"ul\"),\n newline: () => <br />,\n join: JoinMd,\n};\n\nfunction exhaustiveCheck(param: never) {}\n\nexport default function AssistantMd({ mdText }: MdTextProp) {\n switch (mdText.markdown_text) {\n case \"bold\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"italic\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"normal_text\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"underline\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"hyperlink\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"ordered_list\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"unordered_list\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"join\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"newline\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n return <RendenMDElement />;\n }\n }\n exhaustiveCheck(mdText);\n}\n"],"names":[],"version":3,"file":"assistant_md.d.ts.map"}
1
+ {"mappings":"AAeA,kCAAkC,GAAG,EAAE,MAAM;;;IA2B5C;AAqDD,kBAAkB;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF,wBAAwB;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1C,gBAAgB;IACd,IAAI,EAAE,gBAAgB,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,kBAAkB;IAChB,MAAM,EAAE,gBAAgB,CAAC;IACzB,aAAa,EAAE,QAAQ,CAAC;CACzB,CAAC;AAEF,qBAAqB;IACnB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,aAAa,EAAE,WAAW,CAAC;CAC5B,CAAC;AAEF,0BAA0B;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,qBAAqB;IACnB,SAAS,EAAE,kBAAkB,CAAC;IAC9B,aAAa,EAAE,WAAW,CAAC;CAC5B,CAAC;AAEF,cAAc;IACZ,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB,CAAC;AAEF,sBAAsB;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,cAAc,CAAC;CAC/B,CAAC;AAEF,wBAAwB;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,gBAAgB,CAAC;CACjC,CAAC;AAEF,mBAAmB;IACjB,aAAa,EAAE,SAAS,CAAC;CAC1B,CAAC;AAEF,uBAAuB;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,kBAAkB;IAChB,IAAI,EAAE,eAAe,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,cACI,UAAU,GACV,QAAQ,GACR,UAAU,GACV,aAAa,GACb,aAAa,GACb,cAAc,GACd,gBAAgB,GAChB,UAAU,GACV,WAAW,CAAC;AAEhB,kBAAkB;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AA8ErC,oCAAoC,EAAE,MAAM,EAAE,EAAE,UAAU,eAgDzD","sources":["src/src/assistant_md.tsx","src/assistant_md.tsx"],"sourcesContent":[null,"import React from \"react\";\n\nconst URL_REGEX =\n /[(http(s)?):\\/\\/(www\\.)?a-zA-Z0-9@:%._\\+~#=-]{2,256}\\.[a-z]{2,6}\\b([-a-zA-Z0-9@:%_\\+.~#?&//=]*)/;\n\nconst normalStr = (str: string) => ({\n type: \"normal_str\",\n value: str,\n});\n\nconst urlStr = (str: string) => ({\n type: \"url\",\n value: str,\n});\n\nexport function parseUrlAndString(str: string) {\n const results = [];\n let remaining = str;\n while (remaining) {\n let match = remaining.match(URL_REGEX);\n if (!match) {\n results.push(normalStr(remaining));\n break;\n }\n\n if (match.index !== 0) {\n results.push(normalStr(remaining.slice(0, match.index)));\n results.push(\n urlStr(\n remaining.slice(\n match.index,\n match.index && match.index + match[0].length\n )\n )\n );\n remaining = remaining.slice(match.index && match.index + match[0].length);\n continue;\n }\n results.push(urlStr(remaining.slice(0, match[0].length)));\n remaining = remaining.slice(match[0].length);\n }\n return results;\n}\n\nconst DisplayWithSpace = ({ text }: { text: string }) => {\n return <span style={{ whiteSpace: \"pre-wrap\" }}>{text}</span>;\n};\n\nconst DisplayLineBreaks = ({ text }: { text: string }) => {\n let texts = text.split(\"\\n\");\n let lastOne = texts[texts.length - 1];\n let exceptLastOne = texts.slice(0, texts.length - 1);\n return (\n <>\n {exceptLastOne.reduce(\n (arr: (string | JSX.Element)[], text) => [\n ...arr,\n <DisplayWithSpace text={text} />,\n <br key={arr.length} />,\n ],\n []\n )}\n {<DisplayWithSpace text={lastOne} />}\n </>\n );\n};\n\nconst DisplayURL = ({ text }: { text: string }) => {\n const parsed = parseUrlAndString(text);\n return (\n <>\n {parsed.map(({ type, value }, i) =>\n type === \"url\" ? (\n <a href={value} target=\"_blank\" key={i} rel=\"noreferrer\">\n {value}\n </a>\n ) : (\n <DisplayLineBreaks text={value} key={i}></DisplayLineBreaks>\n )\n )}\n </>\n );\n};\n\ntype MdTypes =\n | \"normal_text\"\n | \"bold\"\n | \"italic\"\n | \"underline\"\n | \"hyperlink\"\n | \"ordered_list\"\n | \"unordered_list\"\n | \"newline\"\n | \"join\";\n\ntype NormalText = {\n normal_text: string;\n markdown_text: \"normal_text\";\n};\n\ntype MdValueContainer = { value: MdText };\n\ntype BoldText = {\n bold: MdValueContainer;\n markdown_text: \"bold\";\n};\n\ntype ItalicText = {\n italic: MdValueContainer;\n markdown_text: \"italic\";\n};\n\ntype UnderlineText = {\n underline: MdValueContainer;\n markdown_text: \"underline\";\n};\n\ntype HyperLinkContainer = {\n link: string;\n value: MdText;\n};\n\ntype HyperLinkText = {\n hyperlink: HyperLinkContainer;\n markdown_text: \"hyperlink\";\n};\n\ntype MdList = {\n list: MdText[];\n};\n\ntype OrdredListText = {\n ordered_list: MdList;\n markdown_text: \"ordered_list\";\n};\n\ntype UnOrdredListText = {\n unordered_list: MdList;\n markdown_text: \"unordered_list\";\n};\n\ntype NewlineText = {\n markdown_text: \"newline\";\n};\n\ntype JoinMdContainer = {\n lhs: MdText;\n rhs: MdText;\n};\n\ntype JoinMdText = {\n join: JoinMdContainer;\n markdown_text: \"join\";\n};\n\ntype MdText =\n | NormalText\n | BoldText\n | ItalicText\n | UnderlineText\n | HyperLinkText\n | OrdredListText\n | UnOrdredListText\n | JoinMdText\n | NewlineText;\n\ntype MdTextProp = { mdText: MdText };\n\ntype NormalRenderes = React.FunctionComponent<{ mdText: MdValueContainer }>;\n\ntype ListRenderers = React.FunctionComponent<{ mdText: MdList }>;\n\ntype TextRenderer = React.FunctionComponent<{ mdText: string }>;\n\ntype JoinMdRenderer = React.FunctionComponent<{ mdText: JoinMdContainer }>;\n\ntype HyperLinkRenderer = React.FunctionComponent<{\n mdText: HyperLinkContainer;\n}>;\n\nconst normalWrapper: (TagName: React.ElementType) => NormalRenderes =\n (TagName: React.ElementType) =>\n ({ mdText }) =>\n (\n <TagName>\n <AssistantMd mdText={mdText.value} />\n </TagName>\n );\n\nconst listWrapper: (TagName: React.ElementType) => ListRenderers =\n (TagName) =>\n ({ mdText: { list } }) =>\n (\n <TagName>\n {list.map((mdText) => (\n <li>\n <AssistantMd mdText={mdText} />\n </li>\n ))}\n </TagName>\n );\n\ntype RenderTypes = MdTypes;\n\ntype MdRenderers =\n | NormalRenderes\n | ListRenderers\n | TextRenderer\n | HyperLinkRenderer\n | JoinMdRenderer;\n\n// type RenderMap = Record<RenderTypes, MdRenderers>;\n\nconst NormalTextMd: TextRenderer = ({ mdText }) => {\n return <DisplayURL text={mdText} />;\n};\n\nconst HyperLinkMd: HyperLinkRenderer = ({ mdText }) => (\n <a href={mdText.link} target=\"_blank\">\n <AssistantMd mdText={mdText.value} />\n </a>\n);\n\nconst JoinMd: JoinMdRenderer = ({ mdText: { lhs, rhs } }) => (\n <>\n <AssistantMd mdText={lhs} />\n <AssistantMd mdText={rhs} />\n </>\n);\n\nconst mdTypeRenderers = {\n normal_text: NormalTextMd,\n bold: normalWrapper(\"strong\"),\n italic: normalWrapper(\"em\"),\n underline: normalWrapper(\"u\"),\n hyperlink: HyperLinkMd,\n ordered_list: listWrapper(\"ol\"),\n unordered_list: listWrapper(\"ul\"),\n newline: () => <br />,\n join: JoinMd,\n};\n\nfunction exhaustiveCheck(param: never) {}\n\nexport default function AssistantMd({ mdText }: MdTextProp) {\n switch (mdText.markdown_text) {\n case \"bold\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"italic\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"normal_text\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"underline\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"hyperlink\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"ordered_list\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"unordered_list\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"join\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"newline\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n return <RendenMDElement />;\n }\n }\n exhaustiveCheck(mdText);\n}\n"],"names":[],"version":3,"file":"assistant_md.d.ts.map"}
@@ -12,8 +12,8 @@ function $parcel$export(e, n, v, s) {
12
12
 
13
13
  $parcel$defineInteropFlag(module.exports);
14
14
 
15
- $parcel$export(module.exports, "parseUrlAndString", () => $69304f3cd9aa4f81$export$41849f4004f0a2a6, (v) => $69304f3cd9aa4f81$export$41849f4004f0a2a6 = v);
16
- $parcel$export(module.exports, "default", () => $69304f3cd9aa4f81$export$2e2bcd8739ae039, (v) => $69304f3cd9aa4f81$export$2e2bcd8739ae039 = v);
15
+ $parcel$export(module.exports, "parseUrlAndString", () => $69304f3cd9aa4f81$export$41849f4004f0a2a6);
16
+ $parcel$export(module.exports, "default", () => $69304f3cd9aa4f81$export$2e2bcd8739ae039);
17
17
 
18
18
  const $69304f3cd9aa4f81$var$URL_REGEX = /[(http(s)?):\/\/(www\.)?a-zA-Z0-9@:%._\+~#=-]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/;
19
19
  const $69304f3cd9aa4f81$var$normalStr = (str)=>({
@@ -48,13 +48,7 @@ const $69304f3cd9aa4f81$var$DisplayWithSpace = ({ text: text })=>{
48
48
  return /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement("span", {
49
49
  style: {
50
50
  whiteSpace: "pre-wrap"
51
- },
52
- __source: {
53
- fileName: "src/assistant_md.tsx",
54
- lineNumber: 46,
55
- columnNumber: 10
56
- },
57
- __self: undefined
51
+ }
58
52
  }, text);
59
53
  };
60
54
  const $69304f3cd9aa4f81$var$DisplayLineBreaks = ({ text: text1 })=>{
@@ -64,31 +58,13 @@ const $69304f3cd9aa4f81$var$DisplayLineBreaks = ({ text: text1 })=>{
64
58
  return /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement((0, ($parcel$interopDefault($kmRvl$react))).Fragment, null, exceptLastOne.reduce((arr, text)=>[
65
59
  ...arr,
66
60
  /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement($69304f3cd9aa4f81$var$DisplayWithSpace, {
67
- text: text,
68
- __source: {
69
- fileName: "src/assistant_md.tsx",
70
- lineNumber: 58,
71
- columnNumber: 11
72
- },
73
- __self: undefined
61
+ text: text
74
62
  }),
75
63
  /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement("br", {
76
- key: arr.length,
77
- __source: {
78
- fileName: "src/assistant_md.tsx",
79
- lineNumber: 59,
80
- columnNumber: 11
81
- },
82
- __self: undefined
64
+ key: arr.length
83
65
  }),
84
66
  ], []), /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement($69304f3cd9aa4f81$var$DisplayWithSpace, {
85
- text: lastOne,
86
- __source: {
87
- fileName: "src/assistant_md.tsx",
88
- lineNumber: 63,
89
- columnNumber: 8
90
- },
91
- __self: undefined
67
+ text: lastOne
92
68
  }));
93
69
  };
94
70
  const $69304f3cd9aa4f81$var$DisplayURL = ({ text: text })=>{
@@ -97,109 +73,34 @@ const $69304f3cd9aa4f81$var$DisplayURL = ({ text: text })=>{
97
73
  href: value,
98
74
  target: "_blank",
99
75
  key: i,
100
- rel: "noreferrer",
101
- __source: {
102
- fileName: "src/assistant_md.tsx",
103
- lineNumber: 74,
104
- columnNumber: 11
105
- },
106
- __self: undefined
76
+ rel: "noreferrer"
107
77
  }, value) : /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement($69304f3cd9aa4f81$var$DisplayLineBreaks, {
108
78
  text: value,
109
- key: i,
110
- __source: {
111
- fileName: "src/assistant_md.tsx",
112
- lineNumber: 78,
113
- columnNumber: 11
114
- },
115
- __self: undefined
79
+ key: i
116
80
  })));
117
81
  };
118
- const $69304f3cd9aa4f81$var$normalWrapper = (TagName)=>({ mdText: mdText })=>/*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement(TagName, {
119
- __source: {
120
- fileName: "src/assistant_md.tsx",
121
- lineNumber: 185,
122
- columnNumber: 7
123
- },
124
- __self: undefined
125
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement($69304f3cd9aa4f81$export$2e2bcd8739ae039, {
126
- mdText: mdText.value,
127
- __source: {
128
- fileName: "src/assistant_md.tsx",
129
- lineNumber: 186,
130
- columnNumber: 9
131
- },
132
- __self: undefined
82
+ const $69304f3cd9aa4f81$var$normalWrapper = (TagName)=>({ mdText: mdText })=>/*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement(TagName, null, /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement($69304f3cd9aa4f81$export$2e2bcd8739ae039, {
83
+ mdText: mdText.value
133
84
  }));
134
- const $69304f3cd9aa4f81$var$listWrapper = (TagName)=>({ mdText: { list: list } })=>/*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement(TagName, {
135
- __source: {
136
- fileName: "src/assistant_md.tsx",
137
- lineNumber: 194,
138
- columnNumber: 7
139
- },
140
- __self: undefined
141
- }, list.map((mdText)=>/*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement("li", {
142
- __source: {
143
- fileName: "src/assistant_md.tsx",
144
- lineNumber: 196,
145
- columnNumber: 11
146
- },
147
- __self: undefined
148
- }, /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement($69304f3cd9aa4f81$export$2e2bcd8739ae039, {
149
- mdText: mdText,
150
- __source: {
151
- fileName: "src/assistant_md.tsx",
152
- lineNumber: 197,
153
- columnNumber: 13
154
- },
155
- __self: undefined
85
+ const $69304f3cd9aa4f81$var$listWrapper = (TagName)=>({ mdText: { list: list } })=>/*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement(TagName, null, list.map((mdText)=>/*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement("li", null, /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement($69304f3cd9aa4f81$export$2e2bcd8739ae039, {
86
+ mdText: mdText
156
87
  }))));
157
88
  // type RenderMap = Record<RenderTypes, MdRenderers>;
158
89
  const $69304f3cd9aa4f81$var$NormalTextMd = ({ mdText: mdText })=>{
159
90
  return /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement($69304f3cd9aa4f81$var$DisplayURL, {
160
- text: mdText,
161
- __source: {
162
- fileName: "src/assistant_md.tsx",
163
- lineNumber: 215,
164
- columnNumber: 10
165
- },
166
- __self: undefined
91
+ text: mdText
167
92
  });
168
93
  };
169
94
  const $69304f3cd9aa4f81$var$HyperLinkMd = ({ mdText: mdText })=>/*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement("a", {
170
95
  href: mdText.link,
171
- target: "_blank",
172
- __source: {
173
- fileName: "src/assistant_md.tsx",
174
- lineNumber: 219,
175
- columnNumber: 3
176
- },
177
- __self: undefined
96
+ target: "_blank"
178
97
  }, /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement($69304f3cd9aa4f81$export$2e2bcd8739ae039, {
179
- mdText: mdText.value,
180
- __source: {
181
- fileName: "src/assistant_md.tsx",
182
- lineNumber: 220,
183
- columnNumber: 5
184
- },
185
- __self: undefined
98
+ mdText: mdText.value
186
99
  }));
187
100
  const $69304f3cd9aa4f81$var$JoinMd = ({ mdText: { lhs: lhs , rhs: rhs } })=>/*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement((0, ($parcel$interopDefault($kmRvl$react))).Fragment, null, /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement($69304f3cd9aa4f81$export$2e2bcd8739ae039, {
188
- mdText: lhs,
189
- __source: {
190
- fileName: "src/assistant_md.tsx",
191
- lineNumber: 226,
192
- columnNumber: 5
193
- },
194
- __self: undefined
101
+ mdText: lhs
195
102
  }), /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement($69304f3cd9aa4f81$export$2e2bcd8739ae039, {
196
- mdText: rhs,
197
- __source: {
198
- fileName: "src/assistant_md.tsx",
199
- lineNumber: 227,
200
- columnNumber: 5
201
- },
202
- __self: undefined
103
+ mdText: rhs
203
104
  }));
204
105
  const $69304f3cd9aa4f81$var$mdTypeRenderers = {
205
106
  normal_text: $69304f3cd9aa4f81$var$NormalTextMd,
@@ -209,14 +110,7 @@ const $69304f3cd9aa4f81$var$mdTypeRenderers = {
209
110
  hyperlink: $69304f3cd9aa4f81$var$HyperLinkMd,
210
111
  ordered_list: $69304f3cd9aa4f81$var$listWrapper("ol"),
211
112
  unordered_list: $69304f3cd9aa4f81$var$listWrapper("ul"),
212
- newline: ()=>/*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement("br", {
213
- __source: {
214
- fileName: "src/assistant_md.tsx",
215
- lineNumber: 239,
216
- columnNumber: 18
217
- },
218
- __self: undefined
219
- }),
113
+ newline: ()=>/*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement("br", null),
220
114
  join: $69304f3cd9aa4f81$var$JoinMd
221
115
  };
222
116
  function $69304f3cd9aa4f81$var$exhaustiveCheck(param) {}
@@ -227,13 +121,7 @@ function $69304f3cd9aa4f81$export$2e2bcd8739ae039({ mdText: mdText }) {
227
121
  let RendenMDElement = $69304f3cd9aa4f81$var$mdTypeRenderers[mdText.markdown_text];
228
122
  let container = mdText[mdText.markdown_text];
229
123
  return /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement(RendenMDElement, {
230
- mdText: container,
231
- __source: {
232
- fileName: "src/assistant_md.tsx",
233
- lineNumber: 250,
234
- columnNumber: 14
235
- },
236
- __self: this
124
+ mdText: container
237
125
  });
238
126
  }
239
127
  case "italic":
@@ -241,13 +129,7 @@ function $69304f3cd9aa4f81$export$2e2bcd8739ae039({ mdText: mdText }) {
241
129
  let RendenMDElement = $69304f3cd9aa4f81$var$mdTypeRenderers[mdText.markdown_text];
242
130
  let container = mdText[mdText.markdown_text];
243
131
  return /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement(RendenMDElement, {
244
- mdText: container,
245
- __source: {
246
- fileName: "src/assistant_md.tsx",
247
- lineNumber: 255,
248
- columnNumber: 14
249
- },
250
- __self: this
132
+ mdText: container
251
133
  });
252
134
  }
253
135
  case "normal_text":
@@ -255,13 +137,7 @@ function $69304f3cd9aa4f81$export$2e2bcd8739ae039({ mdText: mdText }) {
255
137
  let RendenMDElement = $69304f3cd9aa4f81$var$mdTypeRenderers[mdText.markdown_text];
256
138
  let container = mdText[mdText.markdown_text];
257
139
  return /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement(RendenMDElement, {
258
- mdText: container,
259
- __source: {
260
- fileName: "src/assistant_md.tsx",
261
- lineNumber: 260,
262
- columnNumber: 14
263
- },
264
- __self: this
140
+ mdText: container
265
141
  });
266
142
  }
267
143
  case "underline":
@@ -269,13 +145,7 @@ function $69304f3cd9aa4f81$export$2e2bcd8739ae039({ mdText: mdText }) {
269
145
  let RendenMDElement = $69304f3cd9aa4f81$var$mdTypeRenderers[mdText.markdown_text];
270
146
  let container = mdText[mdText.markdown_text];
271
147
  return /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement(RendenMDElement, {
272
- mdText: container,
273
- __source: {
274
- fileName: "src/assistant_md.tsx",
275
- lineNumber: 265,
276
- columnNumber: 14
277
- },
278
- __self: this
148
+ mdText: container
279
149
  });
280
150
  }
281
151
  case "hyperlink":
@@ -283,13 +153,7 @@ function $69304f3cd9aa4f81$export$2e2bcd8739ae039({ mdText: mdText }) {
283
153
  let RendenMDElement = $69304f3cd9aa4f81$var$mdTypeRenderers[mdText.markdown_text];
284
154
  let container = mdText[mdText.markdown_text];
285
155
  return /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement(RendenMDElement, {
286
- mdText: container,
287
- __source: {
288
- fileName: "src/assistant_md.tsx",
289
- lineNumber: 270,
290
- columnNumber: 14
291
- },
292
- __self: this
156
+ mdText: container
293
157
  });
294
158
  }
295
159
  case "ordered_list":
@@ -297,13 +161,7 @@ function $69304f3cd9aa4f81$export$2e2bcd8739ae039({ mdText: mdText }) {
297
161
  let RendenMDElement = $69304f3cd9aa4f81$var$mdTypeRenderers[mdText.markdown_text];
298
162
  let container = mdText[mdText.markdown_text];
299
163
  return /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement(RendenMDElement, {
300
- mdText: container,
301
- __source: {
302
- fileName: "src/assistant_md.tsx",
303
- lineNumber: 275,
304
- columnNumber: 14
305
- },
306
- __self: this
164
+ mdText: container
307
165
  });
308
166
  }
309
167
  case "unordered_list":
@@ -311,13 +169,7 @@ function $69304f3cd9aa4f81$export$2e2bcd8739ae039({ mdText: mdText }) {
311
169
  let RendenMDElement = $69304f3cd9aa4f81$var$mdTypeRenderers[mdText.markdown_text];
312
170
  let container = mdText[mdText.markdown_text];
313
171
  return /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement(RendenMDElement, {
314
- mdText: container,
315
- __source: {
316
- fileName: "src/assistant_md.tsx",
317
- lineNumber: 280,
318
- columnNumber: 14
319
- },
320
- __self: this
172
+ mdText: container
321
173
  });
322
174
  }
323
175
  case "join":
@@ -325,30 +177,17 @@ function $69304f3cd9aa4f81$export$2e2bcd8739ae039({ mdText: mdText }) {
325
177
  let RendenMDElement = $69304f3cd9aa4f81$var$mdTypeRenderers[mdText.markdown_text];
326
178
  let container = mdText[mdText.markdown_text];
327
179
  return /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement(RendenMDElement, {
328
- mdText: container,
329
- __source: {
330
- fileName: "src/assistant_md.tsx",
331
- lineNumber: 285,
332
- columnNumber: 14
333
- },
334
- __self: this
180
+ mdText: container
335
181
  });
336
182
  }
337
183
  case "newline":
338
184
  {
339
185
  let RendenMDElement = $69304f3cd9aa4f81$var$mdTypeRenderers[mdText.markdown_text];
340
- return /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement(RendenMDElement, {
341
- __source: {
342
- fileName: "src/assistant_md.tsx",
343
- lineNumber: 289,
344
- columnNumber: 14
345
- },
346
- __self: this
347
- });
186
+ return /*#__PURE__*/ (0, ($parcel$interopDefault($kmRvl$react))).createElement(RendenMDElement, null);
348
187
  }
349
188
  }
350
189
  $69304f3cd9aa4f81$var$exhaustiveCheck(mdText);
351
190
  }
352
191
 
353
192
 
354
- //# sourceMappingURL=assistant_md.cjs.map
193
+ //# sourceMappingURL=assistant_md.js.map
@@ -0,0 +1 @@
1
+ {"mappings":"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","sources":["src/assistant_md.tsx"],"sourcesContent":["import React from \"react\";\n\nconst URL_REGEX =\n /[(http(s)?):\\/\\/(www\\.)?a-zA-Z0-9@:%._\\+~#=-]{2,256}\\.[a-z]{2,6}\\b([-a-zA-Z0-9@:%_\\+.~#?&//=]*)/;\n\nconst normalStr = (str: string) => ({\n type: \"normal_str\",\n value: str,\n});\n\nconst urlStr = (str: string) => ({\n type: \"url\",\n value: str,\n});\n\nexport function parseUrlAndString(str: string) {\n const results = [];\n let remaining = str;\n while (remaining) {\n let match = remaining.match(URL_REGEX);\n if (!match) {\n results.push(normalStr(remaining));\n break;\n }\n\n if (match.index !== 0) {\n results.push(normalStr(remaining.slice(0, match.index)));\n results.push(\n urlStr(\n remaining.slice(\n match.index,\n match.index && match.index + match[0].length\n )\n )\n );\n remaining = remaining.slice(match.index && match.index + match[0].length);\n continue;\n }\n results.push(urlStr(remaining.slice(0, match[0].length)));\n remaining = remaining.slice(match[0].length);\n }\n return results;\n}\n\nconst DisplayWithSpace = ({ text }: { text: string }) => {\n return <span style={{ whiteSpace: \"pre-wrap\" }}>{text}</span>;\n};\n\nconst DisplayLineBreaks = ({ text }: { text: string }) => {\n let texts = text.split(\"\\n\");\n let lastOne = texts[texts.length - 1];\n let exceptLastOne = texts.slice(0, texts.length - 1);\n return (\n <>\n {exceptLastOne.reduce(\n (arr: (string | JSX.Element)[], text) => [\n ...arr,\n <DisplayWithSpace text={text} />,\n <br key={arr.length} />,\n ],\n []\n )}\n {<DisplayWithSpace text={lastOne} />}\n </>\n );\n};\n\nconst DisplayURL = ({ text }: { text: string }) => {\n const parsed = parseUrlAndString(text);\n return (\n <>\n {parsed.map(({ type, value }, i) =>\n type === \"url\" ? (\n <a href={value} target=\"_blank\" key={i} rel=\"noreferrer\">\n {value}\n </a>\n ) : (\n <DisplayLineBreaks text={value} key={i}></DisplayLineBreaks>\n )\n )}\n </>\n );\n};\n\ntype MdTypes =\n | \"normal_text\"\n | \"bold\"\n | \"italic\"\n | \"underline\"\n | \"hyperlink\"\n | \"ordered_list\"\n | \"unordered_list\"\n | \"newline\"\n | \"join\";\n\ntype NormalText = {\n normal_text: string;\n markdown_text: \"normal_text\";\n};\n\ntype MdValueContainer = { value: MdText };\n\ntype BoldText = {\n bold: MdValueContainer;\n markdown_text: \"bold\";\n};\n\ntype ItalicText = {\n italic: MdValueContainer;\n markdown_text: \"italic\";\n};\n\ntype UnderlineText = {\n underline: MdValueContainer;\n markdown_text: \"underline\";\n};\n\ntype HyperLinkContainer = {\n link: string;\n value: MdText;\n};\n\ntype HyperLinkText = {\n hyperlink: HyperLinkContainer;\n markdown_text: \"hyperlink\";\n};\n\ntype MdList = {\n list: MdText[];\n};\n\ntype OrdredListText = {\n ordered_list: MdList;\n markdown_text: \"ordered_list\";\n};\n\ntype UnOrdredListText = {\n unordered_list: MdList;\n markdown_text: \"unordered_list\";\n};\n\ntype NewlineText = {\n markdown_text: \"newline\";\n};\n\ntype JoinMdContainer = {\n lhs: MdText;\n rhs: MdText;\n};\n\ntype JoinMdText = {\n join: JoinMdContainer;\n markdown_text: \"join\";\n};\n\ntype MdText =\n | NormalText\n | BoldText\n | ItalicText\n | UnderlineText\n | HyperLinkText\n | OrdredListText\n | UnOrdredListText\n | JoinMdText\n | NewlineText;\n\ntype MdTextProp = { mdText: MdText };\n\ntype NormalRenderes = React.FunctionComponent<{ mdText: MdValueContainer }>;\n\ntype ListRenderers = React.FunctionComponent<{ mdText: MdList }>;\n\ntype TextRenderer = React.FunctionComponent<{ mdText: string }>;\n\ntype JoinMdRenderer = React.FunctionComponent<{ mdText: JoinMdContainer }>;\n\ntype HyperLinkRenderer = React.FunctionComponent<{\n mdText: HyperLinkContainer;\n}>;\n\nconst normalWrapper: (TagName: React.ElementType) => NormalRenderes =\n (TagName: React.ElementType) =>\n ({ mdText }) =>\n (\n <TagName>\n <AssistantMd mdText={mdText.value} />\n </TagName>\n );\n\nconst listWrapper: (TagName: React.ElementType) => ListRenderers =\n (TagName) =>\n ({ mdText: { list } }) =>\n (\n <TagName>\n {list.map((mdText) => (\n <li>\n <AssistantMd mdText={mdText} />\n </li>\n ))}\n </TagName>\n );\n\ntype RenderTypes = MdTypes;\n\ntype MdRenderers =\n | NormalRenderes\n | ListRenderers\n | TextRenderer\n | HyperLinkRenderer\n | JoinMdRenderer;\n\n// type RenderMap = Record<RenderTypes, MdRenderers>;\n\nconst NormalTextMd: TextRenderer = ({ mdText }) => {\n return <DisplayURL text={mdText} />;\n};\n\nconst HyperLinkMd: HyperLinkRenderer = ({ mdText }) => (\n <a href={mdText.link} target=\"_blank\">\n <AssistantMd mdText={mdText.value} />\n </a>\n);\n\nconst JoinMd: JoinMdRenderer = ({ mdText: { lhs, rhs } }) => (\n <>\n <AssistantMd mdText={lhs} />\n <AssistantMd mdText={rhs} />\n </>\n);\n\nconst mdTypeRenderers = {\n normal_text: NormalTextMd,\n bold: normalWrapper(\"strong\"),\n italic: normalWrapper(\"em\"),\n underline: normalWrapper(\"u\"),\n hyperlink: HyperLinkMd,\n ordered_list: listWrapper(\"ol\"),\n unordered_list: listWrapper(\"ul\"),\n newline: () => <br />,\n join: JoinMd,\n};\n\nfunction exhaustiveCheck(param: never) {}\n\nexport default function AssistantMd({ mdText }: MdTextProp) {\n switch (mdText.markdown_text) {\n case \"bold\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"italic\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"normal_text\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"underline\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"hyperlink\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"ordered_list\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"unordered_list\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"join\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n let container = mdText[mdText.markdown_text];\n return <RendenMDElement mdText={container} />;\n }\n case \"newline\": {\n let RendenMDElement = mdTypeRenderers[mdText.markdown_text];\n return <RendenMDElement />;\n }\n }\n exhaustiveCheck(mdText);\n}\n"],"names":[],"version":3,"file":"assistant_md.js.map"}
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@skitter/assistant_md",
3
- "version": "1.0.2",
3
+ "version": "1.0.3",
4
4
  "description": "",
5
5
  "source": "src/assistant_md.tsx",
6
- "main": "dist/assistant_md.cjs",
6
+ "main": "dist/assistant_md.js",
7
7
  "types": "dist/assistant_md.d.ts",
8
8
  "scripts": {
9
9
  "watch": "parcel watch",
Binary file
Binary file
Binary file