engine2 1.0.8 → 1.0.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +3 -3
  3. data/app/actions.coffee +87 -50
  4. data/app/app.css +2 -1
  5. data/app/engine2.coffee +37 -19
  6. data/app/modal.coffee +8 -3
  7. data/bower.json +3 -2
  8. data/conf/message.yaml +3 -0
  9. data/conf/message_pl.yaml +5 -2
  10. data/config.coffee +16 -15
  11. data/engine2.gemspec +1 -1
  12. data/lib/engine2/action.rb +51 -23
  13. data/lib/engine2/action/array.rb +94 -1
  14. data/lib/engine2/action/decode.rb +29 -3
  15. data/lib/engine2/action/delete.rb +1 -2
  16. data/lib/engine2/action/infra.rb +5 -4
  17. data/lib/engine2/action/list.rb +70 -25
  18. data/lib/engine2/action/save.rb +0 -2
  19. data/lib/engine2/action_node.rb +2 -4
  20. data/lib/engine2/core.rb +30 -21
  21. data/lib/engine2/handler.rb +5 -5
  22. data/lib/engine2/model.rb +18 -9
  23. data/lib/engine2/models/Files.rb +2 -0
  24. data/lib/engine2/scheme.rb +1 -6
  25. data/lib/engine2/templates.rb +32 -6
  26. data/lib/engine2/type_info.rb +9 -5
  27. data/lib/engine2/version.rb +1 -1
  28. data/package.json +9 -8
  29. data/views/fields/checkbox_button.slim +6 -0
  30. data/views/fields/checkbox_buttons.slim +1 -1
  31. data/views/fields/list_mbuttons.slim +9 -0
  32. data/views/fields/list_mbuttons_opt.slim +11 -0
  33. data/views/fields/list_mselect.slim +12 -0
  34. data/views/fields/scaffold.slim +1 -1
  35. data/views/fields/typeahead_picker.slim +8 -5
  36. data/views/infra/inspect.slim +19 -16
  37. data/views/scaffold/fields.slim +3 -1
  38. data/views/scaffold/search.slim +2 -2
  39. data/views/scaffold/search_collapse.slim +2 -2
  40. data/views/scaffold/search_tabs.slim +2 -2
  41. data/views/search_fields/date.slim +20 -0
  42. data/views/search_fields/list_mbuttons.slim +12 -0
  43. data/views/search_fields/typeahead_picker.slim +4 -3
  44. metadata +11 -5
@@ -5,6 +5,8 @@ div
5
5
  .row
6
6
  e2-include template="field.render.template"
7
7
  .row
8
+ .col-sm-12 ng-if="::field.description"
9
+ small.text-muted ng-bind="::field.description"
8
10
  .col-sm-12
9
11
  small.text-danger ng-repeat="e in action.errors[f] track by $index" ng-bind="e"
10
- div ng-if="field.hr": hr
12
+ div ng-if="::field.hr": hr
@@ -5,8 +5,8 @@
5
5
  e2-include template="field.render.template"
6
6
 
7
7
  .btn-group.btn-group-sm.pull-right
8
- button.btn.btn-default ng-click="action.load_new()"
8
+ button.btn.btn-default ng-click="action.load_new()" ng-hide="::action.meta.disable_search_button"
9
9
  span ng-bind="::action.meta.loc.search"
10
10
  span.glyphicon.glyphicon-zoom-in<
11
- button.btn.btn-default ng-click="action.search_reset()"
11
+ button.btn.btn-default ng-click="action.search_reset()" title="Reset"
12
12
  span.glyphicon.glyphicon-asterisk
@@ -20,8 +20,8 @@
20
20
  e2-include template="field.render.template"
21
21
 
22
22
  .btn-group.btn-group-sm.pull-right
23
- button.btn.btn-default ng-click="action.load_new()"
23
+ button.btn.btn-default ng-click="action.load_new()" ng-hide="::action.meta.disable_search_button"
24
24
  span ng-bind="::action.meta.loc.search"
25
25
  span.glyphicon.glyphicon-zoom-in<
26
- button.btn.btn-default ng-click="action.search_reset()"
26
+ button.btn.btn-default ng-click="action.search_reset()" title="Reset"
27
27
  span.glyphicon.glyphicon-asterisk
@@ -9,8 +9,8 @@
9
9
  e2-include template="field.render.template"
10
10
 
11
11
  .btn-group.btn-group-sm.pull-right
12
- button.btn.btn-default ng-click="action.load_new()"
12
+ button.btn.btn-default ng-click="action.load_new()" ng-hide="::action.meta.disable_search_button"
13
13
  span ng-bind="::action.meta.loc.search"
14
14
  span.glyphicon.glyphicon-zoom-in<
15
- button.btn.btn-default ng-click="action.search_reset()"
15
+ button.btn.btn-default ng-click="action.search_reset()" title="Reset"
16
16
  span.glyphicon.glyphicon-asterisk
