@mediansh/widget 0.9.0 → 0.11.0
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/README.md +6 -0
- package/dist/c-JXDHGUIF.js +9 -0
- package/dist/chunk-34CC4UFU.js +12 -0
- package/dist/chunk-34CC4UFU.js.map +1 -0
- package/dist/chunk-5BN2UMLM.js +12 -0
- package/dist/chunk-5BN2UMLM.js.map +1 -0
- package/dist/{chunk-HLALDSPM.js → chunk-6HESK4TV.js} +381 -62
- package/dist/chunk-6HESK4TV.js.map +1 -0
- package/dist/chunk-7BJPJ4OJ.js +21 -0
- package/dist/chunk-7BJPJ4OJ.js.map +1 -0
- package/dist/{chunk-R3S6Y434.js → chunk-BJXQMEXJ.js} +3359 -1449
- package/dist/chunk-BJXQMEXJ.js.map +1 -0
- package/dist/chunk-BSHZLMYB.js +12 -0
- package/dist/chunk-BSHZLMYB.js.map +1 -0
- package/dist/chunk-BTORE6PD.js +20 -0
- package/dist/chunk-BTORE6PD.js.map +1 -0
- package/dist/chunk-DUNILJ52.js +12 -0
- package/dist/chunk-DUNILJ52.js.map +1 -0
- package/dist/chunk-G5MMT3KQ.js +39 -0
- package/dist/chunk-G5MMT3KQ.js.map +1 -0
- package/dist/chunk-GMUADSA2.js +12 -0
- package/dist/chunk-GMUADSA2.js.map +1 -0
- package/dist/chunk-GVLMMFTR.js +12 -0
- package/dist/chunk-GVLMMFTR.js.map +1 -0
- package/dist/chunk-HBW32VOK.js +28 -0
- package/dist/chunk-HBW32VOK.js.map +1 -0
- package/dist/chunk-I7GCRIDC.js +12 -0
- package/dist/chunk-I7GCRIDC.js.map +1 -0
- package/dist/chunk-J3ET7D3V.js +12 -0
- package/dist/chunk-J3ET7D3V.js.map +1 -0
- package/dist/chunk-NVTQO56D.js +12 -0
- package/dist/chunk-NVTQO56D.js.map +1 -0
- package/dist/chunk-SNYO3HWZ.js +12 -0
- package/dist/chunk-SNYO3HWZ.js.map +1 -0
- package/dist/chunk-WPFEMDHJ.js +12 -0
- package/dist/chunk-WPFEMDHJ.js.map +1 -0
- package/dist/chunk-XXT4O5AT.js +16 -0
- package/dist/chunk-XXT4O5AT.js.map +1 -0
- package/dist/chunk-ZG63ZWXG.js +1379 -0
- package/dist/chunk-ZG63ZWXG.js.map +1 -0
- package/dist/core-X5EL4ACB.js +6179 -0
- package/dist/core-X5EL4ACB.js.map +1 -0
- package/dist/cpp-UFM3S5JK.js +10 -0
- package/dist/cpp-UFM3S5JK.js.map +1 -0
- package/dist/csharp-SS3YMXWT.js +12 -0
- package/dist/csharp-SS3YMXWT.js.map +1 -0
- package/dist/css-HP3HPRAF.js +9 -0
- package/dist/css-HP3HPRAF.js.map +1 -0
- package/dist/dart-DFSNOCJU.js +12 -0
- package/dist/dart-DFSNOCJU.js.map +1 -0
- package/dist/diff-J4T5ECLQ.js +12 -0
- package/dist/diff-J4T5ECLQ.js.map +1 -0
- package/dist/docker-MMKXE2DQ.js +12 -0
- package/dist/docker-MMKXE2DQ.js.map +1 -0
- package/dist/dotenv-2YCL424V.js +12 -0
- package/dist/dotenv-2YCL424V.js.map +1 -0
- package/dist/elixir-WSTF2ZPA.js +18 -0
- package/dist/elixir-WSTF2ZPA.js.map +1 -0
- package/dist/engine-javascript-4K6F4KL5.js +3242 -0
- package/dist/engine-javascript-4K6F4KL5.js.map +1 -0
- package/dist/github-dark-XHWJ4A4W.js +9 -0
- package/dist/github-dark-XHWJ4A4W.js.map +1 -0
- package/dist/github-light-2RDLQDFL.js +9 -0
- package/dist/github-light-2RDLQDFL.js.map +1 -0
- package/dist/go-D7KDTP2F.js +12 -0
- package/dist/go-D7KDTP2F.js.map +1 -0
- package/dist/graphql-WHHYDJCW.js +13 -0
- package/dist/graphql-WHHYDJCW.js.map +1 -0
- package/dist/{highlighted-body-OFNGDK62-T25BCWKJ.js → highlighted-body-OFNGDK62-MDI6EUKH.js} +4 -3
- package/dist/highlighted-body-OFNGDK62-MDI6EUKH.js.map +1 -0
- package/dist/html-YMRWH5LQ.js +11 -0
- package/dist/html-YMRWH5LQ.js.map +1 -0
- package/dist/index.d.ts +9 -7
- package/dist/index.js +2588 -2058
- package/dist/index.js.map +1 -1
- package/dist/ini-HC2LCVSW.js +12 -0
- package/dist/ini-HC2LCVSW.js.map +1 -0
- package/dist/java-DRYXJ2ZD.js +9 -0
- package/dist/java-DRYXJ2ZD.js.map +1 -0
- package/dist/javascript-JG6W5B7H.js +9 -0
- package/dist/javascript-JG6W5B7H.js.map +1 -0
- package/dist/json-DTKAB2JP.js +9 -0
- package/dist/json-DTKAB2JP.js.map +1 -0
- package/dist/jsonc-5XQSX3HW.js +12 -0
- package/dist/jsonc-5XQSX3HW.js.map +1 -0
- package/dist/jsx-BQ6TEX75.js +9 -0
- package/dist/jsx-BQ6TEX75.js.map +1 -0
- package/dist/kotlin-VQIGNFHN.js +12 -0
- package/dist/kotlin-VQIGNFHN.js.map +1 -0
- package/dist/mermaid-GHXKKRXX-FX4OMDLK.js +12 -0
- package/dist/mermaid-GHXKKRXX-FX4OMDLK.js.map +1 -0
- package/dist/message-markdown-GNTNT3WJ.js +368 -0
- package/dist/message-markdown-GNTNT3WJ.js.map +1 -0
- package/dist/php-2C36DJ7I.js +37 -0
- package/dist/php-2C36DJ7I.js.map +1 -0
- package/dist/powershell-D7BEPXW6.js +12 -0
- package/dist/powershell-D7BEPXW6.js.map +1 -0
- package/dist/prisma-EU35L45H.js +12 -0
- package/dist/prisma-EU35L45H.js.map +1 -0
- package/dist/python-OBX5XH3P.js +12 -0
- package/dist/python-OBX5XH3P.js.map +1 -0
- package/dist/ruby-HWPYCEXB.js +73 -0
- package/dist/ruby-HWPYCEXB.js.map +1 -0
- package/dist/rust-KFI5KHCG.js +12 -0
- package/dist/rust-KFI5KHCG.js.map +1 -0
- package/dist/scss-NLXXJO5U.js +16 -0
- package/dist/scss-NLXXJO5U.js.map +1 -0
- package/dist/shellscript-MCPUYTZ6.js +9 -0
- package/dist/shellscript-MCPUYTZ6.js.map +1 -0
- package/dist/sql-KWTK6KCU.js +9 -0
- package/dist/sql-KWTK6KCU.js.map +1 -0
- package/dist/swift-TETGEM4C.js +12 -0
- package/dist/swift-TETGEM4C.js.map +1 -0
- package/dist/toml-XCKXGRSV.js +12 -0
- package/dist/toml-XCKXGRSV.js.map +1 -0
- package/dist/tsx-7WRVGXFH.js +9 -0
- package/dist/tsx-7WRVGXFH.js.map +1 -0
- package/dist/typescript-AEC2XLIU.js +9 -0
- package/dist/typescript-AEC2XLIU.js.map +1 -0
- package/dist/widget.css +1 -1
- package/dist/xml-BKVIJK6L.js +10 -0
- package/dist/xml-BKVIJK6L.js.map +1 -0
- package/dist/yaml-3AYDY36X.js +9 -0
- package/dist/yaml-3AYDY36X.js.map +1 -0
- package/package.json +1 -1
- package/dist/chunk-3ZXE5RBN.js +0 -15
- package/dist/chunk-3ZXE5RBN.js.map +0 -1
- package/dist/chunk-HLALDSPM.js.map +0 -1
- package/dist/chunk-R3S6Y434.js.map +0 -1
- package/dist/highlighted-body-OFNGDK62-T25BCWKJ.js.map +0 -1
- package/dist/mermaid-GHXKKRXX-U6EYEPWB.js +0 -11
- package/dist/message-markdown-KQVNAD42.js +0 -121
- package/dist/message-markdown-KQVNAD42.js.map +0 -1
- /package/dist/{mermaid-GHXKKRXX-U6EYEPWB.js.map → c-JXDHGUIF.js.map} +0 -0
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import "./chunk-77KIJLPP.js";
|
|
3
|
+
|
|
4
|
+
// ../../node_modules/.bun/@shikijs+langs@4.4.3/node_modules/@shikijs/langs/dist/ini.mjs
|
|
5
|
+
var lang = Object.freeze(JSON.parse(`{"displayName":"INI","name":"ini","patterns":[{"begin":"(^[\\\\t ]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ini"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.ini"}},"end":"\\\\n","name":"comment.line.number-sign.ini"}]},{"begin":"(^[\\\\t ]+)?(?=;)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ini"}},"end":"(?!\\\\G)","patterns":[{"begin":";","beginCaptures":{"0":{"name":"punctuation.definition.comment.ini"}},"end":"\\\\n","name":"comment.line.semicolon.ini"}]},{"captures":{"1":{"name":"keyword.other.definition.ini"},"2":{"name":"punctuation.separator.key-value.ini"}},"match":"\\\\b([-.0-9A-Z_a-z]+)\\\\b\\\\s*(=)"},{"captures":{"1":{"name":"punctuation.definition.entity.ini"},"3":{"name":"punctuation.definition.entity.ini"}},"match":"^(\\\\[)(.*?)(])","name":"entity.name.section.group-title.ini"},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ini"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.ini"}},"name":"string.quoted.single.ini","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.ini"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ini"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.ini"}},"name":"string.quoted.double.ini"}],"scopeName":"source.ini","aliases":["properties"]}`));
|
|
6
|
+
var ini_default = [
|
|
7
|
+
lang
|
|
8
|
+
];
|
|
9
|
+
export {
|
|
10
|
+
ini_default as default
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=ini-HC2LCVSW.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../node_modules/.bun/@shikijs+langs@4.4.3/node_modules/@shikijs/langs/dist/ini.mjs"],"sourcesContent":["const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"INI\\\",\\\"name\\\":\\\"ini\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(^[\\\\\\\\t ]+)?(?=#)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.ini\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"#\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ini\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.number-sign.ini\\\"}]},{\\\"begin\\\":\\\"(^[\\\\\\\\t ]+)?(?=;)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.whitespace.comment.leading.ini\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\G)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\";\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.ini\\\"}},\\\"end\\\":\\\"\\\\\\\\n\\\",\\\"name\\\":\\\"comment.line.semicolon.ini\\\"}]},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.definition.ini\\\"},\\\"2\\\":{\\\"name\\\":\\\"punctuation.separator.key-value.ini\\\"}},\\\"match\\\":\\\"\\\\\\\\b([-.0-9A-Z_a-z]+)\\\\\\\\b\\\\\\\\s*(=)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.entity.ini\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.entity.ini\\\"}},\\\"match\\\":\\\"^(\\\\\\\\[)(.*?)(])\\\",\\\"name\\\":\\\"entity.name.section.group-title.ini\\\"},{\\\"begin\\\":\\\"'\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ini\\\"}},\\\"end\\\":\\\"'\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ini\\\"}},\\\"name\\\":\\\"string.quoted.single.ini\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.ini\\\"}]},{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.ini\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.ini\\\"}},\\\"name\\\":\\\"string.quoted.double.ini\\\"}],\\\"scopeName\\\":\\\"source.ini\\\",\\\"aliases\\\":[\\\"properties\\\"]}\"))\n\nexport default [\nlang\n]\n"],"mappings":";;;;AAAA,IAAM,OAAO,OAAO,OAAO,KAAK,MAAM,q7CAA+nD,CAAC;AAEtqD,IAAO,cAAQ;AAAA,EACf;AACA;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import "./chunk-77KIJLPP.js";
|
|
3
|
+
|
|
4
|
+
// ../../node_modules/.bun/@shikijs+langs@4.4.3/node_modules/@shikijs/langs/dist/jsonc.mjs
|
|
5
|
+
var lang = Object.freeze(JSON.parse('{"displayName":"JSON with Comments","name":"jsonc","patterns":[{"include":"#value"}],"repository":{"array":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.json.comments"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.array.end.json.comments"}},"name":"meta.structure.array.json.comments","patterns":[{"include":"#value"},{"match":",","name":"punctuation.separator.array.json.comments"},{"match":"[^]\\\\s]","name":"invalid.illegal.expected-array-separator.json.comments"}]},"comments":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","captures":{"0":{"name":"punctuation.definition.comment.json.comments"}},"end":"\\\\*/","name":"comment.block.documentation.json.comments"},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.json.comments"}},"end":"\\\\*/","name":"comment.block.json.comments"},{"captures":{"1":{"name":"punctuation.definition.comment.json.comments"}},"match":"(//).*$\\\\n?","name":"comment.line.double-slash.js"}]},"constant":{"match":"\\\\b(?:true|false|null)\\\\b","name":"constant.language.json.comments"},"number":{"match":"-?(?:0|[1-9]\\\\d*)(?:(?:\\\\.\\\\d+)?(?:[Ee][-+]?\\\\d+)?)?","name":"constant.numeric.json.comments"},"object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dictionary.begin.json.comments"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.dictionary.end.json.comments"}},"name":"meta.structure.dictionary.json.comments","patterns":[{"include":"#objectkey"},{"include":"#comments"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.dictionary.key-value.json.comments"}},"end":"(,)|(?=})","endCaptures":{"1":{"name":"punctuation.separator.dictionary.pair.json.comments"}},"name":"meta.structure.dictionary.value.json.comments","patterns":[{"include":"#value"},{"match":"[^,\\\\s]","name":"invalid.illegal.expected-dictionary-separator.json.comments"}]},{"match":"[^}\\\\s]","name":"invalid.illegal.expected-dictionary-separator.json.comments"}]},"objectkey":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.support.type.property-name.begin.json.comments"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.support.type.property-name.end.json.comments"}},"name":"string.json.comments support.type.property-name.json.comments","patterns":[{"include":"#stringcontent"}]},"string":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.json.comments"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.json.comments"}},"name":"string.quoted.double.json.comments","patterns":[{"include":"#stringcontent"}]},"stringcontent":{"patterns":[{"match":"\\\\\\\\(?:[\\"/\\\\\\\\bfnrt]|u\\\\h{4})","name":"constant.character.escape.json.comments"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.json.comments"}]},"value":{"patterns":[{"include":"#constant"},{"include":"#number"},{"include":"#string"},{"include":"#array"},{"include":"#object"},{"include":"#comments"}]}},"scopeName":"source.json.comments"}'));
|
|
6
|
+
var jsonc_default = [
|
|
7
|
+
lang
|
|
8
|
+
];
|
|
9
|
+
export {
|
|
10
|
+
jsonc_default as default
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=jsonc-5XQSX3HW.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../node_modules/.bun/@shikijs+langs@4.4.3/node_modules/@shikijs/langs/dist/jsonc.mjs"],"sourcesContent":["const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"JSON with Comments\\\",\\\"name\\\":\\\"jsonc\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"}],\\\"repository\\\":{\\\"array\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.begin.json.comments\\\"}},\\\"end\\\":\\\"]\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.array.end.json.comments\\\"}},\\\"name\\\":\\\"meta.structure.array.json.comments\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"},{\\\"match\\\":\\\",\\\",\\\"name\\\":\\\"punctuation.separator.array.json.comments\\\"},{\\\"match\\\":\\\"[^]\\\\\\\\s]\\\",\\\"name\\\":\\\"invalid.illegal.expected-array-separator.json.comments\\\"}]},\\\"comments\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*(?!/)\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.json.comments\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.documentation.json.comments\\\"},{\\\"begin\\\":\\\"/\\\\\\\\*\\\",\\\"captures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.comment.json.comments\\\"}},\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.json.comments\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.comment.json.comments\\\"}},\\\"match\\\":\\\"(//).*$\\\\\\\\n?\\\",\\\"name\\\":\\\"comment.line.double-slash.js\\\"}]},\\\"constant\\\":{\\\"match\\\":\\\"\\\\\\\\b(?:true|false|null)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.json.comments\\\"},\\\"number\\\":{\\\"match\\\":\\\"-?(?:0|[1-9]\\\\\\\\d*)(?:(?:\\\\\\\\.\\\\\\\\d+)?(?:[Ee][-+]?\\\\\\\\d+)?)?\\\",\\\"name\\\":\\\"constant.numeric.json.comments\\\"},\\\"object\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dictionary.begin.json.comments\\\"}},\\\"end\\\":\\\"}\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.dictionary.end.json.comments\\\"}},\\\"name\\\":\\\"meta.structure.dictionary.json.comments\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#objectkey\\\"},{\\\"include\\\":\\\"#comments\\\"},{\\\"begin\\\":\\\":\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.separator.dictionary.key-value.json.comments\\\"}},\\\"end\\\":\\\"(,)|(?=})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.separator.dictionary.pair.json.comments\\\"}},\\\"name\\\":\\\"meta.structure.dictionary.value.json.comments\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#value\\\"},{\\\"match\\\":\\\"[^,\\\\\\\\s]\\\",\\\"name\\\":\\\"invalid.illegal.expected-dictionary-separator.json.comments\\\"}]},{\\\"match\\\":\\\"[^}\\\\\\\\s]\\\",\\\"name\\\":\\\"invalid.illegal.expected-dictionary-separator.json.comments\\\"}]},\\\"objectkey\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.support.type.property-name.begin.json.comments\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.support.type.property-name.end.json.comments\\\"}},\\\"name\\\":\\\"string.json.comments support.type.property-name.json.comments\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#stringcontent\\\"}]},\\\"string\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\",\\\"beginCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.begin.json.comments\\\"}},\\\"end\\\":\\\"\\\\\\\"\\\",\\\"endCaptures\\\":{\\\"0\\\":{\\\"name\\\":\\\"punctuation.definition.string.end.json.comments\\\"}},\\\"name\\\":\\\"string.quoted.double.json.comments\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#stringcontent\\\"}]},\\\"stringcontent\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\(?:[\\\\\\\"/\\\\\\\\\\\\\\\\bfnrt]|u\\\\\\\\h{4})\\\",\\\"name\\\":\\\"constant.character.escape.json.comments\\\"},{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"invalid.illegal.unrecognized-string-escape.json.comments\\\"}]},\\\"value\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#constant\\\"},{\\\"include\\\":\\\"#number\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#array\\\"},{\\\"include\\\":\\\"#object\\\"},{\\\"include\\\":\\\"#comments\\\"}]}},\\\"scopeName\\\":\\\"source.json.comments\\\"}\"))\n\nexport default [\nlang\n]\n"],"mappings":";;;;AAAA,IAAM,OAAO,OAAO,OAAO,KAAK,MAAM,q+FAAo1G,CAAC;AAE33G,IAAO,gBAAQ;AAAA,EACf;AACA;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import "./chunk-77KIJLPP.js";
|
|
3
|
+
|
|
4
|
+
// ../../node_modules/.bun/@shikijs+langs@4.4.3/node_modules/@shikijs/langs/dist/kotlin.mjs
|
|
5
|
+
var lang = Object.freeze(JSON.parse('{"displayName":"Kotlin","fileTypes":["kt","kts"],"name":"kotlin","patterns":[{"include":"#import"},{"include":"#package"},{"include":"#code"}],"repository":{"annotation-simple":{"match":"(?<!\\\\w)@[.\\\\w]+\\\\b(?!:)","name":"entity.name.type.annotation.kotlin"},"annotation-site":{"begin":"(?<!\\\\w)(@\\\\w+):\\\\s*(?!\\\\[)","beginCaptures":{"1":{"name":"entity.name.type.annotation-site.kotlin"}},"end":"$","patterns":[{"include":"#unescaped-annotation"}]},"annotation-site-list":{"begin":"(?<!\\\\w)(@\\\\w+):\\\\s*\\\\[","beginCaptures":{"1":{"name":"entity.name.type.annotation-site.kotlin"}},"end":"]","patterns":[{"include":"#unescaped-annotation"}]},"binary-literal":{"match":"0([Bb])[01][01_]*","name":"constant.numeric.binary.kotlin"},"boolean-literal":{"match":"\\\\b(true|false)\\\\b","name":"constant.language.boolean.kotlin"},"character":{"begin":"\'","end":"\'","name":"string.quoted.single.kotlin","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.kotlin"}]},"class-declaration":{"captures":{"1":{"name":"keyword.hard.class.kotlin"},"2":{"name":"entity.name.type.class.kotlin"},"3":{"patterns":[{"include":"#type-parameter"}]}},"match":"\\\\b(class|(?:fun\\\\s+)?interface)\\\\s+(\\\\b\\\\w+\\\\b|`[^`]+`)\\\\s*(?<GROUP><([^<>]|\\\\g<GROUP>)+>)?"},"code":{"patterns":[{"include":"#comments"},{"include":"#keywords"},{"include":"#annotation-simple"},{"include":"#annotation-site-list"},{"include":"#annotation-site"},{"include":"#class-declaration"},{"include":"#object"},{"include":"#type-alias"},{"include":"#function"},{"include":"#variable-declaration"},{"include":"#type-constraint"},{"include":"#type-annotation"},{"include":"#function-call"},{"include":"#method-reference"},{"include":"#key"},{"include":"#string"},{"include":"#string-empty"},{"include":"#string-multiline"},{"include":"#character"},{"include":"#lambda-arrow"},{"include":"#operators"},{"include":"#self-reference"},{"include":"#decimal-literal"},{"include":"#hex-literal"},{"include":"#binary-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"}]},"comment-block":{"begin":"/\\\\*(?!\\\\*)","end":"\\\\*/","name":"comment.block.kotlin"},"comment-javadoc":{"patterns":[{"begin":"/\\\\*\\\\*","end":"\\\\*/","name":"comment.block.javadoc.kotlin","patterns":[{"match":"@(return|constructor|receiver|sample|see|author|since|suppress)\\\\b","name":"keyword.other.documentation.javadoc.kotlin"},{"captures":{"1":{"name":"keyword.other.documentation.javadoc.kotlin"},"2":{"name":"variable.parameter.kotlin"}},"match":"(@p(?:aram|roperty))\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"keyword.other.documentation.javadoc.kotlin"},"2":{"name":"variable.parameter.kotlin"}},"match":"(@param)\\\\[(\\\\S+)]"},{"captures":{"1":{"name":"keyword.other.documentation.javadoc.kotlin"},"2":{"name":"entity.name.type.class.kotlin"}},"match":"(@(?:exception|throws))\\\\s+(\\\\S+)"},{"captures":{"1":{"name":"keyword.other.documentation.javadoc.kotlin"},"2":{"name":"entity.name.type.class.kotlin"},"3":{"name":"variable.parameter.kotlin"}},"match":"\\\\{(@link)\\\\s+(\\\\S+)?#([$\\\\w]+\\\\s*\\\\([^()]*\\\\)).*}"}]}]},"comment-line":{"begin":"//","end":"$","name":"comment.line.double-slash.kotlin"},"comments":{"patterns":[{"include":"#comment-line"},{"include":"#comment-block"},{"include":"#comment-javadoc"}]},"control-keywords":{"match":"\\\\b(if|else|while|do|when|try|throw|break|continue|return|for)\\\\b","name":"keyword.control.kotlin"},"decimal-literal":{"match":"\\\\b\\\\d[_\\\\d]*(\\\\.[_\\\\d]+)?(([Ee])\\\\d+)?([Uu])?([FLf])?\\\\b","name":"constant.numeric.decimal.kotlin"},"function":{"captures":{"1":{"name":"keyword.hard.fun.kotlin"},"2":{"patterns":[{"include":"#type-parameter"}]},"4":{"name":"entity.name.type.class.extension.kotlin"},"5":{"name":"entity.name.function.declaration.kotlin"}},"match":"\\\\b(fun)\\\\b\\\\s*(?<GROUP><([^<>]|\\\\g<GROUP>)+>)?\\\\s*(?:(?:(\\\\w+)\\\\.)?(\\\\b\\\\w+\\\\b|`[^`]+`))?"},"function-call":{"captures":{"1":{"name":"entity.name.function.call.kotlin"},"2":{"patterns":[{"include":"#type-parameter"}]}},"match":"\\\\??\\\\.?(\\\\b\\\\w+\\\\b|`[^`]+`)\\\\s*(?<GROUP><([^<>]|\\\\g<GROUP>)+>)?\\\\s*(?=[({])"},"hard-keywords":{"match":"\\\\b(as|typeof|is|in)\\\\b","name":"keyword.hard.kotlin"},"hex-literal":{"match":"0([Xx])\\\\h[_\\\\h]*([Uu])?","name":"constant.numeric.hex.kotlin"},"import":{"begin":"\\\\b(import)\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.soft.kotlin"}},"contentName":"entity.name.package.kotlin","end":";|$","name":"meta.import.kotlin","patterns":[{"include":"#comments"},{"include":"#hard-keywords"},{"match":"\\\\*","name":"variable.language.wildcard.kotlin"}]},"key":{"captures":{"1":{"name":"variable.parameter.kotlin"},"2":{"name":"keyword.operator.assignment.kotlin"}},"match":"\\\\b(\\\\w=)\\\\s*(=)"},"keywords":{"patterns":[{"include":"#prefix-modifiers"},{"include":"#postfix-modifiers"},{"include":"#soft-keywords"},{"include":"#hard-keywords"},{"include":"#control-keywords"}]},"lambda-arrow":{"match":"->","name":"storage.type.function.arrow.kotlin"},"method-reference":{"captures":{"1":{"name":"entity.name.function.reference.kotlin"}},"match":"\\\\??::(\\\\b\\\\w+\\\\b|`[^`]+`)"},"null-literal":{"match":"\\\\bnull\\\\b","name":"constant.language.null.kotlin"},"object":{"captures":{"1":{"name":"keyword.hard.object.kotlin"},"2":{"name":"entity.name.type.object.kotlin"}},"match":"\\\\b(object)(?:\\\\s+(\\\\b\\\\w+\\\\b|`[^`]+`))?"},"operators":{"patterns":[{"match":"(===?|!==?|<=|>=|[<>])","name":"keyword.operator.comparison.kotlin"},{"match":"([-%*+/]=)","name":"keyword.operator.assignment.arithmetic.kotlin"},{"match":"(=)","name":"keyword.operator.assignment.kotlin"},{"match":"([-%*+/])","name":"keyword.operator.arithmetic.kotlin"},{"match":"(!|&&|\\\\|\\\\|)","name":"keyword.operator.logical.kotlin"},{"match":"(--|\\\\+\\\\+)","name":"keyword.operator.increment-decrement.kotlin"},{"match":"(\\\\.\\\\.)","name":"keyword.operator.range.kotlin"}]},"package":{"begin":"\\\\b(package)\\\\b\\\\s*","beginCaptures":{"1":{"name":"keyword.hard.package.kotlin"}},"contentName":"entity.name.package.kotlin","end":";|$","name":"meta.package.kotlin","patterns":[{"include":"#comments"}]},"postfix-modifiers":{"match":"\\\\b(where|by|get|set)\\\\b","name":"storage.modifier.other.kotlin"},"prefix-modifiers":{"match":"\\\\b(abstract|final|enum|open|annotation|sealed|data|override|final|lateinit|private|protected|public|internal|inner|companion|noinline|crossinline|vararg|reified|tailrec|operator|infix|inline|external|const|suspend|value)\\\\b","name":"storage.modifier.other.kotlin"},"self-reference":{"match":"\\\\b(this|super)(@\\\\w+)?\\\\b","name":"variable.language.this.kotlin"},"soft-keywords":{"match":"\\\\b(init|catch|finally|field)\\\\b","name":"keyword.soft.kotlin"},"string":{"begin":"(?<!\\")\\"(?!\\")","end":"\\"","name":"string.quoted.double.kotlin","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.kotlin"},{"include":"#string-escape-simple"},{"include":"#string-escape-bracketed"}]},"string-empty":{"match":"(?<!\\")\\"\\"(?!\\")","name":"string.quoted.double.kotlin"},"string-escape-bracketed":{"begin":"(?<!\\\\\\\\)(\\\\$\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.template-expression.begin"}},"end":"(})","endCaptures":{"1":{"name":"punctuation.definition.template-expression.end"}},"name":"meta.template.expression.kotlin","patterns":[{"include":"#code"}]},"string-escape-simple":{"match":"(?<!\\\\\\\\)\\\\$\\\\w+\\\\b","name":"variable.string-escape.kotlin"},"string-multiline":{"begin":"\\"\\"\\"","end":"\\"\\"\\"","name":"string.quoted.double.kotlin","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.kotlin"},{"include":"#string-escape-simple"},{"include":"#string-escape-bracketed"}]},"type-alias":{"captures":{"1":{"name":"keyword.hard.typealias.kotlin"},"2":{"name":"entity.name.type.kotlin"},"3":{"patterns":[{"include":"#type-parameter"}]}},"match":"\\\\b(typealias)\\\\s+(\\\\b\\\\w+\\\\b|`[^`]+`)\\\\s*(?<GROUP><([^<>]|\\\\g<GROUP>)+>)?"},"type-annotation":{"captures":{"0":{"patterns":[{"include":"#type-parameter"}]}},"match":"(?<![:?]):\\\\s*([?\\\\w\\\\s]|->|(?<GROUP>[(<]([^\\"\'()<>]|\\\\g<GROUP>)+[)>]))+"},"type-parameter":{"patterns":[{"match":"\\\\b\\\\w+\\\\b","name":"entity.name.type.kotlin"},{"match":"\\\\b(in|out)\\\\b","name":"storage.modifier.kotlin"}]},"unescaped-annotation":{"match":"\\\\b[.\\\\w]+\\\\b","name":"entity.name.type.annotation.kotlin"},"variable-declaration":{"captures":{"1":{"name":"keyword.hard.kotlin"},"2":{"patterns":[{"include":"#type-parameter"}]}},"match":"\\\\b(va[lr])\\\\b\\\\s*(?<GROUP><([^<>]|\\\\g<GROUP>)+>)?"}},"scopeName":"source.kotlin","aliases":["kt","kts"]}'));
|
|
6
|
+
var kotlin_default = [
|
|
7
|
+
lang
|
|
8
|
+
];
|
|
9
|
+
export {
|
|
10
|
+
kotlin_default as default
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=kotlin-VQIGNFHN.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../node_modules/.bun/@shikijs+langs@4.4.3/node_modules/@shikijs/langs/dist/kotlin.mjs"],"sourcesContent":["const lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Kotlin\\\",\\\"fileTypes\\\":[\\\"kt\\\",\\\"kts\\\"],\\\"name\\\":\\\"kotlin\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#import\\\"},{\\\"include\\\":\\\"#package\\\"},{\\\"include\\\":\\\"#code\\\"}],\\\"repository\\\":{\\\"annotation-simple\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\w)@[.\\\\\\\\w]+\\\\\\\\b(?!:)\\\",\\\"name\\\":\\\"entity.name.type.annotation.kotlin\\\"},\\\"annotation-site\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(@\\\\\\\\w+):\\\\\\\\s*(?!\\\\\\\\[)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.annotation-site.kotlin\\\"}},\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#unescaped-annotation\\\"}]},\\\"annotation-site-list\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\w)(@\\\\\\\\w+):\\\\\\\\s*\\\\\\\\[\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.type.annotation-site.kotlin\\\"}},\\\"end\\\":\\\"]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#unescaped-annotation\\\"}]},\\\"binary-literal\\\":{\\\"match\\\":\\\"0([Bb])[01][01_]*\\\",\\\"name\\\":\\\"constant.numeric.binary.kotlin\\\"},\\\"boolean-literal\\\":{\\\"match\\\":\\\"\\\\\\\\b(true|false)\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.boolean.kotlin\\\"},\\\"character\\\":{\\\"begin\\\":\\\"'\\\",\\\"end\\\":\\\"'\\\",\\\"name\\\":\\\"string.quoted.single.kotlin\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.kotlin\\\"}]},\\\"class-declaration\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.hard.class.kotlin\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.kotlin\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameter\\\"}]}},\\\"match\\\":\\\"\\\\\\\\b(class|(?:fun\\\\\\\\s+)?interface)\\\\\\\\s+(\\\\\\\\b\\\\\\\\w+\\\\\\\\b|`[^`]+`)\\\\\\\\s*(?<GROUP><([^<>]|\\\\\\\\g<GROUP>)+>)?\\\"},\\\"code\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#keywords\\\"},{\\\"include\\\":\\\"#annotation-simple\\\"},{\\\"include\\\":\\\"#annotation-site-list\\\"},{\\\"include\\\":\\\"#annotation-site\\\"},{\\\"include\\\":\\\"#class-declaration\\\"},{\\\"include\\\":\\\"#object\\\"},{\\\"include\\\":\\\"#type-alias\\\"},{\\\"include\\\":\\\"#function\\\"},{\\\"include\\\":\\\"#variable-declaration\\\"},{\\\"include\\\":\\\"#type-constraint\\\"},{\\\"include\\\":\\\"#type-annotation\\\"},{\\\"include\\\":\\\"#function-call\\\"},{\\\"include\\\":\\\"#method-reference\\\"},{\\\"include\\\":\\\"#key\\\"},{\\\"include\\\":\\\"#string\\\"},{\\\"include\\\":\\\"#string-empty\\\"},{\\\"include\\\":\\\"#string-multiline\\\"},{\\\"include\\\":\\\"#character\\\"},{\\\"include\\\":\\\"#lambda-arrow\\\"},{\\\"include\\\":\\\"#operators\\\"},{\\\"include\\\":\\\"#self-reference\\\"},{\\\"include\\\":\\\"#decimal-literal\\\"},{\\\"include\\\":\\\"#hex-literal\\\"},{\\\"include\\\":\\\"#binary-literal\\\"},{\\\"include\\\":\\\"#boolean-literal\\\"},{\\\"include\\\":\\\"#null-literal\\\"}]},\\\"comment-block\\\":{\\\"begin\\\":\\\"/\\\\\\\\*(?!\\\\\\\\*)\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.kotlin\\\"},\\\"comment-javadoc\\\":{\\\"patterns\\\":[{\\\"begin\\\":\\\"/\\\\\\\\*\\\\\\\\*\\\",\\\"end\\\":\\\"\\\\\\\\*/\\\",\\\"name\\\":\\\"comment.block.javadoc.kotlin\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"@(return|constructor|receiver|sample|see|author|since|suppress)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.other.documentation.javadoc.kotlin\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.documentation.javadoc.kotlin\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.kotlin\\\"}},\\\"match\\\":\\\"(@p(?:aram|roperty))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.documentation.javadoc.kotlin\\\"},\\\"2\\\":{\\\"name\\\":\\\"variable.parameter.kotlin\\\"}},\\\"match\\\":\\\"(@param)\\\\\\\\[(\\\\\\\\S+)]\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.documentation.javadoc.kotlin\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.kotlin\\\"}},\\\"match\\\":\\\"(@(?:exception|throws))\\\\\\\\s+(\\\\\\\\S+)\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.other.documentation.javadoc.kotlin\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.class.kotlin\\\"},\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.kotlin\\\"}},\\\"match\\\":\\\"\\\\\\\\{(@link)\\\\\\\\s+(\\\\\\\\S+)?#([$\\\\\\\\w]+\\\\\\\\s*\\\\\\\\([^()]*\\\\\\\\)).*}\\\"}]}]},\\\"comment-line\\\":{\\\"begin\\\":\\\"//\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"comment.line.double-slash.kotlin\\\"},\\\"comments\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#comment-line\\\"},{\\\"include\\\":\\\"#comment-block\\\"},{\\\"include\\\":\\\"#comment-javadoc\\\"}]},\\\"control-keywords\\\":{\\\"match\\\":\\\"\\\\\\\\b(if|else|while|do|when|try|throw|break|continue|return|for)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.control.kotlin\\\"},\\\"decimal-literal\\\":{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\d[_\\\\\\\\d]*(\\\\\\\\.[_\\\\\\\\d]+)?(([Ee])\\\\\\\\d+)?([Uu])?([FLf])?\\\\\\\\b\\\",\\\"name\\\":\\\"constant.numeric.decimal.kotlin\\\"},\\\"function\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.hard.fun.kotlin\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameter\\\"}]},\\\"4\\\":{\\\"name\\\":\\\"entity.name.type.class.extension.kotlin\\\"},\\\"5\\\":{\\\"name\\\":\\\"entity.name.function.declaration.kotlin\\\"}},\\\"match\\\":\\\"\\\\\\\\b(fun)\\\\\\\\b\\\\\\\\s*(?<GROUP><([^<>]|\\\\\\\\g<GROUP>)+>)?\\\\\\\\s*(?:(?:(\\\\\\\\w+)\\\\\\\\.)?(\\\\\\\\b\\\\\\\\w+\\\\\\\\b|`[^`]+`))?\\\"},\\\"function-call\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.call.kotlin\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameter\\\"}]}},\\\"match\\\":\\\"\\\\\\\\??\\\\\\\\.?(\\\\\\\\b\\\\\\\\w+\\\\\\\\b|`[^`]+`)\\\\\\\\s*(?<GROUP><([^<>]|\\\\\\\\g<GROUP>)+>)?\\\\\\\\s*(?=[({])\\\"},\\\"hard-keywords\\\":{\\\"match\\\":\\\"\\\\\\\\b(as|typeof|is|in)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.hard.kotlin\\\"},\\\"hex-literal\\\":{\\\"match\\\":\\\"0([Xx])\\\\\\\\h[_\\\\\\\\h]*([Uu])?\\\",\\\"name\\\":\\\"constant.numeric.hex.kotlin\\\"},\\\"import\\\":{\\\"begin\\\":\\\"\\\\\\\\b(import)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.soft.kotlin\\\"}},\\\"contentName\\\":\\\"entity.name.package.kotlin\\\",\\\"end\\\":\\\";|$\\\",\\\"name\\\":\\\"meta.import.kotlin\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"},{\\\"include\\\":\\\"#hard-keywords\\\"},{\\\"match\\\":\\\"\\\\\\\\*\\\",\\\"name\\\":\\\"variable.language.wildcard.kotlin\\\"}]},\\\"key\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"variable.parameter.kotlin\\\"},\\\"2\\\":{\\\"name\\\":\\\"keyword.operator.assignment.kotlin\\\"}},\\\"match\\\":\\\"\\\\\\\\b(\\\\\\\\w=)\\\\\\\\s*(=)\\\"},\\\"keywords\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#prefix-modifiers\\\"},{\\\"include\\\":\\\"#postfix-modifiers\\\"},{\\\"include\\\":\\\"#soft-keywords\\\"},{\\\"include\\\":\\\"#hard-keywords\\\"},{\\\"include\\\":\\\"#control-keywords\\\"}]},\\\"lambda-arrow\\\":{\\\"match\\\":\\\"->\\\",\\\"name\\\":\\\"storage.type.function.arrow.kotlin\\\"},\\\"method-reference\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.reference.kotlin\\\"}},\\\"match\\\":\\\"\\\\\\\\??::(\\\\\\\\b\\\\\\\\w+\\\\\\\\b|`[^`]+`)\\\"},\\\"null-literal\\\":{\\\"match\\\":\\\"\\\\\\\\bnull\\\\\\\\b\\\",\\\"name\\\":\\\"constant.language.null.kotlin\\\"},\\\"object\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.hard.object.kotlin\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.object.kotlin\\\"}},\\\"match\\\":\\\"\\\\\\\\b(object)(?:\\\\\\\\s+(\\\\\\\\b\\\\\\\\w+\\\\\\\\b|`[^`]+`))?\\\"},\\\"operators\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(===?|!==?|<=|>=|[<>])\\\",\\\"name\\\":\\\"keyword.operator.comparison.kotlin\\\"},{\\\"match\\\":\\\"([-%*+/]=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.arithmetic.kotlin\\\"},{\\\"match\\\":\\\"(=)\\\",\\\"name\\\":\\\"keyword.operator.assignment.kotlin\\\"},{\\\"match\\\":\\\"([-%*+/])\\\",\\\"name\\\":\\\"keyword.operator.arithmetic.kotlin\\\"},{\\\"match\\\":\\\"(!|&&|\\\\\\\\|\\\\\\\\|)\\\",\\\"name\\\":\\\"keyword.operator.logical.kotlin\\\"},{\\\"match\\\":\\\"(--|\\\\\\\\+\\\\\\\\+)\\\",\\\"name\\\":\\\"keyword.operator.increment-decrement.kotlin\\\"},{\\\"match\\\":\\\"(\\\\\\\\.\\\\\\\\.)\\\",\\\"name\\\":\\\"keyword.operator.range.kotlin\\\"}]},\\\"package\\\":{\\\"begin\\\":\\\"\\\\\\\\b(package)\\\\\\\\b\\\\\\\\s*\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.hard.package.kotlin\\\"}},\\\"contentName\\\":\\\"entity.name.package.kotlin\\\",\\\"end\\\":\\\";|$\\\",\\\"name\\\":\\\"meta.package.kotlin\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#comments\\\"}]},\\\"postfix-modifiers\\\":{\\\"match\\\":\\\"\\\\\\\\b(where|by|get|set)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.other.kotlin\\\"},\\\"prefix-modifiers\\\":{\\\"match\\\":\\\"\\\\\\\\b(abstract|final|enum|open|annotation|sealed|data|override|final|lateinit|private|protected|public|internal|inner|companion|noinline|crossinline|vararg|reified|tailrec|operator|infix|inline|external|const|suspend|value)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.other.kotlin\\\"},\\\"self-reference\\\":{\\\"match\\\":\\\"\\\\\\\\b(this|super)(@\\\\\\\\w+)?\\\\\\\\b\\\",\\\"name\\\":\\\"variable.language.this.kotlin\\\"},\\\"soft-keywords\\\":{\\\"match\\\":\\\"\\\\\\\\b(init|catch|finally|field)\\\\\\\\b\\\",\\\"name\\\":\\\"keyword.soft.kotlin\\\"},\\\"string\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\")\\\\\\\"(?!\\\\\\\")\\\",\\\"end\\\":\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.kotlin\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.kotlin\\\"},{\\\"include\\\":\\\"#string-escape-simple\\\"},{\\\"include\\\":\\\"#string-escape-bracketed\\\"}]},\\\"string-empty\\\":{\\\"match\\\":\\\"(?<!\\\\\\\")\\\\\\\"\\\\\\\"(?!\\\\\\\")\\\",\\\"name\\\":\\\"string.quoted.double.kotlin\\\"},\\\"string-escape-bracketed\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(\\\\\\\\$\\\\\\\\{)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.begin\\\"}},\\\"end\\\":\\\"(})\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"punctuation.definition.template-expression.end\\\"}},\\\"name\\\":\\\"meta.template.expression.kotlin\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#code\\\"}]},\\\"string-escape-simple\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)\\\\\\\\$\\\\\\\\w+\\\\\\\\b\\\",\\\"name\\\":\\\"variable.string-escape.kotlin\\\"},\\\"string-multiline\\\":{\\\"begin\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"end\\\":\\\"\\\\\\\"\\\\\\\"\\\\\\\"\\\",\\\"name\\\":\\\"string.quoted.double.kotlin\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\\\\\\\\\.\\\",\\\"name\\\":\\\"constant.character.escape.kotlin\\\"},{\\\"include\\\":\\\"#string-escape-simple\\\"},{\\\"include\\\":\\\"#string-escape-bracketed\\\"}]},\\\"type-alias\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.hard.typealias.kotlin\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.type.kotlin\\\"},\\\"3\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameter\\\"}]}},\\\"match\\\":\\\"\\\\\\\\b(typealias)\\\\\\\\s+(\\\\\\\\b\\\\\\\\w+\\\\\\\\b|`[^`]+`)\\\\\\\\s*(?<GROUP><([^<>]|\\\\\\\\g<GROUP>)+>)?\\\"},\\\"type-annotation\\\":{\\\"captures\\\":{\\\"0\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameter\\\"}]}},\\\"match\\\":\\\"(?<![:?]):\\\\\\\\s*([?\\\\\\\\w\\\\\\\\s]|->|(?<GROUP>[(<]([^\\\\\\\"'()<>]|\\\\\\\\g<GROUP>)+[)>]))+\\\"},\\\"type-parameter\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\b\\\\\\\\w+\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.kotlin\\\"},{\\\"match\\\":\\\"\\\\\\\\b(in|out)\\\\\\\\b\\\",\\\"name\\\":\\\"storage.modifier.kotlin\\\"}]},\\\"unescaped-annotation\\\":{\\\"match\\\":\\\"\\\\\\\\b[.\\\\\\\\w]+\\\\\\\\b\\\",\\\"name\\\":\\\"entity.name.type.annotation.kotlin\\\"},\\\"variable-declaration\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"keyword.hard.kotlin\\\"},\\\"2\\\":{\\\"patterns\\\":[{\\\"include\\\":\\\"#type-parameter\\\"}]}},\\\"match\\\":\\\"\\\\\\\\b(va[lr])\\\\\\\\b\\\\\\\\s*(?<GROUP><([^<>]|\\\\\\\\g<GROUP>)+>)?\\\"}},\\\"scopeName\\\":\\\"source.kotlin\\\",\\\"aliases\\\":[\\\"kt\\\",\\\"kts\\\"]}\"))\n\nexport default [\nlang\n]\n"],"mappings":";;;;AAAA,IAAM,OAAO,OAAO,OAAO,KAAK,MAAM,ihRAAqhT,CAAC;AAE5jT,IAAO,iBAAQ;AAAA,EACf;AACA;","names":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
"use client";
|
|
3
|
+
import {
|
|
4
|
+
po
|
|
5
|
+
} from "./chunk-BJXQMEXJ.js";
|
|
6
|
+
import "./chunk-ZG63ZWXG.js";
|
|
7
|
+
import "./chunk-7BJPJ4OJ.js";
|
|
8
|
+
import "./chunk-77KIJLPP.js";
|
|
9
|
+
export {
|
|
10
|
+
po as Mermaid
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=mermaid-GHXKKRXX-FX4OMDLK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,368 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import {
|
|
3
|
+
Check,
|
|
4
|
+
Copy,
|
|
5
|
+
cn
|
|
6
|
+
} from "./chunk-6HESK4TV.js";
|
|
7
|
+
import {
|
|
8
|
+
Qs
|
|
9
|
+
} from "./chunk-BJXQMEXJ.js";
|
|
10
|
+
import "./chunk-ZG63ZWXG.js";
|
|
11
|
+
import "./chunk-7BJPJ4OJ.js";
|
|
12
|
+
import "./chunk-77KIJLPP.js";
|
|
13
|
+
|
|
14
|
+
// src/next-link-shim.tsx
|
|
15
|
+
import { forwardRef } from "react";
|
|
16
|
+
import { jsx } from "react/jsx-runtime";
|
|
17
|
+
var Link = forwardRef(function Link2({
|
|
18
|
+
prefetch: _prefetch,
|
|
19
|
+
replace: _replace,
|
|
20
|
+
scroll: _scroll,
|
|
21
|
+
shallow: _shallow,
|
|
22
|
+
passHref: _passHref,
|
|
23
|
+
legacyBehavior: _legacyBehavior,
|
|
24
|
+
locale: _locale,
|
|
25
|
+
...props
|
|
26
|
+
}, ref) {
|
|
27
|
+
return /* @__PURE__ */ jsx("a", { ref, ...props });
|
|
28
|
+
});
|
|
29
|
+
var next_link_shim_default = Link;
|
|
30
|
+
|
|
31
|
+
// ../../apps/web/src/components/ui/code-block.tsx
|
|
32
|
+
import { Fragment, useEffect, useRef, useState } from "react";
|
|
33
|
+
|
|
34
|
+
// ../../apps/web/src/lib/highlight-code.ts
|
|
35
|
+
var THEMES = { light: "github-light", dark: "github-dark" };
|
|
36
|
+
var CACHE_LIMIT = 200;
|
|
37
|
+
var cache = /* @__PURE__ */ new Map();
|
|
38
|
+
var loading = null;
|
|
39
|
+
var LANGUAGES = {
|
|
40
|
+
typescript: () => import("./typescript-AEC2XLIU.js"),
|
|
41
|
+
javascript: () => import("./javascript-JG6W5B7H.js"),
|
|
42
|
+
tsx: () => import("./tsx-7WRVGXFH.js"),
|
|
43
|
+
jsx: () => import("./jsx-BQ6TEX75.js"),
|
|
44
|
+
json: () => import("./json-DTKAB2JP.js"),
|
|
45
|
+
jsonc: () => import("./jsonc-5XQSX3HW.js"),
|
|
46
|
+
shellscript: () => import("./shellscript-MCPUYTZ6.js"),
|
|
47
|
+
powershell: () => import("./powershell-D7BEPXW6.js"),
|
|
48
|
+
python: () => import("./python-OBX5XH3P.js"),
|
|
49
|
+
html: () => import("./html-YMRWH5LQ.js"),
|
|
50
|
+
css: () => import("./css-HP3HPRAF.js"),
|
|
51
|
+
scss: () => import("./scss-NLXXJO5U.js"),
|
|
52
|
+
yaml: () => import("./yaml-3AYDY36X.js"),
|
|
53
|
+
toml: () => import("./toml-XCKXGRSV.js"),
|
|
54
|
+
ini: () => import("./ini-HC2LCVSW.js"),
|
|
55
|
+
dotenv: () => import("./dotenv-2YCL424V.js"),
|
|
56
|
+
sql: () => import("./sql-KWTK6KCU.js"),
|
|
57
|
+
graphql: () => import("./graphql-WHHYDJCW.js"),
|
|
58
|
+
prisma: () => import("./prisma-EU35L45H.js"),
|
|
59
|
+
go: () => import("./go-D7KDTP2F.js"),
|
|
60
|
+
rust: () => import("./rust-KFI5KHCG.js"),
|
|
61
|
+
java: () => import("./java-DRYXJ2ZD.js"),
|
|
62
|
+
kotlin: () => import("./kotlin-VQIGNFHN.js"),
|
|
63
|
+
swift: () => import("./swift-TETGEM4C.js"),
|
|
64
|
+
dart: () => import("./dart-DFSNOCJU.js"),
|
|
65
|
+
ruby: () => import("./ruby-HWPYCEXB.js"),
|
|
66
|
+
php: () => import("./php-2C36DJ7I.js"),
|
|
67
|
+
csharp: () => import("./csharp-SS3YMXWT.js"),
|
|
68
|
+
c: () => import("./c-JXDHGUIF.js"),
|
|
69
|
+
cpp: () => import("./cpp-UFM3S5JK.js"),
|
|
70
|
+
elixir: () => import("./elixir-WSTF2ZPA.js"),
|
|
71
|
+
diff: () => import("./diff-J4T5ECLQ.js"),
|
|
72
|
+
xml: () => import("./xml-BKVIJK6L.js"),
|
|
73
|
+
docker: () => import("./docker-MMKXE2DQ.js")
|
|
74
|
+
};
|
|
75
|
+
var ALIASES = {
|
|
76
|
+
ts: "typescript",
|
|
77
|
+
js: "javascript",
|
|
78
|
+
mjs: "javascript",
|
|
79
|
+
cjs: "javascript",
|
|
80
|
+
sh: "shellscript",
|
|
81
|
+
bash: "shellscript",
|
|
82
|
+
shell: "shellscript",
|
|
83
|
+
zsh: "shellscript",
|
|
84
|
+
console: "shellscript",
|
|
85
|
+
ps1: "powershell",
|
|
86
|
+
py: "python",
|
|
87
|
+
yml: "yaml",
|
|
88
|
+
env: "dotenv",
|
|
89
|
+
gql: "graphql",
|
|
90
|
+
rs: "rust",
|
|
91
|
+
kt: "kotlin",
|
|
92
|
+
rb: "ruby",
|
|
93
|
+
cs: "csharp",
|
|
94
|
+
"c#": "csharp",
|
|
95
|
+
"c++": "cpp",
|
|
96
|
+
ex: "elixir",
|
|
97
|
+
exs: "elixir",
|
|
98
|
+
dockerfile: "docker",
|
|
99
|
+
patch: "diff",
|
|
100
|
+
svg: "xml"
|
|
101
|
+
};
|
|
102
|
+
function grammarFor(language) {
|
|
103
|
+
const name = language.toLowerCase();
|
|
104
|
+
const known = name in LANGUAGES ? name : ALIASES[name];
|
|
105
|
+
return known ? { name: known, load: LANGUAGES[known] } : null;
|
|
106
|
+
}
|
|
107
|
+
function highlighter() {
|
|
108
|
+
loading ??= (async () => {
|
|
109
|
+
const [{ createHighlighterCore }, { createJavaScriptRegexEngine }] = await Promise.all([
|
|
110
|
+
import("./core-X5EL4ACB.js"),
|
|
111
|
+
import("./engine-javascript-4K6F4KL5.js")
|
|
112
|
+
]);
|
|
113
|
+
return createHighlighterCore({
|
|
114
|
+
themes: [
|
|
115
|
+
import("./github-light-2RDLQDFL.js"),
|
|
116
|
+
import("./github-dark-XHWJ4A4W.js")
|
|
117
|
+
],
|
|
118
|
+
langs: [],
|
|
119
|
+
engine: createJavaScriptRegexEngine()
|
|
120
|
+
});
|
|
121
|
+
})();
|
|
122
|
+
return loading;
|
|
123
|
+
}
|
|
124
|
+
var keyOf = (code, language) => `${language}
|
|
125
|
+
${code}`;
|
|
126
|
+
function plainLines(code) {
|
|
127
|
+
return code.split("\n").map((line) => line ? [{ content: line }] : []);
|
|
128
|
+
}
|
|
129
|
+
function cachedLines(code, language) {
|
|
130
|
+
return language ? cache.get(keyOf(code, language)) ?? null : null;
|
|
131
|
+
}
|
|
132
|
+
function canHighlight(language) {
|
|
133
|
+
return language !== null && grammarFor(language) !== null;
|
|
134
|
+
}
|
|
135
|
+
async function highlightLines(code, language) {
|
|
136
|
+
const key = keyOf(code, language);
|
|
137
|
+
const hit = cache.get(key);
|
|
138
|
+
if (hit) return hit;
|
|
139
|
+
const grammar = grammarFor(language);
|
|
140
|
+
if (!grammar) return null;
|
|
141
|
+
const core = await highlighter();
|
|
142
|
+
if (!core.getLoadedLanguages().includes(grammar.name)) {
|
|
143
|
+
await core.loadLanguage(grammar.load());
|
|
144
|
+
}
|
|
145
|
+
const { tokens } = core.codeToTokens(code, {
|
|
146
|
+
lang: grammar.name,
|
|
147
|
+
themes: THEMES,
|
|
148
|
+
defaultColor: false
|
|
149
|
+
});
|
|
150
|
+
const lines = tokens.map(
|
|
151
|
+
(line) => line.map((token) => ({ content: token.content, style: token.htmlStyle }))
|
|
152
|
+
);
|
|
153
|
+
cache.set(key, lines);
|
|
154
|
+
if (cache.size > CACHE_LIMIT) cache.delete(cache.keys().next().value);
|
|
155
|
+
return lines;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
// ../../apps/web/src/components/ui/code-block.tsx
|
|
159
|
+
import { jsx as jsx2, jsxs } from "react/jsx-runtime";
|
|
160
|
+
var COPIED_MS = 1600;
|
|
161
|
+
function useColoredLines(code, language) {
|
|
162
|
+
const [colored, setColored] = useState(() => {
|
|
163
|
+
const hit2 = cachedLines(code, language);
|
|
164
|
+
return hit2 && language ? { code, language, lines: hit2, tint: false } : null;
|
|
165
|
+
});
|
|
166
|
+
const isCurrent = colored?.code === code && colored.language === language;
|
|
167
|
+
useEffect(() => {
|
|
168
|
+
if (!language || !canHighlight(language) || isCurrent) return;
|
|
169
|
+
let isLive = true;
|
|
170
|
+
highlightLines(code, language).then(
|
|
171
|
+
(lines) => {
|
|
172
|
+
if (isLive) setColored({ code, language, lines, tint: true });
|
|
173
|
+
},
|
|
174
|
+
() => {
|
|
175
|
+
if (isLive) setColored({ code, language, lines: null, tint: false });
|
|
176
|
+
}
|
|
177
|
+
);
|
|
178
|
+
return () => {
|
|
179
|
+
isLive = false;
|
|
180
|
+
};
|
|
181
|
+
}, [code, language, isCurrent]);
|
|
182
|
+
if (isCurrent) {
|
|
183
|
+
return {
|
|
184
|
+
lines: colored.lines ?? plainLines(code),
|
|
185
|
+
state: colored.lines ? "colored" : "plain",
|
|
186
|
+
tint: colored.tint
|
|
187
|
+
};
|
|
188
|
+
}
|
|
189
|
+
const hit = cachedLines(code, language);
|
|
190
|
+
if (hit) return { lines: hit, state: "colored", tint: false };
|
|
191
|
+
const carried = colored?.lines && colored.language === language && code.startsWith(colored.code) ? withPlainTail(colored.lines, code.slice(colored.code.length)) : plainLines(code);
|
|
192
|
+
return {
|
|
193
|
+
lines: carried,
|
|
194
|
+
state: canHighlight(language) ? "pending" : "plain",
|
|
195
|
+
tint: false
|
|
196
|
+
};
|
|
197
|
+
}
|
|
198
|
+
function withPlainTail(lines, tail) {
|
|
199
|
+
if (!tail) return lines;
|
|
200
|
+
const [first, ...rest] = tail.split("\n");
|
|
201
|
+
const head = lines.slice(0, -1);
|
|
202
|
+
const last = [
|
|
203
|
+
...lines[lines.length - 1] ?? [],
|
|
204
|
+
...first ? [{ content: first }] : []
|
|
205
|
+
];
|
|
206
|
+
return [
|
|
207
|
+
...head,
|
|
208
|
+
last,
|
|
209
|
+
...rest.map((line) => line ? [{ content: line }] : [])
|
|
210
|
+
];
|
|
211
|
+
}
|
|
212
|
+
function CodeBlock({
|
|
213
|
+
code,
|
|
214
|
+
language,
|
|
215
|
+
className
|
|
216
|
+
}) {
|
|
217
|
+
const { lines, state, tint } = useColoredLines(code, language);
|
|
218
|
+
const timer = useRef(null);
|
|
219
|
+
const [isCopied, setCopied] = useState(false);
|
|
220
|
+
useEffect(
|
|
221
|
+
() => () => {
|
|
222
|
+
if (timer.current) clearTimeout(timer.current);
|
|
223
|
+
},
|
|
224
|
+
[]
|
|
225
|
+
);
|
|
226
|
+
async function copy() {
|
|
227
|
+
try {
|
|
228
|
+
await navigator.clipboard.writeText(code);
|
|
229
|
+
} catch (caught) {
|
|
230
|
+
console.error("Copying code to the clipboard failed", caught);
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
setCopied(true);
|
|
234
|
+
if (timer.current) clearTimeout(timer.current);
|
|
235
|
+
timer.current = setTimeout(() => setCopied(false), COPIED_MS);
|
|
236
|
+
}
|
|
237
|
+
return /* @__PURE__ */ jsxs("div", { "data-code-block": true, className: cn("group/code relative min-w-0", className), children: [
|
|
238
|
+
/* @__PURE__ */ jsx2(
|
|
239
|
+
"pre",
|
|
240
|
+
{
|
|
241
|
+
"data-highlight": state,
|
|
242
|
+
"data-tint": tint ? "" : void 0,
|
|
243
|
+
className: "overflow-x-auto rounded-lg border bg-card px-4 py-3 font-mono text-[12.5px] leading-[1.65] text-card-foreground",
|
|
244
|
+
children: /* @__PURE__ */ jsx2("code", { children: lines.map((line, index) => /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
245
|
+
line.map((token, at) => /* @__PURE__ */ jsx2("span", { style: token.style, children: token.content }, at)),
|
|
246
|
+
index < lines.length - 1 && "\n"
|
|
247
|
+
] }, index)) })
|
|
248
|
+
}
|
|
249
|
+
),
|
|
250
|
+
/* @__PURE__ */ jsxs(
|
|
251
|
+
"button",
|
|
252
|
+
{
|
|
253
|
+
type: "button",
|
|
254
|
+
"data-code-copy": true,
|
|
255
|
+
"data-state": isCopied ? "copied" : "idle",
|
|
256
|
+
"aria-label": isCopied ? "Copied" : "Copy code",
|
|
257
|
+
className: cn(
|
|
258
|
+
"group/copy absolute top-2 right-2 grid size-7 place-items-center rounded-md border bg-card text-muted-foreground",
|
|
259
|
+
"opacity-0 transition-[opacity,color] duration-(--duration-quick) ease-in-out",
|
|
260
|
+
"group-hover/code:opacity-100 hover:text-foreground focus-visible:opacity-100 data-[state=copied]:opacity-100",
|
|
261
|
+
"[@media(hover:none)]:opacity-100"
|
|
262
|
+
),
|
|
263
|
+
onClick: () => void copy(),
|
|
264
|
+
children: [
|
|
265
|
+
/* @__PURE__ */ jsx2(Copy, { className: "col-start-1 row-start-1 size-3.5 transition-[opacity,scale] duration-(--duration-fast) ease-(--ease-smooth-out) group-data-[state=copied]/copy:scale-60 group-data-[state=copied]/copy:opacity-0" }),
|
|
266
|
+
/* @__PURE__ */ jsx2(Check, { className: "col-start-1 row-start-1 size-3.5 scale-60 text-emerald-600 opacity-0 transition-[opacity,scale] duration-(--duration-fast) ease-(--ease-smooth-out) group-data-[state=copied]/copy:scale-100 group-data-[state=copied]/copy:opacity-100 dark:text-emerald-400" })
|
|
267
|
+
]
|
|
268
|
+
}
|
|
269
|
+
)
|
|
270
|
+
] });
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
// ../../apps/web/src/lib/links.ts
|
|
274
|
+
function staysInApp(href) {
|
|
275
|
+
return href.startsWith("/") && !href.startsWith("//");
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
// ../../apps/web/src/components/ui/message-markdown.tsx
|
|
279
|
+
import { jsx as jsx3 } from "react/jsx-runtime";
|
|
280
|
+
var LINK = "font-medium break-all underline decoration-foreground/60 decoration-1 underline-offset-[3px] transition-colors hover:decoration-foreground";
|
|
281
|
+
var Flattened = ({ children }) => /* @__PURE__ */ jsx3("p", { className: "font-semibold", children });
|
|
282
|
+
var RANKS = {
|
|
283
|
+
h1: ({ children }) => /* @__PURE__ */ jsx3("p", { className: "mt-2 text-[1.25em] leading-tight font-semibold first:mt-0", children }),
|
|
284
|
+
h2: ({ children }) => /* @__PURE__ */ jsx3("p", { className: "mt-2 text-[1.1em] leading-snug font-semibold first:mt-0", children }),
|
|
285
|
+
h3: ({ children }) => /* @__PURE__ */ jsx3("p", { className: "mt-1 font-semibold first:mt-0", children }),
|
|
286
|
+
h4: ({ children }) => /* @__PURE__ */ jsx3("p", { className: "font-semibold", children }),
|
|
287
|
+
h5: ({ children }) => /* @__PURE__ */ jsx3("p", { className: "font-semibold", children }),
|
|
288
|
+
h6: ({ children }) => /* @__PURE__ */ jsx3("p", { className: "font-semibold", children })
|
|
289
|
+
};
|
|
290
|
+
var FLAT = {
|
|
291
|
+
h1: Flattened,
|
|
292
|
+
h2: Flattened,
|
|
293
|
+
h3: Flattened,
|
|
294
|
+
h4: Flattened,
|
|
295
|
+
h5: Flattened,
|
|
296
|
+
h6: Flattened
|
|
297
|
+
};
|
|
298
|
+
var COMPONENTS = {
|
|
299
|
+
p: ({ children }) => /* @__PURE__ */ jsx3("p", { className: "break-words", children }),
|
|
300
|
+
/** A link, and whether it leaves. See `lib/links.ts` for the rule. */
|
|
301
|
+
a: ({ children, href }) => {
|
|
302
|
+
const to = href ?? "";
|
|
303
|
+
return staysInApp(to) ? /* @__PURE__ */ jsx3(next_link_shim_default, { href: to, className: LINK, children }) : /* @__PURE__ */ jsx3("a", { href: to, target: "_blank", rel: "noopener noreferrer", className: LINK, children });
|
|
304
|
+
},
|
|
305
|
+
ul: ({ children }) => /* @__PURE__ */ jsx3("ul", { className: "list-disc space-y-1 pl-5", children }),
|
|
306
|
+
ol: ({ children, start }) => /* @__PURE__ */ jsx3("ol", { start, className: "list-decimal space-y-1 pl-5", children }),
|
|
307
|
+
blockquote: ({ children }) => /* @__PURE__ */ jsx3("blockquote", { className: "border-l-2 border-foreground/20 pl-3 text-foreground/80", children }),
|
|
308
|
+
// Inline code. Streamdown's own bg-muted chip vanishes inside a muted
|
|
309
|
+
// bubble, so the chip leans on the text colour instead.
|
|
310
|
+
inlineCode: ({ children }) => /* @__PURE__ */ jsx3("code", { className: "rounded bg-foreground/10 px-1 py-0.5 font-mono text-[0.85em]", children }),
|
|
311
|
+
// A table is an object on the page rather than a stripe across it, so it
|
|
312
|
+
// is boxed and it hugs what is in it. `w-fit` is the whole of that: two
|
|
313
|
+
// columns of single digits stay two columns of single digits instead of
|
|
314
|
+
// being stretched over the width of the reply, which is what makes a
|
|
315
|
+
// three-row table read as a spreadsheet somebody dropped in.
|
|
316
|
+
//
|
|
317
|
+
// Every part of it is written down here, including the ones that were
|
|
318
|
+
// being left to Streamdown. Its defaults are sized for a document with a
|
|
319
|
+
// table in it: a grey header band, sm text, px-4 cells. In a thread that
|
|
320
|
+
// is louder than the answer around it.
|
|
321
|
+
table: ({ children }) => /* @__PURE__ */ jsx3("div", { className: "w-fit max-w-full overflow-x-auto rounded-lg border", children: /* @__PURE__ */ jsx3("table", { className: "w-full text-left text-xs", children }) }),
|
|
322
|
+
thead: ({ children }) => /* @__PURE__ */ jsx3("thead", { className: "bg-muted/50", children }),
|
|
323
|
+
// The line under the head belongs to the head. Between rows it belongs to
|
|
324
|
+
// the row above, and the last one has the box's own edge under it already.
|
|
325
|
+
tr: ({ children }) => /* @__PURE__ */ jsx3("tr", { className: "[&:not(:last-child)>td]:border-b", children }),
|
|
326
|
+
th: ({ children }) => /* @__PURE__ */ jsx3("th", { className: "border-b px-3 py-2 font-medium whitespace-nowrap", children }),
|
|
327
|
+
// Figures line up under each other, and a cell with a paragraph in it sits
|
|
328
|
+
// against the top of its row rather than floating in the middle of one.
|
|
329
|
+
td: ({ children }) => /* @__PURE__ */ jsx3("td", { className: "px-3 py-2 align-top tabular-nums", children }),
|
|
330
|
+
// With `inlineCode` set, Streamdown sends only fenced blocks here.
|
|
331
|
+
code: ({ className, children }) => /* @__PURE__ */ jsx3(
|
|
332
|
+
CodeBlock,
|
|
333
|
+
{
|
|
334
|
+
code: String(children ?? "").replace(/\n$/, ""),
|
|
335
|
+
language: /language-([\w+#-]+)/.exec(className ?? "")?.[1] ?? null
|
|
336
|
+
}
|
|
337
|
+
),
|
|
338
|
+
hr: () => /* @__PURE__ */ jsx3("hr", { className: "border-foreground/15" }),
|
|
339
|
+
img: ({ src, alt }) => (
|
|
340
|
+
// eslint-disable-next-line @next/next/no-img-element -- arbitrary remote URL, nothing for the optimizer to do.
|
|
341
|
+
/* @__PURE__ */ jsx3("img", { src, alt: alt ?? "", className: "max-w-full rounded-lg" })
|
|
342
|
+
)
|
|
343
|
+
};
|
|
344
|
+
function MessageMarkdown({
|
|
345
|
+
body,
|
|
346
|
+
className,
|
|
347
|
+
headings = "flatten",
|
|
348
|
+
mode = "streaming"
|
|
349
|
+
}) {
|
|
350
|
+
return /* @__PURE__ */ jsx3(
|
|
351
|
+
Qs,
|
|
352
|
+
{
|
|
353
|
+
className: cn("flex min-w-0 flex-col gap-2 break-words", className),
|
|
354
|
+
components: {
|
|
355
|
+
...COMPONENTS,
|
|
356
|
+
...headings === "keep" ? RANKS : FLAT
|
|
357
|
+
},
|
|
358
|
+
controls: false,
|
|
359
|
+
lineNumbers: false,
|
|
360
|
+
mode,
|
|
361
|
+
children: body
|
|
362
|
+
}
|
|
363
|
+
);
|
|
364
|
+
}
|
|
365
|
+
export {
|
|
366
|
+
MessageMarkdown
|
|
367
|
+
};
|
|
368
|
+
//# sourceMappingURL=message-markdown-GNTNT3WJ.js.map
|