workarea-blog 3.4.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (213) hide show
  1. checksums.yaml +7 -0
  2. data/.editorconfig +20 -0
  3. data/.eslintignore +2 -0
  4. data/.eslintrc +24 -0
  5. data/.github/ISSUE_TEMPLATE/bug_report.md +37 -0
  6. data/.github/ISSUE_TEMPLATE/documentation-request.md +17 -0
  7. data/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  8. data/.gitignore +16 -0
  9. data/.rspec +2 -0
  10. data/.scss-lint.yml +188 -0
  11. data/.tailor +180 -0
  12. data/.yardopts +1 -0
  13. data/CHANGELOG.md +1123 -0
  14. data/CODE_OF_CONDUCT.md +3 -0
  15. data/CONTRIBUTING.md +3 -0
  16. data/Gemfile +7 -0
  17. data/LICENSE +52 -0
  18. data/README.md +140 -0
  19. data/Rakefile +42 -0
  20. data/app/assets/images/workarea/admin/blog/content_block_types/blog_entry.svg +1 -0
  21. data/app/assets/images/workarea/admin/blog/icons/blog.svg +1 -0
  22. data/app/assets/images/workarea/admin/blog/icons/blog_entry.svg +1 -0
  23. data/app/assets/images/workarea/admin/blog/icons/blog_post_comment.svg +1 -0
  24. data/app/assets/javascripts/workarea/storefront/blog/modules/blog_comment_placeholder.js +33 -0
  25. data/app/assets/stylesheets/workarea/admin/blog/components/_blog_entry_card.scss +14 -0
  26. data/app/assets/stylesheets/workarea/storefront/blog/components/_blog_entry.scss +91 -0
  27. data/app/assets/stylesheets/workarea/storefront/blog/components/_blog_entry_summary.scss +74 -0
  28. data/app/assets/stylesheets/workarea/storefront/blog/components/_featured_entry_content_block.scss +22 -0
  29. data/app/controllers/workarea/admin/application_controller.decorator +5 -0
  30. data/app/controllers/workarea/admin/content_blog_comments_controller.rb +54 -0
  31. data/app/controllers/workarea/admin/content_blog_entries_controller.rb +70 -0
  32. data/app/controllers/workarea/admin/content_blogs_controller.rb +56 -0
  33. data/app/controllers/workarea/admin/create_content_blog_entries_controller.rb +69 -0
  34. data/app/controllers/workarea/storefront/blog_comments_controller.rb +14 -0
  35. data/app/controllers/workarea/storefront/blog_entries_controller.rb +48 -0
  36. data/app/controllers/workarea/storefront/blogs_controller.rb +19 -0
  37. data/app/helpers/workarea/admin/blogs_helper.rb +61 -0
  38. data/app/models/workarea/content/blog.rb +26 -0
  39. data/app/models/workarea/content/blog_comment.rb +67 -0
  40. data/app/models/workarea/content/blog_entry.rb +35 -0
  41. data/app/models/workarea/content/fields/blog_entry_id.rb +11 -0
  42. data/app/models/workarea/content/fields/blog_id.rb +8 -0
  43. data/app/models/workarea/search/admin/content_blog.rb +27 -0
  44. data/app/models/workarea/search/admin/content_blog_entry.rb +37 -0
  45. data/app/queries/workarea/metadata/content_blog.rb +6 -0
  46. data/app/queries/workarea/metadata/content_blog_entry.rb +6 -0
  47. data/app/queries/workarea/search/admin_blog_entries.rb +24 -0
  48. data/app/queries/workarea/search/admin_blogs.rb +20 -0
  49. data/app/seeds/workarea/blog_comments_seeds.rb +26 -0
  50. data/app/seeds/workarea/blog_entry_seeds.rb +73 -0
  51. data/app/seeds/workarea/blog_seeds.rb +53 -0
  52. data/app/services/workarea/search/queries/blog_admin.rb +20 -0
  53. data/app/services/workarea/search/queries/blog_entry_admin.rb +13 -0
  54. data/app/services/workarea/set_navigable.decorator +10 -0
  55. data/app/view_models/workarea/admin/blog_comments_view_model.rb +45 -0
  56. data/app/view_models/workarea/admin/blog_entries_view_model.rb +31 -0
  57. data/app/view_models/workarea/admin/blog_entry_view_model.rb +29 -0
  58. data/app/view_models/workarea/admin/blog_search_view_model.rb +6 -0
  59. data/app/view_models/workarea/admin/blog_view_model.rb +13 -0
  60. data/app/view_models/workarea/storefront/blog_entry_view_model.rb +43 -0
  61. data/app/view_models/workarea/storefront/blog_index_view_model.rb +17 -0
  62. data/app/view_models/workarea/storefront/blog_view_model.rb +83 -0
  63. data/app/view_models/workarea/storefront/content_blocks/blog_entry_content_block_view_model.rb +63 -0
  64. data/app/views/workarea/admin/activities/_content_blog_comment_create.html.haml +12 -0
  65. data/app/views/workarea/admin/activities/_content_blog_comment_destroy.html.haml +9 -0
  66. data/app/views/workarea/admin/activities/_content_blog_comment_update.html.haml +10 -0
  67. data/app/views/workarea/admin/activities/_content_blog_create.html.haml +12 -0
  68. data/app/views/workarea/admin/activities/_content_blog_destroy.html.haml +10 -0
  69. data/app/views/workarea/admin/activities/_content_blog_entry_create.html.haml +12 -0
  70. data/app/views/workarea/admin/activities/_content_blog_entry_destroy.html.haml +10 -0
  71. data/app/views/workarea/admin/activities/_content_blog_entry_update.html.haml +10 -0
  72. data/app/views/workarea/admin/activities/_content_blog_update.html.haml +10 -0
  73. data/app/views/workarea/admin/blog/_dashboard_navigation.html.haml +1 -0
  74. data/app/views/workarea/admin/blog/_menu.html.haml +13 -0
  75. data/app/views/workarea/admin/content_blocks/_blog_entry_id.html.haml +4 -0
  76. data/app/views/workarea/admin/content_blocks/_blog_id.html.haml +3 -0
  77. data/app/views/workarea/admin/content_blog_comments/_summary.html.haml +24 -0
  78. data/app/views/workarea/admin/content_blog_comments/edit.html.haml +60 -0
  79. data/app/views/workarea/admin/content_blog_comments/index.html.haml +49 -0
  80. data/app/views/workarea/admin/content_blog_entries/_aux_navigation.html.haml +4 -0
  81. data/app/views/workarea/admin/content_blog_entries/_cards.html.haml +113 -0
  82. data/app/views/workarea/admin/content_blog_entries/_summary.html.haml +10 -0
  83. data/app/views/workarea/admin/content_blog_entries/edit.html.haml +75 -0
  84. data/app/views/workarea/admin/content_blog_entries/index.html.haml +80 -0
  85. data/app/views/workarea/admin/content_blog_entries/index.json.jbuilder +5 -0
  86. data/app/views/workarea/admin/content_blog_entries/show.html.haml +20 -0
  87. data/app/views/workarea/admin/content_blog_entries/thumbnail_image.html.haml +55 -0
  88. data/app/views/workarea/admin/content_blogs/_aux_navigation.html.haml +2 -0
  89. data/app/views/workarea/admin/content_blogs/_cards.html.haml +58 -0
  90. data/app/views/workarea/admin/content_blogs/_summary.html.haml +6 -0
  91. data/app/views/workarea/admin/content_blogs/edit.html.haml +51 -0
  92. data/app/views/workarea/admin/content_blogs/index.html.haml +76 -0
  93. data/app/views/workarea/admin/content_blogs/index.json.jbuilder +4 -0
  94. data/app/views/workarea/admin/content_blogs/new.html.haml +33 -0
  95. data/app/views/workarea/admin/content_blogs/show.html.haml +19 -0
  96. data/app/views/workarea/admin/create_content_blog_entries/content.html.haml +28 -0
  97. data/app/views/workarea/admin/create_content_blog_entries/featured_products.html.haml +71 -0
  98. data/app/views/workarea/admin/create_content_blog_entries/publish.html.haml +51 -0
  99. data/app/views/workarea/admin/create_content_blog_entries/setup.html.haml +61 -0
  100. data/app/views/workarea/admin/create_content_blog_entries/thumbnail_image.html.haml +48 -0
  101. data/app/views/workarea/storefront/blog_comments/index.html.haml +31 -0
  102. data/app/views/workarea/storefront/blog_entries/_summary.html.haml +25 -0
  103. data/app/views/workarea/storefront/blog_entries/show.html.haml +85 -0
  104. data/app/views/workarea/storefront/blog_metadata/_publisher.html.haml +7 -0
  105. data/app/views/workarea/storefront/blogs/_blog_navigation.html.haml +7 -0
  106. data/app/views/workarea/storefront/blogs/index.html.haml +25 -0
  107. data/app/views/workarea/storefront/blogs/show.atom.builder +26 -0
  108. data/app/views/workarea/storefront/blogs/show.html.haml +31 -0
  109. data/app/views/workarea/storefront/content_blocks/_blog_entry.html.haml +20 -0
  110. data/app/workers/workarea/generate_content_metadata.decorator +15 -0
  111. data/bin/rails +18 -0
  112. data/config/initializers/appends.rb +26 -0
  113. data/config/initializers/content_block_types.rb +13 -0
  114. data/config/initializers/jump_to_navigation.rb +3 -0
  115. data/config/initializers/seeds.rb +5 -0
  116. data/config/initializers/workarea.rb +15 -0
  117. data/config/locales/en.yml +244 -0
  118. data/config/routes.rb +49 -0
  119. data/data/blog_thumbnails/thumbnail_1.png +0 -0
  120. data/data/blog_thumbnails/thumbnail_2.png +0 -0
  121. data/data/blog_thumbnails/thumbnail_3.png +0 -0
  122. data/lib/tasks/import_wordpress.rake +13 -0
  123. data/lib/tasks/import_wordpress_attachments.rake +18 -0
  124. data/lib/tasks/import_wordpress_pages.rake +21 -0
  125. data/lib/tasks/import_wordpress_posts.rake +25 -0
  126. data/lib/workarea/blog/engine.rb +8 -0
  127. data/lib/workarea/blog/import/wordpress/attachment.rb +40 -0
  128. data/lib/workarea/blog/import/wordpress/content_cleaner.rb +64 -0
  129. data/lib/workarea/blog/import/wordpress/entry.rb +76 -0
  130. data/lib/workarea/blog/import/wordpress/entry_parser.rb +64 -0
  131. data/lib/workarea/blog/import/wordpress/page.rb +69 -0
  132. data/lib/workarea/blog/import/wordpress/page_parser.rb +50 -0
  133. data/lib/workarea/blog/version.rb +5 -0
  134. data/lib/workarea/blog.rb +11 -0
  135. data/test/dummy/Rakefile +6 -0
  136. data/test/dummy/app/assets/config/manifest.js +4 -0
  137. data/test/dummy/app/assets/images/.keep +0 -0
  138. data/test/dummy/app/assets/javascripts/application.js +13 -0
  139. data/test/dummy/app/assets/stylesheets/application.css +15 -0
  140. data/test/dummy/app/controllers/application_controller.rb +3 -0
  141. data/test/dummy/app/controllers/concerns/.keep +0 -0
  142. data/test/dummy/app/helpers/application_helper.rb +2 -0
  143. data/test/dummy/app/jobs/application_job.rb +2 -0
  144. data/test/dummy/app/mailers/application_mailer.rb +4 -0
  145. data/test/dummy/app/models/concerns/.keep +0 -0
  146. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  147. data/test/dummy/app/views/layouts/mailer.html.erb +13 -0
  148. data/test/dummy/app/views/layouts/mailer.text.erb +1 -0
  149. data/test/dummy/bin/bundle +3 -0
  150. data/test/dummy/bin/rails +4 -0
  151. data/test/dummy/bin/rake +4 -0
  152. data/test/dummy/bin/setup +34 -0
  153. data/test/dummy/bin/update +29 -0
  154. data/test/dummy/config/application.rb +26 -0
  155. data/test/dummy/config/boot.rb +5 -0
  156. data/test/dummy/config/cable.yml +9 -0
  157. data/test/dummy/config/environment.rb +5 -0
  158. data/test/dummy/config/environments/development.rb +59 -0
  159. data/test/dummy/config/environments/production.rb +86 -0
  160. data/test/dummy/config/environments/test.rb +43 -0
  161. data/test/dummy/config/initializers/application_controller_renderer.rb +6 -0
  162. data/test/dummy/config/initializers/assets.rb +11 -0
  163. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  164. data/test/dummy/config/initializers/cookies_serializer.rb +5 -0
  165. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  166. data/test/dummy/config/initializers/inflections.rb +16 -0
  167. data/test/dummy/config/initializers/mime_types.rb +4 -0
  168. data/test/dummy/config/initializers/new_framework_defaults.rb +18 -0
  169. data/test/dummy/config/initializers/session_store.rb +3 -0
  170. data/test/dummy/config/initializers/workarea.rb +3 -0
  171. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  172. data/test/dummy/config/locales/en.yml +23 -0
  173. data/test/dummy/config/puma.rb +47 -0
  174. data/test/dummy/config/routes.rb +5 -0
  175. data/test/dummy/config/secrets.yml +22 -0
  176. data/test/dummy/config/spring.rb +6 -0
  177. data/test/dummy/config.ru +5 -0
  178. data/test/dummy/db/seeds.rb +2 -0
  179. data/test/dummy/lib/assets/.keep +0 -0
  180. data/test/dummy/log/.keep +0 -0
  181. data/test/factories/blog.rb +33 -0
  182. data/test/factories/wordpress_import.rb +17 -0
  183. data/test/fixtures/test_wordpress.xml +493 -0
  184. data/test/integration/workarea/blog/admin_integration_test.rb +55 -0
  185. data/test/integration/workarea/blog/create_blog_entries_integration_test.rb +106 -0
  186. data/test/integration/workarea/blog/storefront_integration_test.rb +112 -0
  187. data/test/integration/workarea/blog/wordpress_import_integration_test.rb +26 -0
  188. data/test/lib/workarea/blog/import/wordpress/attachment_test.rb +20 -0
  189. data/test/lib/workarea/blog/import/wordpress/content_cleaner_test.rb +65 -0
  190. data/test/lib/workarea/blog/import/wordpress/entry_parser_test.rb +42 -0
  191. data/test/lib/workarea/blog/import/wordpress/entry_test.rb +61 -0
  192. data/test/lib/workarea/blog/import/wordpress/page_parser_test.rb +35 -0
  193. data/test/lib/workarea/blog/import/wordpress/page_test.rb +52 -0
  194. data/test/models/workarea/content/blog_comment_test.rb +57 -0
  195. data/test/models/workarea/content/blog_entry_test.rb +17 -0
  196. data/test/queries/workarea/metadata/content_blog_entry_test.rb +36 -0
  197. data/test/queries/workarea/metadata/content_blog_test.rb +36 -0
  198. data/test/support/workarea/blog/stub_wordpress_assets.rb +19 -0
  199. data/test/system/workarea/admin/blog_entries_system_test.rb +103 -0
  200. data/test/system/workarea/admin/blog_system_test.rb +93 -0
  201. data/test/system/workarea/admin/blog_taxonomy_system_test.rb +21 -0
  202. data/test/system/workarea/admin/blog_user_comments_system_test.rb +138 -0
  203. data/test/system/workarea/storefront/blog_content_block_system_test.rb +36 -0
  204. data/test/system/workarea/storefront/blog_system_test.rb +256 -0
  205. data/test/test_helper.rb +9 -0
  206. data/test/view_models/workarea/admin/blog_comments_view_model_test.rb +77 -0
  207. data/test/view_models/workarea/admin/blog_entries_view_model_test.rb +36 -0
  208. data/test/view_models/workarea/storefront/blog_entry_content_block_view_model_test.rb +100 -0
  209. data/test/view_models/workarea/storefront/blog_entry_view_model_test.rb +47 -0
  210. data/test/view_models/workarea/storefront/blog_view_model_test.rb +149 -0
  211. data/test/workers/workarea/generate_content_blog_metadata_test.rb +18 -0
  212. data/workarea-blog.gemspec +19 -0
  213. metadata +274 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: d1c8e1727a95ff4cd8f73da3558b384924fcaf8fff71ef322f4f5af28a7054ea
