From 212fbefbed83f34e89a33fb2cd7a2b0bfa278403 Mon Sep 17 00:00:00 2001
From: Nick Schonning
Date: Thu, 7 Feb 2019 01:22:21 -0500
Subject: [PATCH 1/5] chore: Add ECLint to build
---
.editorconfig | 30 +-
.travis.yml | 11 +-
package-lock.json | 1478 ++++++++++++++++++++++++++++++++++++++++++---
package.json | 6 +-
4 files changed, 1428 insertions(+), 97 deletions(-)
diff --git a/.editorconfig b/.editorconfig
index ac366c2006..f6177bc58d 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -11,17 +11,37 @@
# Set to false if aria repo gets one.
root = true
-
-# Unix-style newlines with a newline ending every file
-[*]
+[*.{html,css,js}]
charset = "utf-8"
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
-
-[*.{html,css,js}]
indent_style = space
indent_size = 2
+block_comment_start = /*
+block_comment = *
+block_comment_end = */
[*.md]
+charset = "utf-8"
+end_of_line = lf
+insert_final_newline = true
trim_trailing_whitespace = false
+
+# Ignore third party content
+[{/common/**,/examples/landmarks/js/visua11y.js,/examples/landmarks/css/bootstrap.css,/examples/landmarks/css/bootstrap-accessibility.css,/examples/menubar/menubar-1/images/separator.paint}]
+charset = unset
+end_of_line = unset
+insert_final_newline = unset
+trim_trailing_whitespace = unset
+indent_style = unset
+indent_size = unset
+
+# Ignore minfied files
+[*.{min.js,pack.js}]
+charset = unset
+end_of_line = unset
+insert_final_newline = unset
+trim_trailing_whitespace = unset
+indent_style = unset
+indent_size = unset
diff --git a/.travis.yml b/.travis.yml
index e8449626fb..172d7d45b0 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -28,16 +28,9 @@ jobs:
- stage: Test
name: HTML Linting
script: npm run vnu-jar
-
- - stage: Test
- name: AVA Regression Tests
- script: ava -c 1 test/tests
- env: TEST_WAIT_TIME=1000
- stage: Test
- name: Regression Tests Coverage Report
- script: node test/util/report.js
- env: ALLOW_FAILURE=true
-
+ name: EditorConfig Linting
+ script: npm run lint:ec
- stage: Deploy
if: branch = master AND type != pull_request
script: skip
diff --git a/package-lock.json b/package-lock.json
index 709a001870..b818c63fa3 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -506,6 +506,12 @@
"integrity": "sha512-R4Dvw6KjSYn/SpvjRchBOwXr14vVVcFXCtnM3f0aLvlJS8a599rrcEoihcP2/+Z/f75E5GNPd4aWM7j1yei9og==",
"dev": true
},
+ "@types/semver": {
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/@types/semver/-/semver-5.5.0.tgz",
+ "integrity": "sha512-41qEJgBH/TWgo5NFSvBCJ1qkoi3Q6ONSF2avrHq1LVEZfYpdHmj0y9SuTK+u9ZhG1sYQKBL1AWXKyLWP4RaUoQ==",
+ "dev": true
+ },
"@types/unist": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.2.tgz",
@@ -598,12 +604,48 @@
"string-width": "^2.0.0"
}
},
+ "ansi-colors": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz",
+ "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==",
+ "dev": true,
+ "requires": {
+ "ansi-wrap": "^0.1.0"
+ }
+ },
+ "ansi-cyan": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz",
+ "integrity": "sha1-U4rlKK+JgvKK4w2G8vF0VtJgmHM=",
+ "dev": true,
+ "requires": {
+ "ansi-wrap": "0.1.0"
+ }
+ },
"ansi-escapes": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz",
- "integrity": "sha1-9zIHu4EgfXX9bIPxJa8m7qN4yjA=",
+ "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==",
"dev": true
},
+ "ansi-gray": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz",
+ "integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=",
+ "dev": true,
+ "requires": {
+ "ansi-wrap": "0.1.0"
+ }
+ },
+ "ansi-red": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz",
+ "integrity": "sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw=",
+ "dev": true,
+ "requires": {
+ "ansi-wrap": "0.1.0"
+ }
+ },
"ansi-regex": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
@@ -616,6 +658,12 @@
"integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
"dev": true
},
+ "ansi-wrap": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz",
+ "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=",
+ "dev": true
+ },
"any-observable": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/any-observable/-/any-observable-0.3.0.tgz",
@@ -632,10 +680,19 @@
"normalize-path": "^2.0.0"
}
},
+ "append-buffer": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/append-buffer/-/append-buffer-1.0.2.tgz",
+ "integrity": "sha1-2CIM9GYIFSXv6lBhTz3mUU36WPE=",
+ "dev": true,
+ "requires": {
+ "buffer-equal": "^1.0.0"
+ }
+ },
"argparse": {
"version": "1.0.10",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
- "integrity": "sha1-vNZ5HqWuCXJeF+WtmIE0zUCz2RE=",
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
"dev": true,
"requires": {
"sprintf-js": "~1.0.2"
@@ -659,7 +716,7 @@
"arr-flatten": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
- "integrity": "sha1-NgSLv/TntH4TZkQxbJlmnqWukfE=",
+ "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
"dev": true
},
"arr-union": {
@@ -680,6 +737,12 @@
"integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
"dev": true
},
+ "array-slice": {
+ "version": "0.2.3",
+ "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz",
+ "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=",
+ "dev": true
+ },
"array-union": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
@@ -902,6 +965,16 @@
"write-pkg": "^3.1.0"
}
},
+ "axios": {
+ "version": "0.18.0",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-0.18.0.tgz",
+ "integrity": "sha1-MtU+SFHv3AoRmTts0AB4nXDAUQI=",
+ "dev": true,
+ "requires": {
+ "follow-redirects": "^1.3.0",
+ "is-buffer": "^1.1.5"
+ }
+ },
"babel-code-frame": {
"version": "6.26.0",
"resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
@@ -1446,6 +1519,12 @@
}
}
},
+ "bignumber.js": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-2.4.0.tgz",
+ "integrity": "sha1-g4qZLan51zfg9LLbC+YrsJ3Qxeg=",
+ "dev": true
+ },
"binary-extensions": {
"version": "1.11.0",
"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz",
@@ -1490,7 +1569,7 @@
"brace-expansion": {
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha1-PH/L9SnYcibz0vUrlm/1Jx60Qd0=",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"dev": true,
"requires": {
"balanced-match": "^1.0.0",
@@ -1525,12 +1604,54 @@
"integrity": "sha1-/vKNqLgROgoNtEMLC2Rntpcws0o=",
"dev": true
},
+ "buffer-equal": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz",
+ "integrity": "sha1-WWFrSYME1Var1GaWayLu2j7KX74=",
+ "dev": true
+ },
+ "buffer-equals": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/buffer-equals/-/buffer-equals-1.0.4.tgz",
+ "integrity": "sha1-A1O1T9B/2VZBcGca5vZrnPENJ/U=",
+ "dev": true
+ },
"buffer-from": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.0.0.tgz",
"integrity": "sha512-83apNb8KK0Se60UE1+4Ukbe3HbfELJ6UlI4ldtOGs7So4KD26orJM8hIY9lxdzP+UpItH1Yh/Y8GUvNFWFFRxA==",
"dev": true
},
+ "buffered-spawn": {
+ "version": "3.3.2",
+ "resolved": "https://registry.npmjs.org/buffered-spawn/-/buffered-spawn-3.3.2.tgz",
+ "integrity": "sha1-l7mEbE5EaqIzILSpTFIJ7dMtrLs=",
+ "dev": true,
+ "requires": {
+ "cross-spawn": "^4.0.0"
+ },
+ "dependencies": {
+ "cross-spawn": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz",
+ "integrity": "sha1-e5JHYhwjrf3ThWAEqCPL45dCTUE=",
+ "dev": true,
+ "requires": {
+ "lru-cache": "^4.0.1",
+ "which": "^1.2.9"
+ }
+ }
+ }
+ },
+ "bufferstreams": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/bufferstreams/-/bufferstreams-2.0.1.tgz",
+ "integrity": "sha512-ZswyIoBfFb3cVDsnZLLj2IDJ/0ppYdil/v2EGlZXvoefO689FokEmFEldhN5dV7R2QBxFneqTJOMIpfqhj+n0g==",
+ "dev": true,
+ "requires": {
+ "readable-stream": "^2.3.6"
+ }
+ },
"builtin-modules": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
@@ -1746,6 +1867,15 @@
"integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=",
"dev": true
},
+ "checkstyle-formatter": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/checkstyle-formatter/-/checkstyle-formatter-1.1.0.tgz",
+ "integrity": "sha1-HEki26xy1nJCz7hedwaRfVWHtRI=",
+ "dev": true,
+ "requires": {
+ "xml-escape": "^1.0.0"
+ }
+ },
"cheerio": {
"version": "1.0.0-rc.2",
"resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.2.tgz",
@@ -1792,7 +1922,7 @@
"circular-json": {
"version": "0.3.3",
"resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz",
- "integrity": "sha1-gVyZ6oT2gJUp0vRXkb34JxE1LWY=",
+ "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==",
"dev": true
},
"class-utils": {
@@ -1873,6 +2003,72 @@
"integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=",
"dev": true
},
+ "cliui": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz",
+ "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==",
+ "dev": true,
+ "requires": {
+ "string-width": "^2.1.1",
+ "strip-ansi": "^4.0.0",
+ "wrap-ansi": "^2.0.0"
+ },
+ "dependencies": {
+ "is-fullwidth-code-point": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
+ "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
+ "dev": true,
+ "requires": {
+ "number-is-nan": "^1.0.0"
+ }
+ },
+ "wrap-ansi": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
+ "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
+ "dev": true,
+ "requires": {
+ "string-width": "^1.0.1",
+ "strip-ansi": "^3.0.1"
+ },
+ "dependencies": {
+ "string-width": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
+ "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
+ "dev": true,
+ "requires": {
+ "code-point-at": "^1.0.0",
+ "is-fullwidth-code-point": "^1.0.0",
+ "strip-ansi": "^3.0.0"
+ }
+ },
+ "strip-ansi": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
+ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^2.0.0"
+ }
+ }
+ }
+ }
+ }
+ },
+ "clone": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz",
+ "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=",
+ "dev": true
+ },
+ "clone-buffer": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz",
+ "integrity": "sha1-4+JbIHrE5wGvch4staFnksrD3Fg=",
+ "dev": true
+ },
"clone-regexp": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/clone-regexp/-/clone-regexp-1.0.1.tgz",
@@ -1883,6 +2079,23 @@
"is-supported-regexp-flag": "^1.0.0"
}
},
+ "clone-stats": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz",
+ "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=",
+ "dev": true
+ },
+ "cloneable-readable": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.2.tgz",
+ "integrity": "sha512-Bq6+4t+lbM8vhTs/Bef5c5AdEMtapp/iFb6+s4/Hh9MVTt8OLKH7ZOOZSCT+Ys7hsHvqv0GuMPJ1lnQJVHvxpg==",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.1",
+ "process-nextick-args": "^2.0.0",
+ "readable-stream": "^2.3.5"
+ }
+ },
"co": {
"version": "4.6.0",
"resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
@@ -1961,6 +2174,12 @@
"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
"dev": true
},
+ "color-support": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz",
+ "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==",
+ "dev": true
+ },
"commander": {
"version": "2.19.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz",
@@ -1994,7 +2213,7 @@
"concat-stream": {
"version": "1.6.2",
"resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
- "integrity": "sha1-kEvfGUzTEi/Gdcd/xKw9T/D9GjQ=",
+ "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
"dev": true,
"requires": {
"buffer-from": "^1.0.0",
@@ -2170,6 +2389,12 @@
"integrity": "sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw==",
"dev": true
},
+ "date-format": {
+ "version": "0.0.2",
+ "resolved": "https://registry.npmjs.org/date-format/-/date-format-0.0.2.tgz",
+ "integrity": "sha1-+v1Ej3IRXvHitzkVWukvK+bCjdE=",
+ "dev": true
+ },
"date-time": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/date-time/-/date-time-0.1.1.tgz",
@@ -2179,7 +2404,7 @@
"debug": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=",
+ "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
"dev": true,
"requires": {
"ms": "2.0.0"
@@ -2231,6 +2456,15 @@
"integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
"dev": true
},
+ "define-properties": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
+ "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
+ "dev": true,
+ "requires": {
+ "object-keys": "^1.0.12"
+ }
+ },
"define-property": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
@@ -2337,7 +2571,7 @@
"doctrine": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
- "integrity": "sha1-XNAfwQFiG0LEzX9dGmYkNxbT850=",
+ "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
"dev": true,
"requires": {
"esutils": "^2.0.2"
@@ -2389,7 +2623,7 @@
"dot-prop": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz",
- "integrity": "sha1-HxngwuGqDjJ5fEl5nyg3rGr2nFc=",
+ "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==",
"dev": true,
"requires": {
"is-obj": "^1.0.0"
@@ -2410,6 +2644,87 @@
"integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=",
"dev": true
},
+ "duplexify": {
+ "version": "3.7.1",
+ "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz",
+ "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==",
+ "dev": true,
+ "requires": {
+ "end-of-stream": "^1.0.0",
+ "inherits": "^2.0.1",
+ "readable-stream": "^2.0.0",
+ "stream-shift": "^1.0.0"
+ }
+ },
+ "eclint": {
+ "version": "2.8.1",
+ "resolved": "https://registry.npmjs.org/eclint/-/eclint-2.8.1.tgz",
+ "integrity": "sha512-0u1UubFXSOgZgXNhuPeliYyTFmjWStVph8JR6uD6NDuxl3xI5VSCsA1KX6/BSYtM9v4wQMifGoNFfN5VlRn4LQ==",
+ "dev": true,
+ "requires": {
+ "editorconfig": "^0.15.2",
+ "file-type": "^10.1.0",
+ "gulp-exclude-gitignore": "^1.2.0",
+ "gulp-filter": "^5.1.0",
+ "gulp-reporter": "^2.9.0",
+ "gulp-tap": "^1.0.1",
+ "linez": "^4.1.4",
+ "lodash": "^4.17.11",
+ "minimatch": "^3.0.4",
+ "os-locale": "^3.0.1",
+ "plugin-error": "^1.0.1",
+ "through2": "^2.0.3",
+ "vinyl": "^2.2.0",
+ "vinyl-fs": "^3.0.3",
+ "yargs": "^12.0.2"
+ },
+ "dependencies": {
+ "lodash": {
+ "version": "4.17.11",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
+ "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
+ "dev": true
+ }
+ }
+ },
+ "editorconfig": {
+ "version": "0.15.2",
+ "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.2.tgz",
+ "integrity": "sha512-GWjSI19PVJAM9IZRGOS+YKI8LN+/sjkSjNyvxL5ucqP9/IqtYNXBaQ/6c/hkPNYQHyOHra2KoXZI/JVpuqwmcQ==",
+ "dev": true,
+ "requires": {
+ "@types/node": "^10.11.7",
+ "@types/semver": "^5.5.0",
+ "commander": "^2.19.0",
+ "lru-cache": "^4.1.3",
+ "semver": "^5.6.0",
+ "sigmund": "^1.0.1"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "10.12.21",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-10.12.21.tgz",
+ "integrity": "sha512-CBgLNk4o3XMnqMc0rhb6lc77IwShMEglz05deDcn2lQxyXEZivfwgYJu7SMha9V5XcrP6qZuevTHV/QrN2vjKQ==",
+ "dev": true
+ },
+ "lru-cache": {
+ "version": "4.1.5",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
+ "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
+ "dev": true,
+ "requires": {
+ "pseudomap": "^1.0.2",
+ "yallist": "^2.1.2"
+ }
+ },
+ "semver": {
+ "version": "5.6.0",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz",
+ "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==",
+ "dev": true
+ }
+ }
+ },
"electron-to-chromium": {
"version": "1.3.113",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.113.tgz",
@@ -2428,6 +2743,17 @@
"integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
"dev": true
},
+ "emphasize": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/emphasize/-/emphasize-2.0.0.tgz",
+ "integrity": "sha512-r5M8UQJaOivabzsee1KoF5C0rqeyWZeV4Y3c9XGzG6RRtuMD4/n8pEzOEzGwVJjobfZD/jOYw+9911/5SPnF7w==",
+ "dev": true,
+ "requires": {
+ "chalk": "^2.4.0",
+ "highlight.js": "~9.12.0",
+ "lowlight": "~1.9.0"
+ }
+ },
"empower-core": {
"version": "0.6.2",
"resolved": "https://registry.npmjs.org/empower-core/-/empower-core-0.6.2.tgz",
@@ -2462,7 +2788,7 @@
"error-ex": {
"version": "1.3.2",
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
- "integrity": "sha1-tKxAZIEH/c3PriQvQovqihTU8b8=",
+ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
"dev": true,
"requires": {
"is-arrayish": "^0.2.1"
@@ -2498,7 +2824,7 @@
"eslint": {
"version": "4.19.1",
"resolved": "https://registry.npmjs.org/eslint/-/eslint-4.19.1.tgz",
- "integrity": "sha1-MtHWU+HZBAiFS/spbwdux+GGowA=",
+ "integrity": "sha512-bT3/1x1EbZB7phzYu7vCr1v3ONuzDtX8WjuM9c0iYxe+cq+pwcKEoQjl7zd3RpC6YOLgnSy3cTN58M2jcoPDIQ==",
"dev": true,
"requires": {
"ajv": "^5.3.0",
@@ -2554,7 +2880,7 @@
"eslint-visitor-keys": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz",
- "integrity": "sha1-PzGA+y4pEBdxastMnW1bXDSmqB0=",
+ "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==",
"dev": true
},
"espower-location-detector": {
@@ -2572,7 +2898,7 @@
"espree": {
"version": "3.5.4",
"resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz",
- "integrity": "sha1-sPRHGHyKi+2US4FaZgvd9d610ac=",
+ "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==",
"dev": true,
"requires": {
"acorn": "^5.5.0",
@@ -2582,7 +2908,7 @@
"esprima": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz",
- "integrity": "sha1-RJnt3NERDgshi6zy+n9/WfVcqAQ=",
+ "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==",
"dev": true
},
"espurify": {
@@ -2597,7 +2923,7 @@
"esquery": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz",
- "integrity": "sha1-QGxRZYsfWZGl+bYrHcJbAOPlxwg=",
+ "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==",
"dev": true,
"requires": {
"estraverse": "^4.0.0"
@@ -2606,7 +2932,7 @@
"esrecurse": {
"version": "4.2.1",
"resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz",
- "integrity": "sha1-AHo7n9vCs7uH5IeeoZyS/b05Qs8=",
+ "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==",
"dev": true,
"requires": {
"estraverse": "^4.1.0"
@@ -2696,7 +3022,7 @@
"external-editor": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz",
- "integrity": "sha1-BFURz9jRM/OEZnPRBHwVTiFK09U=",
+ "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==",
"dev": true,
"requires": {
"chardet": "^0.4.0",
@@ -2713,6 +3039,18 @@
"is-extglob": "^1.0.0"
}
},
+ "fancy-log": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz",
+ "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==",
+ "dev": true,
+ "requires": {
+ "ansi-gray": "^0.1.1",
+ "color-support": "^1.1.3",
+ "parse-node-version": "^1.0.0",
+ "time-stamp": "^1.0.0"
+ }
+ },
"fast-deep-equal": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
@@ -3072,6 +3410,15 @@
"integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
"dev": true
},
+ "fault": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.2.tgz",
+ "integrity": "sha512-o2eo/X2syzzERAtN5LcGbiVQ0WwZSlN3qLtadwAz3X8Bu+XWD16dja/KMsjZLiQr+BLGPDnHGkc4yUJf1Xpkpw==",
+ "dev": true,
+ "requires": {
+ "format": "^0.2.2"
+ }
+ },
"figures": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz",
@@ -3091,6 +3438,12 @@
"object-assign": "^4.0.1"
}
},
+ "file-type": {
+ "version": "10.7.1",
+ "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.7.1.tgz",
+ "integrity": "sha512-kUc4EE9q3MH6kx70KumPOvXLZLEJZzY9phEVg/bKWyGZ+OA9KoKZzFR4HS0yDmNv31sJkdf4hbTERIfplF9OxQ==",
+ "dev": true
+ },
"filename-regex": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz",
@@ -3154,12 +3507,44 @@
"integrity": "sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg==",
"dev": true
},
+ "flush-write-stream": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.0.tgz",
+ "integrity": "sha512-6MHED/cmsyux1G4/Cek2Z776y9t7WCNd3h2h/HW91vFeU7pzMhA8XvAlDhHcanG5IWuIh/xcC7JASY4WQpG6xg==",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.3",
+ "readable-stream": "^3.1.1"
+ },
+ "dependencies": {
+ "readable-stream": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.1.1.tgz",
+ "integrity": "sha512-DkN66hPyqDhnIQ6Jcsvx9bFjhw214O4poMBcIMgPVpQvNy9a0e0Uhg5SqySyDKAmUlwt8LonTBz1ezOnM8pUdA==",
+ "dev": true,
+ "requires": {
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
+ }
+ }
+ }
+ },
"fn-name": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/fn-name/-/fn-name-2.0.1.tgz",
"integrity": "sha1-UhTXU3pNBqSjAcDMJi/rhBiAAuc=",
"dev": true
},
+ "follow-redirects": {
+ "version": "1.6.1",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.6.1.tgz",
+ "integrity": "sha512-t2JCjbzxQpWvbhts3l6SH1DKzSrx8a+SsaVf4h6bG4kOXUuPYS/kg2Lr4gQSb7eemaHqJkOThF1BGyjlUkO1GQ==",
+ "dev": true,
+ "requires": {
+ "debug": "=3.1.0"
+ }
+ },
"for-in": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
@@ -3175,6 +3560,12 @@
"for-in": "^1.0.1"
}
},
+ "format": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz",
+ "integrity": "sha1-1hcBB+nv3E7TDJ3DkBbflCtctYs=",
+ "dev": true
+ },
"fragment-cache": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz",
@@ -3184,6 +3575,27 @@
"map-cache": "^0.2.2"
}
},
+ "fs-extra": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz",
+ "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.2",
+ "jsonfile": "^4.0.0",
+ "universalify": "^0.1.0"
+ }
+ },
+ "fs-mkdirp-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz",
+ "integrity": "sha1-C3gV/DIBxqaeFNuYzgmMFpNSWes=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.11",
+ "through2": "^2.0.3"
+ }
+ },
"fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
@@ -3738,6 +4150,12 @@
}
}
},
+ "function-bind": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
+ "dev": true
+ },
"function-name-support": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/function-name-support/-/function-name-support-0.2.0.tgz",
@@ -3818,6 +4236,12 @@
}
}
},
+ "get-caller-file": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz",
+ "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==",
+ "dev": true
+ },
"get-own-enumerable-property-symbols": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.0.tgz",
@@ -3851,7 +4275,7 @@
"glob": {
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
- "integrity": "sha1-wZyd+aAocC1nhhI4SmVSQExjbRU=",
+ "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
"dev": true,
"requires": {
"fs.realpath": "^1.0.0",
@@ -3881,34 +4305,79 @@
"is-glob": "^2.0.0"
}
},
- "glob-to-regexp": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz",
- "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=",
- "dev": true
- },
- "global-dirs": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz",
- "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=",
- "dev": true,
- "requires": {
- "ini": "^1.3.4"
- }
- },
- "global-modules": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz",
- "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==",
- "dev": true,
- "requires": {
- "global-prefix": "^3.0.0"
- }
- },
- "global-prefix": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz",
- "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==",
+ "glob-stream": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz",
+ "integrity": "sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ=",
+ "dev": true,
+ "requires": {
+ "extend": "^3.0.0",
+ "glob": "^7.1.1",
+ "glob-parent": "^3.1.0",
+ "is-negated-glob": "^1.0.0",
+ "ordered-read-streams": "^1.0.0",
+ "pumpify": "^1.3.5",
+ "readable-stream": "^2.1.5",
+ "remove-trailing-separator": "^1.0.1",
+ "to-absolute-glob": "^2.0.0",
+ "unique-stream": "^2.0.2"
+ },
+ "dependencies": {
+ "glob-parent": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
+ "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
+ "dev": true,
+ "requires": {
+ "is-glob": "^3.1.0",
+ "path-dirname": "^1.0.0"
+ }
+ },
+ "is-extglob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
+ "dev": true
+ },
+ "is-glob": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
+ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^2.1.0"
+ }
+ }
+ }
+ },
+ "glob-to-regexp": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz",
+ "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=",
+ "dev": true
+ },
+ "global-dirs": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz",
+ "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=",
+ "dev": true,
+ "requires": {
+ "ini": "^1.3.4"
+ }
+ },
+ "global-modules": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz",
+ "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==",
+ "dev": true,
+ "requires": {
+ "global-prefix": "^3.0.0"
+ }
+ },
+ "global-prefix": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz",
+ "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==",
"dev": true,
"requires": {
"ini": "^1.3.5",
@@ -4001,6 +4470,213 @@
"integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
"dev": true
},
+ "gulp-exclude-gitignore": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/gulp-exclude-gitignore/-/gulp-exclude-gitignore-1.2.0.tgz",
+ "integrity": "sha512-J3LCmz9C1UU1pxf5Npx6SNc5o9YQptyc9IHaqLiBlihZmg44jaaTplWUZ0JPQkMdOTae0YgEDvT9TKlUWDSMUA==",
+ "dev": true,
+ "requires": {
+ "gulp-ignore": "^2.0.2"
+ }
+ },
+ "gulp-filter": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/gulp-filter/-/gulp-filter-5.1.0.tgz",
+ "integrity": "sha1-oF4Rr/sHz33PQafeHLe2OsN4PnM=",
+ "dev": true,
+ "requires": {
+ "multimatch": "^2.0.0",
+ "plugin-error": "^0.1.2",
+ "streamfilter": "^1.0.5"
+ },
+ "dependencies": {
+ "arr-diff": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz",
+ "integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=",
+ "dev": true,
+ "requires": {
+ "arr-flatten": "^1.0.1",
+ "array-slice": "^0.2.3"
+ }
+ },
+ "arr-union": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz",
+ "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=",
+ "dev": true
+ },
+ "extend-shallow": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz",
+ "integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=",
+ "dev": true,
+ "requires": {
+ "kind-of": "^1.1.0"
+ }
+ },
+ "kind-of": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz",
+ "integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=",
+ "dev": true
+ },
+ "plugin-error": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz",
+ "integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=",
+ "dev": true,
+ "requires": {
+ "ansi-cyan": "^0.1.1",
+ "ansi-red": "^0.1.1",
+ "arr-diff": "^1.0.1",
+ "arr-union": "^2.0.1",
+ "extend-shallow": "^1.1.2"
+ }
+ }
+ }
+ },
+ "gulp-ignore": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/gulp-ignore/-/gulp-ignore-2.0.2.tgz",
+ "integrity": "sha1-XC6ioKRALgq0orzRLv2SlTRNePI=",
+ "dev": true,
+ "requires": {
+ "gulp-match": "^1.0.3",
+ "through2": "^2.0.1"
+ }
+ },
+ "gulp-match": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/gulp-match/-/gulp-match-1.0.3.tgz",
+ "integrity": "sha1-kcfA1/Kb7NZgbVfYCn+Hdqh6uo4=",
+ "dev": true,
+ "requires": {
+ "minimatch": "^3.0.3"
+ }
+ },
+ "gulp-reporter": {
+ "version": "2.10.0",
+ "resolved": "https://registry.npmjs.org/gulp-reporter/-/gulp-reporter-2.10.0.tgz",
+ "integrity": "sha512-HeruxN7TL/enOB+pJfFmeekVsXsZzQvVGpL7vOLdUe7y7VdqHUvMQRRW5qMIvVSKqRs3EtQiR/kURu3WWfXq6w==",
+ "dev": true,
+ "requires": {
+ "ansi-escapes": "^3.1.0",
+ "axios": "^0.18.0",
+ "buffered-spawn": "^3.3.2",
+ "bufferstreams": "^2.0.1",
+ "chalk": "^2.4.1",
+ "checkstyle-formatter": "^1.1.0",
+ "ci-info": "^2.0.0",
+ "cli-truncate": "^1.1.0",
+ "emphasize": "^2.0.0",
+ "fancy-log": "^1.3.3",
+ "fs-extra": "^7.0.1",
+ "in-gfw": "^1.2.0",
+ "is-windows": "^1.0.2",
+ "js-yaml": "^3.12.0",
+ "junit-report-builder": "^1.3.1",
+ "lodash.get": "^4.4.2",
+ "os-locale": "^3.0.1",
+ "plugin-error": "^1.0.1",
+ "string-width": "^3.0.0",
+ "term-size": "^1.2.0",
+ "through2": "^3.0.0",
+ "to-time": "^1.0.2"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.0.0.tgz",
+ "integrity": "sha512-iB5Dda8t/UqpPI/IjsejXu5jOGDrzn41wJyljwPH65VCIbk6+1BzFIMJGFwTNrYXT1CrD+B4l19U7awiQ8rk7w==",
+ "dev": true
+ },
+ "ansi-styles": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
+ "dev": true,
+ "requires": {
+ "color-convert": "^1.9.0"
+ }
+ },
+ "chalk": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^3.2.1",
+ "escape-string-regexp": "^1.0.5",
+ "supports-color": "^5.3.0"
+ }
+ },
+ "ci-info": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz",
+ "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==",
+ "dev": true
+ },
+ "js-yaml": {
+ "version": "3.12.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.1.tgz",
+ "integrity": "sha512-um46hB9wNOKlwkHgiuyEVAybXBjwFUV0Z/RaHJblRd9DXltue9FTYvzCr9ErQrK9Adz5MU4gHWVaNUfdmrC8qA==",
+ "dev": true,
+ "requires": {
+ "argparse": "^1.0.7",
+ "esprima": "^4.0.0"
+ }
+ },
+ "string-width": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.0.0.tgz",
+ "integrity": "sha512-rr8CUxBbvOZDUvc5lNIJ+OC1nPVpz+Siw9VBtUjB9b6jZehZLFt0JMCZzShFHIsI8cbhm0EsNIfWJMFV3cu3Ew==",
+ "dev": true,
+ "requires": {
+ "emoji-regex": "^7.0.1",
+ "is-fullwidth-code-point": "^2.0.0",
+ "strip-ansi": "^5.0.0"
+ }
+ },
+ "strip-ansi": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.0.0.tgz",
+ "integrity": "sha512-Uu7gQyZI7J7gn5qLn1Np3G9vcYGTVqB+lFTytnDJv83dd8T22aGH451P3jueT2/QemInJDfxHB5Tde5OzgG1Ow==",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^4.0.0"
+ }
+ },
+ "supports-color": {
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^3.0.0"
+ }
+ },
+ "through2": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.0.tgz",
+ "integrity": "sha512-8B+sevlqP4OiCjonI1Zw03Sf8PuV1eRsYQgLad5eonILOdyeRsY27A/2Ze8IlvlMvq31OH+3fz/styI7Ya62yQ==",
+ "dev": true,
+ "requires": {
+ "readable-stream": "2 || 3",
+ "xtend": "~4.0.1"
+ }
+ }
+ }
+ },
+ "gulp-tap": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/gulp-tap/-/gulp-tap-1.0.1.tgz",
+ "integrity": "sha1-5nESThJZtM6iGe0cqXt/WFwzRpA=",
+ "dev": true,
+ "requires": {
+ "through2": "^2.0.3"
+ }
+ },
"has-ansi": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
@@ -4022,6 +4698,12 @@
"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
"dev": true
},
+ "has-symbols": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz",
+ "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=",
+ "dev": true
+ },
"has-value": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
@@ -4088,6 +4770,12 @@
"integrity": "sha1-ieJdtgS3Jcj1l2//Ct3JIbgopac=",
"dev": true
},
+ "highlight.js": {
+ "version": "9.12.0",
+ "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.12.0.tgz",
+ "integrity": "sha1-5tnb5Xy+/mB1HwKvM2GVhwyQwB4=",
+ "dev": true
+ },
"home-or-tmp": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz",
@@ -4101,7 +4789,7 @@
"hosted-git-info": {
"version": "2.7.1",
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz",
- "integrity": "sha1-l/I2l3vW4SVAiTD/bePuxigewEc=",
+ "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==",
"dev": true
},
"html-tags": {
@@ -4403,6 +5091,17 @@
"integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
"dev": true
},
+ "in-gfw": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/in-gfw/-/in-gfw-1.2.0.tgz",
+ "integrity": "sha512-LgSoQXzuSS/x/nh0eIggq7PsI7gs/sQdXNEolRmHaFUj6YMFmPO1kxQ7XpcT3nPpC3DMwYiJmgnluqJmFXYiMg==",
+ "dev": true,
+ "requires": {
+ "glob": "^7.1.2",
+ "is-wsl": "^1.1.0",
+ "mem": "^3.0.1"
+ }
+ },
"indent-string": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz",
@@ -4434,13 +5133,13 @@
"ini": {
"version": "1.3.5",
"resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
- "integrity": "sha1-7uJfVtscnsYIXgwid4CD9Zar+Sc=",
+ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==",
"dev": true
},
"inquirer": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz",
- "integrity": "sha1-ndLyrXZdyrH/BEO0kUQqILoifck=",
+ "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==",
"dev": true,
"requires": {
"ansi-escapes": "^3.0.0",
@@ -4468,12 +5167,28 @@
"loose-envify": "^1.0.0"
}
},
+ "invert-kv": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz",
+ "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==",
+ "dev": true
+ },
"irregular-plurals": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-1.4.0.tgz",
"integrity": "sha1-LKmwM2UREYVUEvFr5dd8YqRYp2Y=",
"dev": true
},
+ "is-absolute": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz",
+ "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==",
+ "dev": true,
+ "requires": {
+ "is-relative": "^1.0.0",
+ "is-windows": "^1.0.1"
+ }
+ },
"is-accessor-descriptor": {
"version": "0.1.6",
"resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
@@ -4523,7 +5238,7 @@
"is-buffer": {
"version": "1.1.6",
"resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
- "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=",
+ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
"dev": true
},
"is-builtin-module": {
@@ -4663,6 +5378,12 @@
"is-path-inside": "^1.0.0"
}
},
+ "is-negated-glob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz",
+ "integrity": "sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI=",
+ "dev": true
+ },
"is-npm": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz",
@@ -4687,7 +5408,7 @@
"is-observable": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz",
- "integrity": "sha1-s+mGyPRN6VCGfKtUA/WjRlAFl14=",
+ "integrity": "sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==",
"dev": true,
"requires": {
"symbol-observable": "^1.1.0"
@@ -4702,7 +5423,7 @@
"is-path-in-cwd": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz",
- "integrity": "sha1-WsSLNF72dTOb1sekipEhELJBz1I=",
+ "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==",
"dev": true,
"requires": {
"is-path-inside": "^1.0.0"
@@ -4770,10 +5491,19 @@
"integrity": "sha1-/S2INUXEa6xaYz57mgnof6LLUGk=",
"dev": true
},
+ "is-relative": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz",
+ "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==",
+ "dev": true,
+ "requires": {
+ "is-unc-path": "^1.0.0"
+ }
+ },
"is-resolvable": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz",
- "integrity": "sha1-+xj4fOH+uSUWnJpAfBkxijIG7Yg=",
+ "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==",
"dev": true
},
"is-retry-allowed": {
@@ -4794,6 +5524,15 @@
"integrity": "sha512-3vcJecUUrpgCqc/ca0aWeNu64UGgxcvO60K/Fkr1N6RSvfGCTU60UKN68JDmKokgba0rFFJs12EnzOQa14ubKQ==",
"dev": true
},
+ "is-unc-path": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz",
+ "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==",
+ "dev": true,
+ "requires": {
+ "unc-path-regex": "^0.1.2"
+ }
+ },
"is-url": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/is-url/-/is-url-1.2.4.tgz",
@@ -4806,6 +5545,12 @@
"integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
"dev": true
},
+ "is-valid-glob": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz",
+ "integrity": "sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao=",
+ "dev": true
+ },
"is-whitespace-character": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.2.tgz",
@@ -4824,6 +5569,12 @@
"integrity": "sha512-T3FlsX8rCHAH8e7RE7PfOPZVFQlcV3XRF9eOOBQ1uf70OxO7CjjSOjeImMPCADBdYWcStAbVbYvJ1m2D3tb+EA==",
"dev": true
},
+ "is-wsl": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz",
+ "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=",
+ "dev": true
+ },
"isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
@@ -4876,7 +5627,7 @@
"json-parse-better-errors": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
- "integrity": "sha1-u4Z8+zRQ5pEHwTHRxRS6s9yLyqk=",
+ "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
"dev": true
},
"json-schema-traverse": {
@@ -4897,10 +5648,19 @@
"integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
"dev": true
},
+ "jsonfile": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
+ "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.6"
+ }
+ },
"jszip": {
"version": "3.1.5",
"resolved": "https://registry.npmjs.org/jszip/-/jszip-3.1.5.tgz",
- "integrity": "sha1-48KmxtcGrG5gMxQDbUPNQL7v3zc=",
+ "integrity": "sha512-5W8NUaFRFRqTOL7ZDDrx5qWHJyBXy6velVudIzQUSoqAAYqzSh2Z7/m0Rf1QbmQJccegD0r+YZxBjzqoBiEeJQ==",
"dev": true,
"requires": {
"core-js": "~2.3.0",
@@ -4950,6 +5710,32 @@
}
}
},
+ "junit-report-builder": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/junit-report-builder/-/junit-report-builder-1.3.2.tgz",
+ "integrity": "sha512-TPpe1hWatrBnBxiRT1M8ss6nCaaoEzZ0fFEdRkv45jVwrpZm9HAqNz1vBVfsrN4Z2PLwhIxpxPAoWfW/b5Kzpw==",
+ "dev": true,
+ "requires": {
+ "date-format": "0.0.2",
+ "lodash": "^4.17.10",
+ "mkdirp": "^0.5.0",
+ "xmlbuilder": "^10.0.0"
+ },
+ "dependencies": {
+ "lodash": {
+ "version": "4.17.11",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
+ "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
+ "dev": true
+ },
+ "xmlbuilder": {
+ "version": "10.1.1",
+ "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-10.1.1.tgz",
+ "integrity": "sha512-OyzrcFLL/nb6fMGHbiRDuPup9ljBycsdCypwuyg5AAHvyWzGfChJpCXMG88AGTIMFhGZ9RccFN1e6lhg3hkwKg==",
+ "dev": true
+ }
+ }
+ },
"kind-of": {
"version": "3.2.2",
"resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
@@ -4983,6 +5769,33 @@
"package-json": "^4.0.0"
}
},
+ "lazystream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz",
+ "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=",
+ "dev": true,
+ "requires": {
+ "readable-stream": "^2.0.5"
+ }
+ },
+ "lcid": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz",
+ "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==",
+ "dev": true,
+ "requires": {
+ "invert-kv": "^2.0.0"
+ }
+ },
+ "lead": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/lead/-/lead-1.0.0.tgz",
+ "integrity": "sha1-bxT5mje+Op3XhPVJVpDlkDRm7kI=",
+ "dev": true,
+ "requires": {
+ "flush-write-stream": "^1.0.2"
+ }
+ },
"leven": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz",
@@ -5008,6 +5821,16 @@
"immediate": "~3.0.5"
}
},
+ "linez": {
+ "version": "4.1.4",
+ "resolved": "https://registry.npmjs.org/linez/-/linez-4.1.4.tgz",
+ "integrity": "sha1-Tx2xaWXDoZ45SikxMCPMnLKfAqc=",
+ "dev": true,
+ "requires": {
+ "buffer-equals": "^1.0.4",
+ "iconv-lite": "^0.4.15"
+ }
+ },
"lint-staged": {
"version": "8.1.3",
"resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-8.1.3.tgz",
@@ -5652,6 +6475,12 @@
"integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=",
"dev": true
},
+ "lodash.get": {
+ "version": "4.4.2",
+ "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz",
+ "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=",
+ "dev": true
+ },
"lodash.isequal": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz",
@@ -5712,9 +6541,19 @@
"lowercase-keys": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz",
- "integrity": "sha1-b54wtHCE2XGnyCD/FabFFnt0wm8=",
+ "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==",
"dev": true
},
+ "lowlight": {
+ "version": "1.9.2",
+ "resolved": "https://registry.npmjs.org/lowlight/-/lowlight-1.9.2.tgz",
+ "integrity": "sha512-Ek18ElVCf/wF/jEm1b92gTnigh94CtBNWiZ2ad+vTgW7cTmQxUY3I98BjHK68gZAJEWmybGBZgx9qv3QxLQB/Q==",
+ "dev": true,
+ "requires": {
+ "fault": "^1.0.2",
+ "highlight.js": "~9.12.0"
+ }
+ },
"lru-cache": {
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.2.tgz",
@@ -5728,7 +6567,7 @@
"make-dir": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz",
- "integrity": "sha1-ecEDO4BRW9bSTsmTPoYMp17ifww=",
+ "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==",
"dev": true,
"requires": {
"pify": "^3.0.0"
@@ -5742,6 +6581,15 @@
}
}
},
+ "map-age-cleaner": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz",
+ "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==",
+ "dev": true,
+ "requires": {
+ "p-defer": "^1.0.0"
+ }
+ },
"map-cache": {
"version": "0.2.2",
"resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
@@ -5778,7 +6626,7 @@
"matcher": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/matcher/-/matcher-1.1.1.tgz",
- "integrity": "sha1-UdgwHhOPhAmCszixFrsMCa9iwcI=",
+ "integrity": "sha512-+BmqxWIubKTRKNWx/ahnCkk3mG8m7OturVlqq6HiojGJTd5hVYbgZm6WzcYPCoB+KBT4Vd6R7WSRG2OADNaCjg==",
"dev": true,
"requires": {
"escape-string-regexp": "^1.0.4"
@@ -5820,6 +6668,16 @@
"unist-util-visit": "^1.1.0"
}
},
+ "mem": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/mem/-/mem-3.0.1.tgz",
+ "integrity": "sha512-QKs47bslvOE0NbXOqG6lMxn6Bk0Iuw0vfrIeLykmQle2LkCw1p48dZDdzE+D88b/xqRJcZGcMNeDvSVma+NuIQ==",
+ "dev": true,
+ "requires": {
+ "mimic-fn": "^1.0.0",
+ "p-is-promise": "^1.1.0"
+ }
+ },
"meow": {
"version": "3.7.0",
"resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
@@ -5955,7 +6813,7 @@
"minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
- "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=",
+ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"dev": true,
"requires": {
"brace-expansion": "^1.1.7"
@@ -6140,7 +6998,7 @@
"normalize-package-data": {
"version": "2.4.0",
"resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz",
- "integrity": "sha1-EvlaMH1YNSB1oEkHuErIvpisAS8=",
+ "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==",
"dev": true,
"requires": {
"hosted-git-info": "^2.1.4",
@@ -6170,6 +7028,15 @@
"integrity": "sha1-0LFF62kRicY6eNIB3E/bEpPvDAM=",
"dev": true
},
+ "now-and-later": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-2.0.0.tgz",
+ "integrity": "sha1-vGHLtFbXnLMiB85HygUTb/Ln1u4=",
+ "dev": true,
+ "requires": {
+ "once": "^1.3.2"
+ }
+ },
"npm-path": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/npm-path/-/npm-path-2.0.4.tgz",
@@ -6248,6 +7115,12 @@
}
}
},
+ "object-keys": {
+ "version": "1.0.12",
+ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz",
+ "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==",
+ "dev": true
+ },
"object-visit": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz",
@@ -6265,6 +7138,18 @@
}
}
},
+ "object.assign": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz",
+ "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==",
+ "dev": true,
+ "requires": {
+ "define-properties": "^1.1.2",
+ "function-bind": "^1.1.1",
+ "has-symbols": "^1.0.0",
+ "object-keys": "^1.0.11"
+ }
+ },
"object.omit": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz",
@@ -6359,24 +7244,112 @@
"wordwrap": "~1.0.0"
}
},
+ "ordered-read-streams": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz",
+ "integrity": "sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4=",
+ "dev": true,
+ "requires": {
+ "readable-stream": "^2.0.1"
+ }
+ },
"os-homedir": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
"integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
"dev": true
},
+ "os-locale": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz",
+ "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==",
+ "dev": true,
+ "requires": {
+ "execa": "^1.0.0",
+ "lcid": "^2.0.0",
+ "mem": "^4.0.0"
+ },
+ "dependencies": {
+ "cross-spawn": {
+ "version": "6.0.5",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
+ "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
+ "dev": true,
+ "requires": {
+ "nice-try": "^1.0.4",
+ "path-key": "^2.0.1",
+ "semver": "^5.5.0",
+ "shebang-command": "^1.2.0",
+ "which": "^1.2.9"
+ }
+ },
+ "execa": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz",
+ "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==",
+ "dev": true,
+ "requires": {
+ "cross-spawn": "^6.0.0",
+ "get-stream": "^4.0.0",
+ "is-stream": "^1.1.0",
+ "npm-run-path": "^2.0.0",
+ "p-finally": "^1.0.0",
+ "signal-exit": "^3.0.0",
+ "strip-eof": "^1.0.0"
+ }
+ },
+ "get-stream": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz",
+ "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==",
+ "dev": true,
+ "requires": {
+ "pump": "^3.0.0"
+ }
+ },
+ "mem": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/mem/-/mem-4.1.0.tgz",
+ "integrity": "sha512-I5u6Q1x7wxO0kdOpYBB28xueHADYps5uty/zg936CiG8NTe5sJL8EjrCuLneuDW3PlMdZBGDIn8BirEVdovZvg==",
+ "dev": true,
+ "requires": {
+ "map-age-cleaner": "^0.1.1",
+ "mimic-fn": "^1.0.0",
+ "p-is-promise": "^2.0.0"
+ }
+ },
+ "p-is-promise": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.0.0.tgz",
+ "integrity": "sha512-pzQPhYMCAgLAKPWD2jC3Se9fEfrD9npNos0y150EeqZll7akhEgGhTW/slB6lHku8AvYGiJ+YJ5hfHKePPgFWg==",
+ "dev": true
+ }
+ }
+ },
"os-tmpdir": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
"integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
"dev": true
},
+ "p-defer": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz",
+ "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=",
+ "dev": true
+ },
"p-finally": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
"integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=",
"dev": true
},
+ "p-is-promise": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz",
+ "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=",
+ "dev": true
+ },
"p-limit": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
@@ -6434,7 +7407,7 @@
"pako": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz",
- "integrity": "sha1-AQEhG6pwxLykoPY/Igbpe3368lg=",
+ "integrity": "sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg==",
"dev": true
},
"parse-entities": {
@@ -6478,6 +7451,12 @@
"integrity": "sha1-3T+iXtbC78e93hKtm0bBY6opIk4=",
"dev": true
},
+ "parse-node-version": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz",
+ "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==",
+ "dev": true
+ },
"parse5": {
"version": "3.0.3",
"resolved": "https://registry.npmjs.org/parse5/-/parse5-3.0.3.tgz",
@@ -6617,6 +7596,26 @@
"semver-compare": "^1.0.0"
}
},
+ "plugin-error": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz",
+ "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==",
+ "dev": true,
+ "requires": {
+ "ansi-colors": "^1.0.1",
+ "arr-diff": "^4.0.0",
+ "arr-union": "^3.1.0",
+ "extend-shallow": "^3.0.2"
+ },
+ "dependencies": {
+ "arr-diff": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
+ "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=",
+ "dev": true
+ }
+ }
+ },
"plur": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/plur/-/plur-2.1.2.tgz",
@@ -6629,7 +7628,7 @@
"pluralize": {
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz",
- "integrity": "sha1-KYuJ34uTsCIdv0Ia0rGx6iP8Z3c=",
+ "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==",
"dev": true
},
"posix-character-classes": {
@@ -6917,7 +7916,7 @@
"process-nextick-args": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz",
- "integrity": "sha1-o31zL0JxtKsa0HDTVQjoKQeI/6o=",
+ "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==",
"dev": true
},
"progress": {
@@ -6948,6 +7947,29 @@
"once": "^1.3.1"
}
},
+ "pumpify": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz",
+ "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==",
+ "dev": true,
+ "requires": {
+ "duplexify": "^3.6.0",
+ "inherits": "^2.0.3",
+ "pump": "^2.0.0"
+ },
+ "dependencies": {
+ "pump": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz",
+ "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==",
+ "dev": true,
+ "requires": {
+ "end-of-stream": "^1.1.0",
+ "once": "^1.3.1"
+ }
+ }
+ }
+ },
"punycode": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
@@ -7039,7 +8061,7 @@
"readable-stream": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
- "integrity": "sha1-sRwn2IuP8fvgcGQ8+UsMea4bCq8=",
+ "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"dev": true,
"requires": {
"core-util-is": "~1.0.0",
@@ -7118,7 +8140,7 @@
"regexpp": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz",
- "integrity": "sha1-DjUW3Qt5BPQT0tQZPc5GGMOmias=",
+ "integrity": "sha512-LOPw8FpgdQF9etWMaAfG/WRthIdXJGYp4mJ2Jgn/2lpkbod9jPn0t9UqN7AxBOKNfzRbYyVfgc7Vk4t/MpnXgw==",
"dev": true
},
"regexpu-core": {
@@ -7231,6 +8253,27 @@
"xtend": "^4.0.1"
}
},
+ "remove-bom-buffer": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz",
+ "integrity": "sha512-8v2rWhaakv18qcvNeli2mZ/TMTL2nEyAKRvzo1WtnZBl15SHyEhrCu2/xKlJyUFKHiHgfXIyuY6g2dObJJycXQ==",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5",
+ "is-utf8": "^0.2.1"
+ }
+ },
+ "remove-bom-stream": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz",
+ "integrity": "sha1-BfGlk/FuQuH7kOv1nejlaVJflSM=",
+ "dev": true,
+ "requires": {
+ "remove-bom-buffer": "^3.0.0",
+ "safe-buffer": "^5.1.0",
+ "through2": "^2.0.3"
+ }
+ },
"remove-trailing-separator": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
@@ -7264,6 +8307,18 @@
"integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=",
"dev": true
},
+ "require-directory": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
+ "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
+ "dev": true
+ },
+ "require-main-filename": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz",
+ "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=",
+ "dev": true
+ },
"require-precompiled": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/require-precompiled/-/require-precompiled-0.1.0.tgz",
@@ -7312,6 +8367,15 @@
"integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=",
"dev": true
},
+ "resolve-options": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/resolve-options/-/resolve-options-1.1.0.tgz",
+ "integrity": "sha1-MrueOcBtZzONyTeMDW1gdFZq0TE=",
+ "dev": true,
+ "requires": {
+ "value-or-function": "^3.0.0"
+ }
+ },
"resolve-url": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
@@ -7337,7 +8401,7 @@
"rimraf": {
"version": "2.6.2",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz",
- "integrity": "sha1-LtgVDSShbqhlHm1u8PR8QVjOejY=",
+ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==",
"dev": true,
"requires": {
"glob": "^7.0.5"
@@ -7400,19 +8464,19 @@
"safer-buffer": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
- "integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo=",
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
"dev": true
},
"sax": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
- "integrity": "sha1-KBYjTiN4vdxOU1T6tcqold9xANk=",
+ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==",
"dev": true
},
"selenium-webdriver": {
"version": "4.0.0-alpha.1",
"resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-4.0.0-alpha.1.tgz",
- "integrity": "sha1-zJNBXiHS3B39hd/F9rVfOsU5M7E=",
+ "integrity": "sha512-z88rdjHAv3jmTZ7KSGUkTvo4rGzcDGMq0oXWHNIDK96Gs31JKVdu9+FMtT4KBrVoibg8dUicJDok6GnqqttO5Q==",
"dev": true,
"requires": {
"jszip": "^3.1.3",
@@ -7435,7 +8499,7 @@
"semver": {
"version": "5.5.0",
"resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz",
- "integrity": "sha1-3Eu8emyp2Rbe5dQ1FvAJK1j3uKs=",
+ "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==",
"dev": true
},
"semver-compare": {
@@ -7459,6 +8523,12 @@
"integrity": "sha1-ULZ51WNc34Rme9yOWa9OW4HV9go=",
"dev": true
},
+ "set-blocking": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
+ "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
+ "dev": true
+ },
"set-immediate-shim": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz",
@@ -7503,6 +8573,12 @@
"integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
"dev": true
},
+ "sigmund": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz",
+ "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=",
+ "dev": true
+ },
"signal-exit": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz",
@@ -7544,7 +8620,7 @@
"slice-ansi": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz",
- "integrity": "sha1-BE8aSdiEL/MHqta1Be0Xi9lQE00=",
+ "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==",
"dev": true,
"requires": {
"is-fullwidth-code-point": "^2.0.0"
@@ -7728,7 +8804,7 @@
"spdx-correct": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz",
- "integrity": "sha1-BaW01xU6GVvJLDxCW2nzsqlSTII=",
+ "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==",
"dev": true,
"requires": {
"spdx-expression-parse": "^3.0.0",
@@ -7738,13 +8814,13 @@
"spdx-exceptions": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz",
- "integrity": "sha1-LHrmEFbHFKW5ubKyr30xHvXHj+k=",
+ "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==",
"dev": true
},
"spdx-expression-parse": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz",
- "integrity": "sha1-meEZt6XaAOBUkcn6M4t5BII7QdA=",
+ "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==",
"dev": true,
"requires": {
"spdx-exceptions": "^2.1.0",
@@ -7754,7 +8830,7 @@
"spdx-license-ids": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz",
- "integrity": "sha1-enzShHDMbToc/m1miG9rxDDTrIc=",
+ "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==",
"dev": true
},
"specificity": {
@@ -7817,6 +8893,21 @@
}
}
},
+ "stream-shift": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz",
+ "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=",
+ "dev": true
+ },
+ "streamfilter": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/streamfilter/-/streamfilter-1.0.7.tgz",
+ "integrity": "sha512-Gk6KZM+yNA1JpW0KzlZIhjo3EaBJDkYfXtYSbOwNIQ7Zd6006E6+sCFlW1NDvFG/vnXhKmw6TJJgiEQg/8lXfQ==",
+ "dev": true,
+ "requires": {
+ "readable-stream": "^2.0.2"
+ }
+ },
"string-argv": {
"version": "0.0.2",
"resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.0.2.tgz",
@@ -7826,7 +8917,7 @@
"string-width": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
- "integrity": "sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4=",
+ "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
"dev": true,
"requires": {
"is-fullwidth-code-point": "^2.0.0",
@@ -7836,7 +8927,7 @@
"string_decoder": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha1-nPFhG6YmhdcDCunkujQUnDrwP8g=",
+ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
"dev": true,
"requires": {
"safe-buffer": "~5.1.0"
@@ -8713,7 +9804,7 @@
"symbol-observable": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz",
- "integrity": "sha1-wiaIrtTqs83C3+rLtWFmBWCgCAQ=",
+ "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==",
"dev": true
},
"synchronous-promise": {
@@ -8725,7 +9816,7 @@
"table": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/table/-/table-4.0.2.tgz",
- "integrity": "sha1-ozRHN1OR52atNNNIbm4q7chNLjY=",
+ "integrity": "sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==",
"dev": true,
"requires": {
"ajv": "^5.2.3",
@@ -8788,6 +9879,22 @@
"xtend": "~4.0.1"
}
},
+ "through2-filter": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-3.0.0.tgz",
+ "integrity": "sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==",
+ "dev": true,
+ "requires": {
+ "through2": "~2.0.0",
+ "xtend": "~4.0.0"
+ }
+ },
+ "time-stamp": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz",
+ "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=",
+ "dev": true
+ },
"time-zone": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/time-zone/-/time-zone-1.0.0.tgz",
@@ -8803,12 +9910,22 @@
"tmp": {
"version": "0.0.33",
"resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
- "integrity": "sha1-bTQzWIl2jSGyvNoKonfO07G/rfk=",
+ "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
"dev": true,
"requires": {
"os-tmpdir": "~1.0.2"
}
},
+ "to-absolute-glob": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz",
+ "integrity": "sha1-GGX0PZ50sIItufFFt4z/fQ98hJs=",
+ "dev": true,
+ "requires": {
+ "is-absolute": "^1.0.0",
+ "is-negated-glob": "^1.0.0"
+ }
+ },
"to-fast-properties": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz",
@@ -8857,6 +9974,24 @@
}
}
},
+ "to-through": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/to-through/-/to-through-2.0.0.tgz",
+ "integrity": "sha1-/JKtq6ByZHvAtn1rA2ZKoZUJOvY=",
+ "dev": true,
+ "requires": {
+ "through2": "^2.0.3"
+ }
+ },
+ "to-time": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/to-time/-/to-time-1.0.2.tgz",
+ "integrity": "sha1-T4FFoH2F9jVqYuHOoKep5mYXduM=",
+ "dev": true,
+ "requires": {
+ "bignumber.js": "^2.4.0"
+ }
+ },
"toposort": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/toposort/-/toposort-2.0.2.tgz",
@@ -8926,6 +10061,12 @@
"integrity": "sha1-SDEm4Rd03y9xuLY53NeZw3YWK4I=",
"dev": true
},
+ "unc-path-regex": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz",
+ "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=",
+ "dev": true
+ },
"unherit": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.1.tgz",
@@ -8993,6 +10134,16 @@
"integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=",
"dev": true
},
+ "unique-stream": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.3.1.tgz",
+ "integrity": "sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A==",
+ "dev": true,
+ "requires": {
+ "json-stable-stringify-without-jsonify": "^1.0.1",
+ "through2-filter": "^3.0.0"
+ }
+ },
"unique-string": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz",
@@ -9061,6 +10212,12 @@
"unist-util-is": "^2.1.2"
}
},
+ "universalify": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
+ "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
+ "dev": true
+ },
"unset-value": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz",
@@ -9177,6 +10334,12 @@
"spdx-expression-parse": "^3.0.0"
}
},
+ "value-or-function": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/value-or-function/-/value-or-function-3.0.0.tgz",
+ "integrity": "sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM=",
+ "dev": true
+ },
"vfile": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/vfile/-/vfile-3.0.1.tgz",
@@ -9212,6 +10375,60 @@
"unist-util-stringify-position": "^1.1.1"
}
},
+ "vinyl": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.0.tgz",
+ "integrity": "sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg==",
+ "dev": true,
+ "requires": {
+ "clone": "^2.1.1",
+ "clone-buffer": "^1.0.0",
+ "clone-stats": "^1.0.0",
+ "cloneable-readable": "^1.0.0",
+ "remove-trailing-separator": "^1.0.1",
+ "replace-ext": "^1.0.0"
+ }
+ },
+ "vinyl-fs": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-3.0.3.tgz",
+ "integrity": "sha512-vIu34EkyNyJxmP0jscNzWBSygh7VWhqun6RmqVfXePrOwi9lhvRs//dOaGOTRUQr4tx7/zd26Tk5WeSVZitgng==",
+ "dev": true,
+ "requires": {
+ "fs-mkdirp-stream": "^1.0.0",
+ "glob-stream": "^6.1.0",
+ "graceful-fs": "^4.0.0",
+ "is-valid-glob": "^1.0.0",
+ "lazystream": "^1.0.0",
+ "lead": "^1.0.0",
+ "object.assign": "^4.0.4",
+ "pumpify": "^1.3.5",
+ "readable-stream": "^2.3.3",
+ "remove-bom-buffer": "^3.0.0",
+ "remove-bom-stream": "^1.2.0",
+ "resolve-options": "^1.1.0",
+ "through2": "^2.0.0",
+ "to-through": "^2.0.0",
+ "value-or-function": "^3.0.0",
+ "vinyl": "^2.0.0",
+ "vinyl-sourcemap": "^1.1.0"
+ }
+ },
+ "vinyl-sourcemap": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz",
+ "integrity": "sha1-kqgAWTo4cDqM2xHYswCtS+Y7PhY=",
+ "dev": true,
+ "requires": {
+ "append-buffer": "^1.0.2",
+ "convert-source-map": "^1.5.0",
+ "graceful-fs": "^4.1.6",
+ "normalize-path": "^2.1.1",
+ "now-and-later": "^2.0.0",
+ "remove-bom-buffer": "^3.0.0",
+ "vinyl": "^2.0.0"
+ }
+ },
"vnu-jar": {
"version": "18.11.5",
"resolved": "https://registry.npmjs.org/vnu-jar/-/vnu-jar-18.11.5.tgz",
@@ -9233,6 +10450,12 @@
"isexe": "^2.0.0"
}
},
+ "which-module": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
+ "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=",
+ "dev": true
+ },
"widest-line": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.0.tgz",
@@ -9334,10 +10557,16 @@
"integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=",
"dev": true
},
+ "xml-escape": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/xml-escape/-/xml-escape-1.1.0.tgz",
+ "integrity": "sha1-OQTBQ/qOs6ADDsZG0pAqLxtwbEQ=",
+ "dev": true
+ },
"xml2js": {
"version": "0.4.19",
"resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz",
- "integrity": "sha1-aGwg8hMgnpSr8NG88e+qKRx4J6c=",
+ "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==",
"dev": true,
"requires": {
"sax": ">=0.6.0",
@@ -9356,12 +10585,99 @@
"integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=",
"dev": true
},
+ "y18n": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz",
+ "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==",
+ "dev": true
+ },
"yallist": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
"integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=",
"dev": true
},
+ "yargs": {
+ "version": "12.0.5",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz",
+ "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==",
+ "dev": true,
+ "requires": {
+ "cliui": "^4.0.0",
+ "decamelize": "^1.2.0",
+ "find-up": "^3.0.0",
+ "get-caller-file": "^1.0.1",
+ "os-locale": "^3.0.0",
+ "require-directory": "^2.1.1",
+ "require-main-filename": "^1.0.1",
+ "set-blocking": "^2.0.0",
+ "string-width": "^2.0.0",
+ "which-module": "^2.0.0",
+ "y18n": "^3.2.1 || ^4.0.0",
+ "yargs-parser": "^11.1.1"
+ },
+ "dependencies": {
+ "camelcase": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.0.0.tgz",
+ "integrity": "sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA==",
+ "dev": true
+ },
+ "find-up": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
+ "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
+ "dev": true,
+ "requires": {
+ "locate-path": "^3.0.0"
+ }
+ },
+ "locate-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
+ "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
+ "dev": true,
+ "requires": {
+ "p-locate": "^3.0.0",
+ "path-exists": "^3.0.0"
+ }
+ },
+ "p-limit": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.1.0.tgz",
+ "integrity": "sha512-NhURkNcrVB+8hNfLuysU8enY5xn2KXphsHBaC2YmRNTZRc7RWusw6apSpdEj3jo4CMb6W9nrF6tTnsJsJeyu6g==",
+ "dev": true,
+ "requires": {
+ "p-try": "^2.0.0"
+ }
+ },
+ "p-locate": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
+ "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
+ "dev": true,
+ "requires": {
+ "p-limit": "^2.0.0"
+ }
+ },
+ "p-try": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz",
+ "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==",
+ "dev": true
+ },
+ "yargs-parser": {
+ "version": "11.1.1",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz",
+ "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==",
+ "dev": true,
+ "requires": {
+ "camelcase": "^5.0.0",
+ "decamelize": "^1.2.0"
+ }
+ }
+ }
+ },
"yargs-parser": {
"version": "10.1.0",
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz",
diff --git a/package.json b/package.json
index 5173325e74..b05f5c7664 100644
--- a/package.json
+++ b/package.json
@@ -7,9 +7,10 @@
"example": "examples"
},
"scripts": {
- "fix": "npm run lint:es -- --fix && npm run lint:css -- --fix",
- "lint": "npm run lint:es && npm run lint:css && npm run vnu-jar",
+ "fix": "npm run lint:es -- --fix && npm run lint:css -- --fix && eclint fix .",
+ "lint": "npm run lint:es && npm run lint:css && npm run vnu-jar && npm run lint:ec",
"lint:css": "stylelint **/*.css",
+ "lint:ec": "eclint check \"**/*.{js,html,css,md}\"",
"lint:es": "eslint .",
"lint:js": "npm run lint:es",
"lint:html": "npm run vnu-jar",
@@ -31,6 +32,7 @@
"devDependencies": {
"ava": "^0.25.0",
"cheerio": "^1.0.0-rc.2",
+ "eclint": "^2.8.1",
"eslint": "^4.19.1",
"geckodriver": "^1.11.0",
"husky": "^1.2.0",
From cf9e7b3ee6ca26287a6b6218be7f6d9d7a197184 Mon Sep 17 00:00:00 2001
From: Nick Schonning
Date: Thu, 7 Feb 2019 01:23:11 -0500
Subject: [PATCH 2/5] fix: Add ECLint commit hook
---
package.json | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/package.json b/package.json
index b05f5c7664..6747850c79 100644
--- a/package.json
+++ b/package.json
@@ -55,6 +55,14 @@
"*.js": [
"eslint --fix",
"git add"
+ ],
+ "*.md": [
+ "eclint fix",
+ "git add"
+ ],
+ "*.html": [
+ "eclint fix",
+ "git add"
]
}
}
From bad498ea7bc75fef919e3e3d0032a8b6adb1b775 Mon Sep 17 00:00:00 2001
From: Nick Schonning
Date: Wed, 27 Feb 2019 22:24:51 -0500
Subject: [PATCH 3/5] fix: Add gitattributes and renormalize
Running `git add --renormalize .`
---
.gitattributes | 7 +
examples/slider/js/multithumb-slider.js | 484 ++++++++++-----------
examples/slider/multithumb-slider.html | 550 ++++++++++++------------
3 files changed, 524 insertions(+), 517 deletions(-)
create mode 100644 .gitattributes
diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 0000000000..18270a2ba8
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,7 @@
+# Set the default behavior, in case people don't have core.autocrlf set.
+* text=auto
+
+# Denote all files that are truly binary and should not be modified.
+*.png binary
+*.jpg binary
+*.paint binary
\ No newline at end of file
diff --git a/examples/slider/js/multithumb-slider.js b/examples/slider/js/multithumb-slider.js
index 8104972d9d..8c6dc707ad 100644
--- a/examples/slider/js/multithumb-slider.js
+++ b/examples/slider/js/multithumb-slider.js
@@ -1,242 +1,242 @@
-/*
-* This content is licensed according to the W3C Software License at
-* https://www.w3.org/Consortium/Legal/2015/copyright-software-and-document
-*
-* File: slider.js
-*
-* Desc: Slider widget that implements ARIA Authoring Practices
-*/
-
-// Create Slider that contains value, valuemin, valuemax, and valuenow
-var Slider = function (domNode) {
-
- this.domNode = domNode;
- this.railDomNode = domNode.parentNode;
-
- this.labelDomNode = false;
- this.minDomNode = false;
- this.maxDomNode = false;
-
- this.valueNow = 50;
-
- this.railMin = 0;
- this.railMax = 100;
- this.railWidth = 0;
- this.railBorderWidth = 1;
-
- this.thumbWidth = 20;
- this.thumbHeight = 24;
-
- this.keyCode = Object.freeze({
- 'left': 37,
- 'up': 38,
- 'right': 39,
- 'down': 40,
- 'pageUp': 33,
- 'pageDown': 34,
- 'end': 35,
- 'home': 36
- });
-};
-
-// Initialize slider
-Slider.prototype.init = function () {
-
- if (this.domNode.previousElementSibling) {
- this.minDomNode = this.domNode.previousElementSibling;
- this.railMin = parseInt((this.minDomNode.getAttribute('aria-valuemin')));
- }
- else {
- this.railMin = parseInt((this.domNode.getAttribute('aria-valuemin')));
- };
-
- if (this.domNode.nextElementSibling) {
- this.maxDomNode = this.domNode.nextElementSibling;
- this.railMax = parseInt((this.maxDomNode.getAttribute('aria-valuemax')));
- }
-
- else {
- this.railMax = parseInt((this.domNode.getAttribute('aria-valuemax')));
- }
-
- this.valueNow = parseInt((this.domNode.getAttribute('aria-valuenow')));
-
- this.railWidth = parseInt(this.railDomNode.style.width.slice(0, -2));
-
- if (this.domNode.classList.contains('min')) {
- this.labelDomNode = this.domNode.parentElement.previousElementSibling;
- }
-
- if (this.domNode.classList.contains('max')) {
- this.labelDomNode = this.domNode.parentElement.nextElementSibling;
- }
-
- if (this.domNode.tabIndex != 0) {
- this.domNode.tabIndex = 0;
- }
-
- this.domNode.addEventListener('keydown', this.handleKeyDown.bind(this));
- this.domNode.addEventListener('mousedown', this.handleMouseDown.bind(this));
- this.domNode.addEventListener('focus', this.handleFocus.bind(this));
- this.domNode.addEventListener('blur', this.handleBlur.bind(this));
-
- this.moveSliderTo(this.valueNow);
-
-};
-
-Slider.prototype.moveSliderTo = function (value) {
- var valueMax = parseInt(this.domNode.getAttribute('aria-valuemax'));
- var valueMin = parseInt(this.domNode.getAttribute('aria-valuemin'));
-
- if (value > valueMax) {
- value = valueMax;
- }
-
- if (value < valueMin) {
- value = valueMin;
- }
-
- this.valueNow = value;
- this.dolValueNow = '$' + value;
-
- this.domNode.setAttribute('aria-valuenow', this.valueNow);
- this.domNode.setAttribute('aria-valuetext', this.dolValueNow);
-
- if (this.minDomNode) {
- this.minDomNode.setAttribute('aria-valuemax', this.valueNow);
- }
-
- if (this.maxDomNode) {
- this.maxDomNode.setAttribute('aria-valuemin', this.valueNow);
- }
-
- var pos = Math.round(((this.valueNow - this.railMin) * (this.railWidth - 2 * (this.thumbWidth - this.railBorderWidth))) / (this.railMax - this.railMin));
-
- if (this.minDomNode) {
- this.domNode.style.left = (pos + this.thumbWidth - this.railBorderWidth) + 'px';
- }
- else {
- this.domNode.style.left = (pos - this.railBorderWidth) + 'px';
- }
-
- if (this.labelDomNode) {
- this.labelDomNode.innerHTML = this.dolValueNow.toString();
- }
-};
-
-Slider.prototype.handleKeyDown = function (event) {
-
- var flag = false;
-
- switch (event.keyCode) {
- case this.keyCode.left:
- case this.keyCode.down:
- this.moveSliderTo(this.valueNow - 1);
- flag = true;
- break;
-
- case this.keyCode.right:
- case this.keyCode.up:
- this.moveSliderTo(this.valueNow + 1);
- flag = true;
- break;
-
- case this.keyCode.pageDown:
- this.moveSliderTo(this.valueNow - 10);
- flag = true;
- break;
-
- case this.keyCode.pageUp:
- this.moveSliderTo(this.valueNow + 10);
- flag = true;
- break;
-
- case this.keyCode.home:
- this.moveSliderTo(this.railMin);
- flag = true;
- break;
-
- case this.keyCode.end:
- this.moveSliderTo(this.railMax);
- flag = true;
- break;
-
- default:
- break;
- }
-
- if (flag) {
- event.preventDefault();
- event.stopPropagation();
- }
-
-};
-
-Slider.prototype.handleFocus = function (event) {
- this.domNode.classList.add('focus');
- this.railDomNode.classList.add('focus');
-};
-
-Slider.prototype.handleBlur = function (event) {
- this.domNode.classList.remove('focus');
- this.railDomNode.classList.remove('focus');
-};
-
-Slider.prototype.handleMouseDown = function (event) {
-
- var self = this;
-
- var handleMouseMove = function (event) {
-
- var diffX = event.pageX - self.railDomNode.offsetLeft;
- self.valueNow = self.railMin + parseInt(((self.railMax - self.railMin) * diffX) / self.railWidth);
- self.moveSliderTo(self.valueNow);
-
- event.preventDefault();
- event.stopPropagation();
- };
-
- var handleMouseUp = function (event) {
-
- document.removeEventListener('mousemove', handleMouseMove);
- document.removeEventListener('mouseup', handleMouseUp);
-
- };
-
- // bind a mousemove event handler to move pointer
- document.addEventListener('mousemove', handleMouseMove);
-
- // bind a mouseup event handler to stop tracking mouse movements
- document.addEventListener('mouseup', handleMouseUp);
-
- event.preventDefault();
- event.stopPropagation();
-
- // Set focus to the clicked handle
- this.domNode.focus();
-
-};
-
-// handleMouseMove has the same functionality as we need for handleMouseClick on the rail
-// Slider.prototype.handleClick = function (event) {
-
-// var diffX = event.pageX - this.railDomNode.offsetLeft;
-// this.valueNow = parseInt(((this.railMax - this.railMin) * diffX) / this.railWidth);
-// this.moveSliderTo(this.valueNow);
-
-// event.preventDefault();
-// event.stopPropagation();
-
-// };
-
-// Initialise Sliders on the page
-window.addEventListener('load', function () {
-
- var sliders = document.querySelectorAll('[role=slider]');;
-
- for (var i = 0; i < sliders.length; i++) {
- var s = new Slider(sliders[i]);
- s.init();
- }
-
-});
+/*
+* This content is licensed according to the W3C Software License at
+* https://www.w3.org/Consortium/Legal/2015/copyright-software-and-document
+*
+* File: slider.js
+*
+* Desc: Slider widget that implements ARIA Authoring Practices
+*/
+
+// Create Slider that contains value, valuemin, valuemax, and valuenow
+var Slider = function (domNode) {
+
+ this.domNode = domNode;
+ this.railDomNode = domNode.parentNode;
+
+ this.labelDomNode = false;
+ this.minDomNode = false;
+ this.maxDomNode = false;
+
+ this.valueNow = 50;
+
+ this.railMin = 0;
+ this.railMax = 100;
+ this.railWidth = 0;
+ this.railBorderWidth = 1;
+
+ this.thumbWidth = 20;
+ this.thumbHeight = 24;
+
+ this.keyCode = Object.freeze({
+ 'left': 37,
+ 'up': 38,
+ 'right': 39,
+ 'down': 40,
+ 'pageUp': 33,
+ 'pageDown': 34,
+ 'end': 35,
+ 'home': 36
+ });
+};
+
+// Initialize slider
+Slider.prototype.init = function () {
+
+ if (this.domNode.previousElementSibling) {
+ this.minDomNode = this.domNode.previousElementSibling;
+ this.railMin = parseInt((this.minDomNode.getAttribute('aria-valuemin')));
+ }
+ else {
+ this.railMin = parseInt((this.domNode.getAttribute('aria-valuemin')));
+ };
+
+ if (this.domNode.nextElementSibling) {
+ this.maxDomNode = this.domNode.nextElementSibling;
+ this.railMax = parseInt((this.maxDomNode.getAttribute('aria-valuemax')));
+ }
+
+ else {
+ this.railMax = parseInt((this.domNode.getAttribute('aria-valuemax')));
+ }
+
+ this.valueNow = parseInt((this.domNode.getAttribute('aria-valuenow')));
+
+ this.railWidth = parseInt(this.railDomNode.style.width.slice(0, -2));
+
+ if (this.domNode.classList.contains('min')) {
+ this.labelDomNode = this.domNode.parentElement.previousElementSibling;
+ }
+
+ if (this.domNode.classList.contains('max')) {
+ this.labelDomNode = this.domNode.parentElement.nextElementSibling;
+ }
+
+ if (this.domNode.tabIndex != 0) {
+ this.domNode.tabIndex = 0;
+ }
+
+ this.domNode.addEventListener('keydown', this.handleKeyDown.bind(this));
+ this.domNode.addEventListener('mousedown', this.handleMouseDown.bind(this));
+ this.domNode.addEventListener('focus', this.handleFocus.bind(this));
+ this.domNode.addEventListener('blur', this.handleBlur.bind(this));
+
+ this.moveSliderTo(this.valueNow);
+
+};
+
+Slider.prototype.moveSliderTo = function (value) {
+ var valueMax = parseInt(this.domNode.getAttribute('aria-valuemax'));
+ var valueMin = parseInt(this.domNode.getAttribute('aria-valuemin'));
+
+ if (value > valueMax) {
+ value = valueMax;
+ }
+
+ if (value < valueMin) {
+ value = valueMin;
+ }
+
+ this.valueNow = value;
+ this.dolValueNow = '$' + value;
+
+ this.domNode.setAttribute('aria-valuenow', this.valueNow);
+ this.domNode.setAttribute('aria-valuetext', this.dolValueNow);
+
+ if (this.minDomNode) {
+ this.minDomNode.setAttribute('aria-valuemax', this.valueNow);
+ }
+
+ if (this.maxDomNode) {
+ this.maxDomNode.setAttribute('aria-valuemin', this.valueNow);
+ }
+
+ var pos = Math.round(((this.valueNow - this.railMin) * (this.railWidth - 2 * (this.thumbWidth - this.railBorderWidth))) / (this.railMax - this.railMin));
+
+ if (this.minDomNode) {
+ this.domNode.style.left = (pos + this.thumbWidth - this.railBorderWidth) + 'px';
+ }
+ else {
+ this.domNode.style.left = (pos - this.railBorderWidth) + 'px';
+ }
+
+ if (this.labelDomNode) {
+ this.labelDomNode.innerHTML = this.dolValueNow.toString();
+ }
+};
+
+Slider.prototype.handleKeyDown = function (event) {
+
+ var flag = false;
+
+ switch (event.keyCode) {
+ case this.keyCode.left:
+ case this.keyCode.down:
+ this.moveSliderTo(this.valueNow - 1);
+ flag = true;
+ break;
+
+ case this.keyCode.right:
+ case this.keyCode.up:
+ this.moveSliderTo(this.valueNow + 1);
+ flag = true;
+ break;
+
+ case this.keyCode.pageDown:
+ this.moveSliderTo(this.valueNow - 10);
+ flag = true;
+ break;
+
+ case this.keyCode.pageUp:
+ this.moveSliderTo(this.valueNow + 10);
+ flag = true;
+ break;
+
+ case this.keyCode.home:
+ this.moveSliderTo(this.railMin);
+ flag = true;
+ break;
+
+ case this.keyCode.end:
+ this.moveSliderTo(this.railMax);
+ flag = true;
+ break;
+
+ default:
+ break;
+ }
+
+ if (flag) {
+ event.preventDefault();
+ event.stopPropagation();
+ }
+
+};
+
+Slider.prototype.handleFocus = function (event) {
+ this.domNode.classList.add('focus');
+ this.railDomNode.classList.add('focus');
+};
+
+Slider.prototype.handleBlur = function (event) {
+ this.domNode.classList.remove('focus');
+ this.railDomNode.classList.remove('focus');
+};
+
+Slider.prototype.handleMouseDown = function (event) {
+
+ var self = this;
+
+ var handleMouseMove = function (event) {
+
+ var diffX = event.pageX - self.railDomNode.offsetLeft;
+ self.valueNow = self.railMin + parseInt(((self.railMax - self.railMin) * diffX) / self.railWidth);
+ self.moveSliderTo(self.valueNow);
+
+ event.preventDefault();
+ event.stopPropagation();
+ };
+
+ var handleMouseUp = function (event) {
+
+ document.removeEventListener('mousemove', handleMouseMove);
+ document.removeEventListener('mouseup', handleMouseUp);
+
+ };
+
+ // bind a mousemove event handler to move pointer
+ document.addEventListener('mousemove', handleMouseMove);
+
+ // bind a mouseup event handler to stop tracking mouse movements
+ document.addEventListener('mouseup', handleMouseUp);
+
+ event.preventDefault();
+ event.stopPropagation();
+
+ // Set focus to the clicked handle
+ this.domNode.focus();
+
+};
+
+// handleMouseMove has the same functionality as we need for handleMouseClick on the rail
+// Slider.prototype.handleClick = function (event) {
+
+// var diffX = event.pageX - this.railDomNode.offsetLeft;
+// this.valueNow = parseInt(((this.railMax - this.railMin) * diffX) / this.railWidth);
+// this.moveSliderTo(this.valueNow);
+
+// event.preventDefault();
+// event.stopPropagation();
+
+// };
+
+// Initialise Sliders on the page
+window.addEventListener('load', function () {
+
+ var sliders = document.querySelectorAll('[role=slider]');;
+
+ for (var i = 0; i < sliders.length; i++) {
+ var s = new Slider(sliders[i]);
+ s.init();
+ }
+
+});
diff --git a/examples/slider/multithumb-slider.html b/examples/slider/multithumb-slider.html
index a861eb39fa..06475de94f 100644
--- a/examples/slider/multithumb-slider.html
+++ b/examples/slider/multithumb-slider.html
@@ -1,275 +1,275 @@
-
-
-
-
- Horizontal Multi-Thumb Slider Example | WAI-ARIA Authoring Practices 1.1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Horizontal Multi-Thumb Slider Example
-
- The below example section includes a slider for setting a price range that demonstrates the
- multi-thumb slider design pattern.
- Users set a price range by moving the arrows (thumbs).
- Each slider has two thumbs: one for the minimum price and one for the maximum price.
- The price labels at the ends of the slider update as their corresponding thumbs are moved.
-
- Similar examples include:
-
-
- Example
-
-
-
Hotel Price Range
-
-
Flight Price Range
-
-
-
-
-
-
- Keyboard Support
-
-
-
- Key
- Function
-
-
-
-
- Right Arrow
- Increases slider value one step.
-
-
- Up Arrow
- Increases slider value one step.
-
-
- Left Arrow
- Decreases slider value one step.
-
-
- Down Arrow
- Decreases slider value one step.
-
-
- Page Up
- Increases slider value multiple steps. In this slider, jumps ten steps.
-
-
- Page Down
- Decreases slider value multiple steps. In this slider, jumps ten steps.
-
-
- Home
- Sets slider to its minimum value.
-
-
- End
- Sets slider to its maximum value.
-
-
-
-
-
-
- Role, Property, State, and Tabindex Attributes
-
-
-
- Role
- Attribute
- Element
- Usage
-
-
-
-
-
- slider
-
-
-
- img
-
-
-
- Identifies the img
element as a slider.
- Set on the movable thumb because it is the operable element that receives focus and represents the slider value.
-
-
-
-
-
-
- tabindex=0
-
-
- img
-
- Includes the slider thumb in the page tab sequence.
-
-
-
-
- aria-valuemax=NUMBER
-
-
- img
-
- Specifies the maximum value of the slider.
-
-
-
-
- aria-valuemin=NUMBER
-
-
- img
-
- Specifies the minimum value of the slider.
-
-
-
-
- aria-valuenow=NUMBER
-
-
- img
-
- Indicates the current value of the slider.
-
-
-
-
- aria-valuetext=DOLLAR AMOUNT
-
-
- img
-
- Indicates the current value of the slider in dollars using the $ character as a prefix.
-
-
-
-
- aria-label=text
-
-
- img
-
- A label identifying the purpose of the slider, e.g., Hotel Minimum Price .
-
-
-
-
-
-
- Javascript and CSS Source Code
-
-
-
-
- HTML Source Code
-
-
-
-
-
-
-
-
- Slider (Multi-Thumb) design pattern in WAI-ARIA Authoring Practices 1.1
-
-
-
+
+
+
+
+ Horizontal Multi-Thumb Slider Example | WAI-ARIA Authoring Practices 1.1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Horizontal Multi-Thumb Slider Example
+
+ The below example section includes a slider for setting a price range that demonstrates the
+ multi-thumb slider design pattern.
+ Users set a price range by moving the arrows (thumbs).
+ Each slider has two thumbs: one for the minimum price and one for the maximum price.
+ The price labels at the ends of the slider update as their corresponding thumbs are moved.
+
+ Similar examples include:
+
+
+ Example
+
+
+
Hotel Price Range
+
+
Flight Price Range
+
+
+
+
+
+
+ Keyboard Support
+
+
+
+ Key
+ Function
+
+
+
+
+ Right Arrow
+ Increases slider value one step.
+
+
+ Up Arrow
+ Increases slider value one step.
+
+
+ Left Arrow
+ Decreases slider value one step.
+
+
+ Down Arrow
+ Decreases slider value one step.
+
+
+ Page Up
+ Increases slider value multiple steps. In this slider, jumps ten steps.
+
+
+ Page Down
+ Decreases slider value multiple steps. In this slider, jumps ten steps.
+
+
+ Home
+ Sets slider to its minimum value.
+
+
+ End
+ Sets slider to its maximum value.
+
+
+
+
+
+
+ Role, Property, State, and Tabindex Attributes
+
+
+
+ Role
+ Attribute
+ Element
+ Usage
+
+
+
+
+
+ slider
+
+
+
+ img
+
+
+
+ Identifies the img
element as a slider.
+ Set on the movable thumb because it is the operable element that receives focus and represents the slider value.
+
+
+
+
+
+
+ tabindex=0
+
+
+ img
+
+ Includes the slider thumb in the page tab sequence.
+
+
+
+
+ aria-valuemax=NUMBER
+
+
+ img
+
+ Specifies the maximum value of the slider.
+
+
+
+
+ aria-valuemin=NUMBER
+
+
+ img
+
+ Specifies the minimum value of the slider.
+
+
+
+
+ aria-valuenow=NUMBER
+
+
+ img
+
+ Indicates the current value of the slider.
+
+
+
+
+ aria-valuetext=DOLLAR AMOUNT
+
+
+ img
+
+ Indicates the current value of the slider in dollars using the $ character as a prefix.
+
+
+
+
+ aria-label=text
+
+
+ img
+
+ A label identifying the purpose of the slider, e.g., Hotel Minimum Price .
+
+
+
+
+
+
+ Javascript and CSS Source Code
+
+
+
+
+ HTML Source Code
+
+
+
+
+
+
+
+
+ Slider (Multi-Thumb) design pattern in WAI-ARIA Authoring Practices 1.1
+
+
+
From d9e58e6c062117145eed299f51b1ba6fd1f58325 Mon Sep 17 00:00:00 2001
From: Nick Schonning
Date: Wed, 27 Feb 2019 22:26:25 -0500
Subject: [PATCH 4/5] fix: Apply ECLint fix
---
LICENSE.md | 1 -
aria-practices-DeletedSectionsArchive.html | 550 +++++++++---------
aria-practices.html | 162 +++---
examples/accordion/accordion.html | 2 +-
examples/accordion/js/accordion.js | 10 +-
examples/alert/alert.html | 2 +-
examples/alert/js/alert.js | 22 +-
examples/button/js/button.js | 10 +-
examples/carousel/carousel-1/carousel-1.html | 23 +-
examples/carousel/carousel-1/js/carousel.js | 19 +-
.../carousel/carousel-1/js/carouselButtons.js | 16 +-
.../carousel/carousel-1/js/carouselItem.js | 16 +-
.../carousel/carousel-1/js/pauseButton.js | 10 +-
examples/checkbox/checkbox-1/checkbox-1.html | 4 +-
examples/checkbox/checkbox-1/js/checkbox.js | 27 +-
examples/checkbox/checkbox-2/checkbox-2.html | 4 +-
.../checkbox/checkbox-2/js/checkboxMixed.js | 25 +-
.../checkbox-2/js/controlledCheckbox.js | 25 +-
...ultipleImplementationExample-Template.html | 2 +-
.../coding-template/Example-Template.html | 2 +-
.../combobox-autocomplete-none.html | 10 +-
.../aria1.0pattern/js/combobox-1.0-list.js | 6 +-
.../combobox/aria1.0pattern/js/listbox.js | 22 +-
.../aria1.0pattern/js/listboxOption.js | 6 +-
.../combobox/aria1.1pattern/grid-combo.html | 22 +-
.../aria1.1pattern/js/grid-combo-example.js | 10 +-
.../aria1.1pattern/js/grid-combobox.js | 6 +-
.../js/listbox-combo-example.js | 10 +-
.../aria1.1pattern/js/listbox-combobox.js | 6 +-
examples/css/github.css | 2 +-
examples/dialog-modal/js/dialog.js | 6 +-
examples/disclosure/js/disclosureButton.js | 24 +-
examples/feed/feed.html | 2 +-
examples/feed/js/feed.js | 6 +-
examples/feed/js/feedDisplay.js | 40 +-
examples/feed/js/main.js | 6 +-
examples/grid/LayoutGrids.html | 4 +-
examples/grid/advancedDataGrid.html | 2 +-
examples/grid/js/dataGrid.js | 6 +-
examples/grid/js/dataGrids.js | 6 +-
examples/grid/js/layoutGrids.js | 6 +-
examples/grid/js/menuButton.js | 8 +-
examples/index.html | 2 +-
examples/landmarks/HTML5.html | 24 +-
examples/landmarks/at.html | 42 +-
examples/landmarks/banner.html | 18 +-
examples/landmarks/complementary.html | 30 +-
examples/landmarks/contentinfo.html | 2 +-
examples/landmarks/form.html | 2 +-
examples/landmarks/index.html | 36 +-
examples/landmarks/main.html | 18 +-
examples/landmarks/navigation.html | 14 +-
examples/landmarks/region.html | 18 +-
examples/landmarks/resources.html | 40 +-
examples/landmarks/search.html | 18 +-
examples/link/js/link.js | 6 +-
examples/link/link.html | 2 +-
examples/listbox/js/listbox-rearrangeable.js | 6 +-
examples/listbox/js/listbox-scrollable.js | 6 +-
examples/listbox/js/listbox.js | 6 +-
examples/listbox/js/toolbar.js | 6 +-
examples/listbox/listbox-scrollable.html | 8 +-
examples/menu-button/js/MenuItemAction.js | 42 +-
.../js/MenuItemActionActivedescendant.js | 42 +-
examples/menu-button/js/MenuItemLinks.js | 42 +-
examples/menu-button/js/Menubutton.js | 56 +-
examples/menu-button/js/Menubutton2.js | 54 +-
examples/menu-button/js/PopupMenuAction.js | 72 +--
.../js/PopupMenuActionActivedescendant.js | 72 +--
examples/menu-button/js/PopupMenuLinks.js | 72 +--
...menu-button-actions-active-descendant.html | 16 +-
examples/menu-button/menu-button-actions.html | 4 +-
examples/menu-button/menu-button-links.html | 6 +-
.../menubar/menubar-1/images/separator.paint | Bin 4059 -> 4629 bytes
.../menubar/menubar-1/js/MenubarItemLinks.js | 6 +-
examples/menubar/menubar-1/js/MenubarLinks.js | 21 +-
.../menubar-1/js/PopupMenuItemLinks.js | 6 +-
.../menubar/menubar-1/js/PopupMenuLinks.js | 20 +-
examples/menubar/menubar-1/mb-admissions.html | 4 +-
.../menubar/menubar-2/css/menubarAction.css | 4 +-
.../menubar/menubar-2/js/MenubarAction.js | 49 +-
.../menubar/menubar-2/js/MenubarItemAction.js | 44 +-
.../menubar/menubar-2/js/PopupMenuAction.js | 64 +-
.../menubar-2/js/PopupMenuItemAction.js | 42 +-
.../menubar/menubar-2/js/menubar-2-init.js | 15 +-
examples/menubar/menubar-2/js/styleManager.js | 14 +-
examples/radio/radio-1/js/radioButton.js | 22 +-
examples/radio/radio-1/js/radioGroup.js | 22 +-
examples/radio/radio-1/radio-1.html | 2 +-
.../radio-2/js/radioButtonActiveDescendant.js | 22 +-
.../radio-2/js/radioGroupActiveDescendant.js | 32 +-
examples/radio/radio-2/radio-2.html | 2 +-
examples/slider/images/max-arrow.paint | Bin 11004 -> 13542 bytes
examples/slider/js/multithumb-slider.js | 14 +-
examples/slider/js/slider.js | 14 +-
examples/slider/js/text-slider.js | 14 +-
examples/slider/js/vertical-slider.js | 14 +-
examples/slider/slider-1.html | 52 +-
examples/slider/slider-2.html | 4 +-
examples/tabs/tabs-1/js/tabs.js | 6 +-
examples/tabs/tabs-1/tabs.html | 2 +-
examples/tabs/tabs-2/js/tabs.js | 6 +-
examples/toolbar/js/FontMenu.js | 24 +-
examples/toolbar/js/FontMenuButton.js | 11 +-
examples/toolbar/js/FontMenuItem.js | 38 +-
examples/toolbar/js/FormatToolbar.js | 24 +-
examples/toolbar/js/FormatToolbarItem.js | 10 +-
examples/toolbar/js/SpinButton.js | 10 +-
examples/toolbar/toolbar.html | 12 +-
examples/treegrid/js/treegrid-1.js | 1 -
examples/treegrid/treegrid-1.html | 52 +-
examples/treeview/treeview-1/css/tree.css | 2 +-
examples/treeview/treeview-1/js/tree.js | 34 +-
examples/treeview/treeview-1/js/treeitem.js | 34 +-
.../treeview/treeview-1/js/treeitemClick.js | 14 +-
examples/treeview/treeview-1/treeview-1a.html | 12 +-
examples/treeview/treeview-1/treeview-1b.html | 8 +-
.../treeview/treeview-2/css/treeLinks.css | 2 +-
examples/treeview/treeview-2/js/treeLinks.js | 34 +-
.../treeview/treeview-2/js/treeitemLinks.js | 34 +-
examples/treeview/treeview-2/treeview-2a.html | 76 +--
examples/treeview/treeview-2/treeview-2b.html | 16 +-
scripts/reference-tables.js | 10 +-
test/tests/LayoutGrids.js | 1 -
test/tests/breadcrumb.js | 2 -
test/tests/carousel-1.js | 1 -
test/tests/combo-10-autocomplete-both.js | 1 -
test/tests/combo-10-autocomplete-list.js | 1 -
test/tests/combo-10-autocomplete-none.js | 1 -
test/tests/combo-11-grid.js | 1 -
test/tests/combo-11-listbox.js | 1 -
test/tests/dataGrids.js | 1 -
test/tests/feed.js | 1 -
test/tests/listbox-rearrangeable.js | 1 -
test/tests/toolbar.js | 2 +-
test/tests/treegrid-1.js | 1 -
test/util/assertRovingTabindex.js | 1 -
test/util/assertTabOrder.js | 1 -
138 files changed, 1447 insertions(+), 1475 deletions(-)
diff --git a/LICENSE.md b/LICENSE.md
index 0f7c218c64..982d931424 100644
--- a/LICENSE.md
+++ b/LICENSE.md
@@ -1,4 +1,3 @@
All documents in this Repository are licensed by contributors
under the
[W3C Software and Document License](https://www.w3.org/Consortium/Legal/copyright-software).
-
diff --git a/aria-practices-DeletedSectionsArchive.html b/aria-practices-DeletedSectionsArchive.html
index f8ffc66206..386db1d2e4 100644
--- a/aria-practices-DeletedSectionsArchive.html
+++ b/aria-practices-DeletedSectionsArchive.html
@@ -1,162 +1,162 @@
- Content Deleted From WAI-ARIA Authoring Practices 1.1
-
-
-
-
-
-
+ Content Deleted From WAI-ARIA Authoring Practices 1.1
+
+
+
+
+
+
@@ -584,18 +584,18 @@ Keyboard Interaction
WAI-ARIA Roles, States, and Properties
-
- The current month has a label representing the month and year.
- It is advisable to use a role heading but is not essential.
- This "label" should have a unique ID.
-
- If the author would like to ensure that a label is announced by a screen reader, as the label changes, include live region properties with the label element: aria-live ="assertive"
and aria-atomic ="true"
.
- The container for the day of week headers and numeric days of the week has a role of grid .
- The grid has an aria-labelledby property with a value equivalent to the id of the label for the grid.
- Each name for the day of the week has a role columnheader and is not navigable via the keyboard.
- Each numeric day of the week has the role gridcell .
- When a day is selected its aria-selected is set to true
, otherwise it is set to false
or removed.
- Changes in aria states, identified here, as well as focus, are clearly styled to show the user where their point of regard is and what days are selected.
+
+ The current month has a label representing the month and year.
+ It is advisable to use a role heading but is not essential.
+ This "label" should have a unique ID.
+
+ If the author would like to ensure that a label is announced by a screen reader, as the label changes, include live region properties with the label element: aria-live ="assertive"
and aria-atomic ="true"
.
+ The container for the day of week headers and numeric days of the week has a role of grid .
+ The grid has an aria-labelledby property with a value equivalent to the id of the label for the grid.
+ Each name for the day of the week has a role columnheader and is not navigable via the keyboard.
+ Each numeric day of the week has the role gridcell .
+ When a day is selected its aria-selected is set to true
, otherwise it is set to false
or removed.
+ Changes in aria states, identified here, as well as focus, are clearly styled to show the user where their point of regard is and what days are selected.
When the date picker is active a calendar day of the week always has focus.
@@ -1213,11 +1213,11 @@
General Steps for Building an Accessible Widget with WAI-ARIA
onfocus="showFocus();"
>
<img src="img/btn1.gif" title="Home" alt="Home" role="button" id="button1"
- onclick="updateText('Home was invoked');">
+ onclick="updateText('Home was invoked');">
<img src="img/btn2.gif" title="Refresh" alt="Refresh" role="button" id="button2"
- onclick="updateText('Refresh was invoked');">
+ onclick="updateText('Refresh was invoked');">
<img src="img/btn3.gif" title="Help" alt="Help" role="button" id="button3"
- onclick="updateText('Help was invoked');">
+ onclick="updateText('Help was invoked');">
</div>
By setting tabindex=0 on the toolbar, the toolbar will receive focus in the document order. It is necessary then to use script and the aria-activedescendant property to manage virtual focus among the buttons. The details are given in step five, below.
@@ -1261,28 +1261,28 @@ General Steps for Building an Accessible Widget with WAI-ARIA
// Partial sample code for processing arrow keys
if (event.type == "keydown") {
- if (event.altKey) {
- return true; // Browser should use this, the menu view doesn't need alt-modified keys
- }
- // XXX Implement circular keyboard navigation within the toolbar buttons
-
- if (event.keyCode == DOM_VK_ENTER) {
- ExecuteButtonAction(getCurrentButtonID()); // This is an author defined function
- }
- else if (event.keyCode == event.DOM_VK_RIGHT) {
- // Change the active toolbar button to the one to the right (circular) by
- var buttonid = getNextButtonID(); // This is an author defined function
- tb.setAttribute("aria-activedescendant", buttonid);
- }
- else if (event.keyCode == event.DOM_VK_LEFT) {
+ if (event.altKey) {
+ return true; // Browser should use this, the menu view doesn't need alt-modified keys
+ }
+ // XXX Implement circular keyboard navigation within the toolbar buttons
+
+ if (event.keyCode == DOM_VK_ENTER) {
+ ExecuteButtonAction(getCurrentButtonID()); // This is an author defined function
+ }
+ else if (event.keyCode == event.DOM_VK_RIGHT) {
+ // Change the active toolbar button to the one to the right (circular) by
+ var buttonid = getNextButtonID(); // This is an author defined function
+ tb.setAttribute("aria-activedescendant", buttonid);
+ }
+ else if (event.keyCode == event.DOM_VK_LEFT) {
// Change the active toolbar button to the one to the left (circular) by
var buttonid = getPrevButtonID(); // This is an author defined function
tb.setAttribute("aria-activedescendant", buttonid);
- }
- else {
+ }
+ else {
return true;
- }
- return false;
+ }
+ return false;
}
else if (event.type == "keypress") {
…
@@ -1314,9 +1314,9 @@ General Steps for Building an Accessible Widget with WAI-ARIA
.treeitem[role="treeitem"][aria-selected="false"] {color: white; background-color: beige;}
Authors should be aware that CSS attribute selectors are not supported in some browsers, such as Internet Explorer 6. A consistent way to apply styling to reflect WAI-ARIA semantics would be to assign an element a class name based on the WAI-ARIA attribute being set using script as shown here:
function setSelectedOption(menuItem)
- {
+ {
if (menuItem.getAttribute("role") != "menuitem") {
- return;
+ return;
}
var menu = getMenu(menuItem);
var oldMenuItem = getSelectedOption(menu);
@@ -1372,11 +1372,11 @@ General Steps for Building an Accessible Widget with WAI-ARIA
Support basic accessibility, such as alternative text on images
When an image is used to represent information within a component, such as image buttons, you need to set the alternative text on those images. This is then mapped by the user agent to the accessible name in the platform accessibility API. Using our example:
<div role="toolbar" tabindex="0" aria-activedescendant="button1" id="tb1"
- onkeydown="return optionKeyEvent(event);"
- onkeypress="return optionKeyEvent(event);">
- <img src="buttoncut" role="button" id="button1" alt="cut">
- <img src="buttoncopy" role="button" id="button2" alt="copy">
- <img src="buttonpaste" role="button" id="button3" alt="paste">
+ onkeydown="return optionKeyEvent(event);"
+ onkeypress="return optionKeyEvent(event);">
+ <img src="buttoncut" role="button" id="button1" alt="cut">
+ <img src="buttoncopy" role="button" id="button2" alt="copy">
+ <img src="buttonpaste" role="button" id="button3" alt="paste">
</div>
Establish WAI-ARIA relationships between this widget and others
@@ -1528,8 +1528,8 @@ Steps for Defining a Logical Navigational Structure
<div role="main" title="Game Statistics"> … </div>
For application landmarks with static prose
-
- If you have a regional landmark of type application and static descriptive text is available, then on the application landmark, include an aria-describedby reference to associate the application and the static text as shown here:
<div role="application" aria-labelledby="calendar" aria-describedby="info">
+
+ If you have a regional landmark of type application and static descriptive text is available, then on the application landmark, include an aria-describedby reference to associate the application and the static text as shown here:
<div role="application" aria-labelledby="calendar" aria-describedby="info">
<h1 id="calendar">Calendar<h1>
<p id="info">
This calendar shows the game schedule for the Boston Red Sox.
@@ -1537,7 +1537,7 @@ Steps for Defining a Logical Navigational Structure
<div role="grid">
…
</div>
-
+
For landmarks unsuited to specialized region WAI-ARIA roles
You can create custom regional landmarks by using a generic region . While it is not essential to label these specialized regions with a header, you should provide a title to ensure that the region name is accessible to all users, just as you would the standard regional landmarks . See Header levels versus Nesting levels for directions on how to label the region.
<div role="main"> … <div role="region" title="weather">
@@ -1596,13 +1596,13 @@ Header Levels Versus Nesting Levels
Using ARIA:
<div role="main" aria-labelledby="page_title">
<p id="page_title" role="heading" aria-level="1">Top News Stories</p>
- … main page contents here …
+ … main page contents here …
</div>
Using native markup:
<div role="main" aria-labelledby="page_title">
<h1 id="page_title">Top News Stories</h1>
- … main page contents here …
+ … main page contents here …
</div>
@@ -1629,27 +1629,27 @@ Directories, Groups, and Regions
Directories and Their Applicability
The WAI-ARIA role, directory , allows authors to mark static table of content sections of a document. Prior to WAI-ARIA, the user would need to guess if an area of a document actually pertained to the table of contents. Authors should mark these sections within a document with a role of directory.
<div role="directory">
- <ul>
+ <ul>
<li>Global Warming Causes
<ul>
- <li>CO2 Buildup</li>
- <li>Auto emissions<li>
- <li>Factory emissions</li>
- <li>Destruction of rainforests</li>
+ <li>CO2 Buildup</li>
+ <li>Auto emissions<li>
+ <li>Factory emissions</li>
+ <li>Destruction of rainforests</li>
</ul>
</li>
<li>Tailoring CO2 buildup
<ul>
- <li>Elimination of the incandescent light bulb</li>
- <li>Hydrogen fuel cells</li>
- <li>Solar energy</li>
- <li>Wind power</li>
+ <li>Elimination of the incandescent light bulb</li>
+ <li>Hydrogen fuel cells</li>
+ <li>Solar energy</li>
+ <li>Wind power</li>
</ul>
</li>
- </ul>
+ </ul>
</div>
@@ -1675,7 +1675,7 @@ Regions and Their Use
Remaining Structural Roles
When constructing a grid or treegrid the author must use gridcell s for the actual cells:
<table role="grid">
- <tr>
+ <tr>
<td role= "columnheader">Apples</td><td role= "columnheader">Oranges</td>
- </tr>
- <tr>
+ </tr>
+ <tr>
<td role="gridcell">Macintosh</td><td role="gridcell">Valencia</td>
- </tr>
+ </tr>
</table>
Unlike table cells within a table, authors should ensure a grid's gridcell s are focusable through the use of tabindex (in HTML), or aria-activedescendant on the grid.They may also be editable, as is shown in the above example.
Treegrid's may require expanding and collapsing rows which may not be performed using a <tr>. In these instances authors will use an HTML <div>
. WAI-ARIA provides a role of row which may be assigned to the <div>
to convey to the assistive technology that this is still a row. If you decide to not use the native HTML <table> elements and choose more flexible elements, such as <div>
and <span>
s, with applied WAI-ARIA roles in this section, you should structurally lay out your elements in line with what you would expect from HTML. All of your rowheader s should be in a row and your gridcell s should be children of each subsequent row in the same format as HTML for <td>
s and <th>
s within <tr>
s.
@@ -1722,7 +1722,7 @@ Marking Descriptive Sections
<img src="foo" alt="abbreviated name" aria-describedby="prose1">
<div id="prose1">
- The prose in this div describes the image foo in detail.
+ The prose in this div describes the image foo in detail.
</div>
This is the preferred vehicle for providing long descriptions for elements in your document.
When the author does not desire the entire descriptive text to be located on the main page, aria-describedby can also be used to point to a link to another page.
@@ -1764,12 +1764,12 @@ Miscellaneous XHTML Section Roles
</dl>
The note role defines a parenthetic or ancillary remark to the main content of the resource. It also allows assistive technologies to skip over this section of the document unless more information is requested about the main content.
<div role="main" aria-labelledby="foo">
- <h1 id="foo">Wild fires spread across the San Diego Hills</h1>
- Strong winds expand fires ignited by high temperatures …
+ <h1 id="foo">Wild fires spread across the San Diego Hills</h1>
+ Strong winds expand fires ignited by high temperatures …
</div>
<div role="note">
- This article was last updated July 30, 2008 at 6:05PM.
+ This article was last updated July 30, 2008 at 6:05PM.
</div>
@@ -2033,33 +2033,33 @@ Supporting Tooltips with the Keyboard
<html lang="en-us"">
<head>
- <title>inline: Tooltip Example 1</title>
- <link rel="stylesheet" href="css/tooltip1_inline.css" type="text/css">
- <script type="text/javascript" src="js/tooltip1_inline.js"></script>
- <script type="text/javascript" src="../js/widgets_inline.js"></script>
- <script type="text/javascript" src="../js/globals.js"></script>
- <link rel="icon" href="http://www.cites.uiuc.edu/favicon.ico" type="image/x-icon">
- <link rel="shortcut icon" href="http://www.cites.uiuc.edu/favicon.ico" type="image/x-icon">
+ <title>inline: Tooltip Example 1</title>
+ <link rel="stylesheet" href="css/tooltip1_inline.css" type="text/css">
+ <script type="text/javascript" src="js/tooltip1_inline.js"></script>
+ <script type="text/javascript" src="../js/widgets_inline.js"></script>
+ <script type="text/javascript" src="../js/globals.js"></script>
+ <link rel="icon" href="http://www.cites.uiuc.edu/favicon.ico" type="image/x-icon">
+ <link rel="shortcut icon" href="http://www.cites.uiuc.edu/favicon.ico" type="image/x-icon">
</head>
- …
+ …
- <body onload="initApp()">
+ <body onload="initApp()">
- <div id="container">
+ <div id="container">
- <h1>Tooltip Example 1</h1>
- <h2>Create Account</h2>
- <div class="text">
- <label for="first">First Name:</label>
+ <h1>Tooltip Example 1</h1>
+ <h2>Create Account</h2>
+ <div class="text">
+ <label for="first">First Name:</label>
- <input type="text" id="first" name="first" size="20"
+ <input type="text" id="first" name="first" size="20"
onmouseover="tooltipShow(event, this, 'tp1');"
onfocus="tooltipShow(event, this, 'tp1');"
aria-describedby="tp1"
aria-required="false"/>
- <div id="tp1" role="tooltip" aria-hidden="true">Your first name is optional. </div>
- </div>
+ <div id="tp1" role="tooltip" aria-hidden="true">Your first name is optional. </div>
+ </div>
…
@@ -2094,8 +2094,8 @@ Labeling and Describing
Marked up content or widgets will often need additional context to make clear what the meaning or purpose is. It is also reasonable that some content media types will need additional descriptions in another format to give clarity to those who are unable to consume the origin format. These additional meta-content sections are linked together by tagging them as labels or descriptions. WAI-ARIA provides the aria-labelledby and aria-describedby attributes to signal the browser to feed these relationships into the accessibility layer. This layer is then used by screen readers and other accessibility technology (AT) to gain awareness of how disparate regions are actually contextually connected to each other. With this awareness the AT can then present a meaningful navigation model for discovery and presentation of these additional content sections. The user agent itself can also choose to present these insights in a meaningful way. Generally you should always add these attributes to any widgets on your site as they are often merely a construct of HTML and JavaScript which provides no obvious insight as to what the widget's behavior or interactivity is.
Labeling
- When using one element to label another use the aria-labelledby by attribute. A label should provide the user with the essence of what the object does. For example, you could have a dialog box erected from HTML <div>
and you need to associate a label for the dialog. With a WAI-ARIA role of dialog, you can indicate its widget type and define a label using an HTML header and then associate that label with the dialog using the aria-labelledby relationship.
-
+ When using one element to label another use the aria-labelledby by attribute. A label should provide the user with the essence of what the object does. For example, you could have a dialog box erected from HTML <div>
and you need to associate a label for the dialog. With a WAI-ARIA role of dialog, you can indicate its widget type and define a label using an HTML header and then associate that label with the dialog using the aria-labelledby relationship.
+
<div role="dialog" aria-labelledby="dialogheader">
<h2 id="dialogheader">Choose a File</h2>
… Dialog contents
@@ -2143,12 +2143,12 @@ Using a tooltip as a description
Descriptions on external pages
The aria-describedby
property is not designed to reference descriptions on an external resource—since it is an IDREF, it must reference an element in the same DOM document. This is different from the HTML longdesc
attribute, which accepts any URI. In general, the preferred pattern for WAI-ARIA applications is to include all relevant resources in the same DOM, But if you wish to reference an external resource with aria-describedby
, you can reference a link that in turn references the external resource. This requires the user to follow two steps, first following the aria-describedby
arc, then following the link, but does address the use case. The following example demonstrates this:
<p>
- <img
- src="images/histogram.png"
- alt="Histogram of Blackberry tree heights"
- width="40%"
- aria-describedby="longdesc1"
- />
+ <img
+ src="images/histogram.png"
+ alt="Histogram of Blackberry tree heights"
+ width="40%"
+ aria-describedby="longdesc1"
+ />
</p>
<p>
@@ -2450,9 +2450,9 @@ Choosing Between Special Case Live Regions
<label id="gettext">Send Text</label>
<div aria-controls="chatlog"
- role="textbox"
- contenteditable="true"
- aria-labelledby="gettext">
+ role="textbox"
+ contenteditable="true"
+ aria-labelledby="gettext">
</div
live region - If you have some other live area use case, WAI-ARIA allows you to mark an area using the aria-live attribute. This, accompanied by the collection of attributes which support the live property, allows you to create your own custom live area on your Web page. For more details regarding live regions refer to the live region section of this guide.
@@ -2702,22 +2702,22 @@ Math
<math xmlns='http://www.w3.org/1998/Math/MathML'>
<mrow>
<mrow>
- <mrow>
+ <mrow>
<mi>a</mi>
<mo>⁢ <!-- invisible times --></mo>
<msup>
<mi>x</mi>
<mn>2</mn>
</msup>
- </mrow>
- <mo>+</mo>
- <mrow>
+ </mrow>
+ <mo>+</mo>
+ <mrow>
<mi>b</mi>
<mo>⁢ <!-- invisible times --></mo>
<mi>x</mi>
- </mrow>
- <mo>+</mo>
- <mi>c</mi>
+ </mrow>
+ <mo>+</mo>
+ <mi>c</mi>
</mrow>
<mo>=</mo>
<mn>0</mn>
@@ -2735,26 +2735,26 @@ Math
<math xmlns='http://www.w3.org/1998/Math/MathML'>
<mrow>
<mrow>
- <mi>f</mi>
- <mo>⁡</mo>
- <mrow>
+ <mi>f</mi>
+ <mo>⁡</mo>
+ <mrow>
<mo>(</mo>
<mrow>
- <mi>x</mi>
+ <mi>x</mi>
</mrow>
<mo>)</mo>
- </mrow>
+ </mrow>
</mrow>
<mo>=</mo>
<mrow>
- <msup>
- <mi>x</mi>
- <mn>2</mn>
- </msup>
- <mo>+</mo>
- <mi>x</mi>
- <mo>−</mo>
- <mn>2</mn>
+ <msup>
+ <mi>x</mi>
+ <mn>2</mn>
+ </msup>
+ <mo>+</mo>
+ <mi>x</mi>
+ <mo>−</mo>
+ <mn>2</mn>
</mrow>
</mrow>
</math>
@@ -3278,13 +3278,13 @@ Use of XHTML Role Landmarks to Improve Document Navigation
<div id="leftnav">
<h2 class="nav" id="leftnav_label">Career Center Services</h2>
<ul title="Career Center Services" role="navigation" aria-labelledby="leftnav_label">
- <li><a href="http://www.uiuc.edu/">Career Home</a></li>
- <li><a href="http://www.uiuc.edu/">Career Counseling</a></li>
- <li><a href="http://www.uiuc.edu/">Pre-Health Advising</a></li>
- <li><a href="http://www.uiuc.edu/">Services</a></li>
- <li><a href="http://www.uiuc.edu/">Workshops</a></li>
- <li><a href="http://www.uiuc.edu/">Resource Center</a></li>
- <li><a href="http://www.uiuc.edu/">Question Board/FAQ</a></li>
+ <li><a href="http://www.uiuc.edu/">Career Home</a></li>
+ <li><a href="http://www.uiuc.edu/">Career Counseling</a></li>
+ <li><a href="http://www.uiuc.edu/">Pre-Health Advising</a></li>
+ <li><a href="http://www.uiuc.edu/">Services</a></li>
+ <li><a href="http://www.uiuc.edu/">Workshops</a></li>
+ <li><a href="http://www.uiuc.edu/">Resource Center</a></li>
+ <li><a href="http://www.uiuc.edu/">Question Board/FAQ</a></li>
</ul>
...
diff --git a/aria-practices.html b/aria-practices.html
index ea9a5acbee..8f5d3870b3 100644
--- a/aria-practices.html
+++ b/aria-practices.html
@@ -477,7 +477,7 @@ WAI-ARIA Roles, States, and Properties
-
+
-
+
Authors are strongly encouraged to use a native host language link element, such as an HTML
<A>
element with an href
attribute. As with other WAI-ARIA
@@ -1819,8 +1819,8 @@
Keyboard Interaction
Down Arrow : Moves focus to the next option. Optionally, in a single-select listbox, selection may also move with focus.
Up Arrow : Moves focus to the previous option. Optionally, in a single-select listbox, selection may also move with focus.
- Home (Optional): Moves focus to first option. Optionally, in a single-select listbox, selection may also move with focus. Supporting this key is strongly recommended for lists with more than five options.
- End (Optional): Moves focus to last option. Optionally, in a single-select listbox, selection may also move with focus. Supporting this key is strongly recommended for lists with more than five options.
+ Home (Optional): Moves focus to first option. Optionally, in a single-select listbox, selection may also move with focus. Supporting this key is strongly recommended for lists with more than five options.
+ End (Optional): Moves focus to last option. Optionally, in a single-select listbox, selection may also move with focus. Supporting this key is strongly recommended for lists with more than five options.
Type-ahead is recommended for all listboxes, especially those with more than seven options:
Type a character: focus moves to the next item with a name that starts with the typed character.
@@ -2179,7 +2179,7 @@ For Radio Groups Not Contained in a Toolbar
Tab and Shift + Tab :
- Move focus into and out of the radio group.
+ Move focus into and out of the radio group.
When focus moves into a radio group :
If a radio button is checked, focus is set on the checked button.
@@ -2618,7 +2618,7 @@ Keyboard Interaction
sets focus on the tab following the tab that was closed, and optionally activates the newly focused tab. If there is not a tab that followed the tab that was deleted,
e.g., the deleted tab was the right-most tab in a left-to-right horizontal tab list,
sets focus on and optionally activates the tab that preceded the deleted tab.
- If the application allows all tabs to be deleted, and the user deletes the last remaining tab in the tab list,
+ If the application allows all tabs to be deleted, and the user deletes the last remaining tab in the tab list,
the application moves focus to another element that provides a logical work flow.
As an alternative to Delete , or in addition to supporting Delete , the delete function is available in a context menu.
@@ -2861,14 +2861,14 @@ Keyboard Interaction
When focus is on a open node, moves focus to the first child node.
When focus is on an end node, does nothing.
-
+
Left arrow :
When focus is on an open node, closes the node.
When focus is on a child node that is also either an end node or a closed node, moves focus to its parent node.
When focus is on a root node that is also either an end node or a closed node, does nothing.
-
+
Down Arrow : Moves focus to the next node that is focusable without opening or closing a node.
Up Arrow : Moves focus to the previous node that is focusable without opening or closing a node.
Home : Moves focus to the first node in the tree without opening or closing a node.
@@ -3061,35 +3061,35 @@ Keyboard Interaction
Page Up :
-
+
If focus is on a row, moves focus up an author-determined number of rows, typically scrolling so the top row in the currently visible set of rows becomes one of the last visible rows. If focus is in the first row, focus does not move.
If focus is on a cell, moves focus up an author-determined number of cells, typically scrolling so the top row in the currently visible set of rows becomes one of the last visible rows. If focus is in the first row, focus does not move.
Home :
-
+
If focus is on a row, moves focus to the first row. If focus is in the first row, focus does not move.
If focus is on a cell, moves focus to the first cell in the row. If focus is in the first cell of the row, focus does not move.
End :
-
+
If focus is on a row, moves focus to the last row. If focus is in the last row, focus does not move.
If focus is on a cell, moves focus to the last cell in the row. If focus is in the last cell of the row, focus does not move.
Control + Home :
-
+
If focus is on a row, moves focus to the first row. If focus is in the first row, focus does not move.
If focus is on a cell, moves focus to the first cell in the column. If focus is in the first row, focus does not move.
Control + End :
-
+
If focus is on a row, moves focus to the last row. If focus is in the last row, focus does not move.
If focus is on a cell, moves focus to the last cell in the column. If focus is in the last row, focus does not move.
@@ -3211,7 +3211,7 @@ WAI-ARIA Roles, States, and Properties
-
+
-
+
Acknowledgements
@@ -5002,59 +5002,59 @@ Major Contributors to Version 1.1
Valerie Young of Bocoup and her sponsor, Facebook, for development of the example test framework and regressions tests for more than 50 examples.
-
- Participants active in the ARIA Authoring Practices Task Force
-
- Ann Abbott (Invited Expert)
- Shirisha Balusani (Microsoft Corporation)
- Curt Bellew (Oracle)
- Michiel Bijl (Invited Expert)
- Michael Cooper (W3C)
- Bryan Garaventa (Level Access)
- Jon Gunderson (University of Illinois at Urbana-Champaign)
- Hans Hillen (The Paciello Group, LLC)
- Matt King (Facebook)
- Jaeun Ku (University of Illinois at Urbana-Champaign)
- Aaron Leventhal (Google)
- Mark McCarthy (University of Illinois at Urbana-Champaign)
- James Nurthen (Adobe)
- Evan Yamanishi (W. W. Norton)
- Valerie Young (Bocoup)
-
-
-
- Other commenters and contributors to Version 1.1
-
- Vyacheslav Aristov
- J. Renée Beach
- Kasper Christensen
- Gerard K. Cohen
- Anne-Gaelle Colom
- Kevin Coughlin
- Cameron Cundiff
- Manish Dahamiwal
- Gilmore Davidson
- Boris Dušek
- Michael Fairchild
- Jeremy Felt
- Rob Fentress
- Geppy
- Tatiana Iskandar
- Patrick Lauke
- Marek Lewandowski
- Carolyn MacLeod
- Dan Matthew
- Shane McCarron
- Victor Meyer
- Jonathan Neal
- Philipp Rudloff
- Joseph Scheuhammer
- Nick Schonni
- thomascorthals
- Christopher Tryens
-
-
-
+
+ Participants active in the ARIA Authoring Practices Task Force
+
+ Ann Abbott (Invited Expert)
+ Shirisha Belusani (Microsoft Corporation)
+ Curt Bellew (Oracle)
+ Michiel Bijl (Invited Expert)
+ Michael Cooper (W3C)
+ Bryan Garaventa (Level Access)
+ Jon Gunderson (University of Illinois at Urbana-Champaign)
+ Hans Hillen (The Paciello Group, LLC)
+ Matt King (Facebook)
+ Jaeun Ku (University of Illinois at Urbana-Champaign)
+ Aaron Leventhal (Google)
+ Mark McCarthy (University of Illinois at Urbana-Champaign)
+ James Nurthen (Adobe)
+ Evan Yamanishi (W. W. Norton)
+ Valerie Young (Bocoup)
+
+
+
+ Other commenters and contributors to Version 1.1
+
+ Vyacheslav Aristov
+ J. Renée Beach
+ Kasper Christensen
+ Gerard K. Cohen
+ Anne-Gaelle Colom
+ Kevin Coughlin
+ Cameron Cundiff
+ Manish Dahamiwal
+ Gilmore Davidson
+ Boris Dušek
+ Michael Fairchild
+ Jeremy Felt
+ Rob Fentress
+ Geppy
+ Tatiana Iskandar
+ Patrick Lauke
+ Marek Lewandowski
+ Carolyn MacLeod
+ Dan Matthew
+ Shane McCarron
+ Victor Meyer
+ Jonathan Neal
+ Philipp Rudloff
+ Joseph Scheuhammer
+ Nick Schonni
+ thomascorthals
+ Christopher Tryens
+
+
+
diff --git a/examples/accordion/accordion.html b/examples/accordion/accordion.html
index 890613e068..736eeff907 100644
--- a/examples/accordion/accordion.html
+++ b/examples/accordion/accordion.html
@@ -273,7 +273,7 @@ Role, Property, State, and Tabindex Attributes
Element that serves as an accordion header.
Each accordion header element contains a button that controls the visibility of its content panel.
- The example uses heading level 3 so it fits correctly within the outline of the page; the example is contained in a section titled with a level 2 heading.
+ The example uses heading level 3 so it fits correctly within the outline of the page; the example is contained in a section titled with a level 2 heading.
diff --git a/examples/accordion/js/accordion.js b/examples/accordion/js/accordion.js
index 8d0b354ed0..0cc19ec4ae 100644
--- a/examples/accordion/js/accordion.js
+++ b/examples/accordion/js/accordion.js
@@ -1,9 +1,9 @@
/*
-* This content is licensed according to the W3C Software License at
-* https://www.w3.org/Consortium/Legal/2015/copyright-software-and-document
-*
-* Simple accordion pattern example
-*/
+ * This content is licensed according to the W3C Software License at
+ * https://www.w3.org/Consortium/Legal/2015/copyright-software-and-document
+ *
+ * Simple accordion pattern example
+ */
'use strict';
diff --git a/examples/alert/alert.html b/examples/alert/alert.html
index f061fefc87..d59f5e2fb1 100644
--- a/examples/alert/alert.html
+++ b/examples/alert/alert.html
@@ -23,7 +23,7 @@
Related Issues
Design Pattern
-
+
Alert Example
diff --git a/examples/alert/js/alert.js b/examples/alert/js/alert.js
index 4c26b140b2..838c8617aa 100644
--- a/examples/alert/js/alert.js
+++ b/examples/alert/js/alert.js
@@ -1,8 +1,8 @@
/*
-* This content is licensed according to the W3C Software License at
-* https://www.w3.org/Consortium/Legal/2015/copyright-software-and-document
-*
-*/
+ * This content is licensed according to the W3C Software License at
+ * https://www.w3.org/Consortium/Legal/2015/copyright-software-and-document
+ *
+ */
window.addEventListener('load', function () {
var button = document.getElementById('alert-trigger');
@@ -12,13 +12,13 @@ window.addEventListener('load', function () {
});
/*
-* @function addAlert
-*
-* @desc Adds an alert to the page
-*
-* @param {Object} event - Standard W3C event object
-*
-*/
+ * @function addAlert
+ *
+ * @desc Adds an alert to the page
+ *
+ * @param {Object} event - Standard W3C event object
+ *
+ */
function addAlert (event) {
diff --git a/examples/button/js/button.js b/examples/button/js/button.js
index 1c55e39057..2f77ec742b 100644
--- a/examples/button/js/button.js
+++ b/examples/button/js/button.js
@@ -1,9 +1,9 @@
/*
-* This content is licensed according to the W3C Software License at
-* https://www.w3.org/Consortium/Legal/2015/copyright-software-and-document
-*
-* JS code for the button design pattern
-*/
+ * This content is licensed according to the W3C Software License at
+ * https://www.w3.org/Consortium/Legal/2015/copyright-software-and-document
+ *
+ * JS code for the button design pattern
+ */
var ICON_MUTE_URL = 'images/mute.svg#icon-mute';
var ICON_SOUND_URL = 'images/mute.svg#icon-sound';
diff --git a/examples/carousel/carousel-1/carousel-1.html b/examples/carousel/carousel-1/carousel-1.html
index 3c93d9c3cf..954e54b4f1 100644
--- a/examples/carousel/carousel-1/carousel-1.html
+++ b/examples/carousel/carousel-1/carousel-1.html
@@ -53,10 +53,10 @@
Example
+ role="button"
+ tabindex="0"
+ aria-controls="myCarousel-items"
+ aria-label="Previous Slide">
@@ -64,10 +64,10 @@ Example
+ role="button"
+ tabindex="0"
+ aria-controls="myCarousel-items"
+ aria-label="Next Slide">
@@ -88,7 +88,7 @@ Example
@@ -370,7 +370,7 @@ Role, Property, State, and Tabindex Attributes
Applied to a div
element that contains all the slides.
- Identifies the container element as a live region that is in the "off" state, meaning assistive technology users are not informed about changes to the region.
+ Identifies the container element as a live region that is in the "off" state, meaning assistive technology users are not informed about changes to the region.
The live region is off when the carousel is automatically rotating.
@@ -386,7 +386,7 @@ Role, Property, State, and Tabindex Attributes
Applied to a div
element that contains all the slides.
- Identifies the container element as a live region in the "polite" state, meaning assistive technology users are informed about changes to the region at the next available opportunity.
+ Identifies the container element as a live region in the "polite" state, meaning assistive technology users are informed about changes to the region at the next available opportunity.
This causes screen readers to automatically announce the content of slides when the next and previous slide buttons are activated.
@@ -522,4 +522,3 @@ HTML Source Code