@notion-md-converter/qiita
Version:
Notion to Qiita Markdown Converter
2 lines (1 loc) • 7.04 kB
JavaScript
;var e=require("@notion-md-converter/core");const r={"ascii art":void 0,abap:"abap",agda:void 0,arduino:void 0,assembly:"nasm",bash:"shell",basic:"bbcbasic",bnf:void 0,c:"c","c#":"csharp","c++":"cpp",clojure:"clojure",coffeescript:"coffeescript",coq:"coq",css:"css",dart:"dart",dhall:void 0,diff:"diff",docker:"docker",ebnf:void 0,elixir:"elixir",elm:"elm",erlang:"erlang","f#":"fsharp",flow:void 0,fortran:"fortran",gherkin:"gherkin",glsl:"glsl",go:"go",graphql:"graphql",groovy:"groovy",haskell:"haskell",html:"html",idris:"idris",java:"java",javascript:"javascript",json:"json",julia:"julia",kotlin:"kotlin",latex:"tex",less:void 0,lisp:"common_lisp",livescript:"livescript","llvm ir":"llvm",lua:"lua",makefile:"make",markdown:"markdown",markup:"xml",matlab:"matlab",mathematica:"mathematica",mermaid:"mermaid",nix:"nix","notion formula":void 0,"objective-c":"objective_c",ocaml:"ocaml",pascal:"pascal",perl:"perl",php:"php","plain text":"plaintext",powershell:"powershell",prolog:"prolog",protobuf:"protobuf",purescript:void 0,python:"python",r:"r",racket:"racket",reason:"reasonml",ruby:"ruby",rust:"rust",sass:"sass",hcl:"hcl",smalltalk:"smalltalk",scala:"scala",scheme:"scheme",scss:"scss",shell:"shell",solidity:void 0,sql:"sql",swift:"swift",toml:"toml",typescript:"typescript","vb.net":"vb",verilog:"verilog",vhdl:"vhdl","visual basic":"vb",webassembly:void 0,xml:"xml",yaml:"yaml","java/c/c++/c#":"java"},t=e=>e,a=e=>e,o=e=>e,i=e=>e,s=r=>{const t=e.ProviderAsciinemaUtils.embed(r);return t||r},l=(r,t={})=>{const a={style:"border: 1px solid rgba(0, 0, 0, 0.1);",height:t.height||"450",width:t.width||"800",src:`https://www.figma.com/embed?embed_host=astra&url=${r}`};return`<iframe ${e.HTMLUtils.objectToPropertiesStr(a)}></iframe>`},d=(r,t={})=>{const a={src:r,width:t.width||"595",height:t.height||"485",frameborder:"0",marginwidth:"0",marginheight:"0",scrolling:"no",style:"border:1px solid #CCC; border-width:1px; margin-bottom:5px; max-width: 100%;",loading:"lazy",allowfullscreen:!0};return`<iframe ${e.HTMLUtils.objectToPropertiesStr(a)}></iframe>`},c=(r,t={})=>{const a={src:r,frameborder:"0",width:t.width||"960",height:t.height||"569",allowfullscreen:!0,mozallowfullscreen:!0,webkitallowfullscreen:!0};return`<iframe ${e.HTMLUtils.objectToPropertiesStr(a)}></iframe>`},n=r=>{const t={src:"https://www.docswell.com/assets/libs/docswell-embed/docswell-embed.min.js",async:!0,class:"docswell-embed","data-src":r,"data-aspect":"0.5625"};return`<script ${e.HTMLUtils.objectToPropertiesStr(t)}><\/script>`},m=(r,t)=>{const a=e.ProviderYoutubeUtils.embed(r,t);return a||r},u={codeBlock:(e,t={})=>{const{diff:a=!1,language:o,filename:i}=t;let s="";if(o&&r[o]){const e=r[o];s+=a?`diff_${e}`:e}return i&&(s+=`:${i}`),`\`\`\`${s}\n${e}\n\`\`\``},equationBlock:e=>`\`\`\`math\n${e}\n\`\`\``,note:(e,r="info")=>[`:::note ${r}`,e,":::"].join("\n"),linkCard:t,embedX:a,embedCodeSandbox:o,embedCodePen:e.ProviderCodePenUtils.embed,embedGitHubGist:i,embedAsciinema:s,embedFigma:l,embedSpeakerDeck:r=>{const t={async:!0,class:"speakerdeck-embed","data-id":r,"data-ratio":"1.77777777777778",src:"https://speakerdeck.com/assets/embed.js"};return`<script ${e.HTMLUtils.objectToPropertiesStr(t)}><\/script>`},embedSlideShare:d,embedGoogleSlide:c,embedDocswell:n,embedYoutube:m,embedByURL:r=>{const t=e.ProviderUtils.getType(r);if(!t)return{result:r,isEmbed:!1};switch(t){case"x":case"codesandbox":case"github-gist":case"speaker-deck":return{result:r,isEmbed:!0};case"codepen":return{result:e.ProviderCodePenUtils.embed(r),isEmbed:!0};case"asciinema":return{result:s(r),isEmbed:r.endsWith(".js")};case"figma":return{result:l(r),isEmbed:!0};case"slideshare":return{result:d(r),isEmbed:!0};case"google-slide":return{result:c(r),isEmbed:!0};case"docswell":return{result:n(r),isEmbed:!0};case"youtube":return{result:m(r),isEmbed:!0};default:return{result:r,isEmbed:!1}}}},b=()=>e.createBookmarkTransformerFactory((({block:r})=>{const{result:t,isEmbed:a}=u.embedByURL(r.bookmark.url);return a?e.MarkdownUtils.wrapWithNewLines(t):e.MarkdownUtils.wrapWithNewLines(u.linkCard(r.bookmark.url))})),p=["yellow","yellow_background"],h=["red","red_background"],f=(r={})=>e.createCalloutTransformerFactory((({block:t,children:a,context:o})=>{const i=r.warnColors??p,s=r.alertColors??h,l=o.tools.richTextFormatter.format(t.callout.rich_text),d=(e=>i.includes(e)?"warn":s.includes(e)?"alert":"info")(t.callout.color);let c=l;return""!==a&&(c+=`\n${a}`),e.MarkdownUtils.wrapWithNewLines(u.note(c,d))})),k=()=>e.createCodeTransformerFactory((({block:r,captionMetadata:t,context:a})=>{const o={diff:"true"===t.getMetadataValue("diff")},i=a.tools.richTextFormatter.format(r.code.rich_text,{bold:!1,italic:!1,strikethrough:!1,underline:!1,code:!1,color:!1}),s=r.code.language,l=a.tools.richTextFormatter.plainText(t.getText());return e.MarkdownUtils.wrapWithNewLines(u.codeBlock(i,{diff:o.diff,language:s,filename:l}))})),w=()=>e.createEquationTransformerFactory((({block:r})=>{const t=r.equation.expression;return e.MarkdownUtils.wrapWithNewLines(u.equationBlock(t))})),g=()=>e.createLinkPreviewTransformerFactory((({block:r})=>{const t=r.link_preview.url,{result:a,isEmbed:o}=u.embedByURL(t);return o?a:e.MarkdownUtils.wrapWithNewLines(u.linkCard(t))})),v=(r={})=>e.createVideoTransformerFactory((({block:t,captionMetadata:a})=>{const o=r.fileAdapter??e.createNoChangeFileObjectAdapter(),{url:i}=o(t.video);if(e.isURL(i)){if("youtube"===e.ProviderUtils.getType(i))return u.embedYoutube(i)}return e.MarkdownUtils.wrapWithNewLines(e.HTMLUtils.videoTag({src:i,...a.getMetadata()}))})),x=()=>e.createEmbedTransformerFactory((({block:r,captionMetadata:t})=>{const a=r.embed.url,o=e.ProviderUtils.getType(a);if("codepen"===o)return u.embedCodePen(a,{height:t.getMetadataValue("height"),defaultTab:t.getMetadataValue("defaultTab")});if("figma"===o)return u.embedFigma(a,{height:t.getMetadataValue("height"),width:t.getMetadataValue("width")});if("google-slide"===o)return u.embedGoogleSlide(a,{height:t.getMetadataValue("height"),width:t.getMetadataValue("width")});if("youtube"===o)return u.embedYoutube(a,{height:t.getMetadataValue("height"),width:t.getMetadataValue("width")});if("speaker-deck"===o&&t.getMetadataValue("id"))return u.embedSpeakerDeck(t.getMetadataValue("id"));const{result:i,isEmbed:s}=u.embedByURL(a);return s?i:u.linkCard(a)}));class T extends e.NotionMarkdownConverter{constructor(){super({transformers:{bookmark:b(),breadcrumb:e.createUnsupportedBlockTransformer(),callout:f(),code:k(),equation:w(),link_preview:g(),video:v(),embed:x(),pdf:e.createUnsupportedBlockTransformer(),file:e.createUnsupportedBlockTransformer()}})}}exports.NotionQiitaMarkdownConverter=T,exports.QiitaMarkdownUtils=u,exports.createQiitaMarkdownBookmarkTransformer=b,exports.createQiitaMarkdownCalloutTransformer=f,exports.createQiitaMarkdownCodeTransformer=k,exports.createQiitaMarkdownEmbedTransformer=x,exports.createQiitaMarkdownEquationTransformer=w,exports.createQiitaMarkdownLinkPreviewTransformer=g,exports.createQiitaMarkdownVideoTransformer=v;