voom-presenters 2.0.0 → 2.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +1 -1
  3. data/.github/workflows/semantic-release.yml +5 -1
  4. data/.releaserc +17 -3
  5. data/.ruby-version +1 -1
  6. data/CHANGELOG.md +32 -15
  7. data/Gemfile +2 -1
  8. data/Gemfile.lock +15 -6
  9. data/README.md +14 -9
  10. data/app/demo/components/date_fields.pom +10 -0
  11. data/app/demo/components/multi_selects.pom +29 -0
  12. data/app/demo/components/nav/menu.pom +1 -0
  13. data/app/demo/components/selects.pom +2 -1
  14. data/app/demo/events/halted.pom +23 -0
  15. data/app/demo/events/nav/drawer.pom +1 -1
  16. data/app/demo/index.pom +5 -5
  17. data/app/demo/nav/top_nav.pom +3 -9
  18. data/{bin → exe}/presenters +0 -0
  19. data/lib/voom.rb +2 -2
  20. data/lib/voom/presenters/dsl/components/date_field.rb +13 -0
  21. data/lib/voom/presenters/dsl/components/datetime_base.rb +2 -1
  22. data/lib/voom/presenters/dsl/components/mixins/selects.rb +6 -0
  23. data/lib/voom/presenters/dsl/components/multi_select.rb +56 -0
  24. data/lib/voom/presenters/dsl/components/select.rb +0 -3
  25. data/lib/voom/presenters/version.rb +3 -1
  26. data/presenters.gemspec +2 -2
  27. data/public/bundle.css +85 -50
  28. data/public/bundle.js +1593 -1341
  29. data/public/wc.js +1186 -934
  30. data/views/mdc/assets/js/components/datetime.js +101 -18
  31. data/views/mdc/assets/js/components/events/posts.js +12 -11
  32. data/views/mdc/assets/js/components/initialize.js +2 -0
  33. data/views/mdc/assets/js/components/multi-select.js +75 -0
  34. data/views/mdc/assets/js/utils/form-data.js +12 -0
  35. data/views/mdc/assets/scss/app.scss +1 -0
  36. data/views/mdc/assets/scss/components/multi-select.scss +44 -0
  37. data/views/mdc/components/datetime.erb +7 -4
  38. data/views/mdc/components/multi_select.erb +33 -0
  39. data/views/mdc/package-lock.json +47 -33
  40. data/views/mdc/package.json +1 -1
  41. metadata +16 -10
  42. data/app/demo/component_status.pom +0 -76
@@ -68,7 +68,7 @@
68
68
  "mdl-stepper": "^1.1.6",
69
69
  "npm": "^6.14.6",
70
70
  "quill": "^1.3.7",
71
- "url-parse": "^1.4.4"
71
+ "url-parse": "^1.5.0"
72
72
  },