4
+ data.tar.gz: c1fbb6fdf5b849405aec0ad85e480857bbc21a8ac735f5825ed56040d0ba9339
5
+ SHA512:
6
+ metadata.gz: e0226d6237319795f8e6598e052cac59f1679fd3d4b58a7dfdf9c986a1259fcebb45445e40933feb987ee0e5ec88a7ea675d7a9607cf911ac5348655be130461
7
+ data.tar.gz: 1043b6310f5634704e21cf2f0eef1212771faf690ba3c2b6eded8b8ac52eaec1b14e5fdbe0319c328e126b9aa71d60e98d8d6640e60a8857154b6b58e0ea3fc2
data/.editorconfig ADDED
@@ -0,0 +1,20 @@
1
+ # editorconfig.org
2
+ root = true
3
+
4
+ [*]
5
+ charset = utf-8
6
+ indent_style = space
7
+ end_of_line = lf
8
+ trim_trailing_whitespace = true
9
+ insert_final_newline = true
10
+
11
+ [{*.rb,*.haml,*.decorator,*.yml,*.yaml,*.jbuilder}]
12
+ indent_size = 2
13
+ indent_style = space
14
+
15
+ [{*.js,*.jst,*.ejs,*.scss}]
16
+ indent_size = 4
17
+
18
+ [*.md]
19
+ indent_size = 4
20
+ trim_trailing_whitespace = false
data/.eslintignore ADDED
@@ -0,0 +1,2 @@
1
+ **/test/**/*.js
2
+ testing/**/spec_helper.js
data/.eslintrc ADDED
@@ -0,0 +1,24 @@
1
+ {
2
+ "extends": "eslint:recommended",
3
+ "rules": {
4
+ "semi": [1, "always"]
5
+ },
6
+ "globals": {
7
+ "window": true,
8
+ "document": true,
9
+ "WORKAREA": true,
10
+ "$": true,
11
+ "jQuery": true,
12
+ "_": true,
13
+ "feature": true,
14
+ "JST": true,
15
+ "Turbolinks": true,
16
+ "I18n": true,
17
+ "Chart": true,
18
+ "Dropzone": true,
19
+ "strftime": true,
20
+ "Waypoint": true,
21
+ "wysihtml": true,
22
+ "LocalTime": true,
23
+ }
24
+ }
@@ -0,0 +1,37 @@
1
+ ---
2
+ name: Bug report
3
+ about: Create a report to help us improve Workarea
4
+ title: ''
5
+ labels: bug
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ ⚠️**Before you create**⚠️
11
+ Please verify the issue you're experiencing is not part of your Workarea project customizations. The best way to do this is with a [vanilla Workarea installation](https://developer.workarea.com/articles/create-a-new-host-application.html). This will help us spend time on fixes/improvements for the whole community. Thank you!
12
+
13
+ **Describe the bug**
14
+ A clear and concise description of what the bug is.
15
+
16
+ **To Reproduce**
17
+ Steps to reproduce the behavior:
18
+ 1. Go to '...'
19
+ 2. Click on '....'
20
+ 3. Scroll down to '....'
21
+ 4. See error
22
+
23
+ **Expected behavior**
24
+ A clear and concise description of what you expected to happen.
25
+
26
+ **Workarea Setup (please complete the following information):**
27
+ - Workarea Version: [e.g. v3.4.6]
28
+ - Plugins [e.g. workarea-blog, workarea-sitemaps]
29
+
30
+ **Attachments**
31
+ If applicable, add any attachments to help explain your problem, things like:
32
+ - screenshots
33
+ - Gemfile.lock
34
+ - test cases
35
+
36
+ **Additional context**
37
+ Add any other context about the problem here.
@@ -0,0 +1,17 @@
1
+ ---
2
+ name: Documentation request
3
+ about: Suggest documentation
4
+ title: ''
5
+ labels: documentation
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ **Is your documentation related to a problem? Please describe.**
11
+ A clear and concise description of what the problem is. Ex. I'm confused by [...]
12
+
13
+ **Describe the article you'd like**
14
+ A clear and concise description of what would be in the documentation article.
15
+
16
+ **Additional context**
17
+ Add any other context or screenshots about the feature request here.
@@ -0,0 +1,20 @@
1
+ ---
2
+ name: Feature request
3
+ about: Suggest an idea for Workarea
4
+ title: ''
5
+ labels: enhancement
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ **Is your feature request related to a problem? Please describe.**
11
+ A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12
+
13
+ **Describe the solution you'd like**
14
+ A clear and concise description of what you want to happen.
15
+
16
+ **Describe alternatives you've considered**
17
+ A clear and concise description of any alternative solutions or features you've considered.
18
+
19
+ **Additional context**
20
+ Add any other context or screenshots about the feature request here.
data/.gitignore ADDED
@@ -0,0 +1,16 @@
1
+ .DS_Store
2
+ .bundle/
3
+ .byebug_history
4
+ Gemfile.lock
5
+ .sass-cache/
6
+ log/*.log
7
+ pkg/
8
+ test/dummy/db/*.sqlite3
9
+ test/dummy/db/*.sqlite3-journal
10
+ test/dummy/log/*.log
11
+ test/dummy/tmp/
12
+ test/dummy/public/
13
+ node_modules
14
+ test/reports
15
+ package.json
16
+ yarn.lock
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --colour
2
+ --failure-exit-code 0
data/.scss-lint.yml ADDED
@@ -0,0 +1,188 @@
1
+ # Extension of the default configuration:
2
+ # https://github.com/causes/scss-lint/blob/master/config/default.yml
3
+
4
+ linters:
5
+ Comment:
6
+ enabled: false
7
+
8
+ DeclarationOrder:
9
+ enabled: true
10
+
11
+ ElsePlacement:
12
+ enabled: true
13
+ style: new_line
14
+
15
+ EmptyRule:
16
+ enabled: false
17
+
18
+ HexLength:
19
+ enabled: true
20
+ style: long
21
+
22
+ Indentation:
23
+ enabled: true
24
+ allow_non_nested_indentation: true
25
+ character: space
26
+ width: 4
27
+
28
+ LeadingZero:
29
+ enabled: true
30
+ style: include_zero
31
+
32
+ MergeableSelector:
33
+ enabled: true
34
+ force_nesting: false
35
+
36
+ PropertySortOrder:
37
+ enabled: true
38
+ ignore_unspecified: false
39
+ separate_groups: false
40
+ order:
41
+ - display
42
+ -
43
+ - position
44
+ - top
45
+ - right
46
+ - bottom
47
+ - left
48
+ - z-index
49
+ -
50
+ - margin
51
+ - margin-top
52
+ - margin-right
53
+ - margin-bottom
54
+ - margin-left
55
+ -
56
+ - margin-collapse
57
+ - margin-top-collapse
58
+ - margin-right-collapse
59
+ - margin-bottom-collapse
60
+ - margin-left-collapse
61
+ -
62
+ - padding
63
+ - padding-top
64
+ - padding-right
65
+ - padding-bottom
66
+ - padding-left
67
+ -
68
+ - width
69
+ - height
70
+ - max-width
71
+ - max-height
72
+ - min-width
73
+ - min-height
74
+ -
75
+ - float
76
+ - clear
77
+ -
78
+ - color
79
+ -
80
+ - font
81
+ - font-size
82
+ - font-style
83
+ - font-family
84
+ - font-weight
85
+ - font-variant
86
+ - font-smoothing
87
+ -
88
+ - line-height
89
+ - letter-spacing
90
+ - word-spacing
91
+ -
92
+ - text-align
93
+ - text-indent
94
+ - text-shadow
95
+ - text-overflow
96
+ - text-rendering
97
+ - text-transform
98
+ - text-decoration
99
+ - text-size-adjust
100
+ -
101
+ - word-break
102
+ - word-wrap
103
+ -
104
+ - white-space
105
+ -
106
+ - background
107
+ - background-size
108
+ - background-color
109
+ - background-image
110
+ - background-repeat
111
+ - background-position
112
+ - background-attachment
113
+ -
114
+ - border
115
+ - border-top
116
+ - border-right
117
+ - border-bottom
118
+ - border-left
119
+ -
120
+ - border-image
121
+ - border-spacing
122
+ - border-collapse
123
+ -
124
+ - border-color
125
+ - border-top-color
126
+ - border-right-color
127
+ - border-bottom-color
128
+ - border-left-color
129
+ -
130
+ - border-style
131
+ - border-top-style
132
+ - border-right-style
133
+ - border-bottom-style
134
+ - border-left-style
135
+ -
136
+ - border-width
137
+ - border-top-width
138
+ - border-right-width
139
+ - border-bottom-width
140
+ - border-left-width
141
+ -
142
+ - border-radius
143
+ - border-top-right-radius
144
+ - border-bottom-right-radius
145
+ - border-bottom-left-radius
146
+ - border-top-left-radius
147
+ - border-radius-topright
148
+ - border-radius-bottomright
149
+ - border-radius-bottomleft
150
+ - border-radius-topleft
151
+ -
152
+ - box-shadow
153
+
154
+ SelectorFormat:
155
+ enabled: true
156
+ convention: hyphenated_BEM
157
+
158
+ SingleLinePerSelector:
159
+ enabled: false
160
+
161
+ SpaceAfterPropertyColon:
162
+ enabled: true
163
+ style: at_least_one_space
164
+
165
+ SpaceBeforeBrace:
166
+ enabled: true
167
+ style: space
168
+ allow_single_line_padding: true
169
+
170
+ VariableForProperty:
171
+ enabled: true
172
+ properties:
173
+ - color
174
+ - font-family
175
+ - background-color
176
+
177
+ # These default settings may be problematic to implementors. They are not
178
+ # ommitted so that they may be adjusted as needed during an implementation.
179
+ #
180
+ # For documentation:
181
+ # https://github.com/causes/scss-lint/blob/master/lib/scss_lint/linter/README.md
182
+
183
+ DuplicateProperty:
184
+ enabled: true
185
+
186
+ PropertySpelling:
187
+ enabled: true
188
+ extra_properties: [] # Add experimental CSS to this array, if needed
data/.tailor ADDED
@@ -0,0 +1,180 @@
1
+ #------------------------------------------------------------------------------
2
+ # Horizontal Whitespace
3
+ #------------------------------------------------------------------------------
4
+ # allow_hard_tabs True to let hard tabs be considered a single space.
5
+ # Default: false
6
+ #
7
+ # allow_trailing_line_spaces
8
+ # True to skip detecting extra spaces at the ends of
9
+ # lines.
10
+ # Default: false
11
+ #
12
+ # indentation_spaces The number of spaces to consider a proper indent.
13
+ # Default: 2
14
+ #
15
+ # max_line_length The maximum number of characters in a line before
16
+ # tailor complains.
17
+ # Default: 80
18
+ # spaces_after_comma Number of spaces to expect after a comma.
19
+ # Default: 1
20
+ #
21
+ # spaces_before_comma Number of spaces to expect before a comma.
22
+ # Default: 0
23
+ #
24
+ # spaces_after_lbrace The number of spaces to expect after an lbrace ('{').
25
+ # Default: 1
26
+ #
27
+ # spaces_before_lbrace The number of spaces to expect before an lbrace ('{').
28
+ # Default: 1
29
+ #
30
+ # spaces_before_rbrace The number of spaces to expect before an rbrace ('}').
31
+ # Default: 1
32
+ #
33
+ # spaces_in_empty_braces The number of spaces to expect between braces when
34
+ # there's nothing in the braces (i.e. {}).
35
+ # Default: 0
36
+ #
37
+ # spaces_after_lbracket The number of spaces to expect after an
38
+ # lbracket ('[').
39
+ # Default: 0
40
+ #
41
+ # spaces_before_rbracket The number of spaces to expect before an
42
+ # rbracket (']').
43
+ # Default: 0
44
+ #
45
+ # spaces_after_lparen The number of spaces to expect after an
46
+ # lparen ('(').
47
+ # Default: 0
48
+ #
49
+ # spaces_before_rparen The number of spaces to expect before an
50
+ # rbracket (')').
51
+ # Default: 0
52
+ #
53
+ #------------------------------------------------------------------------------
54
+ # Naming
55
+ #------------------------------------------------------------------------------
56
+ # allow_camel_case_methods
57
+ # Setting to true skips detection of camel-case method
58
+ # names (i.e. def myMethod).
59
+ # Default: false
60
+ #
61
+ # allow_screaming_snake_case_classes
62
+ # Setting to true skips detection of screaming
63
+ # snake-case class names (i.e. My_Class).
64
+ # Default: false
65
+ #
66
+ #------------------------------------------------------------------------------
67
+ # Vertical Whitespace
68
+ #------------------------------------------------------------------------------
69
+ # max_code_lines_in_class The number of lines of code in a class to allow before
70
+ # tailor will warn you.
71
+ # Default: 300
72
+ #
73
+ # max_code_lines_in_method
74
+ # The number of lines of code in a method to allow
75
+ # before tailor will warn you.
76
+ # Default: 30
77
+ #
78
+ # trailing_newlines The number of newlines that should be at the end of
79
+ # the file.
80
+ # Default: 1
81
+ #
82
+ Tailor.config do |config|
83
+ config.formatters "text"
84
+
85
+ config.file_set 'app/**/*.rb', :rails_app do |style|
86
+ style.allow_camel_case_methods false, level: :error
87
+ style.allow_hard_tabs false, level: :error
88
+ style.allow_screaming_snake_case_classes false, level: :error
89
+ style.allow_trailing_line_spaces false, level: :error
90
+ style.allow_invalid_ruby false, level: :error
91
+ style.indentation_spaces 2, level: :off
92
+ style.max_code_lines_in_class 300, level: :off
93
+ style.max_code_lines_in_method 30, level: :off
94
+ style.max_line_length 80, level: :off
95
+ style.spaces_after_comma 1, level: :warn
96
+ style.spaces_after_lbrace 1, level: :warn
97
+ style.spaces_after_lbracket 0, level: :warn
98
+ style.spaces_after_lparen 0, level: :warn
99
+ style.spaces_before_comma 0, level: :warn
100
+ style.spaces_before_lbrace 1, level: :off
101
+ style.spaces_before_rbrace 1, level: :warn
102
+ style.spaces_before_rbracket 0, level: :warn
103
+ style.spaces_before_rparen 0, level: :warn
104
+ style.spaces_in_empty_braces 0, level: :warn
105
+ style.trailing_newlines 1, level: :error
106
+ style.allow_unnecessary_double_quotes true, level: :warn
107
+ end
108
+
109
+ config.file_set 'app/**/*.jbuilder', :views do |style|
110
+ style.allow_camel_case_methods false, level: :error
111
+ style.allow_hard_tabs false, level: :error
112
+ style.allow_screaming_snake_case_classes false, level: :error
113
+ style.allow_trailing_line_spaces false, level: :error
114
+ style.allow_invalid_ruby false, level: :error
115
+ style.indentation_spaces 2, level: :off
116
+ style.max_code_lines_in_class 300, level: :off
117
+ style.max_code_lines_in_method 30, level: :off
118
+ style.max_line_length 80, level: :off
119
+ style.spaces_after_comma 1, level: :off
120
+ style.spaces_after_lbrace 1, level: :off
121
+ style.spaces_after_lbracket 0, level: :off
122
+ style.spaces_after_lparen 0, level: :off
123
+ style.spaces_before_comma 0, level: :off
124
+ style.spaces_before_lbrace 1, level: :off
125
+ style.spaces_before_rbrace 1, level: :off
126
+ style.spaces_before_rbracket 0, level: :off
127
+ style.spaces_before_rparen 0, level: :off
128
+ style.spaces_in_empty_braces 0, level: :off
129
+ style.trailing_newlines 1, level: :error
130
+ style.allow_unnecessary_double_quotes true, level: :off
131
+ end
132
+
133
+ config.file_set 'lib/**/*.rb', :libs do |style|
134
+ style.allow_camel_case_methods false, level: :error
135
+ style.allow_hard_tabs false, level: :error
136
+ style.allow_screaming_snake_case_classes false, level: :error
137
+ style.allow_trailing_line_spaces false, level: :error
138
+ style.allow_invalid_ruby false, level: :error
139
+ style.indentation_spaces 2, level: :off
140
+ style.max_code_lines_in_class 300, level: :off
141
+ style.max_code_lines_in_method 30, level: :off
142
+ style.max_line_length 80, level: :off
143
+ style.spaces_after_comma 1, level: :warn
144
+ style.spaces_after_lbrace 1, level: :warn
145
+ style.spaces_after_lbracket 0, level: :warn
146
+ style.spaces_after_lparen 0, level: :warn
147
+ style.spaces_before_comma 0, level: :warn
148
+ style.spaces_before_lbrace 1, level: :off
149
+ style.spaces_before_rbrace 1, level: :warn
150
+ style.spaces_before_rbracket 0, level: :warn
151
+ style.spaces_before_rparen 0, level: :warn
152
+ style.spaces_in_empty_braces 0, level: :warn
153
+ style.trailing_newlines 1, level: :error
154
+ style.allow_unnecessary_double_quotes true, level: :warn
155
+ end
156
+
157
+ config.file_set 'spec/**/*.rb', :specs do |style|
158
+ style.allow_camel_case_methods false, level: :error
159
+ style.allow_hard_tabs false, level: :error
160
+ style.allow_screaming_snake_case_classes false, level: :error
161
+ style.allow_trailing_line_spaces false, level: :error
162
+ style.allow_invalid_ruby false, level: :error
163
+ style.indentation_spaces 2, level: :off
164
+ style.max_code_lines_in_class 300, level: :off
165
+ style.max_code_lines_in_method 30, level: :off
166
+ style.max_line_length 80, level: :off
167
+ style.spaces_after_comma 1, level: :warn
168
+ style.spaces_after_lbrace 1, level: :warn
169
+ style.spaces_after_lbracket 0, level: :warn
170
+ style.spaces_after_lparen 0, level: :warn
171
+ style.spaces_before_comma 0, level: :warn
172
+ style.spaces_before_lbrace 1, level: :off
173
+ style.spaces_before_rbrace 1, level: :warn
174
+ style.spaces_before_rbracket 0, level: :warn
175
+ style.spaces_before_rparen 0, level: :warn
176
+ style.spaces_in_empty_braces 0, level: :warn
177
+ style.trailing_newlines 1, level: :error
178
+ style.allow_unnecessary_double_quotes true, level: :warn
179
+ end
180
+ end
data/.yardopts ADDED
@@ -0,0 +1 @@
1
+ --files CHANGELOG.md