Refactory Buefy templates to use WholePage and ThisPage components

plus add `GridFilter.set_choices()` method
This commit is contained in:
Lance Edgar 2019-08-03 16:57:13 -05:00
parent c64fca852c
commit 1bb0330ab5
36 changed files with 806 additions and 613 deletions

View file

@ -6,9 +6,9 @@
<%def name="page_content()"></%def>
<%def name="render_this_page()">
<div style="display: flex; justify-content: space-between;">
<div style="display: flex;">
<div class="this-page-content">
<div class="this-page-content" style="flex-grow: 1;">
${self.page_content()}
</div>
@ -19,23 +19,15 @@
</div>
</%def>
<%def name="render_this_page_buefy()">
<%def name="render_this_page_template()">
<script type="text/x-template" id="this-page-template">
<div>
${self.render_this_page()}
</div>
</script>
<div id="this-page-app">
<this-page></this-page>
</div>
</%def>
<%def name="modify_this_page()">
## NOTE: if you override this, must use <script> tags
</%def>
<%def name="declare_page_vars()">
<%def name="declare_this_page_vars()">
<script type="text/javascript">
let ThisPage = {
@ -48,31 +40,32 @@
</script>
</%def>
<%def name="finalize_page_components()">
<%def name="modify_this_page_vars()">
## NOTE: if you override this, must use <script> tags
</%def>
<%def name="make_this_page_app()">
${self.declare_page_vars()}
${self.modify_this_page()}
${self.finalize_page_components()}
<%def name="finalize_this_page_vars()">
## NOTE: if you override this, must use <script> tags
</%def>
<%def name="make_this_page_component()">
${self.declare_this_page_vars()}
${self.modify_this_page_vars()}
${self.finalize_this_page_vars()}
<script type="text/javascript">
ThisPage.data = function() { return ThisPageData }
Vue.component('this-page', ThisPage)
new Vue({
el: '#this-page-app'
})
</script>
</%def>
% if use_buefy:
${self.render_this_page_buefy()}
${self.make_this_page_app()}
${self.render_this_page_template()}
${self.make_this_page_component()}
% else:
${self.render_this_page()}
% endif