lcms-engine 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (374) hide show
  1. checksums.yaml +4 -4
  2. data/.codeclimate.yml +1 -1
  3. data/.dockerignore +25 -0
  4. data/.env.docker +1 -1
  5. data/.eslintignore +2 -1
  6. data/.eslintrc +23 -73
  7. data/.nvmrc +1 -1
  8. data/.overcommit.yml +8 -2
  9. data/.prettierrc +7 -0
  10. data/.rubocop.yml +12 -8
  11. data/.ruby-version +1 -1
  12. data/.stylelintignore +9 -0
  13. data/.stylelintrc +8 -0
  14. data/CHANGELOG.md +50 -1
  15. data/Dockerfile +3 -3
  16. data/Gemfile.lock +408 -322
  17. data/README.md +20 -17
  18. data/app/assets/config/lcms_engine_manifest.js +4 -2
  19. data/app/assets/javascripts/lcms/engine/admin/{application.js → lcms_engine_application.js} +1 -3
  20. data/app/assets/javascripts/lcms/engine/initializers/foundation.js +1 -1
  21. data/app/assets/javascripts/lcms/engine/{application.js → lcms_engine_application.js} +0 -0
  22. data/app/assets/stylesheets/lcms/engine/admin/collections.scss +2 -1
  23. data/app/assets/stylesheets/lcms/engine/admin/components.scss +60 -19
  24. data/app/assets/stylesheets/lcms/engine/admin/curriculums.scss +12 -10
  25. data/app/assets/stylesheets/lcms/engine/admin/lessons.scss +21 -15
  26. data/app/assets/stylesheets/lcms/engine/admin/materials.scss +25 -17
  27. data/app/assets/stylesheets/lcms/engine/admin/resources.scss +8 -7
  28. data/app/assets/stylesheets/lcms/engine/admin/standards.scss +4 -1
  29. data/app/assets/stylesheets/lcms/engine/admin/users.scss +1 -1
  30. data/app/assets/stylesheets/lcms/engine/base/_colors.scss +8 -10
  31. data/app/assets/stylesheets/lcms/engine/base/_ld-colors.scss +10 -10
  32. data/app/assets/stylesheets/lcms/engine/components/_assoc-picker.scss +4 -5
  33. data/app/assets/stylesheets/lcms/engine/components/lesson/_activity.scss +6 -2
  34. data/app/assets/stylesheets/lcms/engine/components/lesson/_callout.scss +19 -5
  35. data/app/assets/stylesheets/lcms/engine/components/lesson/_columns.scss +4 -3
  36. data/app/assets/stylesheets/lcms/engine/components/lesson/_curriculum-map.scss +16 -7
  37. data/app/assets/stylesheets/lcms/engine/components/lesson/_def.scss +2 -2
  38. data/app/assets/stylesheets/lcms/engine/components/lesson/_expand.scss +9 -9
  39. data/app/assets/stylesheets/lcms/engine/components/lesson/_foundational-divider.scss +0 -1
  40. data/app/assets/stylesheets/lcms/engine/components/lesson/_group.scss +3 -1
  41. data/app/assets/stylesheets/lcms/engine/components/lesson/_icons.scss +1 -1
  42. data/app/assets/stylesheets/lcms/engine/components/lesson/_image-wrap.scss +2 -2
  43. data/app/assets/stylesheets/lcms/engine/components/lesson/_inset.scss +7 -2
  44. data/app/assets/stylesheets/lcms/engine/components/lesson/_materials.scss +1 -1
  45. data/app/assets/stylesheets/lcms/engine/components/lesson/_multiple-choice.scss +4 -1
  46. data/app/assets/stylesheets/lcms/engine/components/lesson/_override.scss +28 -9
  47. data/app/assets/stylesheets/lcms/engine/components/lesson/_pd.scss +7 -7
  48. data/app/assets/stylesheets/lcms/engine/components/lesson/_pv.scss +5 -4
  49. data/app/assets/stylesheets/lcms/engine/components/lesson/_section.scss +10 -3
  50. data/app/assets/stylesheets/lcms/engine/components/lesson/_selection-control.scss +14 -8
  51. data/app/assets/stylesheets/lcms/engine/components/lesson/_sidebar.scss +25 -10
  52. data/app/assets/stylesheets/lcms/engine/components/lesson/_title.scss +3 -1
  53. data/app/assets/stylesheets/lcms/engine/components/lesson/_unit-map.scss +1 -1
  54. data/app/assets/stylesheets/lcms/engine/components/material/_material.scss +3 -3
  55. data/app/assets/stylesheets/lcms/engine/components/material/_overlay.scss +12 -4
  56. data/app/assets/stylesheets/lcms/engine/components/material/_preview.scss +1 -1
  57. data/app/assets/stylesheets/lcms/engine/components/support/_survey.scss +3 -1
  58. data/app/assets/stylesheets/lcms/engine/layout/_footer.scss +29 -11
  59. data/app/assets/stylesheets/lcms/engine/layout/_header.scss +5 -5
  60. data/app/assets/stylesheets/lcms/engine/layout/_navigation.scss +4 -6
  61. data/app/assets/stylesheets/lcms/engine/layout/_page.scss +2 -2
  62. data/app/assets/stylesheets/lcms/engine/{admin.scss → lcms_engine_admin.scss} +26 -15
  63. data/app/assets/stylesheets/lcms/engine/lcms_engine_application.scss +9 -0
  64. data/app/assets/stylesheets/lcms/engine/pdf.scss +5 -26
  65. data/app/assets/stylesheets/lcms/engine/pdf_plain.scss +5 -23
  66. data/app/assets/stylesheets/lcms/engine/print/_base.scss +41 -12
  67. data/app/assets/stylesheets/lcms/engine/print/_cover.scss +12 -12
  68. data/app/assets/stylesheets/lcms/engine/print/_footer.scss +8 -3
  69. data/app/assets/stylesheets/lcms/engine/print/_gdoc-base.scss +10 -37
  70. data/app/assets/stylesheets/lcms/engine/print/_helpers.scss +5 -2
  71. data/app/assets/stylesheets/lcms/engine/print/_lesson-base.scss +2 -14
  72. data/app/assets/stylesheets/lcms/engine/print/_material-base.scss +1 -3
  73. data/app/assets/stylesheets/lcms/engine/print/_print.scss +15 -8
  74. data/app/assets/stylesheets/lcms/engine/print/_toc.scss +24 -9
  75. data/app/assets/stylesheets/lcms/engine/print/gdoc/_base-typography.scss +24 -6
  76. data/app/assets/stylesheets/lcms/engine/print/gdoc/_base.scss +10 -3
  77. data/app/assets/stylesheets/lcms/engine/print/gdoc/_colors.scss +3 -3
  78. data/app/assets/stylesheets/lcms/engine/print/gdoc/_header.scss +2 -2
  79. data/app/assets/stylesheets/lcms/engine/print/gdoc/_helpers.scss +1 -0
  80. data/app/assets/stylesheets/lcms/engine/print/gdoc/lesson/_activity.scss +1 -1
  81. data/app/assets/stylesheets/lcms/engine/print/gdoc/lesson/_agenda.scss +8 -2
  82. data/app/assets/stylesheets/lcms/engine/print/gdoc/lesson/_callout.scss +16 -6
  83. data/app/assets/stylesheets/lcms/engine/print/gdoc/lesson/_def.scss +1 -1
  84. data/app/assets/stylesheets/lcms/engine/print/gdoc/lesson/_dialogue.scss +3 -1
  85. data/app/assets/stylesheets/lcms/engine/print/gdoc/lesson/_expand.scss +5 -2
  86. data/app/assets/stylesheets/lcms/engine/print/gdoc/lesson/_image-wrap.scss +5 -3
  87. data/app/assets/stylesheets/lcms/engine/print/gdoc/lesson/_image.scss +1 -1
  88. data/app/assets/stylesheets/lcms/engine/print/gdoc/lesson/_optbreak.scss +1 -0
  89. data/app/assets/stylesheets/lcms/engine/print/gdoc/lesson/_section.scss +4 -1
  90. data/app/assets/stylesheets/lcms/engine/print/gdoc/lesson/_smp.scss +1 -0
  91. data/app/assets/stylesheets/lcms/engine/print/gdoc/lesson/_tables.scss +11 -3
  92. data/app/assets/stylesheets/lcms/engine/print/gdoc/material/_header.scss +5 -2
  93. data/app/assets/stylesheets/lcms/engine/print/lesson/_base-typography.scss +33 -9
  94. data/app/assets/stylesheets/lcms/engine/print/lesson/_group.scss +3 -1
  95. data/app/assets/stylesheets/lcms/engine/print/lesson/_image.scss +3 -1
  96. data/app/assets/stylesheets/lcms/engine/print/lesson/_materials.scss +1 -1
  97. data/app/assets/stylesheets/lcms/engine/print/lesson/_pd.scss +8 -4
  98. data/app/assets/stylesheets/lcms/engine/print/lesson/_section.scss +1 -1
  99. data/app/assets/stylesheets/lcms/engine/print/material/_header.scss +4 -1
  100. data/app/assets/stylesheets/lcms/engine/themes/_material.scss +11 -11
  101. data/app/assets/stylesheets/lcms/engine/utils/_colorcodes.scss +15 -5
  102. data/app/assets/stylesheets/lcms/engine/utils/_functions.scss +1 -1
  103. data/app/assets/stylesheets/lcms/engine/utils/_helpers.scss +23 -11
  104. data/app/assets/stylesheets/lcms/engine/utils/_placeholders.scss +1 -1
  105. data/app/assets/stylesheets/lcms/engine/utils/_variables.scss +11 -11
  106. data/app/assets/stylesheets/lcms/engine/vendors/{mathjax.css → mathjax.scss} +0 -0
  107. data/app/assets/stylesheets/lcms/engine/vendors/react-tagsinput.css +48 -0
  108. data/app/controllers/concerns/lcms/engine/reimportable.rb +12 -2
  109. data/app/controllers/lcms/engine/admin/access_codes_controller.rb +8 -3
  110. data/app/controllers/lcms/engine/admin/admin_controller.rb +6 -40
  111. data/app/controllers/lcms/engine/admin/association_picker_controller.rb +4 -1
  112. data/app/controllers/lcms/engine/admin/batch_reimports_controller.rb +2 -2
  113. data/app/controllers/lcms/engine/admin/curriculums_controller.rb +21 -2
  114. data/app/controllers/lcms/engine/admin/documents_controller.rb +41 -14
  115. data/app/controllers/lcms/engine/admin/materials_controller.rb +32 -13
  116. data/app/controllers/lcms/engine/admin/resource_bulk_edits_controller.rb +2 -2
  117. data/app/controllers/lcms/engine/admin/resources_controller.rb +9 -7
  118. data/app/controllers/lcms/engine/admin/settings_controller.rb +1 -1
  119. data/app/controllers/lcms/engine/admin/standards_controller.rb +7 -2
  120. data/app/controllers/lcms/engine/admin/users_controller.rb +15 -7
  121. data/app/controllers/lcms/engine/application_controller.rb +1 -1
  122. data/app/controllers/lcms/engine/resources_controller.rb +5 -5
  123. data/app/controllers/lcms/engine/welcome_controller.rb +11 -0
  124. data/app/entities/lcms/engine/grades.rb +17 -6
  125. data/app/entities/lcms/engine/hierarchical_position.rb +1 -2
  126. data/app/entities/lcms/engine/media_embed.rb +2 -2
  127. data/app/entities/lcms/engine/pagination.rb +14 -10
  128. data/app/entities/lcms/engine/roman_numerals.rb +2 -2
  129. data/app/exceptions/lcms/engine/document_error.rb +8 -0
  130. data/app/exceptions/lcms/engine/material_error.rb +8 -0
  131. data/app/forms/lcms/engine/document_form.rb +19 -14
  132. data/app/forms/lcms/engine/material_form.rb +3 -2
  133. data/app/helpers/admin/components_helper.rb +3 -3
  134. data/app/helpers/lcms/engine/path_helper.rb +32 -0
  135. data/app/helpers/lcms/engine/resource_helper.rb +1 -1
  136. data/app/helpers/lcms/engine/view_helper.rb +1 -9
  137. data/app/interactors/lcms/engine/explore_curriculum_interactor.rb +2 -2
  138. data/app/javascript/components/admin/ImportStatus.jsx +90 -56
  139. data/app/javascript/components/admin/Initializer.jsx +33 -35
  140. data/app/javascript/components/admin/MultiSelectedOperation.jsx +43 -18
  141. data/app/javascript/components/admin/association-picker/AssociationPicker.jsx +68 -47
  142. data/app/javascript/components/admin/association-picker/AssociationPickerItem.jsx +18 -7
  143. data/app/javascript/components/admin/association-picker/AssociationPickerResults.jsx +42 -17
  144. data/app/javascript/components/admin/association-picker/AssociationPickerWindow.jsx +47 -27
  145. data/app/javascript/components/admin/curriculum/CurriculumEditor.jsx +54 -32
  146. data/app/javascript/components/admin/curriculum/DirectoryPicker.jsx +80 -53
  147. data/app/javascript/components/admin/picker/PickerButton.jsx +16 -11
  148. data/app/javascript/components/admin/picker/pickerModal.jsx +6 -6
  149. data/app/javascript/components/admin/picker/pickerWindowWrapper.jsx +61 -40
  150. data/app/javascript/components/admin/resource-picker/ResourcePicker.jsx +54 -39
  151. data/app/javascript/components/admin/resource-picker/ResourcePickerResource.jsx +14 -3
  152. data/app/javascript/components/admin/resource-picker/ResourcePickerWindow.jsx +50 -21
  153. data/app/javascript/components/paginate/PageView.jsx +20 -8
  154. data/app/javascript/components/paginate/PaginationBoxView.jsx +78 -66
  155. data/app/javascript/components/paginate/PaginationListView.jsx +59 -45
  156. data/app/javascript/packs/lcms_engine_admin.js +15 -0
  157. data/app/javascript/packs/{application.js → lcms_engine_application.js} +5 -4
  158. data/app/javascript/packs/server_rendering.js +1 -0
  159. data/app/javascript/vendor/jstree/jstree.min.js +6 -0
  160. data/app/javascript/vendor/jstree/themes/default/32px.png +0 -0
  161. data/app/javascript/vendor/jstree/themes/default/40px.png +0 -0
  162. data/app/javascript/vendor/jstree/themes/default/style.css +1106 -0
  163. data/app/javascript/vendor/jstree/themes/default/style.min.css +1 -0
  164. data/app/javascript/vendor/jstree/themes/default/throbber.gif +0 -0
  165. data/app/javascript/vendor/jstree/themes/default-dark/32px.png +0 -0
  166. data/app/javascript/vendor/jstree/themes/default-dark/40px.png +0 -0
  167. data/app/javascript/vendor/jstree/themes/default-dark/style.css +1150 -0
  168. data/app/javascript/vendor/jstree/themes/default-dark/style.min.css +1 -0
  169. data/app/javascript/vendor/jstree/themes/default-dark/throbber.gif +0 -0
  170. data/app/jobs/concerns/lcms/engine/nested_resque_job.rb +1 -4
  171. data/app/jobs/lcms/engine/document_generate_gdoc_job.rb +2 -2
  172. data/app/jobs/lcms/engine/document_generate_job.rb +2 -2
  173. data/app/jobs/lcms/engine/document_generate_pdf_job.rb +5 -5
  174. data/app/jobs/lcms/engine/document_parse_job.rb +1 -1
  175. data/app/jobs/lcms/engine/material_generate_pdf_job.rb +4 -4
  176. data/app/models/concerns/lcms/engine/navigable.rb +6 -10
  177. data/app/models/concerns/lcms/engine/searchable.rb +7 -0
  178. data/app/models/lcms/engine/document.rb +1 -1
  179. data/app/models/lcms/engine/download.rb +1 -1
  180. data/app/models/lcms/engine/resource.rb +1 -1
  181. data/app/models/lcms/engine/search/document.rb +4 -3
  182. data/app/models/lcms/engine/search/repository.rb +1 -1
  183. data/app/presenters/lcms/engine/content_presenter.rb +1 -1
  184. data/app/presenters/lcms/engine/curriculum_presenter.rb +21 -18
  185. data/app/presenters/lcms/engine/document_presenter.rb +5 -3
  186. data/app/presenters/lcms/engine/resource_presenter.rb +6 -3
  187. data/app/queries/lcms/engine/admin_documents_query.rb +2 -2
  188. data/app/queries/lcms/engine/admin_materials_query.rb +11 -2
  189. data/app/queries/lcms/engine/base_query.rb +1 -1
  190. data/app/serializers/lcms/engine/previews_material_serializer.rb +1 -0
  191. data/app/services/lcms/engine/document_build_service.rb +6 -0
  192. data/app/services/lcms/engine/document_generator.rb +2 -2
  193. data/app/services/lcms/engine/google/drive_service.rb +7 -15
  194. data/app/services/lcms/engine/google/script_service.rb +7 -3
  195. data/app/services/lcms/engine/html_sanitizer.rb +6 -6
  196. data/app/services/lcms/engine/lessons_gdoc_bundler.rb +1 -1
  197. data/app/services/lcms/engine/lti_exporter.rb +1 -1
  198. data/app/services/lcms/engine/material_build_service.rb +6 -2
  199. data/app/services/lcms/engine/material_preview_generator.rb +3 -3
  200. data/app/services/lcms/engine/react_materials_resolver.rb +3 -2
  201. data/app/services/lcms/engine/s3_service.rb +14 -2
  202. data/app/tasks/resource_tasks.rb +2 -2
  203. data/app/views/layouts/lcms/engine/admin.html.erb +3 -3
  204. data/app/views/layouts/lcms/engine/application.html.erb +2 -2
  205. data/app/views/layouts/lcms/engine/lti.html.erb +1 -1
  206. data/app/views/lcms/engine/admin/access_codes/_form.html.erb +1 -1
  207. data/app/views/lcms/engine/admin/access_codes/index.html.erb +3 -3
  208. data/app/views/lcms/engine/admin/batch_reimports/_search_form.html.erb +2 -2
  209. data/app/views/lcms/engine/admin/curriculums/edit.html.erb +5 -5
  210. data/app/views/lcms/engine/admin/documents/_materials_links.html.erb +2 -2
  211. data/app/views/lcms/engine/admin/documents/_reimport.html.erb +1 -1
  212. data/app/views/lcms/engine/admin/documents/_search_form.html.erb +2 -2
  213. data/app/views/lcms/engine/admin/documents/import.html.erb +1 -1
  214. data/app/views/lcms/engine/admin/documents/index.html.erb +7 -5
  215. data/app/views/lcms/engine/admin/documents/new.html.erb +6 -2
  216. data/app/views/lcms/engine/admin/materials/_reimport.html.erb +1 -1
  217. data/app/views/lcms/engine/admin/materials/_search_form.html.erb +2 -2
  218. data/app/views/lcms/engine/admin/materials/import.html.erb +1 -1
  219. data/app/views/lcms/engine/admin/materials/index.html.erb +26 -22
  220. data/app/views/lcms/engine/admin/materials/new.html.erb +5 -1
  221. data/app/views/lcms/engine/admin/resource_bulk_edits/new.html.erb +2 -2
  222. data/app/views/lcms/engine/admin/resources/_fields.html.erb +4 -0
  223. data/app/views/lcms/engine/admin/resources/_form.html.erb +1 -1
  224. data/app/views/lcms/engine/admin/resources/_search_form.html.erb +2 -2
  225. data/app/views/lcms/engine/admin/resources/index.html.erb +7 -5
  226. data/app/views/lcms/engine/admin/shared/_header.html.erb +12 -12
  227. data/app/views/lcms/engine/admin/standards/_form.html.erb +3 -1
  228. data/app/views/lcms/engine/admin/standards/_search_form.html.erb +1 -1
  229. data/app/views/lcms/engine/admin/users/_form.html.erb +1 -1
  230. data/app/views/lcms/engine/admin/users/_search_form.html.erb +1 -1
  231. data/app/views/lcms/engine/admin/users/index.html.erb +6 -6
  232. data/app/views/lcms/engine/documents/gdoc/_agenda.html.erb +1 -1
  233. data/app/views/lcms/engine/documents/show.html.erb +1 -1
  234. data/app/views/lcms/engine/materials/show.html.erb +1 -1
  235. data/app/views/lcms/engine/pages/not_found.html.erb +5 -0
  236. data/app/views/lcms/engine/resources/_download.html.erb +2 -2
  237. data/app/views/lcms/engine/resources/_unit_bundles.html.erb +2 -2
  238. data/app/views/lcms/engine/resources/generic.html.erb +0 -4
  239. data/app/views/lcms/engine/resources/media.html.erb +0 -4
  240. data/app/views/lcms/engine/resources/show.html.erb +0 -2
  241. data/config/initializers/airbrake.rb +62 -10
  242. data/config/initializers/bitly.rb +1 -1
  243. data/config/initializers/carrier_wave.rb +6 -4
  244. data/config/initializers/ckeditor.rb +6 -0
  245. data/config/initializers/elasticsearch.rb +1 -1
  246. data/config/initializers/resque.rb +2 -2
  247. data/config/locales/admin/en.yml +1 -2
  248. data/config/locales/ui/en.yml +1 -0
  249. data/config/routes.rb +5 -2
  250. data/db/migrate/.keep +0 -0
  251. data/db/schema.rb +280 -312
  252. data/db/seeds.rb +0 -1
  253. data/docker-compose.ror4.yml +32 -0
  254. data/docker-compose.yml +6 -3
  255. data/docs/env-variables.md +40 -40
  256. data/docs/google-cloud-platform-setup.md +45 -17
  257. data/docs/how-to-build-and-publish.md +1 -0
  258. data/lcms-engine.gemspec +28 -20
  259. data/lib/doc_template/document.rb +3 -4
  260. data/lib/doc_template/document_toc.rb +2 -2
  261. data/lib/doc_template/objects/activity_metadata.rb +1 -1
  262. data/lib/doc_template/objects/agenda_metadata.rb +1 -1
  263. data/lib/doc_template/objects/metadata_helpers.rb +1 -1
  264. data/lib/doc_template/objects/toc_helpers.rb +4 -4
  265. data/lib/doc_template/objects/toc_metadata.rb +4 -6
  266. data/lib/doc_template/tables/base.rb +3 -2
  267. data/lib/doc_template/tags/activity_metadata_type_tag.rb +1 -1
  268. data/lib/doc_template/tags/answer_space_tag.rb +2 -2
  269. data/lib/doc_template/tags/base_tag.rb +5 -5
  270. data/lib/doc_template/tags/block_tag.rb +1 -1
  271. data/lib/doc_template/tags/columns_tag.rb +1 -1
  272. data/lib/doc_template/tags/def_tag.rb +1 -1
  273. data/lib/doc_template/tags/expand_tag.rb +1 -0
  274. data/lib/doc_template/tags/heading_tag.rb +1 -1
  275. data/lib/doc_template/tags/inset_tag.rb +2 -2
  276. data/lib/doc_template/tags/latex_tag.rb +1 -1
  277. data/lib/doc_template/tags/page_break_tag.rb +1 -1
  278. data/lib/doc_template/tags/pd_tag.rb +4 -4
  279. data/lib/doc_template/tags/section_tag.rb +2 -2
  280. data/lib/doc_template/tags/standard_tag.rb +3 -3
  281. data/lib/doc_template/tags/table_preserve_alignment_tag.rb +1 -1
  282. data/lib/doc_template/tags/table_tag.rb +1 -1
  283. data/lib/doc_template/template.rb +1 -1
  284. data/lib/doc_template.rb +9 -9
  285. data/lib/document_exporter/gdoc/base.rb +6 -3
  286. data/lib/document_exporter/pdf/base.rb +1 -1
  287. data/lib/document_exporter/pdf/document.rb +2 -2
  288. data/lib/document_exporter/pdf/material.rb +2 -2
  289. data/lib/document_exporter/pdf/student_material.rb +2 -2
  290. data/lib/document_exporter/pdf/teacher_material.rb +2 -2
  291. data/lib/document_renderer/part.rb +4 -6
  292. data/lib/elasticsearch/persistence/repository/response/results.rb +1 -1
  293. data/lib/lcms/engine/engine.rb +10 -9
  294. data/lib/lcms/engine/version.rb +1 -1
  295. data/lib/lcms/engine.rb +0 -1
  296. data/lib/lt/lcms/metadata/base_service.rb +2 -1
  297. data/lib/lt/lcms/metadata/context.rb +58 -54
  298. data/lib/lt/lcms/metadata/service.rb +6 -3
  299. data/lib/resque_job.rb +3 -6
  300. data/lib/standard_importer.rb +4 -4
  301. data/lib/tasks/cloud66.rake +8 -6
  302. data/lib/tasks/document.rake +7 -7
  303. data/lib/tasks/google.rake +29 -14
  304. data/lib/tasks/lcms/engine_tasks.rake +1 -1
  305. data/package.json +31 -9
  306. data/postcss.config.js +12 -0
  307. data/spec/controllers/admin/association_picker_controller_spec.rb +6 -8
  308. data/spec/controllers/admin/curriculums_controller_spec.rb +23 -0
  309. data/spec/controllers/admin/documents_controller_spec.rb +25 -3
  310. data/spec/controllers/admin/materials_controller_spec.rb +17 -4
  311. data/spec/controllers/admin/resource_bulk_edit_controller_spec.rb +1 -1
  312. data/spec/controllers/admin/resources_controller_spec.rb +3 -3
  313. data/spec/controllers/admin/settings_controller_spec.rb +1 -1
  314. data/spec/controllers/admin/standards_controller_spec.rb +1 -1
  315. data/spec/controllers/admin/welcome_controller_spec.rb +12 -10
  316. data/spec/controllers/resources_controller_spec.rb +3 -3
  317. data/spec/controllers/welcome_controller_spec.rb +38 -0
  318. data/spec/dummy/.env.docker +5 -0
  319. data/spec/dummy/.traceroute.yaml +0 -2
  320. data/spec/dummy/bin/webpack +18 -0
  321. data/spec/dummy/bin/webpack-dev-server +18 -0
  322. data/spec/dummy/config/application.rb +1 -1
  323. data/spec/dummy/config/environments/production.rb +1 -1
  324. data/spec/dummy/config/environments/test.rb +1 -1
  325. data/spec/dummy/config/initializers/assets.rb +6 -0
  326. data/spec/dummy/config/lcms-admin.yml +3 -7
  327. data/spec/dummy/config/puma.rb +3 -3
  328. data/spec/dummy/config/routes.rb +6 -0
  329. data/spec/dummy/db/schema.rb +5 -5
  330. data/spec/entities/grades_spec.rb +12 -0
  331. data/spec/factories/documents.rb +1 -0
  332. data/spec/factories/downloads.rb +1 -1
  333. data/spec/factories/resources.rb +2 -2
  334. data/spec/features/admin/lessons/add_lesson_spec.rb +3 -3
  335. data/spec/features/admin/materials/add_material_spec.rb +5 -3
  336. data/spec/features/admin/users_spec.rb +2 -2
  337. data/spec/forms/document_form_spec.rb +11 -1
  338. data/spec/{controllers/admin/admin_controller_spec.rb → helpers/path_helper_spec.rb} +6 -6
  339. data/spec/lib/doc_template/objects/activity_metadata_spec.rb +1 -1
  340. data/spec/lib/doc_template/objects/agenda_metadata_spec.rb +2 -0
  341. data/spec/lib/doc_template/objects/toc_metadata_spec.rb +1 -1
  342. data/spec/lib/doc_template/tables/shared_examples/remove_table.rb +1 -1
  343. data/spec/lib/doc_template/tags/page_break_tag_spec.rb +1 -1
  344. data/spec/lib/doc_template/tags/pd_tag_spec.rb +1 -1
  345. data/spec/models/document_spec.rb +1 -1
  346. data/spec/models/standard_spec.rb +2 -0
  347. data/spec/queries/lcms/engine/admin_materials_query_spec.rb +34 -0
  348. data/spec/rails_helper.rb +8 -2
  349. data/spec/services/document_build_service_spec.rb +4 -11
  350. data/spec/services/s3_service_spec.rb +31 -0
  351. data/spec/support/concerns/navigable.rb +2 -0
  352. data/spec/support/routes.rb +4 -0
  353. data/spec/support/shared_examples/content_tag.rb +4 -4
  354. data/templates/routes.rb +0 -1
  355. data/yarn.lock +3447 -2993
  356. metadata +208 -303
  357. data/app/assets/stylesheets/lcms/engine/application.scss +0 -36
  358. data/app/assets/stylesheets/lcms/engine/vendors/jquery.tagsinput.css +0 -1
  359. data/app/exceptions/components_api_error.rb +0 -4
  360. data/app/exceptions/document_error.rb +0 -4
  361. data/app/exceptions/material_error.rb +0 -4
  362. data/app/javascript/packs/admin.js +0 -14
  363. data/app/models/lcms/engine/component.rb +0 -88
  364. data/app/presenters/lcms/engine/social_media_presenter.rb +0 -83
  365. data/app/views/lcms/engine/shared/_social_sharing.html.erb +0 -22
  366. data/db/migrate/20200217160930_change_document_parts_to_polymorphic.rb +0 -36
  367. data/db/migrate/20200218144849_drop_material_parts_table.rb +0 -7
  368. data/db/migrate/20200422130652_add_reimported_at_to_documents.rb +0 -7
  369. data/db/migrate/20200429130353_drop_pages.rb +0 -13
  370. data/db/seeds/pages.seeds.rb +0 -26
  371. data/lib/document_exporter.rb +0 -6
  372. data/lib/lcms/engine/migration.rb +0 -16
  373. data/spec/models/component_spec.rb +0 -60
  374. data/vendor/assets/javascripts/jquery.tagsinput.js +0 -1
