{"_id":"solid-prism-editor","_rev":"13-53c69aca7aeacb2166db4a9d69fcbabd","name":"solid-prism-editor","dist-tags":{"latest":"3.4.0"},"versions":{"1.0.0":{"name":"solid-prism-editor","version":"1.0.0","keywords":["editor","code editor","textarea","solid","highlight","prismjs"],"author":{"name":"FlameCaster"},"license":"MIT","_id":"solid-prism-editor@1.0.0","maintainers":[{"name":"flamecaster","email":"fl4mecaster@gmail.com"}],"homepage":"https://github.com/FIameCaster/solid-prism-editor#readme","bugs":{"url":"https://github.com/FIameCaster/solid-prism-editor/issues"},"dist":{"shasum":"da17266e8b9d72e5de43988fd27606ca023963a5","tarball":"https://registry.npmjs.org/solid-prism-editor/-/solid-prism-editor-1.0.0.tgz","fileCount":1740,"integrity":"sha512-3gGmEi18607R+bZd2ApAikInygMnt5PZYTO8UOqOMyRzgBFLVXC1fWHPh1cOHeoDwSXUUJiLCyZMmf1O+zWdFw==","signatures":[{"sig":"MEUCIQC4Z5ztnD6pDx1dzN6GGLhfU7rOd9UZJXN96ISZrxaBkgIgBqD3pkaJWJTjuTmb6lm2v3TeV8YSUYwtpu20LErv5tI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":2429057},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":"./dist/index.js","./prism":"./dist/prism/index.js","./utils":"./dist/utils/index.js","./cursor":"./dist/extensions/cursor.js","./guides":"./dist/extensions/guides.js","./search":"./dist/extensions/search/index.js","./setups":"./dist/setups.js","./themes":"./dist/themes/index.js","./commands":"./dist/extensions/commands.js","./tooltips":"./dist/tooltips.js","./languages":"./dist/languages/index.js","./layout.css":"./dist/layout.css","./match-tags":"./dist/extensions/match-tags.js","./overscroll":"./dist/extensions/overscroll.js","./search.css":"./dist/search.css","./search/api":"./dist/extensions/search/api.js","./copy-button":"./dist/extensions/copy-button/index.js","./languages/*":"./dist/languages/*.js","./prism/utils":"./dist/prism/utils/index.js","./code-folding":"./dist/extensions/folding/index.js","./themes/*.css":"./dist/themes/*.css","./scrollbar.css":"./dist/scrollbar.css","./match-brackets":"./dist/extensions/match-brackets/index.js","./rtl-layout.css":"./dist/rtl-layout.css","./copy-button.css":"./dist/copy.css","./prism/languages":"./dist/prism/languages/index.js","./code-folding.css":"./dist/folding.css","./prism/languages/*":"./dist/prism/languages/*.js","./highlight-brackets":"./dist/extensions/match-brackets/highlight.js"},"gitHead":"a134c202afcad38d6f25da8b42d70bc89df88e48","scripts":{"dev":"vite","build":"vite build && node scripts/build.mjs","serve":"vite preview","start":"vite"},"_npmUser":{"name":"flamecaster","email":"fl4mecaster@gmail.com"},"repository":{"url":"git+https://github.com/FIameCaster/solid-prism-editor.git","type":"git"},"_npmVersion":"10.5.2","description":"Lightweight, extensible code editor component for SolidJS apps","directories":{},"sideEffects":["*.css","./dist/languages/*","./dist/prism/languages/*"],"_nodeVersion":"20.13.1","typesVersions":{"*":{"*":["./dist/*"]}},"_hasShrinkwrap":false,"packageManager":"pnpm@9.0.4+sha1.b198ac6d38244fd829253720f9daafd6a606834d","devDependencies":{"vite":"^5.0.11","solid-js":"^1.8.11","typescript":"^5.3.3","@types/node":"^20.12.6","solid-devtools":"^0.29.2","vite-plugin-dts":"^3.8.1","prism-code-editor":"^3.3.2","vite-plugin-solid":"^2.8.2"},"peerDependencies":{"solid-js":"*"},"_npmOperationalInternal":{"tmp":"tmp/solid-prism-editor_1.0.0_1718548301570_0.6862889384239383","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"solid-prism-editor","version":"1.0.1","keywords":["editor","code editor","textarea","solid","highlight","prismjs"],"author":{"name":"FlameCaster"},"license":"MIT","_id":"solid-prism-editor@1.0.1","maintainers":[{"name":"flamecaster","email":"fl4mecaster@gmail.com"}],"homepage":"https://github.com/FIameCaster/solid-prism-editor#readme","bugs":{"url":"https://github.com/FIameCaster/solid-prism-editor/issues"},"dist":{"shasum":"5dd7058fd5e633e64c184396631e26b44049d4e4","tarball":"https://registry.npmjs.org/solid-prism-editor/-/solid-prism-editor-1.0.1.tgz","fileCount":1740,"integrity":"sha512-PD9ia5Gv4h2o8kaYDEvk1r/yHcdcKw6ctcKJWucbwGId7eap2RGIxVW28jY64HfWc234cWCbFQnny4VbB3n4AA==","signatures":[{"sig":"MEYCIQCbubNxxUjmQ3AxPbU0P/IA9YqJ1LKLv3ATRhGuQtcL2gIhALQeg093RdHUU4EcbRNmpyLyP9DktSDZ3EJ8oqx0zV46","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":2430603},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":"./dist/index.js","./prism":"./dist/prism/index.js","./utils":"./dist/utils/index.js","./cursor":"./dist/extensions/cursor.js","./guides":"./dist/extensions/guides.js","./search":"./dist/extensions/search/index.js","./setups":"./dist/setups.js","./themes":"./dist/themes/index.js","./commands":"./dist/extensions/commands.js","./tooltips":"./dist/tooltips.js","./languages":"./dist/languages/index.js","./layout.css":"./dist/layout.css","./match-tags":"./dist/extensions/match-tags.js","./overscroll":"./dist/extensions/overscroll.js","./search.css":"./dist/search.css","./search/api":"./dist/extensions/search/api.js","./copy-button":"./dist/extensions/copy-button/index.js","./languages/*":"./dist/languages/*.js","./prism/utils":"./dist/prism/utils/index.js","./code-folding":"./dist/extensions/folding/index.js","./themes/*.css":"./dist/themes/*.css","./scrollbar.css":"./dist/scrollbar.css","./match-brackets":"./dist/extensions/match-brackets/index.js","./rtl-layout.css":"./dist/rtl-layout.css","./copy-button.css":"./dist/copy.css","./prism/languages":"./dist/prism/languages/index.js","./code-folding.css":"./dist/folding.css","./prism/languages/*":"./dist/prism/languages/*.js","./highlight-brackets":"./dist/extensions/match-brackets/highlight.js"},"gitHead":"c031990dae1f43d48dfe3b92dd00d00acf04e099","scripts":{"dev":"vite","build":"vite build && node scripts/build.mjs","serve":"vite preview","start":"vite"},"_npmUser":{"name":"flamecaster","email":"fl4mecaster@gmail.com"},"repository":{"url":"git+https://github.com/FIameCaster/solid-prism-editor.git","type":"git"},"_npmVersion":"10.5.2","description":"Lightweight, extensible code editor component for SolidJS apps","directories":{},"sideEffects":["*.css","./dist/languages/*","./dist/prism/languages/*"],"_nodeVersion":"20.13.1","typesVersions":{"*":{"*":["./dist/*"]}},"_hasShrinkwrap":false,"packageManager":"pnpm@9.0.4+sha1.b198ac6d38244fd829253720f9daafd6a606834d","devDependencies":{"vite":"^5.0.11","solid-js":"^1.8.11","typescript":"^5.3.3","@types/node":"^20.12.6","solid-devtools":"^0.29.2","vite-plugin-dts":"^3.8.1","prism-code-editor":"^3.3.2","vite-plugin-solid":"^2.8.2"},"peerDependencies":{"solid-js":"*"},"_npmOperationalInternal":{"tmp":"tmp/solid-prism-editor_1.0.1_1718837940796_0.17826840998246984","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"solid-prism-editor","version":"1.1.0","keywords":["editor","code editor","textarea","solid","highlight","prismjs"],"author":{"name":"FlameCaster"},"license":"MIT","_id":"solid-prism-editor@1.1.0","maintainers":[{"name":"flamecaster","email":"fl4mecaster@gmail.com"}],"homepage":"https://github.com/FIameCaster/solid-prism-editor#readme","bugs":{"url":"https://github.com/FIameCaster/solid-prism-editor/issues"},"dist":{"shasum":"5cb78e9083d31f12f291c9ce76bd67f9e81c50c1","tarball":"https://registry.npmjs.org/solid-prism-editor/-/solid-prism-editor-1.1.0.tgz","fileCount":1740,"integrity":"sha512-muHDiMTzxrKci13W5XvkvGP8KaDKnKF5Up1J4SQLf6YFTYTW9bJgF7Awj3zIWpPls1M9d/KnRfBqESUgjUNGDQ==","signatures":[{"sig":"MEUCIQDuU2EtwE+SgMfuT3z6V9j8ofpOlWi1fz2tQ256tdAEggIgPtse08IgSQKzvDB4SApKSacZqEm292kpXbKcfBQfPkk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":2399253},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":"./dist/index.js","./prism":"./dist/prism/index.js","./utils":"./dist/utils/index.js","./cursor":"./dist/extensions/cursor.js","./guides":"./dist/extensions/guides.js","./search":"./dist/extensions/search/index.js","./setups":"./dist/setups.js","./themes":"./dist/themes/index.js","./commands":"./dist/extensions/commands.js","./tooltips":"./dist/tooltips.js","./languages":"./dist/languages/index.js","./layout.css":"./dist/layout.css","./match-tags":"./dist/extensions/match-tags.js","./overscroll":"./dist/extensions/overscroll.js","./search.css":"./dist/search.css","./search/api":"./dist/extensions/search/api.js","./copy-button":"./dist/extensions/copy-button/index.js","./languages/*":"./dist/languages/*.js","./prism/utils":"./dist/prism/utils/index.js","./code-folding":"./dist/extensions/folding/index.js","./themes/*.css":"./dist/themes/*.css","./scrollbar.css":"./dist/scrollbar.css","./match-brackets":"./dist/extensions/match-brackets/index.js","./rtl-layout.css":"./dist/rtl-layout.css","./copy-button.css":"./dist/copy.css","./prism/languages":"./dist/prism/languages/index.js","./code-folding.css":"./dist/folding.css","./prism/languages/*":"./dist/prism/languages/*.js","./highlight-brackets":"./dist/extensions/match-brackets/highlight.js"},"gitHead":"6f47617bf1775d41dab77c3f37319d58b5a6242c","scripts":{"dev":"vite","build":"vite build && node scripts/build.mjs","serve":"vite preview","start":"vite"},"_npmUser":{"name":"flamecaster","email":"fl4mecaster@gmail.com"},"repository":{"url":"git+https://github.com/FIameCaster/solid-prism-editor.git","type":"git"},"_npmVersion":"10.5.2","description":"Lightweight, extensible code editor component for SolidJS apps","directories":{},"sideEffects":["*.css","./dist/languages/*","./dist/prism/languages/*","./dist/jsx-*"],"_nodeVersion":"20.13.1","typesVersions":{"*":{"*":["./dist/*"]}},"_hasShrinkwrap":false,"packageManager":"pnpm@9.0.4+sha1.b198ac6d38244fd829253720f9daafd6a606834d","devDependencies":{"vite":"^5.3.3","solid-js":"^1.8.11","typescript":"^5.3.3","@types/node":"^20.12.6","solid-devtools":"^0.29.2","vite-plugin-dts":"^3.8.1","prism-code-editor":"^3.3.2","vite-plugin-solid":"^2.8.2"},"peerDependencies":{"solid-js":"*"},"_npmOperationalInternal":{"tmp":"tmp/solid-prism-editor_1.1.0_1720456892088_0.760583422503083","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"solid-prism-editor","version":"1.2.0","keywords":["editor","code editor","textarea","solid","highlight","prismjs"],"author":{"name":"FlameCaster"},"license":"MIT","_id":"solid-prism-editor@1.2.0","maintainers":[{"name":"flamecaster","email":"fl4mecaster@gmail.com"}],"homepage":"https://github.com/FIameCaster/solid-prism-editor#readme","bugs":{"url":"https://github.com/FIameCaster/solid-prism-editor/issues"},"dist":{"shasum":"9b457a4e3d9aae2966a4ea8a0609546e5bc72ed5","tarball":"https://registry.npmjs.org/solid-prism-editor/-/solid-prism-editor-1.2.0.tgz","fileCount":1774,"integrity":"sha512-7FYYvMCTBhnbDbEQGw425nxUTsQmZEKvXyICnznX1zbMDqFfhJ8zvvbCmHKolW6JlK9L7azVAyC8PhGoxdqNNg==","signatures":[{"sig":"MEUCIQD8SKzdf2ulyLRHWzshp93sdqymXu9/sC+Tt4ZVRpRg9wIgZ8Ebc/s4RTnzhTy4gUEd+fEY+n/SoLSQDu/h4LwXDfI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":2677956},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":"./dist/index.js","./prism":"./dist/prism/index.js","./utils":"./dist/utils/index.js","./cursor":"./dist/extensions/cursor.js","./guides":"./dist/extensions/guides.js","./search":"./dist/extensions/search/index.js","./setups":"./dist/setups.js","./themes":"./dist/themes/index.js","./commands":"./dist/extensions/commands.js","./tooltips":"./dist/tooltips.js","./languages":"./dist/languages/index.js","./layout.css":"./dist/layout.css","./match-tags":"./dist/extensions/match-tags.js","./overscroll":"./dist/extensions/overscroll.js","./search.css":"./dist/search.css","./search/api":"./dist/extensions/search/api.js","./copy-button":"./dist/extensions/copy-button/index.js","./languages/*":"./dist/languages/*.js","./prism/utils":"./dist/prism/utils/index.js","./autocomplete":"./dist/extensions/autocomplete/index.js","./code-folding":"./dist/extensions/folding/index.js","./themes/*.css":"./dist/themes/*.css","./scrollbar.css":"./dist/scrollbar.css","./invisibles.css":"./dist/invisibles.css","./match-brackets":"./dist/extensions/match-brackets/index.js","./rtl-layout.css":"./dist/rtl-layout.css","./copy-button.css":"./dist/copy.css","./prism/languages":"./dist/prism/languages/index.js","./autocomplete.css":"./dist/autocomplete.css","./autocomplete/css":"./dist/extensions/autocomplete/css/index.js","./code-folding.css":"./dist/folding.css","./prism/languages/*":"./dist/prism/languages/*.js","./highlight-brackets":"./dist/extensions/match-brackets/highlight.js","./autocomplete/markup":"./dist/extensions/autocomplete/markup/index.js","./autocomplete-icons.css":"./dist/autocomplete-icons.css","./autocomplete/javascript":"./dist/extensions/autocomplete/javascript/index.js"},"gitHead":"328126477633a4067a8369a75835351b3aaa8ac8","scripts":{"dev":"vite","build":"vite build && node scripts/build.mjs","serve":"vite preview","start":"vite"},"_npmUser":{"name":"flamecaster","email":"fl4mecaster@gmail.com"},"repository":{"url":"git+https://github.com/FIameCaster/solid-prism-editor.git","type":"git"},"_npmVersion":"10.5.2","description":"Lightweight, extensible code editor component for SolidJS apps","directories":{},"sideEffects":["*.css","./dist/languages/*","./dist/prism/languages/*","./dist/jsx-*"],"_nodeVersion":"20.13.1","typesVersions":{"*":{"*":["./dist/*"]}},"_hasShrinkwrap":false,"packageManager":"pnpm@9.0.4+sha1.b198ac6d38244fd829253720f9daafd6a606834d","devDependencies":{"vite":"^5.3.3","solid-js":"^1.8.11","typescript":"^5.3.3","@types/node":"^20.12.6","solid-devtools":"^0.29.2","vite-plugin-dts":"^3.8.1","prism-code-editor":"^3.4.0","vite-plugin-solid":"^2.8.2"},"peerDependencies":{"solid-js":"*"},"_npmOperationalInternal":{"tmp":"tmp/solid-prism-editor_1.2.0_1724192424257_0.08521199498349596","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"solid-prism-editor","version":"2.0.0","keywords":["editor","code editor","textarea","solid","highlight","prismjs"],"author":{"name":"FlameCaster"},"license":"MIT","_id":"solid-prism-editor@2.0.0","maintainers":[{"name":"flamecaster","email":"fl4mecaster@gmail.com"}],"homepage":"https://github.com/FIameCaster/prism-code-editor#readme","bugs":{"url":"https://github.com/FIameCaster/prism-code-editor/issues"},"dist":{"shasum":"e26bb797bd694b9262c2ce4a6b0397f8a86d5a25","tarball":"https://registry.npmjs.org/solid-prism-editor/-/solid-prism-editor-2.0.0.tgz","fileCount":1814,"integrity":"sha512-WjJRC0kh9DM4e3v8mZWFBg6R6uVIg5uscRPHwdq6sLbFwofzKhExMhWww5761yWbNORhkteY4ag9+tG3g0I2Zw==","signatures":[{"sig":"MEQCIEgdzCyLqDEprs3V8MbNahLjqRU9TiANGT0EfoucxfIjAiAOrhR2v5a6TM5jyxlpwunQJJjlA0TVtGCHacL4UgYsqg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2795725},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":"./dist/index.js","./prism":"./dist/prism/index.js","./utils":"./dist/utils/index.js","./cursor":"./dist/extensions/cursor.js","./guides":"./dist/extensions/guides.js","./search":"./dist/extensions/search/index.js","./setups":"./dist/setups.js","./themes":"./dist/themes/index.js","./commands":"./dist/extensions/commands.js","./tooltips":"./dist/tooltips.js","./languages":"./dist/languages/index.js","./layout.css":"./dist/layout.css","./match-tags":"./dist/extensions/match-tags.js","./overscroll":"./dist/extensions/overscroll.js","./search.css":"./dist/search.css","./search/api":"./dist/extensions/search/api.js","./code-blocks":"./dist/code-block/index.js","./copy-button":"./dist/extensions/copy-button/index.js","./languages/*":"./dist/languages/*.js","./prism/utils":"./dist/prism/utils/index.js","./autocomplete":"./dist/extensions/autocomplete/index.js","./code-folding":"./dist/extensions/folding/index.js","./themes/*.css":"./dist/themes/*.css","./scrollbar.css":"./dist/scrollbar.css","./code-block.css":"./dist/code-block.css","./invisibles.css":"./dist/invisibles.css","./match-brackets":"./dist/extensions/match-brackets/index.js","./rtl-layout.css":"./dist/rtl-layout.css","./copy-button.css":"./dist/copy.css","./prism/languages":"./dist/prism/languages/index.js","./autocomplete.css":"./dist/autocomplete.css","./autocomplete/css":"./dist/extensions/autocomplete/css/index.js","./autocomplete/vue":"./dist/extensions/autocomplete/vue/index.js","./code-folding.css":"./dist/folding.css","./prism/languages/*":"./dist/prism/languages/*.js","./highlight-brackets":"./dist/extensions/match-brackets/highlight.js","./autocomplete/markup":"./dist/extensions/autocomplete/markup/index.js","./autocomplete/svelte":"./dist/extensions/autocomplete/svelte/index.js","./autocomplete-icons.css":"./dist/autocomplete-icons.css","./autocomplete/javascript":"./dist/extensions/autocomplete/javascript/index.js"},"gitHead":"4a653247b6c4c1d58d5bac95c87399ba859bb721","scripts":{"dev":"vite","build":"vite build && node scripts/build.mjs","serve":"vite preview","start":"vite"},"_npmUser":{"name":"flamecaster","email":"fl4mecaster@gmail.com"},"repository":{"url":"git+https://github.com/FIameCaster/prism-code-editor.git","type":"git"},"_npmVersion":"10.9.0","description":"Lightweight, extensible code editor component for SolidJS apps","directories":{},"sideEffects":["*.css","./dist/languages/*","./dist/prism/languages/*","./dist/jsx-*"],"_nodeVersion":"22.10.0","typesVersions":{"*":{"*":["./dist/*"]}},"_hasShrinkwrap":false,"packageManager":"pnpm@9.0.4+sha1.b198ac6d38244fd829253720f9daafd6a606834d","devDependencies":{"vite":"^6.3.5","solid-js":"^1.9.6","typescript":"^5.8.3","@types/node":"^20.17.46","solid-devtools":"^0.34.0","vite-plugin-dts":"^4.5.3","prism-code-editor":"4.0.0","vite-plugin-solid":"^2.11.6"},"peerDependencies":{"solid-js":"*"},"_npmOperationalInternal":{"tmp":"tmp/solid-prism-editor_2.0.0_1747000804544_0.6528462047561794","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"solid-prism-editor","version":"2.1.0","keywords":["editor","code editor","textarea","solid","highlight","prismjs"],"author":{"name":"FlameCaster"},"license":"MIT","_id":"solid-prism-editor@2.1.0","maintainers":[{"name":"flamecaster","email":"fl4mecaster@gmail.com"}],"homepage":"https://github.com/FIameCaster/prism-code-editor#readme","bugs":{"url":"https://github.com/FIameCaster/prism-code-editor/issues"},"dist":{"shasum":"76de01445a238531cc62c84dabe24dfcf8897294","tarball":"https://registry.npmjs.org/solid-prism-editor/-/solid-prism-editor-2.1.0.tgz","fileCount":1814,"integrity":"sha512-+4dw9PimVpnWih9+Iupw6UyD47FfbIFQDThuSNIrzRL8qwkxaDzNAMVcULZDZE8taYdb/tXknZqCT6y+vnEOww==","signatures":[{"sig":"MEUCIQCk04PN7I3XVozuxq/ToEqAMiIvEipRaxfc5hnUlVB9nwIgUmaqtkHwSGBipcFvC4Zx9W5f4+yOTjym+d6CQIVqwrs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2795964},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":"./dist/index.js","./prism":"./dist/prism/index.js","./utils":"./dist/utils/index.js","./cursor":"./dist/extensions/cursor.js","./guides":"./dist/extensions/guides.js","./search":"./dist/extensions/search/index.js","./setups":"./dist/setups.js","./themes":"./dist/themes/index.js","./commands":"./dist/extensions/commands.js","./tooltips":"./dist/tooltips.js","./languages":"./dist/languages/index.js","./layout.css":"./dist/layout.css","./match-tags":"./dist/extensions/match-tags.js","./overscroll":"./dist/extensions/overscroll.js","./search.css":"./dist/search.css","./search/api":"./dist/extensions/search/api.js","./code-blocks":"./dist/code-block/index.js","./copy-button":"./dist/extensions/copy-button/index.js","./languages/*":"./dist/languages/*.js","./prism/utils":"./dist/prism/utils/index.js","./autocomplete":"./dist/extensions/autocomplete/index.js","./code-folding":"./dist/extensions/folding/index.js","./themes/*.css":"./dist/themes/*.css","./scrollbar.css":"./dist/scrollbar.css","./code-block.css":"./dist/code-block.css","./invisibles.css":"./dist/invisibles.css","./match-brackets":"./dist/extensions/match-brackets/index.js","./rtl-layout.css":"./dist/rtl-layout.css","./copy-button.css":"./dist/copy.css","./prism/languages":"./dist/prism/languages/index.js","./autocomplete.css":"./dist/autocomplete.css","./autocomplete/css":"./dist/extensions/autocomplete/css/index.js","./autocomplete/vue":"./dist/extensions/autocomplete/vue/index.js","./code-folding.css":"./dist/folding.css","./prism/languages/*":"./dist/prism/languages/*.js","./highlight-brackets":"./dist/extensions/match-brackets/highlight.js","./autocomplete/markup":"./dist/extensions/autocomplete/markup/index.js","./autocomplete/svelte":"./dist/extensions/autocomplete/svelte/index.js","./autocomplete-icons.css":"./dist/autocomplete-icons.css","./autocomplete/javascript":"./dist/extensions/autocomplete/javascript/index.js"},"gitHead":"4510c9d83fdede5b75a7fdddcdd131f7bcf5fa24","scripts":{"dev":"vite","build":"vite build && node scripts/build.mjs","serve":"vite preview","start":"vite"},"_npmUser":{"name":"flamecaster","actor":{"name":"flamecaster","type":"user","email":"fl4mecaster@gmail.com"},"email":"fl4mecaster@gmail.com"},"repository":{"url":"git+https://github.com/FIameCaster/prism-code-editor.git","type":"git"},"_npmVersion":"10.9.0","description":"Lightweight, extensible code editor component for SolidJS apps","directories":{},"sideEffects":["*.css","./dist/languages/*","./dist/prism/languages/*","./dist/jsx-*"],"_nodeVersion":"22.10.0","typesVersions":{"*":{"*":["./dist/*"]}},"_hasShrinkwrap":false,"packageManager":"pnpm@9.0.4+sha1.b198ac6d38244fd829253720f9daafd6a606834d","devDependencies":{"vite":"^6.3.5","solid-js":"^1.9.6","typescript":"^5.8.3","@types/node":"^20.17.46","solid-devtools":"^0.34.0","vite-plugin-dts":"^4.5.3","prism-code-editor":"4.0.0","vite-plugin-solid":"^2.11.6"},"peerDependencies":{"solid-js":"*"},"_npmOperationalInternal":{"tmp":"tmp/solid-prism-editor_2.1.0_1750519866489_0.022503174690677863","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"solid-prism-editor","version":"2.2.0","keywords":["code","editor","code-editor","textarea","solid","highlight","prism"],"author":{"name":"Jonas Pytte"},"license":"MIT","_id":"solid-prism-editor@2.2.0","maintainers":[{"name":"flamecaster","email":"fl4mecaster@gmail.com"}],"homepage":"https://github.com/jonpyt/prism-code-editor#readme","bugs":{"url":"https://github.com/jonpyt/prism-code-editor/issues"},"dist":{"shasum":"56a9ae3bbf99d22c17b8cd311afacce62c6c61f3","tarball":"https://registry.npmjs.org/solid-prism-editor/-/solid-prism-editor-2.2.0.tgz","fileCount":1814,"integrity":"sha512-awOCtPTC6TNyrlIC598MJ/RPcTSwA0PfKKfBUHTz+sZmaYEjICrcPH6GEGwirG1KBOhZSnEVASeFnfgZoDJOHA==","signatures":[{"sig":"MEYCIQCQ7PbDJjhjElPH4JQ2ioGUgCkHcq4Az+gZxOJxC4movgIhAJiHZ1/T0Ib5F3tHOPFgeSAf8Dn+QXvSng3pmTXseZWd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2809061},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":"./dist/index.js","./prism":"./dist/prism/index.js","./utils":"./dist/utils/index.js","./cursor":"./dist/extensions/cursor.js","./guides":"./dist/extensions/guides.js","./search":"./dist/extensions/search/index.js","./setups":"./dist/setups.js","./themes":"./dist/themes/index.js","./commands":"./dist/extensions/commands.js","./tooltips":"./dist/tooltips.js","./languages":"./dist/languages/index.js","./layout.css":"./dist/layout.css","./match-tags":"./dist/extensions/match-tags.js","./overscroll":"./dist/extensions/overscroll.js","./search.css":"./dist/search.css","./search/api":"./dist/extensions/search/api.js","./code-blocks":"./dist/code-block/index.js","./copy-button":"./dist/extensions/copy-button/index.js","./languages/*":"./dist/languages/*.js","./prism/utils":"./dist/prism/utils/index.js","./autocomplete":"./dist/extensions/autocomplete/index.js","./code-folding":"./dist/extensions/folding/index.js","./themes/*.css":"./dist/themes/*.css","./scrollbar.css":"./dist/scrollbar.css","./code-block.css":"./dist/code-block.css","./invisibles.css":"./dist/invisibles.css","./match-brackets":"./dist/extensions/match-brackets/index.js","./rtl-layout.css":"./dist/rtl-layout.css","./copy-button.css":"./dist/copy.css","./prism/languages":"./dist/prism/languages/index.js","./autocomplete.css":"./dist/autocomplete.css","./autocomplete/css":"./dist/extensions/autocomplete/css/index.js","./autocomplete/vue":"./dist/extensions/autocomplete/vue/index.js","./code-folding.css":"./dist/folding.css","./prism/languages/*":"./dist/prism/languages/*.js","./highlight-brackets":"./dist/extensions/match-brackets/highlight.js","./autocomplete/markup":"./dist/extensions/autocomplete/markup/index.js","./autocomplete/svelte":"./dist/extensions/autocomplete/svelte/index.js","./autocomplete-icons.css":"./dist/autocomplete-icons.css","./autocomplete/javascript":"./dist/extensions/autocomplete/javascript/index.js"},"gitHead":"8791915fac6e070026e05dccea8d26676a4bb3ad","scripts":{"dev":"vite","build":"vite build && node scripts/build.mjs","serve":"vite preview","start":"vite"},"_npmUser":{"name":"flamecaster","email":"fl4mecaster@gmail.com"},"repository":{"url":"git+https://github.com/jonpyt/prism-code-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Lightweight, extensible code editor component for SolidJS apps","directories":{},"sideEffects":["*.css","./dist/languages/*","./dist/prism/languages/*","./dist/jsx-*"],"_nodeVersion":"24.11.1","typesVersions":{"*":{"*":["./dist/*"]}},"_hasShrinkwrap":false,"packageManager":"pnpm@9.0.4+sha1.b198ac6d38244fd829253720f9daafd6a606834d","devDependencies":{"vite":"^6.4.1","solid-js":"^1.9.9","typescript":"^5.9.2","@types/node":"^20.19.17","solid-devtools":"^0.34.3","vite-plugin-dts":"^4.5.4","prism-code-editor":"^4.1.0","vite-plugin-solid":"^2.11.8"},"peerDependencies":{"solid-js":"*"},"_npmOperationalInternal":{"tmp":"tmp/solid-prism-editor_2.2.0_1765387613650_0.6313571875426038","host":"s3://npm-registry-packages-npm-production"}},"3.0.0":{"name":"solid-prism-editor","version":"3.0.0","keywords":["code","editor","code-editor","textarea","solid","highlight","prism"],"author":{"name":"Jonas Pytte"},"license":"MIT","_id":"solid-prism-editor@3.0.0","maintainers":[{"name":"flamecaster","email":"fl4mecaster@gmail.com"}],"homepage":"https://github.com/jonpyt/prism-code-editor#readme","bugs":{"url":"https://github.com/jonpyt/prism-code-editor/issues"},"dist":{"shasum":"43ab03d684b53bc1801fd0375f5b2ac2cf86524a","tarball":"https://registry.npmjs.org/solid-prism-editor/-/solid-prism-editor-3.0.0.tgz","fileCount":1819,"integrity":"sha512-yqcUl9evBfz//ERI0vaEBWU20oZqBPgATpug64C89QlYzdAYGpA3TO4qRqk6QJvn6uIgP74KNpuHPZ8FEGSP6g==","signatures":[{"sig":"MEQCIHl74wIpkG60fWMw+VjLtFi8gPvLegVG1V0UGGorIFKZAiAp48J3vAx3U6LJ6RPTjVNViPmvNhodjTnYls0jdxrmkw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2755838},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":"./dist/index.js","./prism":"./dist/prism/index.js","./utils":"./dist/utils/index.js","./cursor":"./dist/extensions/cursor/index.js","./guides":"./dist/extensions/guides.js","./search":"./dist/extensions/search/index.js","./setups":"./dist/setups.js","./themes":"./dist/themes/index.js","./commands":"./dist/extensions/commands.js","./tooltips":"./dist/tooltips.js","./languages":"./dist/languages/index.js","./cursor.css":"./dist/cursor.css","./layout.css":"./dist/layout.css","./match-tags":"./dist/extensions/match-tags.js","./overscroll":"./dist/extensions/overscroll.js","./search.css":"./dist/search.css","./search/api":"./dist/extensions/search/api.js","./code-blocks":"./dist/code-block/index.js","./copy-button":"./dist/extensions/copy-button/index.js","./languages/*":"./dist/languages/*.js","./prism/utils":"./dist/prism/utils/index.js","./autocomplete":"./dist/extensions/autocomplete/index.js","./code-folding":"./dist/extensions/folding/index.js","./themes/*.css":"./dist/themes/*.css","./scrollbar.css":"./dist/scrollbar.css","./code-block.css":"./dist/code-block.css","./invisibles.css":"./dist/invisibles.css","./match-brackets":"./dist/extensions/match-brackets/index.js","./rtl-layout.css":"./dist/rtl-layout.css","./copy-button.css":"./dist/copy.css","./prism/languages":"./dist/prism/languages/index.js","./autocomplete.css":"./dist/autocomplete.css","./autocomplete/css":"./dist/extensions/autocomplete/css/index.js","./autocomplete/vue":"./dist/extensions/autocomplete/vue/index.js","./code-folding.css":"./dist/folding.css","./prism/languages/*":"./dist/prism/languages/*.js","./highlight-brackets":"./dist/extensions/match-brackets/highlight.js","./autocomplete/markup":"./dist/extensions/autocomplete/markup/index.js","./autocomplete/svelte":"./dist/extensions/autocomplete/svelte/index.js","./autocomplete-icons.css":"./dist/autocomplete-icons.css","./autocomplete/javascript":"./dist/extensions/autocomplete/javascript/index.js"},"gitHead":"deae95db9f97a6c0fd02eb1cc892c01620f1240f","scripts":{"dev":"vite","build":"vite build && node scripts/build.mjs","serve":"vite preview","start":"vite"},"_npmUser":{"name":"flamecaster","email":"fl4mecaster@gmail.com"},"repository":{"url":"git+https://github.com/jonpyt/prism-code-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Lightweight, extensible code editor component for SolidJS apps","directories":{},"sideEffects":["*.css","./dist/languages/*","./dist/prism/languages/*","./dist/jsx-*"],"_nodeVersion":"24.12.0","typesVersions":{"*":{"*":["./dist/*"]}},"_hasShrinkwrap":false,"packageManager":"pnpm@9.0.4+sha1.b198ac6d38244fd829253720f9daafd6a606834d","devDependencies":{"vite":"^6.4.1","solid-js":"^1.9.9","typescript":"^5.9.2","@types/node":"^20.19.17","solid-devtools":"^0.34.3","vite-plugin-dts":"^4.5.4","prism-code-editor":"^5.0.0","vite-plugin-solid":"^2.11.8"},"peerDependencies":{"solid-js":"*"},"_npmOperationalInternal":{"tmp":"tmp/solid-prism-editor_3.0.0_1768062138086_0.5499788622441366","host":"s3://npm-registry-packages-npm-production"}},"3.0.1":{"name":"solid-prism-editor","version":"3.0.1","keywords":["code","editor","code-editor","textarea","solid","highlight","prism"],"author":{"name":"Jonas Pytte"},"license":"MIT","_id":"solid-prism-editor@3.0.1","maintainers":[{"name":"flamecaster","email":"fl4mecaster@gmail.com"}],"homepage":"https://github.com/jonpyt/prism-code-editor#readme","bugs":{"url":"https://github.com/jonpyt/prism-code-editor/issues"},"dist":{"shasum":"2f8965c8906688f247400950a9af9939c1b2fb5a","tarball":"https://registry.npmjs.org/solid-prism-editor/-/solid-prism-editor-3.0.1.tgz","fileCount":1819,"integrity":"sha512-lCYV+sTYf0zB9+OIvPrfHtzVRHncisB7zMKhYBm5R930bJi4IHyz7CBg6iXe0U67/prmhAR76w7YJ5qAlw+Dqw==","signatures":[{"sig":"MEUCIATOU98l+3Lr4LGKweEyJYRqjL19GKDiD7zvlgc8/OdbAiEAiHjUOlUtLnT08kwMY/n3a5M26LtGsVGHPzAzLePhhiw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2758679},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":"./dist/index.js","./prism":"./dist/prism/index.js","./utils":"./dist/utils/index.js","./cursor":"./dist/extensions/cursor/index.js","./guides":"./dist/extensions/guides.js","./search":"./dist/extensions/search/index.js","./setups":"./dist/setups.js","./themes":"./dist/themes/index.js","./commands":"./dist/extensions/commands.js","./tooltips":"./dist/tooltips.js","./languages":"./dist/languages/index.js","./cursor.css":"./dist/cursor.css","./layout.css":"./dist/layout.css","./match-tags":"./dist/extensions/match-tags.js","./overscroll":"./dist/extensions/overscroll.js","./search.css":"./dist/search.css","./search/api":"./dist/extensions/search/api.js","./code-blocks":"./dist/code-block/index.js","./copy-button":"./dist/extensions/copy-button/index.js","./languages/*":"./dist/languages/*.js","./prism/utils":"./dist/prism/utils/index.js","./autocomplete":"./dist/extensions/autocomplete/index.js","./code-folding":"./dist/extensions/folding/index.js","./themes/*.css":"./dist/themes/*.css","./scrollbar.css":"./dist/scrollbar.css","./code-block.css":"./dist/code-block.css","./invisibles.css":"./dist/invisibles.css","./match-brackets":"./dist/extensions/match-brackets/index.js","./rtl-layout.css":"./dist/rtl-layout.css","./copy-button.css":"./dist/copy.css","./prism/languages":"./dist/prism/languages/index.js","./autocomplete.css":"./dist/autocomplete.css","./autocomplete/css":"./dist/extensions/autocomplete/css/index.js","./autocomplete/vue":"./dist/extensions/autocomplete/vue/index.js","./code-folding.css":"./dist/folding.css","./prism/languages/*":"./dist/prism/languages/*.js","./highlight-brackets":"./dist/extensions/match-brackets/highlight.js","./autocomplete/markup":"./dist/extensions/autocomplete/markup/index.js","./autocomplete/svelte":"./dist/extensions/autocomplete/svelte/index.js","./autocomplete-icons.css":"./dist/autocomplete-icons.css","./autocomplete/javascript":"./dist/extensions/autocomplete/javascript/index.js"},"gitHead":"2a7485cdff66cfd6cd635af24cd44816e61bfb3c","scripts":{"dev":"vite","build":"vite build && node scripts/build.mjs","serve":"vite preview","start":"vite"},"_npmUser":{"name":"flamecaster","email":"fl4mecaster@gmail.com"},"repository":{"url":"git+https://github.com/jonpyt/prism-code-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Lightweight, extensible code editor component for SolidJS apps","directories":{},"sideEffects":["*.css","./dist/languages/*","./dist/prism/languages/*","./dist/jsx-*"],"_nodeVersion":"24.12.0","typesVersions":{"*":{"*":["./dist/*"]}},"_hasShrinkwrap":false,"packageManager":"pnpm@9.0.4+sha1.b198ac6d38244fd829253720f9daafd6a606834d","devDependencies":{"vite":"^6.4.1","solid-js":"^1.9.9","typescript":"^5.9.3","@types/node":"^20.19.17","solid-devtools":"^0.34.3","vite-plugin-dts":"^4.5.4","prism-code-editor":"^5.0.0","vite-plugin-solid":"^2.11.8"},"peerDependencies":{"solid-js":"*"},"_npmOperationalInternal":{"tmp":"tmp/solid-prism-editor_3.0.1_1768920324514_0.7877791878005485","host":"s3://npm-registry-packages-npm-production"}},"3.1.0":{"name":"solid-prism-editor","version":"3.1.0","keywords":["code","editor","code-editor","textarea","solid","highlight","prism"],"author":{"name":"Jonas Pytte"},"license":"MIT","_id":"solid-prism-editor@3.1.0","maintainers":[{"name":"flamecaster","email":"fl4mecaster@gmail.com"}],"homepage":"https://github.com/jonpyt/prism-code-editor#readme","bugs":{"url":"https://github.com/jonpyt/prism-code-editor/issues"},"dist":{"shasum":"ff63be456e3c9c13457aa8d0d6912243000acac9","tarball":"https://registry.npmjs.org/solid-prism-editor/-/solid-prism-editor-3.1.0.tgz","fileCount":2108,"integrity":"sha512-eyQfCyMciod7YRB/fAHPf5+fyZc3RsEfOQg1XVYHru+Ek6G26P4UAnBm+wODJu+87ouaZ3E+TAO+NcNzyCtKkA==","signatures":[{"sig":"MEUCIFWSaHYrr6Gi4fD4oj7BVqKmL5Fh0wuk9Y6x15JGpXWPAiEA/iHzQLJHaIJ8Cxp5d3RVL/bX/rPl76F8YXPY7q5OxB4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2626791},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":"./dist/index.js","./prism":"./dist/prism/index.js","./utils":"./dist/utils/index.js","./cursor":"./dist/extensions/cursor/index.js","./guides":"./dist/extensions/guides.js","./search":"./dist/extensions/search/index.js","./setups":"./dist/setups.js","./themes":"./dist/themes/index.js","./commands":"./dist/extensions/commands.js","./tooltips":"./dist/tooltips.js","./languages":"./dist/languages/index.js","./cursor.css":"./dist/cursor.css","./layout.css":"./dist/layout.css","./match-tags":"./dist/extensions/match-tags.js","./overscroll":"./dist/extensions/overscroll.js","./search.css":"./dist/search.css","./search/api":"./dist/extensions/search/api.js","./code-blocks":"./dist/code-block/index.js","./copy-button":"./dist/extensions/copy-button/index.js","./languages/*":"./dist/languages/*.js","./prism/utils":"./dist/prism/utils/index.js","./autocomplete":"./dist/extensions/autocomplete/index.js","./code-folding":"./dist/extensions/folding/index.js","./themes/*.css":"./dist/themes/*.css","./scrollbar.css":"./dist/scrollbar.css","./code-block.css":"./dist/code-block.css","./invisibles.css":"./dist/invisibles.css","./match-brackets":"./dist/extensions/match-brackets/index.js","./rtl-layout.css":"./dist/rtl-layout.css","./copy-button.css":"./dist/copy.css","./prism/languages":"./dist/prism/languages/index.js","./autocomplete.css":"./dist/autocomplete.css","./autocomplete/css":"./dist/extensions/autocomplete/css/index.js","./autocomplete/vue":"./dist/extensions/autocomplete/vue/index.js","./code-folding.css":"./dist/folding.css","./prism/languages/*":"./dist/prism/languages/*.js","./highlight-brackets":"./dist/extensions/match-brackets/highlight.js","./autocomplete/markup":"./dist/extensions/autocomplete/markup/index.js","./autocomplete/svelte":"./dist/extensions/autocomplete/svelte/index.js","./autocomplete-icons.css":"./dist/autocomplete-icons.css","./autocomplete/javascript":"./dist/extensions/autocomplete/javascript/index.js"},"gitHead":"489627e470a4619e7a08048fb4b41550a28546f5","scripts":{"dev":"vite","build":"vite build && node scripts/build.mjs","serve":"vite preview","start":"vite"},"_npmUser":{"name":"flamecaster","email":"fl4mecaster@gmail.com"},"repository":{"url":"git+https://github.com/jonpyt/prism-code-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Lightweight, extensible code editor component for SolidJS apps","directories":{},"sideEffects":["./src/prism/languages/*","./src/languages/*","*.css","./dist/languages/*","./dist/prism/languages/*","./dist/jsx-*"],"_nodeVersion":"24.12.0","typesVersions":{"*":{"*":["./dist/*"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^8.0.0","esbuild":"^0.27.4","solid-js":"^1.9.11","typescript":"^5.9.3","@types/node":"^20.19.33","solid-devtools":"^0.34.5","vite-plugin-dts":"^4.5.4","prism-code-editor":"^5.0.1","vite-plugin-solid":"^2.11.10"},"peerDependencies":{"solid-js":"*"},"_npmOperationalInternal":{"tmp":"tmp/solid-prism-editor_3.1.0_1773502842239_0.13051685395480161","host":"s3://npm-registry-packages-npm-production"}},"3.2.0":{"name":"solid-prism-editor","version":"3.2.0","keywords":["code","editor","code-editor","textarea","solid","highlight","prism"],"author":{"name":"Jonas Pytte"},"license":"MIT","_id":"solid-prism-editor@3.2.0","maintainers":[{"name":"flamecaster","email":"fl4mecaster@gmail.com"}],"homepage":"https://github.com/jonpyt/prism-code-editor#readme","bugs":{"url":"https://github.com/jonpyt/prism-code-editor/issues"},"dist":{"shasum":"c1c218a5204b45be95bbff6566614f53159a8708","tarball":"https://registry.npmjs.org/solid-prism-editor/-/solid-prism-editor-3.2.0.tgz","fileCount":1826,"integrity":"sha512-qIhnOyAWbj93dlD3bwJM+RXkl/bZheDvlxxaMhVgASST8k2bopUlreSn5tGxCTSkkvmtL/9cxwfZ/DXunQ06vA==","signatures":[{"sig":"MEUCIQC04mbQtArCozyCQyR08i/WUWGclLNpTiaQOAwnUbsXSgIgB7p94TLVzOybDFa54cLVQeJUWmTS/vmTb4u9UJ0oKKE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2754021},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":"./dist/index.js","./prism":"./dist/prism/index.js","./utils":"./dist/utils/index.js","./cursor":"./dist/extensions/cursor/index.js","./guides":"./dist/extensions/guides.js","./search":"./dist/extensions/search/index.js","./setups":"./dist/setups.js","./themes":"./dist/themes/index.js","./commands":"./dist/extensions/commands/index.js","./tooltips":"./dist/tooltips.js","./languages":"./dist/languages/index.js","./cursor.css":"./dist/cursor.css","./layout.css":"./dist/layout.css","./match-tags":"./dist/extensions/match-tags.js","./overscroll":"./dist/extensions/overscroll.js","./search.css":"./dist/search.css","./search/api":"./dist/extensions/search/api.js","./code-blocks":"./dist/code-block/index.js","./copy-button":"./dist/extensions/copy-button/index.js","./languages/*":"./dist/languages/*.js","./prism/utils":"./dist/prism/utils/index.js","./autocomplete":"./dist/extensions/autocomplete/index.js","./code-folding":"./dist/extensions/folding/index.js","./themes/*.css":"./dist/themes/*.css","./scrollbar.css":"./dist/scrollbar.css","./code-block.css":"./dist/code-block.css","./invisibles.css":"./dist/invisibles.css","./match-brackets":"./dist/extensions/match-brackets/index.js","./rtl-layout.css":"./dist/rtl-layout.css","./copy-button.css":"./dist/copy.css","./prism/languages":"./dist/prism/languages/index.js","./autocomplete.css":"./dist/autocomplete.css","./autocomplete/css":"./dist/extensions/autocomplete/css/index.js","./autocomplete/vue":"./dist/extensions/autocomplete/vue/index.js","./code-folding.css":"./dist/folding.css","./prism/languages/*":"./dist/prism/languages/*.js","./highlight-brackets":"./dist/extensions/match-brackets/highlight.js","./autocomplete/markup":"./dist/extensions/autocomplete/markup/index.js","./autocomplete/svelte":"./dist/extensions/autocomplete/svelte/index.js","./autocomplete-icons.css":"./dist/autocomplete-icons.css","./autocomplete/javascript":"./dist/extensions/autocomplete/javascript/index.js"},"gitHead":"e05e16a45fbeed2a7cb48b1ad9ce9e6b644a2402","scripts":{"dev":"vite","build":"vite build && node scripts/build.mjs","serve":"vite preview","start":"vite"},"_npmUser":{"name":"flamecaster","email":"fl4mecaster@gmail.com"},"repository":{"url":"git+https://github.com/jonpyt/prism-code-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Lightweight, extensible code editor component for SolidJS apps","directories":{},"sideEffects":["./src/prism/languages/*","./src/languages/*","*.css","./dist/languages/*","./dist/prism/languages/*","./dist/jsx-*"],"_nodeVersion":"24.11.1","typesVersions":{"*":{"*":["./dist/*"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.3","esbuild":"^0.27.4","solid-js":"^1.9.11","typescript":"^5.9.3","@types/node":"^20.19.33","unplugin-dts":"^1.0.1","solid-devtools":"^0.34.5","prism-code-editor":"^5.0.1","vite-plugin-solid":"^2.11.10"},"peerDependencies":{"solid-js":"*"},"_npmOperationalInternal":{"tmp":"tmp/solid-prism-editor_3.2.0_1780409204814_0.9631114642660443","host":"s3://npm-registry-packages-npm-production"}},"3.3.0":{"name":"solid-prism-editor","version":"3.3.0","keywords":["code","editor","code-editor","textarea","solid","highlight","prism"],"author":{"name":"Jonas Pytte"},"license":"MIT","_id":"solid-prism-editor@3.3.0","maintainers":[{"name":"flamecaster","email":"fl4mecaster@gmail.com"}],"homepage":"https://github.com/jonpyt/prism-code-editor#readme","bugs":{"url":"https://github.com/jonpyt/prism-code-editor/issues"},"dist":{"shasum":"481d8e62e023f17080c4911fc54cd45284bb44d2","tarball":"https://registry.npmjs.org/solid-prism-editor/-/solid-prism-editor-3.3.0.tgz","fileCount":1826,"integrity":"sha512-s0NTtgJmFsRRSeHxUdn3DfneoGoq450CPCJZ8pPpOdoVK1W5v+UMy0WK1tQHftsETvmflwZwKECt8f/95eTcQA==","signatures":[{"sig":"MEQCIBBHdOxke0PVJAc5y4rnnNeZriBwc39/oVE5/cHklFL1AiBi7cdu9bCwE3RomJPzx4ROTSECJsMt2/kaGCCPmH46Gg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2757121},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":"./dist/index.js","./prism":"./dist/prism/index.js","./utils":"./dist/utils/index.js","./cursor":"./dist/extensions/cursor/index.js","./guides":"./dist/extensions/guides.js","./search":"./dist/extensions/search/index.js","./setups":"./dist/setups.js","./themes":"./dist/themes/index.js","./commands":"./dist/extensions/commands/index.js","./tooltips":"./dist/tooltips.js","./languages":"./dist/languages/index.js","./cursor.css":"./dist/cursor.css","./layout.css":"./dist/layout.css","./match-tags":"./dist/extensions/match-tags.js","./overscroll":"./dist/extensions/overscroll.js","./search.css":"./dist/search.css","./search/api":"./dist/extensions/search/api.js","./code-blocks":"./dist/code-block/index.js","./copy-button":"./dist/extensions/copy-button/index.js","./languages/*":"./dist/languages/*.js","./prism/utils":"./dist/prism/utils/index.js","./autocomplete":"./dist/extensions/autocomplete/index.js","./code-folding":"./dist/extensions/folding/index.js","./themes/*.css":"./dist/themes/*.css","./scrollbar.css":"./dist/scrollbar.css","./code-block.css":"./dist/code-block.css","./invisibles.css":"./dist/invisibles.css","./match-brackets":"./dist/extensions/match-brackets/index.js","./rtl-layout.css":"./dist/rtl-layout.css","./copy-button.css":"./dist/copy.css","./prism/languages":"./dist/prism/languages/index.js","./autocomplete.css":"./dist/autocomplete.css","./autocomplete/css":"./dist/extensions/autocomplete/css/index.js","./autocomplete/vue":"./dist/extensions/autocomplete/vue/index.js","./code-folding.css":"./dist/folding.css","./prism/languages/*":"./dist/prism/languages/*.js","./highlight-brackets":"./dist/extensions/match-brackets/highlight.js","./autocomplete/markup":"./dist/extensions/autocomplete/markup/index.js","./autocomplete/svelte":"./dist/extensions/autocomplete/svelte/index.js","./autocomplete-icons.css":"./dist/autocomplete-icons.css","./autocomplete/javascript":"./dist/extensions/autocomplete/javascript/index.js"},"gitHead":"a3d13f96e5b724556fa28c7d5b60e5d956b83b9d","scripts":{"dev":"vite","build":"vite build && node scripts/build.mjs","serve":"vite preview","start":"vite"},"_npmUser":{"name":"flamecaster","email":"fl4mecaster@gmail.com"},"repository":{"url":"git+https://github.com/jonpyt/prism-code-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Lightweight, extensible code editor component for SolidJS apps","directories":{},"sideEffects":["./src/prism/languages/*","./src/languages/*","*.css","./dist/languages/*","./dist/prism/languages/*","./dist/jsx-*"],"_nodeVersion":"24.11.1","typesVersions":{"*":{"*":["./dist/*"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.6","esbuild":"^0.27.7","solid-js":"^1.9.14","typescript":"^5.9.3","@types/node":"^20.19.43","unplugin-dts":"^1.0.3","solid-devtools":"^0.34.5","prism-code-editor":"link:..\\package","vite-plugin-solid":"^2.11.13"},"peerDependencies":{"solid-js":"*"},"_npmOperationalInternal":{"tmp":"tmp/solid-prism-editor_3.3.0_1785052549654_0.6212367942248422","host":"s3://npm-registry-packages-npm-production"}},"3.4.0":{"_id":"solid-prism-editor@3.4.0","bugs":{"url":"https://github.com/jonpyt/prism-code-editor/issues"},"dist":{"shasum":"73234d6f2f02258e44c3363c20145efe07cf300d","tarball":"https://registry.npmjs.org/solid-prism-editor/-/solid-prism-editor-3.4.0.tgz","fileCount":1835,"integrity":"sha512-HATKVNl7ekmUVqjfyBDH4klqRYxeZ8TGnrDx8OlaJrqHn3pIFY0Qvd5il9qsNM5tp2B4H6gLOUx6mm3EH/JiXQ==","signatures":[{"sig":"MEUCIQD3+QekXyn028YGZKpB/0l7VDdft5bbMYkPOir/TsneQwIgfTXFkdGkDnizkLl65wMA1YzMnxrERNCT5o+CsQwhgfY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIE9YM7cHO2V9ZyLqXfLoemefE+vHJ0b+1Aa1xDqK6sIvAiEAzFlnnz0wWtVh8KDUx/YP7Yxg1cgYSMMqtmwopCOwUZ8="}],"unpackedSize":2804706},"main":"./dist/index.js","name":"solid-prism-editor","type":"module","types":"./dist/index.d.ts","author":{"name":"Jonas Pytte"},"exports":{".":"./dist/index.js","./hover":"./dist/extensions/hover.js","./prism":"./dist/prism/index.js","./utils":"./dist/utils/index.js","./cursor":"./dist/extensions/cursor/index.js","./guides":"./dist/extensions/guides.js","./search":"./dist/extensions/search/index.js","./setups":"./dist/setups.js","./themes":"./dist/themes/index.js","./commands":"./dist/extensions/commands/index.js","./tooltips":"./dist/tooltips.js","./languages":"./dist/languages/index.js","./cursor.css":"./dist/cursor.css","./layout.css":"./dist/layout.css","./match-tags":"./dist/extensions/match-tags.js","./overscroll":"./dist/extensions/overscroll.js","./search.css":"./dist/search.css","./search/api":"./dist/extensions/search/api.js","./code-blocks":"./dist/code-block/index.js","./copy-button":"./dist/extensions/copy-button/index.js","./languages/*":"./dist/languages/*.js","./prism/utils":"./dist/prism/utils/index.js","./autocomplete":"./dist/extensions/autocomplete/index.js","./code-folding":"./dist/extensions/folding/index.js","./themes/*.css":"./dist/themes/*.css","./scrollbar.css":"./dist/scrollbar.css","./code-block.css":"./dist/code-block.css","./invisibles.css":"./dist/invisibles.css","./match-brackets":"./dist/extensions/match-brackets/index.js","./rtl-layout.css":"./dist/rtl-layout.css","./copy-button.css":"./dist/copy.css","./prism/languages":"./dist/prism/languages/index.js","./autocomplete.css":"./dist/autocomplete.css","./autocomplete/css":"./dist/extensions/autocomplete/css/index.js","./autocomplete/vue":"./dist/extensions/autocomplete/vue/index.js","./code-folding.css":"./dist/folding.css","./prism/languages/*":"./dist/prism/languages/*.js","./autocomplete/emmet":"./dist/extensions/autocomplete/emmet/markup.js","./highlight-brackets":"./dist/extensions/match-brackets/highlight.js","./autocomplete/markup":"./dist/extensions/autocomplete/markup/index.js","./autocomplete/svelte":"./dist/extensions/autocomplete/svelte/index.js","./autocomplete-icons.css":"./dist/autocomplete-icons.css","./autocomplete/javascript":"./dist/extensions/autocomplete/javascript/index.js"},"gitHead":"64ee6b7babe2e76ed964cca8d8667aedf289e3e9","license":"MIT","scripts":{"dev":"vite","build":"vite build && node scripts/build.mjs","serve":"vite preview","start":"vite"},"version":"3.4.0","_npmUser":{"name":"flamecaster","email":"fl4mecaster@gmail.com"},"homepage":"https://github.com/jonpyt/prism-code-editor#readme","keywords":["code","editor","code-editor","textarea","solid","highlight","prism"],"repository":{"url":"git+https://github.com/jonpyt/prism-code-editor.git","type":"git"},"_npmVersion":"11.6.2","description":"Lightweight, extensible code editor component for SolidJS apps","directories":{},"maintainers":[{"name":"flamecaster","email":"fl4mecaster@gmail.com"}],"sideEffects":["./src/prism/languages/*","./src/languages/*","*.css","./dist/languages/*","./dist/prism/languages/*","./dist/jsx-*"],"_nodeVersion":"24.11.1","typesVersions":{"*":{"*":["./dist/*"]}},"_hasShrinkwrap":false,"devDependencies":{"vite":"^7.3.6","emmet":"^2.4.11","esbuild":"^0.27.7","solid-js":"^1.9.14","typescript":"^5.9.3","@types/node":"^20.19.43","unplugin-dts":"^1.0.3","solid-devtools":"^0.34.5","prism-code-editor":"link:..\\package","vite-plugin-solid":"^2.11.13"},"peerDependencies":{"emmet":"^2.0.0","solid-js":"^1.0.0"},"peerDependenciesMeta":{"emmet":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/solid-prism-editor_3.4.0_1788728806772_0.7286118822914314"}}},"time":{"created":"2024-06-16T14:31:41.570Z","modified":"2026-09-06T21:06:47.126Z","1.0.0":"2024-06-16T14:31:41.850Z","1.0.1":"2024-06-19T22:59:01.092Z","1.1.0":"2024-07-08T16:41:32.339Z","1.2.0":"2024-08-20T22:20:24.554Z","2.0.0":"2025-05-11T22:00:04.807Z","2.1.0":"2025-06-21T15:31:06.723Z","2.2.0":"2025-12-10T17:26:53.900Z","3.0.0":"2026-01-10T16:22:18.317Z","3.0.1":"2026-01-20T14:45:24.723Z","3.1.0":"2026-03-14T15:40:42.480Z","3.2.0":"2026-06-02T14:06:45.066Z","3.3.0":"2026-07-26T07:55:49.814Z","3.4.0":"2026-09-06T21:06:46.976Z"},"bugs":{"url":"https://github.com/jonpyt/prism-code-editor/issues"},"author":{"name":"Jonas Pytte"},"license":"MIT","homepage":"https://github.com/jonpyt/prism-code-editor#readme","keywords":["code","editor","code-editor","textarea","solid","highlight","prism"],"repository":{"url":"git+https://github.com/jonpyt/prism-code-editor.git","type":"git"},"description":"Lightweight, extensible code editor component for SolidJS apps","maintainers":[{"name":"flamecaster","email":"fl4mecaster@gmail.com"}],"readme":"# Solid prism editor\r\n\r\nCode editor component for SolidJS apps\r\n\r\n[![Bundle size](https://img.shields.io/bundlephobia/minzip/solid-prism-editor?label=size)](https://bundlephobia.com/package/solid-prism-editor)\r\n[![NPM Package](https://img.shields.io/npm/v/solid-prism-editor)](https://npmjs.com/solid-prism-editor)\r\n\r\n## What?\r\n\r\nThis is a rewrite of [Prism code editor](https://github.com/jonpyt/prism-code-editor) using Solid's signals. It's a lightweight, extensible code editor optimized for fast load times with many optional extensions.\r\n\r\n## Why?\r\n\r\nI realized Prism code editor's architecture made a rewrite in SolidJS not only possible, but easy. The result is a component that behaves very similarly, while being easier to use inside SolidJS apps. If a full blown editor like CodeMirror or Monaco is overkill, this might just be the right fit.\r\n\r\n## Contents\r\n\r\n- [Installation](#installation)\r\n- [Demo](#demo)\r\n- [Examples](#examples)\r\n- [Basic usage](#basic-usage)\r\n- [Props](#props)\r\n- [Extensions](#extensions)\r\n  - [Creating your own](#creating-your-own)\r\n- [Editor API](#editor-api)\r\n  - [Properties](#properties)\r\n    - [DOM Elements](#dom-elements)\r\n  - [Methods](#methods)\r\n  - [Signals](#signals)\r\n  - [Extensions property](#extensions-property)\r\n- [Prism](#prism)\r\n- [Languages](#languages)\r\n- [Hotkeys](#hotkeys)\r\n- [Styling](#styling)\r\n  - [Themes](#themes)\r\n- [Code blocks](#code-blocks)\r\n  - [Code block props](#code-block-props)\r\n- [Performance](#performance)\r\n- [Contributing](#contributing)\r\n\r\n## Installation\r\n\r\n    npm i solid-prism-editor\r\n\r\nThere's a peer dependency on `solid-js` (obviously).\r\n\r\n## Demo\r\n\r\n[Prism code editor's demo](https://prism-code-editor.netlify.app/playground). There's no demo for this SolidJS rewrite since its behavior is nearly identical.\r\n\r\n## Examples\r\n\r\n- [Usage with SolidStart](https://stackblitz.com/edit/github-pjpawa?file=src%2Fcomponents%2FEditor.tsx,src%2Froutes%2Findex.tsx)\r\n- [Usage in forms](https://stackblitz.com/edit/solidjs-templates-mg678j?file=src%2FApp.tsx)\r\n- [Tooltip example](https://stackblitz.com/edit/solidjs-templates-jt7dk5?file=src%2FApp.tsx)\r\n- [Relative line numbers](https://stackblitz.com/edit/solidjs-templates-zpkbwb?file=src%2FApp.tsx)\r\n- [Custom cursor](https://stackblitz.com/edit/solidjs-templates-phg5gs?file=src%2FApp.tsx)\r\n\r\n## Basic usage\r\n\r\n```jsx\r\nimport { Editor } from \"solid-prism-editor\"\r\nimport { basicSetup } from \"solid-prism-editor/setups\"\r\n\r\n// Adding the JSX grammar\r\nimport \"solid-prism-editor/prism/languages/jsx\"\r\n\r\n// Adds comment toggling and auto-indenting for JSX\r\nimport \"solid-prism-editor/languages/jsx\"\r\n\r\nimport \"solid-prism-editor/layout.css\"\r\nimport \"solid-prism-editor/themes/github-dark.css\"\r\n\r\n// Required by the basic setup\r\nimport \"solid-prism-editor/search.css\"\r\nimport \"solid-prism-editor/invisibles.css\"\r\n\r\nconst MyEditor = () => (\r\n  <Editor language=\"jsx\" value=\"const foo = 'bar'\" extensions={basicSetup} />\r\n)\r\n```\r\n\r\n## Props\r\n\r\n| Name                | Type                                                                                  | Description                                                                                                                                     |\r\n| ------------------- | ------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |\r\n| `language`          | `string`                                                                              | Language used for syntax highlighting. Defaults to `text`.                                                                                      |\r\n| `tabSize`           | `number`                                                                              | Tab size used for indentation. Defaults to `2`.                                                                                                 |\r\n| `insertSpaces`      | `boolean`                                                                             | Whether the editor should insert spaces for indentation. Defaults to `true`.                                                                    |\r\n| `lineNumbers`       | `boolean`                                                                             | Whether line numbers should be shown. Defaults to `true`.                                                                                       |\r\n| `readOnly`          | `boolean`                                                                             | Whether the editor should be read only. Defaults to `false`.                                                                                    |\r\n| `wordWrap`          | `boolean`                                                                             | Whether the editor should have word wrap. Defaults to `false`.                                                                                  |\r\n| `value`             | `string`                                                                              | Initial value to display in the editor.                                                                                                         |\r\n| `rtl`               | `boolean`                                                                             | Whether the editor uses right to left directionality. Defaults to `false`. Requires extra CSS from `solid-prism-editor/rtl-layout.css` to work. |\r\n| `style`             | `Omit<JSX.CSSProperties, \"tab-size\">`                                                 | Inline styles for the container element                                                                                                         |\r\n| `class`             | `string`                                                                              | Additional classes for the container element.                                                                                                   |\r\n| `onMount`           | `(editor: PrismEditor) => void`                                                       | Callback used to access the underlying editor.                                                                                                  |\r\n| `onUpdate`          | `(value: string, editor: PrismEditor) => void`                                        | Function called after the editor updates.                                                                                                       |\r\n| `onSelectionChange` | `(selection: InputSelection, value: string, editor: PrismEditor) => void`             | Function called when the editor's selection changes.                                                                                            |\r\n| `onTokenize`        | `(tokens: TokenStream, language: string, value: string, editor: PrismEditor) => void` | Function called before the tokens are stringified to HTML.                                                                                      |\r\n| `extensions`        | `Extension[]`                                                                         | List of extensions added to the editor. More on extensions later.                                                                               |\r\n\r\n## Extensions\r\n\r\nTo keep the core light, most functionality is added by optional extensions.\r\n\r\nThere are extensions adding:\r\n\r\n- Many common commands\r\n- Bracket matching and rainbow brackets\r\n- Tag matching\r\n- Indentation guides\r\n- Search, regex search and replace\r\n- Selection match highlighting\r\n- A copy button\r\n- Read-only code folding\r\n- Custom undo/redo\r\n- And more...\r\n\r\nMany commonly used extensions are added by `basicSetup`, but if you want to fully customize which extensions are added. Below it's shown how to import most extensions.\r\n\r\n```jsx\r\nimport { Editor } from \"solid-prism-editor\"\r\nimport \"solid-prism-editor/prism/languages/jsx\"\r\nimport \"solid-prism-editor/layout.css\"\r\n// Needed for searchWidget()\r\nimport \"solid-prism-editor/search.css\"\r\n// Needed for copyButton()\r\nimport \"solid-prism-editor/copy-button.css\"\r\n\r\nimport { matchBrackets } from \"solid-prism-editor/match-brackets\"\r\nimport { highlightBracketPairs } from \"solid-prism-editor/highlight-brackets\"\r\nimport { indentGuides } from \"solid-prism-editor/guides\"\r\nimport { highlightSelectionMatches, searchWidget } from \"solid-prism-editor/search\"\r\nimport { highlightMatchingTags, matchTags } from \"solid-prism-editor/match-tags\"\r\nimport { cursorPosition } from \"solid-prism-editor/cursor\"\r\nimport { editorCommands, defaultKeymap, editHistory } from \"solid-prism-editor/commands\"\r\nimport { copyButton } from \"solid-prism-editor/copy-button\"\r\nimport { overscroll } from \"solid-prism-editor/overscroll\"\r\n\r\nconst MyEditor = () => {\r\n  return (\r\n    <Editor\r\n      language=\"jsx\"\r\n      value=\"const foo = 'bar'\"\r\n      extensions={[\r\n        matchBrackets(),\r\n        searchWidget(),\r\n        indentGuides(),\r\n        highlightBracketPairs(),\r\n        highlightSelectionMatches(),\r\n        matchTags(),\r\n        highlightMatchingTags(),\r\n        cursorPosition(),\r\n        editorCommands(defaultKeymap),\r\n        editHistory(),\r\n        copyButton(),\r\n        overscroll(),\r\n      ]}\r\n    />\r\n  )\r\n}\r\n```\r\n\r\nIf you make the extensions a signal, you can freely change which extensions are added to the editor. This makes it possible to asynchronously load most of the extensions to make your main JS bundle smaller. You can also remove extensions which currently isn't possible in Prism code editor.\r\n\r\n```jsx\r\nimport { createSignal } from \"solid-js\"\r\nimport { Editor } from \"solid-prism-editor\"\r\nimport { matchBrackets } from \"solid-prism-editor/match-brackets\"\r\nimport { indentGuides } from \"solid-prism-editor/guides\"\r\nimport { overscroll } from \"solid-prism-editor/overscroll\"\r\n\r\nimport \"solid-prism-editor/prism/languages/jsx\"\r\nimport \"solid-prism-editor/layout.css\"\r\n\r\nconst MyEditor = () => {\r\n  const [extensions, setExtensions] = createSignal([matchBrackets(), indentGuides(), overscroll()])\r\n\r\n  import(\"./extensions\").then(mod => {\r\n    setExtensions(e => e.concat(mod.extensions()))\r\n  })\r\n\r\n  return <Editor language=\"jsx\" value=\"const foo = 'bar'\" extensions={extensions()} />\r\n}\r\n```\r\n\r\n```js\r\n// extensions.ts\r\nimport { highlightBracketPairs } from \"solid-prism-editor/highlight-brackets\"\r\nimport { highlightSelectionMatches, searchWidget } from \"solid-prism-editor/search\"\r\nimport { highlightMatchingTags, matchTags } from \"solid-prism-editor/match-tags\"\r\nimport { cursorPosition } from \"solid-prism-editor/cursor\"\r\nimport { defaultCommands, editHistory } from \"solid-prism-editor/commands\"\r\nimport { copyButton } from \"solid-prism-editor/copy-button\"\r\n\r\nimport \"solid-prism-editor/search.css\"\r\nimport \"solid-prism-editor/copy-button.css\"\r\n\r\nexport const extensions = () => [\r\n  searchWidget(),\r\n  highlightBracketPairs(),\r\n  highlightSelectionMatches(),\r\n  matchTags(),\r\n  highlightMatchingTags(),\r\n  cursorPosition(),\r\n  defaultCommands(),\r\n  editHistory(),\r\n  copyButton(),\r\n]\r\n```\r\n\r\n### Creating your own\r\n\r\nIf you need to do anything more than adding a simple `onUpdate` or `onSelectionChange` callback, you should consider creating your own extension.\r\n\r\n```tsx\r\nimport { createEffect } from \"solid-js\"\r\nimport type { Extension } from \"solid-prism-editor\"\r\n\r\nexport const myExtension: Extension = (editor: PrismEditor) => {\r\n  // Selection, tokens, focused and props on the editor are all reactive.\r\n  createEffect(() => {\r\n    console.log(\"New selection: \", editor.selection())\r\n  })\r\n\r\n  createEffect(() => {\r\n    console.log(\"New tokens: \", editor.tokens())\r\n  })\r\n\r\n  createEffect(() => {\r\n    console.log(\"New focus state: \", editor.focused())\r\n  })\r\n\r\n  createEffect(() => {\r\n    console.log(\"New tab size: \", editor.props.tabSize || 2)\r\n  })\r\n\r\n  // The elements returned are added to the editor's overlays\r\n  // Keep in mind that they will get some default styles\r\n  return <div>My overlay</div>\r\n}\r\n```\r\n\r\n## Editor API\r\n\r\nThe editor object you can access with the `onMount` prop or by creating an extension has many useful properties and methods.\r\n\r\n### Properties\r\n\r\n- `value: string`: Current value of the editor.\r\n- `activeLine: number`: Line number of the line with the cursor. You can index into `editor.lines` to get the DOM node for the active line.\r\n- `inputCommandMap: Record<string, InputCommandCallback | null | undefined>`: Record mapping an input to a function called when that input is typed.\r\n- `keyCommandMap: Record<string, KeyCommandCallback | null | undefined>`: Record mapping KeyboardEvent.key to a function called when that key is pressed.\r\n- `extensions: Object`: Object storing some of the extensions added to the editor. [Read more](#extensions-property).\r\n- `props: EditorProps`: The component props passed to the editor. They are reactive like all props in SolidJS.\r\n\r\n#### DOM Elements\r\n\r\n- `container: HTMLDivElement`: This is the outermost element of the editor.\r\n- `wrapper: HTMLDivElement`: Element wrapping the lines and overlays.\r\n- `lines: HTMLCollectionOf<HTMLDivElement>`: Collection containing the overlays as the first element, followed by all code lines.\r\n- `textarea: HTMLTextAreaElement`: Underlying `textarea` in the editor.\r\n\r\n### Methods\r\n\r\n- `update(): void`: Forces the editor to update. Can be useful after modifying a grammar for example.\r\n- `getSelection(): InputSelection`: Gets the `selectionStart`, `selectionEnd` and `selectionDirection` for the `textarea`.\r\n\r\n### Signals\r\n\r\n- `focused(): boolean`: Reactive accessor for whether the `textarea` is focused. Effects depending on this signal will run during `focus` or `blur` events on the `textarea`.\r\n- `tokens(): TokenStream`: Reactive accessor for the current tokens. [Render effects](https://docs.solidjs.com/reference/secondary-primitives/create-render-effect) depending on this signal will run right before the tokens are converted to an HTML string. Normal effects run after.\r\n- `selection(): InputSelection`: Reactive accessor for the current selection. Effects depending on this signal will run after the syntax highlighting is finished or when the selection changes.\r\n\r\n### Extensions property\r\n\r\nMultiple extensions have an entry on `editor.extensions` allowing you to interact with the extension.\r\n\r\n- `matchBrackets: BracketMatcher`: Allows access to all brackets found in the editor along with which are paired together.\r\n- `matchTags: TagMatcher`: Allows access to all tags found in the editor along with which tags are paired together.\r\n- `cursor: Cursor`: Allows you to get the cursor position relative to the editor's overlays and to scroll the cursor into view.\r\n- `searchWidget: SearchWidget`: Allows you to open or close the search widget.\r\n- `history: EditHistory`: Allows you to clear the history or navigate it.\r\n- `folding: ReadOnlyCodeFolding`: Allows access to the full unfolded code and to toggle folded ranges.\r\n- `autoComplete: AutoComplete`: Allows inserting snippets and starting completion queries programmatically.\r\n\r\n## Utilities\r\n\r\nThe `solid-prism-editor/utils` entry point exports various utilities for inserting text, changing the selection, finding token elements, and more.\r\n\r\n## Prism\r\n\r\nThe Prism instance used by this library is exported from `solid-prism-editor/prism`. This allows you to add your own Prism grammars or perform syntax highlighting outside of an editor. All modules under `solid-prism-editor/prism` can run outside the browser in for example Node.js to do syntax highlighting on the server. [API docs](https://prism-code-editor.netlify.app/api/modules/prism).\r\n\r\n## Languages\r\n\r\nPrism supports syntax highlighting for hundreds of languages, but none of them are imported by default. You need to choose which languages to import. Importing `solid-prism-editor/prism/languages/javascript` for example will register the JavaScript grammar through side effects.\r\n\r\nIf you need access to many languages, you can import the following entry points:\r\n\r\n- `solid-prism-editor/prism/languages` for all languages (~180kB)\r\n- `solid-prism-editor/prism/languages/common` for [42 common languages](https://github.com/jonpyt/prism-code-editor/tree/main/package/src/prism/languages/common.js) (~30kB)\r\n\r\nThis library also supports auto-indenting, comment toggling and self-closing tags for most of these languages. For it to work, you need the `defaultCommands()` extension and to import the behavior for the language.\r\n\r\nThe easiest way is to import all languages at ~3.6kB gzipped. You can dynamically import this since it's usually not needed before the page has loaded.\r\n\r\n```javascript\r\nimport(\"solid-prism-editor/languages\")\r\n```\r\n\r\nYou can also import `solid-prism-editor/languages/common` instead to support a subset of common languages at less than 2kB gzipped.\r\n\r\nLastly, if you only need support for a few languages, you can do individual imports, for example `solid-prism-editor/languages/html`. [Read more](https://prism-code-editor.netlify.app/guides/language-specific-behavior#individual-imports).\r\n\r\n## Hotkeys\r\n\r\nTo add key bindings to an editor, use `addEditorHotkey()` inside an editor extension.\r\n\r\n```tsx\r\nimport { addEditorHotkey } from \"solid-prism-editor/commands\"\r\n\r\nconst MyHotkeyExtension: Extension = editor => {\r\n  // onUnount will remove the hotkey on unmount\r\n  onUnmount(\r\n    addEditorHotkey(keyMap, \"mod+s\", () => {\r\n      console.log(\"Saved!\")\r\n    })\r\n  )\r\n}\r\n```\r\n\r\n### Hotkeys outside editors\r\n\r\nThis library exports the primitives it uses for adding keyboard shortcuts. The following examples will show how these primitives can be wrapped for usage in SolidJS apps.\r\n\r\n```tsx\r\nimport { addHotkey, Hotkey, runHotkeys } from \"solid-prism-editor/commands\"\r\nimport { createContext, useContext, onUnmount } from \"solid-js\"\r\n\r\ntype HotkeyData = undefined\r\nconst HotkeyContext = createContext<Hotkey<HotkeyData>>()\r\n\r\nfunction App() {\r\n  const handler = (e: KeyboardEvent) => {\r\n    const target = e.target as Element\r\n\r\n    // Filter events on text fields\r\n    if (target.matches(\"input, textarea\") || target.isContentEditable) {\r\n      return\r\n    }\r\n\r\n    runHotkeys(e, keyMap, undefined)\r\n  }\r\n\r\n  // For scoped hotkeys, the handler could be added as a onKeydown\r\n  // prop to a container instead of as a global event listener.\r\n  addEventListener(\"keydown\", handler)\r\n  onUnmount(() => removeEventListener(\"keydown\", handler))\r\n\r\n  return (\r\n    <HotkeyContext.Provider value={{}}>\r\n      <MyComponent />\r\n    </HotkeyContext.Provider>\r\n  )\r\n}\r\n\r\nfunction MyComponent() {\r\n  const keyMap = useContext(HotkeyContext)\r\n\r\n  // onUnount will remove the hotkey on unmount\r\n  onUnmount(\r\n    addHotkey(keyMap, \"mod+s\", () => {\r\n      console.log(\"Saved!\")\r\n    })\r\n  )\r\n\r\n  return null\r\n}\r\n```\r\n\r\nFor more information about hotkeys, read the [hotkeys guide](https://prism-code-editor.netlify.app/guides/hotkeys/).\r\n\r\n## Styling\r\n\r\nThis library does not inject any styles onto the webpage, instead you must import them. If the default styles don't work for you, you can import your own styles instead.\r\n\r\n- `solid-prism-editor/layout.css`: layout for the editor.\r\n- `solid-prism-editor/scrollbar.css`: custom scrollbar to desktop Chrome and Safari you can color with `--pce-scrollbar`.\r\n- `solid-prism-editor/copy-button.css`: styles for the `copybutton()` extension.\r\n- `solid-prism-editor/search.css`: styles for the `searchWidget()` extension.\r\n- `solid-prism-editor/rtl-layout.css`: adds support for the `rtl` prop.\r\n- `solid-prism-editor/invisibles.css`: styles for the `showInvisibles()` extension.\r\n- `solid-prism-editor/cursor.css`: styles for the `customCursor()` extension.\r\n- `solid-prism-editor/autocomplete.css`: styles for the `autoComplete()` extension.\r\n- `solid-prism-editor/autocomplete-icons.css`: default icons for the autocompletion tooltip.\r\n- `solid-prism-editor/code-block.css`: additional styles required for [code blocks](#code-blocks).\r\n\r\nBy default, the editor's height will fit the content, so you might want to add a `height` or `max-height` to `.prism-code-editor` depending on your use case.\r\n\r\n### Themes\r\n\r\nThere are currently 14 different themes you can import, one of them being from `solid-prism-editor/themes/github-dark.css`. If none of the themes fit your website, use one of them as an example to help implement your own.\r\n\r\nYou can also dynamically import themes as a CSS string into your JavaScript. This can be used to create a theme switcher.\r\n\r\n```javascript\r\nimport { loadTheme } from \"solid-prism-editor/themes\"\r\n\r\nconst isDark = matchMedia(\"(prefers-color-scheme: dark)\").matches\r\n\r\nloadTheme(isDark ? \"github-dark\" : \"github-light\").then(themeCss => {\r\n  document.querySelector(\"style\").textContent = themeCss\r\n})\r\n\r\n```\r\n\r\nTo load your own themes with `loadTheme` or override existing themes, use `registerTheme`.\r\n\r\n```javascript\r\nimport { registerTheme } from \"solid-prism-editor/themes\"\r\n\r\n// Might look different if you're not using Vite\r\nregisterTheme(\"my-theme\", () => import(\"./my-theme.css?inline\"))\r\n```\r\n\r\n## Code blocks\r\n\r\nThis library can also create static code blocks. These support some features not supported by editors such as hover descriptions and highlighting brackets/tag-names on hover.\r\n\r\n```tsx\r\nimport {\r\n  CodeBlock,\r\n  addCopyButton,\r\n  highlightBracketPairsOnHover,\r\n  highlightTagPairsOnHover,\r\n  addHoverDescriptions,\r\n  rainbowBrackets,\r\n} from \"solid-prism-editor/code-blocks\"\r\nimport \"solid-prism-editor/layout.css\"\r\nimport \"solid-prism-editor/code-block.css\"\r\nimport \"solid-prism-editor/themes/github-dark.css\"\r\n\r\nfunction MyCodeBlock({ lang, code }: { lang: string, code: string }) {\r\n  return <CodeBlock\r\n    language={lang}\r\n    code={code}\r\n    onTokenize={rainbowBrackets()}\r\n    overlays={[\r\n      addCopyButton,\r\n      highlightBracketPairsOnHover(),\r\n      highlightTagPairsOnHover(),\r\n      addHoverDescriptions((types, language, text, element) => {\r\n        if (types.includes(\"string\")) return [\"This is a string token.\"]\r\n      }),\r\n    ]}\r\n  />\r\n}\r\n```\r\n\r\n### Code block props\r\n\r\n| Name                | Type                                                                    | Description                                                                                                                                     |\r\n| ------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |\r\n| `language`          | `string`                                                                | Language used for syntax highlighting. Defaults to `text`.                                                                                      |\r\n| `tabSize`           | `number`                                                                | Tab size used for indentation. Defaults to `2`.                                                                                                 |\r\n| `lineNumbers`       | `boolean`                                                               | Whether line numbers should be shown. Defaults to `false`.                                                                                      |\r\n| `wordWrap`          | `boolean`                                                               | Whether the code block should have word wrap. Defaults to `false`.                                                                              |\r\n| `preserveIndent`    | `boolean`                                                               | Whether or not indentation is preserved on wrapped lines. Defaults to `true` when `wordWrap` is enabled.                                        |\r\n| `guideIndents`      | `boolean`                                                               | Whether or not to display indentation guides. Does not work with `rtl` set to `true`. Defaults to `false`                                       |\r\n| `rtl`               | `boolean`                                                               | Whether the editor uses right to left directionality. Defaults to `false`. Requires extra CSS from `solid-prism-editor/rtl-layout.css` to work. |\r\n| `code`              | `string`                                                                | Code to display in the code block.                                                                                                              |\r\n| `style`             | `Omit<JSX.CSSProperties, \"tab-size\" \\| \"counter-reset\">`                | Allows adding inline styles to the container element.                                                                                           |\r\n| `class`             | `string`                                                                | Additional classes for the container element.                                                                                                   |\r\n| `onTokenize`        | `(tokens: TokenStream) => void`                                         | Callback that can be used to modify the tokens before they're stringified to HTML.                                                              |\r\n| `overlays`          | `CodeBlockOverlay[]`                                                    | Array of functions that can modify the code block or add overlays.                                                                              |\r\n\r\n## Performance\r\n\r\nManual DOM manipulation has been kept is almost every case. This rewrite therefore has very similar performance to the original.\r\n\r\n## Development\r\n\r\nTo run the development server locally, install dependencies.\r\n\r\n    pnpm install\r\n\r\nNext, you must build the prism-code-editor package.\r\n\r\n    cd ../package\r\n    pnpm install\r\n    pnpm build\r\n\r\nFinally, you can run the development server to test your changes.\r\n\r\n    cd ../solid-package\r\n    pnpm dev\r\n","readmeFilename":"README.md"}