expectation 1.1.1 → 1.1.4

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 (37) hide show
  1. checksums.yaml +5 -5
  2. data/lib/contracts.rb +4 -4
  3. data/lib/expectation.rb +2 -1
  4. data/lib/expectation/matcher.rb +20 -5
  5. data/lib/expectation/version.rb +21 -2
  6. data/test/contracts_test.rb +2 -2
  7. data/test/expection_test.rb +3 -3
  8. data/test/matching_test.rb +9 -1
  9. data/test/test_helper.rb +2 -2
  10. data/test/version_test.rb +10 -0
  11. metadata +6 -32
  12. data/lib/contracts/deprecated.rb +0 -27
  13. data/test/coverage/assets/0.10.0/application.css +0 -799
  14. data/test/coverage/assets/0.10.0/application.js +0 -1707
  15. data/test/coverage/assets/0.10.0/colorbox/border.png +0 -0
  16. data/test/coverage/assets/0.10.0/colorbox/controls.png +0 -0
  17. data/test/coverage/assets/0.10.0/colorbox/loading.gif +0 -0
  18. data/test/coverage/assets/0.10.0/colorbox/loading_background.png +0 -0
  19. data/test/coverage/assets/0.10.0/favicon_green.png +0 -0
  20. data/test/coverage/assets/0.10.0/favicon_red.png +0 -0
  21. data/test/coverage/assets/0.10.0/favicon_yellow.png +0 -0
  22. data/test/coverage/assets/0.10.0/loading.gif +0 -0
  23. data/test/coverage/assets/0.10.0/magnify.png +0 -0
  24. data/test/coverage/assets/0.10.0/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  25. data/test/coverage/assets/0.10.0/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  26. data/test/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  27. data/test/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  28. data/test/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  29. data/test/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  30. data/test/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  31. data/test/coverage/assets/0.10.0/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  32. data/test/coverage/assets/0.10.0/smoothness/images/ui-icons_222222_256x240.png +0 -0
  33. data/test/coverage/assets/0.10.0/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  34. data/test/coverage/assets/0.10.0/smoothness/images/ui-icons_454545_256x240.png +0 -0
  35. data/test/coverage/assets/0.10.0/smoothness/images/ui-icons_888888_256x240.png +0 -0
  36. data/test/coverage/assets/0.10.0/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  37. data/test/coverage/index.html +0 -72
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 803339254e55ef86bcc85c873f8c482bdf84cc81
4
- data.tar.gz: 635f402969492b7fb7a0997c4869712344413393
2
+ SHA256:
3
+ metadata.gz: 5f15914e47f55a6652174130cae759ef5b3227c7c38e972055f2b292f7a75dc5
4
+ data.tar.gz: 1bd78f0e9e53e62a54102c69c0a1aaa47b2f73ac9714bf125c61fd83af97628e
5
5
  SHA512:
6
- metadata.gz: 69019c598a80628fde36af429545e2c3db3aa65525a69d2f058f6ade9cdb06f36bc3917cedf2b0ea7bab78e340ceeef4a5ec3106d6cfd43fa6bb2d621f5c2e28
7
- data.tar.gz: 5d380a6e7d2a2edb3cf7a2832413c20a7162748af694e8e8b42a1f755e311be27643e0378e8960f6e651739194caf75b1196b7ec9aeffebffb8652d251180145
6
+ metadata.gz: 78f3a6de900d3795ba2df585c61f6c23307fbae84d1a8cdfd228a5b0c68a448b1781717c535a6f7370e0905ab4a8ff07b0962713fb957e19c7c42f15925c6dd9
7
+ data.tar.gz: 65002cba3bef4fb4e805703505fed31edb37273b67667c271ae0ec425ac2184ad9a3e8abb3cc9219fa2f689c18896a7adb7c900186f52442bfaaafb382f5c103
@@ -20,8 +20,8 @@
20
20
  #
21
21
  # class Foo
22
22
  #
23
- # +Expects(value1: Fixnum, value2: /.@./)
24
- # +Returns(Fixnum)
23
+ # +Expects(value1: Integer, value2: /.@./)
24
+ # +Returns(Integer)
25
25
  #
26
26
  # def bar(value1, value2)
27
27
  # end
@@ -33,7 +33,7 @@ module Contracts
33
33
  class Error < ArgumentError; end
34
34
 
35
35
  (class << self; self; end).class_eval do
36
- attr :logger, true
36
+ attr_accessor :logger
37
37
  end
38
38
  self.logger = Logger.new(STDOUT)
39
39
 
@@ -151,7 +151,7 @@ module Contracts
151
151
  #
152
152
  # contains the method once the contract is initialized, which happens
153
153
  # in the Class#{singleton_,}method_added callback.
154
- attr :method, true
154
+ attr_accessor :method
155
155
 
156
156
  #
157
157
  # Returns a description of the method; i.e. Class#name or Class.name
@@ -8,6 +8,7 @@
8
8
  module Expectation; end
9
9
 
10
10
  require_relative "core/exception"
11
+ require_relative "expectation/version"
11
12
  require_relative "expectation/matcher"
12
13
  require_relative "expectation/multi_matcher"
13
14
  require_relative "expectation/assertions"
@@ -57,7 +58,7 @@ module Expectation
57
58
  end
58
59
 
59
60
  def expect!(*args, &block)
60
- Expectation.expect! *args, &block
61
+ Expectation.expect!(*args, &block)
61
62
  rescue Expectation::Error
62
63
  $!.reraise_with_current_backtrace!
63
64
  end
@@ -8,6 +8,8 @@
8
8
  # The Expectation::Matcher module implements the logic to match a value
9
9
  # against a pattern.
10
10
 
11
+ require "uri"
12
+
11
13
  module Expectation::Matcher
12
14
  class Mismatch < ArgumentError
13
15
  attr_reader :value, :expectation, :info
@@ -21,8 +23,8 @@ module Expectation::Matcher
21
23
  def to_s
22
24
  message = "#{value.inspect} does not match #{expectation.inspect}"
23
25
  case info
24
- when nil then message
25
- when Fixnum then "#{message}, at index #{info}"
26
+ when nil then message
27
+ when Integer then "#{message}, at index #{info}"
26
28
  else "#{message}, at key #{info.inspect}"
27
29
  end
28
30
  end
@@ -52,19 +54,25 @@ module Expectation::Matcher
52
54
  when Array then
53
55
  if expectation.length == 1
54
56
  # Array as "array of elements matching an expectation"; for example
