flipper-ui 0.2.0.beta1

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.
Files changed (80) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +19 -0
  3. data/.rspec +1 -0
  4. data/Gemfile +17 -0
  5. data/Guardfile +26 -0
  6. data/LICENSE +22 -0
  7. data/README.md +101 -0
  8. data/Rakefile +7 -0
  9. data/examples/basic.ru +44 -0
  10. data/examples/flipper.html +14 -0
  11. data/examples/flipper.png +0 -0
  12. data/flipper-ui.gemspec +21 -0
  13. data/lib/flipper-ui.rb +1 -0
  14. data/lib/flipper/ui.rb +23 -0
  15. data/lib/flipper/ui/action.rb +172 -0
  16. data/lib/flipper/ui/action_collection.rb +20 -0
  17. data/lib/flipper/ui/actions/features.rb +21 -0
  18. data/lib/flipper/ui/actions/file.rb +17 -0
  19. data/lib/flipper/ui/actions/gate.rb +143 -0
  20. data/lib/flipper/ui/actions/index.rb +17 -0
  21. data/lib/flipper/ui/assets/javascripts/application.coffee +305 -0
  22. data/lib/flipper/ui/assets/javascripts/spine/ajax.coffee +223 -0
  23. data/lib/flipper/ui/assets/javascripts/spine/list.coffee +43 -0
  24. data/lib/flipper/ui/assets/javascripts/spine/local.coffee +16 -0
  25. data/lib/flipper/ui/assets/javascripts/spine/manager.coffee +83 -0
  26. data/lib/flipper/ui/assets/javascripts/spine/relation.coffee +148 -0
  27. data/lib/flipper/ui/assets/javascripts/spine/route.coffee +146 -0
  28. data/lib/flipper/ui/assets/javascripts/spine/spine.coffee +542 -0
  29. data/lib/flipper/ui/assets/javascripts/spine/version +1 -0
  30. data/lib/flipper/ui/assets/stylesheets/application.scss +237 -0
  31. data/lib/flipper/ui/decorators/feature.rb +37 -0
  32. data/lib/flipper/ui/decorators/gate.rb +36 -0
  33. data/lib/flipper/ui/error.rb +10 -0
  34. data/lib/flipper/ui/eruby.rb +11 -0
  35. data/lib/flipper/ui/middleware.rb +66 -0
  36. data/lib/flipper/ui/public/css/application.css +183 -0
  37. data/lib/flipper/ui/public/css/images/animated-overlay.gif +0 -0
  38. data/lib/flipper/ui/public/css/images/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
  39. data/lib/flipper/ui/public/css/images/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
  40. data/lib/flipper/ui/public/css/images/ui-bg_flat_10_000000_40x100.png +0 -0
  41. data/lib/flipper/ui/public/css/images/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
  42. data/lib/flipper/ui/public/css/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
  43. data/lib/flipper/ui/public/css/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  44. data/lib/flipper/ui/public/css/images/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
  45. data/lib/flipper/ui/public/css/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
  46. data/lib/flipper/ui/public/css/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
  47. data/lib/flipper/ui/public/css/images/ui-icons_222222_256x240.png +0 -0
  48. data/lib/flipper/ui/public/css/images/ui-icons_228ef1_256x240.png +0 -0
  49. data/lib/flipper/ui/public/css/images/ui-icons_ef8c08_256x240.png +0 -0
  50. data/lib/flipper/ui/public/css/images/ui-icons_ffd27a_256x240.png +0 -0
  51. data/lib/flipper/ui/public/css/images/ui-icons_ffffff_256x240.png +0 -0
  52. data/lib/flipper/ui/public/css/jquery-ui-1.10.3.slider.min.css +5 -0
  53. data/lib/flipper/ui/public/images/logo.png +0 -0
  54. data/lib/flipper/ui/public/images/remove.png +0 -0
  55. data/lib/flipper/ui/public/js/application.js +544 -0
  56. data/lib/flipper/ui/public/js/handlebars.js +1992 -0
  57. data/lib/flipper/ui/public/js/jquery-ui-1.10.3.slider.min.js +6 -0
  58. data/lib/flipper/ui/public/js/jquery.js +9555 -0
  59. data/lib/flipper/ui/public/js/jquery.min.js +4 -0
  60. data/lib/flipper/ui/public/js/jquery.min.map +1 -0
  61. data/lib/flipper/ui/public/js/spine/ajax.js +320 -0
  62. data/lib/flipper/ui/public/js/spine/list.js +72 -0
  63. data/lib/flipper/ui/public/js/spine/local.js +29 -0
  64. data/lib/flipper/ui/public/js/spine/manager.js +157 -0
  65. data/lib/flipper/ui/public/js/spine/relation.js +260 -0
  66. data/lib/flipper/ui/public/js/spine/route.js +223 -0
  67. data/lib/flipper/ui/public/js/spine/spine.js +927 -0
  68. data/lib/flipper/ui/util.rb +12 -0
  69. data/lib/flipper/ui/version.rb +5 -0
  70. data/lib/flipper/ui/views/index.erb +9 -0
  71. data/lib/flipper/ui/views/layout.erb +161 -0
  72. data/script/bootstrap +21 -0
  73. data/script/server +19 -0
  74. data/script/test +30 -0
  75. data/spec/flipper/ui/decorators/feature_spec.rb +59 -0
  76. data/spec/flipper/ui/decorators/gate_spec.rb +47 -0
  77. data/spec/flipper/ui/util_spec.rb +18 -0
  78. data/spec/flipper/ui_spec.rb +470 -0
  79. data/spec/helper.rb +35 -0
  80. metadata +168 -0
