aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authors-ol <s-ol@users.noreply.github.com>2019-10-24 17:51:37 +0000
committers-ol <s-ol@users.noreply.github.com>2019-10-24 17:51:37 +0000
commit6ce64806736e8a043ba639eccd51896d6d09023c (patch)
tree11d008e864cb18fefca7f00fd63c537c80099006
parentadd ba_log entry 2019-10-15 (diff)
downloadmmm-6ce64806736e8a043ba639eccd51896d6d09023c.tar.gz
mmm-6ce64806736e8a043ba639eccd51896d6d09023c.zip
clean up JS deps for static builds
-rw-r--r--build/server.moon11
-rw-r--r--mmm/highlighting.moon11
-rw-r--r--mmm/mmmfs/browser.moon16
-rw-r--r--mmm/mmmfs/layout.moon5
4 files changed, 23 insertions, 20 deletions
diff --git a/build/server.moon b/build/server.moon
index aa7bf50..35cc82e 100644
--- a/build/server.moon
+++ b/build/server.moon
@@ -60,7 +60,16 @@ class Server
root = Fileder @store
BROWSER = Browser root, path, facet.name
- render BROWSER\todom!, fileder, noview: true, scripts: "
+
+ deps = [[
+ <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/svg.js/2.6.6/svg.min.js"></script>
+ <script type="text/javascript" src="//unpkg.com/marked@0.7.0/marked.min.js"></script>
+ <script type="text/javascript" src="/static/fengari-web/:text/javascript"></script>
+ <script type="text/lua" src="/static/mmm/:text/lua"></script>
+ <script type="text/lua">require 'mmm'</script>
+ ]]
+
+ render BROWSER\todom!, fileder, noview: true, scripts: deps .. "
<script type=\"text/lua\">
on_load = on_load or {}
table.insert(on_load, function()
diff --git a/mmm/highlighting.moon b/mmm/highlighting.moon
index 04ff603..e5082fa 100644
--- a/mmm/highlighting.moon
+++ b/mmm/highlighting.moon
@@ -1,15 +1,18 @@
import code from require 'mmm.dom'
-local highlight
trim = (str) -> str\match '^ *(..-) *$'
-if MODE == 'SERVER'
- highlight = (lang, str) ->
+highlight = if MODE == 'SERVER'
+ (lang, str) ->
assert str, 'no string to highlight'
code (trim str), class: "hljs lang-#{lang}"
else
- highlight = (lang, str) ->
+ (lang, str) ->
assert str, 'no string to highlight'
+
+ if not window.hljs\getLanguage lang
+ lang = 'markdown'
+
result = window.hljs\highlight lang, (trim str), true
with code class: "hljs lang-#{lang}"
.innerHTML = result.value
diff --git a/mmm/mmmfs/browser.moon b/mmm/mmmfs/browser.moon
index 2287c4c..ffaefc0 100644
--- a/mmm/mmmfs/browser.moon
+++ b/mmm/mmmfs/browser.moon
@@ -13,20 +13,16 @@ keep = (var) ->
last
code_cast = (lang) ->
+
+casts = {
{
- inp: "text/#{lang}.*",
+ inp: 'text/.*',
out: 'mmm/dom',
cost: 0
- transform: (val) => languages[lang] val
+ transform: (val) =>
+ lang = @from\match 'text/(.*)'
+ languages[lang] val
}
-
-casts = {
- code_cast 'javascript'
- code_cast 'moonscript'
- code_cast 'lua'
- code_cast 'markdown'
- code_cast 'html'
- code_cast 'css'
{
inp: 'URL.*'
out: 'mmm/dom'
diff --git a/mmm/mmmfs/layout.moon b/mmm/mmmfs/layout.moon
index 275aec3..7a1774d 100644
--- a/mmm/mmmfs/layout.moon
+++ b/mmm/mmmfs/layout.moon
@@ -144,12 +144,7 @@ render = (content, fileder, opts={}) ->
"
buf ..= [[
<script type="text/javascript" src="/static/highlight-pack/:text/javascript"></script>
- <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/marked/0.5.1/marked.min.js"></script>
- <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/svg.js/2.6.6/svg.min.js"></script>
<script type="text/javascript" src="//platform.twitter.com/widgets.js" charset="utf-8"></script>
- <script type="text/javascript" src="/static/fengari-web/:text/javascript"></script>
- <script type="text/lua" src="/static/mmm/:text/lua"></script>
- <script type="text/lua">require 'mmm'</script>
]]
buf ..= opts.scripts