daru-data_tables 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 1aa4862903d3e3efa2d6aeb802c6a36dad7aa86b
4
+ data.tar.gz: d2c5bfdef9cf9d81297c158a48e0c93ad45e27d2
5
+ SHA512:
6
+ metadata.gz: b85f4a026f9dcfc330cdc7ff764998ccc1cb21a9e8b453cf796425e442fc877dc39011f8fe5cb167c44ef60031e80e18c8da06f63c1b90cbc6e3d7694de4ee00
7
+ data.tar.gz: ca88214f12668bfb1653ba31ee5ca519f53876945ab0f95707af7f2f47d0f9329c783226a49630d5b9b4865ecc2653235537508d87f2ea26fdb5dd43198978d6
data/.gitignore ADDED
@@ -0,0 +1,9 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /Gemfile.lock
4
+ /_yardoc/
5
+ /coverage/
6
+ /doc/
7
+ /pkg/
8
+ /spec/reports/
9
+ /tmp/
data/.rubocop.yml ADDED
@@ -0,0 +1,113 @@
1
+ AllCops:
2
+ Include:
3
+ - 'lib/**/*'
4
+ Exclude:
5
+ - 'Rakefile'
6
+ - 'Gemfile'
7
+ - 'Guardfile'
8
+ - '**/*.erb'
9
+ - '**/*.js'
10
+ - '**/*.css'
11
+ - 'spec/*'
12
+ - 'spec/**/*'
13
+ - 'vendor/**/*'
14
+ - 'benchmarks/*'
15
+ - 'profile/*'
16
+ - 'bin/*'
17
+ - 'daru-data_tables.gemspec'
18
+ - '**/*.rake'
19
+ DisplayCopNames: true
20
+ TargetRubyVersion: 2.0
21
+
22
+ # Preferred codebase style ---------------------------------------------
23
+ Layout/ExtraSpacing:
24
+ AllowForAlignment: true
25
+
26
+ Style/FormatString:
27
+ EnforcedStyle: percent
28
+
29
+ Style/AndOr:
30
+ EnforcedStyle: conditionals
31
+
32
+ Layout/SpaceAroundEqualsInParameterDefault:
33
+ EnforcedStyle: no_space
34
+
35
+ Layout/SpaceInsideBlockBraces:
36
+ EnforcedStyle: space
37
+
38
+ Layout/SpaceInsideHashLiteralBraces:
39
+ EnforcedStyle: no_space
40
+
41
+ Layout/AlignParameters:
42
+ EnforcedStyle: with_fixed_indentation
43
+
44
+ Style/EmptyElse:
45
+ EnforcedStyle: empty
46
+
47
+ Metrics/LineLength:
48
+ Max: 120
49
+
50
+ Metrics/ModuleLength:
51
+ Max: 200
52
+
53
+ Metrics/ClassLength:
54
+ Max: 200
55
+
56
+ Style/ParallelAssignment:
57
+ Enabled: false
58
+
59
+ Style/DoubleNegation:
60
+ Enabled: false
61
+
62
+ Style/SingleLineBlockParams:
63
+ Enabled: false
64
+
65
+ Style/PerlBackrefs:
66
+ Enabled: false
67
+
68
+ Layout/SpaceAfterComma:
69
+ Enabled: false
70
+
71
+ Layout/SpaceAroundOperators:
72
+ Enabled: false
73
+
74
+ Style/EmptyCaseCondition:
75
+ Enabled: false
76
+
77
+ Style/MultilineBlockChain:
78
+ Enabled: false
79
+
80
+ # See https://github.com/bbatsov/rubocop/issues/4429
81
+ Style/YodaCondition:
82
+ Enabled: false
83
+
84
+ Style/PercentLiteralDelimiters:
85
+ PreferredDelimiters:
86
+ '%i': '[]'
87
+ '%w': '[]'
88
+
89
+ # Neither of prefered styles are good enough :(
90
+ Style/BlockDelimiters:
91
+ Enabled: false
92
+
93
+ # Current preferred metrics --------------------------------------------
94
+ # Better values are encouraged, but not required.
95
+ Metrics/AbcSize:
96
+ Max: 20
97
+
98
+ Metrics/MethodLength:
99
+ Max: 15
100
+
101
+ Metrics/CyclomaticComplexity:
102
+ Max: 7
103
+
104
+ # TODO -----------------------------------------------------------------
105
+
106
+ Style/Documentation:
107
+ Enabled: false
108
+
109
+ Security/MarshalLoad:
110
+ Enabled: false
111
+
112
+ Performance/RedundantMatch:
113
+ Enabled: false
data/.travis.yml ADDED
@@ -0,0 +1,18 @@
1
+ language:
2
+ ruby
3
+
4
+ rvm:
5
+ - '2.0'
6
+ - '2.1'
7
+ - '2.2'
8
+ - '2.3.0'
9
+ - '2.4.0'
10
+
11
+ script:
12
+ - bundle exec rspec
13
+ - bundle exec rubocop
14
+
15
+ install:
16
+ - gem install bundler
17
+ - gem install rainbow -v '2.2.1'
18
+ - bundle install
@@ -0,0 +1,74 @@
1
+ # Contributor Covenant Code of Conduct
2
+
3
+ ## Our Pledge
4
+
5
+ In the interest of fostering an open and welcoming environment, we as
6
+ contributors and maintainers pledge to making participation in our project and
7
+ our community a harassment-free experience for everyone, regardless of age, body
8
+ size, disability, ethnicity, gender identity and expression, level of experience,
9
+ nationality, personal appearance, race, religion, or sexual identity and
10
+ orientation.
11
+
12
+ ## Our Standards
13
+
14
+ Examples of behavior that contributes to creating a positive environment
15
+ include:
16
+
17
+ * Using welcoming and inclusive language
18
+ * Being respectful of differing viewpoints and experiences
19
+ * Gracefully accepting constructive criticism
20
+ * Focusing on what is best for the community
21
+ * Showing empathy towards other community members
22
+
23
+ Examples of unacceptable behavior by participants include:
24
+
25
+ * The use of sexualized language or imagery and unwelcome sexual attention or
26
+ advances
27
+ * Trolling, insulting/derogatory comments, and personal or political attacks
28
+ * Public or private harassment
29
+ * Publishing others' private information, such as a physical or electronic
30
+ address, without explicit permission
31
+ * Other conduct which could reasonably be considered inappropriate in a
32
+ professional setting
33
+
34
+ ## Our Responsibilities
35
+
36
+ Project maintainers are responsible for clarifying the standards of acceptable
37
+ behavior and are expected to take appropriate and fair corrective action in
38
+ response to any instances of unacceptable behavior.
39
+
40
+ Project maintainers have the right and responsibility to remove, edit, or
41
+ reject comments, commits, code, wiki edits, issues, and other contributions
42
+ that are not aligned to this Code of Conduct, or to ban temporarily or
43
+ permanently any contributor for other behaviors that they deem inappropriate,
44
+ threatening, offensive, or harmful.
45
+
46
+ ## Scope
47
+
48
+ This Code of Conduct applies both within project spaces and in public spaces
49
+ when an individual is representing the project or its community. Examples of
50
+ representing a project or community include using an official project e-mail
51
+ address, posting via an official social media account, or acting as an appointed
52
+ representative at an online or offline event. Representation of a project may be
53
+ further defined and clarified by project maintainers.
54
+
55
+ ## Enforcement
56
+
57
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
58
+ reported by contacting the project team at shekharstudy@ymail.com. All
59
+ complaints will be reviewed and investigated and will result in a response that
60
+ is deemed necessary and appropriate to the circumstances. The project team is
61
+ obligated to maintain confidentiality with regard to the reporter of an incident.
62
+ Further details of specific enforcement policies may be posted separately.
63
+
64
+ Project maintainers who do not follow or enforce the Code of Conduct in good
65
+ faith may face temporary or permanent repercussions as determined by other
66
+ members of the project's leadership.
67
+
68
+ ## Attribution
69
+
70
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
71
+ available at [http://contributor-covenant.org/version/1/4][version]
72
+
73
+ [homepage]: http://contributor-covenant.org
74
+ [version]: http://contributor-covenant.org/version/1/4/
data/Gemfile ADDED
@@ -0,0 +1,7 @@
1
+ source "https://rubygems.org"
2
+
3
+ # daru
4
+ gem "daru", git: 'https://github.com/sciruby/daru.git'
5
+
6
+ # Specify your gem's dependencies in datatables.gemspec
7
+ gemspec
data/LICENSE.txt ADDED
@@ -0,0 +1,21 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2017 shekharrajak
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,57 @@
1
+ # data_tables
2
+
3
+ This is Ruby gem for the jQuery Javascript library. This gem is created to be used in [daru-view](https://guthub.com/shekharrajak/daru-view). It can create table from Daru::DataFrame and Daru::Vector to display in webpages as well as IRuby notebook.
4
+
5
+ DataTable is very useful in loading large dataset and also we can load data into pieces.
6
+
7
+ ## Examples :
8
+
9
+ - [IRuby notebook examples](http://nbviewer.jupyter.org/github/Shekharrajak/data_tables/tree/master/spec/dummy_iruby/)
10
+
11
+ ## Installation
12
+
13
+ Add this line to your application's Gemfile:
14
+
15
+ ```ruby
16
+ gem 'daru-data_tables'
17
+ ```
18
+
19
+ And then execute:
20
+
21
+ $ bundle
22
+
23
+ Or install it yourself as:
24
+
25
+ $ gem install daru-data_tables
26
+
27
+ ## Usage
28
+
29
+ See iruby notebook examples and spec/dummy_rails examples.
30
+
31
+ It can work in any ruby web application (e.g. Rails/Sinatra/Nanoc)
32
+
33
+
34
+ ## Update to latest js library. Additional command line
35
+
36
+ To update to the current data_tables js and css files you can always run
37
+
38
+ rake data_tables:update
39
+
40
+
41
+ ## Development
42
+
43
+ After checking out the repo, run `bin/setup` to install dependencies. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
44
+
45
+ To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
46
+
47
+ ## Contributing
48
+
49
+ Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/data_tables. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
50
+
51
+ ## License
52
+
53
+ The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
54
+
55
+ ## Code of Conduct
56
+
57
+ Everyone interacting in the data_tables project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/[USERNAME]/data_tables/blob/master/CODE_OF_CONDUCT.md).
data/Rakefile ADDED
@@ -0,0 +1,4 @@
1
+ require "bundler/gem_tasks"
2
+ task :default => :spec
3
+
4
+ import 'lib/tasks/data_tables.rake'
@@ -0,0 +1,32 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path("../lib", __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require "daru/data_tables/version"
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "daru-data_tables"
8
+ spec.version = Daru::DataTables::VERSION
9
+ spec.authors = ["shekharrajak"]
10
+ spec.email = ["shekharstudy@ymail.com"]
11
+
12
+ spec.summary = %q{Ruby gem for the jQuery Javascript library Datatables}
13
+ spec.description = %q{Ruby gem for the jQuery Javascript library Datatables}
14
+ spec.homepage = "https://github.com/shekharrajak/data_tables"
15
+ spec.license = "MIT"
16
+
17
+ spec.files = `git ls-files -z`.split("\x0").reject do |f|
18
+ f.match(%r{^(test|spec|features)/})
19
+ end
20
+ spec.bindir = "exe"
21
+ spec.require_paths = ["lib"]
22
+
23
+ spec.add_development_dependency "bundler", "~> 1.15"
24
+ spec.add_development_dependency "rake", "~> 10.0"
25
+ spec.add_development_dependency 'actionview'
26
+ spec.add_development_dependency 'byebug'
27
+
28
+ spec.add_development_dependency 'rspec', '~> 3.4'
29
+ spec.add_development_dependency 'simplecov'
30
+ spec.add_development_dependency 'pry', '~> 0.10'
31
+ spec.add_development_dependency 'rubocop'
32
+ end
@@ -0,0 +1,4 @@
1
+ require 'daru/data_tables/version'
2
+ require 'daru/data_tables/data_table'
3
+ require 'daru/data_tables/display/iruby_notebook'
4
+ require 'daru/data_tables/display/display'
@@ -0,0 +1,448 @@
1
+ /*
2
+ * Table styles
3
+ */
4
+ table.dataTable {
5
+ width: 100%;
6
+ margin: 0 auto;
7
+ clear: both;
8
+ border-collapse: separate;
9
+ border-spacing: 0;
10
+ /*
11
+ * Header and footer styles
12
+ */
13
+ /*
14
+ * Body styles
15
+ */
16
+ }
17
+ table.dataTable thead th,
18
+ table.dataTable tfoot th {
19
+ font-weight: bold;
20
+ }
21
+ table.dataTable thead th,
22
+ table.dataTable thead td {
23
+ padding: 10px 18px;
24
+ border-bottom: 1px solid #111111;
25
+ }
26
+ table.dataTable thead th:active,
27
+ table.dataTable thead td:active {
28
+ outline: none;
29
+ }
30
+ table.dataTable tfoot th,
31
+ table.dataTable tfoot td {
32
+ padding: 10px 18px 6px 18px;
33
+ border-top: 1px solid #111111;
34
+ }
35
+ table.dataTable thead .sorting,
36
+ table.dataTable thead .sorting_asc,
37
+ table.dataTable thead .sorting_desc,
38
+ table.dataTable thead .sorting_asc_disabled,
39
+ table.dataTable thead .sorting_desc_disabled {
40
+ cursor: pointer;
41
+ *cursor: hand;
42
+ background-repeat: no-repeat;
43
+ background-position: center right;
44
+ }
45
+ table.dataTable thead .sorting {
46
+ background-image: url("../images/sort_both.png");
47
+ }
48
+ table.dataTable thead .sorting_asc {
49
+ background-image: url("../images/sort_asc.png");
50
+ }
51
+ table.dataTable thead .sorting_desc {
52
+ background-image: url("../images/sort_desc.png");
53
+ }
54
+ table.dataTable thead .sorting_asc_disabled {
55
+ background-image: url("../images/sort_asc_disabled.png");
56
+ }
57
+ table.dataTable thead .sorting_desc_disabled {
58
+ background-image: url("../images/sort_desc_disabled.png");
59
+ }
60
+ table.dataTable tbody tr {
61
+ background-color: white;
62
+ }
63
+ table.dataTable tbody tr.selected {
64
+ background-color: #b0bed9;
65
+ }
66
+ table.dataTable tbody th,
67
+ table.dataTable tbody td {
68
+ padding: 8px 10px;
69
+ }
70
+ table.dataTable.row-border tbody th, table.dataTable.row-border tbody td, table.dataTable.display tbody th, table.dataTable.display tbody td {
71
+ border-top: 1px solid #dddddd;
72
+ }
73
+ table.dataTable.row-border tbody tr:first-child th,
74
+ table.dataTable.row-border tbody tr:first-child td, table.dataTable.display tbody tr:first-child th,
75
+ table.dataTable.display tbody tr:first-child td {
76
+ border-top: none;
77
+ }
78
+ table.dataTable.cell-border tbody th, table.dataTable.cell-border tbody td {
79
+ border-top: 1px solid #dddddd;
80
+ border-right: 1px solid #dddddd;
81
+ }
82
+ table.dataTable.cell-border tbody tr th:first-child,
83
+ table.dataTable.cell-border tbody tr td:first-child {
84
+ border-left: 1px solid #dddddd;
85
+ }
86
+ table.dataTable.cell-border tbody tr:first-child th,
87
+ table.dataTable.cell-border tbody tr:first-child td {
88
+ border-top: none;
89
+ }
90
+ table.dataTable.stripe tbody tr.odd, table.dataTable.display tbody tr.odd {
91
+ background-color: #f9f9f9;
92
+ }
93
+ table.dataTable.stripe tbody tr.odd.selected, table.dataTable.display tbody tr.odd.selected {
94
+ background-color: #abb9d3;
95
+ }
96
+ table.dataTable.hover tbody tr:hover, table.dataTable.display tbody tr:hover {
97
+ background-color: whitesmoke;
98
+ }
99
+ table.dataTable.hover tbody tr:hover.selected, table.dataTable.display tbody tr:hover.selected {
100
+ background-color: #a9b7d1;
101
+ }
102
+ table.dataTable.order-column tbody tr > .sorting_1,
103
+ table.dataTable.order-column tbody tr > .sorting_2,
104
+ table.dataTable.order-column tbody tr > .sorting_3, table.dataTable.display tbody tr > .sorting_1,
105
+ table.dataTable.display tbody tr > .sorting_2,
106
+ table.dataTable.display tbody tr > .sorting_3 {
107
+ background-color: #f9f9f9;
108
+ }
109
+ table.dataTable.order-column tbody tr.selected > .sorting_1,
110
+ table.dataTable.order-column tbody tr.selected > .sorting_2,
111
+ table.dataTable.order-column tbody tr.selected > .sorting_3, table.dataTable.display tbody tr.selected > .sorting_1,
112
+ table.dataTable.display tbody tr.selected > .sorting_2,
113
+ table.dataTable.display tbody tr.selected > .sorting_3 {
114
+ background-color: #acbad4;
115
+ }
116
+ table.dataTable.display tbody tr.odd > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd > .sorting_1 {
117
+ background-color: #f1f1f1;
118
+ }
119
+ table.dataTable.display tbody tr.odd > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd > .sorting_2 {
120
+ background-color: #f3f3f3;
121
+ }
122
+ table.dataTable.display tbody tr.odd > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd > .sorting_3 {
123
+ background-color: whitesmoke;
124
+ }
125
+ table.dataTable.display tbody tr.odd.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_1 {
126
+ background-color: #a6b3cd;
127
+ }
128
+ table.dataTable.display tbody tr.odd.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_2 {
129
+ background-color: #a7b5ce;
130
+ }
131
+ table.dataTable.display tbody tr.odd.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_3 {
132
+ background-color: #a9b6d0;
133
+ }
134
+ table.dataTable.display tbody tr.even > .sorting_1, table.dataTable.order-column.stripe tbody tr.even > .sorting_1 {
135
+ background-color: #f9f9f9;
136
+ }
137
+ table.dataTable.display tbody tr.even > .sorting_2, table.dataTable.order-column.stripe tbody tr.even > .sorting_2 {
138
+ background-color: #fbfbfb;
139
+ }
140
+ table.dataTable.display tbody tr.even > .sorting_3, table.dataTable.order-column.stripe tbody tr.even > .sorting_3 {
141
+ background-color: #fdfdfd;
142
+ }
143
+ table.dataTable.display tbody tr.even.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_1 {
144
+ background-color: #acbad4;
145
+ }
146
+ table.dataTable.display tbody tr.even.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_2 {
147
+ background-color: #adbbd6;
148
+ }
149
+ table.dataTable.display tbody tr.even.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_3 {
150
+ background-color: #afbdd8;
151
+ }
152
+ table.dataTable.display tbody tr:hover > .sorting_1, table.dataTable.order-column.hover tbody tr:hover > .sorting_1 {
153
+ background-color: #eaeaea;
154
+ }
155
+ table.dataTable.display tbody tr:hover > .sorting_2, table.dataTable.order-column.hover tbody tr:hover > .sorting_2 {
156
+ background-color: #ebebeb;
157
+ }
158
+ table.dataTable.display tbody tr:hover > .sorting_3, table.dataTable.order-column.hover tbody tr:hover > .sorting_3 {
159
+ background-color: #eeeeee;
160
+ }
161
+ table.dataTable.display tbody tr:hover.selected > .sorting_1, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1 {
162
+ background-color: #a1aec7;
163
+ }
164
+ table.dataTable.display tbody tr:hover.selected > .sorting_2, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2 {
165
+ background-color: #a2afc8;
166
+ }
167
+ table.dataTable.display tbody tr:hover.selected > .sorting_3, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3 {
168
+ background-color: #a4b2cb;
169
+ }
170
+ table.dataTable.no-footer {
171
+ border-bottom: 1px solid #111111;
172
+ }
173
+ table.dataTable.nowrap th, table.dataTable.nowrap td {
174
+ white-space: nowrap;
175
+ }
176
+ table.dataTable.compact thead th,
177
+ table.dataTable.compact thead td {
178
+ padding: 4px 17px 4px 4px;
179
+ }
180
+ table.dataTable.compact tfoot th,
181
+ table.dataTable.compact tfoot td {
182
+ padding: 4px;
183
+ }
184
+ table.dataTable.compact tbody th,
185
+ table.dataTable.compact tbody td {
186
+ padding: 4px;
187
+ }
188
+ table.dataTable th.dt-left,
189
+ table.dataTable td.dt-left {
190
+ text-align: left;
191
+ }
192
+ table.dataTable th.dt-center,
193
+ table.dataTable td.dt-center,
194
+ table.dataTable td.dataTables_empty {
195
+ text-align: center;
196
+ }
197
+ table.dataTable th.dt-right,
198
+ table.dataTable td.dt-right {
199
+ text-align: right;
200
+ }
201
+ table.dataTable th.dt-justify,
202
+ table.dataTable td.dt-justify {
203
+ text-align: justify;
204
+ }
205
+ table.dataTable th.dt-nowrap,
206
+ table.dataTable td.dt-nowrap {
207
+ white-space: nowrap;
208
+ }
209
+ table.dataTable thead th.dt-head-left,
210
+ table.dataTable thead td.dt-head-left,
211
+ table.dataTable tfoot th.dt-head-left,
212
+ table.dataTable tfoot td.dt-head-left {
213
+ text-align: left;
214
+ }
215
+ table.dataTable thead th.dt-head-center,
216
+ table.dataTable thead td.dt-head-center,
217
+ table.dataTable tfoot th.dt-head-center,
218
+ table.dataTable tfoot td.dt-head-center {
219
+ text-align: center;
220
+ }
221
+ table.dataTable thead th.dt-head-right,
222
+ table.dataTable thead td.dt-head-right,
223
+ table.dataTable tfoot th.dt-head-right,
224
+ table.dataTable tfoot td.dt-head-right {
225
+ text-align: right;
226
+ }
227
+ table.dataTable thead th.dt-head-justify,
228
+ table.dataTable thead td.dt-head-justify,
229
+ table.dataTable tfoot th.dt-head-justify,
230
+ table.dataTable tfoot td.dt-head-justify {
231
+ text-align: justify;
232
+ }
233
+ table.dataTable thead th.dt-head-nowrap,
234
+ table.dataTable thead td.dt-head-nowrap,
235
+ table.dataTable tfoot th.dt-head-nowrap,
236
+ table.dataTable tfoot td.dt-head-nowrap {
237
+ white-space: nowrap;
238
+ }
239
+ table.dataTable tbody th.dt-body-left,
240
+ table.dataTable tbody td.dt-body-left {
241
+ text-align: left;
242
+ }
243
+ table.dataTable tbody th.dt-body-center,
244
+ table.dataTable tbody td.dt-body-center {
245
+ text-align: center;
246
+ }
247
+ table.dataTable tbody th.dt-body-right,
248
+ table.dataTable tbody td.dt-body-right {
249
+ text-align: right;
250
+ }
251
+ table.dataTable tbody th.dt-body-justify,
252
+ table.dataTable tbody td.dt-body-justify {
253
+ text-align: justify;
254
+ }
255
+ table.dataTable tbody th.dt-body-nowrap,
256
+ table.dataTable tbody td.dt-body-nowrap {
257
+ white-space: nowrap;
258
+ }
259
+
260
+ table.dataTable,
261
+ table.dataTable th,
262
+ table.dataTable td {
263
+ box-sizing: content-box;
264
+ }
265
+
266
+ /*
267
+ * Control feature layout
268
+ */
269
+ .dataTables_wrapper {
270
+ position: relative;
271
+ clear: both;
272
+ *zoom: 1;
273
+ zoom: 1;
274
+ }
275
+ .dataTables_wrapper .dataTables_length {
276
+ float: left;
277
+ }
278
+ .dataTables_wrapper .dataTables_filter {
279
+ float: right;
280
+ text-align: right;
281
+ }
282
+ .dataTables_wrapper .dataTables_filter input {
283
+ margin-left: 0.5em;
284
+ }
285
+ .dataTables_wrapper .dataTables_info {
286
+ clear: both;
287
+ float: left;
288
+ padding-top: 0.755em;
289
+ }
290
+ .dataTables_wrapper .dataTables_paginate {
291
+ float: right;
292
+ text-align: right;
293
+ padding-top: 0.25em;
294
+ }
295
+ .dataTables_wrapper .dataTables_paginate .paginate_button {
296
+ box-sizing: border-box;
297
+ display: inline-block;
298
+ min-width: 1.5em;
299
+ padding: 0.5em 1em;
300
+ margin-left: 2px;
301
+ text-align: center;
302
+ text-decoration: none !important;
303
+ cursor: pointer;
304
+ *cursor: hand;
305
+ color: #333333 !important;
306
+ border: 1px solid transparent;
307
+ border-radius: 2px;
308
+ }
309
+ .dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
310
+ color: #333333 !important;
311
+ border: 1px solid #979797;
312
+ background-color: white;
313
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, white), color-stop(100%, gainsboro));
314
+ /* Chrome,Safari4+ */
315
+ background: -webkit-linear-gradient(top, white 0%, gainsboro 100%);
316
+ /* Chrome10+,Safari5.1+ */
317
+ background: -moz-linear-gradient(top, white 0%, gainsboro 100%);
318
+ /* FF3.6+ */
319
+ background: -ms-linear-gradient(top, white 0%, gainsboro 100%);
320
+ /* IE10+ */
321
+ background: -o-linear-gradient(top, white 0%, gainsboro 100%);
322
+ /* Opera 11.10+ */
323
+ background: linear-gradient(to bottom, white 0%, gainsboro 100%);
324
+ /* W3C */
325
+ }
326
+ .dataTables_wrapper .dataTables_paginate .paginate_button.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active {
327
+ cursor: default;
328
+ color: #666 !important;
329
+ border: 1px solid transparent;
330
+ background: transparent;
331
+ box-shadow: none;
332
+ }
333
+ .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
334
+ color: white !important;
335
+ border: 1px solid #111111;
336
+ background-color: #585858;
337
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #585858), color-stop(100%, #111111));
338
+ /* Chrome,Safari4+ */
339
+ background: -webkit-linear-gradient(top, #585858 0%, #111111 100%);
340
+ /* Chrome10+,Safari5.1+ */
341
+ background: -moz-linear-gradient(top, #585858 0%, #111111 100%);
342
+ /* FF3.6+ */
343
+ background: -ms-linear-gradient(top, #585858 0%, #111111 100%);
344
+ /* IE10+ */
345
+ background: -o-linear-gradient(top, #585858 0%, #111111 100%);
346
+ /* Opera 11.10+ */
347
+ background: linear-gradient(to bottom, #585858 0%, #111111 100%);
348
+ /* W3C */
349
+ }
350
+ .dataTables_wrapper .dataTables_paginate .paginate_button:active {
351
+ outline: none;
352
+ background-color: #2b2b2b;
353
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2b2b2b), color-stop(100%, #0c0c0c));
354
+ /* Chrome,Safari4+ */
355
+ background: -webkit-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
356
+ /* Chrome10+,Safari5.1+ */
357
+ background: -moz-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
358
+ /* FF3.6+ */
359
+ background: -ms-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
360
+ /* IE10+ */
361
+ background: -o-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);
362
+ /* Opera 11.10+ */
363
+ background: linear-gradient(to bottom, #2b2b2b 0%, #0c0c0c 100%);
364
+ /* W3C */
365
+ box-shadow: inset 0 0 3px #111;
366
+ }
367
+ .dataTables_wrapper .dataTables_paginate .ellipsis {
368
+ padding: 0 1em;
369
+ }
370
+ .dataTables_wrapper .dataTables_processing {
371
+ position: absolute;
372
+ top: 50%;
373
+ left: 50%;
374
+ width: 100%;
375
+ height: 40px;
376
+ margin-left: -50%;
377
+ margin-top: -25px;
378
+ padding-top: 20px;
379
+ text-align: center;
380
+ font-size: 1.2em;
381
+ background-color: white;
382
+ background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0.9)), color-stop(75%, rgba(255, 255, 255, 0.9)), color-stop(100%, rgba(255, 255, 255, 0)));
383
+ background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
384
+ background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
385
+ background: -ms-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
386
+ background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
387
+ background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);
388
+ }
389
+ .dataTables_wrapper .dataTables_length,
390
+ .dataTables_wrapper .dataTables_filter,
391
+ .dataTables_wrapper .dataTables_info,
392
+ .dataTables_wrapper .dataTables_processing,
393
+ .dataTables_wrapper .dataTables_paginate {
394
+ color: #333333;
395
+ }
396
+ .dataTables_wrapper .dataTables_scroll {
397
+ clear: both;
398
+ }
399
+ .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody {
400
+ *margin-top: -1px;
401
+ -webkit-overflow-scrolling: touch;
402
+ }
403
+ .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td {
404
+ vertical-align: middle;
405
+ }
406
+ .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th > div.dataTables_sizing,
407
+ .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td > div.dataTables_sizing, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th > div.dataTables_sizing,
408
+ .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td > div.dataTables_sizing {
409
+ height: 0;
410
+ overflow: hidden;
411
+ margin: 0 !important;
412
+ padding: 0 !important;
413
+ }
414
+ .dataTables_wrapper.no-footer .dataTables_scrollBody {
415
+ border-bottom: 1px solid #111111;
416
+ }
417
+ .dataTables_wrapper.no-footer div.dataTables_scrollHead > table,
418
+ .dataTables_wrapper.no-footer div.dataTables_scrollBody > table {
419
+ border-bottom: none;
420
+ }
421
+ .dataTables_wrapper:after {
422
+ visibility: hidden;
423
+ display: block;
424
+ content: "";
425
+ clear: both;
426
+ height: 0;
427
+ }
428
+
429
+ @media screen and (max-width: 767px) {
430
+ .dataTables_wrapper .dataTables_info,
431
+ .dataTables_wrapper .dataTables_paginate {
432
+ float: none;
433
+ text-align: center;
434
+ }
435
+ .dataTables_wrapper .dataTables_paginate {
436
+ margin-top: 0.5em;
437
+ }
438
+ }
439
+ @media screen and (max-width: 640px) {
440
+ .dataTables_wrapper .dataTables_length,
441
+ .dataTables_wrapper .dataTables_filter {
442
+ float: none;
443
+ text-align: center;
444
+ }
445
+ .dataTables_wrapper .dataTables_filter {
446
+ margin-top: 0.5em;
447
+ }
448
+ }