zuora_connect_ui 0.8.2 → 0.8.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (449) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/zuora_connect_ui.js +1 -0
  3. data/app/assets/javascripts/zuora_connect_ui/util.js +51 -0
  4. data/app/assets/stylesheets/_zuora_connect_ui.scss +4 -6
  5. data/app/assets/stylesheets/zuora_connect_ui/datatables.scss +3 -3
  6. data/app/helpers/zuora_connect_ui/application_helper.rb +28 -4
  7. data/app/views/partials/_table.html.erb +16 -7
  8. data/lib/zuora_connect_ui/version.rb +1 -1
  9. data/vendor/ruby/2.6.0/cache/autoprefixer-rails-9.6.1.1.gem +0 -0
  10. data/vendor/ruby/2.6.0/cache/parser-2.6.4.1.gem +0 -0
  11. data/vendor/ruby/2.6.0/cache/sassc-2.2.0.gem +0 -0
  12. data/vendor/ruby/2.6.0/cache/zeitwerk-2.1.10.gem +0 -0
  13. data/vendor/ruby/2.6.0/extensions/x86_64-linux/2.6.0/sassc-2.2.0/gem.build_complete +0 -0
  14. data/vendor/ruby/2.6.0/extensions/x86_64-linux/2.6.0/sassc-2.2.0/gem_make.out +75 -0
  15. data/vendor/ruby/2.6.0/extensions/x86_64-linux/2.6.0/sassc-2.2.0/sassc/libsass.so +0 -0
  16. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/CHANGELOG.md +1085 -0
  17. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/Gemfile +10 -0
  18. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/LICENSE +20 -0
  19. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/README.md +237 -0
  20. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/Rakefile +53 -0
  21. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/autoprefixer-rails.gemspec +32 -0
  22. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/lib/autoprefixer-rails.rb +41 -0
  23. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/lib/autoprefixer-rails/processor.rb +194 -0
  24. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/lib/autoprefixer-rails/railtie.rb +50 -0
  25. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/lib/autoprefixer-rails/result.rb +24 -0
  26. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/lib/autoprefixer-rails/sprockets.rb +62 -0
  27. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/lib/autoprefixer-rails/version.rb +3 -0
  28. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/lib/rake/autoprefixer_tasks.rb +28 -0
  29. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/Rakefile +2 -0
  30. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/app/assets/config/manifest.js +0 -0
  31. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/app/assets/stylesheets/evaluate.css.erb +1 -0
  32. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/app/assets/stylesheets/loaded.sass +2 -0
  33. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/app/assets/stylesheets/sass.sass +1 -0
  34. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/app/assets/stylesheets/test.css +3 -0
  35. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/app/assets/stylesheets/wrong.css +2 -0
  36. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/app/controllers/application_controller.rb +2 -0
  37. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/app/controllers/css_controller.rb +6 -0
  38. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/config.ru +2 -0
  39. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/config/application.rb +16 -0
  40. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/config/autoprefixer.yml +2 -0
  41. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/config/boot.rb +2 -0
  42. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/config/environment.rb +3 -0
  43. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/config/environments/test.rb +9 -0
  44. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/config/initializers/secret_token.rb +1 -0
  45. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/app/config/routes.rb +3 -0
  46. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/autoprefixer_spec.rb +121 -0
  47. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/processor_spec.rb +25 -0
  48. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/rails_spec.rb +40 -0
  49. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/railtie_spec.rb +29 -0
  50. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/spec/spec_helper.rb +16 -0
  51. data/vendor/ruby/2.6.0/gems/autoprefixer-rails-9.6.1.1/vendor/autoprefixer.js +67195 -0
  52. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/CHANGELOG.md +909 -0
  53. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/CONTRIBUTING.md +17 -0
  54. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/Gemfile +10 -0
  55. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/LICENSE.txt +25 -0
  56. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/README.md +301 -0
  57. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/Rakefile +166 -0
  58. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/bin/ruby-parse +7 -0
  59. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/bin/ruby-rewrite +7 -0
  60. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/ci/run_rubocop_specs +14 -0
  61. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/doc/AST_FORMAT.md +1816 -0
  62. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/doc/CUSTOMIZATION.md +37 -0
  63. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/doc/INTERNALS.md +21 -0
  64. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/doc/css/common.css +68 -0
  65. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/gauntlet_parser.rb +123 -0
  66. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser.rb +82 -0
  67. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/all.rb +12 -0
  68. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ast/node.rb +40 -0
  69. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ast/processor.rb +264 -0
  70. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/base.rb +270 -0
  71. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/builders/default.rb +1741 -0
  72. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/clobbering_error.rb +13 -0
  73. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/color.rb +32 -0
  74. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/context.rb +59 -0
  75. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/current.rb +92 -0
  76. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/deprecation.rb +13 -0
  77. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/diagnostic.rb +163 -0
  78. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/diagnostic/engine.rb +105 -0
  79. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/lexer.rb +23546 -0
  80. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/lexer.rl +2503 -0
  81. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/lexer/dedenter.rb +79 -0
  82. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/lexer/explanation.rb +55 -0
  83. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/lexer/literal.rb +269 -0
  84. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/lexer/max_numparam_stack.rb +42 -0
  85. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/lexer/stack_state.rb +49 -0
  86. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/macruby.rb +6124 -0
  87. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/macruby.y +2198 -0
  88. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/messages.rb +90 -0
  89. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/meta.rb +33 -0
  90. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/rewriter.rb +105 -0
  91. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby18.rb +5661 -0
  92. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby18.y +1934 -0
  93. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby19.rb +6084 -0
  94. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby19.y +2175 -0
  95. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby20.rb +6511 -0
  96. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby20.y +2353 -0
  97. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby21.rb +6570 -0
  98. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby21.y +2357 -0
  99. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby22.rb +6605 -0
  100. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby22.y +2364 -0
  101. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby23.rb +6624 -0
  102. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby23.y +2370 -0
  103. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby24.rb +6689 -0
  104. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby24.y +2408 -0
  105. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby25.rb +6656 -0
  106. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby25.y +2405 -0
  107. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby26.rb +6670 -0
  108. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby26.y +2413 -0
  109. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby27.rb +6893 -0
  110. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/ruby27.y +2470 -0
  111. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/rubymotion.rb +6078 -0
  112. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/rubymotion.y +2182 -0
  113. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/runner.rb +253 -0
  114. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/runner/ruby_parse.rb +157 -0
  115. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/runner/ruby_rewrite.rb +101 -0
  116. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/buffer.rb +330 -0
  117. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/comment.rb +121 -0
  118. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/comment/associator.rb +210 -0
  119. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map.rb +186 -0
  120. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/collection.rb +18 -0
  121. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/condition.rb +21 -0
  122. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/constant.rb +32 -0
  123. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/definition.rb +23 -0
  124. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/for.rb +19 -0
  125. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/heredoc.rb +19 -0
  126. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/index.rb +33 -0
  127. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/keyword.rb +20 -0
  128. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/objc_kwarg.rb +19 -0
  129. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/operator.rb +17 -0
  130. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/rescue_body.rb +21 -0
  131. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/send.rb +36 -0
  132. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/ternary.rb +18 -0
  133. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/map/variable.rb +31 -0
  134. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/range.rb +310 -0
  135. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/rewriter.rb +513 -0
  136. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/rewriter/action.rb +44 -0
  137. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/tree_rewriter.rb +301 -0
  138. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/source/tree_rewriter/action.rb +133 -0
  139. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/static_environment.rb +46 -0
  140. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/syntax_error.rb +21 -0
  141. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/tree_rewriter.rb +134 -0
  142. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/lib/parser/version.rb +5 -0
  143. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/parser.gemspec +51 -0
  144. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/bug_163/fixtures/input.rb +5 -0
  145. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/bug_163/fixtures/output.rb +5 -0
  146. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/bug_163/rewriter.rb +20 -0
  147. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/helper.rb +59 -0
  148. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/parse_helper.rb +316 -0
  149. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/racc_coverage_helper.rb +133 -0
  150. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_base.rb +31 -0
  151. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_current.rb +29 -0
  152. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_diagnostic.rb +96 -0
  153. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_diagnostic_engine.rb +62 -0
  154. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_encoding.rb +99 -0
  155. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_lexer.rb +3659 -0
  156. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_lexer_stack_state.rb +78 -0
  157. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_parse_helper.rb +80 -0
  158. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_parser.rb +7579 -0
  159. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_runner_parse.rb +35 -0
  160. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_runner_rewrite.rb +47 -0
  161. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_source_buffer.rb +162 -0
  162. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_source_comment.rb +36 -0
  163. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_source_comment_associator.rb +367 -0
  164. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_source_map.rb +15 -0
  165. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_source_range.rb +172 -0
  166. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_source_rewriter.rb +541 -0
  167. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_source_rewriter_action.rb +46 -0
  168. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_source_tree_rewriter.rb +173 -0
  169. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/test_static_environment.rb +45 -0
  170. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/using_tree_rewriter/fixtures/input.rb +3 -0
  171. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/using_tree_rewriter/fixtures/output.rb +3 -0
  172. data/vendor/ruby/2.6.0/gems/parser-2.6.4.1/test/using_tree_rewriter/using_tree_rewriter.rb +9 -0
  173. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/CHANGELOG.md +77 -0
  174. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/CODE_OF_CONDUCT.md +10 -0
  175. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/Gemfile +2 -0
  176. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/LICENSE.txt +22 -0
  177. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/README.md +68 -0
  178. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/Rakefile +53 -0
  179. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/Makefile +271 -0
  180. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/SharedPtr.o +0 -0
  181. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/ast.o +0 -0
  182. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/ast2c.o +0 -0
  183. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/ast_fwd_decl.o +0 -0
  184. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/ast_sel_cmp.o +0 -0
  185. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/ast_sel_unify.o +0 -0
  186. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/ast_selectors.o +0 -0
  187. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/ast_supports.o +0 -0
  188. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/ast_values.o +0 -0
  189. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/backtrace.o +0 -0
  190. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/base64vlq.o +0 -0
  191. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/bind.o +0 -0
  192. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/c2ast.o +0 -0
  193. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/c99func.o +0 -0
  194. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/cencode.o +0 -0
  195. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/check_nesting.o +0 -0
  196. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/color_maps.o +0 -0
  197. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/constants.o +0 -0
  198. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/context.o +0 -0
  199. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/cssize.o +0 -0
  200. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/depend +4 -0
  201. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/emitter.o +0 -0
  202. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/environment.o +0 -0
  203. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/error_handling.o +0 -0
  204. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/eval.o +0 -0
  205. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/expand.o +0 -0
  206. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/extconf.rb +84 -0
  207. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/extend.o +0 -0
  208. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/file.o +0 -0
  209. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/fn_colors.o +0 -0
  210. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/fn_lists.o +0 -0
  211. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/fn_maps.o +0 -0
  212. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/fn_miscs.o +0 -0
  213. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/fn_numbers.o +0 -0
  214. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/fn_selectors.o +0 -0
  215. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/fn_strings.o +0 -0
  216. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/fn_utils.o +0 -0
  217. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/inspect.o +0 -0
  218. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/json.o +0 -0
  219. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/lexer.o +0 -0
  220. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass.so +0 -0
  221. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/VERSION +1 -0
  222. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/contrib/plugin.cpp +60 -0
  223. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/include/sass.h +15 -0
  224. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/include/sass/base.h +96 -0
  225. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/include/sass/context.h +170 -0
  226. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/include/sass/functions.h +139 -0
  227. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/include/sass/values.h +145 -0
  228. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/include/sass/version.h +12 -0
  229. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/include/sass2scss.h +120 -0
  230. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast.cpp +963 -0
  231. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast.hpp +905 -0
  232. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast2c.cpp +80 -0
  233. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast2c.hpp +39 -0
  234. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_def_macros.hpp +132 -0
  235. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_fwd_decl.cpp +30 -0
  236. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_fwd_decl.hpp +341 -0
  237. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_sel_cmp.cpp +909 -0
  238. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_sel_unify.cpp +280 -0
  239. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_selectors.cpp +1475 -0
  240. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_selectors.hpp +568 -0
  241. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_supports.cpp +130 -0
  242. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_supports.hpp +121 -0
  243. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_values.cpp +967 -0
  244. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/ast_values.hpp +489 -0
  245. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/b64/cencode.h +32 -0
  246. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/b64/encode.h +79 -0
  247. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/backtrace.cpp +50 -0
  248. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/backtrace.hpp +29 -0
  249. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/base64vlq.cpp +47 -0
  250. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/base64vlq.hpp +30 -0
  251. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/bind.cpp +312 -0
  252. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/bind.hpp +15 -0
  253. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/c2ast.cpp +64 -0
  254. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/c2ast.hpp +14 -0
  255. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/c99func.c +54 -0
  256. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/cencode.c +108 -0
  257. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/check_nesting.cpp +394 -0
  258. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/check_nesting.hpp +66 -0
  259. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/color_maps.cpp +651 -0
  260. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/color_maps.hpp +331 -0
  261. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/constants.cpp +194 -0
  262. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/constants.hpp +194 -0
  263. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/context.cpp +890 -0
  264. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/context.hpp +152 -0
  265. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/cssize.cpp +604 -0
  266. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/cssize.hpp +77 -0
  267. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/debug.hpp +43 -0
  268. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/debugger.hpp +807 -0
  269. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/emitter.cpp +298 -0
  270. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/emitter.hpp +103 -0
  271. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/environment.cpp +260 -0
  272. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/environment.hpp +119 -0
  273. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/error_handling.cpp +212 -0
  274. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/error_handling.hpp +229 -0
  275. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/eval.cpp +1657 -0
  276. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/eval.hpp +112 -0
  277. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/expand.cpp +822 -0
  278. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/expand.hpp +78 -0
  279. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/extend.cpp +2132 -0
  280. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/extend.hpp +86 -0
  281. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/file.cpp +522 -0
  282. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/file.hpp +133 -0
  283. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_colors.cpp +594 -0
  284. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_colors.hpp +85 -0
  285. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_lists.cpp +284 -0
  286. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_lists.hpp +34 -0
  287. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_maps.cpp +94 -0
  288. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_maps.hpp +30 -0
  289. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_miscs.cpp +256 -0
  290. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_miscs.hpp +40 -0
  291. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_numbers.cpp +220 -0
  292. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_numbers.hpp +45 -0
  293. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_selectors.cpp +235 -0
  294. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_selectors.hpp +35 -0
  295. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_strings.cpp +254 -0
  296. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_strings.hpp +34 -0
  297. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_utils.cpp +156 -0
  298. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/fn_utils.hpp +56 -0
  299. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/inspect.cpp +1087 -0
  300. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/inspect.hpp +99 -0
  301. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/json.cpp +1436 -0
  302. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/json.hpp +117 -0
  303. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/kwd_arg_macros.hpp +28 -0
  304. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/lexer.cpp +184 -0
  305. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/lexer.hpp +315 -0
  306. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/listize.cpp +84 -0
  307. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/listize.hpp +38 -0
  308. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/mapping.hpp +18 -0
  309. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/memory/SharedPtr.cpp +33 -0
  310. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/memory/SharedPtr.hpp +286 -0
  311. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/node.cpp +322 -0
  312. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/node.hpp +118 -0
  313. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/operation.hpp +213 -0
  314. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/operators.cpp +266 -0
  315. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/operators.hpp +30 -0
  316. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/output.cpp +339 -0
  317. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/output.hpp +47 -0
  318. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/parser.cpp +3153 -0
  319. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/parser.hpp +402 -0
  320. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/paths.hpp +71 -0
  321. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/plugins.cpp +188 -0
  322. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/plugins.hpp +57 -0
  323. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/position.cpp +184 -0
  324. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/position.hpp +124 -0
  325. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/prelexer.cpp +1780 -0
  326. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/prelexer.hpp +484 -0
  327. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/remove_placeholders.cpp +87 -0
  328. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/remove_placeholders.hpp +34 -0
  329. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass.cpp +155 -0
  330. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass.hpp +142 -0
  331. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass2scss.cpp +895 -0
  332. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass_context.cpp +772 -0
  333. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass_context.hpp +129 -0
  334. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass_functions.cpp +210 -0
  335. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass_functions.hpp +50 -0
  336. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass_util.cpp +152 -0
  337. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass_util.hpp +256 -0
  338. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass_values.cpp +365 -0
  339. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/sass_values.hpp +82 -0
  340. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/source_map.cpp +198 -0
  341. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/source_map.hpp +62 -0
  342. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/subset_map.cpp +58 -0
  343. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/subset_map.hpp +76 -0
  344. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/to_value.cpp +114 -0
  345. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/to_value.hpp +46 -0
  346. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/units.cpp +505 -0
  347. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/units.hpp +110 -0
  348. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/utf8.h +34 -0
  349. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/utf8/checked.h +336 -0
  350. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/utf8/core.h +332 -0
  351. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/utf8/unchecked.h +235 -0
  352. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/utf8_string.cpp +105 -0
  353. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/utf8_string.hpp +37 -0
  354. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/util.cpp +725 -0
  355. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/util.hpp +106 -0
  356. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/util_string.cpp +75 -0
  357. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/util_string.hpp +19 -0
  358. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/values.cpp +140 -0
  359. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/libsass/src/values.hpp +12 -0
  360. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/listize.o +0 -0
  361. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/node.o +0 -0
  362. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/operators.o +0 -0
  363. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/output.o +0 -0
  364. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/parser.o +0 -0
  365. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/plugins.o +0 -0
  366. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/position.o +0 -0
  367. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/prelexer.o +0 -0
  368. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/remove_placeholders.o +0 -0
  369. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/sass.o +0 -0
  370. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/sass2scss.o +0 -0
  371. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/sass_context.o +0 -0
  372. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/sass_functions.o +0 -0
  373. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/sass_util.o +0 -0
  374. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/sass_values.o +0 -0
  375. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/source_map.o +0 -0
  376. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/subset_map.o +0 -0
  377. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/to_value.o +0 -0
  378. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/units.o +0 -0
  379. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/utf8_string.o +0 -0
  380. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/util.o +0 -0
  381. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/util_string.o +0 -0
  382. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/ext/values.o +0 -0
  383. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc.rb +57 -0
  384. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/dependency.rb +17 -0
  385. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/engine.rb +139 -0
  386. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/error.rb +37 -0
  387. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/functions_handler.rb +73 -0
  388. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/import_handler.rb +50 -0
  389. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/importer.rb +31 -0
  390. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/libsass.so +0 -0
  391. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native.rb +62 -0
  392. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native/lib_c.rb +21 -0
  393. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native/native_context_api.rb +147 -0
  394. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native/native_functions_api.rb +159 -0
  395. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native/sass2scss_api.rb +10 -0
  396. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native/sass_input_style.rb +13 -0
  397. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native/sass_output_style.rb +12 -0
  398. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native/sass_value.rb +97 -0
  399. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/native/string_list.rb +10 -0
  400. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/sass_2_scss.rb +9 -0
  401. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script.rb +17 -0
  402. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/functions.rb +8 -0
  403. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value.rb +137 -0
  404. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value/bool.rb +32 -0
  405. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value/color.rb +95 -0
  406. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value/list.rb +136 -0
  407. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value/map.rb +69 -0
  408. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value/number.rb +389 -0
  409. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value/string.rb +96 -0
  410. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value_conversion.rb +69 -0
  411. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value_conversion/base.rb +13 -0
  412. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value_conversion/bool.rb +13 -0
  413. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value_conversion/color.rb +18 -0
  414. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value_conversion/list.rb +25 -0
  415. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value_conversion/map.rb +21 -0
  416. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value_conversion/number.rb +13 -0
  417. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/script/value_conversion/string.rb +17 -0
  418. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/util.rb +231 -0
  419. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/util/normalized_map.rb +117 -0
  420. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/lib/sassc/version.rb +5 -0
  421. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/sassc.gemspec +69 -0
  422. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/custom_importer_test.rb +127 -0
  423. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/engine_test.rb +314 -0
  424. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/error_test.rb +29 -0
  425. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/fixtures/paths.scss +10 -0
  426. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/functions_test.rb +323 -0
  427. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/native_test.rb +213 -0
  428. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/output_style_test.rb +107 -0
  429. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/sass_2_scss_test.rb +14 -0
  430. data/vendor/ruby/2.6.0/gems/sassc-2.2.0/test/test_helper.rb +45 -0
  431. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/README.md +533 -0
  432. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk.rb +12 -0
  433. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/error.rb +10 -0
  434. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/explicit_namespace.rb +80 -0
  435. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/gem_inflector.rb +19 -0
  436. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/inflector.rb +19 -0
  437. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/kernel.rb +33 -0
  438. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/loader.rb +759 -0
  439. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/loader/callbacks.rb +71 -0
  440. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/real_mod_name.rb +15 -0
  441. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/registry.rb +147 -0
  442. data/vendor/ruby/2.6.0/gems/zeitwerk-2.1.10/lib/zeitwerk/version.rb +5 -0
  443. data/vendor/ruby/2.6.0/specifications/autoprefixer-rails-9.6.1.1.gemspec +47 -0
  444. data/vendor/ruby/2.6.0/specifications/parser-2.6.4.1.gemspec +62 -0
  445. data/vendor/ruby/2.6.0/specifications/sassc-2.2.0.gemspec +60 -0
  446. data/vendor/ruby/2.6.0/specifications/zeitwerk-2.1.10.gemspec +21 -0
  447. metadata +441 -4
  448. data/vendor/assets/anjuna/css/anjuna-application.css +0 -2
  449. data/vendor/assets/anjuna/css/anjuna-theme.css +0 -2