@@ -0,0 +1,20 @@
1
+ .col-lg-3.col-md-4.col-sm-4 ng-init="value = value || {}"
2
+ .form-group
3
+ .input-group.input-group-sm
4
+ input.btn.btn-default [
5
+ type="text"
6
+ class="form-control"
7
+ placeholder="{{::field.loc}}"
8
+ ng-model="value.at"
9
+ xng-change="action.search_field_change(f)"
10
+ data-date-format="{{::field.render.format}}"
11
+ data-animation="{{::field.render.animation}}"
12
+ bs-datepicker=""
13
+ e2-datepicker=""
14
+ e2-model-format="{{::field.render.model_format}}"
15
+ data-autoclose="1"
16
+ e2-search-field=""
17
+ ]
18
+ .input-group-btn
19
+ a.btn.btn-default data-toggle="datepicker": span.glyphicon.glyphicon-calendar
20
+ a.btn.btn-default ng-disabled="!action.query.search[f]" ng-click="value.at = null; action.query.search[f] = null; action.search_field_change(f)": span.glyphicon.glyphicon-off
@@ -0,0 +1,12 @@
1
+ .col-lg-3.col-md-4.col-sm-5
2
+ .form-group
3
+ .btn-group.btn-group-sm ng-model="action.query.search[f]" e2-search-field="" ng-init="action.query.search[f] = action.query.search[f] || []"
4
+ a.btn.btn-default[
5
+ ng-class="action.query.search[f].includes(v[0]) && 'active'"
6
+ ng-click="action.query.search[f].includes(v[0]) ? action._().pull(action.query.search[f], v[0]) : action.query.search[f].push(v[0]); action.search_field_change(f)"
7
+ ng-repeat="v in field.render.values"
8
+ ng-bind-html="v[1]"
9
+ ]
10
+ a.btn.btn-default ng-disabled="action.query.search[f].length == 0" ng-click="action.query.search[f] = []; action.search_field_change(f)"
11
+ span ng-bind="::field.loc"
12
+ span.glyphicon.glyphicon-off<
@@ -5,8 +5,7 @@ e2-action action="[field.assoc, 'typeahead']"
5
5
  input.btn.btn-default [
6
6
  type="text"
7
7
  ng-model="action.decode"
8
- bs-options="v.value for v in action.load($viewValue)"
9
- ng-keypress="action.key_pressed = true"
8
+ bs-options="v.value for v in action.load(action.decode)"
10
9
 
11
10
  ng-class="field.render.class"
12
11
  class="form-control"
@@ -14,7 +13,9 @@ e2-action action="[field.assoc, 'typeahead']"
14
13
  data-animation="{{::field.render.animation}}"
15
14
  placeholder="{{::field.loc}}"
16
15
  data-html="true"
17
- data-limit="10"
16
+ data-limit="{{::field.render.limit}}"
17
+ data-min-length="{{::field.render.min_length}}"
18
+ data-trigger="focus"
18
19
  bs-typeahead=""
19
20
  e2-search-field=""
20
21
  ]
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: engine2
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.8
4
+ version: 1.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - lopex
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-03-20 00:00:00.000000000 Z
11
+ date: 2020-07-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sequel
@@ -100,14 +100,14 @@ dependencies:
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: '12'
103
+ version: '13'
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: '12'
110
+ version: '13'
111
111
  description: Tree based routing framework with scaffolding support
112
112
  email:
113
113
  - lopx@gazeta.pl
@@ -159,6 +159,7 @@ files:
159
159
  - views/fields/bsselect_picker.slim
160
160
  - views/fields/bsselect_picker_opt.slim
161
161
  - views/fields/checkbox.slim
162
+ - views/fields/checkbox_button.slim
162
163
  - views/fields/checkbox_buttons.slim
163
164
  - views/fields/checkbox_buttons_opt.slim
164
165
  - views/fields/currency.slim
@@ -178,6 +179,9 @@ files:
178
179
  - views/fields/list_bsselect_opt.slim
179
180
  - views/fields/list_buttons.slim
180
181
  - views/fields/list_buttons_opt.slim
182
+ - views/fields/list_mbuttons.slim
183
+ - views/fields/list_mbuttons_opt.slim
184
+ - views/fields/list_mselect.slim
181
185
  - views/fields/list_select.slim
182
186
  - views/fields/list_select_opt.slim
183
187
  - views/fields/password.slim
@@ -216,6 +220,7 @@ files:
216
220
  - views/search_fields/checkbox.slim
217
221
  - views/search_fields/checkbox2.slim
218
222
  - views/search_fields/checkbox_buttons.slim
223
+ - views/search_fields/date.slim
219
224
  - views/search_fields/date_range.slim
220
225
  - views/search_fields/decimal_date_range.slim
221
226
  - views/search_fields/input_text.slim
@@ -224,6 +229,7 @@ files:
224
229
  - views/search_fields/list_bsmselect.slim
225
230
  - views/search_fields/list_bsselect.slim
226
231
  - views/search_fields/list_buttons.slim
232
+ - views/search_fields/list_mbuttons.slim
227
233
  - views/search_fields/list_select.slim
228
234
  - views/search_fields/scaffold_picker.slim
229
235
  - views/search_fields/select_picker.slim
@@ -247,7 +253,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
247
253
  - !ruby/object:Gem::Version
248
254
  version: '0'
249
255
  requirements: []
250
- rubygems_version: 3.0.2
256
+ rubygems_version: 3.1.2
251
257
  signing_key:
252
258
  specification_version: 4
253
259
  summary: Tree based routing framework with scaffolding support