{"_id":"@mattermost/commonmark","_rev":"18-3d7396f7ef2275b56a80a020a31214ff","name":"@mattermost/commonmark","dist-tags":{"latest":"0.31.2-0"},"versions":{"0.30.1-0":{"name":"@mattermost/commonmark","version":"0.30.1-0","keywords":["markdown","commonmark","md","stmd"],"author":{"name":"John MacFarlane"},"license":"BSD-2-Clause","_id":"@mattermost/commonmark@0.30.1-0","maintainers":[{"name":"mattermost-user","email":"community@mattermost.com"},{"name":"crspeller","email":"crspeller@gmail.com"},{"name":"jwilander","email":"jwawilander@gmail.com"},{"name":"coreyhulen","email":"corey@hulen.com"},{"name":"enahum","email":"nahumhbl@gmail.com"},{"name":"cpanato","email":"ctadeu@gmail.com"},{"name":"matterbuild","email":"build@mattermost.com"},{"name":"hmhealey","email":"harrisonmhealey@gmail.com"}],"homepage":"https://commonmark.org","bugs":{"url":"https://github.com/mattermost/commonmark.js/issues"},"bin":{"commonmark":"bin/commonmark"},"dist":{"shasum":"ba68487732f2731464f119bcd1465cff75bc5cad","tarball":"https://registry.npmjs.org/@mattermost/commonmark/-/commonmark-0.30.1-0.tgz","fileCount":17,"integrity":"sha512-0+qW22COfd/BA81TQ05nQMfhmnuRAkv/vwCbs3iFVTEj7mTunYRwWUyb5M8K849V2VXdLdrS8htsBtIHDb2H7g==","signatures":[{"sig":"MEUCIQCsGnEMs0gnpKVRv1pusmLcWo0YyvzuufxMOnjciqq+2gIgJJAj7HzaQdYEGIQAzdEAjRreIkW2BtIeq2O90Vwh3/8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1137420,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJib926ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrGQg//b6JFuU+g4tLDn0iQY6zbUFVehmcFDenT/zSzhz77b3rBD2qu\r\nVS0Nal7iciUwABr0iGClDpEEO8jXyNE2xlHccyCudtUWZ6txxLZdZ3zjN/cb\r\nwgNNJYyPGAIFM8GSamJoCqlrfxgGHwnYYL6fcwtcEUTZwFhnf5SwWpRvee0h\r\noaJSa6yQVwoEvNrn8e/E+cSo0kPNpwGDcXMo4azPfIxiMkoTkzBK+qrvQSYp\r\nZBw8AfR7twptMZ7yvNEk3zEB1SVgOyiH4xhYVHjzF2SH9d/oJdFZNKo0XxdE\r\n2TQoObZuTP0RZkKWPcxmpg4Mxx8o2zagCexkqcaIYCsR6j+QsijSLzuDR5Jt\r\nzMGwxvOfRn2l1BvFLniT6Kn7HJ7NYXGJucsLWw00ETr+ICAX1dcXvQ0INr51\r\nbbq6+v034HZNkRDbwXH/rYJKHCsFTARejhwA4zAAog0abW2+/oPFKrGyyohA\r\n+MH3jySNS3EEcqym+6skJcmVEaLPPc7xeKd5GmMFnt48OVEujUwsj9kmSKnN\r\nLpH1P0gdik6Hx+9F/GLcv5uMA+dcQwzTwD//S8t+SSzjhRYsNUcJ6PLlDs2+\r\nRkb5MC83o+MUREa75/FO71PGbS87hLLYuy1GI69NOxszVDEhmoAxCC3JDGn/\r\nxQWDB6A7GM/NjKrTtYLH8Ou5KETUbUAZrC8=\r\n=yLGr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/commonmark.js","type":"commonjs","types":"./lib/index.d.ts","module":"./lib/index.js","engines":{"node":"*"},"exports":{".":{"default":"./lib/index.js","require":"./dist/commonmark.js"}},"gitHead":"0e3ce51f711d41e8db39b3efb52904f232678236","scripts":{"lint":"eslint .","test":"node ./test/test","build":"rollup -c","pretest":"npm run build","prepublish":"npm run build"},"_npmUser":{"name":"hmhealey","email":"harrisonmhealey@gmail.com"},"repository":{"url":"git+https://github.com/mattermost/commonmark.js.git","type":"git"},"_npmVersion":"7.18.1","description":"the Mattermost fork of a strongly specified, highly compatible variant of Markdown","directories":{"lib":"./lib"},"_nodeVersion":"16.4.0","dependencies":{"mdurl":"~1.0.1","xregexp":"5.1.0","entities":"~3.0.1","minimist":"~1.2.5","string.prototype.repeat":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"mem":">=4.0.0","acorn":">=8.7.0","bower":"^1.8.13","eslint":"^8.6.0","lodash":"^4.17.21","marked":">=4.0.10","rollup":"^1.29.0","showdown":"^2.0.2","benchmark":"^2.1.4","uglify-js":"^3.14.5","http-server":"^14.1.0","markdown-it":">= 12.3","@rollup/plugin-json":"^4.0.1","cached-path-relative":"^1.0.2","rollup-plugin-uglify":"^5.0.2","serialize-javascript":"^6.0.0","@rollup/plugin-commonjs":"^11.0.1","@rollup/plugin-node-resolve":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/commonmark_0.30.1-0_1651498426381_0.9241997450165413","host":"s3://npm-registry-packages"}},"0.30.1-1":{"name":"@mattermost/commonmark","version":"0.30.1-1","keywords":["markdown","commonmark","md","stmd"],"author":{"name":"John MacFarlane"},"license":"BSD-2-Clause","_id":"@mattermost/commonmark@0.30.1-1","maintainers":[{"name":"pvratsalis","email":"pantelis.vratsalis@mattermost.com"},{"name":"mattermost-user","email":"community@mattermost.com"},{"name":"crspeller","email":"crspeller@gmail.com"},{"name":"jwilander","email":"jwawilander@gmail.com"},{"name":"coreyhulen","email":"corey@hulen.com"},{"name":"enahum","email":"nahumhbl@gmail.com"},{"name":"matterbuild","email":"build@mattermost.com"},{"name":"hmhealey","email":"harrisonmhealey@gmail.com"}],"homepage":"https://commonmark.org","bugs":{"url":"https://github.com/mattermost/commonmark.js/issues"},"bin":{"commonmark":"bin/commonmark"},"dist":{"shasum":"d5e1e7492c94e8918af388894ba43fd25f343836","tarball":"https://registry.npmjs.org/@mattermost/commonmark/-/commonmark-0.30.1-1.tgz","fileCount":17,"integrity":"sha512-zOiOtPA5LjB1WCUVbaMt5KNuNdq/0NLpBOcQlGrKe+ftuJVhiis7pWEqS4agIBlpjhm7ssywwl7p1eurOjcm5A==","signatures":[{"sig":"MEUCIQCBW7SdtWUR0kgC5MC/LY+6NnRmuaqSoKMjpN5Ey79PfgIgUi3rqFqMFuegKFjgOWdvBOt+q4UluG3x6/6LvDm4Teo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1136425},"main":"./dist/commonmark.js","type":"commonjs","types":"./lib/index.d.ts","module":"./lib/index.js","engines":{"node":"*"},"exports":{".":{"default":"./lib/index.js","require":"./dist/commonmark.js"}},"gitHead":"e5367d2057d8daa4f2ecf6ca4efbe5d91abf3a36","scripts":{"lint":"eslint .","test":"node ./test/test","build":"rollup -c","pretest":"npm run build","prepublish":"npm run build"},"_npmUser":{"name":"hmhealey","email":"harrisonmhealey@gmail.com"},"repository":{"url":"git+https://github.com/mattermost/commonmark.js.git","type":"git"},"_npmVersion":"9.6.7","description":"the Mattermost fork of a strongly specified, highly compatible variant of Markdown","directories":{"lib":"./lib"},"_nodeVersion":"18.17.1","dependencies":{"mdurl":"~1.0.1","xregexp":"5.1.0","entities":"~3.0.1","minimist":"~1.2.5","string.prototype.repeat":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"mem":">=4.0.0","acorn":">=8.7.0","bower":"^1.8.13","eslint":"^8.6.0","lodash":"^4.17.21","marked":">=4.0.10","rollup":"^1.29.0","showdown":"^2.0.2","benchmark":"^2.1.4","uglify-js":"^3.14.5","http-server":"^14.1.0","markdown-it":">= 12.3","@rollup/plugin-json":"^4.0.1","cached-path-relative":"^1.0.2","rollup-plugin-uglify":"^6.0.4","serialize-javascript":"^6.0.0","@rollup/plugin-commonjs":"^11.0.1","@rollup/plugin-node-resolve":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/commonmark_0.30.1-1_1693513797865_0.5013454324553233","host":"s3://npm-registry-packages"}},"0.30.1-2":{"name":"@mattermost/commonmark","version":"0.30.1-2","keywords":["markdown","commonmark","md","stmd"],"author":{"name":"John MacFarlane"},"license":"BSD-2-Clause","_id":"@mattermost/commonmark@0.30.1-2","maintainers":[{"name":"pvratsalis","email":"pantelis.vratsalis@mattermost.com"},{"name":"mattermost-user","email":"community@mattermost.com"},{"name":"crspeller","email":"crspeller@gmail.com"},{"name":"jwilander","email":"jwawilander@gmail.com"},{"name":"coreyhulen","email":"corey@hulen.com"},{"name":"enahum","email":"nahumhbl@gmail.com"},{"name":"matterbuild","email":"build@mattermost.com"},{"name":"hmhealey","email":"harrisonmhealey@gmail.com"}],"homepage":"https://commonmark.org","bugs":{"url":"https://github.com/mattermost/commonmark.js/issues"},"bin":{"commonmark":"bin/commonmark"},"dist":{"shasum":"6b0b0bde2ef53fb66a891fe5b63697a1c68aeede","tarball":"https://registry.npmjs.org/@mattermost/commonmark/-/commonmark-0.30.1-2.tgz","fileCount":17,"integrity":"sha512-r/xhNVt49pEFTjOgmKvjnPNM5RA8OztWsUn3CSQBcXiH2r36QipnR6qxU1hHo3XCteXkYDu9ypn+voA+jaN4Xg==","signatures":[{"sig":"MEUCIQD6ZmY8j6Qjqt1W5Z4VlkHwOzVToZ9k3z5Ga88wai8F4wIgHyLHsuVNcChqT9FP2C5X19NzsEZwf9/6d0sLFxmSxVU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1136629},"main":"./dist/commonmark.js","type":"commonjs","types":"./lib/index.d.ts","module":"./lib/index.js","engines":{"node":"*"},"exports":{".":{"default":"./lib/index.js","require":"./dist/commonmark.js"}},"gitHead":"9ebe192ca8d2b3db4955931990d6639d21fc79de","scripts":{"lint":"eslint .","test":"node ./test/test","build":"rollup -c","pretest":"npm run build","prepublish":"npm run build"},"_npmUser":{"name":"hmhealey","email":"harrisonmhealey@gmail.com"},"repository":{"url":"git+https://github.com/mattermost/commonmark.js.git","type":"git"},"_npmVersion":"9.6.7","description":"the Mattermost fork of a strongly specified, highly compatible variant of Markdown","directories":{"lib":"./lib"},"_nodeVersion":"18.17.1","dependencies":{"mdurl":"~1.0.1","xregexp":"5.1.0","entities":"~3.0.1","minimist":"~1.2.5","string.prototype.repeat":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"mem":">=4.0.0","acorn":">=8.7.0","bower":"^1.8.13","eslint":"^8.6.0","lodash":"^4.17.21","marked":">=4.0.10","rollup":"^1.29.0","showdown":"^2.0.2","benchmark":"^2.1.4","uglify-js":"^3.14.5","http-server":"^14.1.0","markdown-it":">= 12.3","@rollup/plugin-json":"^4.0.1","cached-path-relative":"^1.0.2","rollup-plugin-uglify":"^6.0.4","serialize-javascript":"^6.0.0","@rollup/plugin-commonjs":"^11.0.1","@rollup/plugin-node-resolve":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/commonmark_0.30.1-2_1700495504994_0.4801253515348025","host":"s3://npm-registry-packages"}},"0.30.1-3":{"name":"@mattermost/commonmark","version":"0.30.1-3","keywords":["markdown","commonmark","md","stmd"],"author":{"name":"John MacFarlane"},"license":"BSD-2-Clause","_id":"@mattermost/commonmark@0.30.1-3","maintainers":[{"name":"harshil.sharma","email":"harshil.sharma@mattermost.com"},{"name":"danielsischy","email":"daniel.sischy@mattermost.com"},{"name":"streamer45","email":"cstcld91@gmail.com"},{"name":"cpoile","email":"cpoile@gmail.com"},{"name":"devinbinnie","email":"devin.binnie@mattermost.com"},{"name":"mattermost-user","email":"community@mattermost.com"},{"name":"crspeller","email":"crspeller@gmail.com"},{"name":"jwilander","email":"jwawilander@gmail.com"},{"name":"coreyhulen","email":"corey@hulen.com"},{"name":"enahum","email":"nahumhbl@gmail.com"},{"name":"matterbuild","email":"build@mattermost.com"},{"name":"hmhealey","email":"harrisonmhealey@gmail.com"}],"homepage":"https://commonmark.org","bugs":{"url":"https://github.com/mattermost/commonmark.js/issues"},"bin":{"commonmark":"bin/commonmark"},"dist":{"shasum":"e6c2c83a3b68150f140303cd0c7a6b02f6f976a8","tarball":"https://registry.npmjs.org/@mattermost/commonmark/-/commonmark-0.30.1-3.tgz","fileCount":17,"integrity":"sha512-Kjsl/sZmb6R6PtpPVIifPfqBMrKs7z6Tukb1TJl/S0LfC5uNici3yol4waGxhGsJuvCF2kZqStwVQP7ieUbAgw==","signatures":[{"sig":"MEYCIQCPVQT4+XNVV4GZ8VBLry92AtugJlf0eXXE8UyRo4YrzQIhAM5J1gC5XZ+2GcfCurwYJeefA+3ncRiKD28w8ESmxUuL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1139052},"main":"./dist/commonmark.js","type":"commonjs","types":"./lib/index.d.ts","module":"./lib/index.js","engines":{"node":"*"},"exports":{".":{"default":"./lib/index.js","require":"./dist/commonmark.js"}},"gitHead":"91674fefe6ed75fce9fa71c1c22f28f12df43ffc","scripts":{"lint":"eslint .","test":"node ./test/test","build":"rollup -c","pretest":"npm run build","prepublish":"npm run build"},"_npmUser":{"name":"hmhealey","email":"harrisonmhealey@gmail.com"},"repository":{"url":"git+https://github.com/mattermost/commonmark.js.git","type":"git"},"_npmVersion":"10.2.4","description":"the Mattermost fork of a strongly specified, highly compatible variant of Markdown","directories":{"lib":"./lib"},"_nodeVersion":"20.11.0","dependencies":{"mdurl":"~1.0.1","xregexp":"5.1.0","entities":"~3.0.1","minimist":"~1.2.5","string.prototype.repeat":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"mem":">=4.0.0","acorn":">=8.7.0","bower":"^1.8.13","eslint":"^8.6.0","lodash":"^4.17.21","marked":">=4.0.10","rollup":"^1.29.0","showdown":"^2.0.2","benchmark":"^2.1.4","uglify-js":"^3.14.5","http-server":"^14.1.0","markdown-it":">= 12.3","@rollup/plugin-json":"^4.0.1","cached-path-relative":"^1.0.2","rollup-plugin-uglify":"^6.0.4","serialize-javascript":"^6.0.0","@rollup/plugin-commonjs":"^11.0.1","@rollup/plugin-node-resolve":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/commonmark_0.30.1-3_1724702320046_0.9177767520266644","host":"s3://npm-registry-packages"}},"0.30.1-4":{"name":"@mattermost/commonmark","version":"0.30.1-4","keywords":["markdown","commonmark","md","stmd"],"author":{"name":"John MacFarlane"},"license":"BSD-2-Clause","_id":"@mattermost/commonmark@0.30.1-4","maintainers":[{"name":"danielschalla","email":"daniel@mattermost.com"},{"name":"harshil.sharma","email":"harshil.sharma@mattermost.com"},{"name":"danielsischy","email":"daniel.sischy@mattermost.com"},{"name":"streamer45","email":"cstcld91@gmail.com"},{"name":"cpoile","email":"cpoile@gmail.com"},{"name":"devinbinnie","email":"devin.binnie@mattermost.com"},{"name":"mattermost-user","email":"community@mattermost.com"},{"name":"crspeller","email":"crspeller@gmail.com"},{"name":"jwilander","email":"jwawilander@gmail.com"},{"name":"coreyhulen","email":"corey@hulen.com"},{"name":"enahum","email":"nahumhbl@gmail.com"},{"name":"matterbuild","email":"build@mattermost.com"},{"name":"hmhealey","email":"harrisonmhealey@gmail.com"}],"homepage":"https://commonmark.org","bugs":{"url":"https://github.com/mattermost/commonmark.js/issues"},"bin":{"commonmark":"bin/commonmark"},"dist":{"shasum":"067dce2a9be50b3ebb6b3a62e87f7d2e4a5211eb","tarball":"https://registry.npmjs.org/@mattermost/commonmark/-/commonmark-0.30.1-4.tgz","fileCount":17,"integrity":"sha512-7O1xQfP3ILHf/+wjrxwF0rqowuvqQ7EY+SJOWsDaV+VXdj+lmft9yxkL0QPNYALinKFdPEj1gFtgR+pi4w8lzQ==","signatures":[{"sig":"MEQCIFQ4LAA7vKnQZddIZb3uVQwh3lz6sKdvJdT0x5NvzCD1AiBAEB/bFS2XbLJTQtOLYva72kb0vJFYuUF3mxkO5TiRHQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1149847},"main":"./dist/commonmark.js","type":"commonjs","types":"./lib/index.d.ts","module":"./lib/index.js","engines":{"node":"*"},"exports":{".":{"default":"./lib/index.js","require":"./dist/commonmark.js"}},"gitHead":"56a4619ff6652351ebf2d07530e912931106e832","scripts":{"lint":"eslint .","test":"node ./test/test","build":"rollup -c","pretest":"npm run build","prepublish":"npm run build"},"_npmUser":{"name":"hmhealey","email":"harrisonmhealey@gmail.com"},"repository":{"url":"git+https://github.com/mattermost/commonmark.js.git","type":"git"},"_npmVersion":"10.2.4","description":"the Mattermost fork of a strongly specified, highly compatible variant of Markdown","directories":{"lib":"./lib"},"_nodeVersion":"20.11.0","dependencies":{"mdurl":"~1.0.1","xregexp":"5.1.0","entities":"~3.0.1","minimist":"~1.2.5","string.prototype.repeat":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"mem":">=4.0.0","acorn":">=8.7.0","bower":"^1.8.13","eslint":"^8.6.0","lodash":"^4.17.21","marked":">=4.0.10","rollup":"^1.29.0","showdown":"^2.0.2","benchmark":"^2.1.4","uglify-js":"^3.14.5","http-server":"^14.1.0","markdown-it":">= 12.3","@rollup/plugin-json":"^4.0.1","cached-path-relative":"^1.0.2","rollup-plugin-uglify":"^6.0.4","serialize-javascript":"^6.0.0","@rollup/plugin-commonjs":"^11.0.1","@rollup/plugin-node-resolve":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/commonmark_0.30.1-4_1731440225174_0.8730061624953755","host":"s3://npm-registry-packages"}},"0.31.2-0":{"name":"@mattermost/commonmark","version":"0.31.2-0","keywords":["markdown","commonmark","md","stmd"],"author":{"name":"John MacFarlane"},"license":"BSD-2-Clause","_id":"@mattermost/commonmark@0.31.2-0","maintainers":[{"name":"harshil.sharma","email":"harshil.sharma@mattermost.com"},{"name":"mattermost-user","email":"community@mattermost.com"},{"name":"crspeller","email":"crspeller@gmail.com"},{"name":"jwilander","email":"jwawilander@gmail.com"},{"name":"coreyhulen","email":"corey@hulen.com"},{"name":"enahum","email":"nahumhbl@gmail.com"},{"name":"matterbuild","email":"build@mattermost.com"},{"name":"hmhealey","email":"harrisonmhealey@gmail.com"},{"name":"danielschalla","email":"daniel@mattermost.com"},{"name":"devinbinnie","email":"devin.binnie@mattermost.com"},{"name":"cpoile","email":"cpoile@gmail.com"},{"name":"streamer45","email":"cstcld91@gmail.com"},{"name":"danielsischy","email":"daniel.sischy@mattermost.com"}],"homepage":"https://commonmark.org","bugs":{"url":"https://github.com/mattermost/commonmark.js/issues"},"bin":{"commonmark":"bin/commonmark"},"dist":{"shasum":"43676c248a09ecc58bdafbb68b8673ff0b6f08d3","tarball":"https://registry.npmjs.org/@mattermost/commonmark/-/commonmark-0.31.2-0.tgz","fileCount":17,"integrity":"sha512-wScEj6fc158FIQD7cmJ5BlZ6o6z3J7Nh0cjIEwL9qDwdyQ0Q3LOH3+4e6PvjpUoIJlQByzmHFR2VCq3BfeZOTg==","signatures":[{"sig":"MEYCIQDVZrGvk3zsKUl+8hinPdIVyDXEl9xshr7KeSSxaweTCwIhAJOC/4TJU5V1dQ2e0EXr/KxpAZekSpW+rPagyiZYteyi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1150320},"main":"./dist/commonmark.js","type":"commonjs","types":"./lib/index.d.ts","module":"./lib/index.js","engines":{"node":"*"},"exports":{".":{"default":"./lib/index.js","require":"./dist/commonmark.js"}},"gitHead":"8ddb5a71c538bd7220fd90c014639147914a0ffb","scripts":{"lint":"eslint .","test":"node ./test/test","build":"rollup -c","pretest":"npm run build","prepublish":"npm run build"},"_npmUser":{"name":"hmhealey","email":"harrisonmhealey@gmail.com"},"repository":{"url":"git+https://github.com/mattermost/commonmark.js.git","type":"git"},"_npmVersion":"10.2.4","description":"the Mattermost fork of a strongly specified, highly compatible variant of Markdown","directories":{"lib":"./lib"},"_nodeVersion":"20.11.0","dependencies":{"mdurl":"~1.0.1","xregexp":"5.1.0","entities":"~3.0.1","minimist":"~1.2.8","string.prototype.repeat":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"mem":">=4.0.0","acorn":">=8.7.0","bower":"^1.8.13","eslint":"^8.6.0","lodash":"^4.17.21","marked":">=4.0.10","rollup":"^1.29.0","showdown":"^2.0.2","benchmark":"^2.1.4","uglify-js":"^3.14.5","http-server":"^14.1.0","markdown-it":">= 12.3","@rollup/plugin-json":"^4.0.1","cached-path-relative":"^1.0.2","rollup-plugin-uglify":"^6.0.4","serialize-javascript":"^6.0.0","@rollup/plugin-commonjs":"^11.0.1","@rollup/plugin-node-resolve":"^7.0.0"},"_npmOperationalInternal":{"tmp":"tmp/commonmark_0.31.2-0_1743435704936_0.5850176925807578","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2022-05-02T13:33:46.320Z","modified":"2026-08-24T18:10:17.784Z","0.30.1-0":"2022-05-02T13:33:46.586Z","0.30.1-1":"2023-08-31T20:29:58.116Z","0.30.1-2":"2023-11-20T15:51:45.278Z","0.30.1-3":"2024-08-26T19:58:40.228Z","0.30.1-4":"2024-11-12T19:37:05.505Z","0.31.2-0":"2025-03-31T15:41:45.212Z"},"bugs":{"url":"https://github.com/mattermost/commonmark.js/issues"},"author":{"name":"John MacFarlane"},"license":"BSD-2-Clause","homepage":"https://commonmark.org","keywords":["markdown","commonmark","md","stmd"],"repository":{"url":"git+https://github.com/mattermost/commonmark.js.git","type":"git"},"description":"the Mattermost fork of a strongly specified, highly compatible variant of Markdown","maintainers":[{"email":"harshil.sharma@mattermost.com","name":"harshil.sharma"},{"email":"community@mattermost.com","name":"mattermost-user"},{"email":"crspeller@gmail.com","name":"crspeller"},{"email":"jwawilander@gmail.com","name":"jwilander"},{"email":"corey@hulen.com","name":"coreyhulen"},{"email":"nahumhbl@gmail.com","name":"enahum"},{"email":"build@mattermost.com","name":"matterbuild"},{"email":"harrisonmhealey@gmail.com","name":"hmhealey"},{"email":"eva.sarafianou@mattermost.com","name":"evasarafianou"},{"email":"daniel@mattermost.com","name":"danielschalla"},{"email":"devin.binnie@mattermost.com","name":"devinbinnie"},{"email":"cpoile@gmail.com","name":"cpoile"},{"email":"daniel.sischy@mattermost.com","name":"danielsischy"},{"email":"mattbirtch@gmail.com","name":"matthewbirtch"},{"email":"paul.harrison@mattermost.com","name":"phar-mm"}],"readme":"Mattermost fork of commonmark.js\n=============\n\nThis is the fork of [commonmark.js](https://github.com/commonmark/commonmark.js) used by Mattermost which includes Mattermost-specific features and some changes to the CommonMark spec. A non-exhaustive list of the changes are:\n1. Made some changes to how some block elements like list items are continued (or not) after line breaks.\n2. Added new features such as URL autolinking, at-mentions, hashtags, emojis, emoticons, and tables.\n3. Added some fields to the AST to support new node types for the features mentioned above as well as some others introduced via transforms in the Mattermost mobile app.\n4. Added integrated type definitions.\n\n---\n\n[![Build Status](https://github.com/commonmark/commonmark.js/workflows/CI%20tests/badge.svg)](https://github.com/commonmark/commonmark.js/actions)\n[![NPM version](https://img.shields.io/npm/v/commonmark.svg?style=flat)](https://www.npmjs.org/package/commonmark)\n\n\nCommonMark is a rationalized version of Markdown syntax,\nwith a [spec][the spec] and BSD-licensed reference\nimplementations in C and JavaScript.\n\n  [the spec]: http://spec.commonmark.org\n\nFor more information, see <http://commonmark.org>.\n\n(**Mattermost**) Note that we diverge from this spec in a few ways.\nThese will eventually be more thoroughly documented with our own\nversion of the spec, but that has not been done yet.\n\nThis repository contains the JavaScript reference implementation.\nIt provides a library with functions for parsing CommonMark\ndocuments to an abstract syntax tree (AST), manipulating the AST,\nand rendering the document to HTML or to an XML representation of the\nAST.\n\nTo play with this library without installing it, see\nthe live dingus at <http://try.commonmark.org/>.\n\nInstalling\n----------\n\nYou can install the library using `npm`:\n\n    npm install @mattermost/commonmark\n\nThis package includes the commonmark library and a\ncommand-line executable, `commonmark`.\n\nFor client-side use, you can use one of the single-file\ndistributions provided in the `dist/` subdirectory\nof the node installation (`node_modules/commonmark/dist/`).\nUse either `commonmark.js` (readable source) or\n`commonmark.min.js` (minimized source).\n\nAlternatively, `bower install commonmark` will install\nthe needed distribution files in\n`bower_components/commonmark/dist`.\n\nYou can also use the version hosted by unpkg: for example,\n<https://unpkg.com/commonmark@0.29.3/dist/commonmark.js>\nfor the unminimized version 0.29.3.\n\n\nBuilding\n--------\n\nMake sure to fetch dependencies with:\n\n    npm install\n\nTo run tests for the JavaScript library:\n\n    npm test\n\n(Running the tests will also rebuild distribution files in\n`dist/`.)\n\nTo run benchmarks against some other JavaScript converters:\n\n    make bench\n\nTo start an interactive dingus that you can use to try out\nthe library:\n\n    make dingus\n\nUsage\n-----\n\nInstead of converting Markdown directly to HTML, as most converters\ndo, `commonmark.js` parses Markdown to an AST (abstract syntax tree),\nand then renders this AST as HTML.  This opens up the possibility of\nmanipulating the AST between parsing and rendering.  For example, one\ncould transform emphasis into ALL CAPS.\n\nHere's a basic usage example:\n\n``` js\nvar reader = new commonmark.Parser();\nvar writer = new commonmark.HtmlRenderer();\nvar parsed = reader.parse(\"Hello *world*\"); // parsed is a 'Node' tree\n// transform parsed if you like...\nvar result = writer.render(parsed); // result is a String\n```\n\nThe constructors for `Parser` and `HtmlRenderer` take an optional\n`options` parameter:\n\n``` js\nvar reader = new commonmark.Parser({smart: true});\nvar writer = new commonmark.HtmlRenderer({sourcepos: true});\n```\n\n`Parser` currently supports the following:\n\n- `smart`:  if `true`, straight quotes will be made curly, `--` will\n  be changed to an en dash, `---` will be changed to an em dash, and\n  `...` will be changed to ellipses.\n\nBoth `HtmlRenderer` and `XmlRenderer` (see below) support these options:\n\n- `sourcepos`:  if `true`, source position information for block-level\n  elements will be rendered in the `data-sourcepos` attribute (for\n  HTML) or the `sourcepos` attribute (for XML).\n- `safe`: if `true`, raw HTML will not be passed through to HTML\n  output (it will be replaced by comments), and potentially unsafe\n  URLs in links and images (those beginning with `javascript:`,\n  `vbscript:`, `file:`, and with a few exceptions `data:`) will\n  be replaced with empty strings.\n- `softbreak`: specify raw string to be used for a softbreak.\n- `esc`: specify a function to be used to escape strings.  Its \n  argument is the string.\n\nFor example, to make soft breaks render as hard breaks in HTML:\n\n``` js\nvar writer = new commonmark.HtmlRenderer({softbreak: \"<br />\"});\n```\n\nTo make them render as spaces:\n\n``` js\nvar writer = new commonmark.HtmlRenderer({softbreak: \" \"});\n```\n\n`XmlRenderer` serves as an alternative to `HtmlRenderer` and\nwill produce an XML representation of the AST:\n\n``` js\nvar writer = new commonmark.XmlRenderer({sourcepos: true});\n```\n\nThe parser returns a Node.  The following public properties are defined\n(those marked \"read-only\" have only a getter, not a setter):\n\n- `type` (read-only):  a String, one of\n  `text`, `softbreak`, `linebreak`, `emph`, `strong`,\n  `html_inline`, `link`, `image`, `code`, `document`, `paragraph`,\n  `block_quote`, `item`, `list`, `heading`, `code_block`,\n  `html_block`, `thematic_break`.\n    - (**Mattermost**) This fork also adds `at_mention`,\n    `channel_link`, `emoji`, `hashtag`, `latex_inline`, \n    `mention_highlight`, `highlight_without_notification`, `search_highlight`, `table`, `table_row`,\n    `table_cell`, `edited_indicator`, `checkbox`.\n- `firstChild` (read-only):  a Node or null.\n- `lastChild` (read-only): a Node or null.\n- `next` (read-only): a Node or null.\n- `prev` (read-only): a Node or null.\n- `parent` (read-only): a Node or null.\n- `sourcepos` (read-only): an Array with the following form:\n  `[[startline, startcolumn], [endline, endcolumn]]`.\n- `isContainer` (read-only): `true` if the Node can contain other\n   Nodes as children.\n- `literal`: the literal String content of the node or null.\n- `destination`: link or image destination (String) or null.\n- `title`: link or image title (String) or null.\n- `info`: fenced code block info string (String) or null.\n- `level`: heading level (Number).\n- `listType`: a String, either `bullet` or `ordered`.\n- `listTight`: `true` if list is tight.\n- `listStart`: a Number, the starting number of an ordered list.\n- `listDelimiter`: a String, either `)` or `.` for an ordered list.\n- (**Mattermost**) `mentionName`: a String containing the\n   at-mentioned user/group or null.\n- (**Mattermost**) `channelName`: a String containing the linked\n   channel or null.\n- (**Mattermost**) `emojiName`: a String containing the name of\n   the emoji or null.\n- (**Mattermost**) `hashtag`: a String containing the hashtag text\n   or null.\n- (**Mattermost**) `latexCode`: a String containing the Latex content\n   of this Node or null.\n- (**Mattermost**) `isChecked`: `true` if this is a checked `checkbox`.\n- (**Mattermost**) `alignColumns`: if this is a `table_row`, an array of\n   Strings containing the alignment of each column.\n- (**Mattermost**) `isHeading`: if this is a `table_row` or `table_cell`,\n   whether or not this is part of the first row of the table.\n- (**Mattermost**) `align`: if this is a `table_cell`, the alignment of\n   this cell, either the empty string, `center`, `left`, or `right`.\n- `onEnter`, `onExit`: Strings, used only for `custom_block` or\n  `custom_inline`.\n\nNodes have the following public methods:\n\n- `appendChild(child)`:  Append a Node `child` to the end of the\n  Node's children.\n- `prependChild(child)`:  Prepend a Node `child` to the\n  beginning of the Node's children.\n- `unlink()`:  Remove the Node from the tree, severing its links\n  with siblings and parents, and closing up gaps as needed.\n- `insertAfter(sibling)`: Insert a Node `sibling` after the Node.\n- `insertBefore(sibling)`: Insert a Node `sibling` before the Node.\n- `walker()`: Returns a NodeWalker that can be used to iterate through\n  the Node tree rooted in the Node.\n\nThe NodeWalker returned by `walker()` has two methods:\n\n- `next()`: Returns an object with properties `entering` (a boolean,\n  which is `true` when we enter a Node from a parent or sibling, and\n  `false` when we reenter it from a child).  Returns `null` when\n  we have finished walking the tree.\n- `resumeAt(node, entering)`: Resets the iterator to resume at the\n  specified node and setting for `entering`.  (Normally this isn't\n  needed unless you do destructive updates to the Node tree.)\n\nHere is an example of the use of a NodeWalker to iterate through\nthe tree, making transformations.  This simple example converts\nthe contents of all `text` nodes to ALL CAPS:\n\n``` js\nvar walker = parsed.walker();\nvar event, node;\n\nwhile ((event = walker.next())) {\n  node = event.node;\n  if (event.entering && node.type === 'text') {\n    node.literal = node.literal.toUpperCase();\n  }\n}\n```\n\nThis more complex example converts emphasis to ALL CAPS:\n\n``` js\nvar walker = parsed.walker();\nvar event, node;\nvar inEmph = false;\n\nwhile ((event = walker.next())) {\n  node = event.node;\n  if (node.type === 'emph') {\n    if (event.entering) {\n      inEmph = true;\n    } else {\n      inEmph = false;\n      // add Emph node's children as siblings\n      while (node.firstChild) {\n        node.insertBefore(node.firstChild);\n      }\n      // remove the empty Emph node\n      node.unlink()\n    }\n  } else if (inEmph && node.type === 'text') {\n      node.literal = node.literal.toUpperCase();\n  }\n}\n```\n\nExercises for the reader:  write a transform to\n\n1. De-linkify a document, transforming links to regular text.\n2. Remove all raw HTML (`html_inline` and `html_block` nodes).\n3. Run fenced code blocks marked with a language name through\n   a syntax highlighting library, replacing them with an `HtmlBlock`\n   containing the highlighted code.\n4. Print warnings to the console for images without image\n   descriptions or titles.\n\nCommand line\n------------\n\nThe command line executable parses CommonMark input from the\nspecified files, or from stdin if no files are specified, and\nrenders the result to stdout as HTML.  If multiple input files\nare specified, their contents are concatenated before parsing,\nwith newlines between them.\n\n```\ncommonmark inputfile.md > outputfile.html\ncommonmark intro.md chapter1.md chapter2.md > book.html\n```\n\nUse `commonmark --help` to get a summary of options.\n\nA note on security\n------------------\n\nThe library does not attempt to sanitize link attributes or\nraw HTML.  If you use this library in applications that accept\nuntrusted user input, you should either enable the `safe` option\n(see above) or run the output through an HTML sanitizer to protect against\n[XSS attacks](http://en.wikipedia.org/wiki/Cross-site_scripting).\n\nPerformance\n-----------\n\nPerformance is excellent, roughly on par with `marked`.  On a benchmark\nconverting an 11 MB Markdown file built by concatenating the Markdown\nsources of all localizations of the first edition of\n[*Pro Git*](https://github.com/progit/progit/tree/master/en) by Scott\nChacon, the command-line tool, `commonmark` is just a bit slower than\nthe C program `discount`, roughly ten times faster than PHP Markdown,\na hundred times faster than Python Markdown, and more than\na thousand times faster than `Markdown.pl`.\n\nHere are some focused benchmarks of four JavaScript libraries\n(using versions available on 24 Jan 2015).  They test performance\non different kinds of Markdown texts.  (Most of these samples\nare taken from the\n[markdown-it](https://github.com/markdown-it/markdown-it)\nrepository.)  Results show a ratio of ops/second (higher is better)\nagainst showdown (which is usually the slowest implementation).\nVersions: showdown 1.3.0, marked 0.3.5, commonmark.js 0.22.1,\nmarkdown-it 5.0.2, node 5.3.0.  Hardware: 1.6GHz Intel Core i5, Mac OSX.\n\n| Sample                   |showdown  |commonmark|marked    |markdown-it|\n|--------------------------|---------:|---------:|---------:|----------:|\n|[README.md]               |         1|       3.6|       3.1|        3.9|\n|[block-bq-flat.md]        |         1|       4.8|       4.9|        4.9|\n|[block-bq-nested.md]      |         1|      11.9|       6.8|       10.7|\n|[block-code.md]           |         1|       4.7|      12.1|       23.0|\n|[block-fences.md]         |         1|       6.2|      21.2|       19.1|\n|[block-heading.md]        |         1|       5.0|       4.8|        6.5|\n|[block-hr.md]             |         1|       3.5|       3.3|        3.5|\n|[block-html.md]           |         1|       2.1|       0.9|        3.8|\n|[block-lheading.md]       |         1|       5.1|       4.9|        3.9|\n|[block-list-flat.md]      |         1|       4.7|       4.4|        7.4|\n|[block-list-nested.md]    |         1|       9.5|       7.8|       17.6|\n|[block-ref-flat.md]       |         1|       0.8|       0.5|        0.6|\n|[block-ref-nested.md]     |         1|       0.7|       0.6|        0.9|\n|[inline-autolink.md]      |         1|       2.3|       3.4|        2.5|\n|[inline-backticks.md]     |         1|       7.6|       5.3|        8.2|\n|[inline-em-flat.md]       |         1|       1.5|       1.1|        1.6|\n|[inline-em-nested.md]     |         1|       1.8|       1.3|        1.7|\n|[inline-em-worst.md]      |         1|       2.4|       1.5|        2.5|\n|[inline-entity.md]        |         1|       2.0|       3.8|        2.7|\n|[inline-escape.md]        |         1|       2.2|       1.4|        5.0|\n|[inline-html.md]          |         1|       2.9|       3.7|        3.3|\n|[inline-links-flat.md]    |         1|       2.7|       2.7|        2.2|\n|[inline-links-nested.md]  |         1|       1.4|       0.5|        0.5|\n|[inline-newlines.md]      |         1|       2.3|       2.0|        3.5|\n|[lorem1.md]               |         1|       6.0|       2.9|        3.3|\n|[rawtabs.md]              |         1|       4.6|       3.9|        6.7|\n\n[block-html.md]: bench/samples/block-html.md\n[inline-links-nested.md]: bench/samples/inline-links-nested.md\n[inline-em-flat.md]: bench/samples/inline-em-flat.md\n[inline-autolink.md]: bench/samples/inline-autolink.md\n[inline-html.md]: bench/samples/inline-html.md\n[rawtabs.md]: bench/samples/rawtabs.md\n[inline-escape.md]: bench/samples/inline-escape.md\n[inline-em-worst.md]: bench/samples/inline-em-worst.md\n[block-list-nested.md]: bench/samples/block-list-nested.md\n[block-bq-nested.md]: bench/samples/block-bq-nested.md\n[block-bq-flat.md]: bench/samples/block-bq-flat.md\n[inline-newlines.md]: bench/samples/inline-newlines.md\n[block-ref-nested.md]: bench/samples/block-ref-nested.md\n[block-fences.md]: bench/samples/block-fences.md\n[lorem1.md]: bench/samples/lorem1.md\n[README.md]: bench/samples/README.md\n[inline-links-flat.md]: bench/samples/inline-links-flat.md\n[block-heading.md]: bench/samples/block-heading.md\n[inline-em-nested.md]: bench/samples/inline-em-nested.md\n[inline-entity.md]: bench/samples/inline-entity.md\n[block-list-flat.md]: bench/samples/block-list-flat.md\n[block-hr.md]: bench/samples/block-hr.md\n[block-lheading.md]: bench/samples/block-lheading.md\n[block-code.md]: bench/samples/block-code.md\n[inline-backticks.md]: bench/samples/inline-backticks.md\n[block-ref-flat.md]: bench/samples/block-ref-flat.md\n\nTo generate this table:\n\n    make bench-detailed\n\nAuthors\n-------\n\nJohn MacFarlane wrote the first version of the JavaScript\nimplementation.  The block parsing algorithm was worked out together\nwith David Greenspan.  Kārlis Gaņģis helped work out a better parsing\nalgorithm for links and emphasis, eliminating several worst-case\nperformance issues.  Vitaly Puzrin has offered much good advice\nabout optimization and other issues.\n","readmeFilename":"README.md"}