headmin 0.4.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.lock-487e157d270f3062a98b7b2a012753708-1272821827 +0 -0
- data/CHANGELOG.md +16 -2
- data/Gemfile.lock +77 -79
- data/app/assets/javascripts/headmin/controllers/autocomplete_controller.js +84 -21
- data/app/assets/javascripts/headmin/controllers/date_range_controller.js +12 -6
- data/app/assets/javascripts/headmin/controllers/filter_controller.js +61 -11
- data/app/assets/javascripts/headmin/controllers/filter_row_controller.js +50 -0
- data/app/assets/javascripts/headmin/controllers/flatpickr_controller.js +2 -6
- data/app/assets/javascripts/headmin/controllers/popup_controller.js +14 -5
- data/app/assets/javascripts/headmin/controllers/table_actions_controller.js +16 -21
- data/app/assets/javascripts/headmin/index.js +2 -0
- data/app/assets/javascripts/headmin.js +186 -56
- data/app/assets/stylesheets/headmin/filter.scss +74 -0
- data/app/assets/stylesheets/headmin/general.scss +8 -0
- data/app/assets/stylesheets/headmin/layout/body.scss +5 -0
- data/app/assets/stylesheets/headmin/popup.scss +0 -1
- data/app/assets/stylesheets/headmin.css +70 -1
- data/app/controllers/concerns/headmin/filterable.rb +27 -0
- data/app/models/concerns/headmin/field.rb +4 -2
- data/app/models/concerns/headmin/fieldable.rb +138 -44
- data/app/models/headmin/filter/base.rb +238 -0
- data/app/models/headmin/filter/base_view.rb +64 -0
- data/app/models/headmin/filter/boolean.rb +15 -0
- data/app/models/headmin/filter/boolean_view.rb +61 -0
- data/app/models/headmin/filter/button_view.rb +25 -0
- data/app/models/headmin/filter/conditional_view.rb +16 -0
- data/app/models/headmin/filter/date.rb +19 -0
- data/app/models/headmin/filter/date_view.rb +52 -0
- data/app/models/headmin/filter/flatpickr_view.rb +54 -0
- data/app/models/headmin/filter/menu_item_view.rb +6 -0
- data/app/models/headmin/filter/money.rb +13 -0
- data/app/models/headmin/filter/number.rb +27 -0
- data/app/models/headmin/filter/number_view.rb +54 -0
- data/app/models/headmin/filter/operator_view.rb +30 -0
- data/app/models/headmin/filter/options_view.rb +61 -0
- data/app/models/headmin/filter/row_view.rb +13 -0
- data/app/models/headmin/filter/search.rb +18 -0
- data/app/models/headmin/filter/search_view.rb +31 -0
- data/app/models/headmin/filter/text.rb +25 -0
- data/app/models/headmin/filter/text_view.rb +53 -0
- data/app/models/headmin/filters.rb +29 -0
- data/app/models/headmin/form/blocks_view.rb +1 -1
- data/app/models/headmin/form/checkbox_view.rb +3 -3
- data/app/models/headmin/form/date_range_view.rb +2 -2
- data/app/models/headmin/form/date_view.rb +5 -5
- data/app/models/headmin/form/datetime_range_view.rb +25 -0
- data/app/models/headmin/form/datetime_view.rb +45 -0
- data/app/models/headmin/form/email_view.rb +7 -7
- data/app/models/headmin/form/file_view.rb +6 -6
- data/app/models/headmin/form/flatpickr_range_view.rb +11 -22
- data/app/models/headmin/form/flatpickr_view.rb +4 -13
- data/app/models/headmin/form/input_group_view.rb +1 -1
- data/app/models/headmin/form/label_view.rb +1 -1
- data/app/models/headmin/form/number_view.rb +5 -5
- data/app/models/headmin/form/password_view.rb +5 -5
- data/app/models/headmin/form/redactorx_view.rb +2 -2
- data/app/models/headmin/form/search_view.rb +7 -7
- data/app/models/headmin/form/select_view.rb +6 -6
- data/app/models/headmin/form/switch_view.rb +1 -1
- data/app/models/headmin/form/text_view.rb +7 -7
- data/app/models/headmin/form/textarea_view.rb +5 -5
- data/app/models/headmin/form/url_view.rb +7 -7
- data/app/models/headmin/form/wrapper_view.rb +1 -1
- data/app/models/headmin/form/wysiwyg_view.rb +1 -1
- data/app/models/view_model.rb +1 -1
- data/app/views/examples/admin.html.erb +13 -13
- data/app/views/examples/auth.html.erb +1 -1
- data/app/views/headmin/_filters.html.erb +6 -6
- data/app/views/headmin/_form.html.erb +2 -2
- data/app/views/headmin/_index.html.erb +1 -1
- data/app/views/headmin/_pagination.html.erb +1 -1
- data/app/views/headmin/_popup.html.erb +2 -2
- data/app/views/headmin/_table.html.erb +1 -1
- data/app/views/headmin/dropdown/_devise.html.erb +8 -8
- data/app/views/headmin/dropdown/_locale.html.erb +4 -4
- data/app/views/headmin/filters/_base.html.erb +95 -0
- data/app/views/headmin/filters/_boolean.html.erb +23 -0
- data/app/views/headmin/filters/_date.html.erb +14 -38
- data/app/views/headmin/filters/_flatpickr.html.erb +15 -48
- data/app/views/headmin/filters/_number.html.erb +23 -0
- data/app/views/headmin/filters/_options.html.erb +24 -0
- data/app/views/headmin/filters/_search.html.erb +14 -12
- data/app/views/headmin/filters/_text.html.erb +23 -0
- data/app/views/headmin/filters/filter/_button.html.erb +9 -10
- data/app/views/headmin/filters/filter/_conditional.html.erb +18 -0
- data/app/views/headmin/filters/filter/_menu_item.html.erb +5 -2
- data/app/views/headmin/filters/filter/_null_select.html.erb +8 -0
- data/app/views/headmin/filters/filter/_operator.html.erb +16 -0
- data/app/views/headmin/filters/filter/_row.html.erb +11 -0
- data/app/views/headmin/forms/_blocks.html.erb +1 -1
- data/app/views/headmin/forms/_date_range.html.erb +3 -3
- data/app/views/headmin/forms/_datetime.html.erb +41 -0
- data/app/views/headmin/forms/_datetime_range.html.erb +40 -0
- data/app/views/headmin/forms/_file.html.erb +3 -3
- data/app/views/headmin/forms/_flatpickr.html.erb +1 -1
- data/app/views/headmin/forms/_flatpickr_range.html.erb +3 -4
- data/app/views/headmin/forms/_label.html.erb +1 -1
- data/app/views/headmin/forms/_repeater.html.erb +12 -12
- data/app/views/headmin/forms/fields/_base.html.erb +1 -1
- data/app/views/headmin/forms/fields/_file.html.erb +3 -3
- data/app/views/headmin/forms/fields/_files.html.erb +17 -0
- data/app/views/headmin/forms/fields/_group.html.erb +10 -5
- data/app/views/headmin/forms/fields/_list.html.erb +4 -4
- data/app/views/headmin/forms/fields/_text.html.erb +2 -2
- data/app/views/headmin/layout/_footer.html.erb +1 -1
- data/app/views/headmin/layout/_main.html.erb +1 -1
- data/app/views/headmin/nav/_dropdown.html.erb +3 -3
- data/app/views/headmin/nav/_item.html.erb +2 -2
- data/app/views/headmin/nav/item/_devise.html.erb +8 -8
- data/app/views/headmin/nav/item/_locale.html.erb +4 -4
- data/app/views/headmin/table/_actions.html.erb +3 -6
- data/app/views/headmin/table/actions/_export.html.erb +1 -1
- data/app/views/headmin/table/body/_row.html.erb +3 -3
- data/app/views/headmin/table/foot/_id.html.erb +1 -1
- data/app/views/headmin/views/devise/confirmations/_new.html.erb +1 -1
- data/app/views/headmin/views/devise/passwords/_edit.html.erb +2 -2
- data/app/views/headmin/views/devise/passwords/_new.html.erb +1 -1
- data/app/views/headmin/views/devise/registrations/_edit.html.erb +4 -4
- data/app/views/headmin/views/devise/registrations/_new.html.erb +3 -3
- data/app/views/headmin/views/devise/sessions/_new.html.erb +3 -3
- data/app/views/headmin/views/devise/unlocks/_new.html.erb +1 -1
- data/config/locales/en.yml +4 -0
- data/config/locales/headmin/dropdown/en.yml +6 -0
- data/config/locales/headmin/dropdown/nl.yml +6 -0
- data/config/locales/headmin/filters/en.yml +26 -1
- data/config/locales/headmin/filters/nl.yml +26 -1
- data/config/locales/headmin/forms/en.yml +1 -1
- data/config/locales/headmin/forms/nl.yml +1 -1
- data/config/locales/headmin/layout/en.yml +0 -9
- data/config/locales/headmin/layout/nl.yml +0 -9
- data/config/locales/headmin/nav/en.yml +7 -0
- data/config/locales/headmin/nav/nl.yml +7 -0
- data/config/locales/nl.yml +4 -0
- data/lib/generators/templates/views/layouts/auth.html.erb +1 -1
- data/lib/headmin/version.rb +1 -1
- data/package.json +1 -1
- metadata +44 -7
- data/app/controllers/concerns/headmin/filter.rb +0 -5
- data/app/controllers/concerns/headmin/searchable.rb +0 -15
- data/app/views/headmin/filters/_select.html.erb +0 -45
- data/app/views/headmin/filters/filter/_template.html.erb +0 -13
- data/app/views/headmin/forms/fields/_image.html.erb +0 -17
@@ -1,13 +1,38 @@
|
|
1
1
|
nl:
|
2
2
|
headmin:
|
3
3
|
filters:
|
4
|
+
apply: Toepassen
|
4
5
|
button: Filters
|
5
6
|
remove_all: Filters leegmaken
|
6
7
|
filter:
|
7
8
|
button:
|
8
9
|
all: Alle
|
10
|
+
conditional:
|
11
|
+
and: En
|
12
|
+
or: Of
|
9
13
|
select:
|
10
14
|
blank: Maak een keuze
|
11
15
|
search:
|
12
16
|
button: Zoeken
|
13
|
-
placeholder: 'In %{resource} zoeken'
|
17
|
+
placeholder: 'In %{resource} zoeken'
|
18
|
+
conditionals:
|
19
|
+
and: en
|
20
|
+
or: of
|
21
|
+
operators:
|
22
|
+
eq: is
|
23
|
+
not_eq: is niet
|
24
|
+
gt: is groter dan
|
25
|
+
gteq: is groter dan of gelijk aan
|
26
|
+
lt: is kleiner dan
|
27
|
+
lteq: is kleiner dan of gelijk aan
|
28
|
+
starts_with: begint met
|
29
|
+
ends_with: eindigt met
|
30
|
+
matches: lijkt op
|
31
|
+
does_not_match: lijkt niet op
|
32
|
+
is_not_null: is ingevuld
|
33
|
+
is_null: is niet ingevuld
|
34
|
+
values:
|
35
|
+
"false": Onwaar
|
36
|
+
"no": Nee
|
37
|
+
"true": Waar
|
38
|
+
"yes": Ja
|
data/config/locales/nl.yml
CHANGED
data/lib/headmin/version.rb
CHANGED
data/package.json
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: headmin
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jef Vlamings
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-05-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: closure_tree
|
@@ -76,6 +76,7 @@ extra_rdoc_files: []
|
|
76
76
|
files:
|
77
77
|
- ".github/workflows/ci.yml"
|
78
78
|
- ".gitignore"
|
79
|
+
- ".lock-487e157d270f3062a98b7b2a012753708-1272821827"
|
79
80
|
- ".nvmrc"
|
80
81
|
- ".ruby-version"
|
81
82
|
- CHANGELOG.md
|
@@ -100,6 +101,7 @@ files:
|
|
100
101
|
- app/assets/javascripts/headmin/controllers/dropzone_controller.js
|
101
102
|
- app/assets/javascripts/headmin/controllers/file_preview_controller.js
|
102
103
|
- app/assets/javascripts/headmin/controllers/filter_controller.js
|
104
|
+
- app/assets/javascripts/headmin/controllers/filter_row_controller.js
|
103
105
|
- app/assets/javascripts/headmin/controllers/filters_controller.js
|
104
106
|
- app/assets/javascripts/headmin/controllers/flatpickr_controller.js
|
105
107
|
- app/assets/javascripts/headmin/controllers/hello_controller.js
|
@@ -224,9 +226,8 @@ files:
|
|
224
226
|
- app/assets/stylesheets/headmin/vendor/tom-select-bootstrap.css
|
225
227
|
- app/controllers/concerns/headmin/acts_as_list.rb
|
226
228
|
- app/controllers/concerns/headmin/authentication.rb
|
227
|
-
- app/controllers/concerns/headmin/
|
229
|
+
- app/controllers/concerns/headmin/filterable.rb
|
228
230
|
- app/controllers/concerns/headmin/pagination.rb
|
229
|
-
- app/controllers/concerns/headmin/searchable.rb
|
230
231
|
- app/controllers/concerns/headmin/sortable.rb
|
231
232
|
- app/helpers/headmin/admin_helper.rb
|
232
233
|
- app/helpers/headmin/bootstrap_helper.rb
|
@@ -248,10 +249,33 @@ files:
|
|
248
249
|
- app/models/concerns/headmin/form/wrappable.rb
|
249
250
|
- app/models/headmin/.DS_Store
|
250
251
|
- app/models/headmin/blocks_view.rb
|
252
|
+
- app/models/headmin/filter/base.rb
|
253
|
+
- app/models/headmin/filter/base_view.rb
|
254
|
+
- app/models/headmin/filter/boolean.rb
|
255
|
+
- app/models/headmin/filter/boolean_view.rb
|
256
|
+
- app/models/headmin/filter/button_view.rb
|
257
|
+
- app/models/headmin/filter/conditional_view.rb
|
258
|
+
- app/models/headmin/filter/date.rb
|
259
|
+
- app/models/headmin/filter/date_view.rb
|
260
|
+
- app/models/headmin/filter/flatpickr_view.rb
|
261
|
+
- app/models/headmin/filter/menu_item_view.rb
|
262
|
+
- app/models/headmin/filter/money.rb
|
263
|
+
- app/models/headmin/filter/number.rb
|
264
|
+
- app/models/headmin/filter/number_view.rb
|
265
|
+
- app/models/headmin/filter/operator_view.rb
|
266
|
+
- app/models/headmin/filter/options_view.rb
|
267
|
+
- app/models/headmin/filter/row_view.rb
|
268
|
+
- app/models/headmin/filter/search.rb
|
269
|
+
- app/models/headmin/filter/search_view.rb
|
270
|
+
- app/models/headmin/filter/text.rb
|
271
|
+
- app/models/headmin/filter/text_view.rb
|
272
|
+
- app/models/headmin/filters.rb
|
251
273
|
- app/models/headmin/form/blocks_view.rb
|
252
274
|
- app/models/headmin/form/checkbox_view.rb
|
253
275
|
- app/models/headmin/form/date_range_view.rb
|
254
276
|
- app/models/headmin/form/date_view.rb
|
277
|
+
- app/models/headmin/form/datetime_range_view.rb
|
278
|
+
- app/models/headmin/form/datetime_view.rb
|
255
279
|
- app/models/headmin/form/email_view.rb
|
256
280
|
- app/models/headmin/form/file_view.rb
|
257
281
|
- app/models/headmin/form/flatpickr_range_view.rb
|
@@ -293,19 +317,28 @@ files:
|
|
293
317
|
- app/views/headmin/dropdown/_item.html.erb
|
294
318
|
- app/views/headmin/dropdown/_list.html.erb
|
295
319
|
- app/views/headmin/dropdown/_locale.html.erb
|
320
|
+
- app/views/headmin/filters/_base.html.erb
|
321
|
+
- app/views/headmin/filters/_boolean.html.erb
|
296
322
|
- app/views/headmin/filters/_date.html.erb
|
297
323
|
- app/views/headmin/filters/_flatpickr.html.erb
|
324
|
+
- app/views/headmin/filters/_number.html.erb
|
325
|
+
- app/views/headmin/filters/_options.html.erb
|
298
326
|
- app/views/headmin/filters/_search.html.erb
|
299
|
-
- app/views/headmin/filters/
|
327
|
+
- app/views/headmin/filters/_text.html.erb
|
300
328
|
- app/views/headmin/filters/filter/_button.html.erb
|
329
|
+
- app/views/headmin/filters/filter/_conditional.html.erb
|
301
330
|
- app/views/headmin/filters/filter/_menu_item.html.erb
|
302
|
-
- app/views/headmin/filters/filter/
|
331
|
+
- app/views/headmin/filters/filter/_null_select.html.erb
|
332
|
+
- app/views/headmin/filters/filter/_operator.html.erb
|
333
|
+
- app/views/headmin/filters/filter/_row.html.erb
|
303
334
|
- app/views/headmin/forms/_autocomplete.html.erb
|
304
335
|
- app/views/headmin/forms/_blocks.html.erb
|
305
336
|
- app/views/headmin/forms/_checkbox.html.erb
|
306
337
|
- app/views/headmin/forms/_datalist.html.erb
|
307
338
|
- app/views/headmin/forms/_date.html.erb
|
308
339
|
- app/views/headmin/forms/_date_range.html.erb
|
340
|
+
- app/views/headmin/forms/_datetime.html.erb
|
341
|
+
- app/views/headmin/forms/_datetime_range.html.erb
|
309
342
|
- app/views/headmin/forms/_email.html.erb
|
310
343
|
- app/views/headmin/forms/_errors.html.erb
|
311
344
|
- app/views/headmin/forms/_file.html.erb
|
@@ -332,8 +365,8 @@ files:
|
|
332
365
|
- app/views/headmin/forms/autocomplete/_list.html.erb
|
333
366
|
- app/views/headmin/forms/fields/_base.html.erb
|
334
367
|
- app/views/headmin/forms/fields/_file.html.erb
|
368
|
+
- app/views/headmin/forms/fields/_files.html.erb
|
335
369
|
- app/views/headmin/forms/fields/_group.html.erb
|
336
|
-
- app/views/headmin/forms/fields/_image.html.erb
|
337
370
|
- app/views/headmin/forms/fields/_list.html.erb
|
338
371
|
- app/views/headmin/forms/fields/_text.html.erb
|
339
372
|
- app/views/headmin/forms/repeater/_row.html.erb
|
@@ -405,6 +438,8 @@ files:
|
|
405
438
|
- config/locales/devise/en.yml
|
406
439
|
- config/locales/devise/nl.yml
|
407
440
|
- config/locales/en.yml
|
441
|
+
- config/locales/headmin/dropdown/en.yml
|
442
|
+
- config/locales/headmin/dropdown/nl.yml
|
408
443
|
- config/locales/headmin/filters/en.yml
|
409
444
|
- config/locales/headmin/filters/nl.yml
|
410
445
|
- config/locales/headmin/forms/en.yml
|
@@ -413,6 +448,8 @@ files:
|
|
413
448
|
- config/locales/headmin/heading/nl.yml
|
414
449
|
- config/locales/headmin/layout/en.yml
|
415
450
|
- config/locales/headmin/layout/nl.yml
|
451
|
+
- config/locales/headmin/nav/en.yml
|
452
|
+
- config/locales/headmin/nav/nl.yml
|
416
453
|
- config/locales/headmin/pagination/en.yml
|
417
454
|
- config/locales/headmin/pagination/nl.yml
|
418
455
|
- config/locales/headmin/popup/en.yml
|
@@ -1,45 +0,0 @@
|
|
1
|
-
<%
|
2
|
-
# headmin/filters/select
|
3
|
-
#
|
4
|
-
# ==== Options
|
5
|
-
# * +name</tt> - Name of the filter parameter
|
6
|
-
# * +label</tt> - Display name
|
7
|
-
# * +options</tt> - List of options to select from
|
8
|
-
#
|
9
|
-
# ==== Examples
|
10
|
-
# Basic version
|
11
|
-
# <%= render "headmin/filters/select", name: :poll_type, label: 'Type', options: [["General", "general", "Fun", "fun"]] %#>
|
12
|
-
|
13
|
-
name = local_assigns.has_key?(:name) ? name.to_sym : nil
|
14
|
-
label = local_assigns.has_key?(:label) ? label : name.to_s.humanize
|
15
|
-
options = local_assigns.has_key?(:options) ? options : []
|
16
|
-
|
17
|
-
select_options = {
|
18
|
-
class: "form-select",
|
19
|
-
prompt: t('.blank'),
|
20
|
-
include_blank: false,
|
21
|
-
required: true,
|
22
|
-
'data-filters-target': 'input',
|
23
|
-
'data-action': "change->filters#update"
|
24
|
-
}
|
25
|
-
%>
|
26
|
-
|
27
|
-
<%= content_for :filters_menu do %>
|
28
|
-
<%= render 'headmin/filters/filter/menu_item', name: name, label: label %>
|
29
|
-
<% end %>
|
30
|
-
|
31
|
-
<%= content_for :filters_templates do %>
|
32
|
-
<%= render 'headmin/filters/filter/template', name: name, label: label do %>
|
33
|
-
<%= select_tag("#{name}[]", options_for_select(options), select_options) %>
|
34
|
-
<% end %>
|
35
|
-
<% end %>
|
36
|
-
|
37
|
-
<%= content_for :filters_buttons do %>
|
38
|
-
<% (params[name] || []).each_with_index do |param, index| %>
|
39
|
-
<% selected_option = options.detect { |value, key, config| (key.present? ? key : value) == param } %>
|
40
|
-
<% selected_value = selected_option.is_a?(Array) ? selected_option.first : selected_option %>
|
41
|
-
<%= render 'headmin/filters/filter/button', name: name, label: label, value: selected_value, id: "#{name}_#{index}_#{SecureRandom.hex}" do %>
|
42
|
-
<%= select_tag("#{name}[]", options_for_select(options, param), select_options) %>
|
43
|
-
<% end %>
|
44
|
-
<% end %>
|
45
|
-
<% end %>
|
@@ -1,13 +0,0 @@
|
|
1
|
-
<%#
|
2
|
-
headmin/filters/filter/template
|
3
|
-
accepts block: yes
|
4
|
-
parameters:
|
5
|
-
name: (string) Name of the parameter
|
6
|
-
label: (string) Display name
|
7
|
-
%>
|
8
|
-
|
9
|
-
<template data-filter-name="<%= name %>" data-filters-target="template">
|
10
|
-
<%= render 'headmin/filters/filter/button', name: name, label: label, value: nil, id: 'template_id' do %>
|
11
|
-
<%= yield %>
|
12
|
-
<% end %>
|
13
|
-
</template>
|
@@ -1,17 +0,0 @@
|
|
1
|
-
<%
|
2
|
-
# name: headmin/forms/fields/image
|
3
|
-
#
|
4
|
-
# ==== Options
|
5
|
-
# * +form+ - Form object
|
6
|
-
# * +name+ - Name for the field
|
7
|
-
#
|
8
|
-
# ==== Examples
|
9
|
-
# Basic version
|
10
|
-
# <%= render 'headmin/forms/fields/image', form: group, name: :image do |field, attribute, label| %#>
|
11
|
-
# <%= render "headmin/forms/image", form: field, attribute: attribute, label: label %#>
|
12
|
-
# <% end %#>
|
13
|
-
%>
|
14
|
-
|
15
|
-
<%= render 'headmin/forms/fields/base', form: form, field_type: :image, name: name do |field, label| %>
|
16
|
-
<% yield field, :file, label %>
|
17
|
-
<% end %>
|