additional_tags 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.github/workflows/brakeman.yml +38 -0
- data/.github/workflows/linters.yml +41 -0
- data/.github/workflows/tests.yml +139 -0
- data/.gitignore +8 -0
- data/.rubocop.yml +75 -0
- data/.slim-lint.yml +25 -0
- data/.stylelintrc.json +163 -0
- data/LICENSE +339 -0
- data/README.md +126 -0
- data/Rakefile +11 -0
- data/additional_tags.gemspec +28 -0
- data/app/controllers/additional_tags_controller.rb +80 -0
- data/app/controllers/issue_tags_controller.rb +48 -0
- data/app/helpers/additional_tags_helper.rb +197 -0
- data/app/helpers/additional_tags_issues_helper.rb +43 -0
- data/app/helpers/additional_tags_wiki_helper.rb +17 -0
- data/app/jobs/additional_tags_job.rb +3 -0
- data/app/jobs/additional_tags_remove_unused_tag_job.rb +5 -0
- data/app/models/migrate_tag.rb +4 -0
- data/app/models/migrate_tagging.rb +5 -0
- data/app/views/additional_tags/_html_head.html.slim +6 -0
- data/app/views/additional_tags/_tag_list.html.slim +35 -0
- data/app/views/additional_tags/context_menu.html.slim +16 -0
- data/app/views/additional_tags/edit.html.slim +14 -0
- data/app/views/additional_tags/merge.html.slim +17 -0
- data/app/views/additional_tags/settings/_general.html.slim +45 -0
- data/app/views/additional_tags/settings/_manage_tags.html.slim +35 -0
- data/app/views/additional_tags/settings/_settings.html.slim +9 -0
- data/app/views/auto_completes/_additional_tag_list.slim +1 -0
- data/app/views/context_menus/_issues_tags.html.slim +10 -0
- data/app/views/issue_tags/_edit_modal.html.slim +30 -0
- data/app/views/issue_tags/edit.js.erb +2 -0
- data/app/views/issues/_tags.html.slim +8 -0
- data/app/views/issues/_tags_bulk_edit.html.slim +7 -0
- data/app/views/issues/_tags_form.html.slim +11 -0
- data/app/views/issues/_tags_form_details.html.slim +7 -0
- data/app/views/issues/_tags_sidebar.html.slim +5 -0
- data/app/views/reports/_tags_simple.html.slim +11 -0
- data/app/views/wiki/_tags_form.html.slim +7 -0
- data/app/views/wiki/_tags_form_bottom.html.slim +5 -0
- data/app/views/wiki/_tags_show.html.slim +9 -0
- data/app/views/wiki/_tags_sidebar.html.slim +4 -0
- data/app/views/wiki/tag_index.html.slim +21 -0
- data/assets/javascripts/tags.js +19 -0
- data/assets/stylesheets/tags.css +119 -0
- data/config/locales/bg.yml +33 -0
- data/config/locales/cs.yml +33 -0
- data/config/locales/de.yml +33 -0
- data/config/locales/en.yml +33 -0
- data/config/locales/es.yml +33 -0
- data/config/locales/fr.yml +33 -0
- data/config/locales/it.yml +33 -0
- data/config/locales/ja.yml +33 -0
- data/config/locales/ko.yml +33 -0
- data/config/locales/pl.yml +33 -0
- data/config/locales/pt-BR.yml +33 -0
- data/config/locales/ru.yml +33 -0
- data/config/routes.rb +31 -0
- data/config/settings.yml +9 -0
- data/db/migrate/20201116145429_acts_as_taggable_migration.rb +40 -0
- data/db/migrate/20201123093214_migrate_existing_tags.rb +39 -0
- data/doc/images/additional-tags-framework.png +0 -0
- data/doc/images/additional-tags.gif +0 -0
- data/init.rb +31 -0
- data/lib/additional_tags.rb +107 -0
- data/lib/additional_tags/hooks.rb +63 -0
- data/lib/additional_tags/patches/agile_boards_controller_patch.rb +14 -0
- data/lib/additional_tags/patches/agile_query_patch.rb +41 -0
- data/lib/additional_tags/patches/agile_versions_controller_patch.rb +14 -0
- data/lib/additional_tags/patches/agile_versions_query_patch.rb +11 -0
- data/lib/additional_tags/patches/auto_completes_controller_patch.rb +42 -0
- data/lib/additional_tags/patches/calendars_controller_patch.rb +14 -0
- data/lib/additional_tags/patches/dashboard_async_blocks_controller_patch.rb +11 -0
- data/lib/additional_tags/patches/dashboards_controller_patch.rb +11 -0
- data/lib/additional_tags/patches/gantts_controller_patch.rb +14 -0
- data/lib/additional_tags/patches/imports_controller_patch.rb +12 -0
- data/lib/additional_tags/patches/issue_patch.rb +95 -0
- data/lib/additional_tags/patches/issue_query_patch.rb +55 -0
- data/lib/additional_tags/patches/issues_controller_patch.rb +14 -0
- data/lib/additional_tags/patches/journal_patch.rb +18 -0
- data/lib/additional_tags/patches/my_controller_patch.rb +14 -0
- data/lib/additional_tags/patches/queries_helper_patch.rb +40 -0
- data/lib/additional_tags/patches/reports_controller_patch.rb +32 -0
- data/lib/additional_tags/patches/settings_controller_patch.rb +12 -0
- data/lib/additional_tags/patches/time_entry_patch.rb +19 -0
- data/lib/additional_tags/patches/time_entry_query_patch.rb +53 -0
- data/lib/additional_tags/patches/time_report_patch.rb +46 -0
- data/lib/additional_tags/patches/timelog_controller_patch.rb +14 -0
- data/lib/additional_tags/patches/wiki_controller_patch.rb +63 -0
- data/lib/additional_tags/patches/wiki_page_patch.rb +39 -0
- data/lib/additional_tags/tags.rb +134 -0
- data/lib/additional_tags/version.rb +3 -0
- metadata +177 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 743d2eba1f678392ca6d7197ef8ac31cc7b6ee05c183f7b74eba826510ecaf72
|
4
|
+
data.tar.gz: '09edc2c9f4990f6437b299e3495cb925f1eaefa47011ea49289d3e509273a72f'
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: edc36542d6caedfb732258d6431363954c44704f9ccafbb69d308ebd372e86824b90975f82fdbfb441f8b4c3c17833e020477dce1dd33a687054e527fbf9b5de
|
7
|
+
data.tar.gz: fd341693f9dbe550a2587aa60220a95c20c1b1b2a2e0ecd34226abcabf15d084ca044063e93d8ac7280d9546d6c0b1626f7cd02954c83b8c415e2b779f65b78c
|
@@ -0,0 +1,38 @@
|
|
1
|
+
name: Run Brakeman
|
2
|
+
|
3
|
+
on: [push]
|
4
|
+
|
5
|
+
jobs:
|
6
|
+
build:
|
7
|
+
|
8
|
+
runs-on: ubuntu-latest
|
9
|
+
|
10
|
+
steps:
|
11
|
+
- uses: actions/checkout@v2
|
12
|
+
|
13
|
+
- name: Install package dependencies
|
14
|
+
run: >
|
15
|
+
sudo apt-get install --yes --quiet
|
16
|
+
pandoc
|
17
|
+
|
18
|
+
- name: Set up Ruby 2.6
|
19
|
+
uses: actions/setup-ruby@v1
|
20
|
+
with:
|
21
|
+
ruby-version: 2.6.x
|
22
|
+
|
23
|
+
- name: Set Gemfile
|
24
|
+
run: |
|
25
|
+
echo "source 'https://rubygems.org'" > Gemfile
|
26
|
+
echo "group :test do" >> Gemfile
|
27
|
+
echo " gem 'brakeman', require: false" >> Gemfile
|
28
|
+
echo " gem 'pandoc-ruby', require: false" >> Gemfile
|
29
|
+
echo "end">> Gemfile
|
30
|
+
|
31
|
+
- name: Setup gems
|
32
|
+
run: |
|
33
|
+
gem install bundler
|
34
|
+
bundle install --jobs 4 --retry 3
|
35
|
+
|
36
|
+
- name: Run Brakeman
|
37
|
+
run: |
|
38
|
+
bundle exec brakeman -5
|
@@ -0,0 +1,41 @@
|
|
1
|
+
name: Run Linters
|
2
|
+
on:
|
3
|
+
push:
|
4
|
+
pull_request:
|
5
|
+
|
6
|
+
jobs:
|
7
|
+
test:
|
8
|
+
runs-on: ubuntu-latest
|
9
|
+
|
10
|
+
steps:
|
11
|
+
- uses: actions/checkout@v1
|
12
|
+
|
13
|
+
- name: Set up Ruby 2.6
|
14
|
+
uses: actions/setup-ruby@v1
|
15
|
+
with:
|
16
|
+
ruby-version: 2.6.x
|
17
|
+
|
18
|
+
- name: Set Gemfile
|
19
|
+
run: |
|
20
|
+
echo "source 'https://rubygems.org'" > Gemfile
|
21
|
+
echo "group :test do" >> Gemfile
|
22
|
+
echo " gem 'pandoc-ruby', require: false" >> Gemfile
|
23
|
+
echo " gem 'rubocop', require: false" >> Gemfile
|
24
|
+
echo " gem 'rubocop-performance', require: false" >> Gemfile
|
25
|
+
echo " gem 'rubocop-rails', require: false" >> Gemfile
|
26
|
+
echo " gem 'slim_lint', require: false" >> Gemfile
|
27
|
+
echo "end" >> Gemfile
|
28
|
+
|
29
|
+
- name: Setup gems
|
30
|
+
run: |
|
31
|
+
gem install bundler
|
32
|
+
bundle install --jobs 4 --retry 3
|
33
|
+
|
34
|
+
- name: Run RuboCop
|
35
|
+
run: |
|
36
|
+
bundle exec rubocop -S
|
37
|
+
|
38
|
+
- name: Run Slim-Lint
|
39
|
+
run: |
|
40
|
+
bundle exec slim-lint app/views
|
41
|
+
if: always()
|
@@ -0,0 +1,139 @@
|
|
1
|
+
name: Tests
|
2
|
+
on:
|
3
|
+
push:
|
4
|
+
pull_request:
|
5
|
+
|
6
|
+
jobs:
|
7
|
+
test:
|
8
|
+
name: ${{ matrix.redmine }} ${{ matrix.db }} ruby-${{ matrix.ruby }}
|
9
|
+
runs-on: ubuntu-latest
|
10
|
+
|
11
|
+
strategy:
|
12
|
+
matrix:
|
13
|
+
ruby: ['2.6', '2.4']
|
14
|
+
redmine: ['4.1-stable', 'master']
|
15
|
+
db: ['postgres', 'mysql']
|
16
|
+
fail-fast: false
|
17
|
+
|
18
|
+
services:
|
19
|
+
postgres:
|
20
|
+
image: postgres:13
|
21
|
+
env:
|
22
|
+
POSTGRES_DB: redmine
|
23
|
+
POSTGRES_USER: postgres
|
24
|
+
POSTGRES_PASSWORD: postgres
|
25
|
+
ports:
|
26
|
+
- 5432:5432
|
27
|
+
|
28
|
+
options: >-
|
29
|
+
--health-cmd pg_isready
|
30
|
+
--health-interval 10s
|
31
|
+
--health-timeout 5s
|
32
|
+
--health-retries 5
|
33
|
+
|
34
|
+
mysql:
|
35
|
+
image: mysql:5.7
|
36
|
+
env:
|
37
|
+
MYSQL_USER: root
|
38
|
+
MYSQL_PASSWORD: ''
|
39
|
+
MYSQL_ALLOW_EMPTY_PASSWORD: yes
|
40
|
+
ports:
|
41
|
+
- 3306:3306
|
42
|
+
options: >-
|
43
|
+
--health-cmd="mysqladmin ping"
|
44
|
+
--health-interval=10s
|
45
|
+
--health-timeout=5s
|
46
|
+
--health-retries=3
|
47
|
+
|
48
|
+
steps:
|
49
|
+
- name: Verify MySQL connection from host
|
50
|
+
run: |
|
51
|
+
mysql --host 127.0.0.1 --port 3306 -uroot -e "SHOW DATABASES"
|
52
|
+
if: matrix.db == 'mysql'
|
53
|
+
|
54
|
+
- name: Checkout Redmine
|
55
|
+
uses: actions/checkout@v2
|
56
|
+
with:
|
57
|
+
repository: redmine/redmine
|
58
|
+
ref: ${{ matrix.redmine }}
|
59
|
+
path: redmine
|
60
|
+
|
61
|
+
- name: Checkout additionals
|
62
|
+
uses: actions/checkout@v2
|
63
|
+
with:
|
64
|
+
repository: AlphaNodes/additionals
|
65
|
+
path: redmine/plugins/additionals
|
66
|
+
|
67
|
+
- name: Checkout additional_tags
|
68
|
+
uses: actions/checkout@v2
|
69
|
+
with:
|
70
|
+
path: redmine/plugins/additional_tags
|
71
|
+
|
72
|
+
- name: Update package archives
|
73
|
+
run: sudo apt-get update --yes --quiet
|
74
|
+
|
75
|
+
- name: Install package dependencies
|
76
|
+
run: >
|
77
|
+
sudo apt-get install --yes --quiet
|
78
|
+
build-essential
|
79
|
+
cmake
|
80
|
+
libicu-dev
|
81
|
+
libpq-dev
|
82
|
+
libmysqlclient-dev
|
83
|
+
|
84
|
+
- name: Setup Ruby
|
85
|
+
uses: actions/setup-ruby@v1
|
86
|
+
with:
|
87
|
+
ruby-version: ${{ matrix.ruby }}
|
88
|
+
|
89
|
+
- name: Setup Cache
|
90
|
+
uses: actions/cache@v1
|
91
|
+
with:
|
92
|
+
path: vendor
|
93
|
+
key: v1-ruby-${{ matrix.ruby }}-redmine-${{ matrix.redmine }}
|
94
|
+
|
95
|
+
- name: Setup Bundler
|
96
|
+
run: |
|
97
|
+
gem install bundler -v '~> 1.0'
|
98
|
+
bundle config path "$(pwd)/vendor/bundle"
|
99
|
+
|
100
|
+
- name: Prepare Redmine source
|
101
|
+
working-directory: redmine
|
102
|
+
run: |
|
103
|
+
sed -i '/rubocop/d' Gemfile
|
104
|
+
rm -f .rubocop*
|
105
|
+
cp plugins/additional_tags/test/support/database-${{ matrix.db }}.yml config/database.yml
|
106
|
+
cp plugins/additional_tags/test/support/configuration.yml config/configuration.yml
|
107
|
+
|
108
|
+
- name: Install Ruby dependencies
|
109
|
+
working-directory: redmine
|
110
|
+
run: |
|
111
|
+
bundle install --jobs=4 --retry=3 --without development
|
112
|
+
|
113
|
+
- name: Generate session store secret
|
114
|
+
env:
|
115
|
+
RAILS_ENV: test
|
116
|
+
working-directory: redmine
|
117
|
+
run: |
|
118
|
+
bundle exec rake generate_secret_token
|
119
|
+
|
120
|
+
- name: Run Redmine DB and migration tasks
|
121
|
+
env:
|
122
|
+
RAILS_ENV: test
|
123
|
+
working-directory: redmine
|
124
|
+
run: |
|
125
|
+
bundle exec rake db:create db:migrate redmine:plugins:migrate
|
126
|
+
|
127
|
+
- name: Run tests
|
128
|
+
env:
|
129
|
+
RAILS_ENV: test
|
130
|
+
REDMINE_VERSION: ${{ matrix.redmine }}
|
131
|
+
working-directory: redmine
|
132
|
+
run: bundle exec rake redmine:plugins:test NAME=additional_tags RUBYOPT="-W0"
|
133
|
+
|
134
|
+
- name: Run uninstall test
|
135
|
+
env:
|
136
|
+
RAILS_ENV: test
|
137
|
+
REDMINE_VERSION: ${{ matrix.redmine }}
|
138
|
+
working-directory: redmine
|
139
|
+
run: bundle exec rake redmine:plugins:migrate NAME=additional_tags VERSION=0
|
data/.gitignore
ADDED
data/.rubocop.yml
ADDED
@@ -0,0 +1,75 @@
|
|
1
|
+
require:
|
2
|
+
- rubocop-performance
|
3
|
+
- rubocop-rails
|
4
|
+
|
5
|
+
Rails:
|
6
|
+
Enabled: true
|
7
|
+
|
8
|
+
AllCops:
|
9
|
+
TargetRubyVersion: 2.4
|
10
|
+
TargetRailsVersion: 5.2
|
11
|
+
NewCops: enable
|
12
|
+
|
13
|
+
Metrics/AbcSize:
|
14
|
+
Enabled: false
|
15
|
+
|
16
|
+
Metrics/BlockLength:
|
17
|
+
Enabled: false
|
18
|
+
|
19
|
+
Metrics/ClassLength:
|
20
|
+
Enabled: false
|
21
|
+
|
22
|
+
Metrics/CyclomaticComplexity:
|
23
|
+
Max: 25
|
24
|
+
|
25
|
+
Layout/LineLength:
|
26
|
+
Max: 140
|
27
|
+
|
28
|
+
Metrics/MethodLength:
|
29
|
+
Max: 60
|
30
|
+
|
31
|
+
Metrics/ModuleLength:
|
32
|
+
Enabled: false
|
33
|
+
|
34
|
+
Metrics/PerceivedComplexity:
|
35
|
+
Max: 25
|
36
|
+
|
37
|
+
Rails/ApplicationJob:
|
38
|
+
Enabled: false
|
39
|
+
|
40
|
+
Rails/ApplicationRecord:
|
41
|
+
Enabled: false
|
42
|
+
|
43
|
+
Rails/CreateTableWithTimestamps:
|
44
|
+
Enabled: false
|
45
|
+
|
46
|
+
Rails/HelperInstanceVariable:
|
47
|
+
Enabled: false
|
48
|
+
|
49
|
+
Rails/SkipsModelValidations:
|
50
|
+
Enabled: false
|
51
|
+
|
52
|
+
Performance/ChainArrayAllocation:
|
53
|
+
Enabled: true
|
54
|
+
|
55
|
+
Style/AutoResourceCleanup:
|
56
|
+
Enabled: true
|
57
|
+
|
58
|
+
Style/FrozenStringLiteralComment:
|
59
|
+
Enabled: false
|
60
|
+
|
61
|
+
Style/Documentation:
|
62
|
+
Enabled: false
|
63
|
+
|
64
|
+
# required for travis/ci (symbolic links problem)
|
65
|
+
Style/ExpandPathArguments:
|
66
|
+
Enabled: false
|
67
|
+
|
68
|
+
Style/HashTransformKeys:
|
69
|
+
Enabled: false
|
70
|
+
|
71
|
+
Style/HashTransformValues:
|
72
|
+
Enabled: false
|
73
|
+
|
74
|
+
Naming/VariableNumber:
|
75
|
+
Enabled: false
|
data/.slim-lint.yml
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
linters:
|
2
|
+
LineLength:
|
3
|
+
max: 140
|
4
|
+
RuboCop:
|
5
|
+
ignored_cops:
|
6
|
+
- Layout/ArgumentAlignment
|
7
|
+
- Layout/ArrayAlignment
|
8
|
+
- Layout/BlockEndNewline
|
9
|
+
- Layout/EmptyLineAfterGuardClause
|
10
|
+
- Layout/HashAlignment
|
11
|
+
- Layout/IndentationWidth
|
12
|
+
- Layout/MultilineArrayBraceLayout
|
13
|
+
- Layout/MultilineAssignmentLayout
|
14
|
+
- Layout/MultilineBlockLayout
|
15
|
+
- Layout/MultilineHashBraceLayout
|
16
|
+
- Layout/MultilineMethodCallBraceLayout
|
17
|
+
- Layout/MultilineMethodCallIndentation
|
18
|
+
- Layout/MultilineMethodDefinitionBraceLayout
|
19
|
+
- Layout/MultilineOperationIndentation
|
20
|
+
- Layout/TrailingEmptyLines
|
21
|
+
- Lint/Void
|
22
|
+
- Rails/OutputSafety
|
23
|
+
- Style/IfUnlessModifier
|
24
|
+
- Style/WhileUntilModifier
|
25
|
+
- Style/Next
|
data/.stylelintrc.json
ADDED
@@ -0,0 +1,163 @@
|
|
1
|
+
{
|
2
|
+
"rules": {
|
3
|
+
"at-rule-no-unknown": true,
|
4
|
+
"block-no-empty": true,
|
5
|
+
"color-no-invalid-hex": true,
|
6
|
+
"comment-no-empty": true,
|
7
|
+
"declaration-block-no-duplicate-properties": [
|
8
|
+
true,
|
9
|
+
{
|
10
|
+
"ignore": [
|
11
|
+
"consecutive-duplicates-with-different-values"
|
12
|
+
]
|
13
|
+
}
|
14
|
+
],
|
15
|
+
"declaration-block-no-redundant-longhand-properties": true,
|
16
|
+
"declaration-block-no-shorthand-property-overrides": true,
|
17
|
+
"font-family-no-duplicate-names": true,
|
18
|
+
"font-family-no-missing-generic-family-keyword": true,
|
19
|
+
"function-calc-no-unspaced-operator": true,
|
20
|
+
"function-linear-gradient-no-nonstandard-direction": true,
|
21
|
+
"keyframe-declaration-no-important": true,
|
22
|
+
"media-feature-name-no-unknown": true,
|
23
|
+
"no-descending-specificity": true,
|
24
|
+
"no-duplicate-at-import-rules": true,
|
25
|
+
"no-duplicate-selectors": true,
|
26
|
+
"no-empty-source": true,
|
27
|
+
"no-extra-semicolons": true,
|
28
|
+
"no-invalid-double-slash-comments": true,
|
29
|
+
"property-no-unknown": true,
|
30
|
+
"selector-pseudo-class-no-unknown": true,
|
31
|
+
"selector-pseudo-element-no-unknown": true,
|
32
|
+
"selector-type-no-unknown": true,
|
33
|
+
"string-no-newline": true,
|
34
|
+
"unit-no-unknown": true,
|
35
|
+
"at-rule-empty-line-before": [
|
36
|
+
"always",
|
37
|
+
{
|
38
|
+
"except": [
|
39
|
+
"blockless-after-same-name-blockless",
|
40
|
+
"first-nested"
|
41
|
+
],
|
42
|
+
"ignore": [
|
43
|
+
"after-comment"
|
44
|
+
]
|
45
|
+
}
|
46
|
+
],
|
47
|
+
"at-rule-name-case": "lower",
|
48
|
+
"at-rule-name-space-after": "always-single-line",
|
49
|
+
"at-rule-semicolon-newline-after": "always",
|
50
|
+
"block-closing-brace-empty-line-before": "never",
|
51
|
+
"block-closing-brace-newline-after": "always",
|
52
|
+
"block-closing-brace-newline-before": "always-multi-line",
|
53
|
+
"block-closing-brace-space-before": "always-single-line",
|
54
|
+
"block-opening-brace-newline-after": "always-multi-line",
|
55
|
+
"block-opening-brace-space-after": "always-single-line",
|
56
|
+
"block-opening-brace-space-before": "always",
|
57
|
+
"color-hex-case": "lower",
|
58
|
+
"color-hex-length": "short",
|
59
|
+
"comment-empty-line-before": [
|
60
|
+
"always",
|
61
|
+
{
|
62
|
+
"except": [
|
63
|
+
"first-nested"
|
64
|
+
],
|
65
|
+
"ignore": [
|
66
|
+
"stylelint-commands"
|
67
|
+
]
|
68
|
+
}
|
69
|
+
],
|
70
|
+
"comment-whitespace-inside": "always",
|
71
|
+
"custom-property-empty-line-before": [
|
72
|
+
"always",
|
73
|
+
{
|
74
|
+
"except": [
|
75
|
+
"after-custom-property",
|
76
|
+
"first-nested"
|
77
|
+
],
|
78
|
+
"ignore": [
|
79
|
+
"after-comment",
|
80
|
+
"inside-single-line-block"
|
81
|
+
]
|
82
|
+
}
|
83
|
+
],
|
84
|
+
"declaration-bang-space-after": "never",
|
85
|
+
"declaration-bang-space-before": "always",
|
86
|
+
"declaration-block-semicolon-newline-after": "always-multi-line",
|
87
|
+
"declaration-block-semicolon-space-after": "always-single-line",
|
88
|
+
"declaration-block-semicolon-space-before": "never",
|
89
|
+
"declaration-block-single-line-max-declarations": 1,
|
90
|
+
"declaration-block-trailing-semicolon": "always",
|
91
|
+
"declaration-colon-newline-after": "always-multi-line",
|
92
|
+
"declaration-colon-space-after": "always-single-line",
|
93
|
+
"declaration-colon-space-before": "never",
|
94
|
+
"declaration-empty-line-before": [
|
95
|
+
"always",
|
96
|
+
{
|
97
|
+
"except": [
|
98
|
+
"after-declaration",
|
99
|
+
"first-nested"
|
100
|
+
],
|
101
|
+
"ignore": [
|
102
|
+
"after-comment",
|
103
|
+
"inside-single-line-block"
|
104
|
+
]
|
105
|
+
}
|
106
|
+
],
|
107
|
+
"function-comma-newline-after": "always-multi-line",
|
108
|
+
"function-comma-space-after": "always-single-line",
|
109
|
+
"function-comma-space-before": "never",
|
110
|
+
"function-max-empty-lines": 0,
|
111
|
+
"function-name-case": "lower",
|
112
|
+
"function-parentheses-newline-inside": "always-multi-line",
|
113
|
+
"function-parentheses-space-inside": "never-single-line",
|
114
|
+
"function-whitespace-after": "always",
|
115
|
+
"indentation": 2,
|
116
|
+
"length-zero-no-unit": true,
|
117
|
+
"max-empty-lines": 1,
|
118
|
+
"media-feature-colon-space-after": "always",
|
119
|
+
"media-feature-colon-space-before": "never",
|
120
|
+
"media-feature-name-case": "lower",
|
121
|
+
"media-feature-parentheses-space-inside": "never",
|
122
|
+
"media-feature-range-operator-space-after": "always",
|
123
|
+
"media-feature-range-operator-space-before": "always",
|
124
|
+
"media-query-list-comma-newline-after": "always-multi-line",
|
125
|
+
"media-query-list-comma-space-after": "always-single-line",
|
126
|
+
"media-query-list-comma-space-before": "never",
|
127
|
+
"no-eol-whitespace": true,
|
128
|
+
"no-missing-end-of-source-newline": true,
|
129
|
+
"number-leading-zero": "always",
|
130
|
+
"number-no-trailing-zeros": true,
|
131
|
+
"property-case": "lower",
|
132
|
+
"rule-empty-line-before": [
|
133
|
+
"always-multi-line",
|
134
|
+
{
|
135
|
+
"except": [
|
136
|
+
"first-nested"
|
137
|
+
],
|
138
|
+
"ignore": [
|
139
|
+
"after-comment"
|
140
|
+
]
|
141
|
+
}
|
142
|
+
],
|
143
|
+
"selector-attribute-brackets-space-inside": "never",
|
144
|
+
"selector-attribute-operator-space-after": "never",
|
145
|
+
"selector-attribute-operator-space-before": "never",
|
146
|
+
"selector-combinator-space-after": "always",
|
147
|
+
"selector-combinator-space-before": "always",
|
148
|
+
"selector-descendant-combinator-no-non-space": true,
|
149
|
+
"selector-list-comma-newline-after": "always",
|
150
|
+
"selector-list-comma-space-before": "never",
|
151
|
+
"selector-max-empty-lines": 0,
|
152
|
+
"selector-pseudo-class-case": "lower",
|
153
|
+
"selector-pseudo-class-parentheses-space-inside": "never",
|
154
|
+
"selector-pseudo-element-case": "lower",
|
155
|
+
"selector-pseudo-element-colon-notation": "double",
|
156
|
+
"selector-type-case": "lower",
|
157
|
+
"unit-case": "lower",
|
158
|
+
"value-list-comma-newline-after": "always-multi-line",
|
159
|
+
"value-list-comma-space-after": "always-single-line",
|
160
|
+
"value-list-comma-space-before": "never",
|
161
|
+
"value-list-max-empty-lines": 0
|
162
|
+
}
|
163
|
+
}
|