@@ -0,0 +1,909 @@
1
+ // sass.hpp must go before all system headers to get the
2
+ // __EXTENSIONS__ fix on Solaris.
3
+ #include "sass.hpp"
4
+
5
+ #include "ast.hpp"
6
+ #include "context.hpp"
7
+ #include "node.hpp"
8
+ #include "eval.hpp"
9
+ #include "extend.hpp"
10
+ #include "emitter.hpp"
11
+ #include "color_maps.hpp"
12
+ #include "ast_fwd_decl.hpp"
13
+ #include <set>
14
+ #include <iomanip>
15
+ #include <iostream>
16
+ #include <algorithm>
17
+ #include <functional>
18
+ #include <cctype>
19
+ #include <locale>
20
+
21
+ #include "ast_selectors.hpp"
22
+
23
+ namespace Sass {
24
+
25
+ /*#########################################################################*/
26
+ /*#########################################################################*/
27
+
28
+ bool Selector_List::operator== (const Selector& rhs) const
29
+ {
30
+ if (auto sl = Cast<Selector_List>(&rhs)) { return *this == *sl; }
31
+ else if (auto ss = Cast<Simple_Selector>(&rhs)) { return *this == *ss; }
32
+ else if (auto cpx = Cast<Complex_Selector>(&rhs)) { return *this == *cpx; }
33
+ else if (auto cpd = Cast<Compound_Selector>(&rhs)) { return *this == *cpd; }
34
+ else if (auto ls = Cast<List>(&rhs)) { return *this == *ls; }
35
+ throw std::runtime_error("invalid selector base classes to compare");
36
+ }
37
+
38
+ bool Selector_List::operator< (const Selector& rhs) const
39
+ {
40
+ if (auto sl = Cast<Selector_List>(&rhs)) { return *this < *sl; }
41
+ else if (auto ss = Cast<Simple_Selector>(&rhs)) { return *this < *ss; }
42
+ else if (auto cpx = Cast<Complex_Selector>(&rhs)) { return *this < *cpx; }
43
+ else if (auto cpd = Cast<Compound_Selector>(&rhs)) { return *this < *cpd; }
44
+ else if (auto ls = Cast<List>(&rhs)) { return *this < *ls; }
45
+ throw std::runtime_error("invalid selector base classes to compare");
46
+ }
47
+
48
+ // Selector lists can be compared to comma lists
49
+ bool Selector_List::operator== (const Expression& rhs) const
50
+ {
51
+ if (auto l = Cast<List>(&rhs)) { return *this == *l; }
52
+ if (auto s = Cast<Selector>(&rhs)) { return *this == *s; }
53
+ if (Cast<String>(&rhs) || Cast<Null>(&rhs)) { return false; }
54
+ throw std::runtime_error("invalid selector base classes to compare");
55
+ }
56
+
57
+ // Selector lists can be compared to comma lists
58
+ bool Selector_List::operator< (const Expression& rhs) const
59
+ {
60
+ if (auto l = Cast<List>(&rhs)) { return *this < *l; }
61
+ if (auto s = Cast<Selector>(&rhs)) { return *this < *s; }
62
+ if (Cast<String>(&rhs) || Cast<Null>(&rhs)) { return true; }
63
+ throw std::runtime_error("invalid selector base classes to compare");
64
+ }
65
+
66
+ bool Complex_Selector::operator== (const Selector& rhs) const
67
+ {
68
+ if (auto sl = Cast<Selector_List>(&rhs)) return *this == *sl;
69
+ if (auto ss = Cast<Simple_Selector>(&rhs)) return *this == *ss;
70
+ if (auto cs = Cast<Complex_Selector>(&rhs)) return *this == *cs;
71
+ if (auto ch = Cast<Compound_Selector>(&rhs)) return *this == *ch;
72
+ throw std::runtime_error("invalid selector base classes to compare");
73
+ }
74
+
75
+ bool Complex_Selector::operator< (const Selector& rhs) const
76
+ {
77
+ if (auto sl = Cast<Selector_List>(&rhs)) return *this < *sl;
78
+ if (auto ss = Cast<Simple_Selector>(&rhs)) return *this < *ss;
79
+ if (auto cs = Cast<Complex_Selector>(&rhs)) return *this < *cs;
80
+ if (auto ch = Cast<Compound_Selector>(&rhs)) return *this < *ch;
81
+ throw std::runtime_error("invalid selector base classes to compare");
82
+ }
83
+
84
+ bool Compound_Selector::operator== (const Selector& rhs) const
85
+ {
86
+ if (auto sl = Cast<Selector_List>(&rhs)) return *this == *sl;
87
+ if (auto ss = Cast<Simple_Selector>(&rhs)) return *this == *ss;
88
+ if (auto cs = Cast<Complex_Selector>(&rhs)) return *this == *cs;
89
+ if (auto ch = Cast<Compound_Selector>(&rhs)) return *this == *ch;
90
+ throw std::runtime_error("invalid selector base classes to compare");
91
+ }
92
+
93
+ bool Compound_Selector::operator< (const Selector& rhs) const
94
+ {
95
+ if (auto sl = Cast<Selector_List>(&rhs)) return *this < *sl;
96
+ if (auto ss = Cast<Simple_Selector>(&rhs)) return *this < *ss;
97
+ if (auto cs = Cast<Complex_Selector>(&rhs)) return *this < *cs;
98
+ if (auto ch = Cast<Compound_Selector>(&rhs)) return *this < *ch;
99
+ throw std::runtime_error("invalid selector base classes to compare");
100
+ }
101
+
102
+ bool Selector_Schema::operator== (const Selector& rhs) const
103
+ {
104
+ if (auto sl = Cast<Selector_List>(&rhs)) return *this == *sl;
105
+ if (auto ss = Cast<Simple_Selector>(&rhs)) return *this == *ss;
106
+ if (auto cs = Cast<Complex_Selector>(&rhs)) return *this == *cs;
107
+ if (auto ch = Cast<Compound_Selector>(&rhs)) return *this == *ch;
108
+ throw std::runtime_error("invalid selector base classes to compare");
109
+ }
110
+
111
+ bool Selector_Schema::operator< (const Selector& rhs) const
112
+ {
113
+ if (auto sl = Cast<Selector_List>(&rhs)) return *this < *sl;
114
+ if (auto ss = Cast<Simple_Selector>(&rhs)) return *this < *ss;
115
+ if (auto cs = Cast<Complex_Selector>(&rhs)) return *this < *cs;
116
+ if (auto ch = Cast<Compound_Selector>(&rhs)) return *this < *ch;
117
+ throw std::runtime_error("invalid selector base classes to compare");
118
+ }
119
+
120
+ bool Simple_Selector::operator== (const Selector& rhs) const
121
+ {
122
+ if (auto sl = Cast<Selector_List>(&rhs)) return *this == *sl;
123
+ if (auto ss = Cast<Simple_Selector>(&rhs)) return *this == *ss;
124
+ if (auto cs = Cast<Complex_Selector>(&rhs)) return *this == *cs;
125
+ if (auto ch = Cast<Compound_Selector>(&rhs)) return *this == *ch;
126
+ throw std::runtime_error("invalid selector base classes to compare");
127
+ }
128
+
129
+ bool Simple_Selector::operator< (const Selector& rhs) const
130
+ {
131
+ if (auto sl = Cast<Selector_List>(&rhs)) return *this < *sl;
132
+ if (auto ss = Cast<Simple_Selector>(&rhs)) return *this < *ss;
133
+ if (auto cs = Cast<Complex_Selector>(&rhs)) return *this < *cs;
134
+ if (auto ch = Cast<Compound_Selector>(&rhs)) return *this < *ch;
135
+ throw std::runtime_error("invalid selector base classes to compare");
136
+ }
137
+
138
+ /*#########################################################################*/
139
+ /*#########################################################################*/
140
+
141
+ bool Selector_List::operator< (const Selector_List& rhs) const
142
+ {
143
+ size_t l = rhs.length();
144
+ if (length() < l) l = length();
145
+ for (size_t i = 0; i < l; i ++) {
146
+ if (*at(i) < *rhs.at(i)) return true;
147
+ if (*at(i) != *rhs.at(i)) return false;
148
+ }
149
+ return false;
150
+ }
151
+
152
+ bool Selector_List::operator== (const Selector_List& rhs) const
153
+ {
154
+ if (&rhs == this) return true;
155
+ if (rhs.length() != length()) return false;
156
+ std::unordered_set<const Complex_Selector *, HashPtr, ComparePtrs> lhs_set;
157
+ lhs_set.reserve(length());
158
+ for (const Complex_Selector_Obj &element : elements()) {
159
+ lhs_set.insert(element.ptr());
160
+ }
161
+ for (const Complex_Selector_Obj &element : rhs.elements()) {
162
+ if (lhs_set.find(element.ptr()) == lhs_set.end()) return false;
163
+ }
164
+ return true;
165
+ }
166
+
167
+ bool Compound_Selector::operator< (const Compound_Selector& rhs) const
168
+ {
169
+ size_t L = std::min(length(), rhs.length());
170
+ for (size_t i = 0; i < L; ++i)
171
+ {
172
+ Simple_Selector* l = (*this)[i];
173
+ Simple_Selector* r = rhs[i];
174
+ if (!l && !r) return false;
175
+ else if (!r) return false;
176
+ else if (!l) return true;
177
+ else if (*l != *r)
178
+ { return *l < *r; }
179
+ }
180
+ // just compare the length now
181
+ return length() < rhs.length();
182
+ }
183
+
184
+ bool Compound_Selector::operator== (const Compound_Selector& rhs) const
185
+ {
186
+ if (&rhs == this) return true;
187
+ if (rhs.length() != length()) return false;
188
+ std::unordered_set<const Simple_Selector *, HashPtr, ComparePtrs> lhs_set;
189
+ lhs_set.reserve(length());
190
+ for (const Simple_Selector_Obj &element : elements()) {
191
+ lhs_set.insert(element.ptr());
192
+ }
193
+ // there is no break?!
194
+ for (const Simple_Selector_Obj &element : rhs.elements()) {
195
+ if (lhs_set.find(element.ptr()) == lhs_set.end()) return false;
196
+ }
197
+ return true;
198
+ }
199
+
200
+ bool Complex_Selector::operator< (const Complex_Selector& rhs) const
201
+ {
202
+ // const iterators for tails
203
+ const Complex_Selector* l = this;
204
+ const Complex_Selector* r = &rhs;
205
+ Compound_Selector* l_h = NULL;
206
+ Compound_Selector* r_h = NULL;
207
+ if (l) l_h = l->head();
208
+ if (r) r_h = r->head();
209
+ // process all tails
210
+ while (true)
211
+ {
212
+ #ifdef DEBUG
213
+ // skip empty ancestor first
214
+ if (l && l->is_empty_ancestor())
215
+ {
216
+ l_h = NULL;
217
+ l = l->tail();
218
+ if(l) l_h = l->head();
219
+ continue;
220
+ }
221
+ // skip empty ancestor first
222
+ if (r && r->is_empty_ancestor())
223
+ {
224
+ r_h = NULL;
225
+ r = r->tail();
226
+ if (r) r_h = r->head();
227
+ continue;
228
+ }
229
+ #endif
230
+ // check for valid selectors
231
+ if (!l) return !!r;
232
+ if (!r) return false;
233
+ // both are null
234
+ else if (!l_h && !r_h)
235
+ {
236
+ // check combinator after heads
237
+ if (l->combinator() != r->combinator())
238
+ { return l->combinator() < r->combinator(); }
239
+ // advance to next tails
240
+ l = l->tail();
241
+ r = r->tail();
242
+ // fetch the next headers
243
+ l_h = NULL; r_h = NULL;
244
+ if (l) l_h = l->head();
245
+ if (r) r_h = r->head();
246
+ }
247
+ // one side is null
248
+ else if (!r_h) return true;
249
+ else if (!l_h) return false;
250
+ // heads ok and equal
251
+ else if (*l_h == *r_h)
252
+ {
253
+ // check combinator after heads
254
+ if (l->combinator() != r->combinator())
255
+ { return l->combinator() < r->combinator(); }
256
+ // advance to next tails
257
+ l = l->tail();
258
+ r = r->tail();
259
+ // fetch the next headers
260
+ l_h = NULL; r_h = NULL;
261
+ if (l) l_h = l->head();
262
+ if (r) r_h = r->head();
263
+ }
264
+ // heads are not equal
265
+ else return *l_h < *r_h;
266
+ }
267
+ }
268
+
269
+ bool Complex_Selector::operator== (const Complex_Selector& rhs) const
270
+ {
271
+ // const iterators for tails
272
+ const Complex_Selector* l = this;
273
+ const Complex_Selector* r = &rhs;
274
+ Compound_Selector* l_h = NULL;
275
+ Compound_Selector* r_h = NULL;
276
+ if (l) l_h = l->head();
277
+ if (r) r_h = r->head();
278
+ // process all tails
279
+ while (true)
280
+ {
281
+ // check the pointers
282
+ if (!r) return !l;
283
+ if (!l) return !r;
284
+ // both are null
285
+ if (!l_h && !r_h)
286
+ {
287
+ // check combinator after heads
288
+ if (l->combinator() != r->combinator())
289
+ { return l->combinator() < r->combinator(); }
290
+ // advance to next tails
291
+ l = l->tail();
292
+ r = r->tail();
293
+ // fetch the next heads
294
+ l_h = NULL; r_h = NULL;
295
+ if (l) l_h = l->head();
296
+ if (r) r_h = r->head();
297
+ }
298
+ // equals if other head is empty
299
+ else if ((!l_h && !r_h) ||
300
+ (!l_h && r_h->empty()) ||
301
+ (!r_h && l_h->empty()) ||
302
+ (l_h && r_h && *l_h == *r_h))
303
+ {
304
+ // check combinator after heads
305
+ if (l->combinator() != r->combinator())
306
+ { return l->combinator() == r->combinator(); }
307
+ // advance to next tails
308
+ l = l->tail();
309
+ r = r->tail();
310
+ // fetch the next heads
311
+ l_h = NULL; r_h = NULL;
312
+ if (l) l_h = l->head();
313
+ if (r) r_h = r->head();
314
+ }
315
+ // abort
316
+ else break;
317
+ }
318
+ // unreachable
319
+ return false;
320
+ }
321
+
322
+ /*#########################################################################*/
323
+ /*#########################################################################*/
324
+
325
+ bool Selector_List::operator== (const Complex_Selector& rhs) const
326
+ {
327
+ size_t len = length();
328
+ if (len > 1) return false;
329
+ if (len == 0) return rhs.empty();
330
+ return *at(0) == rhs;
331
+ }
332
+
333
+ bool Selector_List::operator< (const Complex_Selector& rhs) const
334
+ {
335
+ size_t len = length();
336
+ if (len > 1) return false;
337
+ if (len == 0) return !rhs.empty();
338
+ return *at(0) < rhs;
339
+ }
340
+
341
+ bool Selector_List::operator== (const Compound_Selector& rhs) const
342
+ {
343
+ size_t len = length();
344
+ if (len > 1) return false;
345
+ if (len == 0) return rhs.empty();
346
+ return *at(0) == rhs;
347
+ }
348
+
349
+ bool Selector_List::operator< (const Compound_Selector& rhs) const
350
+ {
351
+ size_t len = length();
352
+ if (len > 1) return false;
353
+ if (len == 0) return !rhs.empty();
354
+ return *at(0) < rhs;
355
+ }
356
+
357
+ bool Selector_List::operator== (const Simple_Selector& rhs) const
358
+ {
359
+ size_t len = length();
360
+ if (len > 1) return false;
361
+ if (len == 0) return rhs.empty();
362
+ return *at(0) == rhs;
363
+ }
364
+
365
+ bool Selector_List::operator< (const Simple_Selector& rhs) const
366
+ {
367
+ size_t len = length();
368
+ if (len > 1) return false;
369
+ if (len == 0) return !rhs.empty();
370
+ return *at(0) < rhs;
371
+ }
372
+
373
+ /***************************************************************************/
374
+ /***************************************************************************/
375
+
376
+ bool Complex_Selector::operator== (const Selector_List& rhs) const
377
+ {
378
+ size_t len = rhs.length();
379
+ if (len > 1) return false;
380
+ if (len == 0) return empty();
381
+ return *this == *rhs.at(0);
382
+ }
383
+
384
+ bool Complex_Selector::operator< (const Selector_List& rhs) const
385
+ {
386
+ size_t len = rhs.length();
387
+ if (len > 1) return true;
388
+ if (len == 0) return false;
389
+ return *this < *rhs.at(0);
390
+ }
391
+
392
+ bool Complex_Selector::operator== (const Compound_Selector& rhs) const
393
+ {
394
+ if (tail()) return false;
395
+ if (!head()) return rhs.empty();
396
+ return *head() == rhs;
397
+ }
398
+
399
+ bool Complex_Selector::operator< (const Compound_Selector& rhs) const
400
+ {
401
+ if (tail()) return false;
402
+ if (!head()) return !rhs.empty();
403
+ return *head() < rhs;
404
+ }
405
+
406
+ bool Complex_Selector::operator== (const Simple_Selector& rhs) const
407
+ {
408
+ if (tail()) return false;
409
+ if (!head()) return rhs.empty();
410
+ return *head() == rhs;
411
+ }
412
+
413
+ bool Complex_Selector::operator< (const Simple_Selector& rhs) const
414
+ {
415
+ if (tail()) return false;
416
+ if (!head()) return !rhs.empty();
417
+ return *head() < rhs;
418
+ }
419
+
420
+ /***************************************************************************/
421
+ /***************************************************************************/
422
+
423
+ bool Compound_Selector::operator== (const Selector_List& rhs) const
424
+ {
425
+ size_t len = rhs.length();
426
+ if (len > 1) return false;
427
+ if (len == 0) return empty();
428
+ return *this == *rhs.at(0);
429
+ }
430
+
431
+ bool Compound_Selector::operator< (const Selector_List& rhs) const
432
+ {
433
+ size_t len = rhs.length();
434
+ if (len > 1) return true;
435
+ if (len == 0) return false;
436
+ return *this < *rhs.at(0);
437
+ }
438
+
439
+ bool Compound_Selector::operator== (const Complex_Selector& rhs) const
440
+ {
441
+ if (rhs.tail()) return false;
442
+ if (!rhs.head()) return empty();
443
+ return *this == *rhs.head();
444
+ }
445
+
446
+ bool Compound_Selector::operator< (const Complex_Selector& rhs) const
447
+ {
448
+ if (rhs.tail()) return true;
449
+ if (!rhs.head()) return false;
450
+ return *this < *rhs.head();
451
+ }
452
+
453
+ bool Compound_Selector::operator< (const Simple_Selector& rhs) const
454
+ {
455
+ size_t len = length();
456
+ if (len > 1) return false;
457
+ if (len == 0) return rhs.empty();
458
+ return *at(0) == rhs;
459
+ }
460
+
461
+ bool Compound_Selector::operator== (const Simple_Selector& rhs) const
462
+ {
463
+ size_t len = length();
464
+ if (len > 1) return false;
465
+ if (len == 0) return !rhs.empty();
466
+ return *at(0) < rhs;
467
+ }
468
+
469
+ /***************************************************************************/
470
+ /***************************************************************************/
471
+
472
+ bool Simple_Selector::operator== (const Selector_List& rhs) const
473
+ {
474
+ return rhs.length() == 1 && *this == *rhs.at(0);
475
+ }
476
+
477
+ bool Simple_Selector::operator< (const Selector_List& rhs) const
478
+ {
479
+ size_t len = rhs.length();
480
+ if (len > 1) return true;
481
+ if (len == 0) return false;
482
+ return *this < *rhs.at(0);
483
+ }
484
+
485
+ bool Simple_Selector::operator== (const Complex_Selector& rhs) const
486
+ {
487
+ return !rhs.tail() && rhs.head() &&
488
+ rhs.combinator() == Complex_Selector::ANCESTOR_OF &&
489
+ *this == *rhs.head();
490
+ }
491
+
492
+ bool Simple_Selector::operator< (const Complex_Selector& rhs) const
493
+ {
494
+ if (rhs.tail()) return true;
495
+ if (!rhs.head()) return false;
496
+ return *this < *rhs.head();
497
+ }
498
+
499
+ bool Simple_Selector::operator== (const Compound_Selector& rhs) const
500
+ {
501
+ return rhs.length() == 1 && *this == *rhs.at(0);
502
+ }
503
+
504
+ bool Simple_Selector::operator< (const Compound_Selector& rhs) const
505
+ {
506
+ size_t len = rhs.length();
507
+ if (len > 1) return true;
508
+ if (len == 0) return false;
509
+ return *this < *rhs.at(0);
510
+ }
511
+
512
+ /*#########################################################################*/
513
+ /*#########################################################################*/
514
+
515
+ bool Simple_Selector::operator== (const Simple_Selector& rhs) const
516
+ {
517
+ switch (simple_type()) {
518
+ case ID_SEL: return (const Id_Selector&) *this == rhs; break;
519
+ case TYPE_SEL: return (const Type_Selector&) *this == rhs; break;
520
+ case CLASS_SEL: return (const Class_Selector&) *this == rhs; break;
521
+ case PARENT_SEL: return (const Parent_Selector&) *this == rhs; break;
522
+ case PSEUDO_SEL: return (const Pseudo_Selector&) *this == rhs; break;
523
+ case WRAPPED_SEL: return (const Wrapped_Selector&) *this == rhs; break;
524
+ case ATTRIBUTE_SEL: return (const Attribute_Selector&) *this == rhs; break;
525
+ case PLACEHOLDER_SEL: return (const Placeholder_Selector&) *this == rhs; break;
526
+ }
527
+ return false;
528
+ }
529
+
530
+ /***************************************************************************/
531
+ /***************************************************************************/
532
+
533
+ bool Id_Selector::operator== (const Simple_Selector& rhs) const
534
+ {
535
+ auto sel = Cast<Id_Selector>(&rhs);
536
+ return sel ? *this == *sel : false;
537
+ }
538
+
539
+ bool Type_Selector::operator== (const Simple_Selector& rhs) const
540
+ {
541
+ auto sel = Cast<Type_Selector>(&rhs);
542
+ return sel ? *this == *sel : false;
543
+ }
544
+
545
+ bool Class_Selector::operator== (const Simple_Selector& rhs) const
546
+ {
547
+ auto sel = Cast<Class_Selector>(&rhs);
548
+ return sel ? *this == *sel : false;
549
+ }
550
+
551
+ bool Parent_Selector::operator== (const Simple_Selector& rhs) const
552
+ {
553
+ auto sel = Cast<Parent_Selector>(&rhs);
554
+ return sel ? *this == *sel : false;
555
+ }
556
+
557
+ bool Pseudo_Selector::operator== (const Simple_Selector& rhs) const
558
+ {
559
+ auto sel = Cast<Pseudo_Selector>(&rhs);
560
+ return sel ? *this == *sel : false;
561
+ }
562
+
563
+ bool Wrapped_Selector::operator== (const Simple_Selector& rhs) const
564
+ {
565
+ auto sel = Cast<Wrapped_Selector>(&rhs);
566
+ return sel ? *this == *sel : false;
567
+ }
568
+
569
+ bool Attribute_Selector::operator== (const Simple_Selector& rhs) const
570
+ {
571
+ auto sel = Cast<Attribute_Selector>(&rhs);
572
+ return sel ? *this == *sel : false;
573
+ }
574
+
575
+ bool Placeholder_Selector::operator== (const Simple_Selector& rhs) const
576
+ {
577
+ auto sel = Cast<Placeholder_Selector>(&rhs);
578
+ return sel ? *this == *sel : false;
579
+ }
580
+
581
+ /***************************************************************************/
582
+ /***************************************************************************/
583
+
584
+ bool Id_Selector::operator== (const Id_Selector& rhs) const
585
+ {
586
+ // ID has no namespacing
587
+ return name() == rhs.name();
588
+ }
589
+
590
+ bool Type_Selector::operator== (const Type_Selector& rhs) const
591
+ {
592
+ return is_ns_eq(rhs) && name() == rhs.name();
593
+ }
594
+
595
+ bool Class_Selector::operator== (const Class_Selector& rhs) const
596
+ {
597
+ // Class has no namespacing
598
+ return name() == rhs.name();
599
+ }
600
+
601
+ bool Parent_Selector::operator== (const Parent_Selector& rhs) const
602
+ {
603
+ // Parent has no namespacing
604
+ return name() == rhs.name();
605
+ }
606
+
607
+ bool Pseudo_Selector::operator== (const Pseudo_Selector& rhs) const
608
+ {
609
+ std::string lname = name();
610
+ std::string rname = rhs.name();
611
+ if (is_pseudo_class_element(lname)) {
612
+ if (rname[0] == ':' && rname[1] == ':') {
613
+ lname = lname.substr(1, std::string::npos);
614
+ }
615
+ }
616
+ // right hand is special pseudo (single colon)
617
+ if (is_pseudo_class_element(rname)) {
618
+ if (lname[0] == ':' && lname[1] == ':') {
619
+ lname = lname.substr(1, std::string::npos);
620
+ }
621
+ }
622
+ // Pseudo has no namespacing
623
+ if (lname != rname) return false;
624
+ String_Obj lhs_ex = expression();
625
+ String_Obj rhs_ex = rhs.expression();
626
+ if (rhs_ex && lhs_ex) return *lhs_ex == *rhs_ex;
627
+ else return lhs_ex.ptr() == rhs_ex.ptr();
628
+ }
629
+
630
+ bool Wrapped_Selector::operator== (const Wrapped_Selector& rhs) const
631
+ {
632
+ // Wrapped has no namespacing
633
+ if (name() != rhs.name()) return false;
634
+ return *(selector()) == *(rhs.selector());
635
+ }
636
+
637
+ bool Attribute_Selector::operator== (const Attribute_Selector& rhs) const
638
+ {
639
+ // get optional value state
640
+ bool no_lhs_val = value().isNull();
641
+ bool no_rhs_val = rhs.value().isNull();
642
+ // both are null, therefore equal
643
+ if (no_lhs_val && no_rhs_val) {
644
+ return (name() == rhs.name())
645
+ && (matcher() == rhs.matcher())
646
+ && (is_ns_eq(rhs));
647
+ }
648
+ // both are defined, evaluate
649
+ if (no_lhs_val == no_rhs_val) {
650
+ return (name() == rhs.name())
651
+ && (matcher() == rhs.matcher())
652
+ && (is_ns_eq(rhs))
653
+ && (*value() == *rhs.value());
654
+ }
655
+ // not equal
656
+ return false;
657
+ }
658
+
659
+ bool Placeholder_Selector::operator== (const Placeholder_Selector& rhs) const
660
+ {
661
+ // Placeholder has no namespacing
662
+ return name() == rhs.name();
663
+ }
664
+
665
+ /*#########################################################################*/
666
+ /*#########################################################################*/
667
+
668
+ bool Simple_Selector::operator< (const Simple_Selector& rhs) const
669
+ {
670
+ switch (simple_type()) {
671
+ case ID_SEL: return (const Id_Selector&) *this < rhs; break;
672
+ case TYPE_SEL: return (const Type_Selector&) *this < rhs; break;
673
+ case CLASS_SEL: return (const Class_Selector&) *this < rhs; break;
674
+ case PARENT_SEL: return (const Parent_Selector&) *this < rhs; break;
675
+ case PSEUDO_SEL: return (const Pseudo_Selector&) *this < rhs; break;
676
+ case WRAPPED_SEL: return (const Wrapped_Selector&) *this < rhs; break;
677
+ case ATTRIBUTE_SEL: return (const Attribute_Selector&) *this < rhs; break;
678
+ case PLACEHOLDER_SEL: return (const Placeholder_Selector&) *this < rhs; break;
679
+ }
680
+ return false;
681
+ }
682
+
683
+ /***************************************************************************/
684
+ /***************************************************************************/
685
+
686
+ bool Id_Selector::operator< (const Simple_Selector& rhs) const
687
+ {
688
+ switch (rhs.simple_type()) {
689
+ case TYPE_SEL: return '#' < 's'; break;
690
+ case CLASS_SEL: return '#' < '.'; break;
691
+ case PARENT_SEL: return '#' < '&'; break;
692
+ case PSEUDO_SEL: return '#' < ':'; break;
693
+ case WRAPPED_SEL: return '#' < '('; break;
694
+ case ATTRIBUTE_SEL: return '#' < '['; break;
695
+ case PLACEHOLDER_SEL: return '#' < '%'; break;
696
+ case ID_SEL: /* let if fall through */ break;
697
+ }
698
+ const Id_Selector& sel =
699
+ (const Id_Selector&) rhs;
700
+ return *this < sel;
701
+ }
702
+
703
+ bool Type_Selector::operator< (const Simple_Selector& rhs) const
704
+ {
705
+ switch (rhs.simple_type()) {
706
+ case ID_SEL: return 'e' < '#'; break;
707
+ case CLASS_SEL: return 'e' < '.'; break;
708
+ case PARENT_SEL: return 'e' < '&'; break;
709
+ case PSEUDO_SEL: return 'e' < ':'; break;
710
+ case WRAPPED_SEL: return 'e' < '('; break;
711
+ case ATTRIBUTE_SEL: return 'e' < '['; break;
712
+ case PLACEHOLDER_SEL: return 'e' < '%'; break;
713
+ case TYPE_SEL: /* let if fall through */ break;
714
+ }
715
+ const Type_Selector& sel =
716
+ (const Type_Selector&) rhs;
717
+ return *this < sel;
718
+ }
719
+
720
+ bool Class_Selector::operator< (const Simple_Selector& rhs) const
721
+ {
722
+ switch (rhs.simple_type()) {
723
+ case ID_SEL: return '.' < '#'; break;
724
+ case TYPE_SEL: return '.' < 's'; break;
725
+ case PARENT_SEL: return '.' < '&'; break;
726
+ case PSEUDO_SEL: return '.' < ':'; break;
727
+ case WRAPPED_SEL: return '.' < '('; break;
728
+ case ATTRIBUTE_SEL: return '.' < '['; break;
729
+ case PLACEHOLDER_SEL: return '.' < '%'; break;
730
+ case CLASS_SEL: /* let if fall through */ break;
731
+ }
732
+ const Class_Selector& sel =
733
+ (const Class_Selector&) rhs;
734
+ return *this < sel;
735
+ }
736
+
737
+ bool Pseudo_Selector::operator< (const Simple_Selector& rhs) const
738
+ {
739
+ switch (rhs.simple_type()) {
740
+ case ID_SEL: return ':' < '#'; break;
741
+ case TYPE_SEL: return ':' < 's'; break;
742
+ case CLASS_SEL: return ':' < '.'; break;
743
+ case PARENT_SEL: return ':' < '&'; break;
744
+ case WRAPPED_SEL: return ':' < '('; break;
745
+ case ATTRIBUTE_SEL: return ':' < '['; break;
746
+ case PLACEHOLDER_SEL: return ':' < '%'; break;
747
+ case PSEUDO_SEL: /* let if fall through */ break;
748
+ }
749
+ const Pseudo_Selector& sel =
750
+ (const Pseudo_Selector&) rhs;
751
+ return *this < sel;
752
+ }
753
+
754
+ bool Wrapped_Selector::operator< (const Simple_Selector& rhs) const
755
+ {
756
+ switch (rhs.simple_type()) {
757
+ case ID_SEL: return '(' < '#'; break;
758
+ case TYPE_SEL: return '(' < 's'; break;
759
+ case CLASS_SEL: return '(' < '.'; break;
760
+ case PARENT_SEL: return '(' < '&'; break;
761
+ case PSEUDO_SEL: return '(' < ':'; break;
762
+ case ATTRIBUTE_SEL: return '(' < '['; break;
763
+ case PLACEHOLDER_SEL: return '(' < '%'; break;
764
+ case WRAPPED_SEL: /* let if fall through */ break;
765
+ }
766
+ const Wrapped_Selector& sel =
767
+ (const Wrapped_Selector&) rhs;
768
+ return *this < sel;
769
+ }
770
+
771
+ bool Parent_Selector::operator< (const Simple_Selector& rhs) const
772
+ {
773
+ switch (rhs.simple_type()) {
774
+ case ID_SEL: return '&' < '#'; break;
775
+ case TYPE_SEL: return '&' < 's'; break;
776
+ case CLASS_SEL: return '&' < '.'; break;
777
+ case PSEUDO_SEL: return '&' < ':'; break;
778
+ case WRAPPED_SEL: return '&' < '('; break;
779
+ case ATTRIBUTE_SEL: return '&' < '['; break;
780
+ case PLACEHOLDER_SEL: return '&' < '%'; break;
781
+ case PARENT_SEL: /* let if fall through */ break;
782
+ }
783
+ const Parent_Selector& sel =
784
+ (const Parent_Selector&) rhs;
785
+ return *this < sel;
786
+ }
787
+
788
+ bool Attribute_Selector::operator< (const Simple_Selector& rhs) const
789
+ {
790
+ switch (rhs.simple_type()) {
791
+ case ID_SEL: return '[' < '#'; break;
792
+ case TYPE_SEL: return '[' < 'e'; break;
793
+ case CLASS_SEL: return '[' < '.'; break;
794
+ case PARENT_SEL: return '[' < '&'; break;
795
+ case PSEUDO_SEL: return '[' < ':'; break;
796
+ case WRAPPED_SEL: return '[' < '('; break;
797
+ case PLACEHOLDER_SEL: return '[' < '%'; break;
798
+ case ATTRIBUTE_SEL: /* let if fall through */ break;
799
+ }
800
+ const Attribute_Selector& sel =
801
+ (const Attribute_Selector&) rhs;
802
+ return *this < sel;
803
+ }
804
+
805
+ bool Placeholder_Selector::operator< (const Simple_Selector& rhs) const
806
+ {
807
+ switch (rhs.simple_type()) {
808
+ case ID_SEL: return '%' < '#'; break;
809
+ case TYPE_SEL: return '%' < 's'; break;
810
+ case CLASS_SEL: return '%' < '.'; break;
811
+ case PARENT_SEL: return '%' < '&'; break;
812
+ case PSEUDO_SEL: return '%' < ':'; break;
813
+ case WRAPPED_SEL: return '%' < '('; break;
814
+ case ATTRIBUTE_SEL: return '%' < '['; break;
815
+ case PLACEHOLDER_SEL: /* let if fall through */ break;
816
+ }
817
+ const Placeholder_Selector& sel =
818
+ (const Placeholder_Selector&) rhs;
819
+ return *this < sel;
820
+ }
821
+
822
+ /***************************************************************************/
823
+ /***************************************************************************/
824
+
825
+ bool Id_Selector::operator< (const Id_Selector& rhs) const
826
+ {
827
+ // ID has no namespacing
828
+ return name() < rhs.name();
829
+ }
830
+
831
+ bool Type_Selector::operator< (const Type_Selector& rhs) const
832
+ {
833
+ return has_ns_ == rhs.has_ns_
834
+ ? (ns_ == rhs.ns_
835
+ ? name_ < rhs.name_
836
+ : ns_ < rhs.ns_)
837
+ : has_ns_ < rhs.has_ns_;
838
+ }
839
+
840
+ bool Class_Selector::operator< (const Class_Selector& rhs) const
841
+ {
842
+ // Class has no namespacing
843
+ return name() < rhs.name();
844
+ }
845
+
846
+ bool Parent_Selector::operator< (const Parent_Selector& rhs) const
847
+ {
848
+ // Parent has no namespacing
849
+ return name() < rhs.name();
850
+ }
851
+
852
+ bool Pseudo_Selector::operator< (const Pseudo_Selector& rhs) const
853
+ {
854
+ std::string lname = name();
855
+ std::string rname = rhs.name();
856
+ if (is_pseudo_class_element(lname)) {
857
+ if (rname[0] == ':' && rname[1] == ':') {
858
+ lname = lname.substr(1, std::string::npos);
859
+ }
860
+ }
861
+ // right hand is special pseudo (single colon)
862
+ if (is_pseudo_class_element(rname)) {
863
+ if (lname[0] == ':' && lname[1] == ':') {
864
+ lname = lname.substr(1, std::string::npos);
865
+ }
866
+ }
867
+ // Peudo has no namespacing
868
+ if (lname != rname)
869
+ { return lname < rname; }
870
+ String_Obj lhs_ex = expression();
871
+ String_Obj rhs_ex = rhs.expression();
872
+ if (rhs_ex && lhs_ex) return *lhs_ex < *rhs_ex;
873
+ else return lhs_ex.ptr() < rhs_ex.ptr();
874
+ }
875
+
876
+ bool Wrapped_Selector::operator< (const Wrapped_Selector& rhs) const
877
+ {
878
+ // Wrapped has no namespacing
879
+ if (name() != rhs.name())
880
+ { return name() < rhs.name(); }
881
+ return *(selector()) < *(rhs.selector());
882
+ }
883
+
884
+ bool Attribute_Selector::operator< (const Attribute_Selector& rhs) const
885
+ {
886
+ if (is_ns_eq(rhs)) {
887
+ if (name() != rhs.name())
888
+ { return name() < rhs.name(); }
889
+ if (matcher() != rhs.matcher())
890
+ { return matcher() < rhs.matcher(); }
891
+ bool no_lhs_val = value().isNull();
892
+ bool no_rhs_val = rhs.value().isNull();
893
+ if (no_lhs_val && no_rhs_val) return false; // equal
894
+ else if (no_lhs_val) return true; // lhs is null
895
+ else if (no_rhs_val) return false; // rhs is null
896
+ return *value() < *rhs.value(); // both are given
897
+ } else { return ns() < rhs.ns(); }
898
+ }
899
+
900
+ bool Placeholder_Selector::operator< (const Placeholder_Selector& rhs) const
901
+ {
902
+ // Placeholder has no namespacing
903
+ return name() < rhs.name();
904
+ }
905
+
906
+ /*#########################################################################*/
907
+ /*#########################################################################*/
908
+
909
+ }