Add NumericInputWidget for use with Buefy themes

uses a Vue.js component for better logic encapsulation
This commit is contained in:
Lance Edgar 2019-06-28 13:06:43 -05:00
parent 2abe589ef6
commit 3a53ffcc23
4 changed files with 66 additions and 0 deletions

View file

@ -0,0 +1,12 @@
<div tal:define="name name|field.name;
css_class css_class|field.widget.css_class;
oid oid|field.oid;
style style|field.widget.style;
vmodel vmodel|'field_model_' + name;
allow_enter allow_enter|field.widget.allow_enter;"
tal:omit-tag="">
<numeric-input name="${name}"
v-model="${vmodel}"
tal:attributes=":allow-enter 'true' if allow_enter else 'false';">
</numeric-input>
</div>

View file

@ -293,8 +293,12 @@
${self.buefy()}
${self.fontawesome()}
## some commonly-useful logic for detecting (non-)numeric input
${h.javascript_link(request.static_url('tailbone:static/js/numeric.js') + '?ver={}'.format(tailbone.__version__))}
## Tailbone / Buefy stuff
${h.javascript_link(request.static_url('tailbone:static/js/tailbone.buefy.datepicker.js') + '?ver={}'.format(tailbone.__version__))}
${h.javascript_link(request.static_url('tailbone:static/js/tailbone.buefy.numericinput.js') + '?ver={}'.format(tailbone.__version__))}
${h.javascript_link(request.static_url('tailbone:static/js/tailbone.buefy.oncebutton.js') + '?ver={}'.format(tailbone.__version__))}
${h.javascript_link(request.static_url('tailbone:static/js/tailbone.buefy.timepicker.js') + '?ver={}'.format(tailbone.__version__))}
${h.javascript_link(request.static_url('tailbone:static/js/tailbone.buefy.grid.js') + '?ver={}'.format(tailbone.__version__))}