data/spec/helper.rb ADDED
@@ -0,0 +1,35 @@
1
+ $:.unshift(File.expand_path('../../lib', __FILE__))
2
+
3
+ require 'rubygems'
4
+ require 'bundler'
5
+ Bundler.setup :default
6
+
7
+ require 'flipper-ui'
8
+
9
+ require 'flipper/instrumentation/log_subscriber'
10
+ require 'logger'
11
+ require 'json'
12
+
13
+ root = Pathname(__FILE__).dirname.join('..').expand_path
14
+ log_path = root.join('log')
15
+ log_path.mkpath
16
+
17
+ logger = Logger.new(log_path.join('test.log'))
18
+ logger.formatter = proc { |severity, datetime, progname, msg| "#{msg}\n" }
19
+ Flipper::Instrumentation::LogSubscriber.logger = logger
20
+
21
+ module JsonHelpers
22
+ def json_response
23
+ JSON.load(last_response.body)
24
+ end
25
+ end
26
+
27
+ RSpec.configure do |config|
28
+ config.filter_run :focused => true
29
+ config.alias_example_to :fit, :focused => true
30
+ config.alias_example_to :xit, :pending => true
31
+ config.run_all_when_everything_filtered = true
32
+ config.fail_fast = true
33
+
34
+ config.include JsonHelpers
35
+ end
metadata ADDED
@@ -0,0 +1,168 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: flipper-ui
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.0.beta1
5
+ platform: ruby
6
+ authors:
7
+ - John Nunemaker
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-04-04 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rack
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: flipper
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.7.0.beta1
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.7.0.beta1
41
+ - !ruby/object:Gem::Dependency
42
+ name: erubis
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ description: UI for the Flipper gem
56
+ email:
57
+ - nunemaker@gmail.com
58
+ executables: []
59
+ extensions: []
60
+ extra_rdoc_files: []
61
+ files:
62
+ - ".gitignore"
63
+ - ".rspec"
64
+ - Gemfile
65
+ - Guardfile
66
+ - LICENSE
67
+ - README.md
68
+ - Rakefile
69
+ - examples/basic.ru
70
+ - examples/flipper.html
71
+ - examples/flipper.png
72
+ - flipper-ui.gemspec
73
+ - lib/flipper-ui.rb
74
+ - lib/flipper/ui.rb
75
+ - lib/flipper/ui/action.rb
76
+ - lib/flipper/ui/action_collection.rb
77
+ - lib/flipper/ui/actions/features.rb
78
+ - lib/flipper/ui/actions/file.rb
79
+ - lib/flipper/ui/actions/gate.rb
80
+ - lib/flipper/ui/actions/index.rb
81
+ - lib/flipper/ui/assets/javascripts/application.coffee
82
+ - lib/flipper/ui/assets/javascripts/spine/ajax.coffee
83
+ - lib/flipper/ui/assets/javascripts/spine/list.coffee
84
+ - lib/flipper/ui/assets/javascripts/spine/local.coffee
85
+ - lib/flipper/ui/assets/javascripts/spine/manager.coffee
86
+ - lib/flipper/ui/assets/javascripts/spine/relation.coffee
87
+ - lib/flipper/ui/assets/javascripts/spine/route.coffee
88
+ - lib/flipper/ui/assets/javascripts/spine/spine.coffee
89
+ - lib/flipper/ui/assets/javascripts/spine/version
90
+ - lib/flipper/ui/assets/stylesheets/application.scss
91
+ - lib/flipper/ui/decorators/feature.rb
92
+ - lib/flipper/ui/decorators/gate.rb
93
+ - lib/flipper/ui/error.rb
94
+ - lib/flipper/ui/eruby.rb
95
+ - lib/flipper/ui/middleware.rb
96
+ - lib/flipper/ui/public/css/application.css
97
+ - lib/flipper/ui/public/css/images/animated-overlay.gif
98
+ - lib/flipper/ui/public/css/images/ui-bg_diagonals-thick_18_b81900_40x40.png
99
+ - lib/flipper/ui/public/css/images/ui-bg_diagonals-thick_20_666666_40x40.png
100
+ - lib/flipper/ui/public/css/images/ui-bg_flat_10_000000_40x100.png
101
+ - lib/flipper/ui/public/css/images/ui-bg_glass_100_f6f6f6_1x400.png
102
+ - lib/flipper/ui/public/css/images/ui-bg_glass_100_fdf5ce_1x400.png
103
+ - lib/flipper/ui/public/css/images/ui-bg_glass_65_ffffff_1x400.png
104
+ - lib/flipper/ui/public/css/images/ui-bg_gloss-wave_35_f6a828_500x100.png
105
+ - lib/flipper/ui/public/css/images/ui-bg_highlight-soft_100_eeeeee_1x100.png
106
+ - lib/flipper/ui/public/css/images/ui-bg_highlight-soft_75_ffe45c_1x100.png
107
+ - lib/flipper/ui/public/css/images/ui-icons_222222_256x240.png
108
+ - lib/flipper/ui/public/css/images/ui-icons_228ef1_256x240.png
109
+ - lib/flipper/ui/public/css/images/ui-icons_ef8c08_256x240.png
110
+ - lib/flipper/ui/public/css/images/ui-icons_ffd27a_256x240.png
111
+ - lib/flipper/ui/public/css/images/ui-icons_ffffff_256x240.png
112
+ - lib/flipper/ui/public/css/jquery-ui-1.10.3.slider.min.css
113
+ - lib/flipper/ui/public/images/logo.png
114
+ - lib/flipper/ui/public/images/remove.png
115
+ - lib/flipper/ui/public/js/application.js
116
+ - lib/flipper/ui/public/js/handlebars.js
117
+ - lib/flipper/ui/public/js/jquery-ui-1.10.3.slider.min.js
118
+ - lib/flipper/ui/public/js/jquery.js
119
+ - lib/flipper/ui/public/js/jquery.min.js
120
+ - lib/flipper/ui/public/js/jquery.min.map
121
+ - lib/flipper/ui/public/js/spine/ajax.js
122
+ - lib/flipper/ui/public/js/spine/list.js
123
+ - lib/flipper/ui/public/js/spine/local.js
124
+ - lib/flipper/ui/public/js/spine/manager.js
125
+ - lib/flipper/ui/public/js/spine/relation.js
126
+ - lib/flipper/ui/public/js/spine/route.js
127
+ - lib/flipper/ui/public/js/spine/spine.js
128
+ - lib/flipper/ui/util.rb
129
+ - lib/flipper/ui/version.rb
130
+ - lib/flipper/ui/views/index.erb
131
+ - lib/flipper/ui/views/layout.erb
132
+ - script/bootstrap
133
+ - script/server
134
+ - script/test
135
+ - spec/flipper/ui/decorators/feature_spec.rb
136
+ - spec/flipper/ui/decorators/gate_spec.rb
137
+ - spec/flipper/ui/util_spec.rb
138
+ - spec/flipper/ui_spec.rb
139
+ - spec/helper.rb
140
+ homepage: https://github.com/jnunemaker/flipper-ui
141
+ licenses: []
142
+ metadata: {}
143
+ post_install_message:
144
+ rdoc_options: []
145
+ require_paths:
146
+ - lib
147
+ required_ruby_version: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - ">="
150
+ - !ruby/object:Gem::Version
151
+ version: '0'
152
+ required_rubygems_version: !ruby/object:Gem::Requirement
153
+ requirements:
154
+ - - ">"
155
+ - !ruby/object:Gem::Version
156
+ version: 1.3.1
157
+ requirements: []
158
+ rubyforge_project:
159
+ rubygems_version: 2.2.2
160
+ signing_key:
161
+ specification_version: 4
162
+ summary: UI for the Flipper gem
163
+ test_files:
164
+ - spec/flipper/ui/decorators/feature_spec.rb
165
+ - spec/flipper/ui/decorators/gate_spec.rb
166
+ - spec/flipper/ui/util_spec.rb
167
+ - spec/flipper/ui_spec.rb
168
+ - spec/helper.rb