@@ -0,0 +1,1106 @@
1
+ /* jsTree default theme */
2
+ .jstree-node,
3
+ .jstree-children,
4
+ .jstree-container-ul {
5
+ display: block;
6
+ margin: 0;
7
+ padding: 0;
8
+ list-style-type: none;
9
+ list-style-image: none;
10
+ }
11
+ .jstree-node {
12
+ white-space: nowrap;
13
+ }
14
+ .jstree-anchor {
15
+ display: inline-block;
16
+ color: black;
17
+ white-space: nowrap;
18
+ padding: 0 4px 0 1px;
19
+ margin: 0;
20
+ vertical-align: top;
21
+ }
22
+ .jstree-anchor:focus {
23
+ outline: 0;
24
+ }
25
+ .jstree-anchor,
26
+ .jstree-anchor:link,
27
+ .jstree-anchor:visited,
28
+ .jstree-anchor:hover,
29
+ .jstree-anchor:active {
30
+ text-decoration: none;
31
+ color: inherit;
32
+ }
33
+ .jstree-icon {
34
+ display: inline-block;
35
+ text-decoration: none;
36
+ margin: 0;
37
+ padding: 0;
38
+ vertical-align: top;
39
+ text-align: center;
40
+ }
41
+ .jstree-icon:empty {
42
+ display: inline-block;
43
+ text-decoration: none;
44
+ margin: 0;
45
+ padding: 0;
46
+ vertical-align: top;
47
+ text-align: center;
48
+ }
49
+ .jstree-ocl {
50
+ cursor: pointer;
51
+ }
52
+ .jstree-leaf > .jstree-ocl {
53
+ cursor: default;
54
+ }
55
+ .jstree .jstree-open > .jstree-children {
56
+ display: block;
57
+ }
58
+ .jstree .jstree-closed > .jstree-children,
59
+ .jstree .jstree-leaf > .jstree-children {
60
+ display: none;
61
+ }
62
+ .jstree-anchor > .jstree-themeicon {
63
+ margin-right: 2px;
64
+ }
65
+ .jstree-no-icons .jstree-themeicon,
66
+ .jstree-anchor > .jstree-themeicon-hidden {
67
+ display: none;
68
+ }
69
+ .jstree-hidden,
70
+ .jstree-node.jstree-hidden {
71
+ display: none;
72
+ }
73
+ .jstree-rtl .jstree-anchor {
74
+ padding: 0 1px 0 4px;
75
+ }
76
+ .jstree-rtl .jstree-anchor > .jstree-themeicon {
77
+ margin-left: 2px;
78
+ margin-right: 0;
79
+ }
80
+ .jstree-rtl .jstree-node {
81
+ margin-left: 0;
82
+ }
83
+ .jstree-rtl .jstree-container-ul > .jstree-node {
84
+ margin-right: 0;
85
+ }
86
+ .jstree-wholerow-ul {
87
+ position: relative;
88
+ display: inline-block;
89
+ min-width: 100%;
90
+ }
91
+ .jstree-wholerow-ul .jstree-leaf > .jstree-ocl {
92
+ cursor: pointer;
93
+ }
94
+ .jstree-wholerow-ul .jstree-anchor,
95
+ .jstree-wholerow-ul .jstree-icon {
96
+ position: relative;
97
+ }
98
+ .jstree-wholerow-ul .jstree-wholerow {
99
+ width: 100%;
100
+ cursor: pointer;
101
+ position: absolute;
102
+ left: 0;
103
+ -webkit-user-select: none;
104
+ -moz-user-select: none;
105
+ -ms-user-select: none;
106
+ user-select: none;
107
+ }
108
+ .jstree-contextmenu .jstree-anchor {
109
+ -webkit-user-select: none;
110
+ /* disable selection/Copy of UIWebView */
111
+ -webkit-touch-callout: none;
112
+ /* disable the IOS popup when long-press on a link */
113
+ user-select: none;
114
+ }
115
+ .vakata-context {
116
+ display: none;
117
+ }
118
+ .vakata-context,
119
+ .vakata-context ul {
120
+ margin: 0;
121
+ padding: 2px;
122
+ position: absolute;
123
+ background: #f5f5f5;
124
+ border: 1px solid #979797;
125
+ box-shadow: 2px 2px 2px #999999;
126
+ }
127
+ .vakata-context ul {
128
+ list-style: none;
129
+ left: 100%;
130
+ margin-top: -2.7em;
131
+ margin-left: -4px;
132
+ }
133
+ .vakata-context .vakata-context-right ul {
134
+ left: auto;
135
+ right: 100%;
136
+ margin-left: auto;
137
+ margin-right: -4px;
138
+ }
139
+ .vakata-context li {
140
+ list-style: none;
141
+ }
142
+ .vakata-context li > a {
143
+ display: block;
144
+ padding: 0 2em 0 2em;
145
+ text-decoration: none;
146
+ width: auto;
147
+ color: black;
148
+ white-space: nowrap;
149
+ line-height: 2.4em;
150
+ text-shadow: 1px 1px 0 white;
151
+ border-radius: 1px;
152
+ }
153
+ .vakata-context li > a:hover {
154
+ position: relative;
155
+ background-color: #e8eff7;
156
+ box-shadow: 0 0 2px #0a6aa1;
157
+ }
158
+ .vakata-context li > a.vakata-context-parent {
159
+ background-image: url("data:image/gif;base64,R0lGODlhCwAHAIAAACgoKP///yH5BAEAAAEALAAAAAALAAcAAAIORI4JlrqN1oMSnmmZDQUAOw==");
160
+ background-position: right center;
161
+ background-repeat: no-repeat;
162
+ }
163
+ .vakata-context li > a:focus {
164
+ outline: 0;
165
+ }
166
+ .vakata-context .vakata-context-no-icons {
167
+ margin-left: 0;
168
+ }
169
+ .vakata-context .vakata-context-hover > a {
170
+ position: relative;
171
+ background-color: #e8eff7;
172
+ box-shadow: 0 0 2px #0a6aa1;
173
+ }
174
+ .vakata-context .vakata-context-separator > a,
175
+ .vakata-context .vakata-context-separator > a:hover {
176
+ background: white;
177
+ border: 0;
178
+ border-top: 1px solid #e2e3e3;
179
+ height: 1px;
180
+ min-height: 1px;
181
+ max-height: 1px;
182
+ padding: 0;
183
+ margin: 0 0 0 2.4em;
184
+ border-left: 1px solid #e0e0e0;
185
+ text-shadow: 0 0 0 transparent;
186
+ box-shadow: 0 0 0 transparent;
187
+ border-radius: 0;
188
+ }
189
+ .vakata-context .vakata-contextmenu-disabled a,
190
+ .vakata-context .vakata-contextmenu-disabled a:hover {
191
+ color: silver;
192
+ background-color: transparent;
193
+ border: 0;
194
+ box-shadow: 0 0 0;
195
+ }
196
+ .vakata-context .vakata-contextmenu-disabled > a > i {
197
+ filter: grayscale(100%);
198
+ }
199
+ .vakata-context li > a > i {
200
+ text-decoration: none;
201
+ display: inline-block;
202
+ width: 2.4em;
203
+ height: 2.4em;
204
+ background: transparent;
205
+ margin: 0 0 0 -2em;
206
+ vertical-align: top;
207
+ text-align: center;
208
+ line-height: 2.4em;
209
+ }
210
+ .vakata-context li > a > i:empty {
211
+ width: 2.4em;
212
+ line-height: 2.4em;
213
+ }
214
+ .vakata-context li > a .vakata-contextmenu-sep {
215
+ display: inline-block;
216
+ width: 1px;
217
+ height: 2.4em;
218
+ background: white;
219
+ margin: 0 0.5em 0 0;
220
+ border-left: 1px solid #e2e3e3;
221
+ }
222
+ .vakata-context .vakata-contextmenu-shortcut {
223
+ font-size: 0.8em;
224
+ color: silver;
225
+ opacity: 0.5;
226
+ display: none;
227
+ }
228
+ .vakata-context-rtl ul {
229
+ left: auto;
230
+ right: 100%;
231
+ margin-left: auto;
232
+ margin-right: -4px;
233
+ }
234
+ .vakata-context-rtl li > a.vakata-context-parent {
235
+ background-image: url("data:image/gif;base64,R0lGODlhCwAHAIAAACgoKP///yH5BAEAAAEALAAAAAALAAcAAAINjI+AC7rWHIsPtmoxLAA7");
236
+ background-position: left center;
237
+ background-repeat: no-repeat;
238
+ }
239
+ .vakata-context-rtl .vakata-context-separator > a {
240
+ margin: 0 2.4em 0 0;
241
+ border-left: 0;
242
+ border-right: 1px solid #e2e3e3;
243
+ }
244
+ .vakata-context-rtl .vakata-context-left ul {
245
+ right: auto;
246
+ left: 100%;
247
+ margin-left: -4px;
248
+ margin-right: auto;
249
+ }
250
+ .vakata-context-rtl li > a > i {
251
+ margin: 0 -2em 0 0;
252
+ }
253
+ .vakata-context-rtl li > a .vakata-contextmenu-sep {
254
+ margin: 0 0 0 0.5em;
255
+ border-left-color: white;
256
+ background: #e2e3e3;
257
+ }
258
+ #jstree-marker {
259
+ position: absolute;
260
+ top: 0;
261
+ left: 0;
262
+ margin: -5px 0 0 0;
263
+ padding: 0;
264
+ border-right: 0;
265
+ border-top: 5px solid transparent;
266
+ border-bottom: 5px solid transparent;
267
+ border-left: 5px solid;
268
+ width: 0;
269
+ height: 0;
270
+ font-size: 0;
271
+ line-height: 0;
272
+ }
273
+ #jstree-dnd {
274
+ line-height: 16px;
275
+ margin: 0;
276
+ padding: 4px;
277
+ }
278
+ #jstree-dnd .jstree-icon,
279
+ #jstree-dnd .jstree-copy {
280
+ display: inline-block;
281
+ text-decoration: none;
282
+ margin: 0 2px 0 0;
283
+ padding: 0;
284
+ width: 16px;
285
+ height: 16px;
286
+ }
287
+ #jstree-dnd .jstree-ok {
288
+ background: green;
289
+ }
290
+ #jstree-dnd .jstree-er {
291
+ background: red;
292
+ }
293
+ #jstree-dnd .jstree-copy {
294
+ margin: 0 2px 0 2px;
295
+ }
296
+ .jstree-default .jstree-node,
297
+ .jstree-default .jstree-icon {
298
+ background-repeat: no-repeat;
299
+ background-color: transparent;
300
+ }
301
+ .jstree-default .jstree-anchor,
302
+ .jstree-default .jstree-animated,
303
+ .jstree-default .jstree-wholerow {
304
+ transition: background-color 0.15s, box-shadow 0.15s;
305
+ }
306
+ .jstree-default .jstree-hovered {
307
+ background: #e7f4f9;
308
+ border-radius: 2px;
309
+ box-shadow: inset 0 0 1px #cccccc;
310
+ }
311
+ .jstree-default .jstree-context {
312
+ background: #e7f4f9;
313
+ border-radius: 2px;
314
+ box-shadow: inset 0 0 1px #cccccc;
315
+ }
316
+ .jstree-default .jstree-clicked {
317
+ background: #beebff;
318
+ border-radius: 2px;
319
+ box-shadow: inset 0 0 1px #999999;
320
+ }
321
+ .jstree-default .jstree-no-icons .jstree-anchor > .jstree-themeicon {
322
+ display: none;
323
+ }
324
+ .jstree-default .jstree-disabled {
325
+ background: transparent;
326
+ color: #666666;
327
+ }
328
+ .jstree-default .jstree-disabled.jstree-hovered {
329
+ background: transparent;
330
+ box-shadow: none;
331
+ }
332
+ .jstree-default .jstree-disabled.jstree-clicked {
333
+ background: #efefef;
334
+ }
335
+ .jstree-default .jstree-disabled > .jstree-icon {
336
+ opacity: 0.8;
337
+ filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'jstree-grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#jstree-grayscale");
338
+ /* Firefox 10+ */
339
+ filter: gray;
340
+ /* IE6-9 */
341
+ -webkit-filter: grayscale(100%);
342
+ /* Chrome 19+ & Safari 6+ */
343
+ }
344
+ .jstree-default .jstree-search {
345
+ font-style: italic;
346
+ color: #8b0000;
347
+ font-weight: bold;
348
+ }
349
+ .jstree-default .jstree-no-checkboxes .jstree-checkbox {
350
+ display: none !important;
351
+ }
352
+ .jstree-default.jstree-checkbox-no-clicked .jstree-clicked {
353
+ background: transparent;
354
+ box-shadow: none;
355
+ }
356
+ .jstree-default.jstree-checkbox-no-clicked .jstree-clicked.jstree-hovered {
357
+ background: #e7f4f9;
358
+ }
359
+ .jstree-default.jstree-checkbox-no-clicked > .jstree-wholerow-ul .jstree-wholerow-clicked {
360
+ background: transparent;
361
+ }
362
+ .jstree-default.jstree-checkbox-no-clicked > .jstree-wholerow-ul .jstree-wholerow-clicked.jstree-wholerow-hovered {
363
+ background: #e7f4f9;
364
+ }
365
+ .jstree-default > .jstree-striped {
366
+ min-width: 100%;
367
+ display: inline-block;
368
+ background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAkCAMAAAB/qqA+AAAABlBMVEUAAAAAAAClZ7nPAAAAAnRSTlMNAMM9s3UAAAAXSURBVHjajcEBAQAAAIKg/H/aCQZ70AUBjAATb6YPDgAAAABJRU5ErkJggg==") left top repeat;
369
+ }
370
+ .jstree-default > .jstree-wholerow-ul .jstree-hovered,
371
+ .jstree-default > .jstree-wholerow-ul .jstree-clicked {
372
+ background: transparent;
373
+ box-shadow: none;
374
+ border-radius: 0;
375
+ }
376
+ .jstree-default .jstree-wholerow {
377
+ -moz-box-sizing: border-box;
378
+ -webkit-box-sizing: border-box;
379
+ box-sizing: border-box;
380
+ }
381
+ .jstree-default .jstree-wholerow-hovered {
382
+ background: #e7f4f9;
383
+ }
384
+ .jstree-default .jstree-wholerow-clicked {
385
+ background: #beebff;
386
+ background: -webkit-linear-gradient(top, #beebff 0%, #a8e4ff 100%);
387
+ background: linear-gradient(to bottom, #beebff 0%, #a8e4ff 100%);
388
+ }
389
+ .jstree-default .jstree-node {
390
+ min-height: 24px;
391
+ line-height: 24px;
392
+ margin-left: 24px;
393
+ min-width: 24px;
394
+ }
395
+ .jstree-default .jstree-anchor {
396
+ line-height: 24px;
397
+ height: 24px;
398
+ }
399
+ .jstree-default .jstree-icon {
400
+ width: 24px;
401
+ height: 24px;
402
+ line-height: 24px;
403
+ }
404
+ .jstree-default .jstree-icon:empty {
405
+ width: 24px;
406
+ height: 24px;
407
+ line-height: 24px;
408
+ }
409
+ .jstree-default.jstree-rtl .jstree-node {
410
+ margin-right: 24px;
411
+ }
412
+ .jstree-default .jstree-wholerow {
413
+ height: 24px;
414
+ }
415
+ .jstree-default .jstree-node,
416
+ .jstree-default .jstree-icon {
417
+ background-image: url("32px.png");
418
+ }
419
+ .jstree-default .jstree-node {
420
+ background-position: -292px -4px;
421
+ background-repeat: repeat-y;
422
+ }
423
+ .jstree-default .jstree-last {
424
+ background: transparent;
425
+ }
426
+ .jstree-default .jstree-open > .jstree-ocl {
427
+ background-position: -132px -4px;
428
+ }
429
+ .jstree-default .jstree-closed > .jstree-ocl {
430
+ background-position: -100px -4px;
431
+ }
432
+ .jstree-default .jstree-leaf > .jstree-ocl {
433
+ background-position: -68px -4px;
434
+ }
435
+ .jstree-default .jstree-themeicon {
436
+ background-position: -260px -4px;
437
+ }
438
+ .jstree-default > .jstree-no-dots .jstree-node,
439
+ .jstree-default > .jstree-no-dots .jstree-leaf > .jstree-ocl {
440
+ background: transparent;
441
+ }
442
+ .jstree-default > .jstree-no-dots .jstree-open > .jstree-ocl {
443
+ background-position: -36px -4px;
444
+ }
445
+ .jstree-default > .jstree-no-dots .jstree-closed > .jstree-ocl {
446
+ background-position: -4px -4px;
447
+ }
448
+ .jstree-default .jstree-disabled {
449
+ background: transparent;
450
+ }
451
+ .jstree-default .jstree-disabled.jstree-hovered {
452
+ background: transparent;
453
+ }
454
+ .jstree-default .jstree-disabled.jstree-clicked {
455
+ background: #efefef;
456
+ }
457
+ .jstree-default .jstree-checkbox {
458
+ background-position: -164px -4px;
459
+ }
460
+ .jstree-default .jstree-checkbox:hover {
461
+ background-position: -164px -36px;
462
+ }
463
+ .jstree-default.jstree-checkbox-selection .jstree-clicked > .jstree-checkbox,
464
+ .jstree-default .jstree-checked > .jstree-checkbox {
465
+ background-position: -228px -4px;
466
+ }
467
+ .jstree-default.jstree-checkbox-selection .jstree-clicked > .jstree-checkbox:hover,
468
+ .jstree-default .jstree-checked > .jstree-checkbox:hover {
469
+ background-position: -228px -36px;
470
+ }
471
+ .jstree-default .jstree-anchor > .jstree-undetermined {
472
+ background-position: -196px -4px;
473
+ }
474
+ .jstree-default .jstree-anchor > .jstree-undetermined:hover {
475
+ background-position: -196px -36px;
476
+ }
477
+ .jstree-default .jstree-checkbox-disabled {
478
+ opacity: 0.8;
479
+ filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'jstree-grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#jstree-grayscale");
480
+ /* Firefox 10+ */
481
+ filter: gray;
482
+ /* IE6-9 */
483
+ -webkit-filter: grayscale(100%);
484
+ /* Chrome 19+ & Safari 6+ */
485
+ }
486
+ .jstree-default > .jstree-striped {
487
+ background-size: auto 48px;
488
+ }
489
+ .jstree-default.jstree-rtl .jstree-node {
490
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAACAQMAAAB49I5GAAAABlBMVEUAAAAdHRvEkCwcAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjAAMOBgAAGAAJMwQHdQAAAABJRU5ErkJggg==");
491
+ background-position: 100% 1px;
492
+ background-repeat: repeat-y;
493
+ }
494
+ .jstree-default.jstree-rtl .jstree-last {
495
+ background: transparent;
496
+ }
497
+ .jstree-default.jstree-rtl .jstree-open > .jstree-ocl {
498
+ background-position: -132px -36px;
499
+ }
500
+ .jstree-default.jstree-rtl .jstree-closed > .jstree-ocl {
501
+ background-position: -100px -36px;
502
+ }
503
+ .jstree-default.jstree-rtl .jstree-leaf > .jstree-ocl {
504
+ background-position: -68px -36px;
505
+ }
506
+ .jstree-default.jstree-rtl > .jstree-no-dots .jstree-node,
507
+ .jstree-default.jstree-rtl > .jstree-no-dots .jstree-leaf > .jstree-ocl {
508
+ background: transparent;
509
+ }
510
+ .jstree-default.jstree-rtl > .jstree-no-dots .jstree-open > .jstree-ocl {
511
+ background-position: -36px -36px;
512
+ }
513
+ .jstree-default.jstree-rtl > .jstree-no-dots .jstree-closed > .jstree-ocl {
514
+ background-position: -4px -36px;
515
+ }
516
+ .jstree-default .jstree-themeicon-custom {
517
+ background-color: transparent;
518
+ background-image: none;
519
+ background-position: 0 0;
520
+ }
521
+ .jstree-default > .jstree-container-ul .jstree-loading > .jstree-ocl {
522
+ background: url("throbber.gif") center center no-repeat;
523
+ }
524
+ .jstree-default .jstree-file {
525
+ background: url("32px.png") -100px -68px no-repeat;
526
+ }
527
+ .jstree-default .jstree-folder {
528
+ background: url("32px.png") -260px -4px no-repeat;
529
+ }
530
+ .jstree-default > .jstree-container-ul > .jstree-node {
531
+ margin-left: 0;
532
+ margin-right: 0;
533
+ }
534
+ #jstree-dnd.jstree-default {
535
+ line-height: 24px;
536
+ padding: 0 4px;
537
+ }
538
+ #jstree-dnd.jstree-default .jstree-ok,
539
+ #jstree-dnd.jstree-default .jstree-er {
540
+ background-image: url("32px.png");
541
+ background-repeat: no-repeat;
542
+ background-color: transparent;
543
+ }
544
+ #jstree-dnd.jstree-default i {
545
+ background: transparent;
546
+ width: 24px;
547
+ height: 24px;
548
+ line-height: 24px;
549
+ }
550
+ #jstree-dnd.jstree-default .jstree-ok {
551
+ background-position: -4px -68px;
552
+ }
553
+ #jstree-dnd.jstree-default .jstree-er {
554
+ background-position: -36px -68px;
555
+ }
556
+ .jstree-default .jstree-ellipsis {
557
+ overflow: hidden;
558
+ }
559
+ .jstree-default .jstree-ellipsis .jstree-anchor {
560
+ width: calc(100% - 29px);
561
+ text-overflow: ellipsis;
562
+ overflow: hidden;
563
+ }
564
+ .jstree-default.jstree-rtl .jstree-node {
565
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAACAQMAAAB49I5GAAAABlBMVEUAAAAdHRvEkCwcAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjAAMOBgAAGAAJMwQHdQAAAABJRU5ErkJggg==");
566
+ }
567
+ .jstree-default.jstree-rtl .jstree-last {
568
+ background: transparent;
569
+ }
570
+ .jstree-default-small .jstree-node {
571
+ min-height: 18px;
572
+ line-height: 18px;
573
+ margin-left: 18px;
574
+ min-width: 18px;
575
+ }
576
+ .jstree-default-small .jstree-anchor {
577
+ line-height: 18px;
578
+ height: 18px;
579
+ }
580
+ .jstree-default-small .jstree-icon {
581
+ width: 18px;
582
+ height: 18px;
583
+ line-height: 18px;
584
+ }
585
+ .jstree-default-small .jstree-icon:empty {
586
+ width: 18px;
587
+ height: 18px;
588
+ line-height: 18px;
589
+ }
590
+ .jstree-default-small.jstree-rtl .jstree-node {
591
+ margin-right: 18px;
592
+ }
593
+ .jstree-default-small .jstree-wholerow {
594
+ height: 18px;
595
+ }
596
+ .jstree-default-small .jstree-node,
597
+ .jstree-default-small .jstree-icon {
598
+ background-image: url("32px.png");
599
+ }
600
+ .jstree-default-small .jstree-node {
601
+ background-position: -295px -7px;
602
+ background-repeat: repeat-y;
603
+ }
604
+ .jstree-default-small .jstree-last {
605
+ background: transparent;
606
+ }
607
+ .jstree-default-small .jstree-open > .jstree-ocl {
608
+ background-position: -135px -7px;
609
+ }
610
+ .jstree-default-small .jstree-closed > .jstree-ocl {
611
+ background-position: -103px -7px;
612
+ }
613
+ .jstree-default-small .jstree-leaf > .jstree-ocl {
614
+ background-position: -71px -7px;
615
+ }
616
+ .jstree-default-small .jstree-themeicon {
617
+ background-position: -263px -7px;
618
+ }
619
+ .jstree-default-small > .jstree-no-dots .jstree-node,
620
+ .jstree-default-small > .jstree-no-dots .jstree-leaf > .jstree-ocl {
621
+ background: transparent;
622
+ }
623
+ .jstree-default-small > .jstree-no-dots .jstree-open > .jstree-ocl {
624
+ background-position: -39px -7px;
625
+ }
626
+ .jstree-default-small > .jstree-no-dots .jstree-closed > .jstree-ocl {
627
+ background-position: -7px -7px;
628
+ }
629
+ .jstree-default-small .jstree-disabled {
630
+ background: transparent;
631
+ }
632
+ .jstree-default-small .jstree-disabled.jstree-hovered {
633
+ background: transparent;
634
+ }
635
+ .jstree-default-small .jstree-disabled.jstree-clicked {
636
+ background: #efefef;
637
+ }
638
+ .jstree-default-small .jstree-checkbox {
639
+ background-position: -167px -7px;
640
+ }
641
+ .jstree-default-small .jstree-checkbox:hover {
642
+ background-position: -167px -39px;
643
+ }
644
+ .jstree-default-small.jstree-checkbox-selection .jstree-clicked > .jstree-checkbox,
645
+ .jstree-default-small .jstree-checked > .jstree-checkbox {
646
+ background-position: -231px -7px;
647
+ }
648
+ .jstree-default-small.jstree-checkbox-selection .jstree-clicked > .jstree-checkbox:hover,
649
+ .jstree-default-small .jstree-checked > .jstree-checkbox:hover {
650
+ background-position: -231px -39px;
651
+ }
652
+ .jstree-default-small .jstree-anchor > .jstree-undetermined {
653
+ background-position: -199px -7px;
654
+ }
655
+ .jstree-default-small .jstree-anchor > .jstree-undetermined:hover {
656
+ background-position: -199px -39px;
657
+ }
658
+ .jstree-default-small .jstree-checkbox-disabled {
659
+ opacity: 0.8;
660
+ filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'jstree-grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#jstree-grayscale");
661
+ /* Firefox 10+ */
662
+ filter: gray;
663
+ /* IE6-9 */
664
+ -webkit-filter: grayscale(100%);
665
+ /* Chrome 19+ & Safari 6+ */
666
+ }
667
+ .jstree-default-small > .jstree-striped {
668
+ background-size: auto 36px;
669
+ }
670
+ .jstree-default-small.jstree-rtl .jstree-node {
671
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAACAQMAAAB49I5GAAAABlBMVEUAAAAdHRvEkCwcAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjAAMOBgAAGAAJMwQHdQAAAABJRU5ErkJggg==");
672
+ background-position: 100% 1px;
673
+ background-repeat: repeat-y;
674
+ }
675
+ .jstree-default-small.jstree-rtl .jstree-last {
676
+ background: transparent;
677
+ }
678
+ .jstree-default-small.jstree-rtl .jstree-open > .jstree-ocl {
679
+ background-position: -135px -39px;
680
+ }
681
+ .jstree-default-small.jstree-rtl .jstree-closed > .jstree-ocl {
682
+ background-position: -103px -39px;
683
+ }
684
+ .jstree-default-small.jstree-rtl .jstree-leaf > .jstree-ocl {
685
+ background-position: -71px -39px;
686
+ }
687
+ .jstree-default-small.jstree-rtl > .jstree-no-dots .jstree-node,
688
+ .jstree-default-small.jstree-rtl > .jstree-no-dots .jstree-leaf > .jstree-ocl {
689
+ background: transparent;
690
+ }
691
+ .jstree-default-small.jstree-rtl > .jstree-no-dots .jstree-open > .jstree-ocl {
692
+ background-position: -39px -39px;
693
+ }
694
+ .jstree-default-small.jstree-rtl > .jstree-no-dots .jstree-closed > .jstree-ocl {
695
+ background-position: -7px -39px;
696
+ }
697
+ .jstree-default-small .jstree-themeicon-custom {
698
+ background-color: transparent;
699
+ background-image: none;
700
+ background-position: 0 0;
701
+ }
702
+ .jstree-default-small > .jstree-container-ul .jstree-loading > .jstree-ocl {
703
+ background: url("throbber.gif") center center no-repeat;
704
+ }
705
+ .jstree-default-small .jstree-file {
706
+ background: url("32px.png") -103px -71px no-repeat;
707
+ }
708
+ .jstree-default-small .jstree-folder {
709
+ background: url("32px.png") -263px -7px no-repeat;
710
+ }
711
+ .jstree-default-small > .jstree-container-ul > .jstree-node {
712
+ margin-left: 0;
713
+ margin-right: 0;
714
+ }
715
+ #jstree-dnd.jstree-default-small {
716
+ line-height: 18px;
717
+ padding: 0 4px;
718
+ }
719
+ #jstree-dnd.jstree-default-small .jstree-ok,
720
+ #jstree-dnd.jstree-default-small .jstree-er {
721
+ background-image: url("32px.png");
722
+ background-repeat: no-repeat;
723
+ background-color: transparent;
724
+ }
725
+ #jstree-dnd.jstree-default-small i {
726
+ background: transparent;
727
+ width: 18px;
728
+ height: 18px;
729
+ line-height: 18px;
730
+ }
731
+ #jstree-dnd.jstree-default-small .jstree-ok {
732
+ background-position: -7px -71px;
733
+ }
734
+ #jstree-dnd.jstree-default-small .jstree-er {
735
+ background-position: -39px -71px;
736
+ }
737
+ .jstree-default-small .jstree-ellipsis {
738
+ overflow: hidden;
739
+ }
740
+ .jstree-default-small .jstree-ellipsis .jstree-anchor {
741
+ width: calc(100% - 23px);
742
+ text-overflow: ellipsis;
743
+ overflow: hidden;
744
+ }
745
+ .jstree-default-small.jstree-rtl .jstree-node {
746
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAACAQMAAABv1h6PAAAABlBMVEUAAAAdHRvEkCwcAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjAAMHBgAAiABBI4gz9AAAAABJRU5ErkJggg==");
747
+ }
748
+ .jstree-default-small.jstree-rtl .jstree-last {
749
+ background: transparent;
750
+ }
751
+ .jstree-default-large .jstree-node {
752
+ min-height: 32px;
753
+ line-height: 32px;
754
+ margin-left: 32px;
755
+ min-width: 32px;
756
+ }
757
+ .jstree-default-large .jstree-anchor {
758
+ line-height: 32px;
759
+ height: 32px;
760
+ }
761
+ .jstree-default-large .jstree-icon {
762
+ width: 32px;
763
+ height: 32px;
764
+ line-height: 32px;
765
+ }
766
+ .jstree-default-large .jstree-icon:empty {
767
+ width: 32px;
768
+ height: 32px;
769
+ line-height: 32px;
770
+ }
771
+ .jstree-default-large.jstree-rtl .jstree-node {
772
+ margin-right: 32px;
773
+ }
774
+ .jstree-default-large .jstree-wholerow {
775
+ height: 32px;
776
+ }
777
+ .jstree-default-large .jstree-node,
778
+ .jstree-default-large .jstree-icon {
779
+ background-image: url("32px.png");
780
+ }
781
+ .jstree-default-large .jstree-node {
782
+ background-position: -288px 0px;
783
+ background-repeat: repeat-y;
784
+ }
785
+ .jstree-default-large .jstree-last {
786
+ background: transparent;
787
+ }
788
+ .jstree-default-large .jstree-open > .jstree-ocl {
789
+ background-position: -128px 0px;
790
+ }
791
+ .jstree-default-large .jstree-closed > .jstree-ocl {
792
+ background-position: -96px 0px;
793
+ }
794
+ .jstree-default-large .jstree-leaf > .jstree-ocl {
795
+ background-position: -64px 0px;
796
+ }
797
+ .jstree-default-large .jstree-themeicon {
798
+ background-position: -256px 0px;
799
+ }
800
+ .jstree-default-large > .jstree-no-dots .jstree-node,
801
+ .jstree-default-large > .jstree-no-dots .jstree-leaf > .jstree-ocl {
802
+ background: transparent;
803
+ }
804
+ .jstree-default-large > .jstree-no-dots .jstree-open > .jstree-ocl {
805
+ background-position: -32px 0px;
806
+ }
807
+ .jstree-default-large > .jstree-no-dots .jstree-closed > .jstree-ocl {
808
+ background-position: 0px 0px;
809
+ }
810
+ .jstree-default-large .jstree-disabled {
811
+ background: transparent;
812
+ }
813
+ .jstree-default-large .jstree-disabled.jstree-hovered {
814
+ background: transparent;
815
+ }
816
+ .jstree-default-large .jstree-disabled.jstree-clicked {
817
+ background: #efefef;
818
+ }
819
+ .jstree-default-large .jstree-checkbox {
820
+ background-position: -160px 0px;
821
+ }
822
+ .jstree-default-large .jstree-checkbox:hover {
823
+ background-position: -160px -32px;
824
+ }
825
+ .jstree-default-large.jstree-checkbox-selection .jstree-clicked > .jstree-checkbox,
826
+ .jstree-default-large .jstree-checked > .jstree-checkbox {
827
+ background-position: -224px 0px;
828
+ }
829
+ .jstree-default-large.jstree-checkbox-selection .jstree-clicked > .jstree-checkbox:hover,
830
+ .jstree-default-large .jstree-checked > .jstree-checkbox:hover {
831
+ background-position: -224px -32px;
832
+ }
833
+ .jstree-default-large .jstree-anchor > .jstree-undetermined {
834
+ background-position: -192px 0px;
835
+ }
836
+ .jstree-default-large .jstree-anchor > .jstree-undetermined:hover {
837
+ background-position: -192px -32px;
838
+ }
839
+ .jstree-default-large .jstree-checkbox-disabled {
840
+ opacity: 0.8;
841
+ filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'jstree-grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#jstree-grayscale");
842
+ /* Firefox 10+ */
843
+ filter: gray;
844
+ /* IE6-9 */
845
+ -webkit-filter: grayscale(100%);
846
+ /* Chrome 19+ & Safari 6+ */
847
+ }
848
+ .jstree-default-large > .jstree-striped {
849
+ background-size: auto 64px;
850
+ }
851
+ .jstree-default-large.jstree-rtl .jstree-node {
852
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAACAQMAAAB49I5GAAAABlBMVEUAAAAdHRvEkCwcAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjAAMOBgAAGAAJMwQHdQAAAABJRU5ErkJggg==");
853
+ background-position: 100% 1px;
854
+ background-repeat: repeat-y;
855
+ }
856
+ .jstree-default-large.jstree-rtl .jstree-last {
857
+ background: transparent;
858
+ }
859
+ .jstree-default-large.jstree-rtl .jstree-open > .jstree-ocl {
860
+ background-position: -128px -32px;
861
+ }
862
+ .jstree-default-large.jstree-rtl .jstree-closed > .jstree-ocl {
863
+ background-position: -96px -32px;
864
+ }
865
+ .jstree-default-large.jstree-rtl .jstree-leaf > .jstree-ocl {
866
+ background-position: -64px -32px;
867
+ }
868
+ .jstree-default-large.jstree-rtl > .jstree-no-dots .jstree-node,
869
+ .jstree-default-large.jstree-rtl > .jstree-no-dots .jstree-leaf > .jstree-ocl {
870
+ background: transparent;
871
+ }
872
+ .jstree-default-large.jstree-rtl > .jstree-no-dots .jstree-open > .jstree-ocl {
873
+ background-position: -32px -32px;
874
+ }
875
+ .jstree-default-large.jstree-rtl > .jstree-no-dots .jstree-closed > .jstree-ocl {
876
+ background-position: 0px -32px;
877
+ }
878
+ .jstree-default-large .jstree-themeicon-custom {
879
+ background-color: transparent;
880
+ background-image: none;
881
+ background-position: 0 0;
882
+ }
883
+ .jstree-default-large > .jstree-container-ul .jstree-loading > .jstree-ocl {
884
+ background: url("throbber.gif") center center no-repeat;
885
+ }
886
+ .jstree-default-large .jstree-file {
887
+ background: url("32px.png") -96px -64px no-repeat;
888
+ }
889
+ .jstree-default-large .jstree-folder {
890
+ background: url("32px.png") -256px 0px no-repeat;
891
+ }
892
+ .jstree-default-large > .jstree-container-ul > .jstree-node {
893
+ margin-left: 0;
894
+ margin-right: 0;
895
+ }
896
+ #jstree-dnd.jstree-default-large {
897
+ line-height: 32px;
898
+ padding: 0 4px;
899
+ }
900
+ #jstree-dnd.jstree-default-large .jstree-ok,
901
+ #jstree-dnd.jstree-default-large .jstree-er {
902
+ background-image: url("32px.png");
903
+ background-repeat: no-repeat;
904
+ background-color: transparent;
905
+ }
906
+ #jstree-dnd.jstree-default-large i {
907
+ background: transparent;
908
+ width: 32px;
909
+ height: 32px;
910
+ line-height: 32px;
911
+ }
912
+ #jstree-dnd.jstree-default-large .jstree-ok {
913
+ background-position: 0px -64px;
914
+ }
915
+ #jstree-dnd.jstree-default-large .jstree-er {
916
+ background-position: -32px -64px;
917
+ }
918
+ .jstree-default-large .jstree-ellipsis {
919
+ overflow: hidden;
920
+ }
921
+ .jstree-default-large .jstree-ellipsis .jstree-anchor {
922
+ width: calc(100% - 37px);
923
+ text-overflow: ellipsis;
924
+ overflow: hidden;
925
+ }
926
+ .jstree-default-large.jstree-rtl .jstree-node {
927
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAACAQMAAAAD0EyKAAAABlBMVEUAAAAdHRvEkCwcAAAAAXRSTlMAQObYZgAAAAxJREFUCNdjgIIGBgABCgCBvVLXcAAAAABJRU5ErkJggg==");
928
+ }
929
+ .jstree-default-large.jstree-rtl .jstree-last {
930
+ background: transparent;
931
+ }
932
+ @media (max-width: 768px) {
933
+ #jstree-dnd.jstree-dnd-responsive {
934
+ line-height: 40px;
935
+ font-weight: bold;
936
+ font-size: 1.1em;
937
+ text-shadow: 1px 1px white;
938
+ }
939
+ #jstree-dnd.jstree-dnd-responsive > i {
940
+ background: transparent;
941
+ width: 40px;
942
+ height: 40px;
943
+ }
944
+ #jstree-dnd.jstree-dnd-responsive > .jstree-ok {
945
+ background-image: url("40px.png");
946
+ background-position: 0 -200px;
947
+ background-size: 120px 240px;
948
+ }
949
+ #jstree-dnd.jstree-dnd-responsive > .jstree-er {
950
+ background-image: url("40px.png");
951
+ background-position: -40px -200px;
952
+ background-size: 120px 240px;
953
+ }
954
+ #jstree-marker.jstree-dnd-responsive {
955
+ border-left-width: 10px;
956
+ border-top-width: 10px;
957
+ border-bottom-width: 10px;
958
+ margin-top: -10px;
959
+ }
960
+ }
961
+ @media (max-width: 768px) {
962
+ .jstree-default-responsive {
963
+ /*
964
+ .jstree-open > .jstree-ocl,
965
+ .jstree-closed > .jstree-ocl { border-radius:20px; background-color:white; }
966
+ */
967
+ }
968
+ .jstree-default-responsive .jstree-icon {
969
+ background-image: url("40px.png");
970
+ }
971
+ .jstree-default-responsive .jstree-node,
972
+ .jstree-default-responsive .jstree-leaf > .jstree-ocl {
973
+ background: transparent;
974
+ }
975
+ .jstree-default-responsive .jstree-node {
976
+ min-height: 40px;
977
+ line-height: 40px;
978
+ margin-left: 40px;
979
+ min-width: 40px;
980
+ white-space: nowrap;
981
+ }
982
+ .jstree-default-responsive .jstree-anchor {
983
+ line-height: 40px;
984
+ height: 40px;
985
+ }
986
+ .jstree-default-responsive .jstree-icon,
987
+ .jstree-default-responsive .jstree-icon:empty {
988
+ width: 40px;
989
+ height: 40px;
990
+ line-height: 40px;
991
+ }
992
+ .jstree-default-responsive > .jstree-container-ul > .jstree-node {
993
+ margin-left: 0;
994
+ }
995
+ .jstree-default-responsive.jstree-rtl .jstree-node {
996
+ margin-left: 0;
997
+ margin-right: 40px;
998
+ background: transparent;
999
+ }
1000
+ .jstree-default-responsive.jstree-rtl .jstree-container-ul > .jstree-node {
1001
+ margin-right: 0;
1002
+ }
1003
+ .jstree-default-responsive .jstree-ocl,
1004
+ .jstree-default-responsive .jstree-themeicon,
1005
+ .jstree-default-responsive .jstree-checkbox {
1006
+ background-size: 120px 240px;
1007
+ }
1008
+ .jstree-default-responsive .jstree-leaf > .jstree-ocl,
1009
+ .jstree-default-responsive.jstree-rtl .jstree-leaf > .jstree-ocl {
1010
+ background: transparent;
1011
+ }
1012
+ .jstree-default-responsive .jstree-open > .jstree-ocl {
1013
+ background-position: 0 0 !important;
1014
+ }
1015
+ .jstree-default-responsive .jstree-closed > .jstree-ocl {
1016
+ background-position: 0 -40px !important;
1017
+ }
1018
+ .jstree-default-responsive.jstree-rtl .jstree-closed > .jstree-ocl {
1019
+ background-position: -40px 0 !important;
1020
+ }
1021
+ .jstree-default-responsive .jstree-themeicon {
1022
+ background-position: -40px -40px;
1023
+ }
1024
+ .jstree-default-responsive .jstree-checkbox,
1025
+ .jstree-default-responsive .jstree-checkbox:hover {
1026
+ background-position: -40px -80px;
1027
+ }
1028
+ .jstree-default-responsive.jstree-checkbox-selection .jstree-clicked > .jstree-checkbox,
1029
+ .jstree-default-responsive.jstree-checkbox-selection .jstree-clicked > .jstree-checkbox:hover,
1030
+ .jstree-default-responsive .jstree-checked > .jstree-checkbox,
1031
+ .jstree-default-responsive .jstree-checked > .jstree-checkbox:hover {
1032
+ background-position: 0 -80px;
1033
+ }
1034
+ .jstree-default-responsive .jstree-anchor > .jstree-undetermined,
1035
+ .jstree-default-responsive .jstree-anchor > .jstree-undetermined:hover {
1036
+ background-position: 0 -120px;
1037
+ }
1038
+ .jstree-default-responsive .jstree-anchor {
1039
+ font-weight: bold;
1040
+ font-size: 1.1em;
1041
+ text-shadow: 1px 1px white;
1042
+ }
1043
+ .jstree-default-responsive > .jstree-striped {
1044
+ background: transparent;
1045
+ }
1046
+ .jstree-default-responsive .jstree-wholerow {
1047
+ border-top: 1px solid rgba(255, 255, 255, 0.7);
1048
+ border-bottom: 1px solid rgba(64, 64, 64, 0.2);
1049
+ background: #ebebeb;
1050
+ height: 40px;
1051
+ }
1052
+ .jstree-default-responsive .jstree-wholerow-hovered {
1053
+ background: #e7f4f9;
1054
+ }
1055
+ .jstree-default-responsive .jstree-wholerow-clicked {
1056
+ background: #beebff;
1057
+ }
1058
+ .jstree-default-responsive .jstree-children .jstree-last > .jstree-wholerow {
1059
+ box-shadow: inset 0 -6px 3px -5px #666666;
1060
+ }
1061
+ .jstree-default-responsive .jstree-children .jstree-open > .jstree-wholerow {
1062
+ box-shadow: inset 0 6px 3px -5px #666666;
1063
+ border-top: 0;
1064
+ }
1065
+ .jstree-default-responsive .jstree-children .jstree-open + .jstree-open {
1066
+ box-shadow: none;
1067
+ }
1068
+ .jstree-default-responsive .jstree-node,
1069
+ .jstree-default-responsive .jstree-icon,
1070
+ .jstree-default-responsive .jstree-node > .jstree-ocl,
1071
+ .jstree-default-responsive .jstree-themeicon,
1072
+ .jstree-default-responsive .jstree-checkbox {
1073
+ background-image: url("40px.png");
1074
+ background-size: 120px 240px;
1075
+ }
1076
+ .jstree-default-responsive .jstree-node {
1077
+ background-position: -80px 0;
1078
+ background-repeat: repeat-y;
1079
+ }
1080
+ .jstree-default-responsive .jstree-last {
1081
+ background: transparent;
1082
+ }
1083
+ .jstree-default-responsive .jstree-leaf > .jstree-ocl {
1084
+ background-position: -40px -120px;
1085
+ }
1086
+ .jstree-default-responsive .jstree-last > .jstree-ocl {
1087
+ background-position: -40px -160px;
1088
+ }
1089
+ .jstree-default-responsive .jstree-themeicon-custom {
1090
+ background-color: transparent;
1091
+ background-image: none;
1092
+ background-position: 0 0;
1093
+ }
1094
+ .jstree-default-responsive .jstree-file {
1095
+ background: url("40px.png") 0 -160px no-repeat;
1096
+ background-size: 120px 240px;
1097
+ }
1098
+ .jstree-default-responsive .jstree-folder {
1099
+ background: url("40px.png") -40px -40px no-repeat;
1100
+ background-size: 120px 240px;
1101
+ }
1102
+ .jstree-default-responsive > .jstree-container-ul > .jstree-node {
1103
+ margin-left: 0;
1104
+ margin-right: 0;
1105
+ }
1106
+ }