diff --git a/Gemfile.lock b/Gemfile.lock index fe932d6e589..40457fe756a 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -118,7 +118,7 @@ GEM concurrent-ruby (~> 1.0) tzinfo-data (1.2022.7) tzinfo (>= 1.0.0) - unicode-display_width (2.3.0) + unicode-display_width (2.4.1) webrick (1.7.0) PLATFORMS diff --git a/package-lock.json b/package-lock.json index 3b97670f895..1db41f09d7a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,7 +14,7 @@ "remark-lint-fenced-code-flag": "^3.1.1", "remark-lint-no-shell-dollars": "^3.1.1", "remark-stringify": "^10.0.2", - "textlint": "^12.2.4", + "textlint": "^12.5.0", "textlint-filter-rule-comments": "^1.2.2", "textlint-rule-common-misspellings": "^1.0.1", "textlint-rule-terminology": "^3.0.4" @@ -228,44 +228,89 @@ "dev": true }, "node_modules/@textlint/ast-node-types": { - "version": "12.2.2", - "resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-12.2.2.tgz", - "integrity": "sha512-VQAXUSGdmEajHXrMxeM9ZTS8UBJSVB0ghJFHpFfqYKlcDsjIqClSmTprY6521HoCoSLoUIGBxTC3jQyUMJFIWw==", + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-12.3.0.tgz", + "integrity": "sha512-ke5hlKy/xZ/vQt6j+h4k9GradJPDsV3FKsUqWpCpF/X8qWCU2zM4e1SMUAFjoUcLuF9in+eXIQ71Qm/AdjjkZQ==", "dev": true }, "node_modules/@textlint/ast-tester": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/ast-tester/-/ast-tester-12.2.3.tgz", - "integrity": "sha512-+yLj38mgrluEFXD8rmwmMo+2lQbrx3v5aQBkHUZdddAq/1LJu4qqctikUzAeVRJZPWKsdLrN3vaLT2rp4h8KYg==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/ast-tester/-/ast-tester-12.5.0.tgz", + "integrity": "sha512-osHf1OFLC3RnjGyoSBynn2u5pgj7qkik8TNaxgPekVwlLWtJTcyh22PHo+mXPF47XWM5gJQmy/72nUrqtbDMPg==", "dev": true, "dependencies": { - "@textlint/ast-node-types": "^12.2.2", + "@textlint/ast-node-types": "^12.3.0", "debug": "^4.3.4" } }, "node_modules/@textlint/ast-traverse": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/ast-traverse/-/ast-traverse-12.2.3.tgz", - "integrity": "sha512-sv06SITci07P1LQQxH1hSv04xoHz2OC+WlppTuMoOFR20kRBMyOs7Ssvor0NdNmspDXG8qvdCBxh9rFmdNSJyQ==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/ast-traverse/-/ast-traverse-12.5.0.tgz", + "integrity": "sha512-TAbfxz8x8Q/sn7D/h7OikzYp5NqPDrRExm3N+3v9yj+gq++fxHtskas48tm1TYcChTMq6BbPU+EGbdlMo3rWWA==", "dev": true, "dependencies": { - "@textlint/ast-node-types": "^12.2.2" + "@textlint/ast-node-types": "^12.3.0" + } + }, + "node_modules/@textlint/config-loader": { + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/config-loader/-/config-loader-12.5.0.tgz", + "integrity": "sha512-g706+XwdsUGpVXzqW7OFcBO8XdxH1AqbD0D3UYEjlfUONXD0c4Bymctdjk49hzOwTVDGqj+CCyvL+cB/X2bG+Q==", + "dev": true, + "dependencies": { + "@textlint/kernel": "^12.5.0", + "@textlint/module-interop": "^12.5.0", + "@textlint/types": "^12.5.0", + "@textlint/utils": "^12.5.0", + "debug": "^4.3.4", + "rc-config-loader": "^4.1.1", + "try-resolve": "^1.0.1" + } + }, + "node_modules/@textlint/config-loader/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/@textlint/config-loader/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@textlint/config-loader/node_modules/rc-config-loader": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/rc-config-loader/-/rc-config-loader-4.1.2.tgz", + "integrity": "sha512-qKTnVWFl9OQYKATPzdfaZIbTxcHziQl92zYSxYC6umhOqyAsoj8H8Gq/+aFjAso68sBdjTz3A7omqeAkkF1MWg==", + "dev": true, + "dependencies": { + "debug": "^4.3.4", + "js-yaml": "^4.1.0", + "json5": "^2.2.2", + "require-from-string": "^2.0.2" } }, "node_modules/@textlint/feature-flag": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/feature-flag/-/feature-flag-12.2.3.tgz", - "integrity": "sha512-KrKc8dY3iept6Hv/dSKwaYAkjFdYbaithXAnRpp0O4fkXPdv6HYu7iGtM2kA4nkVLdjrzAnPNKA9tmP3EE0qNg==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/feature-flag/-/feature-flag-12.5.0.tgz", + "integrity": "sha512-GdyRbbIsWRuZieWKvRxQA8j5wX5hzq+QqEmuputBrU/KKapNfkg6uNY2GOY6SWvC8QcwD0dYh3Dy1x2txT8p8Q==", "dev": true }, "node_modules/@textlint/fixer-formatter": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/fixer-formatter/-/fixer-formatter-12.2.3.tgz", - "integrity": "sha512-O3O1B1Xihlk5bXnMqjTgwMegnDTzE3rAQRvcJ2zTZQNhjSLpUDsRRcZW4FteGsQkWT9rOFrFQbHNbJdkiyu4cA==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/fixer-formatter/-/fixer-formatter-12.5.0.tgz", + "integrity": "sha512-iq+fdacaVcI1W3izo2V6JJOcnlUdDL9mX2Q1Ok3b+xwEzG5ZFo3G8iPpdQZXVZDE2jehRSvom8gsOds+n5ZffQ==", "dev": true, "dependencies": { - "@textlint/module-interop": "^12.2.3", - "@textlint/types": "^12.2.3", + "@textlint/module-interop": "^12.5.0", + "@textlint/types": "^12.5.0", "chalk": "^4.1.2", "debug": "^4.3.4", "diff": "^4.0.2", @@ -277,33 +322,33 @@ } }, "node_modules/@textlint/kernel": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/kernel/-/kernel-12.2.3.tgz", - "integrity": "sha512-O0oifeiotA7ZEpWGssGPHCpIDUcsUfkmNTypk6j0l5m+VL+X3Zz0z/F+i02O9eMcizzLFcnC8oMoLxeYNhJCKg==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/kernel/-/kernel-12.5.0.tgz", + "integrity": "sha512-9UspUHtS2FShTO9pWnrZjadjIvJzFIdIZDKIYCdZuUdU8dEhJqwOdYosqM4N5Wy40aMKnv4Voxp80Ssaq7zZaA==", "dev": true, "dependencies": { - "@textlint/ast-node-types": "^12.2.2", - "@textlint/ast-tester": "^12.2.3", - "@textlint/ast-traverse": "^12.2.3", - "@textlint/feature-flag": "^12.2.3", - "@textlint/source-code-fixer": "^12.2.3", - "@textlint/types": "^12.2.3", - "@textlint/utils": "^12.2.3", + "@textlint/ast-node-types": "^12.3.0", + "@textlint/ast-tester": "^12.5.0", + "@textlint/ast-traverse": "^12.5.0", + "@textlint/feature-flag": "^12.5.0", + "@textlint/source-code-fixer": "^12.5.0", + "@textlint/types": "^12.5.0", + "@textlint/utils": "^12.5.0", "debug": "^4.3.4", "deep-equal": "^1.1.1", "structured-source": "^3.0.2" } }, "node_modules/@textlint/linter-formatter": { - "version": "12.2.4", - "resolved": "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-12.2.4.tgz", - "integrity": "sha512-vF/qPrDYLH9jGB/HU8euVLv7BBATYmviBl9fGcx5vO8Lq/D2vHS9MUdk1JddgW/cDqnrI0nNVlLFUphJsXtp6w==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-12.5.0.tgz", + "integrity": "sha512-cJ87VGmyqDyjxT2aL3492g/YyGh6AU7/3QqxKN9q8rxJtzaY2e1uJrUKdpj0oOj1xZzYYv8zPeIpFaiFtNW02Q==", "dev": true, "dependencies": { "@azu/format-text": "^1.0.1", "@azu/style-format": "^1.0.0", - "@textlint/module-interop": "^12.2.3", - "@textlint/types": "^12.2.3", + "@textlint/module-interop": "^12.5.0", + "@textlint/types": "^12.5.0", "chalk": "^4.1.2", "debug": "^4.3.4", "is-file": "^1.0.0", @@ -319,12 +364,12 @@ } }, "node_modules/@textlint/markdown-to-ast": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-12.2.3.tgz", - "integrity": "sha512-omZqcZV1Q8t9K0IKvlHNIdTV3SKNaS2P5qkbTjzDj7PuTuvG20JFqL9Naiwwi9ty3NzTzq+W8lLG3H2HgX0WvA==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-12.5.0.tgz", + "integrity": "sha512-+fUslPm0+ukMnRVMPUQwKv1DEwmDP/rXFuzc5+k5tCMhighZ/Fv/e3Y9MUe7SgNDte7ilajTa3/uP0Iurr60WA==", "dev": true, "dependencies": { - "@textlint/ast-node-types": "^12.2.2", + "@textlint/ast-node-types": "^12.3.0", "debug": "^4.3.4", "mdast-util-gfm-autolink-literal": "^0.1.3", "remark-footnotes": "^3.0.0", @@ -654,61 +699,61 @@ } }, "node_modules/@textlint/module-interop": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/module-interop/-/module-interop-12.2.3.tgz", - "integrity": "sha512-tBtjf+hcOV8bTGae48bBj05Z8PmC6AQ+wCLl4PWE1zqUZIo9hxJL5nRpBn8l6HT6HCdtACE0UU85op9QmjmPXw==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/module-interop/-/module-interop-12.5.0.tgz", + "integrity": "sha512-NmkHL5tt+HEqLm00JSW1f03KTbEqOzupliboSZ2HeNhOqZxSX4wR3lBlGqVeVi5dImMWrt40oa+AbkqkD78b9Q==", "dev": true }, "node_modules/@textlint/source-code-fixer": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/source-code-fixer/-/source-code-fixer-12.2.3.tgz", - "integrity": "sha512-uXGpD3hcqGNVL8yUpZci0+DDXUi81/MlMOzK6OWLDYBXdIZvJ0ADXQ/oUkljWIdmzMcME1AXkHvC5EGL0td2Sg==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/source-code-fixer/-/source-code-fixer-12.5.0.tgz", + "integrity": "sha512-7LebJ6Y64Rb4fVYyokpU8FnjNLdx+TehcHQJ9L/fi8PYVjpS/08klYtYfRtKWmi/vrWED7U0aGhb8Xr26NuWFw==", "dev": true, "dependencies": { - "@textlint/types": "^12.2.3", + "@textlint/types": "^12.5.0", "debug": "^4.3.4" } }, "node_modules/@textlint/text-to-ast": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/text-to-ast/-/text-to-ast-12.2.3.tgz", - "integrity": "sha512-nsBI5TFe38ZzzbCyshZqLkG2DD4G8fJ0mC3imiTAGamGnUV8mDANmdvE7nmUtZTLlU319s/U0oXC0E7btgN+cQ==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/text-to-ast/-/text-to-ast-12.5.0.tgz", + "integrity": "sha512-wOWYX+d821ThwNYNk5hfxOBxvkqKUpNOBKkDaic4V+dkuBoAS0D9lE9fA9Ps62kL/I1uQwhU5d4qsAHWnFmQkw==", "dev": true, "dependencies": { - "@textlint/ast-node-types": "^12.2.2" + "@textlint/ast-node-types": "^12.3.0" } }, "node_modules/@textlint/textlint-plugin-markdown": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-markdown/-/textlint-plugin-markdown-12.2.3.tgz", - "integrity": "sha512-phmA5e1JQaJt0IFHm0WkNpX66ieYXShoIzg6J3wcrAHS12kQcL0HxBgjdUjOeulOemKst2JqFNqsvhGXdTAUFw==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-markdown/-/textlint-plugin-markdown-12.5.0.tgz", + "integrity": "sha512-1B4mTmA1NOvK2kAk4Rl/TW3QFB80iwhsOKSJ16nCH/yvF82xgH+Gu4gQB/prNpACb4TivmzwvBRYp7rzhOTTyA==", "dev": true, "dependencies": { - "@textlint/markdown-to-ast": "^12.2.3" + "@textlint/markdown-to-ast": "^12.5.0" } }, "node_modules/@textlint/textlint-plugin-text": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-text/-/textlint-plugin-text-12.2.3.tgz", - "integrity": "sha512-CMK9h3EwyQFayYBGafQairg2MbVtGkw1roazOjXLSTicYr7xT/rqhN26Ix6C7OvBbugyRO+DhqJjPY8Xyv0BQA==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-text/-/textlint-plugin-text-12.5.0.tgz", + "integrity": "sha512-ec3rZaJYytoscwpAtuxD4UM3bUPqNAeWKia+LMaVMWREULwKfntlSAqSNmudujEkxdsKr028CkzYuP78q8Xmuw==", "dev": true, "dependencies": { - "@textlint/text-to-ast": "^12.2.3" + "@textlint/text-to-ast": "^12.5.0" } }, "node_modules/@textlint/types": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/types/-/types-12.2.3.tgz", - "integrity": "sha512-7948CPxVsZu99zlIWDyxwT6MI33WpwKwVSD9jk0e5M8VcdxMUnecVq6D40h8LAtfsT5V8NTJqFxKFT6+LpiBvg==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/types/-/types-12.5.0.tgz", + "integrity": "sha512-Po5qOubilL/g3dx+ZUgaQzNXbROADBF4Z5xy7qqgV6pBQIEE/06INZDmmLE1Eesm2zoDpygoG/1f/0/Cy5Yupw==", "dev": true, "dependencies": { - "@textlint/ast-node-types": "^12.2.2" + "@textlint/ast-node-types": "^12.3.0" } }, "node_modules/@textlint/utils": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/utils/-/utils-12.2.3.tgz", - "integrity": "sha512-1dEihBt9A+DcQ/4IZC3c3TFktb/6p61m6WItyqEYU4h9UjUOH4l1sEKqorEOkJ/DIlA9VQcJT/LF5CCFYOKkcw==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/utils/-/utils-12.5.0.tgz", + "integrity": "sha512-bQWrQ7Xaru1DRLQhAQQJgNnfGQIwgTgWUigdS5wSwpbmfLDnaMzHu3AG0lk5hEnELMKTCIej5uCR0+YscyUckg==", "dev": true }, "node_modules/@types/concat-stream": { @@ -814,9 +859,9 @@ "dev": true }, "node_modules/ajv": { - "version": "8.11.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.2.tgz", - "integrity": "sha512-E4bfmKAhGiSTvMfL1Myyycaub+cUEU2/IvpylXkUu7CHBkBj1f/ikdzbD7YQ6FKUbixDxeYvB/xY4fvyroDlQg==", + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", "dev": true, "dependencies": { "fast-deep-equal": "^3.1.1", @@ -1851,13 +1896,10 @@ "dev": true }, "node_modules/json5": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", - "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.2.tgz", + "integrity": "sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==", "dev": true, - "dependencies": { - "minimist": "^1.2.5" - }, "bin": { "json5": "lib/cli.js" }, @@ -5292,22 +5334,23 @@ "dev": true }, "node_modules/textlint": { - "version": "12.2.4", - "resolved": "https://registry.npmjs.org/textlint/-/textlint-12.2.4.tgz", - "integrity": "sha512-IlBJL4bR9RuqYV+YkQQvOznhmfClGGkuOyxiUaQ4qUj2IaJu2/rXei71x3JAIJF4SLEK7SbMoLVqXIerqIbhGA==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/textlint/-/textlint-12.5.0.tgz", + "integrity": "sha512-81pwYha45aXCN6oVu2qjQ6nWaXT/U0nabl+S1F8HiY6pQMYwaX1D0on/rLWDO+K7BDQFPdrnO/7/PMw5LEU2Cg==", "dev": true, "dependencies": { - "@textlint/ast-node-types": "^12.2.2", - "@textlint/ast-traverse": "^12.2.3", - "@textlint/feature-flag": "^12.2.3", - "@textlint/fixer-formatter": "^12.2.3", - "@textlint/kernel": "^12.2.3", - "@textlint/linter-formatter": "^12.2.4", - "@textlint/module-interop": "^12.2.3", - "@textlint/textlint-plugin-markdown": "^12.2.3", - "@textlint/textlint-plugin-text": "^12.2.3", - "@textlint/types": "^12.2.3", - "@textlint/utils": "^12.2.3", + "@textlint/ast-node-types": "^12.3.0", + "@textlint/ast-traverse": "^12.5.0", + "@textlint/config-loader": "^12.5.0", + "@textlint/feature-flag": "^12.5.0", + "@textlint/fixer-formatter": "^12.5.0", + "@textlint/kernel": "^12.5.0", + "@textlint/linter-formatter": "^12.5.0", + "@textlint/module-interop": "^12.5.0", + "@textlint/textlint-plugin-markdown": "^12.5.0", + "@textlint/textlint-plugin-text": "^12.5.0", + "@textlint/types": "^12.5.0", + "@textlint/utils": "^12.5.0", "debug": "^4.3.4", "deep-equal": "^1.1.1", "file-entry-cache": "^5.0.1", @@ -5326,7 +5369,8 @@ "unique-concat": "^0.2.2" }, "bin": { - "textlint": "bin/textlint.js" + "textlint": "bin/textlint.js", + "textlint-esm": "bin/textlint-esm.js" }, "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" @@ -6375,44 +6419,88 @@ "dev": true }, "@textlint/ast-node-types": { - "version": "12.2.2", - "resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-12.2.2.tgz", - "integrity": "sha512-VQAXUSGdmEajHXrMxeM9ZTS8UBJSVB0ghJFHpFfqYKlcDsjIqClSmTprY6521HoCoSLoUIGBxTC3jQyUMJFIWw==", + "version": "12.3.0", + "resolved": "https://registry.npmjs.org/@textlint/ast-node-types/-/ast-node-types-12.3.0.tgz", + "integrity": "sha512-ke5hlKy/xZ/vQt6j+h4k9GradJPDsV3FKsUqWpCpF/X8qWCU2zM4e1SMUAFjoUcLuF9in+eXIQ71Qm/AdjjkZQ==", "dev": true }, "@textlint/ast-tester": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/ast-tester/-/ast-tester-12.2.3.tgz", - "integrity": "sha512-+yLj38mgrluEFXD8rmwmMo+2lQbrx3v5aQBkHUZdddAq/1LJu4qqctikUzAeVRJZPWKsdLrN3vaLT2rp4h8KYg==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/ast-tester/-/ast-tester-12.5.0.tgz", + "integrity": "sha512-osHf1OFLC3RnjGyoSBynn2u5pgj7qkik8TNaxgPekVwlLWtJTcyh22PHo+mXPF47XWM5gJQmy/72nUrqtbDMPg==", "dev": true, "requires": { - "@textlint/ast-node-types": "^12.2.2", + "@textlint/ast-node-types": "^12.3.0", "debug": "^4.3.4" } }, "@textlint/ast-traverse": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/ast-traverse/-/ast-traverse-12.2.3.tgz", - "integrity": "sha512-sv06SITci07P1LQQxH1hSv04xoHz2OC+WlppTuMoOFR20kRBMyOs7Ssvor0NdNmspDXG8qvdCBxh9rFmdNSJyQ==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/ast-traverse/-/ast-traverse-12.5.0.tgz", + "integrity": "sha512-TAbfxz8x8Q/sn7D/h7OikzYp5NqPDrRExm3N+3v9yj+gq++fxHtskas48tm1TYcChTMq6BbPU+EGbdlMo3rWWA==", "dev": true, "requires": { - "@textlint/ast-node-types": "^12.2.2" + "@textlint/ast-node-types": "^12.3.0" + } + }, + "@textlint/config-loader": { + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/config-loader/-/config-loader-12.5.0.tgz", + "integrity": "sha512-g706+XwdsUGpVXzqW7OFcBO8XdxH1AqbD0D3UYEjlfUONXD0c4Bymctdjk49hzOwTVDGqj+CCyvL+cB/X2bG+Q==", + "dev": true, + "requires": { + "@textlint/kernel": "^12.5.0", + "@textlint/module-interop": "^12.5.0", + "@textlint/types": "^12.5.0", + "@textlint/utils": "^12.5.0", + "debug": "^4.3.4", + "rc-config-loader": "^4.1.1", + "try-resolve": "^1.0.1" + }, + "dependencies": { + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "requires": { + "argparse": "^2.0.1" + } + }, + "rc-config-loader": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/rc-config-loader/-/rc-config-loader-4.1.2.tgz", + "integrity": "sha512-qKTnVWFl9OQYKATPzdfaZIbTxcHziQl92zYSxYC6umhOqyAsoj8H8Gq/+aFjAso68sBdjTz3A7omqeAkkF1MWg==", + "dev": true, + "requires": { + "debug": "^4.3.4", + "js-yaml": "^4.1.0", + "json5": "^2.2.2", + "require-from-string": "^2.0.2" + } + } } }, "@textlint/feature-flag": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/feature-flag/-/feature-flag-12.2.3.tgz", - "integrity": "sha512-KrKc8dY3iept6Hv/dSKwaYAkjFdYbaithXAnRpp0O4fkXPdv6HYu7iGtM2kA4nkVLdjrzAnPNKA9tmP3EE0qNg==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/feature-flag/-/feature-flag-12.5.0.tgz", + "integrity": "sha512-GdyRbbIsWRuZieWKvRxQA8j5wX5hzq+QqEmuputBrU/KKapNfkg6uNY2GOY6SWvC8QcwD0dYh3Dy1x2txT8p8Q==", "dev": true }, "@textlint/fixer-formatter": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/fixer-formatter/-/fixer-formatter-12.2.3.tgz", - "integrity": "sha512-O3O1B1Xihlk5bXnMqjTgwMegnDTzE3rAQRvcJ2zTZQNhjSLpUDsRRcZW4FteGsQkWT9rOFrFQbHNbJdkiyu4cA==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/fixer-formatter/-/fixer-formatter-12.5.0.tgz", + "integrity": "sha512-iq+fdacaVcI1W3izo2V6JJOcnlUdDL9mX2Q1Ok3b+xwEzG5ZFo3G8iPpdQZXVZDE2jehRSvom8gsOds+n5ZffQ==", "dev": true, "requires": { - "@textlint/module-interop": "^12.2.3", - "@textlint/types": "^12.2.3", + "@textlint/module-interop": "^12.5.0", + "@textlint/types": "^12.5.0", "chalk": "^4.1.2", "debug": "^4.3.4", "diff": "^4.0.2", @@ -6424,33 +6512,33 @@ } }, "@textlint/kernel": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/kernel/-/kernel-12.2.3.tgz", - "integrity": "sha512-O0oifeiotA7ZEpWGssGPHCpIDUcsUfkmNTypk6j0l5m+VL+X3Zz0z/F+i02O9eMcizzLFcnC8oMoLxeYNhJCKg==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/kernel/-/kernel-12.5.0.tgz", + "integrity": "sha512-9UspUHtS2FShTO9pWnrZjadjIvJzFIdIZDKIYCdZuUdU8dEhJqwOdYosqM4N5Wy40aMKnv4Voxp80Ssaq7zZaA==", "dev": true, "requires": { - "@textlint/ast-node-types": "^12.2.2", - "@textlint/ast-tester": "^12.2.3", - "@textlint/ast-traverse": "^12.2.3", - "@textlint/feature-flag": "^12.2.3", - "@textlint/source-code-fixer": "^12.2.3", - "@textlint/types": "^12.2.3", - "@textlint/utils": "^12.2.3", + "@textlint/ast-node-types": "^12.3.0", + "@textlint/ast-tester": "^12.5.0", + "@textlint/ast-traverse": "^12.5.0", + "@textlint/feature-flag": "^12.5.0", + "@textlint/source-code-fixer": "^12.5.0", + "@textlint/types": "^12.5.0", + "@textlint/utils": "^12.5.0", "debug": "^4.3.4", "deep-equal": "^1.1.1", "structured-source": "^3.0.2" } }, "@textlint/linter-formatter": { - "version": "12.2.4", - "resolved": "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-12.2.4.tgz", - "integrity": "sha512-vF/qPrDYLH9jGB/HU8euVLv7BBATYmviBl9fGcx5vO8Lq/D2vHS9MUdk1JddgW/cDqnrI0nNVlLFUphJsXtp6w==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-12.5.0.tgz", + "integrity": "sha512-cJ87VGmyqDyjxT2aL3492g/YyGh6AU7/3QqxKN9q8rxJtzaY2e1uJrUKdpj0oOj1xZzYYv8zPeIpFaiFtNW02Q==", "dev": true, "requires": { "@azu/format-text": "^1.0.1", "@azu/style-format": "^1.0.0", - "@textlint/module-interop": "^12.2.3", - "@textlint/types": "^12.2.3", + "@textlint/module-interop": "^12.5.0", + "@textlint/types": "^12.5.0", "chalk": "^4.1.2", "debug": "^4.3.4", "is-file": "^1.0.0", @@ -6466,12 +6554,12 @@ } }, "@textlint/markdown-to-ast": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-12.2.3.tgz", - "integrity": "sha512-omZqcZV1Q8t9K0IKvlHNIdTV3SKNaS2P5qkbTjzDj7PuTuvG20JFqL9Naiwwi9ty3NzTzq+W8lLG3H2HgX0WvA==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/markdown-to-ast/-/markdown-to-ast-12.5.0.tgz", + "integrity": "sha512-+fUslPm0+ukMnRVMPUQwKv1DEwmDP/rXFuzc5+k5tCMhighZ/Fv/e3Y9MUe7SgNDte7ilajTa3/uP0Iurr60WA==", "dev": true, "requires": { - "@textlint/ast-node-types": "^12.2.2", + "@textlint/ast-node-types": "^12.3.0", "debug": "^4.3.4", "mdast-util-gfm-autolink-literal": "^0.1.3", "remark-footnotes": "^3.0.0", @@ -6689,61 +6777,61 @@ } }, "@textlint/module-interop": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/module-interop/-/module-interop-12.2.3.tgz", - "integrity": "sha512-tBtjf+hcOV8bTGae48bBj05Z8PmC6AQ+wCLl4PWE1zqUZIo9hxJL5nRpBn8l6HT6HCdtACE0UU85op9QmjmPXw==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/module-interop/-/module-interop-12.5.0.tgz", + "integrity": "sha512-NmkHL5tt+HEqLm00JSW1f03KTbEqOzupliboSZ2HeNhOqZxSX4wR3lBlGqVeVi5dImMWrt40oa+AbkqkD78b9Q==", "dev": true }, "@textlint/source-code-fixer": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/source-code-fixer/-/source-code-fixer-12.2.3.tgz", - "integrity": "sha512-uXGpD3hcqGNVL8yUpZci0+DDXUi81/MlMOzK6OWLDYBXdIZvJ0ADXQ/oUkljWIdmzMcME1AXkHvC5EGL0td2Sg==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/source-code-fixer/-/source-code-fixer-12.5.0.tgz", + "integrity": "sha512-7LebJ6Y64Rb4fVYyokpU8FnjNLdx+TehcHQJ9L/fi8PYVjpS/08klYtYfRtKWmi/vrWED7U0aGhb8Xr26NuWFw==", "dev": true, "requires": { - "@textlint/types": "^12.2.3", + "@textlint/types": "^12.5.0", "debug": "^4.3.4" } }, "@textlint/text-to-ast": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/text-to-ast/-/text-to-ast-12.2.3.tgz", - "integrity": "sha512-nsBI5TFe38ZzzbCyshZqLkG2DD4G8fJ0mC3imiTAGamGnUV8mDANmdvE7nmUtZTLlU319s/U0oXC0E7btgN+cQ==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/text-to-ast/-/text-to-ast-12.5.0.tgz", + "integrity": "sha512-wOWYX+d821ThwNYNk5hfxOBxvkqKUpNOBKkDaic4V+dkuBoAS0D9lE9fA9Ps62kL/I1uQwhU5d4qsAHWnFmQkw==", "dev": true, "requires": { - "@textlint/ast-node-types": "^12.2.2" + "@textlint/ast-node-types": "^12.3.0" } }, "@textlint/textlint-plugin-markdown": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-markdown/-/textlint-plugin-markdown-12.2.3.tgz", - "integrity": "sha512-phmA5e1JQaJt0IFHm0WkNpX66ieYXShoIzg6J3wcrAHS12kQcL0HxBgjdUjOeulOemKst2JqFNqsvhGXdTAUFw==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-markdown/-/textlint-plugin-markdown-12.5.0.tgz", + "integrity": "sha512-1B4mTmA1NOvK2kAk4Rl/TW3QFB80iwhsOKSJ16nCH/yvF82xgH+Gu4gQB/prNpACb4TivmzwvBRYp7rzhOTTyA==", "dev": true, "requires": { - "@textlint/markdown-to-ast": "^12.2.3" + "@textlint/markdown-to-ast": "^12.5.0" } }, "@textlint/textlint-plugin-text": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-text/-/textlint-plugin-text-12.2.3.tgz", - "integrity": "sha512-CMK9h3EwyQFayYBGafQairg2MbVtGkw1roazOjXLSTicYr7xT/rqhN26Ix6C7OvBbugyRO+DhqJjPY8Xyv0BQA==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/textlint-plugin-text/-/textlint-plugin-text-12.5.0.tgz", + "integrity": "sha512-ec3rZaJYytoscwpAtuxD4UM3bUPqNAeWKia+LMaVMWREULwKfntlSAqSNmudujEkxdsKr028CkzYuP78q8Xmuw==", "dev": true, "requires": { - "@textlint/text-to-ast": "^12.2.3" + "@textlint/text-to-ast": "^12.5.0" } }, "@textlint/types": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/types/-/types-12.2.3.tgz", - "integrity": "sha512-7948CPxVsZu99zlIWDyxwT6MI33WpwKwVSD9jk0e5M8VcdxMUnecVq6D40h8LAtfsT5V8NTJqFxKFT6+LpiBvg==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/types/-/types-12.5.0.tgz", + "integrity": "sha512-Po5qOubilL/g3dx+ZUgaQzNXbROADBF4Z5xy7qqgV6pBQIEE/06INZDmmLE1Eesm2zoDpygoG/1f/0/Cy5Yupw==", "dev": true, "requires": { - "@textlint/ast-node-types": "^12.2.2" + "@textlint/ast-node-types": "^12.3.0" } }, "@textlint/utils": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/utils/-/utils-12.2.3.tgz", - "integrity": "sha512-1dEihBt9A+DcQ/4IZC3c3TFktb/6p61m6WItyqEYU4h9UjUOH4l1sEKqorEOkJ/DIlA9VQcJT/LF5CCFYOKkcw==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/@textlint/utils/-/utils-12.5.0.tgz", + "integrity": "sha512-bQWrQ7Xaru1DRLQhAQQJgNnfGQIwgTgWUigdS5wSwpbmfLDnaMzHu3AG0lk5hEnELMKTCIej5uCR0+YscyUckg==", "dev": true }, "@types/concat-stream": { @@ -6843,9 +6931,9 @@ "dev": true }, "ajv": { - "version": "8.11.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.2.tgz", - "integrity": "sha512-E4bfmKAhGiSTvMfL1Myyycaub+cUEU2/IvpylXkUu7CHBkBj1f/ikdzbD7YQ6FKUbixDxeYvB/xY4fvyroDlQg==", + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -7622,13 +7710,10 @@ "dev": true }, "json5": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", - "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.2.tgz", + "integrity": "sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==", + "dev": true }, "levn": { "version": "0.4.1", @@ -9989,22 +10074,23 @@ "dev": true }, "textlint": { - "version": "12.2.4", - "resolved": "https://registry.npmjs.org/textlint/-/textlint-12.2.4.tgz", - "integrity": "sha512-IlBJL4bR9RuqYV+YkQQvOznhmfClGGkuOyxiUaQ4qUj2IaJu2/rXei71x3JAIJF4SLEK7SbMoLVqXIerqIbhGA==", + "version": "12.5.0", + "resolved": "https://registry.npmjs.org/textlint/-/textlint-12.5.0.tgz", + "integrity": "sha512-81pwYha45aXCN6oVu2qjQ6nWaXT/U0nabl+S1F8HiY6pQMYwaX1D0on/rLWDO+K7BDQFPdrnO/7/PMw5LEU2Cg==", "dev": true, "requires": { - "@textlint/ast-node-types": "^12.2.2", - "@textlint/ast-traverse": "^12.2.3", - "@textlint/feature-flag": "^12.2.3", - "@textlint/fixer-formatter": "^12.2.3", - "@textlint/kernel": "^12.2.3", - "@textlint/linter-formatter": "^12.2.4", - "@textlint/module-interop": "^12.2.3", - "@textlint/textlint-plugin-markdown": "^12.2.3", - "@textlint/textlint-plugin-text": "^12.2.3", - "@textlint/types": "^12.2.3", - "@textlint/utils": "^12.2.3", + "@textlint/ast-node-types": "^12.3.0", + "@textlint/ast-traverse": "^12.5.0", + "@textlint/config-loader": "^12.5.0", + "@textlint/feature-flag": "^12.5.0", + "@textlint/fixer-formatter": "^12.5.0", + "@textlint/kernel": "^12.5.0", + "@textlint/linter-formatter": "^12.5.0", + "@textlint/module-interop": "^12.5.0", + "@textlint/textlint-plugin-markdown": "^12.5.0", + "@textlint/textlint-plugin-text": "^12.5.0", + "@textlint/types": "^12.5.0", + "@textlint/utils": "^12.5.0", "debug": "^4.3.4", "deep-equal": "^1.1.1", "file-entry-cache": "^5.0.1", diff --git a/package.json b/package.json index 59f8552a581..85030905ac2 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "remark-lint-fenced-code-flag": "^3.1.1", "remark-lint-no-shell-dollars": "^3.1.1", "remark-stringify": "^10.0.2", - "textlint": "^12.2.4", + "textlint": "^12.5.0", "textlint-filter-rule-comments": "^1.2.2", "textlint-rule-common-misspellings": "^1.0.1", "textlint-rule-terminology": "^3.0.4" diff --git a/source/_docs/energy/electricity-grid.markdown b/source/_docs/energy/electricity-grid.markdown index 222a43e5dc7..c1c0415e373 100644 --- a/source/_docs/energy/electricity-grid.markdown +++ b/source/_docs/energy/electricity-grid.markdown @@ -35,7 +35,7 @@ We have worked with creator [Marcel Zuidwijk](https://www.zuidwijk.com) to devel The Zigbee Energy Profile is a wireless energy standard to provide real-time information about electricity usage. This standard is available in some meters in the US, UK and Australia. This is not "normal" Zigbee as implemented by Home Assistant but requires special certified hardware. -One such option with a local API is the [Rainforest EAGLE-200](/integrations/rainforest_eagle/). +We are not currently aware of a device that implements this which supports a local API and is compatible with Home Assistant. #### Reading the meter via a pulse counter @@ -47,7 +47,7 @@ We have developed [Home Assistant Glow](https://github.com/klaasnicolaas/home-as #### Read the meter using an AI-on-the-edge-device -[AI-on-the-edge-device](https://github.com/jomjol/AI-on-the-edge-device) is a project running on an ESP32-CAM and can be fully integrated into Home Assistant using the Home Assistant discovery functionality of MQTT. It digitalizes your gas/water/electricity meter display and provides its data in various ways. +[AI-on-the-edge-device](https://github.com/jomjol/AI-on-the-edge-device) is a project running on an ESP32-CAM and can be fully integrated into Home Assistant using the Home Assistant discovery functionality of MQTT. It digitalizes your gas/water/electricity meter display and provides its data in various ways.  diff --git a/source/_docs/scripts/conditions.markdown b/source/_docs/scripts/conditions.markdown index c23eb0eec8d..b45a3ae4087 100644 --- a/source/_docs/scripts/conditions.markdown +++ b/source/_docs/scripts/conditions.markdown @@ -5,7 +5,7 @@ toc: true no_toc: true --- -Conditions can be used within a script or automation to prevent further execution. When a condition evaluates to true, the script or automation will be executed. If any other value is returned the script or automation stops executing. A condition will look at the system at that moment. For example, a condition can test if a switch is currently turned on or off. +Conditions can be used within a script or automation to prevent further execution. When a condition evaluates true, the script or automation will be executed. If any other value is returned, the script or automation stops executing. A condition will look at the system at that moment. For example, a condition can test if a switch is currently turned on or off. Unlike a trigger, which is always `or`, conditions are `and` by default - all conditions have to be true. @@ -17,7 +17,7 @@ All conditions support an optional `alias`. ### AND condition -Test multiple conditions in one condition statement. Passes if all embedded conditions are valid. +Test multiple conditions in one condition statement. Passes if all embedded conditions are true. ```yaml condition: @@ -64,7 +64,7 @@ condition: ### OR condition -Test multiple conditions in one condition statement. Passes if any embedded condition is valid. +Test multiple conditions in one condition statement. Passes if any embedded condition is true. ```yaml condition: @@ -95,7 +95,7 @@ condition: ### Mixed AND and OR conditions -Test multiple AND and OR conditions in one condition statement. Passes if any embedded condition is valid. +Test multiple AND and OR conditions in one condition statement. Passes if any embedded condition is true. This allows you to mix several AND and OR conditions together. ```yaml @@ -134,7 +134,7 @@ condition: ### NOT condition -Test multiple conditions in one condition statement. Passes if all embedded conditions are **not** valid. +Test multiple conditions in one condition statement. Passes if all embedded conditions are **not** true. ```yaml condition: @@ -233,7 +233,7 @@ condition: ## State condition -Tests if an entity is a specified state. +Tests if an entity has a specified state. ```yaml condition: @@ -241,7 +241,7 @@ condition: condition: state entity_id: device_tracker.paulus state: "not_home" - # optional: trigger only if state was this for last X time. + # optional: Evaluates to true only if state was this for last X time. for: hours: 1 minutes: 10 @@ -261,7 +261,7 @@ condition: ``` Instead of matching all, it is also possible if one of the entities matches. -In the following example the condition will pass if **any** entities match the state. +In the following example the condition will pass if **any** entity matches the state. ```yaml condition: @@ -378,7 +378,7 @@ condition: The sun condition can also test if the sun has already set or risen when a trigger occurs. The `before` and `after` keys can only be set to `sunset` or `sunrise`. They have a corresponding optional offset value (`before_offset`, `after_offset`) that can be added, similar to the [sun trigger][sun_trigger]. -Note that if only `before` key is used, the condition will be `true` _from midnight_ until sunrise/sunset. If only `after` key is used, the condition will be `true` from sunset/sunrise _until midnight_. If both `before: sunrise` and `after: sunset` keys are used, the condition will be `true` _from midnight_ until sunrise **and** from sunset _until midnight_. If both `after: sunrise` and `before: sunset` keys are used, the condition will be `true` from sunrise until sunset. +Note that if only `before` key is used, the condition will be true _from midnight_ until sunrise/sunset. If only `after` key is used, the condition will be true from sunset/sunrise _until midnight_. If both `before: sunrise` and `after: sunset` keys are used, the condition will be true _from midnight_ until sunrise **and** from sunset _until midnight_. If both `after: sunrise` and `before: sunset` keys are used, the condition will be true from sunrise until sunset. [sun_trigger]: /docs/automation/trigger/#sun-trigger @@ -412,13 +412,13 @@ condition: before: sunset ``` -A visual timeline is provided below showing an example of when these conditions are true. In this chart, sunrise is at 6:00, and sunset is at 18:00 (6:00 PM). The green areas of the chart indicate when the specified conditions are true. +A visual timeline is provided below, showing an example of when these conditions are true. In this chart, sunrise is at 6:00, and sunset is at 18:00 (6:00 PM). The green areas of the chart indicate when the specified conditions are true.  ## Template condition -The template condition tests if the [given template][template] renders a value equal to true. This is achieved by having the template result in a true boolean expression or by having the template render 'true'. +The template condition tests if the [given template][template] renders a value equal to true. This is achieved by having the template result in a true boolean expression or by having the template render `True`. {% raw %} @@ -563,7 +563,7 @@ condition:
Please wait while we complete authentication and load data from GitHub...