57 | 57 |
root = @root or Fileder @store
|
58 | 58 |
browser = Browser root, fileder.path, facet.name
|
59 | 59 |
|
60 | |
scripts = "
|
61 | |
<script type=\"text/javascript\" src=\"//cdnjs.cloudflare.com/ajax/libs/svg.js/2.6.6/svg.min.js\"></script>
|
62 | |
<script type=\"text/javascript\" src=\"/static/fengari-web/:text/javascript\"></script>
|
63 | |
<script type=\"text/lua\" src=\"/static/mmm/:text/lua\"></script>
|
64 | |
<script type=\"text/lua\">
|
65 | |
require 'mmm'
|
66 | |
on_load = on_load or {}
|
67 | |
table.insert(on_load, function()
|
68 | |
local path = #{string.format '%q', fileder.path}
|
69 | |
local facet = #{string.format '%q', facet.name}
|
70 | |
local browser = require 'mmm.mmmfs.browser'
|
71 | |
local fileder = require 'mmm.mmmfs.fileder'
|
72 | |
local web = require 'mmm.mmmfs.stores.web'
|
73 | |
|
74 | |
local store = web.WebStore({ verbose = true })
|
75 | |
local root = fileder.Fileder(store, store:get_index(nil, -1))
|
76 | |
|
77 | |
local err_and_trace = function (msg) return debug.traceback(msg, 2) end
|
78 | |
local ok, browser = xpcall(browser.Browser, err_and_trace, root, path, facet, true)
|
79 | |
if not ok then error(browser) end
|
80 | |
end)
|
81 | |
</script>"
|
82 | |
convert 'mmm/dom+noview', 'text/html', scripts .. browser\todom!, fileder, facet.name
|
|
60 |
convert 'mmm/dom+interactive', 'text/html', browser\todom!, fileder, facet.name
|
83 | 61 |
|
84 | 62 |
handle_debug: (fileder, facet) =>
|
85 | 63 |
debugger = MermaidDebugger!
|