sql-jarvis 2.0.1 → 2.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (83) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +25 -1
  3. data/LICENSE.txt +1 -1
  4. data/README.md +153 -52
  5. data/app/assets/fonts/blazer/glyphicons-halflings-regular.eot +0 -0
  6. data/app/assets/fonts/blazer/glyphicons-halflings-regular.svg +0 -0
  7. data/app/assets/fonts/blazer/glyphicons-halflings-regular.ttf +0 -0
  8. data/app/assets/fonts/blazer/glyphicons-halflings-regular.woff +0 -0
  9. data/app/assets/fonts/blazer/glyphicons-halflings-regular.woff2 +0 -0
  10. data/app/assets/images/blazer/favicon.png +0 -0
  11. data/app/assets/javascripts/blazer/Chart.js +4195 -3884
  12. data/app/assets/javascripts/blazer/Sortable.js +1493 -1097
  13. data/app/assets/javascripts/blazer/ace/ace.js +21294 -4
  14. data/app/assets/javascripts/blazer/ace/ext-language_tools.js +1991 -3
  15. data/app/assets/javascripts/blazer/ace/mode-sql.js +110 -1
  16. data/app/assets/javascripts/blazer/ace/snippets/sql.js +40 -1
  17. data/app/assets/javascripts/blazer/ace/snippets/text.js +14 -1
  18. data/app/assets/javascripts/blazer/ace/theme-twilight.js +116 -1
  19. data/app/assets/javascripts/blazer/application.js +4 -3
  20. data/app/assets/javascripts/blazer/bootstrap.js +623 -612
  21. data/app/assets/javascripts/blazer/chartkick.js +1769 -1248
  22. data/app/assets/javascripts/blazer/daterangepicker.js +263 -115
  23. data/app/assets/javascripts/blazer/highlight.min.js +3 -0
  24. data/app/assets/javascripts/blazer/{jquery_ujs.js → jquery-ujs.js} +161 -75
  25. data/app/assets/javascripts/blazer/jquery.js +9506 -9450
  26. data/app/assets/javascripts/blazer/jquery.stickytableheaders.js +321 -259
  27. data/app/assets/javascripts/blazer/moment-timezone-with-data.js +1212 -0
  28. data/app/assets/javascripts/blazer/queries.js +1 -1
  29. data/app/assets/javascripts/blazer/routes.js +3 -0
  30. data/app/assets/javascripts/blazer/selectize.js +3828 -3604
  31. data/app/assets/javascripts/blazer/stupidtable.js +255 -88
  32. data/app/assets/javascripts/blazer/vue.js +8015 -4583
  33. data/app/assets/stylesheets/blazer/application.css +41 -5
  34. data/app/assets/stylesheets/blazer/bootstrap.css.erb +879 -325
  35. data/app/assets/stylesheets/blazer/daterangepicker.css +269 -0
  36. data/app/assets/stylesheets/blazer/selectize.default.css +26 -10
  37. data/app/controllers/blazer/base_controller.rb +7 -0
  38. data/app/controllers/blazer/checks_controller.rb +1 -1
  39. data/app/controllers/blazer/dashboards_controller.rb +0 -4
  40. data/app/controllers/blazer/queries_controller.rb +20 -12
  41. data/app/helpers/blazer/base_helper.rb +1 -1
  42. data/app/mailers/blazer/slack_notifier.rb +76 -0
  43. data/app/models/blazer/check.rb +9 -0
  44. data/app/views/blazer/_nav.html.erb +0 -1
  45. data/app/views/blazer/_variables.html.erb +41 -19
  46. data/app/views/blazer/checks/_form.html.erb +16 -8
  47. data/app/views/blazer/checks/edit.html.erb +2 -0
  48. data/app/views/blazer/checks/index.html.erb +33 -4
  49. data/app/views/blazer/checks/new.html.erb +2 -0
  50. data/app/views/blazer/dashboards/_form.html.erb +4 -4
  51. data/app/views/blazer/dashboards/edit.html.erb +2 -0
  52. data/app/views/blazer/dashboards/new.html.erb +2 -0
  53. data/app/views/blazer/dashboards/show.html.erb +7 -3
  54. data/app/views/blazer/queries/_form.html.erb +11 -6
  55. data/app/views/blazer/queries/docs.html.erb +131 -0
  56. data/app/views/blazer/queries/home.html.erb +12 -3
  57. data/app/views/blazer/queries/run.html.erb +36 -6
  58. data/app/views/blazer/queries/schema.html.erb +46 -8
  59. data/app/views/blazer/queries/show.html.erb +4 -4
  60. data/app/views/layouts/blazer/application.html.erb +3 -3
  61. data/config/routes.rb +5 -1
  62. data/lib/blazer.rb +32 -13
  63. data/lib/blazer/adapters/athena_adapter.rb +1 -1
  64. data/lib/blazer/adapters/elasticsearch_adapter.rb +14 -17
  65. data/lib/blazer/adapters/mongodb_adapter.rb +1 -1
  66. data/lib/blazer/adapters/sql_adapter.rb +7 -1
  67. data/lib/blazer/engine.rb +4 -0
  68. data/lib/blazer/result.rb +62 -29
  69. data/lib/blazer/run_statement_job.rb +6 -9
  70. data/lib/blazer/version.rb +1 -1
  71. data/lib/generators/blazer/templates/config.yml.tt +13 -2
  72. data/lib/generators/blazer/templates/install.rb.tt +1 -0
  73. data/lib/tasks/blazer.rake +1 -0
  74. metadata +33 -37
  75. data/.gitattributes +0 -1
  76. data/.github/ISSUE_TEMPLATE.md +0 -7
  77. data/.gitignore +0 -14
  78. data/Gemfile +0 -7
  79. data/Rakefile +0 -1
  80. data/app/assets/javascripts/blazer/highlight.pack.js +0 -1
  81. data/app/assets/javascripts/blazer/moment-timezone.js +0 -1007
  82. data/app/assets/stylesheets/blazer/daterangepicker-bs3.css +0 -375
  83. data/blazer.gemspec +0 -30
