{"_id":"yace","_rev":"14-f6fa5a3e1ea9b51d0f046e0df5ac5bfe","name":"yace","dist-tags":{"next":"1.0.0-beta.2","latest":"1.1.1"},"versions":{"0.0.1":{"name":"yace","version":"0.0.1","keywords":["text-editor","editor","code-editor"],"author":{"name":"Peter Solopov","email":"peter@solopov.dev"},"license":"MIT","_id":"yace@0.0.1","maintainers":[{"name":"petersolopov","email":"peter@solopov.dev"}],"homepage":"https://github.com/petersolopov/yace","bugs":{"url":"https://github.com/petersolopov/yace/issues"},"dist":{"shasum":"db39d9c8d5be049e830840c13285d0fa52e95c3a","tarball":"https://registry.npmjs.org/yace/-/yace-0.0.1.tgz","fileCount":14,"integrity":"sha512-xi3zOTnXCaPyjXSI/hTDwZ06x4OXtctttB53Nt4JqPi37xBzRFnt9FdQsj6qsTkgOUPct4kaBacQoZGuURwg/g==","signatures":[{"sig":"MEYCIQCUSDqiF9MMK+EmJKj11fWG981etb1bpRSuNWIQQZKQSQIhAKwDqmm1gtDmzA8zPjLCI1yh3YYiuURQ6IrcCEctCGB0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":14130,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe39ThCRA9TVsSAnZWagAAUeEP/3AdZByEtstOP4LPUlhB\naYwqBxU++5VcuOf0KaUKn0hyW1sYjoY237lsjUtwsvpgol8t0BKn7/1z6XAg\nOswvfx9gyKj0G92CoQf/an/URlfhQpK04pZsz6PbErqUb1tRQOZmVvnqlSsK\n6MK6xUIOJLNsFRROC6i8xrdVEEHSps/jJ2zhNIbnY6TzvTruGx/bfaXZ5Pkn\n2iDztGAYbDJ5Ur9+YdGxego8lUhTeiVgxdreRKF6yZ8J+KEJ6+ZNpxCjI7jY\ndUrBhOWKZ/YZ6F1oCNizb5yxevKwAigWWRU1H7gCv7QocaG00e4btXQaC3Ex\nWiObUlhQDpa/tepVQ25Fxo4+FzuSyXRYpdSQlpePEs9r7K9NLAWuBTKbZvRc\nD8GLwqoWrV3WZY05PfIz2X6+WFQXd8ev+QmKGmQNcSXOdo9uxD1x1QsNpKIv\nvaCuzWJ+nZIPapN7zMiGnyxkrz315MATXuVixaUgxtQcYRU6Hlcveqt5Jy8p\n7rgZIj2KS6+aqJNA5OLpKgpdiSnb2PC9PbgaW6gp+6OW0WeijHTzu2lmJ1UB\nh+YEd105LWnDg/vVg+iLrN+A+rGTCSukO9iKDv14Dbqk2ecwZXU2f2ytukJv\noEPHV6TNfxWApM7/Cog46of9kSPNeji73TolXkqE9rjzFMisT2aTx0Y8jNYG\nT+tA\r\n=zuJa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","module":"dist/esm/index.esm.js","gitHead":"ec05d8d5f15653622f45737cc9b7b70f311773f9","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"rm -rf ./dist && rollup -c","release":"npx standard-version","prettier:check":"prettier --check '{src,examples}/**/*'","prettier:write":"prettier --write '{src,examples}/**/*'"},"_npmUser":{"name":"petersolopov","email":"peter@solopov.dev"},"repository":{"url":"git+https://github.com/petersolopov/yace.git","type":"git"},"_npmVersion":"6.14.4","description":"tiny text editor with plugins","directories":{},"_nodeVersion":"12.16.3","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"rollup":"^2.14.0","prettier":"^2.0.5","@rollup/plugin-buble":"^0.21.3","rollup-plugin-terser":"^6.1.0","rollup-plugin-multi-input":"^1.1.1"},"_npmOperationalInternal":{"tmp":"tmp/yace_0.0.1_1591727328626_0.5703885936491597","host":"s3://npm-registry-packages"}},"0.0.2":{"name":"yace","version":"0.0.2","keywords":["text-editor","editor","code-editor"],"author":{"name":"Peter Solopov","email":"peter@solopov.dev"},"license":"MIT","_id":"yace@0.0.2","maintainers":[{"name":"petersolopov","email":"peter@solopov.dev"}],"homepage":"https://github.com/petersolopov/yace","bugs":{"url":"https://github.com/petersolopov/yace/issues"},"dist":{"shasum":"12768410e6a1646818acb409de6d3f8ef3e37c4f","tarball":"https://registry.npmjs.org/yace/-/yace-0.0.2.tgz","fileCount":14,"integrity":"sha512-3t0tkMNOhPXPwcNmQuRI5ocQI1jl5l8RivfmU45EScJg2LCBhPDVT+DTlNYA456/u6OjAuhnS6E0QLZrW6l+uw==","signatures":[{"sig":"MEQCIBzzulCTALaGtVVReRlspmUqUpcpq5ZzFImcXNkwTeLXAiBrRhSoBjO8wz3iqXuXXWX8Ib18FSE9GtGn1df0YRu+MA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":19355,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe5hTnCRA9TVsSAnZWagAALHoP/2XhKWPmohM+IHaenHTe\nMSFE5GlEdYVsrDsD5Eq6sy91LX8w/3LdRgif1jC3N+sjs6rp7FDqnSClMBXz\nAJ3LPy4YVSbVhinM78X0PKolbEXI9afjBQ1fX1wuLrKzrrsFMFobHeaPKJt4\nRETf0WzMllg0ms/FylOFPSoIJ9IsOA53+Pfy7E+iMSeyEnSyPtbJmeYNvvKD\nZ0O9D1edXUOZYB1ijUt2hZZVfN2ZWJt3gPU4KthQeaNAmPytNXiMPjsNTkBz\nVEPI7wMi4hgAHSjLX0G4exB+y4wSWxdcy/HOQsU9KyvSXDTeb73cBJue+R3P\nzVbkPsIzcFNsCohMlCMSgqcyf84UfJBF7TIQ1ubrY93NoONDlKXM8KVBNQfO\n8P+EvkNEmR8gVeds8+4ziB6sU1R/3bchu1dOZJpTB9NU5DlwcjGUmYy3C13g\nAgKK/oIoMUqmugCB4zyAM5qSp3iMnsBtVIqSspbFGmMrY1knYAAkhomeBjwU\nXnwldqidR8f1G+lHllecRs4L+UgxaxGNnp6igpApVVjdqR7e1hzwDuhtsQ0e\n0Ql7dGK4eTf0/guQ+utz266+qXZdn8gBWK+5OCBv3rDHceF7WN9HYisE5cm3\nBxL5KwnJiJt6OWAr93jhQjJOddq7TKm4fabSybwCI42CJtEFMAqAO9vgNHFy\n9wY0\r\n=WFb7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","module":"dist/esm/index.esm.js","gitHead":"ec91cdb93218e1fbcfb1eec0ab9b7464af4e239e","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"rm -rf ./dist && rollup -c","release":"npx standard-version","prettier:check":"prettier --check '{src,examples}/**/*'","prettier:write":"prettier --write '{src,examples}/**/*'"},"_npmUser":{"name":"petersolopov","email":"peter@solopov.dev"},"repository":{"url":"git+https://github.com/petersolopov/yace.git","type":"git"},"_npmVersion":"6.14.4","description":"tiny text editor with plugins","directories":{},"_nodeVersion":"12.18.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"rollup":"^2.14.0","prettier":"^2.0.5","@rollup/plugin-buble":"^0.21.3","rollup-plugin-terser":"^6.1.0","rollup-plugin-multi-input":"^1.1.1"},"_npmOperationalInternal":{"tmp":"tmp/yace_0.0.2_1592136935044_0.7728176138684697","host":"s3://npm-registry-packages"}},"0.0.3":{"name":"yace","version":"0.0.3","keywords":["text-editor","editor","code-editor"],"author":{"name":"Peter Solopov","email":"peter@solopov.dev"},"license":"MIT","_id":"yace@0.0.3","maintainers":[{"name":"petersolopov","email":"peter@solopov.dev"}],"homepage":"https://github.com/petersolopov/yace","bugs":{"url":"https://github.com/petersolopov/yace/issues"},"dist":{"shasum":"029ec5d2d1fbc224a1f3c6ec4bcde70be0ad35fe","tarball":"https://registry.npmjs.org/yace/-/yace-0.0.3.tgz","fileCount":14,"integrity":"sha512-udB6WD28LNCErfs/84JS7TP0L243+dTRAayZlU1ZBV6GUus0iwsIx/O413tg4CqqFZh7uZ9NFWbrggA3r2WY+Q==","signatures":[{"sig":"MEUCIB3610Fk7hVwog8jm9/DUG2ucFRFB4LTsd+CMFgga6n0AiEAmzmGk8B0ZLidRXmUO2adqUkTidQJsOKh2gb8N2f7uZo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":19333,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe5kfNCRA9TVsSAnZWagAA+6kQAJVYahIPpGXe3YA/O/Mq\nzwkZ8UC751uxghPMpOlUl1yslSXtcZJN2zPXWsNvcjdwlYC8RmCnbuj4wQhV\nXdSwjcx4PhkmvGEu1n9nrdtzrO/qwz87lYvJ7cVm5B7nr8+NW5xAtfZCnVq6\nWwyo+eTJ5RvjZEKPAkC+qhqcT6TW2e3N2OJhJwB2MUu11kIPmdpgZjvbdVAs\n2LxKnM7EET8jhGGezjC520mFlqvP8FxtzcA8abCADxHM/4UD38/VQoTBawFI\nmmEymY+ZquWq0ewtXFnDAirqZK6tVvd8MgiG0t6siRjcWxsyBRgDyu+sUQAw\nyE8Q9yXWBDm2DY04pmIpHHN3cYqSgHqD+Y9uW+eT/BIw7etd8yTux/a2p/HH\nGnMTzwtYIGxosjgwfE3VAvJZ1MTCpaoPKKmH4cpL5bJ3545iPDSXqRLWb56j\nZSCId9jKUk7cn2CarV+az9AxHMUNRICI68hTCwBPli0D24fJm6gNnlIfHV+I\np7behq48aIpHEn28vi3Q8mGlQt0av//z4EOU7y7TZo/mXEnyOOtezCNSr11N\nq+VXzbyPdnATWOLMh8jr1Nz5MhDLC9LdZQELJUwhbrZLvQHQSA4Hd5AnwBld\n7SCkdE/tjsaL5emFmFlEiMnyEac1neanpGzvQWdHII4RbTRHPaO1uZibhyW1\neaqy\r\n=bVFS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","module":"dist/esm/index.esm.js","gitHead":"db8b770150941c796a0a7cd3fcf6a9ace29e5d57","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"rm -rf ./dist && rollup -c","release":"npx standard-version","prettier:check":"prettier --check '{src,examples}/**/*'","prettier:write":"prettier --write '{src,examples}/**/*'"},"_npmUser":{"name":"petersolopov","email":"peter@solopov.dev"},"repository":{"url":"git+https://github.com/petersolopov/yace.git","type":"git"},"_npmVersion":"6.14.4","description":"tiny text editor with plugins","directories":{},"_nodeVersion":"12.18.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"rollup":"^2.14.0","prettier":"^2.0.5","@rollup/plugin-buble":"^0.21.3","rollup-plugin-terser":"^6.1.0","rollup-plugin-multi-input":"^1.1.1"},"_npmOperationalInternal":{"tmp":"tmp/yace_0.0.3_1592149965038_0.12191588760031391","host":"s3://npm-registry-packages"}},"0.0.4":{"name":"yace","version":"0.0.4","keywords":["text-editor","editor","code-editor"],"author":{"name":"Peter Solopov","email":"peter@solopov.dev"},"license":"MIT","_id":"yace@0.0.4","maintainers":[{"name":"petersolopov","email":"peter@solopov.dev"}],"homepage":"https://github.com/petersolopov/yace","bugs":{"url":"https://github.com/petersolopov/yace/issues"},"dist":{"shasum":"a79f94cfa355c44e8bbf92936e82f77f23abfdf3","tarball":"https://registry.npmjs.org/yace/-/yace-0.0.4.tgz","fileCount":14,"integrity":"sha512-ylgfrfKcXtNOped0V42klSy+aepHvpCG1f6lsut8KyG63AyqRJx1fQldW+CTRrifojZMzPKw/CbvenByRqJqQw==","signatures":[{"sig":"MEUCIAf8XrmOLXu6N+Hc8/cvQUcuLMAySNcJ+4b3+tws1ZhXAiEA7fGaMkG20XTQqDvmDtiznNArKfEoDZzhlT0Ks/UTX3s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":19332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe5ktsCRA9TVsSAnZWagAAqcwP/11xjYCDesB6nsvxoDGX\ngtaXCPAMK6x1juwn9y99bLJ3Kmz7PWORFjGVteBZEYf+EmUDN8b8y9FjutoV\nnLBOsU+zaUbxjmcvu19vLwushGdHu2Yh5MAVv/QFSU037kSoETNFj1Q5Hqtj\nrS37lS+4QShtVyZGT5RrncqXPlQ4jUIR1OJZkazI3HateTalyP42Xl+1SyzL\n/k9DGoZdRhZAyBlviD2/OPgJapmXE4HEAe2RMtYWxaLw13+zixkIVWCjmwId\ne79PM499evuqK4Kbq0D2Vn729TEz1iEpVbIVPPtg8RNKiTqzC11V95vhroID\n9quu4JiMVkJA13dRWW+ppq3u1fkzSHghiVUzumk6wks/Oh7iKadeNJUxasDl\nO0gTiwsN4SWQLFgaOjwI0hdFq2l3bU/7T5b1AEq9BTbdYXfihFv3zEndmwH5\nJtV0ojidT8RikCfkWkzfkjkYnTPLiv8BxjBHWXzL8rJAQw/x9YC28YqkAuoH\nIY+dp/5Po6+CAbQJlCh9uisOoSLmbAgvRdA9Nktd2iqq2buY4LZZH3DHn+kD\nV9EAyWIrSlI0KHJOdF93DgV9RJYpGNCKuOnoJnvmLeKsRAjVpJWBxMATXY9f\nWrtxUigsmOOIM/s0AA6uUmFUxFvWpUQFHI7WHOiPdr5iAE+IuEHWxptTjwrw\n/LZR\r\n=eP9R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","module":"dist/esm/index.esm.js","gitHead":"859be3ea69a57885f4112cc35bb40fcd6bc8cdb9","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"rm -rf ./dist && rollup -c","release":"npx standard-version","prettier:check":"prettier --check '{src,examples}/**/*'","prettier:write":"prettier --write '{src,examples}/**/*'"},"_npmUser":{"name":"petersolopov","email":"peter@solopov.dev"},"repository":{"url":"git+https://github.com/petersolopov/yace.git","type":"git"},"_npmVersion":"6.14.4","description":"tiny text editor with plugins","directories":{},"_nodeVersion":"12.18.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"rollup":"^2.14.0","prettier":"^2.0.5","@rollup/plugin-buble":"^0.21.3","rollup-plugin-terser":"^6.1.0","rollup-plugin-multi-input":"^1.1.1"},"_npmOperationalInternal":{"tmp":"tmp/yace_0.0.4_1592150892337_0.1439502361520575","host":"s3://npm-registry-packages"}},"0.0.5":{"name":"yace","version":"0.0.5","keywords":["text-editor","editor","code-editor"],"author":{"name":"Peter Solopov","email":"peter@solopov.dev"},"license":"MIT","_id":"yace@0.0.5","maintainers":[{"name":"petersolopov","email":"peter@solopov.dev"}],"homepage":"https://github.com/petersolopov/yace","bugs":{"url":"https://github.com/petersolopov/yace/issues"},"dist":{"shasum":"597c984cf456b2eb9691dca84701b16acfe43c14","tarball":"https://registry.npmjs.org/yace/-/yace-0.0.5.tgz","fileCount":16,"integrity":"sha512-BWkm1YBWJ7APm1qQlt0EL5MSCDffy+GQZDNDLyWXvfT0OlOJkYStLKBgNyNLQos/BHV27oyh3oAjo8tXQJNsIQ==","signatures":[{"sig":"MEQCIDQ8VDFI9glIYfYA6knjEt7xWam+QzEIsUc8Rsa1EzpKAiAWkjOC9Cri7qPvdBWAtDjjkR1ctvwA3+WQ9uRjbjFGhg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21334,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7gC7CRA9TVsSAnZWagAAH/IQAI0mEzqrOsY9f0oP2lOZ\naA8o9j2alMjtUu0ty5CzP8Am0xJQ7DHvB7XRHEjrW8WYn3fKKmIwX36WqZjR\na/tMFaQV+8mjcM9zA7RqEkKb3nUfBF3yRkOa6uo+CiKgNtrmVwBP2Dd8yhwG\nq0ZazUk3GcOxkh6GdJHIXRO2jT7jQgWsd9YMvKQdtejtwnHJFpUIepMgJH+M\nIVP10tcYq0grHDkWjTs36z2x65ssgQ1rN2l3vCD3wcDL//G58cDtMST5p1M0\nLAO0bhHK2Bmh66V0n8RpGqeEt1xsNo8pBYazM5NKGXQjtZyjEUc6iYGe2lSq\nyf7oIDrbhfMipCbNM4kdVeZkc9tHfF4PlrUSJGxkDrbDmXiAF4Wf/POzS2sK\nwEm48ZbH1RW3rk0SozIfdgiBF0pq1HZRgYUVU+dYdntnj+CTHCthcBiaX3Qd\neH5104nUGyLZzgY45yiErhZmzyoyrpJcdSeIy5uP1mInmpjpMH5mpxSx1UDs\nnwPVo+kp9lH5Jq+dmMiTpu+TXVmxP+qdJsoNsvKNUe/wd4LvE5C1yIzRRR9J\n3JXKnRg7XrMiUqddJmMdvYaR0lciKlprBg74lX1f/5RgX8/F4LD3Q9zHKWZT\nmNpKK2Qdv58ZXjjtg12T+CAfP97CsesNkiefjyuaBuxeHs01DHvvcmBbd8U3\n8bVb\r\n=3Slu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","module":"dist/esm/index.esm.js","gitHead":"e3b4be46c65bfe2f0b0b508c3003dd6b9adecf73","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"rm -rf ./dist && rollup -c","release":"npx standard-version","prettier:check":"prettier --check '{src,examples}/**/*'","prettier:write":"prettier --write '{src,examples}/**/*'"},"_npmUser":{"name":"petersolopov","email":"peter@solopov.dev"},"repository":{"url":"git+https://github.com/petersolopov/yace.git","type":"git"},"_npmVersion":"6.14.4","description":"tiny text editor with plugins","directories":{},"_nodeVersion":"12.18.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"rollup":"^2.14.0","prettier":"^2.0.5","@rollup/plugin-buble":"^0.21.3","rollup-plugin-terser":"^6.1.0","rollup-plugin-multi-input":"^1.1.1"},"_npmOperationalInternal":{"tmp":"tmp/yace_0.0.5_1592656058430_0.37265448709811566","host":"s3://npm-registry-packages"}},"0.0.6":{"name":"yace","version":"0.0.6","keywords":["text-editor","editor","code-editor"],"author":{"name":"Peter Solopov","email":"peter@solopov.dev"},"license":"MIT","_id":"yace@0.0.6","maintainers":[{"name":"petersolopov","email":"peter@solopov.dev"}],"homepage":"https://github.com/petersolopov/yace","bugs":{"url":"https://github.com/petersolopov/yace/issues"},"dist":{"shasum":"289ca98e320c7416e3868fd1afeb7181140d26a2","tarball":"https://registry.npmjs.org/yace/-/yace-0.0.6.tgz","fileCount":16,"integrity":"sha512-QuIjFzdVwyaMFxypmKS3AlUBW8A8hYVzCc095pazTrZDFnEwHhj63y4s1hCTo/UIOHqv1sgDKqCJMQ0gX+ptkA==","signatures":[{"sig":"MEUCIQDKNEcOHzxRQsA1e/ZjZzPM2B8JA1oFwmeoerXCrG43cgIgcyRTMCVHgAFdX4GtzOKU0Pf3D4zUhyvSfaEqzHEVCTA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22016,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfSlq5CRA9TVsSAnZWagAABsEQAI4SvgeLCjoQL9c0gkGC\ncGkjaLEccJsAviyu5nqy9WETAaaV7+aXGR/1zGFfBhDy7m4wE54pEAaino63\n0BvccT4XDhlR09Wbi2iqEt8OUJQxpDC7Io4DtTv2wA47tHZcesgQbIJC6KOx\nVmlN7ygRtt7dfGOonNhaZRZM7p2ga++L04yZAI964gemecRx0zteMeHvsfnI\nae16X5h5J2cpMZmWDMMd6BSXfVcbQ/NfQpUz1IzUtxLRYz/KhsLL3PPiYQ8j\n4/tHhTxgRYF8L4OXlcvvoxN1THzno5S2v1lKsTd9XGq/xjGd4nQIhWWJkrrX\npW0/l9CxmuEXnr5JCNrzlGEPHkbPmQlOMf7dhXIB53r5xsdo+Q2QQfrIizDr\nNS90KeAXN5QkSgGBx4uOOFHM8CWxTO6oKv1kOHkAoKy/sTX1D+kRgLq38TTL\nk03qDC4Ovd8fZGMYyGpXsFlYk81ONLWl/0/jsBIpCoWJyC9amV3R1NwvxcaO\nhO1224zWJQebQguN+Fdd/1U+KugHLiDr25vWOgVT0V/3EexC/xuMW2R1JCWe\npboTS9bjX5lZFAxlYNkn63AbfwX6kcPgAVemT2GBb1T6hBmiNuN/lS7bid/P\n4J02KKHGLeIDen4dDCZuUOqL0NB0H7RmBMQ+7RZ758faIfqx8k7xQaU3zzcS\nHQ6O\r\n=UJPZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","type":"module","module":"dist/esm/index.esm.js","gitHead":"d7d54c7c4e5e4ec6054531ce10ccb2166234079f","scripts":{"test":"c8 node test/test.js --lines 99 --functions 99 --branches 95","build":"rm -rf ./dist && rollup -c","report":"c8 report --reporter=text-lcov > coverage.txt ","release":"npx standard-version","prettier:check":"prettier --check '{src,examples,test}/**/*'","prettier:write":"prettier --write '{src,examples,test}/**/*'"},"_npmUser":{"name":"petersolopov","email":"peter@solopov.dev"},"repository":{"url":"git+https://github.com/petersolopov/yace.git","type":"git"},"_npmVersion":"6.14.6","description":"tiny text editor with plugins","directories":{},"_nodeVersion":"12.18.3","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.2.0","zora":"^4.0.0","undom":"^0.4.0","rollup":"^2.14.0","prettier":"^2.0.5","@rollup/plugin-buble":"^0.21.3","rollup-plugin-terser":"^6.1.0","rollup-plugin-multi-input":"^1.1.1"},"_npmOperationalInternal":{"tmp":"tmp/yace_0.0.6_1598708409185_0.05446232705847742","host":"s3://npm-registry-packages"}},"0.0.7":{"name":"yace","version":"0.0.7","keywords":["text-editor","editor","code-editor"],"author":{"name":"Peter Solopov","email":"peter@solopov.dev"},"license":"MIT","_id":"yace@0.0.7","maintainers":[{"name":"petersolopov","email":"peter@solopov.dev"}],"homepage":"https://github.com/petersolopov/yace","bugs":{"url":"https://github.com/petersolopov/yace/issues"},"dist":{"shasum":"f6a88cf488266b164e6fde3f49822a6e99364a50","tarball":"https://registry.npmjs.org/yace/-/yace-0.0.7.tgz","fileCount":15,"integrity":"sha512-PFfr2XrdjfkMtfUDFJi57YCRqxzVL+EWO798JfcOlXAyWTTjOe1ctUuJD0iJPtiQ4HVZyFiLgXR7lTMbYD9EkA==","signatures":[{"sig":"MEUCIQDf4g2gxnHFDRF+oEafxlB8UZnYmJUOzFuqfLW1HAvwfAIgcQF1a4/MmeYZf2fjU7Jqr+3iIufSqdtWhqBblukhulc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/yace@0.0.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":19544},"main":"dist/index.js","type":"module","module":"dist/esm/index.esm.js","gitHead":"a49eb0c455bfb8cd345d21a3279a1ac912ac7b27","scripts":{"test":"c8 node test/test.js --lines 99 --functions 99 --branches 95","build":"rm -rf ./dist && rollup -c","report":"c8 report --reporter=text-lcov > coverage.txt ","release":"npx standard-version","prettier:check":"prettier --check '{src,examples,test}/**/*'","prettier:write":"prettier --write '{src,examples,test}/**/*'"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fe5c55cb-ee79-4656-8d96-75c36bbf5704"}},"repository":{"url":"git+https://github.com/petersolopov/yace.git","type":"git"},"_npmVersion":"11.18.0","description":"tiny text editor with plugins","directories":{},"_nodeVersion":"24.18.0","dependencies":{},"_hasShrinkwrap":false,"devDependencies":{"c8":"^7.2.0","zora":"^4.0.0","undom":"^0.4.0","rollup":"^2.14.0","prettier":"^2.0.5","@rollup/plugin-buble":"^0.21.3","rollup-plugin-terser":"^6.1.0","rollup-plugin-multi-input":"^1.1.1"},"_npmOperationalInternal":{"tmp":"tmp/yace_0.0.7_1782934752276_0.6220338483999808","host":"s3://npm-registry-packages-npm-production"}},"0.0.8":{"name":"yace","version":"0.0.8","keywords":["text-editor","editor","code-editor","textarea","syntax-highlighting","lightweight","zero-dependencies","prism","react","framework-agnostic"],"author":{"name":"Peter Solopov","email":"peter@solopov.dev"},"license":"MIT","_id":"yace@0.0.8","maintainers":[{"name":"petersolopov","email":"peter@solopov.dev"}],"homepage":"https://github.com/petersolopov/yace","bugs":{"url":"https://github.com/petersolopov/yace/issues"},"dist":{"shasum":"4ae979de6dfe22eea8a3106c1448a1e4fffb3183","tarball":"https://registry.npmjs.org/yace/-/yace-0.0.8.tgz","fileCount":47,"integrity":"sha512-Z7MJkjM9be4UdTGKhTcTZDqyZ0Sgd3A3F7r28BN3ULGfez9C50Tv4aGipEkr//LPs3Qjdq12b/piv1SxhMwFzA==","signatures":[{"sig":"MEUCIQDUu5jevER/jI1DVGJLB0bi0qd+gkw0WzYSnXIZbshTZwIgUzsO1Z4Xut54JCbEBsCHxyDkMVmX0AZd++6HllQ+hik=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/yace@0.0.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":57720},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./plugins/*":{"import":{"types":"./dist/plugins/*.d.ts","default":"./dist/plugins/*.js"},"require":{"types":"./dist/plugins/*.d.cts","default":"./dist/plugins/*.cjs"}},"./package.json":"./package.json","./highlighters/basic":{"import":{"types":"./dist/highlighters/basic.d.ts","default":"./dist/highlighters/basic.js"},"require":{"types":"./dist/highlighters/basic.d.cts","default":"./dist/highlighters/basic.cjs"}},"./highlighters/shimmer":{"import":{"types":"./dist/highlighters/shimmer.d.ts","default":"./dist/highlighters/shimmer.js"},"require":{"types":"./dist/highlighters/shimmer.d.cts","default":"./dist/highlighters/shimmer.cjs"}},"./highlighters/sliceGlitch":{"import":{"types":"./dist/highlighters/sliceGlitch.d.ts","default":"./dist/highlighters/sliceGlitch.js"},"require":{"types":"./dist/highlighters/sliceGlitch.d.cts","default":"./dist/highlighters/sliceGlitch.cjs"}},"./highlighters/jitterGlitch":{"import":{"types":"./dist/highlighters/jitterGlitch.d.ts","default":"./dist/highlighters/jitterGlitch.js"},"require":{"types":"./dist/highlighters/jitterGlitch.d.cts","default":"./dist/highlighters/jitterGlitch.cjs"}}},"gitHead":"bbf70066e62cdb980a7b2e61ca7daae290d5fe48","scripts":{"dev":"node site/server.js","attw":"npm run build && attw --pack . --profile node16 --ignore-rules false-export-default","test":"c8 --all --include 'src/**/*.ts' --check-coverage --lines 100 --functions 100 --branches 99 node --test test/test.js test/highlighters.test.js","build":"rm -rf ./dist && rollup -c && tsc -p tsconfig.build.json && node scripts/build-dts.js","report":"c8 report --all --include 'src/**/*.ts' --reporter=text-lcov > coverage.txt","release":"npx standard-version","test:e2e":"playwright test","typecheck":"tsc --noEmit","prettier:check":"prettier --check '{src,test,e2e,scripts}/**/*' 'site/**/*.{html,css,js,jsx}' playwright.config.js","prettier:write":"prettier --write '{src,test,e2e,scripts}/**/*' 'site/**/*.{html,css,js,jsx}' playwright.config.js","test:e2e:headed":"playwright test --headed"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fe5c55cb-ee79-4656-8d96-75c36bbf5704"}},"repository":{"url":"git+https://github.com/petersolopov/yace.git","type":"git"},"_npmVersion":"11.18.0","description":"tiny text editor with plugins","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"c8":"^11.0.0","tslib":"^2.8.1","undom":"^0.4.0","rollup":"^4.62.2","prettier":"^3.9.4","typescript":"^6.0.3","@playwright/test":"^1.61.1","@arethetypeswrong/cli":"^0.18.4","@rollup/plugin-terser":"^1.0.0","@rollup/plugin-typescript":"^12.3.0"},"_npmOperationalInternal":{"tmp":"tmp/yace_0.0.8_1783448024749_0.18358804803278894","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.1":{"name":"yace","version":"1.0.0-beta.1","keywords":["text-editor","editor","code-editor","textarea","syntax-highlighting","lightweight","zero-dependencies","prism","react","framework-agnostic"],"author":{"name":"Peter Solopov","email":"peter@solopov.dev"},"license":"MIT","_id":"yace@1.0.0-beta.1","maintainers":[{"name":"petersolopov","email":"peter@solopov.dev"}],"homepage":"https://github.com/petersolopov/yace","bugs":{"url":"https://github.com/petersolopov/yace/issues"},"dist":{"shasum":"a9d4c6f1716af62a0f42ecb30e14662380a4fa46","tarball":"https://registry.npmjs.org/yace/-/yace-1.0.0-beta.1.tgz","fileCount":28,"integrity":"sha512-EfNrlJuzQfFRtJHO4BcAvjV5Y7uh/UyUiQjnFCZKSyS58zyfxNGQLOHkcqnQP3s36WHZmerd9iQzpIrggk9XfA==","signatures":[{"sig":"MEQCIHEL//zmEG30kj9sc6aPcTpB47sDf3u1B53+MdIi3VT2AiBhNN95dsGTQf8JYVhmJy7vRsT+4o2FszCo50+w0skSVA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/yace@1.0.0-beta.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":33072},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugins":{"types":"./dist/plugins/index.d.ts","default":"./dist/plugins/index.js"},"./plugins/*":{"types":"./dist/plugins/*.d.ts","default":"./dist/plugins/*.js"},"./highlighters":{"types":"./dist/highlighters/index.d.ts","default":"./dist/highlighters/index.js"},"./package.json":"./package.json","./highlighters/basic":{"types":"./dist/highlighters/basic.d.ts","default":"./dist/highlighters/basic.js"},"./highlighters/shimmer":{"types":"./dist/highlighters/shimmer.d.ts","default":"./dist/highlighters/shimmer.js"},"./highlighters/sliceGlitch":{"types":"./dist/highlighters/sliceGlitch.d.ts","default":"./dist/highlighters/sliceGlitch.js"}},"gitHead":"5b8b6b3c346d6486302a957942af9d56d6d3bbfb","scripts":{"dev":"node site/server.js","attw":"npm run build && attw --pack . --profile esm-only","test":"c8 --all --include 'src/**/*.ts' --check-coverage --lines 100 --functions 100 --branches 99 node --test test/test.js test/highlighters.test.js","build":"rm -rf ./dist && rollup -c && tsc -p tsconfig.build.json && node scripts/build-dts.js","report":"c8 report --all --include 'src/**/*.ts' --reporter=text-lcov > coverage.txt","release":"commit-and-tag-version","test:e2e":"playwright test","typecheck":"tsc --noEmit","prettier:check":"prettier --check '{src,test,e2e,scripts}/**/*' 'site/**/*.{html,css,js,jsx}' playwright.config.js","prettier:write":"prettier --write '{src,test,e2e,scripts}/**/*' 'site/**/*.{html,css,js,jsx}' playwright.config.js","test:e2e:headed":"playwright test --headed"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fe5c55cb-ee79-4656-8d96-75c36bbf5704"}},"repository":{"url":"git+https://github.com/petersolopov/yace.git","type":"git"},"_npmVersion":"11.16.0","description":"tiny text editor with plugins","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"c8":"^11.0.0","tslib":"^2.8.1","undom":"^0.4.0","rollup":"^4.62.2","prettier":"^3.9.4","typescript":"^6.0.3","@playwright/test":"^1.61.1","@arethetypeswrong/cli":"^0.18.4","@rollup/plugin-terser":"^1.0.0","commit-and-tag-version":"^12.7.3","@rollup/plugin-typescript":"^12.3.0"},"_npmOperationalInternal":{"tmp":"tmp/yace_1.0.0-beta.1_1783545925505_0.10710307445294287","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.2":{"name":"yace","version":"1.0.0-beta.2","keywords":["text-editor","editor","code-editor","textarea","syntax-highlighting","lightweight","zero-dependencies","prism","react","framework-agnostic"],"author":{"name":"Peter Solopov","email":"peter@solopov.dev"},"license":"MIT","_id":"yace@1.0.0-beta.2","maintainers":[{"name":"petersolopov","email":"peter@solopov.dev"}],"homepage":"https://github.com/petersolopov/yace","bugs":{"url":"https://github.com/petersolopov/yace/issues"},"dist":{"shasum":"59d279f14907250702fba6cbe7959169530436d8","tarball":"https://registry.npmjs.org/yace/-/yace-1.0.0-beta.2.tgz","fileCount":28,"integrity":"sha512-3VKw1aYwXoEU4Qfxf/D7pk5A3pm5HWMw3b56kWBRJXpe56oeHWkcHhqVuMu63NkJ/OyETiVtIo638V5gDASjnw==","signatures":[{"sig":"MEUCIQDb23oCPEqJuUCbJKjoINBavnSnHtxIzFaCWV/oyAYXdwIgKbsh9bzZOL9EKKLfmm+rOhOdRyR4pl+syELLb1fIqAY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/yace@1.0.0-beta.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":33673},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugins":{"types":"./dist/plugins/index.d.ts","default":"./dist/plugins/index.js"},"./plugins/*":{"types":"./dist/plugins/*.d.ts","default":"./dist/plugins/*.js"},"./highlighters":{"types":"./dist/highlighters/index.d.ts","default":"./dist/highlighters/index.js"},"./package.json":"./package.json","./highlighters/code":{"types":"./dist/highlighters/code.d.ts","default":"./dist/highlighters/code.js"},"./highlighters/shimmer":{"types":"./dist/highlighters/shimmer.d.ts","default":"./dist/highlighters/shimmer.js"},"./highlighters/sliceGlitch":{"types":"./dist/highlighters/sliceGlitch.d.ts","default":"./dist/highlighters/sliceGlitch.js"}},"gitHead":"b5aa3646afc452d78b0d5bd458289d44ae3c1bac","scripts":{"dev":"node site/server.js","attw":"npm run build && attw --pack . --profile esm-only","size":"node scripts/check-size.js","test":"c8 --all --include 'src/**/*.ts' --check-coverage --lines 100 --functions 100 --branches 99 node --test test/test.js test/highlighters.test.js","build":"rm -rf ./dist && rollup -c && tsc -p tsconfig.build.json && node scripts/build-dts.js && node scripts/check-size.js","report":"c8 report --all --include 'src/**/*.ts' --reporter=text-lcov > coverage.txt","release":"commit-and-tag-version","test:e2e":"playwright test","typecheck":"tsc --noEmit","prettier:check":"prettier --check '{src,test,e2e,scripts}/**/*' 'site/**/*.{html,css,js,jsx}' playwright.config.js","prettier:write":"prettier --write '{src,test,e2e,scripts}/**/*' 'site/**/*.{html,css,js,jsx}' playwright.config.js","test:e2e:headed":"playwright test --headed"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fe5c55cb-ee79-4656-8d96-75c36bbf5704"}},"repository":{"url":"git+https://github.com/petersolopov/yace.git","type":"git"},"_npmVersion":"11.16.0","description":"tiny text editor with plugins","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"c8":"^11.0.0","tslib":"^2.8.1","undom":"^0.4.0","rollup":"^4.62.2","prettier":"^3.9.4","typescript":"^6.0.3","@playwright/test":"^1.61.1","@arethetypeswrong/cli":"^0.18.4","@rollup/plugin-terser":"^1.0.0","commit-and-tag-version":"^12.7.3","@rollup/plugin-typescript":"^12.3.0"},"_npmOperationalInternal":{"tmp":"tmp/yace_1.0.0-beta.2_1783677870399_0.7541190771918858","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"yace","version":"1.0.0","keywords":["text-editor","editor","code-editor","textarea","syntax-highlighting","lightweight","zero-dependencies","prism","react","framework-agnostic"],"author":{"name":"Peter Solopov","email":"peter@solopov.dev"},"license":"MIT","_id":"yace@1.0.0","maintainers":[{"name":"petersolopov","email":"peter@solopov.dev"}],"homepage":"https://github.com/petersolopov/yace","bugs":{"url":"https://github.com/petersolopov/yace/issues"},"dist":{"shasum":"636e1d2624b9546bee77cf515933085d84b0a740","tarball":"https://registry.npmjs.org/yace/-/yace-1.0.0.tgz","fileCount":28,"integrity":"sha512-iiTjsf8BpFTI1TcHdfY8B8SM1S2sXJzM+oAmKBicmPaCV9XCri+ZCgEC7U+59vGtk4T8JYhlEa1EM4yplSyhWg==","signatures":[{"sig":"MEYCIQCm++rJe6lZj8swwHwldDDBMSa7QNkx6MkKlwb/jG5CXwIhAKJgWxy4ywyLYhVfM7/zot+20aOx/YVO3NYEKi4rP/m1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/yace@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":34617},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugins":{"types":"./dist/plugins/index.d.ts","default":"./dist/plugins/index.js"},"./plugins/*":{"types":"./dist/plugins/*.d.ts","default":"./dist/plugins/*.js"},"./highlighters":{"types":"./dist/highlighters/index.d.ts","default":"./dist/highlighters/index.js"},"./package.json":"./package.json","./highlighters/code":{"types":"./dist/highlighters/code.d.ts","default":"./dist/highlighters/code.js"},"./highlighters/shimmer":{"types":"./dist/highlighters/shimmer.d.ts","default":"./dist/highlighters/shimmer.js"},"./highlighters/sliceGlitch":{"types":"./dist/highlighters/sliceGlitch.d.ts","default":"./dist/highlighters/sliceGlitch.js"}},"gitHead":"79d77cc5425ac0e447562dfdd44bd7b1a3116fd8","scripts":{"dev":"node site/server.js","attw":"npm run build && attw --pack . --profile esm-only","size":"node scripts/check-size.js","test":"c8 --all --include 'src/**/*.ts' --check-coverage --lines 100 --functions 100 --branches 99 node --test test/test.js test/highlighters.test.js","build":"rm -rf ./dist && rollup -c && tsc -p tsconfig.build.json && node scripts/build-dts.js && node scripts/check-size.js","report":"c8 report --all --include 'src/**/*.ts' --reporter=text-lcov > coverage.txt","release":"commit-and-tag-version","test:e2e":"playwright test","typecheck":"tsc --noEmit","prettier:check":"prettier --check '{src,test,e2e,scripts}/**/*' 'site/**/*.{html,css,js,jsx}' playwright.config.js","prettier:write":"prettier --write '{src,test,e2e,scripts}/**/*' 'site/**/*.{html,css,js,jsx}' playwright.config.js","test:e2e:headed":"playwright test --headed"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fe5c55cb-ee79-4656-8d96-75c36bbf5704"}},"repository":{"url":"git+https://github.com/petersolopov/yace.git","type":"git"},"_npmVersion":"11.16.0","description":"tiny text editor with plugins","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"c8":"^11.0.0","tslib":"^2.8.1","undom":"^0.4.0","rollup":"^4.62.2","prettier":"^3.9.4","typescript":"^6.0.3","@playwright/test":"^1.61.1","@arethetypeswrong/cli":"^0.18.4","@rollup/plugin-terser":"^1.0.0","commit-and-tag-version":"^12.7.3","@rollup/plugin-typescript":"^12.3.0"},"_npmOperationalInternal":{"tmp":"tmp/yace_1.0.0_1783715033463_0.16335499152813604","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"yace","version":"1.1.0","keywords":["text-editor","editor","code-editor","textarea","syntax-highlighting","lightweight","zero-dependencies","prism","react","framework-agnostic","markdown"],"author":{"name":"Peter Solopov","email":"peter@solopov.dev"},"license":"MIT","_id":"yace@1.1.0","maintainers":[{"name":"petersolopov","email":"peter@solopov.dev"}],"homepage":"https://github.com/petersolopov/yace","bugs":{"url":"https://github.com/petersolopov/yace/issues"},"dist":{"shasum":"e675bda1d3c6aaa191658c17362ac827ccb945b0","tarball":"https://registry.npmjs.org/yace/-/yace-1.1.0.tgz","fileCount":34,"integrity":"sha512-jB29trAxPBvTIR/lXsgh97q22n/Rq5ZHbDT4DT6WUvXVlJLR7jdwiBKD+0zi3XZAD5N+YKa3GrdIrelqIXj2oQ==","signatures":[{"sig":"MEUCICa6Pwu7nV+Dk13ZHgsGeSuzyMx7nmfITGMkiwHENcgEAiEAradUpIr2CkK19cOsqwKzq9YmecpyfaVZFbdTzRfdLc4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/yace@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":41558},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugins":{"types":"./dist/plugins/index.d.ts","default":"./dist/plugins/index.js"},"./plugins/*":{"types":"./dist/plugins/*.d.ts","default":"./dist/plugins/*.js"},"./highlighters":{"types":"./dist/highlighters/index.d.ts","default":"./dist/highlighters/index.js"},"./package.json":"./package.json","./highlighters/code":{"types":"./dist/highlighters/code.d.ts","default":"./dist/highlighters/code.js"},"./highlighters/shimmer":{"types":"./dist/highlighters/shimmer.d.ts","default":"./dist/highlighters/shimmer.js"},"./highlighters/markdown":{"types":"./dist/highlighters/markdown.d.ts","default":"./dist/highlighters/markdown.js"},"./highlighters/sliceGlitch":{"types":"./dist/highlighters/sliceGlitch.d.ts","default":"./dist/highlighters/sliceGlitch.js"}},"gitHead":"026496cc89358e4391837a44870728d9fbe07d00","scripts":{"dev":"node site/server.js","attw":"npm run build && attw --pack . --profile esm-only","size":"node scripts/check-size.js","test":"c8 --all --include 'src/**/*.ts' --check-coverage --lines 100 --functions 100 --branches 99 node --test test/test.js test/highlighters.test.js test/build-guard.test.js","build":"rm -rf ./dist && rollup -c && tsc -p tsconfig.build.json && node scripts/build-dts.js && node scripts/check-size.js","report":"c8 report --all --include 'src/**/*.ts' --reporter=text-lcov > coverage.txt","release":"commit-and-tag-version","test:e2e":"playwright test","typecheck":"tsc --noEmit","prettier:check":"prettier --check '{src,test,e2e,scripts}/**/*' 'site/**/*.{html,css,js,jsx}' playwright.config.js","prettier:write":"prettier --write '{src,test,e2e,scripts}/**/*' 'site/**/*.{html,css,js,jsx}' playwright.config.js","test:e2e:headed":"playwright test --headed"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fe5c55cb-ee79-4656-8d96-75c36bbf5704"}},"repository":{"url":"git+https://github.com/petersolopov/yace.git","type":"git"},"_npmVersion":"11.16.0","description":"tiny text editor with plugins","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"c8":"^11.0.0","mdhl":"0.0.7","tslib":"^2.8.1","undom":"^0.4.0","rollup":"^4.62.2","prettier":"^3.9.4","typescript":"^6.0.3","@playwright/test":"^1.61.1","@arethetypeswrong/cli":"^0.18.4","@rollup/plugin-terser":"^1.0.0","commit-and-tag-version":"^12.7.3","@rollup/plugin-typescript":"^12.3.0","@rollup/plugin-node-resolve":"16.0.3"},"_npmOperationalInternal":{"tmp":"tmp/yace_1.1.0_1784293047350_0.2642764796100592","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"_id":"yace@1.1.1","bugs":{"url":"https://github.com/petersolopov/yace/issues"},"dist":{"shasum":"ccc38d35cf47e684b3c59f5e6086b2f3069bf2ad","tarball":"https://registry.npmjs.org/yace/-/yace-1.1.1.tgz","fileCount":34,"integrity":"sha512-BaWs+mh0zWfXj3or3SWxHBzCE9vV5oYNtmEK85mRtU8RIh15khJetkYrnWKAdjCt25mMSsEf9q7bziNFVuYdeQ==","signatures":[{"sig":"MEQCIFxMcBpjUVr+5p8WfmwSgSbV9Fu4uXYegjuVQKf2ElRIAiAdbQ95wH8LnZedod3cme+fO5UCWvmBXzIwOkZYTiYo4w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIGDmzMr7cQdBAENSptSlbF7+iOB336dfSgfdVW7oK4x8AiA0aNy7boI0v4neHD7mui/Jz5rIvZfTkRDR5CegfWkeKQ=="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/yace@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":39177},"main":"./dist/index.js","name":"yace","type":"module","types":"./dist/index.d.ts","author":{"name":"Peter Solopov","email":"peter@solopov.dev"},"module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./plugins":{"types":"./dist/plugins/index.d.ts","default":"./dist/plugins/index.js"},"./plugins/*":{"types":"./dist/plugins/*.d.ts","default":"./dist/plugins/*.js"},"./highlighters":{"types":"./dist/highlighters/index.d.ts","default":"./dist/highlighters/index.js"},"./package.json":"./package.json","./highlighters/code":{"types":"./dist/highlighters/code.d.ts","default":"./dist/highlighters/code.js"},"./highlighters/shimmer":{"types":"./dist/highlighters/shimmer.d.ts","default":"./dist/highlighters/shimmer.js"},"./highlighters/markdown":{"types":"./dist/highlighters/markdown.d.ts","default":"./dist/highlighters/markdown.js"},"./highlighters/sliceGlitch":{"types":"./dist/highlighters/sliceGlitch.d.ts","default":"./dist/highlighters/sliceGlitch.js"}},"gitHead":"c84d7534549da36c9c7c65efd3f3e721b048c76c","license":"MIT","scripts":{"dev":"node site/server.js","attw":"npm run build && attw --pack . --profile esm-only","size":"node scripts/check-size.js","test":"c8 --all --include 'src/**/*.ts' --check-coverage --lines 100 --functions 100 --branches 99 node --test test/test.js test/highlighters.test.js","build":"rm -rf ./dist && rollup -c && tsc -p tsconfig.build.json && node scripts/build-dts.js && node scripts/check-size.js","report":"c8 report --all --include 'src/**/*.ts' --reporter=text-lcov > coverage.txt","release":"commit-and-tag-version","test:e2e":"playwright test","typecheck":"tsc --noEmit","prettier:check":"prettier --check '{src,test,e2e,scripts}/**/*' 'site/**/*.{html,css,js,jsx}' playwright.config.js","prettier:write":"prettier --write '{src,test,e2e,scripts}/**/*' 'site/**/*.{html,css,js,jsx}' playwright.config.js","test:e2e:headed":"playwright test --headed"},"version":"1.1.1","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:fe5c55cb-ee79-4656-8d96-75c36bbf5704"}},"homepage":"https://github.com/petersolopov/yace","keywords":["text-editor","editor","code-editor","textarea","syntax-highlighting","lightweight","zero-dependencies","prism","react","framework-agnostic","markdown"],"repository":{"url":"git+https://github.com/petersolopov/yace.git","type":"git"},"_npmVersion":"11.19.0","description":"tiny text editor with plugins","directories":{},"maintainers":[{"name":"petersolopov","email":"peter@solopov.dev"}],"sideEffects":false,"_nodeVersion":"24.20.0","_hasShrinkwrap":false,"devDependencies":{"c8":"^11.0.0","mdhl":"0.0.7","tslib":"^2.8.1","undom":"^0.4.0","rollup":"^4.62.2","prettier":"^3.9.4","typescript":"^6.0.3","@playwright/test":"^1.61.1","@arethetypeswrong/cli":"^0.18.4","@rollup/plugin-terser":"^1.0.0","commit-and-tag-version":"^12.7.3","@rollup/plugin-typescript":"^12.3.0","@rollup/plugin-node-resolve":"16.0.3"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/yace_1.1.1_1789836190570_0.03352117386631237"}}},"time":{"created":"2020-06-09T18:28:48.626Z","modified":"2026-09-19T16:43:10.995Z","0.0.1":"2020-06-09T18:28:48.773Z","0.0.2":"2020-06-14T12:15:35.137Z","0.0.3":"2020-06-14T15:52:45.160Z","0.0.4":"2020-06-14T16:08:12.449Z","0.0.5":"2020-06-20T12:27:38.532Z","0.0.6":"2020-08-29T13:40:09.369Z","0.0.7":"2026-07-01T19:39:12.439Z","0.0.8":"2026-07-07T18:13:44.923Z","1.0.0-beta.1":"2026-07-08T21:25:25.645Z","1.0.0-beta.2":"2026-07-10T10:04:30.555Z","1.0.0":"2026-07-10T20:23:53.591Z","1.1.0":"2026-07-17T12:57:27.500Z","1.1.1":"2026-09-19T16:43:10.658Z"},"bugs":{"url":"https://github.com/petersolopov/yace/issues"},"author":{"name":"Peter Solopov","email":"peter@solopov.dev"},"license":"MIT","homepage":"https://github.com/petersolopov/yace","keywords":["text-editor","editor","code-editor","textarea","syntax-highlighting","lightweight","zero-dependencies","prism","react","framework-agnostic","markdown"],"repository":{"url":"git+https://github.com/petersolopov/yace.git","type":"git"},"description":"tiny text editor with plugins","maintainers":[{"name":"petersolopov","email":"peter@solopov.dev"}],"readme":"# Yace\n\n[![npm](https://badgen.net/npm/v/yace/?cache=300)](https://www.npmjs.com/package/yace) [![Coverage Status](https://coveralls.io/repos/github/petersolopov/yace/badge.svg)](https://coveralls.io/github/petersolopov/yace) [![bundlephobia](https://badgen.net/bundlephobia/minzip/yace?label=size)](https://bundlephobia.com/result?p=yace)\n\nYace is a tiny, extensible code editor component for cases where a plain\n`<textarea>` is not enough and Monaco or CodeMirror would be overkill. Under\n2KB gzipped. Zero dependencies. Framework agnostic.\n\n<img width=\"1688\" height=\"769\" alt=\"Three yace editors: the quick start snippet with line numbers, an LLM token visualizer with colored word chips, and a React example\" src=\"https://github.com/user-attachments/assets/45598a8d-7b5a-4b74-9b9e-2775e51d6345\" />\n\n[See live examples](#examples)\n\n## When Yace fits\n\nUse Yace for embedded code samples, documentation playgrounds, Markdown\ninputs, prompt editors, token visualizers, and custom text experiences. It\ngives you syntax highlighting and editing hooks without bringing an IDE into\nthe page.\n\nLarge documents, multicursor editing, rich text, decorations, and SSR are out\nof scope by design: they need a document model rather than a textarea overlay.\nYace deliberately stays smaller and gives you the pieces to build the editor\nyou actually need.\n\n## Quick start\n\nInstall Yace from npm:\n\n```bash\nnpm install yace\n```\n\nAdd a mount point:\n\n```html\n<div id=\"editor\"></div>\n```\n\nCreate an editor with syntax highlighting and familiar editing behavior:\n\n```js\nimport { Yace } from \"yace\";\nimport { code } from \"yace/highlighters/code\";\nimport { history, preserveIndent, tab } from \"yace/plugins\";\n\nconst editor = new Yace(\"#editor\", {\n  value: \"const answer = 42;\",\n  lineNumbers: true,\n  highlighters: [code()],\n  plugins: [history(), tab(), preserveIndent()],\n});\n\neditor.onUpdate((value) => console.log(value));\n```\n\n> Keep `history()` first: it checkpoints the textarea state before later plugins\ntransform it.\n\nYace is ESM-only. You can also load the core directly from a CDN without a\nbuild step:\n\n```js\nimport { Yace } from \"https://unpkg.com/yace?module\";\n```\n\n## How it works\n\nA transparent `<textarea>` sits over a highlighted `<pre>`. The textarea owns\ninput, caret, selection, IME, and accessibility. The `<pre>` paints the same\ntext underneath it.\n\nThe overlay pattern is established. Yace keeps the implementation small and\nturns the two extension points into explicit pipelines:\n\n- Plugins receive the textarea state and an input event, then return the next\n  text and selection\n- Highlighters receive the current value and return the HTML rendered by the\n  `<pre>`; chain them to tokenize first and decorate the result afterward\n\nThe core ships no required highlighter or editing behavior. Start with the\nnative textarea and add only what the editor needs.\n\n## Examples\n\n- [Getting started with the bundled code highlighter](https://codepen.io/petersolopov/pen/JoELdOr)\n- [Use highlight.js as the highlighter](https://codepen.io/petersolopov/pen/dPNddwg)\n- [Use PrismJS as the highlighter](https://codepen.io/petersolopov/pen/RNKQMaX)\n- [Write a highlighter in about 15 lines](https://codepen.io/petersolopov/pen/dPNmYWr)\n- [Build a Markdown editor](https://codepen.io/petersolopov/pen/NPdyYrR)\n- [Highlight Markdown and fenced code blocks](https://codepen.io/petersolopov/pen/pvRaLbw)\n- [Add undo, tab, indentation, and cut-line plugins](https://codepen.io/petersolopov/pen/GgrQxjg)\n- [Write a plugin](https://codepen.io/petersolopov/pen/OPWvyOM)\n- [Layer shimmer and glitch effects over selected words](https://codepen.io/petersolopov/pen/Qwdmjxg)\n- [Visualize LLM tokens in an editable OpenAI-style view](https://codepen.io/petersolopov/pen/emgMpMr)\n- [Use Yace with React](https://codepen.io/petersolopov/pen/XJpZEKq)\n\n## Constructor options\n\n`new Yace(target, options)` takes a CSS selector or DOM `Node`. Every option is\noptional:\n\n```js\nnew Yace(target, {\n  value: \"\",           // sets the initial text\n  highlighters: [],    // defines the rendering pipeline\n  plugins: [],         // defines the editing pipeline, reduced from left to right\n  lineNumbers: false,  // adds a line-number gutter\n  styles: {},          // applies inline styles to the editor root, such as `{ fontSize: \"20px\" }`\n});\n```\n\n## Instance API\n\nThe DOM Yace built, and the methods to drive it:\n\n- `editor.value` holds the current text\n- `editor.textarea` exposes the real `<textarea>` for focus, `readOnly`,\n  `spellcheck`, and other native features\n- `editor.root` exposes the mount element\n- `editor.pre` exposes the highlighted `<pre>` layer\n- `editor.onUpdate((value: string) => void)` registers a callback for edits\n- `editor.update({ value?, selectionStart?, selectionEnd? })` updates the text\n  or selection; a value-only update preserves the current selection\n- `editor.updateOptions({ value?, lineNumbers?, highlighters?, plugins?, styles? })`\n  changes constructor options on a live editor\n- `editor.destroy()` removes listeners and nodes and restores the container;\n  later `update()` calls are silent no-ops\n\n## Plugins\n\nA plugin receives the textarea state and DOM event, then returns the next state\nor nothing:\n\n```ts\ntype Plugin = (\n  props: TextareaProps,\n  event: Event,\n) => Partial<TextareaProps> | void;\n\ninterface TextareaProps {\n  value: string;\n  selectionStart: number;\n  selectionEnd: number;\n}\n```\n\nYace runs plugins from left to right on `keydown`, `input`, and\n`compositionend`. Each plugin sees the previous plugin's result.\n\n```js\nimport { Yace } from \"yace\";\n\nconst upperCase = ({ value }) => ({ value: value.toUpperCase() });\n\nnew Yace(\"#editor\", { plugins: [upperCase] });\n```\n\nFirst-party plugins are available from `yace/plugins` or individual subpaths\nsuch as `yace/plugins/tab`:\n\n- `history({ limit = 300, coalesceMs = 300 })` adds undo and redo, caps stored\n  states with `limit`, and merges nearby edits using `coalesceMs`; it must be\n  first in the pipeline\n- `tab(tabCharacter = \"  \")` indents or outdents the selection with Tab and\n  Shift+Tab\n- `preserveIndent()` carries the current line's indentation to the next line\n- `cutLine(predicate?)` cuts the selection or current line on Ctrl/Cmd+X;\n  `predicate` can override the trigger\n- `autoClose(pairs?)` inserts matching brackets, wraps selections, steps over\n  existing closing characters, and removes empty pairs together\n- `toggleComment(prefix = \"// \", predicate?)` toggles line comments on the\n  current line or selection; blank lines are skipped\n- `isKey(shortcut, event)` matches shortcuts with Ctrl/Cmd normalization and a\n  physical-code fallback for non-Latin keyboard layouts\n\n## Highlighting\n\nA highlighter turns text into HTML. Yace assigns the result to `innerHTML`, so\nthe first highlighter must escape user text. Returning raw input is an XSS\nvector.\n\n```ts\ntype Highlighter = (value: string, context?: { html: boolean }) => string;\n```\n\nHighlighters run as a pipeline. The first stage receives raw text with\n`context.html === false`. Later stages receive the previous stage's HTML with\n`context.html === true`, so they must preserve tags instead of escaping the\nwhole input again. An empty pipeline falls back to Yace's escaping highlighter.\n\n```js\nimport { Yace } from \"yace\";\nimport { code } from \"yace/highlighters/code\";\nimport { shimmer } from \"yace/highlighters/shimmer\";\n\nnew Yace(\"#editor\", {\n  highlighters: [code(), shimmer({ words: [\"TODO\"] })],\n});\n```\n\nHighlighters must keep glyph advance widths constant or the painted text will\ndrift away from the native caret. Bold and italic are safe when every face in\nthe font stack is strictly monospace.\n\nFirst-party highlighters are available from `yace/highlighters` or individual\nsubpaths such as `yace/highlighters/code`:\n\n- `code(extraRules?)` is an extensible tokenizer that emits `yace-tok` classes\n  without imposing colors. Provides approximate highlighting, without a language parser.\n  For language-specific highlighting, see the highlight.js and PrismJS [examples](#examples).\n- `markdown()` highlights Markdown with the vendored\n  [mdhl](https://github.com/petersolopov/mdhl) and emits `mdhl-*` classes;\n  place it first or use it alone\n- `sliceGlitch(options?)` splits lines into displaced RGB slices and exposes\n  `--yace-slice-a` and `--yace-slice-b` for theming\n- `shimmer(options?)` sweeps a light band over text and exposes\n  `--yace-shimmer-base` and `--yace-shimmer-band` for theming\n\n`sliceGlitch` and `shimmer` also accept a `words` array to decorate only\nmatching words. They inject their animation CSS at runtime; `code` and\n`markdown` emit classes only, so the consumer supplies token colors.\n\n## Browser support\n\nYace supports evergreen Chromium, Firefox, WebKit, and current mobile\nbrowsers. It is client-only and needs the DOM. IE and SSR are not supported.\n\n## Gotchas\n\n- With a bundler, `yace/plugins` and `yace/highlighters` tree-shake normally;\n  with native browser modules, prefer exact paths such as `yace/plugins/tab`\n  to avoid fetching every sibling\n- `require(\"yace\")` on Node 22+ returns the ESM module namespace, so use\n  `const { Yace } = require(\"yace\")`; the same applies to every subpath\n- TypeScript consumers compiling to CommonJS need `\"module\": \"nodenext\"` and\n  TypeScript 5.8 or newer; `node16` rejects `require` of an ESM package\n- Jest's default CommonJS runtime cannot load ESM; use Vitest or Jest's ESM\n  mode\n- Token styles may use bold or italic only when the complete font stack is\n  strictly monospace; proportional fallback faces shift the painted layer away\n  from the caret\n\n## Development\n\nInstall dependencies and start the landing page on `http://localhost:5714`:\n\n```bash\nnpm install\nnpm run dev\n```\n\nVerify the library before submitting a change:\n\n```bash\nnpm test\nnpm run typecheck\nnpm run prettier:check\nnpm run test:e2e\nnpm run attw\n```\n\n## License\n\n[MIT](/LICENSE)\n","readmeFilename":"README.md"}