73
73
  "bundleDependencies": [
74
74
  "@material/image-list"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: voom-presenters
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Russell Edens
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-12-22 00:00:00.000000000 Z
11
+ date: 2021-06-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ice_nine
@@ -228,14 +228,14 @@ dependencies:
228
228
  name: bundler
229
229
  requirement: !ruby/object:Gem::Requirement
230
230
  requirements:
231
- - - "~>"
231
+ - - ">="
232
232
  - !ruby/object:Gem::Version
233
233
  version: '1.13'
234
234
  type: :development
235
235
  prerelease: false
236
236
  version_requirements: !ruby/object:Gem::Requirement
237
237
  requirements:
238
- - - "~>"
238
+ - - ">="
239
239
  - !ruby/object:Gem::Version
240
240
  version: '1.13'
241
241
  - !ruby/object:Gem::Dependency
@@ -298,8 +298,9 @@ description:
298
298
  email:
299
299
  - 'russell@voomify.com
300
300
 
301
- '
302
- executables: []
301
+ '
302
+ executables:
303
+ - presenters
303
304
  extensions: []
304
305
  extra_rdoc_files: []
305
306
  files:
@@ -323,7 +324,6 @@ files:
323
324
  - README.md
324
325
  - ROADMAP.md
325
326
  - Rakefile
326
- - app/demo/component_status.pom
327
327
  - app/demo/components.pom
328
328
  - app/demo/components/avatars.pom
329
329
  - app/demo/components/badges.pom
@@ -349,6 +349,7 @@ files:
349
349
  - app/demo/components/layouts.pom
350
350
  - app/demo/components/lists.pom
351
351
  - app/demo/components/menus.pom
352
+ - app/demo/components/multi_selects.pom
352
353
  - app/demo/components/nav/drawer.pom
353
354
  - app/demo/components/nav/menu.pom
354
355
  - app/demo/components/nav/pattern_drawer.pom
@@ -390,6 +391,7 @@ files:
390
391
  - app/demo/events/content_as_form.pom
391
392
  - app/demo/events/field_level.pom
392
393
  - app/demo/events/form_level.pom
394
+ - app/demo/events/halted.pom
393
395
  - app/demo/events/nav/drawer.pom
394
396
  - app/demo/events/parallel.pom
395
397
  - app/demo/events/tagged_input.pom
@@ -413,11 +415,11 @@ files:
413
415
  - app/demo/shared/debug.pom
414
416
  - app/demo/styles.pom
415
417
  - bin/console
416
- - bin/presenters
417
418
  - bin/setup
418
419
  - component-status.yml
419
420
  - config.ru
420
421
  - docs/settings.md
422
+ - exe/presenters
421
423
  - lib/hash_ext/traverse.rb
422
424
  - lib/voom.rb
423
425
  - lib/voom/container_methods.rb
@@ -523,6 +525,7 @@ files:
523
525
  - lib/voom/presenters/dsl/components/mixins/tooltips.rb
524
526
  - lib/voom/presenters/dsl/components/mixins/typography.rb
525
527
  - lib/voom/presenters/dsl/components/mixins/yield_to.rb
528
+ - lib/voom/presenters/dsl/components/multi_select.rb
526
529
  - lib/voom/presenters/dsl/components/number_field.rb
527
530
  - lib/voom/presenters/dsl/components/page.rb
528
531
  - lib/voom/presenters/dsl/components/page_title.rb
@@ -688,6 +691,7 @@ files:
688
691
  - views/mdc/assets/js/components/mixins/dirtyable.js
689
692
  - views/mdc/assets/js/components/mixins/event-handler.js
690
693
  - views/mdc/assets/js/components/mixins/visibility-observer.js
694
+ - views/mdc/assets/js/components/multi-select.js
691
695
  - views/mdc/assets/js/components/plugins.js
692
696
  - views/mdc/assets/js/components/progress.js
693
697
  - views/mdc/assets/js/components/radios.js
@@ -709,6 +713,7 @@ files:
709
713
  - views/mdc/assets/js/utils/compatibility.js
710
714
  - views/mdc/assets/js/utils/config.js
711
715
  - views/mdc/assets/js/utils/config.test.js
716
+ - views/mdc/assets/js/utils/form-data.js
712
717
  - views/mdc/assets/js/utils/urls.js
713
718
  - views/mdc/assets/js/wc.js
714
719
  - views/mdc/assets/scss/app.scss
@@ -734,6 +739,7 @@ files:
734
739
  - views/mdc/assets/scss/components/image.scss
735
740
  - views/mdc/assets/scss/components/list.scss
736
741
  - views/mdc/assets/scss/components/menu.scss
742
+ - views/mdc/assets/scss/components/multi-select.scss
737
743
  - views/mdc/assets/scss/components/progress.scss
738
744
  - views/mdc/assets/scss/components/radio.scss
739
745
  - views/mdc/assets/scss/components/rich-text-area.scss
@@ -832,6 +838,7 @@ files:
832
838
  - views/mdc/components/list/menu.erb
833
839
  - views/mdc/components/list/separator.erb
834
840
  - views/mdc/components/menu.erb
841
+ - views/mdc/components/multi_select.erb
835
842
  - views/mdc/components/number_field.erb
836
843
  - views/mdc/components/overline.erb
837
844
  - views/mdc/components/page_title.erb
@@ -890,8 +897,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
890
897
  - !ruby/object:Gem::Version
891
898
  version: '0'
892
899
  requirements: []
893
- rubyforge_project:
894
- rubygems_version: 2.7.6.2
900
+ rubygems_version: 3.1.4
895
901
  signing_key:
896
902
  specification_version: 4
897
903
  summary: Presenters Gem.
@@ -1,76 +0,0 @@
1
- require 'yaml'
2
- require_relative 'helpers/indented_grid'
3
-
4
- Voom::Presenters.define(:component_status) do
5
- helpers Voom::Presenters::Helpers::Inflector
6
- helpers Demo::Helpers::IndentedGrid
7
-
8
- attach 'top_nav'
9
- attach 'component_drawer'
10
- helpers do
11
- def status
12
- @status ||= YAML::load_file(File.join(__dir__, '../../component-status.yml'))
13
- end
14
-
15
- def item_color(item)
16
- trace {item.inspect}
17
- case item
18
- when ->(i) {['low', 'not planned'].include?(i['Priority'])}
19
- :lightgray
20
- when ->(i) {(i.fetch('Completeness')||0) > 1}
21
- :DarkSeaGreen
22
- when ->(i) {(i.fetch('Completeness')||0)==1}
23
- :LightYellow
24
- when ->(i) {['medium', 'high'].include?(i['Priority']) && i['MDC']=='N' && i['MDL']=='N'}
25
- :lightcoral
26
- when ->(i) {i['Priority']=='medium'}
27
- :coral
28
- when ->(i) {i['Priority']=='now'}
29
- :CornflowerBlue
30
- else
31
- nil
32
- end
33
- end
34
-
35
- def key
36
- items = [{'Completeness' => 2, text: 'Available'},
37
- {'Priority' => 'high', 'Completeness'=>1, 'MDC' => nil, 'MDL' => nil, text: 'Available with caveats'},
38
- {'Priority' => 'now', 'Completeness'=>0, 'MDC' => nil, 'MDL' => nil, text: 'In progress'},
39
- {'Priority' => 'medium', 'Completeness'=>0, 'MDC' => nil, 'MDL' => nil, text: 'Up Next'},
40
- {'Priority' => 'medium', 'Completeness'=>0, 'MDC' => 'N', 'MDL' => 'N', text: 'Implementation needed'},
41
- {'Priority' => 'low', 'Completeness'=>0, 'MDC' => 'N', 'MDL' => 'N', text: 'Not Planned'},
42
-
43
- ]
44
- table do
45
- header do
46
- items.each do |item|
47
- column color: item_color(item)
48
- column item[:text]
49
- end
50
- end
51
- end
52
- end
53
- end
54
-
55
- indented_grid do
56
- display 'Component Status'
57
- key
58
- table do
59
- header do
60
- status.first.keys.each do |heading|
61
- column inflector.humanize(heading)
62
- end
63
- end
64
-
65
- status.each do |item|
66
- row do
67
- status.first.keys.each_with_index do |heading, index|
68
- value = item[heading]
69
- color = index ==0 ? item_color(item) : nil
70
- column value, color: color
71
- end
72
- end
73
- end
74
- end
75
- end
76
- end