@@ -1,375 +0,0 @@
1
- /**
2
- * A stylesheet for use with Bootstrap 3.x
3
- * @author: Dan Grossman http://www.dangrossman.info/
4
- * @copyright: Copyright (c) 2012-2015 Dan Grossman. All rights reserved.
5
- * @license: Licensed under the MIT license. See http://www.opensource.org/licenses/mit-license.php
6
- * @website: https://www.improvely.com/
7
- */
8
-
9
- /* Container Appearance */
10
-
11
- .daterangepicker {
12
- position: absolute;
13
- background: #fff;
14
- top: 100px;
15
- left: 20px;
16
- padding: 4px;
17
- margin-top: 1px;
18
- border-radius: 4px;
19
- width:278px;
20
- }
21
-
22
- .daterangepicker.opensleft:before {
23
- position: absolute;
24
- top: -7px;
25
- right: 9px;
26
- display: inline-block;
27
- border-right: 7px solid transparent;
28
- border-bottom: 7px solid #ccc;
29
- border-left: 7px solid transparent;
30
- border-bottom-color: rgba(0, 0, 0, 0.2);
31
- content: '';
32
- }
33
-
34
- .daterangepicker.opensleft:after {
35
- position: absolute;
36
- top: -6px;
37
- right: 10px;
38
- display: inline-block;
39
- border-right: 6px solid transparent;
40
- border-bottom: 6px solid #fff;
41
- border-left: 6px solid transparent;
42
- content: '';
43
- }
44
-
45
- .daterangepicker.openscenter:before {
46
- position: absolute;
47
- top: -7px;
48
- left: 0;
49
- right: 0;
50
- width: 0;
51
- margin-left: auto;
52
- margin-right: auto;
53
- display: inline-block;
54
- border-right: 7px solid transparent;
55
- border-bottom: 7px solid #ccc;
56
- border-left: 7px solid transparent;
57
- border-bottom-color: rgba(0, 0, 0, 0.2);
58
- content: '';
59
- }
60
-
61
- .daterangepicker.openscenter:after {
62
- position: absolute;
63
- top: -6px;
64
- left: 0;
65
- right: 0;
66
- width: 0;
67
- margin-left: auto;
68
- margin-right: auto;
69
- display: inline-block;
70
- border-right: 6px solid transparent;
71
- border-bottom: 6px solid #fff;
72
- border-left: 6px solid transparent;
73
- content: '';
74
- }
75
-
76
- .daterangepicker.opensright:before {
77
- position: absolute;
78
- top: -7px;
79
- left: 9px;
80
- display: inline-block;
81
- border-right: 7px solid transparent;
82
- border-bottom: 7px solid #ccc;
83
- border-left: 7px solid transparent;
84
- border-bottom-color: rgba(0, 0, 0, 0.2);
85
- content: '';
86
- }
87
-
88
- .daterangepicker.opensright:after {
89
- position: absolute;
90
- top: -6px;
91
- left: 10px;
92
- display: inline-block;
93
- border-right: 6px solid transparent;
94
- border-bottom: 6px solid #fff;
95
- border-left: 6px solid transparent;
96
- content: '';
97
- }
98
-
99
- .daterangepicker.dropup{
100
- margin-top: -5px;
101
- }
102
- .daterangepicker.dropup:before{
103
- top: initial;
104
- bottom:-7px;
105
- border-bottom: initial;
106
- border-top: 7px solid #ccc;
107
- }
108
- .daterangepicker.dropup:after{
109
- top: initial;
110
- bottom:-6px;
111
- border-bottom: initial;
112
- border-top: 6px solid #fff;
113
- }
114
-
115
- .daterangepicker.dropdown-menu {
116
- max-width: none;
117
- z-index: 3000;
118
- }
119
-
120
- .daterangepicker.single .ranges, .daterangepicker.single .calendar {
121
- float: none;
122
- }
123
-
124
- .daterangepicker .calendar {
125
- display: none;
126
- max-width: 270px;
127
- margin: 4px;
128
- }
129
-
130
- .daterangepicker.show-calendar .calendar {
131
- display: block;
132
- }
133
-
134
- .daterangepicker .calendar.single .calendar-table {
135
- border: none;
136
- }
137
-
138
- /* Calendars */
139
-
140
- .daterangepicker .calendar th, .daterangepicker .calendar td {
141
- white-space: nowrap;
142
- text-align: center;
143
- min-width: 32px;
144
- }
145
-
146
- .daterangepicker .calendar-table {
147
- border: 1px solid #ddd;
148
- padding: 4px;
149
- border-radius: 4px;
150
- background: #fff;
151
- }
152
-
153
- .daterangepicker table {
154
- width: 100%;
155
- margin: 0;
156
- }
157
-
158
- .daterangepicker td, .daterangepicker th {
159
- text-align: center;
160
- width: 20px;
161
- height: 20px;
162
- border-radius: 4px;
163
- white-space: nowrap;
164
- cursor: pointer;
165
- }
166
-
167
- .daterangepicker td.off, .daterangepicker td.off.in-range, .daterangepicker td.off.start-date, .daterangepicker td.off.end-date {
168
- color: #999;
169
- background: #fff;
170
- }
171
-
172
- .daterangepicker td.disabled, .daterangepicker option.disabled {
173
- color: #999;
174
- cursor: not-allowed;
175
- text-decoration: line-through;
176
- }
177
-
178
- .daterangepicker td.available:hover, .daterangepicker th.available:hover {
179
- background: #eee;
180
- }
181
-
182
- .daterangepicker td.in-range {
183
- background: #ebf4f8;
184
- border-radius: 0;
185
- }
186
-
187
- .daterangepicker td.start-date {
188
- border-radius: 4px 0 0 4px;
189
- }
190
-
191
- .daterangepicker td.end-date {
192
- border-radius: 0 4px 4px 0;
193
- }
194
-
195
- .daterangepicker td.start-date.end-date {
196
- border-radius: 4px;
197
- }
198
-
199
- .daterangepicker td.active, .daterangepicker td.active:hover {
200
- background-color: #357ebd;
201
- border-color: #3071a9;
202
- color: #fff;
203
- }
204
-
205
- .daterangepicker td.week, .daterangepicker th.week {
206
- font-size: 80%;
207
- color: #ccc;
208
- }
209
-
210
- .daterangepicker select.monthselect, .daterangepicker select.yearselect {
211
- font-size: 12px;
212
- padding: 1px;
213
- height: auto;
214
- margin: 0;
215
- cursor: default;
216
- }
217
-
218
- .daterangepicker select.monthselect {
219
- margin-right: 2%;
220
- width: 56%;
221
- }
222
-
223
- .daterangepicker select.yearselect {
224
- width: 40%;
225
- }
226
-
227
- .daterangepicker select.hourselect, .daterangepicker select.minuteselect, .daterangepicker select.secondselect, .daterangepicker select.ampmselect {
228
- width: 50px;
229
- margin-bottom: 0;
230
- }
231
-
232
- .daterangepicker th.month {
233
- width: auto;
234
- }
235
-
236
- /* Text Input Above Each Calendar */
237
-
238
- .daterangepicker .input-mini {
239
- border: 1px solid #ccc;
240
- border-radius: 4px;
241
- color: #555;
242
- display: block;
243
- height: 30px;
244
- line-height: 30px;
245
- vertical-align: middle;
246
- margin: 0 0 5px 0;
247
- padding: 0 6px 0 28px;
248
- width: 100%;
249
- }
250
-
251
- .daterangepicker .input-mini.active {
252
- border: 1px solid #357ebd;
253
- }
254
-
255
- .daterangepicker .daterangepicker_input i {
256
- position: absolute;
257
- left: 8px;
258
- top: 8px;
259
- }
260
-
261
- .daterangepicker .daterangepicker_input {
262
- position: relative;
263
- }
264
-
265
- /* Time Picker */
266
-
267
- .daterangepicker .calendar-time {
268
- text-align: center;
269
- margin: 5px auto;
270
- line-height: 30px;
271
- position: relative;
272
- padding-left: 28px;
273
- }
274
-
275
- .daterangepicker .calendar-time select.disabled {
276
- color: #ccc;
277
- cursor: not-allowed;
278
- }
279
-
280
- /* Predefined Ranges */
281
-
282
- .daterangepicker .ranges {
283
- font-size: 11px;
284
- float: none;
285
- margin: 4px;
286
- text-align: left;
287
- }
288
-
289
- .daterangepicker .ranges ul {
290
- list-style: none;
291
- margin: 0 auto;
292
- padding: 0;
293
- width: 100%;
294
- }
295
-
296
- .daterangepicker .ranges li {
297
- font-size: 13px;
298
- background: #f5f5f5;
299
- border: 1px solid #f5f5f5;
300
- color: #08c;
301
- padding: 3px 12px;
302
- margin-bottom: 8px;
303
- border-radius: 5px;
304
- cursor: pointer;
305
- }
306
-
307
- .daterangepicker .ranges li.active, .daterangepicker .ranges li:hover {
308
- background: #08c;
309
- border: 1px solid #08c;
310
- color: #fff;
311
- }
312
-
313
- /* Larger Screen Styling */
314
- @media (min-width: 564px) {
315
- .daterangepicker{
316
- width: auto;
317
- }
318
-
319
- .daterangepicker .ranges ul {
320
- width: 160px;
321
- }
322
- .daterangepicker.single .ranges ul {
323
- width: 100%;
324
- }
325
- .daterangepicker .calendar.left .calendar-table {
326
- border-right: none;
327
- border-top-right-radius: 0;
328
- border-bottom-right-radius: 0;
329
- }
330
-
331
- .daterangepicker .calendar.right .calendar-table {
332
- border-left: none;
333
- border-top-left-radius: 0;
334
- border-bottom-left-radius: 0;
335
- }
336
-
337
- .daterangepicker .calendar.left {
338
- clear: left;
339
- margin-right: 0;
340
- }
341
- .daterangepicker.single .calendar.left {
342
- clear: none;
343
- }
344
- .daterangepicker.single .ranges,
345
- .daterangepicker.single .calendar{
346
- float:left;
347
- }
348
-
349
- .daterangepicker .calendar.right {
350
- margin-left: 0;
351
- }
352
-
353
- .daterangepicker .left .daterangepicker_input {
354
- padding-right: 12px;
355
- }
356
-
357
- .daterangepicker .calendar.left .calendar-table {
358
- padding-right: 12px;
359
- }
360
-
361
- .daterangepicker .ranges,
362
- .daterangepicker .calendar {
363
- float: left;
364
- }
365
- }
366
-
367
- @media (min-width: 730px) {
368
- .daterangepicker .ranges {
369
- width: auto;
370
- float: left;
371
- }
372
- .daterangepicker .calendar.left {
373
- clear: none;
374
- }
375
- }
data/blazer.gemspec DELETED
@@ -1,30 +0,0 @@
1
- # coding: utf-8
2
- lib = File.expand_path("../lib", __FILE__)
3
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require "blazer/version"
5
-
6
- Gem::Specification.new do |spec|
7
- spec.name = "sql-jarvis"
8
- spec.version = Blazer::VERSION
9
- spec.authors = ["ThanhKhoaIT"]
10
- spec.email = ["thanhkhoait@gmail.com"]
11
- spec.summary = "Fork from ankane! Explore your data with SQL. Easily create charts and dashboards, and share them with your team."
12
- spec.homepage = "https://github.com/ThanhKhoaIT/blazer"
13
- spec.license = "MIT"
14
-
15
- spec.files = `git ls-files -z`.split("\x0")
16
- spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
17
- spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
18
- spec.require_paths = ["lib"]
19
-
20
- spec.add_dependency "zip-zip"
21
- spec.add_dependency "axlsx"
22
- spec.add_dependency "axlsx_rails"
23
- spec.add_dependency "railties", ">= 4"
24
- spec.add_dependency "activerecord", ">= 4"
25
- spec.add_dependency "chartkick"
26
- spec.add_dependency "safely_block", ">= 0.1.1"
27
-
28
- spec.add_development_dependency "bundler", "~> 1.7"
29
- spec.add_development_dependency "rake", "~> 10.0"
30
- end