55
- # [1,2,3] => [Fixnum]
57
+ # [1,2,3] => [Integer]
56
58
  e = expectation.first
57
59
  value.each_with_index { |v, idx| match!(v, e, idx) }
58
60
  else
59
61
  # Array as "object matching one of given expectations
60
- expectation.any? { |e| _match?(value, e) }
62
+ expectation.any? { |exp| _match?(value, exp) }
61
63
  end
62
64
  when Proc then expectation.arity == 0 ? expectation.call : expectation.call(value)
63
65
  when Regexp then value.is_a?(String) && expectation =~ value
64
66
  when :__block then value.call
65
67
  when Hash then Hash === value &&
66
68
  expectation.each { |key, exp| match! value[key], exp, key }
67
- else expectation === value
69
+ when Module
70
+ if expectation == URI
71
+ _match_uri?(value)
72
+ else
73
+ expectation === value
74
+ end
75
+ else expectation === value
68
76
  end
69
77
 
70
78
  return if match
@@ -73,6 +81,13 @@ module Expectation::Matcher
73
81
 
74
82
  private
75
83
 
84
+ def _match_uri?(value)
85
+ URI.parse(value)
86
+ true
87
+ rescue URI::InvalidURIError
88
+ false
89
+ end
90
+
76
91
  def _match?(value, expectation)
77
92
  match! value, expectation
78
93
  true
@@ -4,6 +4,25 @@
4
4
  # License:: Distributes under the terms of the Modified BSD License,
5
5
  # see LICENSE.BSD for details.
6
6
  module Expectation
7
- # The expectation gem's version.
8
- VERSION = '1.1.1'
7
+ module GemHelper
8
+ extend self
9
+
10
+ def version(name)
11
+ spec = Gem.loaded_specs[name]
12
+ version = spec.version.to_s
13
+ version += "+unreleased" if unreleased?(spec)
14
+ version
15
+ end
16
+
17
+ private
18
+
19
+ def unreleased?(spec)
20
+ return false unless defined?(Bundler::Source::Gemspec)
21
+ return true if spec.source.is_a?(::Bundler::Source::Gemspec)
22
+ return true if spec.source.is_a?(::Bundler::Source::Path)
23
+ false
24
+ end
25
+ end
26
+
27
+ VERSION = GemHelper.version "expectation"
9
28
  end
@@ -125,7 +125,7 @@ class ContractsTest < Test::Unit::TestCase
125
125
  end
126
126
 
127
127
  class Foo
128
- +Expects(v: Fixnum)
128
+ +Expects(v: Integer)
129
129
  def throw_on_one(v)
130
130
  raise if v == 1
131
131
  end
@@ -155,7 +155,7 @@ class ContractsTest < Test::Unit::TestCase
155
155
  foo.wait_for 0.001
156
156
  foo.wait_for 0.02
157
157
 
