7 Commits

  1. 17
      CHANGELOG.md
  2. 9
      assets/css/_markdown.scss
  3. 12
      assets/css/app.scss
  4. 156
      assets/package-lock.json
  5. 3
      lib/mirage/markdown.ex
  6. 2
      lib/mirage_web/templates/note/_note.html.eex
  7. 2
      lib/mirage_web/templates/topic/show.html.eex
  8. 2
      mix.exs
  9. 4
      mix.lock

17
CHANGELOG.md

@ -5,6 +5,23 @@ See [Conventional Commits](Https://conventionalcommits.org) for commit guideline
<!-- changelog -->
## [v0.40.0](https://git.inhji.de/inhji/mirage/compare/v0.39.1...v0.40.0) (2021-02-17)
### Features:
* style inline code-blocks
* add footnote support
### Bug Fixes:
* pre and blockquote styles
* wrong tag name for tag show
## [v0.39.1](https://git.inhji.de/inhji/mirage/compare/v0.39.0...v0.39.1) (2021-02-16)

9
assets/css/_markdown.scss

@ -77,7 +77,7 @@
blockquote, pre {
padding: 1rem;
@include color-assign(background-color, surface);
@include color-assign(background-color, surface-var);
margin-bottom: 1rem;
}
@ -87,6 +87,7 @@
font-style: italic;
&:after {
@include color-assign(color, primary);
position: absolute;
content: "";
font-size: 5rem;
@ -98,5 +99,11 @@
pre {
overflow: auto;
@include color-assign(background-color, surface-dark);
}
code.inline {
background-color: var(--color-surface-var);
padding: 3px;
}
}

12
assets/css/app.scss

@ -12,6 +12,7 @@ $colors: (
light: (
surface: material-color('grey', '50'),
surface-var: material-color('grey', '300'),
surface-dark: material-color('grey', '800'),
on-surface: material-color('grey', '900'),
background: material-color('grey', '200'),
primary: $primary,
@ -24,6 +25,7 @@ $colors: (
dark: (
surface: material-color('blue-grey', '800'),
surface-var: material-color('blue-grey', '800'),
surface-dark: material-color('grey', '800'),
on-surface: material-color('grey', '50'),
background: material-color('blue-grey', '900'),
primary: $primary,
@ -280,10 +282,10 @@ article {
}
header {
border-bottom: 1px solid $border-base;
@include color-assign(border-color, surface-var);
@include color-assign(background, surface);
// border-bottom: 1px solid $border-base;
// @include color-assign(border-color, surface-var);
@include color-assign(background, surface);
.title {
font-family: $font-heading;
margin-bottom: 0;
@ -291,8 +293,8 @@ article {
}
footer {
border-top: 1px solid $border-base;
@include color-assign(border-color, surface-var);
// border-top: 1px solid $border-base;
// @include color-assign(border-color, surface-var);
}
&:last-child {

156
assets/package-lock.json

@ -1275,9 +1275,9 @@
}
},
"node_modules/@codemirror/commands": {
"version": "0.17.2",
"resolved": "https://registry.npmjs.org/@codemirror/commands/-/commands-0.17.2.tgz",
"integrity": "sha512-FT2wMrf6Jtrbmb0WqXaAO0B7BvjmzEmsJwZSS46UiC8S5/asXA7hjaFdB9hZUDxtuZ/bsVScvKUVoq7vzXxT7g==",
"version": "0.17.3",
"resolved": "https://registry.npmjs.org/@codemirror/commands/-/commands-0.17.3.tgz",
"integrity": "sha512-Y2CF0TAEG356iHQGZx4O9ECbh0j96W3yw/cBUHkFN0nXamwSQehAedl/VXEkVt5uykVYVO+cfE58m4OGyvsrsA==",
"dependencies": {
"@codemirror/language": "^0.17.0",
"@codemirror/matchbrackets": "^0.17.0",
@ -1370,9 +1370,9 @@
}
},
"node_modules/@codemirror/lang-javascript": {
"version": "0.17.1",
"resolved": "https://registry.npmjs.org/@codemirror/lang-javascript/-/lang-javascript-0.17.1.tgz",
"integrity": "sha512-+48Yl+1WHvTnPqIjaKw5Yvif6v0lJLcvcIrgDjKt7An50gWPhZa18J0V4En4gFHybYbmIp9lsd1omvwh5EDcPg==",
"version": "0.17.2",
"resolved": "https://registry.npmjs.org/@codemirror/lang-javascript/-/lang-javascript-0.17.2.tgz",
"integrity": "sha512-bVXHEqf8GjPM1uv/BdZqpP7K3CFr8M7FDXDGtACQNbsq312JY7IbPqHZtbaVklMLl3wQMtaO9sS1czw2B86q9g==",
"dependencies": {
"@codemirror/autocomplete": "^0.17.0",
"@codemirror/highlight": "^0.17.0",
@ -1505,9 +1505,9 @@
}
},
"node_modules/@codemirror/view": {
"version": "0.17.7",
"resolved": "https://registry.npmjs.org/@codemirror/view/-/view-0.17.7.tgz",
"integrity": "sha512-OK+eNbcNXdlam7epFG5p5caH+3OoOlcRHy5S954VDUjOlUEMFUtwWjHa9WqaKEGvFwIgsG3AQQVstRQtyexRuQ==",
"version": "0.17.8",
"resolved": "https://registry.npmjs.org/@codemirror/view/-/view-0.17.8.tgz",
"integrity": "sha512-zX685PnZyFT6JCoMJUYj67sMGO3dk0EANWVSOFc2FSFHpZDsOxKohehnZ4EO+uIXF+nb9Q4jdZFdaaVg1aMOcw==",
"dependencies": {
"@codemirror/rangeset": "^0.17.0",
"@codemirror/state": "^0.17.0",
@ -1612,9 +1612,9 @@
"dev": true
},
"node_modules/@types/node": {
"version": "14.14.26",
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.26.tgz",
"integrity": "sha512-skWxepWOs+VArEBWd2S/VR3wUavioIIx9/HzW+UJiIjtwa6+kNXdsOeq7FfxDXf56hIcL0ieo2brwMgBJ1+lhw==",
"version": "14.14.28",
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.28.tgz",
"integrity": "sha512-lg55ArB+ZiHHbBBttLpzD07akz0QPrZgUODNakeC09i62dnrywr9mFErHuaPlB6I7z+sEbK+IYmplahvplCj2g==",
"dev": true
},
"node_modules/@types/q": {
@ -2151,9 +2151,9 @@
}
},
"node_modules/caniuse-lite": {
"version": "1.0.30001185",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001185.tgz",
"integrity": "sha512-Fpi4kVNtNvJ15H0F6vwmXtb3tukv3Zg3qhKkOGUq7KJ1J6b9kf4dnNgtEAFXhRsJo0gNj9W60+wBvn0JcTvdTg==",
"version": "1.0.30001187",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001187.tgz",
"integrity": "sha512-w7/EP1JRZ9552CyrThUnay2RkZ1DXxKe/Q2swTC4+LElLh9RRYrL1Z+27LlakB8kzY0fSmHw9mc7XYDUKAKWMA==",
"dev": true
},
"node_modules/chalk": {
@ -3055,9 +3055,9 @@
"dev": true
},
"node_modules/electron-to-chromium": {
"version": "1.3.663",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.663.tgz",
"integrity": "sha512-xkVkzHj6k3oRRGlmdgUCCLSLhtFYHDCTH7SeK+LJdJjnsLcrdbpr8EYmfMQhez3V/KPO5UScSpzQ0feYX6Qoyw==",
"version": "1.3.667",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.667.tgz",
"integrity": "sha512-Ot1pPtAVb5nd7jeVF651zmfLFilRVFomlDzwXmdlWe5jyzOGa6mVsQ06XnAurT7wWfg5VEIY+LopbAdD/bpo5w==",
"dev": true
},
"node_modules/emojis-list": {
@ -4127,17 +4127,17 @@
}
},
"node_modules/lezer-javascript": {
"version": "0.13.2",
"resolved": "https://registry.npmjs.org/lezer-javascript/-/lezer-javascript-0.13.2.tgz",
"integrity": "sha512-88NBkJLeohyyvGVRh8LtvTwoh5V88XoK9plFNnJnByIu7UQD4zmgvX631Sw0XDuwK1C1ePhn3inRa0xAM0eujA==",
"version": "0.13.3",
"resolved": "https://registry.npmjs.org/lezer-javascript/-/lezer-javascript-0.13.3.tgz",
"integrity": "sha512-YvTUZUZUk69nt6flmUaPuc/9yynsPqhbpqY6GXZK/8EH9/4X7B2AmMc86hk2yBGbTMrorou8ouV7neoDRk9khA==",
"dependencies": {
"lezer": "^0.13.0"
}
},
"node_modules/lezer-markdown": {
"version": "0.14.1",
"resolved": "https://registry.npmjs.org/lezer-markdown/-/lezer-markdown-0.14.1.tgz",
"integrity": "sha512-KZ3qLr6IBL23/tYsxriKHIk1K2zVEj+WJlNuSdiqFTKpm6peZjIUSNytmzQAlVDy87TGjpmcjPZL7CpdjXUSfQ==",
"version": "0.14.2",
"resolved": "https://registry.npmjs.org/lezer-markdown/-/lezer-markdown-0.14.2.tgz",
"integrity": "sha512-Ky/z8QNtNMLvtq9oyKwnQubRYyrPE7UWZG28BxUD4JlHYXswqN7h5WgKIoZ+YZW0BPheandNayp2d9MBB4RYHA==",
"dependencies": {
"lezer-html": "^0.13.0",
"lezer-tree": "^0.13.0"
@ -4284,9 +4284,9 @@
}
},
"node_modules/mime": {
"version": "2.5.0",
"resolved": "https://registry.npmjs.org/mime/-/mime-2.5.0.tgz",
"integrity": "sha512-ft3WayFSFUVBuJj7BMLKAQcSlItKtfjsKDDsii3rqFDAZ7t11zRe8ASw/GlmivGwVUYtwkQrxiGGpL6gFvB0ag==",
"version": "2.5.2",
"resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz",
"integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==",
"dev": true,
"bin": {
"mime": "cli.js"
@ -4326,9 +4326,9 @@
}
},
"node_modules/mini-css-extract-plugin": {
"version": "1.3.6",
"resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-1.3.6.tgz",
"integrity": "sha512-t86rLnySRQgN2+58gAIARTEtnClLNZoC99shNrvQ960V/wB9n50AUKJyqly76/s4fT0zwaLFIDFZAW7aK25pvg==",
"version": "1.3.7",
"resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-1.3.7.tgz",
"integrity": "sha512-NDyOUqdfKVIfWTludTcZ6JDOMsIdWgyTEECYbfvZszPpkMRyQLvukqtLr92tfukPQxVZNCKb8TkOilFBvS5RIw==",
"dev": true,
"dependencies": {
"loader-utils": "^2.0.0",
@ -7173,9 +7173,9 @@
}
},
"node_modules/terser": {
"version": "5.5.1",
"resolved": "https://registry.npmjs.org/terser/-/terser-5.5.1.tgz",
"integrity": "sha512-6VGWZNVP2KTUcltUQJ25TtNjx/XgdDsBDKGt8nN0MpydU36LmbPPcMBd2kmtZNNGVVDLg44k7GKeHHj+4zPIBQ==",
"version": "5.6.0",
"resolved": "https://registry.npmjs.org/terser/-/terser-5.6.0.tgz",
"integrity": "sha512-vyqLMoqadC1uR0vywqOZzriDYzgEkNJFK4q9GeyOBHIbiECHiWLKcWfbQWAUaPfxkjDhapSlZB9f7fkMrvkVjA==",
"dev": true,
"dependencies": {
"commander": "^2.20.0",
@ -7463,9 +7463,9 @@
}
},
"node_modules/webpack": {
"version": "5.21.2",
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.21.2.tgz",
"integrity": "sha512-xHflCenx+AM4uWKX71SWHhxml5aMXdy2tu/vdi4lClm7PADKxlyDAFFN1rEFzNV0MAoPpHtBeJnl/+K6F4QBPg==",
"version": "5.22.0",
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.22.0.tgz",
"integrity": "sha512-xqlb6r9RUXda/d9iA6P7YRTP1ChWeP50TEESKMMNIg0u8/Rb66zN9YJJO7oYgJTRyFyYi43NVC5feG45FSO1vQ==",
"dev": true,
"dependencies": {
"@types/eslint-scope": "^3.7.0",
@ -7659,9 +7659,9 @@
}
},
"node_modules/webpack-cli/node_modules/commander": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-7.0.0.tgz",
"integrity": "sha512-ovx/7NkTrnPuIV8sqk/GjUIIM1+iUQeqA3ye2VNpq9sVoiZsooObWlQy+OPWGI17GDaEoybuAGJm6U8yC077BA==",
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-7.1.0.tgz",
"integrity": "sha512-pRxBna3MJe6HKnBGsDyMv8ETbptw3axEdYHoqNh7gu5oDcew8fs0xnivZGm06Ogk8zGAJ9VX+OPEr2GXEQK4dg==",
"dev": true,
"engines": {
"node": ">= 10"
@ -8836,9 +8836,9 @@
}
},
"@codemirror/commands": {
"version": "0.17.2",
"resolved": "https://registry.npmjs.org/@codemirror/commands/-/commands-0.17.2.tgz",
"integrity": "sha512-FT2wMrf6Jtrbmb0WqXaAO0B7BvjmzEmsJwZSS46UiC8S5/asXA7hjaFdB9hZUDxtuZ/bsVScvKUVoq7vzXxT7g==",
"version": "0.17.3",
"resolved": "https://registry.npmjs.org/@codemirror/commands/-/commands-0.17.3.tgz",
"integrity": "sha512-Y2CF0TAEG356iHQGZx4O9ECbh0j96W3yw/cBUHkFN0nXamwSQehAedl/VXEkVt5uykVYVO+cfE58m4OGyvsrsA==",
"requires": {
"@codemirror/language": "^0.17.0",
"@codemirror/matchbrackets": "^0.17.0",
@ -8931,9 +8931,9 @@
}
},
"@codemirror/lang-javascript": {
"version": "0.17.1",
"resolved": "https://registry.npmjs.org/@codemirror/lang-javascript/-/lang-javascript-0.17.1.tgz",
"integrity": "sha512-+48Yl+1WHvTnPqIjaKw5Yvif6v0lJLcvcIrgDjKt7An50gWPhZa18J0V4En4gFHybYbmIp9lsd1omvwh5EDcPg==",
"version": "0.17.2",
"resolved": "https://registry.npmjs.org/@codemirror/lang-javascript/-/lang-javascript-0.17.2.tgz",
"integrity": "sha512-bVXHEqf8GjPM1uv/BdZqpP7K3CFr8M7FDXDGtACQNbsq312JY7IbPqHZtbaVklMLl3wQMtaO9sS1czw2B86q9g==",
"requires": {
"@codemirror/autocomplete": "^0.17.0",
"@codemirror/highlight": "^0.17.0",
@ -9066,9 +9066,9 @@
}
},
"@codemirror/view": {
"version": "0.17.7",
"resolved": "https://registry.npmjs.org/@codemirror/view/-/view-0.17.7.tgz",
"integrity": "sha512-OK+eNbcNXdlam7epFG5p5caH+3OoOlcRHy5S954VDUjOlUEMFUtwWjHa9WqaKEGvFwIgsG3AQQVstRQtyexRuQ==",
"version": "0.17.8",
"resolved": "https://registry.npmjs.org/@codemirror/view/-/view-0.17.8.tgz",
"integrity": "sha512-zX685PnZyFT6JCoMJUYj67sMGO3dk0EANWVSOFc2FSFHpZDsOxKohehnZ4EO+uIXF+nb9Q4jdZFdaaVg1aMOcw==",
"requires": {
"@codemirror/rangeset": "^0.17.0",
"@codemirror/state": "^0.17.0",
@ -9158,9 +9158,9 @@
"dev": true
},
"@types/node": {
"version": "14.14.26",
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.26.tgz",
"integrity": "sha512-skWxepWOs+VArEBWd2S/VR3wUavioIIx9/HzW+UJiIjtwa6+kNXdsOeq7FfxDXf56hIcL0ieo2brwMgBJ1+lhw==",
"version": "14.14.28",
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.28.tgz",
"integrity": "sha512-lg55ArB+ZiHHbBBttLpzD07akz0QPrZgUODNakeC09i62dnrywr9mFErHuaPlB6I7z+sEbK+IYmplahvplCj2g==",
"dev": true
},
"@types/q": {
@ -9605,9 +9605,9 @@
}
},
"caniuse-lite": {
"version": "1.0.30001185",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001185.tgz",
"integrity": "sha512-Fpi4kVNtNvJ15H0F6vwmXtb3tukv3Zg3qhKkOGUq7KJ1J6b9kf4dnNgtEAFXhRsJo0gNj9W60+wBvn0JcTvdTg==",
"version": "1.0.30001187",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001187.tgz",
"integrity": "sha512-w7/EP1JRZ9552CyrThUnay2RkZ1DXxKe/Q2swTC4+LElLh9RRYrL1Z+27LlakB8kzY0fSmHw9mc7XYDUKAKWMA==",
"dev": true
},
"chalk": {
@ -10303,9 +10303,9 @@
"dev": true
},
"electron-to-chromium": {
"version": "1.3.663",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.663.tgz",
"integrity": "sha512-xkVkzHj6k3oRRGlmdgUCCLSLhtFYHDCTH7SeK+LJdJjnsLcrdbpr8EYmfMQhez3V/KPO5UScSpzQ0feYX6Qoyw==",
"version": "1.3.667",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.667.tgz",
"integrity": "sha512-Ot1pPtAVb5nd7jeVF651zmfLFilRVFomlDzwXmdlWe5jyzOGa6mVsQ06XnAurT7wWfg5VEIY+LopbAdD/bpo5w==",
"dev": true
},
"emojis-list": {
@ -11096,17 +11096,17 @@
}
},
"lezer-javascript": {
"version": "0.13.2",
"resolved": "https://registry.npmjs.org/lezer-javascript/-/lezer-javascript-0.13.2.tgz",
"integrity": "sha512-88NBkJLeohyyvGVRh8LtvTwoh5V88XoK9plFNnJnByIu7UQD4zmgvX631Sw0XDuwK1C1ePhn3inRa0xAM0eujA==",
"version": "0.13.3",
"resolved": "https://registry.npmjs.org/lezer-javascript/-/lezer-javascript-0.13.3.tgz",
"integrity": "sha512-YvTUZUZUk69nt6flmUaPuc/9yynsPqhbpqY6GXZK/8EH9/4X7B2AmMc86hk2yBGbTMrorou8ouV7neoDRk9khA==",
"requires": {
"lezer": "^0.13.0"
}
},
"lezer-markdown": {
"version": "0.14.1",
"resolved": "https://registry.npmjs.org/lezer-markdown/-/lezer-markdown-0.14.1.tgz",
"integrity": "sha512-KZ3qLr6IBL23/tYsxriKHIk1K2zVEj+WJlNuSdiqFTKpm6peZjIUSNytmzQAlVDy87TGjpmcjPZL7CpdjXUSfQ==",
"version": "0.14.2",
"resolved": "https://registry.npmjs.org/lezer-markdown/-/lezer-markdown-0.14.2.tgz",
"integrity": "sha512-Ky/z8QNtNMLvtq9oyKwnQubRYyrPE7UWZG28BxUD4JlHYXswqN7h5WgKIoZ+YZW0BPheandNayp2d9MBB4RYHA==",
"requires": {
"lezer-html": "^0.13.0",
"lezer-tree": "^0.13.0"
@ -11227,9 +11227,9 @@
}
},
"mime": {
"version": "2.5.0",
"resolved": "https://registry.npmjs.org/mime/-/mime-2.5.0.tgz",
"integrity": "sha512-ft3WayFSFUVBuJj7BMLKAQcSlItKtfjsKDDsii3rqFDAZ7t11zRe8ASw/GlmivGwVUYtwkQrxiGGpL6gFvB0ag==",
"version": "2.5.2",
"resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz",
"integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==",
"dev": true
},
"mime-db": {
@ -11254,9 +11254,9 @@
"dev": true
},
"mini-css-extract-plugin": {
"version": "1.3.6",
"resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-1.3.6.tgz",
"integrity": "sha512-t86rLnySRQgN2+58gAIARTEtnClLNZoC99shNrvQ960V/wB9n50AUKJyqly76/s4fT0zwaLFIDFZAW7aK25pvg==",
"version": "1.3.7",
"resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-1.3.7.tgz",
"integrity": "sha512-NDyOUqdfKVIfWTludTcZ6JDOMsIdWgyTEECYbfvZszPpkMRyQLvukqtLr92tfukPQxVZNCKb8TkOilFBvS5RIw==",
"dev": true,
"requires": {
"loader-utils": "^2.0.0",
@ -13374,9 +13374,9 @@
}
},
"terser": {
"version": "5.5.1",
"resolved": "https://registry.npmjs.org/terser/-/terser-5.5.1.tgz",
"integrity": "sha512-6VGWZNVP2KTUcltUQJ25TtNjx/XgdDsBDKGt8nN0MpydU36LmbPPcMBd2kmtZNNGVVDLg44k7GKeHHj+4zPIBQ==",
"version": "5.6.0",
"resolved": "https://registry.npmjs.org/terser/-/terser-5.6.0.tgz",
"integrity": "sha512-vyqLMoqadC1uR0vywqOZzriDYzgEkNJFK4q9GeyOBHIbiECHiWLKcWfbQWAUaPfxkjDhapSlZB9f7fkMrvkVjA==",
"dev": true,
"requires": {
"commander": "^2.20.0",
@ -13604,9 +13604,9 @@
}
},
"webpack": {
"version": "5.21.2",
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.21.2.tgz",
"integrity": "sha512-xHflCenx+AM4uWKX71SWHhxml5aMXdy2tu/vdi4lClm7PADKxlyDAFFN1rEFzNV0MAoPpHtBeJnl/+K6F4QBPg==",
"version": "5.22.0",
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.22.0.tgz",
"integrity": "sha512-xqlb6r9RUXda/d9iA6P7YRTP1ChWeP50TEESKMMNIg0u8/Rb66zN9YJJO7oYgJTRyFyYi43NVC5feG45FSO1vQ==",
"dev": true,
"requires": {
"@types/eslint-scope": "^3.7.0",
@ -13760,9 +13760,9 @@
},
"dependencies": {
"commander": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-7.0.0.tgz",
"integrity": "sha512-ovx/7NkTrnPuIV8sqk/GjUIIM1+iUQeqA3ye2VNpq9sVoiZsooObWlQy+OPWGI17GDaEoybuAGJm6U8yC077BA==",
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-7.1.0.tgz",
"integrity": "sha512-pRxBna3MJe6HKnBGsDyMv8ETbptw3axEdYHoqNh7gu5oDcew8fs0xnivZGm06Ogk8zGAJ9VX+OPEr2GXEQK4dg==",
"dev": true
}
}

3
lib/mirage/markdown.ex

@ -15,7 +15,8 @@ defmodule Mirage.Markdown do
def render(markdown) do
options = %Earmark.Options{
code_class_prefix: "lang- language-"
code_class_prefix: "lang- language-",
footnotes: true
}
markdown

2
lib/mirage_web/templates/note/_note.html.eex

@ -1,7 +1,7 @@
<article>
<%= link to: Routes.live_path(@conn, MirageWeb.ShowNoteLive, @note) do %>
<header class="width-full bg-content">
<header class="width-full">
<h2 class="title">
<span class="id"><%= "##{@note.id}" %></span> <%= @note.title %>
</h2>

2
lib/mirage_web/templates/topic/show.html.eex

@ -1,6 +1,6 @@
<header class="hero">
<h1>Topic <%= @topic.text %></h1>
</section>
</header>
<section>
<%= for note <- @topic.notes do %>

2
mix.exs

@ -1,7 +1,7 @@
defmodule Mirage.MixProject do
use Mix.Project
@version "0.39.1"
@version "0.40.0"
def project do
[

4
mix.lock

@ -13,7 +13,7 @@
"earmark": {:hex, :earmark, "1.4.13", "2c6ce9768fc9fdbf4046f457e207df6360ee6c91ee1ecb8e9a139f96a4289d91", [:mix], [{:earmark_parser, ">= 1.4.12", [hex: :earmark_parser, repo: "hexpm", optional: false]}], "hexpm", "a0cf3ed88ef2b1964df408889b5ecb886d1a048edde53497fc935ccd15af3403"},
"earmark_parser": {:hex, :earmark_parser, "1.4.12", "b245e875ec0a311a342320da0551da407d9d2b65d98f7a9597ae078615af3449", [:mix], [], "hexpm", "711e2cc4d64abb7d566d43f54b78f7dc129308a63bc103fbd88550d2174b3160"},
"ecto": {:hex, :ecto, "3.5.7", "f440a476bf1be361173a43a4a18f04a2fdf4e6fac5b0457f03d8686e55f13f7e", [:mix], [{:decimal, "~> 1.6 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "04c4e69d4f1cc2bb085aa760d50389ba8ae3003f80c112fbde87d57f5ed75d39"},
"ecto_psql_extras": {:hex, :ecto_psql_extras, "0.6.3", "2cc855c07144791e3dcab088b59057ea1675efe6f54e9e9c7d4a0cc87d5ae582", [:mix], [{:ecto_sql, "~> 3.4", [hex: :ecto_sql, repo: "hexpm", optional: false]}, {:postgrex, ">= 0.15.7", [hex: :postgrex, repo: "hexpm", optional: false]}, {:table_rex, "~> 3.0.0", [hex: :table_rex, repo: "hexpm", optional: false]}], "hexpm", "dd4914205ea0c5588639d7237abee9b0247b8ab38fa1930a205a5659483744b3"},
"ecto_psql_extras": {:hex, :ecto_psql_extras, "0.6.4", "5d19d933730cce072886ed5b1b46a49134f2d5d9fc6053927e07b796d18ddff5", [:mix], [{:ecto_sql, "~> 3.4", [hex: :ecto_sql, repo: "hexpm", optional: false]}, {:postgrex, ">= 0.15.7", [hex: :postgrex, repo: "hexpm", optional: false]}, {:table_rex, "~> 3.0.0", [hex: :table_rex, repo: "hexpm", optional: false]}], "hexpm", "81a10c4bdd399e1ca9b1f224512cdac1593d36319d1e4bf9691f12f153c798cf"},
"ecto_sql": {:hex, :ecto_sql, "3.5.4", "a9e292c40bd79fff88885f95f1ecd7b2516e09aa99c7dd0201aa84c54d2358e4", [:mix], [{:db_connection, "~> 2.2", [hex: :db_connection, repo: "hexpm", optional: false]}, {:ecto, "~> 3.5.0", [hex: :ecto, repo: "hexpm", optional: false]}, {:myxql, "~> 0.3.0 or ~> 0.4.0", [hex: :myxql, repo: "hexpm", optional: true]}, {:postgrex, "~> 0.15.0 or ~> 1.0", [hex: :postgrex, repo: "hexpm", optional: true]}, {:tds, "~> 2.1.1", [hex: :tds, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "1fff1a28a898d7bbef263f1f3ea425b04ba9f33816d843238c84eff883347343"},
"elixir_make": {:hex, :elixir_make, "0.6.2", "7dffacd77dec4c37b39af867cedaabb0b59f6a871f89722c25b28fcd4bd70530", [:mix], [], "hexpm", "03e49eadda22526a7e5279d53321d1cced6552f344ba4e03e619063de75348d9"},
"file_system": {:hex, :file_system, "0.2.10", "fb082005a9cd1711c05b5248710f8826b02d7d1784e7c3451f9c1231d4fc162d", [:mix], [], "hexpm", "41195edbfb562a593726eda3b3e8b103a309b733ad25f3d642ba49696bf715dc"},
@ -45,7 +45,7 @@
"phx_gen_auth": {:hex, :phx_gen_auth, "0.6.0", "4ffbfa5b34ad8178c3dfcb996fed776df425903595cbc8d56a9ae5bc53136810", [:mix], [{:phoenix, "~> 1.5.2", [hex: :phoenix, repo: "hexpm", optional: false]}], "hexpm", "9a801c0f0bc251d8d91d62cecba0ebb6a90b8580fa8843029d931d15164e6ad9"},
"plug": {:hex, :plug, "1.11.0", "f17217525597628298998bc3baed9f8ea1fa3f1160aa9871aee6df47a6e4d38e", [:mix], [{:mime, "~> 1.0", [hex: :mime, repo: "hexpm", optional: false]}, {:plug_crypto, "~> 1.1.1 or ~> 1.2", [hex: :plug_crypto, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "2d9c633f0499f9dc5c2fd069161af4e2e7756890b81adcbb2ceaa074e8308876"},
"plug_cowboy": {:hex, :plug_cowboy, "2.4.1", "779ba386c0915027f22e14a48919a9545714f849505fa15af2631a0d298abf0f", [:mix], [{:cowboy, "~> 2.7", [hex: :cowboy, repo: "hexpm", optional: false]}, {:cowboy_telemetry, "~> 0.3", [hex: :cowboy_telemetry, repo: "hexpm", optional: false]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "d72113b6dff7b37a7d9b2a5b68892808e3a9a752f2bf7e503240945385b70507"},
"plug_crypto": {:hex, :plug_crypto, "1.2.0", "1cb20793aa63a6c619dd18bb33d7a3aa94818e5fd39ad357051a67f26dfa2df6", [:mix], [], "hexpm", "a48b538ae8bf381ffac344520755f3007cc10bd8e90b240af98ea29b69683fc2"},
"plug_crypto": {:hex, :plug_crypto, "1.2.1", "5c854427528bf61d159855cedddffc0625e2228b5f30eff76d5a4de42d896ef4", [:mix], [], "hexpm", "6961c0e17febd9d0bfa89632d391d2545d2e0eb73768f5f50305a23961d8782c"},
"postgrex": {:hex, :postgrex, "0.15.8", "f5e782bbe5e8fa178d5e3cd1999c857dc48eda95f0a4d7f7bd92a50e84a0d491", [:mix], [{:connection, "~> 1.0", [hex: :connection, repo: "hexpm", optional: false]}, {:db_connection, "~> 2.1", [hex: :db_connection, repo: "hexpm", optional: false]}, {:decimal, "~> 1.5 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}], "hexpm", "698fbfacea34c4cf22c8281abeb5cf68d99628d541874f085520ab3b53d356fe"},
"ranch": {:hex, :ranch, "1.7.1", "6b1fab51b49196860b733a49c07604465a47bdb78aa10c1c16a3d199f7f8c881", [:rebar3], [], "hexpm", "451d8527787df716d99dc36162fca05934915db0b6141bbdac2ea8d3c7afc7d7"},
"site_encrypt": {:hex, :site_encrypt, "0.4.2", "354ca93a6c6ce84361c3fe4c30636087bb4f332242a5a8a34dd5c4a603156b67", [:mix], [{:castore, "~> 0.1", [hex: :castore, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}, {:jose, "~> 1.10", [hex: :jose, repo: "hexpm", optional: false]}, {:mint, "~> 1.1", [hex: :mint, repo: "hexpm", optional: false]}, {:nimble_options, "~> 0.3", [hex: :nimble_options, repo: "hexpm", optional: false]}, {:parent, "~> 0.11", [hex: :parent, repo: "hexpm", optional: false]}, {:phoenix, "~> 1.5", [hex: :phoenix, repo: "hexpm", optional: true]}, {:plug, "~> 1.7", [hex: :plug, repo: "hexpm", optional: true]}, {:plug_cowboy, "~> 2.2", [hex: :plug_cowboy, repo: "hexpm", optional: true]}, {:x509, "~> 0.3", [hex: :x509, repo: "hexpm", optional: false]}], "hexpm", "70bad64a47c738bb8784e6c99ab3e2fca6ae1ec5c8be9ac0e8e17b8f3a269762"},

Loading…
Cancel
Save