158
- e = assert_raise(Contracts::Error) {
158
+ assert_raise(Contracts::Error) {
159
159
  foo.wait_for 10
160
160
  }
161
161
 
@@ -37,13 +37,13 @@ class ExpectationTest < Test::Unit::TestCase
37
37
  end
38
38
 
39
39
  def test_array_expectations
40
- assert_expectation! 1 => [Fixnum, String]
41
- assert_expectation! 1 => [String, Fixnum]
40
+ assert_expectation! 1 => [Integer, String]
41
+ assert_expectation! 1 => [String, Integer]
42
42
  assert_failed_expectation! 1 => [NilClass, String]
43
43
  end
44
44
 
45
45
  def test_multi_expectations
46
- assert_expectation! 1 => Fixnum | String
46
+ assert_expectation! 1 => Integer | String
47
47
  assert_expectation! 1 => String | 1
48
48
  assert_failed_expectation! 1 => NilClass | String
49
49
  assert_expectation! 1 => NilClass | String | 1
@@ -26,7 +26,7 @@ class MatchingTest < Test::Unit::TestCase
26
26
 
27
27
  def test_int_expectations
28
28
  assert_match 1, 1
29
- assert_match 1, Fixnum
29
+ assert_match 1, Integer
30
30
  assert_match 1, Integer
31
31
  assert_match 1, 0..2
32
32
  assert_match 1, 0..1
@@ -76,4 +76,12 @@ class MatchingTest < Test::Unit::TestCase
76
76
  assert_mismatch({ :key => "Foo" }, { :key => [Integer,"Bar"] })
77
77
  assert_match({ :other_key => "Foo" }, { :key => [nil, "Foo"] })
78
78
  end
79
+
80
+ def test_uri_expectations
81
+ assert_match "http://foo/bar", URI
82
+ assert_match "/foo/bar", URI
83
+ assert_mismatch " foo", URI
84
+ assert_mismatch nil, URI
85
+ assert_mismatch 1, URI
86
+ end
79
87
  end
@@ -24,13 +24,13 @@ require "expectation"
24
24
  class Test::Unit::TestCase
25
25
  def assert_expectation!(*expectation, &block)
26
26
  assert_nothing_raised do
27
- expect! *expectation, &block
27
+ expect!(*expectation, &block)
28
28
  end
29
29
  end
30
30
 
31
31
  def assert_failed_expectation!(*expectation, &block)
32
32
  assert_raise(Expectation::Error) {
33
- expect! *expectation, &block
33
+ expect!(*expectation, &block)
34
34
  }
35
35
  end
36
36
  end
@@ -0,0 +1,10 @@
1
+ # Author:: radiospiel (mailto:eno@radiospiel.org)
2
+ # Copyright:: Copyright (c) 2011, 2012 radiospiel
3
+ # License:: Distributes under the terms of the Modified BSD License, see LICENSE.BSD for details.
4
+ require_relative 'test_helper'
5
+
6
+ class VersionTest < Test::Unit::TestCase
7
+ def test_returns_a_version
8
+ assert_match(/\d\.\d\.\d/,Expectation::VERSION)
9
+ end
10
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: expectation
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - radiospiel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-01-18 00:00:00.000000000 Z
11
+ date: 2019-12-14 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Defensive programming with expectations
14
14
  email: eno@radiospiel.org
@@ -18,7 +18,6 @@ extra_rdoc_files: []
18
18
  files:
19
19
  - README.md
20
20
  - lib/contracts.rb
21
- - lib/contracts/deprecated.rb
22
21
  - lib/contracts/expects.rb
23
22
  - lib/contracts/nothrows.rb
24
23
  - lib/contracts/returns.rb
@@ -33,35 +32,11 @@ files:
33
32
  - test/contracts_module_test.rb
34
33
  - test/contracts_singleton_test.rb
35
34
  - test/contracts_test.rb
36
- - test/coverage/assets/0.10.0/application.css
37
- - test/coverage/assets/0.10.0/application.js
38
- - test/coverage/assets/0.10.0/colorbox/border.png
39
- - test/coverage/assets/0.10.0/colorbox/controls.png
40
- - test/coverage/assets/0.10.0/colorbox/loading.gif
41
- - test/coverage/assets/0.10.0/colorbox/loading_background.png
42
- - test/coverage/assets/0.10.0/favicon_green.png
43
- - test/coverage/assets/0.10.0/favicon_red.png
44
- - test/coverage/assets/0.10.0/favicon_yellow.png
45
- - test/coverage/assets/0.10.0/loading.gif
46
- - test/coverage/assets/0.10.0/magnify.png
47
- - test/coverage/assets/0.10.0/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png
48
- - test/coverage/assets/0.10.0/smoothness/images/ui-bg_flat_75_ffffff_40x100.png
49
- - test/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png
50
- - test/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_65_ffffff_1x400.png
51
- - test/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_75_dadada_1x400.png
52
- - test/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png
53
- - test/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png
54
- - test/coverage/assets/0.10.0/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png
55
- - test/coverage/assets/0.10.0/smoothness/images/ui-icons_222222_256x240.png
56
- - test/coverage/assets/0.10.0/smoothness/images/ui-icons_2e83ff_256x240.png
57
- - test/coverage/assets/0.10.0/smoothness/images/ui-icons_454545_256x240.png
58
- - test/coverage/assets/0.10.0/smoothness/images/ui-icons_888888_256x240.png
59
- - test/coverage/assets/0.10.0/smoothness/images/ui-icons_cd0a0a_256x240.png
60
- - test/coverage/index.html
61
35
  - test/exception_extension_test.rb
62
36
  - test/expection_test.rb
63
37
  - test/matching_test.rb
64
38
  - test/test_helper.rb
39
+ - test/version_test.rb
65
40
  homepage: http://github.com/radiospiel/expectation
66
41
  licenses: []
67
42
  metadata: {}
@@ -71,17 +46,16 @@ require_paths:
71
46
  - lib
72
47
  required_ruby_version: !ruby/object:Gem::Requirement
73
48
  requirements:
74
- - - ">="
49
+ - - "~>"
75
50
  - !ruby/object:Gem::Version
76
- version: '0'
51
+ version: '2.4'
77
52
  required_rubygems_version: !ruby/object:Gem::Requirement
78
53
  requirements:
79
54
  - - ">="
80
55
  - !ruby/object:Gem::Version
81
56
  version: '0'
82
57
  requirements: []
83
- rubyforge_project:
84
- rubygems_version: 2.5.1
58
+ rubygems_version: 3.0.2
85
59
  signing_key:
86
60
  specification_version: 4
87
61
  summary: Defensive programming with expectations
@@ -1,27 +0,0 @@
1
- #--
2
- # Author:: radiospiel (mailto:eno@radiospiel.org)
3
- # Copyright:: Copyright (c) 2011, 2012 radiospiel
4
- # License:: Distributes under the terms of the Modified BSD License,
5
- # see LICENSE.BSD for details.
6
- #++
7
-
8
- class Contracts::Deprecated < Contracts::Base
9
- attr_reader :msg
10
-
11
- def initialize(msg = nil)
12
- @msg = msg
13
- end
14
-
15
- def before_call(_receiver, *_args, &_blk)
16
- STDERR.puts "NOTE: #{method_name} is deprecated#{msg && ":#{msg})."
17
- end
18
- end
19
-
20
- module Contracts::ClassMethods
21
- include Contracts
22
-
23
- +Expects(msg: [String, nil] )
24
- def Deprecated(msg = nil)
25
- Contracts::Deprecated.new msg
26
- end
27
- end
@@ -1,799 +0,0 @@
1
- /* -----------------------------------------------------------------------
2
-
3
-
4
- Blueprint CSS Framework 0.9
5
- http://blueprintcss.org
6
-
7
- * Copyright (c) 2007-Present. See LICENSE for more info.
8
- * See README for instructions on how to use Blueprint.
9
- * For credits and origins, see AUTHORS.
10
- * This is a compressed file. See the sources in the 'src' directory.
11
-
12
- ----------------------------------------------------------------------- */
13
-
14
- /* reset.css */
15
-
16
- html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, nav, section {margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;}
17
- article, aside, dialog, figure, footer, header, hgroup, nav, section {display:block;}
18
- body {line-height:1.5;}
19
- table {border-collapse:separate;border-spacing:0;}
20
- caption, th, td {text-align:left;font-weight:normal;}
21
- table, td, th {vertical-align:middle;}
22
- blockquote:before, blockquote:after, q:before, q:after {content:"";}
23
- blockquote, q {quotes:"" "";}
24
- a img {border:none;}
25
-
26
- /* typography.css */
27
- html {font-size:100.01%;}
28
- body {font-size:82%;color:#222;background:#fff;font-family:"Helvetica Neue", Arial, Helvetica, sans-serif;}
29
- h1, h2, h3, h4, h5, h6 {font-weight:normal;color:#111;}
30
- h1 {font-size:3em;line-height:1;margin-bottom:0.5em;}
31
- h2 {font-size:2em;margin-bottom:0.75em;}
32
- h3 {font-size:1.5em;line-height:1;margin-bottom:1em;}
33
- h4 {font-size:1.2em;line-height:1.25;margin-bottom:1.25em;}
34
- h5 {font-size:1em;font-weight:bold;margin-bottom:1.5em;}
35
- h6 {font-size:1em;font-weight:bold;}
36
- h1 img, h2 img, h3 img, h4 img, h5 img, h6 img {margin:0;}
37
- p {margin:0 0 1.5em;}
38
- p img.left {float:left;margin:1.5em 1.5em 1.5em 0;padding:0;}
39
- p img.right {float:right;margin:1.5em 0 1.5em 1.5em;}
40
- a:focus, a:hover {color:#000;}
41
- a {color:#009;text-decoration:underline;}
42
- blockquote {margin:1.5em;color:#666;font-style:italic;}
43
- strong {font-weight:bold;}
44
- em, dfn {font-style:italic;}
45
- dfn {font-weight:bold;}
46
- sup, sub {line-height:0;}
47
- abbr, acronym {border-bottom:1px dotted #666;}
48
- address {margin:0 0 1.5em;font-style:italic;}
49
- del {color:#666;}
50
- pre {margin:1.5em 0;white-space:pre;}
51
- pre, code, tt {font:1em 'andale mono', 'lucida console', monospace;line-height:1.5;}
52
- li ul, li ol {margin:0;}
53
- ul, ol {margin:0 1.5em 1.5em 0;padding-left:3.333em;}
54
- ul {list-style-type:disc;}
55
- ol {list-style-type:decimal;}
56
- dl {margin:0 0 1.5em 0;}
57
- dl dt {font-weight:bold;}
58
- dd {margin-left:1.5em;}
59
- table {margin-bottom:1.4em;width:100%;}
60
- th {font-weight:bold;}
61
- thead th {background:#c3d9ff;}
62
- th, td, caption {padding:4px 10px 4px 5px;}
63
- tr.even td {background:#efefef;}
64
- tfoot {font-style:italic;}
65
- caption {background:#eee;}
66
- .small {font-size:.8em;margin-bottom:1.875em;line-height:1.875em;}
67
- .large {font-size:1.2em;line-height:2.5em;margin-bottom:1.25em;}
68
- .hide {display:none;}
69
- .quiet {color:#666;}
70
- .loud {color:#000;}
71
- .highlight {background:#ff0;}
72
- .added {background:#060;color:#fff;}
73
- .removed {background:#900;color:#fff;}
74
- .first {margin-left:0;padding-left:0;}
75
- .last {margin-right:0;padding-right:0;}
76
- .top {margin-top:0;padding-top:0;}
77
- .bottom {margin-bottom:0;padding-bottom:0;}
78
-
79
- /* forms.css */
80
- label {font-weight:bold;}
81
- fieldset {padding:1.4em;margin:0 0 1.5em 0;border:1px solid #ccc;}
82
- legend {font-weight:bold;font-size:1.2em;}
83
- input[type=text], input[type=password], input.text, input.title, textarea, select {background-color:#fff;border:1px solid #bbb;}
84
- input[type=text]:focus, input[type=password]:focus, input.text:focus, input.title:focus, textarea:focus, select:focus {border-color:#666;}
85
- input[type=text], input[type=password], input.text, input.title, textarea, select {margin:0.5em 0;}
86
- input.text, input.title {width:300px;padding:5px;}
87
- input.title {font-size:1.5em;}
88
- textarea {width:390px;height:250px;padding:5px;}
89
- input[type=checkbox], input[type=radio], input.checkbox, input.radio {position:relative;top:.25em;}
90
- form.inline {line-height:3;}
91
- form.inline p {margin-bottom:0;}
92
- .error, .notice, .success {padding:.8em;margin-bottom:1em;border:2px solid #ddd;}
93
- .error {background:#FBE3E4;color:#8a1f11;border-color:#FBC2C4;}
94
- .notice {background:#FFF6BF;color:#514721;border-color:#FFD324;}
95
- .success {background:#E6EFC2;color:#264409;border-color:#C6D880;}
96
- .error a {color:#8a1f11;}
97
- .notice a {color:#514721;}
98
- .success a {color:#264409;}
99
- .box {padding:1.5em;margin-bottom:1.5em;background:#E5ECF9;}
100
- hr {background:#ddd;color:#ddd;clear:both;float:none;width:100%;height:.1em;margin:0 0 1.45em;border:none;}
101
- hr.space {background:#fff;color:#fff;visibility:hidden;}
102
- .clearfix:after, .container:after {content:"\0020";display:block;height:0;clear:both;visibility:hidden;overflow:hidden;}
103
- .clearfix, .container {display:block;}
104
- .clear {clear:both;}
105
- /*
106
- github.com style (c) Vasily Polovnyov <vast@whiteants.net>
107
- */
108
-
109
-
110
- pre code {
111
- }
112
-
113
- pre .comment,
114
- pre .template_comment,
115
- pre .diff .header,
116
- pre .javadoc {
117
- color: #998;
118
- font-style: italic
119
- }
120
-
121
- pre .keyword,
122
- pre .css .rule .keyword,
123
- pre .winutils,
124
- pre .javascript .title,
125
- pre .lisp .title {
126
- color: #000;
127
- font-weight: bold
128
- }
129
-
130
- pre .number,
131
- pre .hexcolor {
132
- color: #458
133
- }
134
-
135
-
136
- pre .string,
137
- pre .tag .value,
138
- pre .phpdoc,
139
- pre .tex .formula {
140
- color: #d14
141
- }
142
-
143
- pre .subst {
144
- color: #712;
145
- }
146
-
147
- pre .constant,
148
- pre .title,
149
- pre .id {
150
- color: #900;
151
- font-weight: bold
152
- }
153
-
154
- pre .javascript .title,
155
- pre .lisp .title,
156
- pre .subst {
157
- font-weight: normal
158
- }
159
-
160
- pre .class .title,
161
- pre .haskell .label,
162
- pre .tex .command {
163
- color: #458;
164
- font-weight: bold
165
- }
166
-
167
- pre .tag,
168
- pre .tag .title,
169
- pre .rules .property,
170
- pre .django .tag .keyword {
171
- color: #000080;
172
- font-weight: normal
173
- }
174
-
175
- pre .attribute,
176
- pre .variable,
177
- pre .instancevar,
178
- pre .lisp .body {
179
- color: #008080
180
- }
181
-
182
- pre .regexp {
183
- color: #009926
184
- }
185
-
186
- pre .class {
187
- color: #458;
188
- font-weight: bold
189
- }
190
-
191
- pre .symbol,
192
- pre .ruby .symbol .string,
193
- pre .ruby .symbol .keyword,
194
- pre .ruby .symbol .keymethods,
195
- pre .lisp .keyword,
196
- pre .tex .special,
197
- pre .input_number {
198
- color: #990073
199
- }
200
-
201
- pre .builtin,
202
- pre .built_in,
203
- pre .lisp .title {
204
- color: #0086b3
205
- }
206
-
207
- pre .preprocessor,
208
- pre .pi,
209
- pre .doctype,
210
- pre .shebang,
211
- pre .cdata {
212
- color: #999;
213
- font-weight: bold
214
- }
215
-
216
- pre .deletion {
217
- background: #fdd
218
- }
219
-
220
- pre .addition {
221
- background: #dfd
222
- }
223
-
224
- pre .diff .change {
225
- background: #0086b3
226
- }
227
-
228
- pre .chunk {
229
- color: #aaa
230
- }
231
-
232
- pre .tex .formula {
233
- opacity: 0.5;
234
- }
235
- /*
236
- * jQuery UI CSS Framework @VERSION
237
- *
238
- * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
239
- * Dual licensed under the MIT or GPL Version 2 licenses.
240
- * http://jquery.org/license
241
- *
242
- * http://docs.jquery.com/UI/Theming/API
243
- */
244
-
245
- /* Layout helpers
246
- ----------------------------------*/
247
-
248
- .ui-helper-hidden { display: none; }
249
- .ui-helper-hidden-accessible { position: absolute; left: -99999999px; }
250
- .ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
251
- .ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
252
- .ui-helper-clearfix { display: inline-block; }
253
- /* required comment for clearfix to work in Opera \*/
254
- * html .ui-helper-clearfix { height:1%; }
255
- .ui-helper-clearfix { display:block; }
256
- /* end clearfix */
257
- .ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }
258
-
259
-
260
- /* Interaction Cues
261
- ----------------------------------*/
262
- .ui-state-disabled { cursor: default !important; }
263
-
264
-
265
- /* Icons
266
- ----------------------------------*/
267
-
268
- /* states and images */
269
- .ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }
270
-
271
-
272
- /* Misc visuals
273
- ----------------------------------*/
274
-
275
- /* Overlays */
276
- .ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
277
-
278
-
279
- /*
280
- * jQuery UI CSS Framework @VERSION
281
- *
282
- * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
283
- * Dual licensed under the MIT or GPL Version 2 licenses.
284
- * http://jquery.org/license
285
- *
286
- * http://docs.jquery.com/UI/Theming/API
287
- *
288
- * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana,Arial,sans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=03_highlight_soft.png&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=01_flat.png&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=02_glass.png&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=02_glass.png&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=02_glass.png&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=02_glass.png&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=02_glass.png&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
289
- */
290
-
291
-
292
- /* Component containers
293
- ----------------------------------*/
294
- .ui-widget { font-family: Verdana,Arial,sans-serif; font-size: 1.1em; }
295
- .ui-widget .ui-widget { font-size: 1em; }
296
- .ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif; font-size: 1em; }
297
- .ui-widget-content { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x; color: #222222; }
298
- .ui-widget-content a { color: #222222; }
299
- .ui-widget-header { border: 1px solid #aaaaaa; background: #cccccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x; color: #222222; font-weight: bold; }
300
- .ui-widget-header a { color: #222222; }
301
-
302
- /* Interaction states
303
- ----------------------------------*/
304
- .ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #d3d3d3; background: #e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #555555; }
305
- .ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555; text-decoration: none; }
306
- .ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #999999; background: #dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; }
307
- .ui-state-hover a, .ui-state-hover a:hover { color: #212121; text-decoration: none; }
308
- .ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; }
309
- .ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121; text-decoration: none; }
310
- .ui-widget :active { outline: none; }
311
-
312
- /* Interaction Cues
313
- ----------------------------------*/
314
- .ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border: 1px solid #fcefa1; background: #fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x; color: #363636; }
315
- .ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636; }
316
- .ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a; background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x; color: #cd0a0a; }
317
- .ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a; }
318
- .ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a; }
319
- .ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }
320
- .ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
321
- .ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }
322
-
323
- /* Icons
324
- ----------------------------------*/
325
-
326
- /* states and images */
327
- .ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png); }
328
- .ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); }
329
- .ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); }
330
- .ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png); }
331
- .ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); }
332
- .ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); }
333
- .ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png); }
334
- .ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png); }
335
-
336
- /* positioning */
337
- .ui-icon-carat-1-n { background-position: 0 0; }
338
- .ui-icon-carat-1-ne { background-position: -16px 0; }
339
- .ui-icon-carat-1-e { background-position: -32px 0; }
340
- .ui-icon-carat-1-se { background-position: -48px 0; }
341
- .ui-icon-carat-1-s { background-position: -64px 0; }
342
- .ui-icon-carat-1-sw { background-position: -80px 0; }
343
- .ui-icon-carat-1-w { background-position: -96px 0; }
344
- .ui-icon-carat-1-nw { background-position: -112px 0; }
345
- .ui-icon-carat-2-n-s { background-position: -128px 0; }
346
- .ui-icon-carat-2-e-w { background-position: -144px 0; }
347
- .ui-icon-triangle-1-n { background-position: 0 -16px; }
348
- .ui-icon-triangle-1-ne { background-position: -16px -16px; }
349
- .ui-icon-triangle-1-e { background-position: -32px -16px; }
350
- .ui-icon-triangle-1-se { background-position: -48px -16px; }
351
- .ui-icon-triangle-1-s { background-position: -64px -16px; }
352
- .ui-icon-triangle-1-sw { background-position: -80px -16px; }
353
- .ui-icon-triangle-1-w { background-position: -96px -16px; }
354
- .ui-icon-triangle-1-nw { background-position: -112px -16px; }
355
- .ui-icon-triangle-2-n-s { background-position: -128px -16px; }
356
- .ui-icon-triangle-2-e-w { background-position: -144px -16px; }
357
- .ui-icon-arrow-1-n { background-position: 0 -32px; }
358
- .ui-icon-arrow-1-ne { background-position: -16px -32px; }
359
- .ui-icon-arrow-1-e { background-position: -32px -32px; }
360
- .ui-icon-arrow-1-se { background-position: -48px -32px; }
361
- .ui-icon-arrow-1-s { background-position: -64px -32px; }
362
- .ui-icon-arrow-1-sw { background-position: -80px -32px; }
363
- .ui-icon-arrow-1-w { background-position: -96px -32px; }
364
- .ui-icon-arrow-1-nw { background-position: -112px -32px; }
365
- .ui-icon-arrow-2-n-s { background-position: -128px -32px; }
366
- .ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
367
- .ui-icon-arrow-2-e-w { background-position: -160px -32px; }
368
- .ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
369
- .ui-icon-arrowstop-1-n { background-position: -192px -32px; }
370
- .ui-icon-arrowstop-1-e { background-position: -208px -32px; }
371
- .ui-icon-arrowstop-1-s { background-position: -224px -32px; }
372
- .ui-icon-arrowstop-1-w { background-position: -240px -32px; }
373
- .ui-icon-arrowthick-1-n { background-position: 0 -48px; }
374
- .ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
375
- .ui-icon-arrowthick-1-e { background-position: -32px -48px; }
376
- .ui-icon-arrowthick-1-se { background-position: -48px -48px; }
377
- .ui-icon-arrowthick-1-s { background-position: -64px -48px; }
378
- .ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
379
- .ui-icon-arrowthick-1-w { background-position: -96px -48px; }
380
- .ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
381
- .ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
382
- .ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
383
- .ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
384
- .ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
385
- .ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
386
- .ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
387
- .ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
388
- .ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
389
- .ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
390
- .ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
391
- .ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
392
- .ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
393
- .ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
394
- .ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
395
- .ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
396
- .ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
397
- .ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
398
- .ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
399
- .ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
400
- .ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
401
- .ui-icon-arrow-4 { background-position: 0 -80px; }
402
- .ui-icon-arrow-4-diag { background-position: -16px -80px; }
403
- .ui-icon-extlink { background-position: -32px -80px; }
404
- .ui-icon-newwin { background-position: -48px -80px; }
405
- .ui-icon-refresh { background-position: -64px -80px; }
406
- .ui-icon-shuffle { background-position: -80px -80px; }
407
- .ui-icon-transfer-e-w { background-position: -96px -80px; }
408
- .ui-icon-transferthick-e-w { background-position: -112px -80px; }
409
- .ui-icon-folder-collapsed { background-position: 0 -96px; }
410
- .ui-icon-folder-open { background-position: -16px -96px; }
411
- .ui-icon-document { background-position: -32px -96px; }
412
- .ui-icon-document-b { background-position: -48px -96px; }
413
- .ui-icon-note { background-position: -64px -96px; }
414
- .ui-icon-mail-closed { background-position: -80px -96px; }
415
- .ui-icon-mail-open { background-position: -96px -96px; }
416
- .ui-icon-suitcase { background-position: -112px -96px; }
417
- .ui-icon-comment { background-position: -128px -96px; }
418
- .ui-icon-person { background-position: -144px -96px; }
419
- .ui-icon-print { background-position: -160px -96px; }
420
- .ui-icon-trash { background-position: -176px -96px; }
421
- .ui-icon-locked { background-position: -192px -96px; }
422
- .ui-icon-unlocked { background-position: -208px -96px; }
423
- .ui-icon-bookmark { background-position: -224px -96px; }
424
- .ui-icon-tag { background-position: -240px -96px; }
425
- .ui-icon-home { background-position: 0 -112px; }
426
- .ui-icon-flag { background-position: -16px -112px; }
427
- .ui-icon-calendar { background-position: -32px -112px; }
428
- .ui-icon-cart { background-position: -48px -112px; }
429
- .ui-icon-pencil { background-position: -64px -112px; }
430
- .ui-icon-clock { background-position: -80px -112px; }
431
- .ui-icon-disk { background-position: -96px -112px; }
432
- .ui-icon-calculator { background-position: -112px -112px; }
433
- .ui-icon-zoomin { background-position: -128px -112px; }
434
- .ui-icon-zoomout { background-position: -144px -112px; }
435
- .ui-icon-search { background-position: -160px -112px; }
436
- .ui-icon-wrench { background-position: -176px -112px; }
437
- .ui-icon-gear { background-position: -192px -112px; }
438
- .ui-icon-heart { background-position: -208px -112px; }
439
- .ui-icon-star { background-position: -224px -112px; }
440
- .ui-icon-link { background-position: -240px -112px; }
441
- .ui-icon-cancel { background-position: 0 -128px; }
442
- .ui-icon-plus { background-position: -16px -128px; }
443
- .ui-icon-plusthick { background-position: -32px -128px; }
444
- .ui-icon-minus { background-position: -48px -128px; }
445
- .ui-icon-minusthick { background-position: -64px -128px; }
446
- .ui-icon-close { background-position: -80px -128px; }
447
- .ui-icon-closethick { background-position: -96px -128px; }
448
- .ui-icon-key { background-position: -112px -128px; }
449
- .ui-icon-lightbulb { background-position: -128px -128px; }
450
- .ui-icon-scissors { background-position: -144px -128px; }
451
- .ui-icon-clipboard { background-position: -160px -128px; }
452
- .ui-icon-copy { background-position: -176px -128px; }
453
- .ui-icon-contact { background-position: -192px -128px; }
454
- .ui-icon-image { background-position: -208px -128px; }
455
- .ui-icon-video { background-position: -224px -128px; }
456
- .ui-icon-script { background-position: -240px -128px; }
457
- .ui-icon-alert { background-position: 0 -144px; }
458
- .ui-icon-info { background-position: -16px -144px; }
459
- .ui-icon-notice { background-position: -32px -144px; }
460
- .ui-icon-help { background-position: -48px -144px; }
461
- .ui-icon-check { background-position: -64px -144px; }
462
- .ui-icon-bullet { background-position: -80px -144px; }
463
- .ui-icon-radio-off { background-position: -96px -144px; }
464
- .ui-icon-radio-on { background-position: -112px -144px; }
465
- .ui-icon-pin-w { background-position: -128px -144px; }
466
- .ui-icon-pin-s { background-position: -144px -144px; }
467
- .ui-icon-play { background-position: 0 -160px; }
468
- .ui-icon-pause { background-position: -16px -160px; }
469
- .ui-icon-seek-next { background-position: -32px -160px; }
470
- .ui-icon-seek-prev { background-position: -48px -160px; }
471
- .ui-icon-seek-end { background-position: -64px -160px; }
472
- .ui-icon-seek-start { background-position: -80px -160px; }
473
- /* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
474
- .ui-icon-seek-first { background-position: -80px -160px; }
475
- .ui-icon-stop { background-position: -96px -160px; }
476
- .ui-icon-eject { background-position: -112px -160px; }
477
- .ui-icon-volume-off { background-position: -128px -160px; }
478
- .ui-icon-volume-on { background-position: -144px -160px; }
479
- .ui-icon-power { background-position: 0 -176px; }
480
- .ui-icon-signal-diag { background-position: -16px -176px; }
481
- .ui-icon-signal { background-position: -32px -176px; }
482
- .ui-icon-battery-0 { background-position: -48px -176px; }
483
- .ui-icon-battery-1 { background-position: -64px -176px; }
484
- .ui-icon-battery-2 { background-position: -80px -176px; }
485
- .ui-icon-battery-3 { background-position: -96px -176px; }
486
- .ui-icon-circle-plus { background-position: 0 -192px; }
487
- .ui-icon-circle-minus { background-position: -16px -192px; }
488
- .ui-icon-circle-close { background-position: -32px -192px; }
489
- .ui-icon-circle-triangle-e { background-position: -48px -192px; }
490
- .ui-icon-circle-triangle-s { background-position: -64px -192px; }
491
- .ui-icon-circle-triangle-w { background-position: -80px -192px; }
492
- .ui-icon-circle-triangle-n { background-position: -96px -192px; }
493
- .ui-icon-circle-arrow-e { background-position: -112px -192px; }
494
- .ui-icon-circle-arrow-s { background-position: -128px -192px; }
495
- .ui-icon-circle-arrow-w { background-position: -144px -192px; }
496
- .ui-icon-circle-arrow-n { background-position: -160px -192px; }
497
- .ui-icon-circle-zoomin { background-position: -176px -192px; }
498
- .ui-icon-circle-zoomout { background-position: -192px -192px; }
499
- .ui-icon-circle-check { background-position: -208px -192px; }
500
- .ui-icon-circlesmall-plus { background-position: 0 -208px; }
501
- .ui-icon-circlesmall-minus { background-position: -16px -208px; }
502
- .ui-icon-circlesmall-close { background-position: -32px -208px; }
503
- .ui-icon-squaresmall-plus { background-position: -48px -208px; }
504
- .ui-icon-squaresmall-minus { background-position: -64px -208px; }
505
- .ui-icon-squaresmall-close { background-position: -80px -208px; }
506
- .ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
507
- .ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
508
- .ui-icon-grip-solid-vertical { background-position: -32px -224px; }
509
- .ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
510
- .ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
511
- .ui-icon-grip-diagonal-se { background-position: -80px -224px; }
512
-
513
-
514
- /* Misc visuals
515
- ----------------------------------*/
516
-
517
- /* Corner radius */
518
- .ui-corner-tl { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; }
519
- .ui-corner-tr { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; }
520
- .ui-corner-bl { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; }
521
- .ui-corner-br { -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; }
522
- .ui-corner-top { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; }
523
- .ui-corner-bottom { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; }
524
- .ui-corner-right { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; }
525
- .ui-corner-left { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; }
526
- .ui-corner-all { -moz-border-radius: 4px; -webkit-border-radius: 4px; border-radius: 4px; }
527
-
528
- /* Overlays */
529
- .ui-widget-overlay { background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); }
530
- .ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -webkit-border-radius: 8px; border-radius: 8px; }
531
- /*
532
- ColorBox Core Style:
533
- The following CSS is consistent between example themes and should not be altered.
534
- */
535
- #colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;}
536
- #cboxOverlay{position:fixed; width:100%; height:100%;}
537
- #cboxMiddleLeft, #cboxBottomLeft{clear:left;}
538
- #cboxContent{position:relative;}
539
- #cboxLoadedContent{overflow:auto;}
540
- #cboxTitle{margin:0;}
541
- #cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
542
- #cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
543
- .cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none;}
544
- .cboxIframe{width:100%; height:100%; display:block; border:0;}
545
- #colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box;}
546
-
547
- /*
548
- User Style:
549
- Change the following styles to modify the appearance of ColorBox. They are
550
- ordered & tabbed in a way that represents the nesting of the generated HTML.
551
- */
552
- #cboxOverlay{background:#000;}
553
- #colorbox{}
554
- #cboxTopLeft{width:14px; height:14px; background:url(colorbox/controls.png) no-repeat 0 0;}
555
- #cboxTopCenter{height:14px; background:url(colorbox/border.png) repeat-x top left;}
556
- #cboxTopRight{width:14px; height:14px; background:url(colorbox/controls.png) no-repeat -36px 0;}
557
- #cboxBottomLeft{width:14px; height:43px; background:url(colorbox/controls.png) no-repeat 0 -32px;}
558
- #cboxBottomCenter{height:43px; background:url(colorbox/border.png) repeat-x bottom left;}
559
- #cboxBottomRight{width:14px; height:43px; background:url(colorbox/controls.png) no-repeat -36px -32px;}
560
- #cboxMiddleLeft{width:14px; background:url(colorbox/controls.png) repeat-y -175px 0;}
561
- #cboxMiddleRight{width:14px; background:url(colorbox/controls.png) repeat-y -211px 0;}
562
- #cboxContent{background:#fff; overflow:visible;}
563
- .cboxIframe{background:#fff;}
564
- #cboxError{padding:50px; border:1px solid #ccc;}
565
- #cboxLoadedContent{margin-bottom:5px;}
566
- #cboxLoadingOverlay{background:url(colorbox/loading_background.png) no-repeat center center;}
567
- #cboxLoadingGraphic{background:url(colorbox/loading.gif) no-repeat center center;}
568
- #cboxTitle{position:absolute; bottom:-25px; left:0; text-align:center; width:100%; font-weight:bold; color:#7C7C7C;}
569
- #cboxCurrent{position:absolute; bottom:-25px; left:58px; font-weight:bold; color:#7C7C7C;}
570
-
571
- #cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{position:absolute; bottom:-29px; background:url(colorbox/controls.png) no-repeat 0px 0px; width:23px; height:23px; text-indent:-9999px;}
572
- #cboxPrevious{left:0px; background-position: -51px -25px;}
573
- #cboxPrevious:hover{background-position:-51px 0px;}
574
- #cboxNext{left:27px; background-position:-75px -25px;}
575
- #cboxNext:hover{background-position:-75px 0px;}
576
- #cboxClose{right:0; background-position:-100px -25px;}
577
- #cboxClose:hover{background-position:-100px 0px;}
578
-
579
- .cboxSlideshow_on #cboxSlideshow{background-position:-125px 0px; right:27px;}
580
- .cboxSlideshow_on #cboxSlideshow:hover{background-position:-150px 0px;}
581
- .cboxSlideshow_off #cboxSlideshow{background-position:-150px -25px; right:27px;}
582
- .cboxSlideshow_off #cboxSlideshow:hover{background-position:-125px 0px;}
583
- #loading {
584
- position: fixed;
585
- left: 40%;
586
- top: 50%; }
587
-
588
- a {
589
- color: #333333;
590
- text-decoration: none; }
591
- a:hover {
592
- color: black;
593
- text-decoration: underline; }
594
-
595
- body {
596
- font-family: "Lucida Grande", Helvetica, "Helvetica Neue", Arial, sans-serif;
597
- padding: 12px;
598
- background-color: #333333; }
599
-
600
- h1, h2, h3, h4 {
601
- color: #1c2324;
602
- margin: 0;
603
- padding: 0;
604
- margin-bottom: 12px; }
605
-
606
- table {
607
- width: 100%; }
608
-
609
- #content {
610
- clear: left;
611
- background-color: white;
612
- border: 2px solid #dddddd;
613
- border-top: 8px solid #dddddd;
614
- padding: 18px;
615
- -webkit-border-bottom-left-radius: 5px;
616
- -webkit-border-bottom-right-radius: 5px;
617
- -webkit-border-top-right-radius: 5px;
618
- -moz-border-radius-bottomleft: 5px;
619
- -moz-border-radius-bottomright: 5px;
620
- -moz-border-radius-topright: 5px;
621
- border-bottom-left-radius: 5px;
622
- border-bottom-right-radius: 5px;
623
- border-top-right-radius: 5px; }
624
-
625
- .dataTables_filter, .dataTables_info {
626
- padding: 2px 6px; }
627
-
628
- abbr.timeago {
629
- text-decoration: none;
630
- border: none;
631
- font-weight: bold; }
632
-
633
- .timestamp {
634
- float: right;
635
- color: #dddddd; }
636
-
637
- .group_tabs {
638
- list-style: none;
639
- float: left;
640
- margin: 0;
641
- padding: 0; }
642
- .group_tabs li {
643
- display: inline;
644
- float: left; }
645
- .group_tabs li a {
646
- font-family: Helvetica, Arial, sans-serif;
647
- display: block;
648
- float: left;
649
- text-decoration: none;
650
- padding: 4px 8px;
651
- background-color: #aaaaaa;
652
- background: -webkit-gradient(linear, 0 0, 0 bottom, from(#dddddd), to(#aaaaaa));
653
- background: -moz-linear-gradient(#dddddd, #aaaaaa);
654
- background: linear-gradient(#dddddd, #aaaaaa);
655
- text-shadow: #e5e5e5 1px 1px 0px;
656
- border-bottom: none;
657
- color: #333333;
658
- font-weight: bold;
659
- margin-right: 8px;
660
- border-top: 1px solid #efefef;
661
- -webkit-border-top-left-radius: 2px;
662
- -webkit-border-top-right-radius: 2px;
663
- -moz-border-radius-topleft: 2px;
664
- -moz-border-radius-topright: 2px;
665
- border-top-left-radius: 2px;
666
- border-top-right-radius: 2px; }
667
- .group_tabs li a:hover {
668
- background-color: #cccccc;
669
- background: -webkit-gradient(linear, 0 0, 0 bottom, from(#eeeeee), to(#aaaaaa));
670
- background: -moz-linear-gradient(#eeeeee, #aaaaaa);
671
- background: linear-gradient(#eeeeee, #aaaaaa); }
672
- .group_tabs li a:active {
673
- padding-top: 5px;
674
- padding-bottom: 3px; }
675
- .group_tabs li.active a {
676
- color: black;
677
- text-shadow: white 1px 1px 0px;
678
- background-color: #dddddd;
679
- background: -webkit-gradient(linear, 0 0, 0 bottom, from(white), to(#dddddd));
680
- background: -moz-linear-gradient(white, #dddddd);
681
- background: linear-gradient(white, #dddddd); }
682
-
683
- .file_list {
684
- margin-bottom: 18px; }
685
-
686
- a.src_link {
687
- background: url("./magnify.png") no-repeat left 50%;
688
- padding-left: 18px; }
689
-
690
- tr, td {
691
- margin: 0;
692
- padding: 0; }
693
-
694
- th {
695
- white-space: nowrap; }
696
- th.ui-state-default {
697
- cursor: pointer; }
698
- th span.ui-icon {
699
- float: left; }
700
-
701
- td {
702
- padding: 4px 8px; }
703
- td.strong {
704
- font-weight: bold; }
705
-
706
- .source_table h3, .source_table h4 {
707
- padding: 0;
708
- margin: 0;
709
- margin-bottom: 4px; }
710
- .source_table .header {
711
- padding: 10px; }
712
- .source_table pre {
713
- margin: 0;
714
- padding: 0;
715
- white-space: normal;
716
- color: black;
717
- font-family: "Monaco", "Inconsolata", "Consolas", monospace; }
718
- .source_table code {
719
- color: black;
720
- font-family: "Monaco", "Inconsolata", "Consolas", monospace; }
721
- .source_table pre {
722
- background-color: #333333; }
723
- .source_table pre ol {
724
- margin: 0px;
725
- padding: 0px;
726
- margin-left: 45px;
727
- font-size: 12px;
728
- color: white; }
729
- .source_table pre li {
730
- margin: 0px;
731
- padding: 2px 6px;
732
- border-left: 5px solid white; }
733
- .source_table pre li code {
734
- white-space: pre;
735
- white-space: pre-wrap; }
736
- .source_table pre .hits {
737
- float: right;
738
- margin-left: 10px;
739
- padding: 2px 4px;
740
- background-color: #444444;
741
- background: -webkit-gradient(linear, 0 0, 0 bottom, from(#222222), to(#666666));
742
- background: -moz-linear-gradient(#222222, #666666);
743
- background: linear-gradient(#222222, #666666);
744
- color: white;
745
- font-family: Helvetica, "Helvetica Neue", Arial, sans-serif;
746
- font-size: 10px;
747
- font-weight: bold;
748
- text-align: center;
749
- border-radius: 6px; }
750
-
751
- #footer {
752
- color: #dddddd;
753
- font-size: 12px;
754
- font-weight: bold;
755
- margin-top: 12px;
756
- text-align: right; }
757
- #footer a {
758
- color: #eeeeee;
759
- text-decoration: underline; }
760
- #footer a:hover {
761
- color: white;
762
- text-decoration: none; }
763
-
764
- .green {
765
- color: #009900; }
766
-
767
- .red {
768
- color: #990000; }
769
-
770
- .yellow {
771
- color: #ddaa00; }
772
-
773
- .source_table .covered {
774
- border-color: #009900; }
775
- .source_table .missed {
776
- border-color: #990000; }
777
- .source_table .never {
778
- border-color: black; }
779
- .source_table .skipped {
780
- border-color: #ffcc00; }
781
- .source_table .covered:nth-child(odd) {
782
- background-color: #cdf2cd; }
783
- .source_table .covered:nth-child(even) {
784
- background-color: #dbf2db; }
785
- .source_table .missed:nth-child(odd) {
786
- background-color: #f7c0c0; }
787
- .source_table .missed:nth-child(even) {
788
- background-color: #f7cfcf; }
789
- .source_table .never:nth-child(odd) {
790
- background-color: #efefef; }
791
- .source_table .never:nth-child(even) {
792
- background-color: #f4f4f4; }
793
- .source_table .skipped:nth-child(odd) {
794
- background-color: #fbf0c0; }
795
- .source_table .skipped:nth-child(even) {
796
- background-color: #fbffcf; }
797
-
798
-
799
-