lighthouse 11.7.1 → 12.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (272) hide show
  1. package/CONTRIBUTING.md +2 -2
  2. package/cli/bin.js +0 -7
  3. package/cli/cli-flags.d.ts +1 -5
  4. package/cli/cli-flags.js +4 -8
  5. package/cli/test/smokehouse/__snapshots__/report-assert-test.js.snap +14 -14
  6. package/cli/test/smokehouse/config/exclusions.js +3 -0
  7. package/cli/test/smokehouse/core-tests.js +6 -20
  8. package/cli/test/smokehouse/frontends/smokehouse-bin.js +2 -2
  9. package/core/audits/accessibility/aria-conditional-attr.d.ts +10 -0
  10. package/core/audits/accessibility/aria-conditional-attr.js +43 -0
  11. package/core/audits/accessibility/{duplicate-id-active.d.ts → aria-deprecated-role.d.ts} +3 -3
  12. package/core/audits/accessibility/aria-deprecated-role.js +43 -0
  13. package/core/audits/accessibility/aria-prohibited-attr.d.ts +10 -0
  14. package/core/audits/accessibility/aria-prohibited-attr.js +44 -0
  15. package/core/audits/accessibility/target-size.js +0 -1
  16. package/core/audits/byte-efficiency/byte-efficiency-audit.d.ts +0 -16
  17. package/core/audits/byte-efficiency/byte-efficiency-audit.js +1 -38
  18. package/core/audits/byte-efficiency/offscreen-images.d.ts +0 -11
  19. package/core/audits/byte-efficiency/offscreen-images.js +0 -15
  20. package/core/audits/byte-efficiency/render-blocking-resources.js +27 -26
  21. package/core/audits/byte-efficiency/unminified-css.js +2 -2
  22. package/core/audits/byte-efficiency/unused-css-rules.js +3 -1
  23. package/core/audits/dobetterweb/uses-http2.d.ts +0 -13
  24. package/core/audits/dobetterweb/uses-http2.js +4 -38
  25. package/core/audits/font-display.js +2 -2
  26. package/core/audits/layout-shifts.js +1 -1
  27. package/core/audits/preload-fonts.d.ts +1 -5
  28. package/core/audits/preload-fonts.js +1 -10
  29. package/core/audits/prioritize-lcp-image.js +2 -2
  30. package/core/audits/redirects-http.d.ts +19 -0
  31. package/core/audits/redirects-http.js +75 -0
  32. package/core/audits/resource-summary.d.ts +2 -0
  33. package/core/audits/resource-summary.js +5 -4
  34. package/core/audits/seo/is-crawlable.d.ts +2 -1
  35. package/core/audits/seo/link-text.js +12 -0
  36. package/core/audits/uses-rel-preload.d.ts +1 -5
  37. package/core/audits/uses-rel-preload.js +5 -15
  38. package/core/audits/work-during-interaction.d.ts +2 -2
  39. package/core/audits/work-during-interaction.js +2 -2
  40. package/core/computed/js-bundles.d.ts +1 -1
  41. package/core/computed/metrics/lantern-first-contentful-paint.d.ts +13 -82
  42. package/core/computed/metrics/lantern-first-contentful-paint.js +16 -178
  43. package/core/computed/metrics/lantern-first-meaningful-paint.d.ts +13 -12
  44. package/core/computed/metrics/lantern-first-meaningful-paint.js +11 -49
  45. package/core/computed/metrics/lantern-interactive.d.ts +13 -21
  46. package/core/computed/metrics/lantern-interactive.js +12 -84
  47. package/core/computed/metrics/lantern-largest-contentful-paint.d.ts +13 -25
  48. package/core/computed/metrics/lantern-largest-contentful-paint.js +13 -80
  49. package/core/computed/metrics/lantern-max-potential-fid.d.ts +13 -24
  50. package/core/computed/metrics/lantern-max-potential-fid.js +12 -64
  51. package/core/computed/metrics/lantern-metric.d.ts +14 -18
  52. package/core/computed/metrics/lantern-metric.js +34 -30
  53. package/core/computed/metrics/lantern-speed-index.d.ts +13 -32
  54. package/core/computed/metrics/lantern-speed-index.js +13 -116
  55. package/core/computed/metrics/lantern-total-blocking-time.d.ts +13 -25
  56. package/core/computed/metrics/lantern-total-blocking-time.js +10 -94
  57. package/core/computed/metrics/metric.js +1 -3
  58. package/core/computed/module-duplication.d.ts +1 -1
  59. package/core/computed/navigation-insights.d.ts +36 -0
  60. package/core/computed/navigation-insights.js +35 -0
  61. package/core/computed/page-dependency-graph.js +3 -7
  62. package/core/computed/resource-summary.d.ts +10 -12
  63. package/core/computed/resource-summary.js +12 -19
  64. package/core/computed/trace-engine-result.d.ts +16 -3
  65. package/core/computed/trace-engine-result.js +19 -14
  66. package/core/computed/unused-css.d.ts +3 -1
  67. package/core/computed/unused-css.js +6 -5
  68. package/core/config/config-helpers.js +0 -4
  69. package/core/config/constants.js +0 -1
  70. package/core/config/default-config.js +63 -142
  71. package/core/config/experimental-config.js +11 -0
  72. package/core/config/filters.js +0 -1
  73. package/core/gather/driver/navigation.js +4 -1
  74. package/core/gather/driver/prepare.js +1 -1
  75. package/core/gather/driver/target-manager.js +4 -3
  76. package/core/gather/driver/wait-for-condition.js +2 -3
  77. package/core/gather/driver.d.ts +12 -0
  78. package/core/gather/driver.js +27 -0
  79. package/core/gather/gatherers/accessibility.js +4 -6
  80. package/core/gather/gatherers/css-usage.d.ts +0 -21
  81. package/core/gather/gatherers/css-usage.js +9 -119
  82. package/core/gather/gatherers/root-causes.d.ts +2 -2
  83. package/core/gather/gatherers/root-causes.js +6 -5
  84. package/core/gather/gatherers/stylesheets.d.ts +26 -0
  85. package/core/gather/gatherers/stylesheets.js +138 -0
  86. package/core/gather/gatherers/trace-elements.d.ts +2 -12
  87. package/core/gather/gatherers/trace-elements.js +2 -21
  88. package/core/gather/navigation-runner.js +3 -1
  89. package/core/gather/session.d.ts +8 -0
  90. package/core/gather/session.js +14 -1
  91. package/core/lib/emulation.js +2 -2
  92. package/core/lib/i18n/i18n.d.ts +0 -1
  93. package/core/lib/i18n/i18n.js +0 -2
  94. package/core/lib/lantern/cpu-node.d.ts +7 -1
  95. package/core/lib/lantern/cpu-node.js +12 -2
  96. package/core/lib/lantern/lantern-error.d.ts +8 -0
  97. package/core/lib/lantern/lantern-error.js +9 -0
  98. package/core/lib/lantern/metric.js +2 -6
  99. package/core/lib/lantern/metrics/first-contentful-paint.d.ts +79 -0
  100. package/core/lib/lantern/metrics/first-contentful-paint.js +200 -0
  101. package/core/lib/lantern/metrics/first-meaningful-paint.d.ts +6 -0
  102. package/core/lib/lantern/metrics/first-meaningful-paint.js +64 -0
  103. package/core/lib/lantern/metrics/interactive.d.ts +26 -0
  104. package/core/lib/lantern/metrics/interactive.js +112 -0
  105. package/core/lib/lantern/metrics/largest-contentful-paint.d.ts +19 -0
  106. package/core/lib/lantern/metrics/largest-contentful-paint.js +108 -0
  107. package/core/lib/lantern/metrics/max-potential-fid.d.ts +30 -0
  108. package/core/lib/lantern/metrics/max-potential-fid.js +92 -0
  109. package/core/lib/lantern/metrics/speed-index.d.ts +38 -0
  110. package/core/lib/lantern/metrics/speed-index.js +144 -0
  111. package/core/lib/lantern/metrics/total-blocking-time.d.ts +31 -0
  112. package/core/lib/lantern/metrics/total-blocking-time.js +128 -0
  113. package/core/lib/lantern/network-node.js +28 -4
  114. package/core/lib/lantern/page-dependency-graph.d.ts +4 -4
  115. package/core/lib/lantern/page-dependency-graph.js +19 -7
  116. package/core/lib/lantern/simulator/connection-pool.d.ts +2 -12
  117. package/core/lib/lantern/simulator/connection-pool.js +3 -22
  118. package/core/lib/lantern/simulator/network-analyzer.js +1 -12
  119. package/core/lib/lantern/simulator/simulator.d.ts +2 -4
  120. package/core/lib/lantern/simulator/simulator.js +7 -14
  121. package/core/lib/lantern/types/lantern.d.ts +5 -3
  122. package/core/lib/lantern-trace-saver.js +0 -1
  123. package/core/lib/lh-error.d.ts +9 -0
  124. package/core/lib/lh-error.js +13 -3
  125. package/core/lib/lighthouse-compatibility.js +53 -10
  126. package/core/lib/navigation-error.js +3 -0
  127. package/core/lib/network-request.d.ts +1 -0
  128. package/core/lib/network-request.js +28 -0
  129. package/core/runner.js +18 -25
  130. package/dist/report/bundle.esm.js +11 -112
  131. package/dist/report/flow.js +16 -117
  132. package/dist/report/standalone.js +12 -113
  133. package/flow-report/src/help-dialog.tsx +0 -1
  134. package/flow-report/src/i18n/i18n.d.ts +0 -4
  135. package/flow-report/src/i18n/ui-strings.d.ts +0 -1
  136. package/flow-report/src/i18n/ui-strings.js +0 -2
  137. package/flow-report/src/summary/category.tsx +10 -12
  138. package/package.json +5 -5
  139. package/readme.md +4 -4
  140. package/report/assets/styles.css +1 -60
  141. package/report/assets/templates.html +0 -95
  142. package/report/renderer/category-renderer.js +1 -1
  143. package/report/renderer/components.d.ts +2 -2
  144. package/report/renderer/components.js +2 -103
  145. package/report/renderer/dom.d.ts +1 -1
  146. package/report/renderer/dom.js +1 -1
  147. package/report/renderer/performance-category-renderer.d.ts +0 -7
  148. package/report/renderer/performance-category-renderer.js +1 -32
  149. package/report/renderer/report-renderer.js +3 -13
  150. package/report/renderer/report-ui-features.js +1 -1
  151. package/report/renderer/report-utils.d.ts +0 -1
  152. package/report/renderer/report-utils.js +13 -13
  153. package/shared/localization/locales/ar-XB.json +62 -329
  154. package/shared/localization/locales/ar.json +62 -329
  155. package/shared/localization/locales/bg.json +62 -329
  156. package/shared/localization/locales/ca.json +62 -329
  157. package/shared/localization/locales/cs.json +62 -329
  158. package/shared/localization/locales/da.json +62 -329
  159. package/shared/localization/locales/de.json +62 -329
  160. package/shared/localization/locales/el.json +62 -329
  161. package/shared/localization/locales/en-GB.json +62 -329
  162. package/shared/localization/locales/en-US.json +41 -272
  163. package/shared/localization/locales/en-XA.json +62 -329
  164. package/shared/localization/locales/en-XL.json +41 -272
  165. package/shared/localization/locales/es-419.json +62 -329
  166. package/shared/localization/locales/es.json +62 -329
  167. package/shared/localization/locales/fi.json +62 -329
  168. package/shared/localization/locales/fil.json +61 -328
  169. package/shared/localization/locales/fr.json +62 -329
  170. package/shared/localization/locales/he.json +62 -329
  171. package/shared/localization/locales/hi.json +62 -329
  172. package/shared/localization/locales/hr.json +63 -330
  173. package/shared/localization/locales/hu.json +62 -329
  174. package/shared/localization/locales/id.json +62 -329
  175. package/shared/localization/locales/it.json +62 -329
  176. package/shared/localization/locales/ja.json +62 -329
  177. package/shared/localization/locales/ko.json +62 -329
  178. package/shared/localization/locales/lt.json +62 -329
  179. package/shared/localization/locales/lv.json +62 -329
  180. package/shared/localization/locales/nl.json +62 -329
  181. package/shared/localization/locales/no.json +62 -329
  182. package/shared/localization/locales/pl.json +61 -328
  183. package/shared/localization/locales/pt-PT.json +62 -329
  184. package/shared/localization/locales/pt.json +64 -331
  185. package/shared/localization/locales/ro.json +62 -329
  186. package/shared/localization/locales/ru.json +62 -329
  187. package/shared/localization/locales/sk.json +62 -329
  188. package/shared/localization/locales/sl.json +62 -329
  189. package/shared/localization/locales/sr-Latn.json +62 -329
  190. package/shared/localization/locales/sr.json +62 -329
  191. package/shared/localization/locales/sv.json +62 -329
  192. package/shared/localization/locales/ta.json +61 -328
  193. package/shared/localization/locales/te.json +62 -329
  194. package/shared/localization/locales/th.json +62 -329
  195. package/shared/localization/locales/tr.json +62 -329
  196. package/shared/localization/locales/uk.json +62 -329
  197. package/shared/localization/locales/vi.json +61 -328
  198. package/shared/localization/locales/zh-HK.json +62 -329
  199. package/shared/localization/locales/zh-TW.json +61 -328
  200. package/shared/localization/locales/zh.json +62 -329
  201. package/tsconfig.json +1 -3
  202. package/types/artifacts.d.ts +21 -110
  203. package/types/audit.d.ts +0 -10
  204. package/types/config.d.ts +0 -1
  205. package/types/externs.d.ts +0 -2
  206. package/types/gatherer.d.ts +3 -0
  207. package/types/internal/smokehouse.d.ts +1 -1
  208. package/types/lh.d.ts +0 -2
  209. package/types/lhr/audit-details.d.ts +9 -4
  210. package/types/lhr/lhr.d.ts +0 -4
  211. package/types/lhr/settings.d.ts +0 -4
  212. package/core/audits/accessibility/duplicate-id-active.js +0 -42
  213. package/core/audits/content-width.d.ts +0 -17
  214. package/core/audits/content-width.js +0 -76
  215. package/core/audits/installable-manifest.d.ts +0 -111
  216. package/core/audits/installable-manifest.js +0 -248
  217. package/core/audits/layout-shift-elements.d.ts +0 -16
  218. package/core/audits/layout-shift-elements.js +0 -101
  219. package/core/audits/manual/pwa-cross-browser.d.ts +0 -12
  220. package/core/audits/manual/pwa-cross-browser.js +0 -40
  221. package/core/audits/manual/pwa-each-page-has-url.d.ts +0 -12
  222. package/core/audits/manual/pwa-each-page-has-url.js +0 -38
  223. package/core/audits/manual/pwa-page-transitions.d.ts +0 -12
  224. package/core/audits/manual/pwa-page-transitions.js +0 -38
  225. package/core/audits/maskable-icon.d.ts +0 -25
  226. package/core/audits/maskable-icon.js +0 -70
  227. package/core/audits/multi-check-audit.d.ts +0 -28
  228. package/core/audits/multi-check-audit.js +0 -82
  229. package/core/audits/no-unload-listeners.d.ts +0 -16
  230. package/core/audits/no-unload-listeners.js +0 -86
  231. package/core/audits/performance-budget.d.ts +0 -39
  232. package/core/audits/performance-budget.js +0 -154
  233. package/core/audits/script-elements-test-audit.d.ts +0 -14
  234. package/core/audits/script-elements-test-audit.js +0 -29
  235. package/core/audits/seo/plugins.d.ts +0 -15
  236. package/core/audits/seo/plugins.js +0 -150
  237. package/core/audits/seo/tap-targets.d.ts +0 -50
  238. package/core/audits/seo/tap-targets.js +0 -352
  239. package/core/audits/splash-screen.d.ts +0 -37
  240. package/core/audits/splash-screen.js +0 -98
  241. package/core/audits/themed-omnibox.d.ts +0 -42
  242. package/core/audits/themed-omnibox.js +0 -102
  243. package/core/audits/timing-budget.d.ts +0 -43
  244. package/core/audits/timing-budget.js +0 -175
  245. package/core/computed/manifest-values.d.ts +0 -24
  246. package/core/computed/manifest-values.js +0 -136
  247. package/core/config/budget.d.ts +0 -74
  248. package/core/config/budget.js +0 -340
  249. package/core/config/metrics-to-audits.d.ts +0 -19
  250. package/core/config/metrics-to-audits.js +0 -62
  251. package/core/gather/driver/service-workers.d.ts +0 -16
  252. package/core/gather/driver/service-workers.js +0 -52
  253. package/core/gather/gatherers/dobetterweb/tags-blocking-first-paint.d.ts +0 -47
  254. package/core/gather/gatherers/dobetterweb/tags-blocking-first-paint.js +0 -233
  255. package/core/gather/gatherers/global-listeners.d.ts +0 -27
  256. package/core/gather/gatherers/global-listeners.js +0 -108
  257. package/core/gather/gatherers/installability-errors.d.ts +0 -17
  258. package/core/gather/gatherers/installability-errors.js +0 -56
  259. package/core/gather/gatherers/script-elements.d.ts +0 -21
  260. package/core/gather/gatherers/script-elements.js +0 -100
  261. package/core/gather/gatherers/seo/embedded-content.d.ts +0 -10
  262. package/core/gather/gatherers/seo/embedded-content.js +0 -63
  263. package/core/gather/gatherers/seo/tap-targets.d.ts +0 -21
  264. package/core/gather/gatherers/seo/tap-targets.js +0 -389
  265. package/core/gather/gatherers/service-worker.d.ts +0 -10
  266. package/core/gather/gatherers/service-worker.js +0 -32
  267. package/core/gather/gatherers/web-app-manifest.d.ts +0 -32
  268. package/core/gather/gatherers/web-app-manifest.js +0 -106
  269. package/report/renderer/pwa-category-renderer.d.ts +0 -55
  270. package/report/renderer/pwa-category-renderer.js +0 -184
  271. package/third-party/chromium-synchronization/installability-errors-test.js +0 -79
  272. package/types/lhr/budget.d.ts +0 -60
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "core/audits/accessibility/accesskeys.js | description": {
3
- "message": "액세스 키를 사용하면 사용자가 페이지의 특정 부분에 신속하게 포커스를 맞출 수 있습니다. 정상적으로 탐색하려면 모든 액세스 키가 고유해야 합니다. [액세스 키에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/accesskeys)"
3
+ "message": "액세스 키를 사용하면 사용자가 페이지의 특정 부분에 신속하게 포커스를 맞출 수 있습니다. 정상적으로 탐색하려면 모든 액세스 키가 고유해야 합니다. [액세스 키에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/accesskeys)"
4
4
  },
5
5
  "core/audits/accessibility/accesskeys.js | failureTitle": {
6
6
  "message": "`[accesskey]` 값이 고유하지 않음"
@@ -9,7 +9,7 @@
9
9
  "message": "`[accesskey]` 값이 고유합니다"
10
10
  },
11
11
  "core/audits/accessibility/aria-allowed-attr.js | description": {
12
- "message": "각 ARIA `role`은 `aria-*` 속성으로 구성된 특정 하위 세트를 지원합니다. 이 두 가지가 일치하지 않으면 `aria-*` 속성이 유효하지 않게 됩니다. [ARIA 속성을 역할에 일치시키는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-allowed-attr)"
12
+ "message": "각 ARIA `role`은 `aria-*` 속성으로 구성된 특정 하위 세트를 지원합니다. 이 두 가지가 일치하지 않으면 `aria-*` 속성이 유효하지 않게 됩니다. [ARIA 속성을 역할에 일치시키는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-allowed-attr)"
13
13
  },
14
14
  "core/audits/accessibility/aria-allowed-attr.js | failureTitle": {
15
15
  "message": "`[aria-*]` 속성이 역할과 일치하지 않음"
@@ -18,7 +18,7 @@
18
18
  "message": "`[aria-*]` 속성이 역할과 일치함"
19
19
  },
20
20
  "core/audits/accessibility/aria-allowed-role.js | description": {
21
- "message": "ARIA `role`을 통해 보조 기술은 웹페이지에서 각 요소의 역할을 파악할 수 있습니다. `role` 값의 철자가 틀렸거나 이 값이 기존 ARIA `role` 값 또는 추상 역할이 아닌 경우 요소의 목적이 보조 기술 사용자에게 전달되지 않습니다. [ARIA 역할에 대해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-allowed-role)"
21
+ "message": "ARIA `role`을 통해 보조 기술은 웹페이지에서 각 요소의 역할을 파악할 수 있습니다. `role` 값의 철자가 틀렸거나 이 값이 기존 ARIA `role` 값 또는 추상 역할이 아닌 경우 요소의 목적이 보조 기술 사용자에게 전달되지 않습니다. [ARIA 역할에 대해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-allowed-role)"
22
22
  },
23
23
  "core/audits/accessibility/aria-allowed-role.js | failureTitle": {
24
24
  "message": "`role=\"\"`에 할당된 값은 유효한 ARIA 역할이 아닙니다"
@@ -27,7 +27,7 @@
27
27
  "message": "`role=\"\"`에 할당된 값은 유효한 ARIA 역할입니다"
28
28
  },
29
29
  "core/audits/accessibility/aria-command-name.js | description": {
30
- "message": "요소에 액세스 가능한 이름이 없는 경우 스크린 리더가 일반적인 이름으로 읽기 때문에 스크린 리더에 의존하는 사용자는 해당 요소를 사용할 수 없게 됩니다. [명령어 요소의 접근성을 높이는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-command-name)"
30
+ "message": "요소에 액세스 가능한 이름이 없는 경우 스크린 리더가 일반적인 이름으로 읽기 때문에 스크린 리더에 의존하는 사용자는 해당 요소를 사용할 수 없게 됩니다. [명령어 요소의 접근성을 높이는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-command-name)"
31
31
  },
32
32
  "core/audits/accessibility/aria-command-name.js | failureTitle": {
33
33
  "message": "`button`, `link` 및 `menuitem` 요소에 접근성을 위한 이름이 없음"
@@ -36,7 +36,7 @@
36
36
  "message": "`button`, `link` 및 `menuitem` 요소에 접근성을 위한 이름이 있음"
37
37
  },
38
38
  "core/audits/accessibility/aria-dialog-name.js | description": {
39
- "message": "액세스 가능한 이름이 없는 ARIA 대화상자 요소로 인해 스크린 리더 사용자가 이러한 요소의 용도를 파악하지 못할 수 있습니다. [ARIA 대화상자 요소의 접근성을 높이는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-dialog-name)"
39
+ "message": "액세스 가능한 이름이 없는 ARIA 대화상자 요소로 인해 스크린 리더 사용자가 이러한 요소의 용도를 파악하지 못할 수 있습니다. [ARIA 대화상자 요소의 접근성을 높이는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-dialog-name)"
40
40
  },
41
41
  "core/audits/accessibility/aria-dialog-name.js | failureTitle": {
42
42
  "message": "`role=\"dialog\"` 또는 `role=\"alertdialog\"`가 있는 요소에 액세스 가능한 이름이 없습니다."
@@ -45,7 +45,7 @@
45
45
  "message": "`role=\"dialog\"` 또는 `role=\"alertdialog\"`가 있는 요소에 액세스 가능한 이름이 있습니다."
46
46
  },
47
47
  "core/audits/accessibility/aria-hidden-body.js | description": {
48
- "message": "스크린 리더와 같은 보조 기술은 `aria-hidden=\"true\"`가 문서 `<body>`에 설정된 경우 일관성 없게 작동합니다. [`aria-hidden`이 문서 본문에 미치는 영향 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-hidden-body)"
48
+ "message": "스크린 리더와 같은 보조 기술은 `aria-hidden=\"true\"`가 문서 `<body>`에 설정된 경우 일관성 없게 작동합니다. [`aria-hidden`이 문서 본문에 미치는 영향 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-hidden-body)"
49
49
  },
50
50
  "core/audits/accessibility/aria-hidden-body.js | failureTitle": {
51
51
  "message": "`[aria-hidden=\"true\"]`이(가) 문서 `<body>`에 있음"
@@ -54,7 +54,7 @@
54
54
  "message": "`[aria-hidden=\"true\"]`이(가) 문서 `<body>`에 없음"
55
55
  },
56
56
  "core/audits/accessibility/aria-hidden-focus.js | description": {
57
- "message": "`[aria-hidden=\"true\"]` 요소 내 포커스 가능한 하위 요소는 스크린 리더와 같은 보조 기술 사용자가 상호작용 가능한 요소를 사용하지 못하게 합니다. [`aria-hidden`이 포커스 가능 요소에 어떤 영향을 미치는지 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-hidden-focus)"
57
+ "message": "`[aria-hidden=\"true\"]` 요소 내 포커스 가능한 하위 요소는 스크린 리더와 같은 보조 기술 사용자가 상호작용 가능한 요소를 사용하지 못하게 합니다. [`aria-hidden`이 포커스 가능 요소에 어떤 영향을 미치는지 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-hidden-focus)"
58
58
  },
59
59
  "core/audits/accessibility/aria-hidden-focus.js | failureTitle": {
60
60
  "message": "`[aria-hidden=\"true\"]` 요소에 포커스할 수 있는 하위 요소가 있음"
@@ -63,7 +63,7 @@
63
63
  "message": "`[aria-hidden=\"true\"]` 요소에 포커스할 수 있는 하위 요소가 없음"
64
64
  },
65
65
  "core/audits/accessibility/aria-input-field-name.js | description": {
66
- "message": "입력란에 액세스 가능한 이름이 없는 경우 스크린 리더가 일반적인 이름으로 읽기 때문에 스크린 리더에 의존하는 사용자는 해당 입력란을 사용할 수 없게 됩니다. [입력란 라벨에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-input-field-name)"
66
+ "message": "입력란에 액세스 가능한 이름이 없는 경우 스크린 리더가 일반적인 이름으로 읽기 때문에 스크린 리더에 의존하는 사용자는 해당 입력란을 사용할 수 없게 됩니다. [입력란 라벨에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-input-field-name)"
67
67
  },
68
68
  "core/audits/accessibility/aria-input-field-name.js | failureTitle": {
69
69
  "message": "ARIA 입력란에 접근 가능한 이름이 없음"
@@ -72,7 +72,7 @@
72
72
  "message": "ARIA 입력란에 접근 가능한 이름이 있음"
73
73
  },
74
74
  "core/audits/accessibility/aria-meter-name.js | description": {
75
- "message": "측정기 요소에 액세스 가능한 이름이 없는 경우 스크린 리더가 일반적인 이름으로 읽기 때문에 스크린 리더에 의존하는 사용자는 해당 요소를 사용할 수 없게 됩니다. [`meter` 요소의 이름을 지정하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-meter-name)"
75
+ "message": "측정기 요소에 액세스 가능한 이름이 없는 경우 스크린 리더가 일반적인 이름으로 읽기 때문에 스크린 리더에 의존하는 사용자는 해당 요소를 사용할 수 없게 됩니다. [`meter` 요소의 이름을 지정하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-meter-name)"
76
76
  },
77
77
  "core/audits/accessibility/aria-meter-name.js | failureTitle": {
78
78
  "message": "ARIA `meter` 요소에 접근성을 위한 이름이 없음"
@@ -81,7 +81,7 @@
81
81
  "message": "ARIA `meter` 요소에 접근성을 위한 이름이 있음"
82
82
  },
83
83
  "core/audits/accessibility/aria-progressbar-name.js | description": {
84
- "message": "`progressbar` 요소에 액세스 가능한 이름이 없는 경우 스크린 리더가 일반적인 이름으로 읽기 때문에 스크린 리더에 의존하는 사용자는 해당 요소를 사용할 수 없게 됩니다. [`progressbar` 요소에 라벨을 지정하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-progressbar-name)"
84
+ "message": "`progressbar` 요소에 액세스 가능한 이름이 없는 경우 스크린 리더가 일반적인 이름으로 읽기 때문에 스크린 리더에 의존하는 사용자는 해당 요소를 사용할 수 없게 됩니다. [`progressbar` 요소에 라벨을 지정하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-progressbar-name)"
85
85
  },
86
86
  "core/audits/accessibility/aria-progressbar-name.js | failureTitle": {
87
87
  "message": "ARIA `progressbar` 요소에 접근성을 위한 이름이 없음"
@@ -90,7 +90,7 @@
90
90
  "message": "ARIA `progressbar` 요소에 접근성을 위한 이름이 있음"
91
91
  },
92
92
  "core/audits/accessibility/aria-required-attr.js | description": {
93
- "message": "일부 ARIA 역할에는 스크린 리더에 관한 요소의 상태를 설명하는 필수 속성이 있습니다. [역할 및 필수 속성에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-required-attr)"
93
+ "message": "일부 ARIA 역할에는 스크린 리더에 관한 요소의 상태를 설명하는 필수 속성이 있습니다. [역할 및 필수 속성에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-required-attr)"
94
94
  },
95
95
  "core/audits/accessibility/aria-required-attr.js | failureTitle": {
96
96
  "message": "`[role]`에 필요한 `[aria-*]` 속성이 일부 포함되지 않음"
@@ -99,7 +99,7 @@
99
99
  "message": "`[role]`에 필요한 모든 `[aria-*]` 속성이 있음"
100
100
  },
101
101
  "core/audits/accessibility/aria-required-children.js | description": {
102
- "message": "일부 ARIA 상위 역할은 의도한 접근성 기능을 실행하려면 특정 하위 역할을 포함하고 있어야 합니다. [역할 및 필수 하위 요소에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-required-children)"
102
+ "message": "일부 ARIA 상위 역할은 의도한 접근성 기능을 실행하려면 특정 하위 역할을 포함하고 있어야 합니다. [역할 및 필수 하위 요소에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-required-children)"
103
103
  },
104
104
  "core/audits/accessibility/aria-required-children.js | failureTitle": {
105
105
  "message": "하위 요소에 특정 `[role]`을(를) 포함해야 하는 ARIA `[role]` 지원 요소에 일부 또는 전체 하위 요소가 누락되었습니다."
@@ -108,7 +108,7 @@
108
108
  "message": "하위 요소에 특정 `[role]`을(를) 포함해야 하는 ARIA `[role]` 지원 요소에 필요한 모든 하위 요소가 있습니다."
109
109
  },
110
110
  "core/audits/accessibility/aria-required-parent.js | description": {
111
- "message": "일부 ARIA 하위 역할은 의도한 접근성 기능을 올바르게 실행하려면 특정 상위 역할에 포함되어 있어야 합니다. [ARIA 역할 및 필수 상위 요소에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-required-parent)"
111
+ "message": "일부 ARIA 하위 역할은 의도한 접근성 기능을 올바르게 실행하려면 특정 상위 역할에 포함되어 있어야 합니다. [ARIA 역할 및 필수 상위 요소에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-required-parent)"
112
112
  },
113
113
  "core/audits/accessibility/aria-required-parent.js | failureTitle": {
114
114
  "message": "`[role]`이(가) 필수 상위 요소에 포함되지 않음"
@@ -117,7 +117,7 @@
117
117
  "message": "`[role]`이(가) 필수 상위 요소에 포함됨"
118
118
  },
119
119
  "core/audits/accessibility/aria-roles.js | description": {
120
- "message": "ARIA 역할에서 의도한 접근성 기능을 실행하려면 유효한 값을 포함하고 있어야 합니다. [유효한 ARIA 역할에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-roles)"
120
+ "message": "ARIA 역할에서 의도한 접근성 기능을 실행하려면 유효한 값을 포함하고 있어야 합니다. [유효한 ARIA 역할에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-roles)"
121
121
  },
122
122
  "core/audits/accessibility/aria-roles.js | failureTitle": {
123
123
  "message": "`[role]` 값이 유효하지 않음"
@@ -126,7 +126,7 @@
126
126
  "message": "`[role]` 값이 유효함"
127
127
  },
128
128
  "core/audits/accessibility/aria-text.js | description": {
129
- "message": "마크업으로 분할된 텍스트 노드 주위에 `role=text`를 추가하면 VoiceOver가 이를 하나의 구문으로 취급할 수 있지만, 요소의 포커스 가능한 하위 요소는 표시되지 않습니다. [`role=text` 속성에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-text)"
129
+ "message": "마크업으로 분할된 텍스트 노드 주위에 `role=text`를 추가하면 VoiceOver가 이를 하나의 구문으로 취급할 수 있지만, 요소의 포커스 가능한 하위 요소는 표시되지 않습니다. [`role=text` 속성에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-text)"
130
130
  },
131
131
  "core/audits/accessibility/aria-text.js | failureTitle": {
132
132
  "message": "`role=text` 속성이 있는 요소에 포커스 가능한 하위 요소가 있습니다."
@@ -135,7 +135,7 @@
135
135
  "message": "`role=text` 속성이 있는 요소에는 포커스 가능한 하위 요소가 없습니다."
136
136
  },
137
137
  "core/audits/accessibility/aria-toggle-field-name.js | description": {
138
- "message": "전환 버튼 입력란에 액세스 가능한 이름이 없는 경우 스크린 리더가 일반적인 이름으로 읽기 때문에 스크린 리더에 의존하는 사용자는 해당 입력란을 사용할 수 없게 됩니다. [전환 버튼 입력란에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-toggle-field-name)"
138
+ "message": "전환 버튼 입력란에 액세스 가능한 이름이 없는 경우 스크린 리더가 일반적인 이름으로 읽기 때문에 스크린 리더에 의존하는 사용자는 해당 입력란을 사용할 수 없게 됩니다. [전환 버튼 입력란에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-toggle-field-name)"
139
139
  },
140
140
  "core/audits/accessibility/aria-toggle-field-name.js | failureTitle": {
141
141
  "message": "ARIA 토글 입력란에 접근 가능한 이름이 없음"
@@ -144,7 +144,7 @@
144
144
  "message": "ARIA 토글 입력란에 접근 가능한 이름이 있음"
145
145
  },
146
146
  "core/audits/accessibility/aria-tooltip-name.js | description": {
147
- "message": "팁 요소에 액세스 가능한 이름이 없는 경우 스크린 리더가 일반적인 이름으로 읽기 때문에 스크린 리더에 의존하는 사용자는 해당 요소를 사용할 수 없게 됩니다. [`tooltip` 요소의 이름을 지정하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-tooltip-name)"
147
+ "message": "팁 요소에 액세스 가능한 이름이 없는 경우 스크린 리더가 일반적인 이름으로 읽기 때문에 스크린 리더에 의존하는 사용자는 해당 요소를 사용할 수 없게 됩니다. [`tooltip` 요소의 이름을 지정하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-tooltip-name)"
148
148
  },
149
149
  "core/audits/accessibility/aria-tooltip-name.js | failureTitle": {
150
150
  "message": "ARIA `tooltip` 요소에 접근성을 위한 이름이 없음"
@@ -153,7 +153,7 @@
153
153
  "message": "ARIA `tooltip` 요소에 접근성을 위한 이름이 있음"
154
154
  },
155
155
  "core/audits/accessibility/aria-treeitem-name.js | description": {
156
- "message": "`treeitem` 요소에 액세스 가능한 이름이 없는 경우 스크린 리더가 일반적인 이름으로 읽기 때문에 스크린 리더에 의존하는 사용자는 해당 요소를 사용할 수 없게 됩니다. [`treeitem` 요소 라벨 지정에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-treeitem-name)"
156
+ "message": "`treeitem` 요소에 액세스 가능한 이름이 없는 경우 스크린 리더가 일반적인 이름으로 읽기 때문에 스크린 리더에 의존하는 사용자는 해당 요소를 사용할 수 없게 됩니다. [`treeitem` 요소 라벨 지정에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-treeitem-name)"
157
157
  },
158
158
  "core/audits/accessibility/aria-treeitem-name.js | failureTitle": {
159
159
  "message": "ARIA `treeitem` 요소에 접근성을 위한 이름이 없음"
@@ -162,7 +162,7 @@
162
162
  "message": "ARIA `treeitem` 요소에 접근성을 위한 이름이 있음"
163
163
  },
164
164
  "core/audits/accessibility/aria-valid-attr-value.js | description": {
165
- "message": "스크린 리더와 같은 보조 기술은 잘못된 값이 있는 ARIA 속성을 해석하지 못합니다. [ARIA 속성의 유효한 값에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-valid-attr-value)"
165
+ "message": "스크린 리더와 같은 보조 기술은 잘못된 값이 있는 ARIA 속성을 해석하지 못합니다. [ARIA 속성의 유효한 값에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-valid-attr-value)"
166
166
  },
167
167
  "core/audits/accessibility/aria-valid-attr-value.js | failureTitle": {
168
168
  "message": "`[aria-*]` 속성에 유효한 값이 없음"
@@ -171,7 +171,7 @@
171
171
  "message": "`[aria-*]` 속성에 유효한 값이 있음"
172
172
  },
173
173
  "core/audits/accessibility/aria-valid-attr.js | description": {
174
- "message": "스크린 리더와 같은 보조 기술은 잘못된 이름이 있는 ARIA 속성을 해석하지 못합니다. [유효한 ARIA 속성에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/aria-valid-attr)"
174
+ "message": "스크린 리더와 같은 보조 기술은 잘못된 이름이 있는 ARIA 속성을 해석하지 못합니다. [유효한 ARIA 속성에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/aria-valid-attr)"
175
175
  },
176
176
  "core/audits/accessibility/aria-valid-attr.js | failureTitle": {
177
177
  "message": "`[aria-*]` 속성이 유효하지 않거나 맞춤법 오류가 있음"
@@ -183,7 +183,7 @@
183
183
  "message": "통과하지 못한 요소"
184
184
  },
185
185
  "core/audits/accessibility/button-name.js | description": {
186
- "message": "버튼에 액세스 가능한 이름이 없는 경우 스크린 리더가 '버튼'이라고만 읽기 때문에 스크린 리더에 의존하는 사용자는 해당 버튼을 사용할 수 없게 됩니다. [버튼 접근성을 높이는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.8/button-name)"
186
+ "message": "버튼에 액세스 가능한 이름이 없는 경우 스크린 리더가 '버튼'이라고만 읽기 때문에 스크린 리더에 의존하는 사용자는 해당 버튼을 사용할 수 없게 됩니다. [버튼 접근성을 높이는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.9/button-name)"
187
187
  },
188
188
  "core/audits/accessibility/button-name.js | failureTitle": {
189
189
  "message": "버튼에 접근 가능한 이름이 없습니다"
@@ -192,7 +192,7 @@
192
192
  "message": "버튼에 접근 가능한 이름이 있습니다"
193
193
  },
194
194
  "core/audits/accessibility/bypass.js | description": {
195
- "message": "반복적인 콘텐츠를 건너뛸 방법을 추가하면 키보드 사용자가 페이지를 더 효율적으로 탐색할 수 있습니다. [우회 차단에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/bypass)"
195
+ "message": "반복적인 콘텐츠를 건너뛸 방법을 추가하면 키보드 사용자가 페이지를 더 효율적으로 탐색할 수 있습니다. [우회 차단에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/bypass)"
196
196
  },
197
197
  "core/audits/accessibility/bypass.js | failureTitle": {
198
198
  "message": "페이지에 제목, 링크 건너뛰기, 랜드마크 영역이 포함되어 있지 않습니다"
@@ -201,7 +201,7 @@
201
201
  "message": "페이지에 제목, 링크 건너뛰기, 랜드마크 영역이 포함되어 있습니다"
202
202
  },
203
203
  "core/audits/accessibility/color-contrast.js | description": {
204
- "message": "많은 사용자가 저대비 텍스트를 읽는 데 어려움을 겪거나 전혀 읽지 못합니다. [충분한 색상 대비를 제공하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.8/color-contrast)"
204
+ "message": "많은 사용자가 저대비 텍스트를 읽는 데 어려움을 겪거나 전혀 읽지 못합니다. [충분한 색상 대비를 제공하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.9/color-contrast)"
205
205
  },
206
206
  "core/audits/accessibility/color-contrast.js | failureTitle": {
207
207
  "message": "백그라운드 및 포그라운드 색상의 대비율이 충분하지 않습니다"
@@ -210,7 +210,7 @@
210
210
  "message": "백그라운드 및 포그라운드 색상의 대비율이 충분합니다"
211
211
  },
212
212
  "core/audits/accessibility/definition-list.js | description": {
213
- "message": "정의 목록이 올바르게 표시되지 않으면 스크린 리더에서 혼란스럽거나 정확하지 않은 내용을 말할 수 있습니다. [정의 목록을 올바르게 구성하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.8/definition-list)"
213
+ "message": "정의 목록이 올바르게 표시되지 않으면 스크린 리더에서 혼란스럽거나 정확하지 않은 내용을 말할 수 있습니다. [정의 목록을 올바르게 구성하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.9/definition-list)"
214
214
  },
215
215
  "core/audits/accessibility/definition-list.js | failureTitle": {
216
216
  "message": "`<dl>`에 순서가 올바른 `<dt>` 및 `<dd>` 그룹, `<script>`, `<template>` 또는 `<div>` 요소만 포함되어 있지 않음"
@@ -219,7 +219,7 @@
219
219
  "message": "`<dl>`에 순서가 올바른 `<dt>` 및 `<dd>` 그룹, `<script>`, `<template>` 또는 `<div>` 요소만 포함되어 있음"
220
220
  },
221
221
  "core/audits/accessibility/dlitem.js | description": {
222
- "message": "스크린 리더에서 정의 목록 항목(`<dt>` 및 `<dd>`)을 올바르게 읽으려면 정의 목록 항목이 상위 `<dl>` 요소에 래핑되어 있어야 합니다. [정의 목록을 올바르게 구성하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.8/dlitem)"
222
+ "message": "스크린 리더에서 정의 목록 항목(`<dt>` 및 `<dd>`)을 올바르게 읽으려면 정의 목록 항목이 상위 `<dl>` 요소에 래핑되어 있어야 합니다. [정의 목록을 올바르게 구성하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.9/dlitem)"
223
223
  },
224
224
  "core/audits/accessibility/dlitem.js | failureTitle": {
225
225
  "message": "정의 목록 항목이 `<dl>` 요소에서 래핑되어 있지 않음"
@@ -228,7 +228,7 @@
228
228
  "message": "정의 목록 항목이 `<dl>` 요소에서 래핑되어 있음"
229
229
  },
230
230
  "core/audits/accessibility/document-title.js | description": {
231
- "message": "제목을 사용하면 스크린 리더 사용자에게는 페이지의 개요를 제공할 수 있습니다. 검색엔진 사용자는 제목으로 페이지가 자신의 검색어와 관련되어 있는지 여부를 판단합니다. [문서 제목에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/document-title)"
231
+ "message": "제목을 사용하면 스크린 리더 사용자에게는 페이지의 개요를 제공할 수 있습니다. 검색엔진 사용자는 제목으로 페이지가 자신의 검색어와 관련되어 있는지 여부를 판단합니다. [문서 제목에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/document-title)"
232
232
  },
233
233
  "core/audits/accessibility/document-title.js | failureTitle": {
234
234
  "message": "문서에 `<title>` 요소가 없음"
@@ -236,17 +236,8 @@
236
236
  "core/audits/accessibility/document-title.js | title": {
237
237
  "message": "문서에 `<title>` 요소가 있음"
238
238
  },
239
- "core/audits/accessibility/duplicate-id-active.js | description": {
240
- "message": "포커스 가능한 모든 요소가 보조 기술에 올바르게 표시되려면 고유한 `id`가 있어야 합니다. [중복된 `id`를 해결하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.8/duplicate-id-active)"
241
- },
242
- "core/audits/accessibility/duplicate-id-active.js | failureTitle": {
243
- "message": "포커스할 수 있는 활성 요소에 중복되는 `[id]` 속성이 있음"
244
- },
245
- "core/audits/accessibility/duplicate-id-active.js | title": {
246
- "message": "포커스할 수 있는 활성 요소에 중복되는 `[id]` 속성이 없음"
247
- },
248
239
  "core/audits/accessibility/duplicate-id-aria.js | description": {
249
- "message": "중복되는 ARIA ID 값이 없어야 보조 기술이 다른 인스턴스를 놓치지 않습니다. [중복 ARIA ID를 수정하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.8/duplicate-id-aria)"
240
+ "message": "중복되는 ARIA ID 값이 없어야 보조 기술이 다른 인스턴스를 놓치지 않습니다. [중복 ARIA ID를 수정하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.9/duplicate-id-aria)"
250
241
  },
251
242
  "core/audits/accessibility/duplicate-id-aria.js | failureTitle": {
252
243
  "message": "중복되는 ARIA ID가 있음"
@@ -255,7 +246,7 @@
255
246
  "message": "중복되는 ARIA ID가 없음"
256
247
  },
257
248
  "core/audits/accessibility/empty-heading.js | description": {
258
- "message": "콘텐츠가 없는 제목이나 액세스 불가한 텍스트를 포함하는 제목이 있는 경우 스크린 리더 사용자가 페이지 구조의 정보를 얻는 데 어려움을 겪습니다. [제목에 관해 자세히 알아보세요](https://dequeuniversity.com/rules/axe/4.8/empty-heading)."
249
+ "message": "콘텐츠가 없는 제목이나 액세스 불가한 텍스트를 포함하는 제목이 있는 경우 스크린 리더 사용자가 페이지 구조의 정보를 얻는 데 어려움을 겪습니다. [제목에 관해 자세히 알아보세요](https://dequeuniversity.com/rules/axe/4.9/empty-heading)."
259
250
  },
260
251
  "core/audits/accessibility/empty-heading.js | failureTitle": {
261
252
  "message": "제목 요소에 콘텐츠가 포함되어 있지 않습니다."
@@ -264,7 +255,7 @@
264
255
  "message": "모든 제목 요소에 콘텐츠가 포함되어 있습니다."
265
256
  },
266
257
  "core/audits/accessibility/form-field-multiple-labels.js | description": {
267
- "message": "라벨이 여러 개인 양식 입력란은 첫 번째, 마지막 또는 모든 라벨을 사용하는 스크린 리더와 같은 보조 기술에서 잘못 읽을 수 있습니다. [양식 라벨 사용 방법 알아보기](https://dequeuniversity.com/rules/axe/4.8/form-field-multiple-labels)"
258
+ "message": "라벨이 여러 개인 양식 입력란은 첫 번째, 마지막 또는 모든 라벨을 사용하는 스크린 리더와 같은 보조 기술에서 잘못 읽을 수 있습니다. [양식 라벨 사용 방법 알아보기](https://dequeuniversity.com/rules/axe/4.9/form-field-multiple-labels)"
268
259
  },
269
260
  "core/audits/accessibility/form-field-multiple-labels.js | failureTitle": {
270
261
  "message": "양식 입력란에 라벨이 여러 개 있음"
@@ -273,7 +264,7 @@
273
264
  "message": "양식 입력란에 라벨이 여러 개가 아님"
274
265
  },
275
266
  "core/audits/accessibility/frame-title.js | description": {
276
- "message": "스크린 리더 사용자는 프레임 콘텐츠를 설명해 주는 프레임 제목을 사용합니다. [프레임 제목에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/frame-title)"
267
+ "message": "스크린 리더 사용자는 프레임 콘텐츠를 설명해 주는 프레임 제목을 사용합니다. [프레임 제목에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/frame-title)"
277
268
  },
278
269
  "core/audits/accessibility/frame-title.js | failureTitle": {
279
270
  "message": "`<frame>` 또는 `<iframe>` 요소에 제목이 없음"
@@ -282,7 +273,7 @@
282
273
  "message": "`<frame>` 또는 `<iframe>` 요소에 제목이 있음"
283
274
  },
284
275
  "core/audits/accessibility/heading-order.js | description": {
285
- "message": "레벨을 건너뛰지 않고 제대로 정렬된 제목은 페이지의 시맨틱 구조를 포함하여, 보조 기술을 사용할 때 더 쉽게 이동하고 이해하는 데 도움이 됩니다. [제목 순서 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/heading-order)"
276
+ "message": "레벨을 건너뛰지 않고 제대로 정렬된 제목은 페이지의 시맨틱 구조를 포함하여, 보조 기술을 사용할 때 더 쉽게 이동하고 이해하는 데 도움이 됩니다. [제목 순서 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/heading-order)"
286
277
  },
287
278
  "core/audits/accessibility/heading-order.js | failureTitle": {
288
279
  "message": "제목 요소가 내림차순으로 표시되지 않음"
@@ -291,7 +282,7 @@
291
282
  "message": "제목 요소가 내림차순으로 표시됨"
292
283
  },
293
284
  "core/audits/accessibility/html-has-lang.js | description": {
294
- "message": "페이지에서 `lang` 속성을 지정하지 않는 경우 스크린 리더는 사용자가 스크린 리더를 설정할 때 선택한 기본 언어로 페이지가 작성되어 있다고 가정합니다. 페이지가 기본 언어로 작성되어 있지 않으면 스크린 리더에서 페이지에 있는 텍스트를 제대로 읽어줄 수 없습니다. [`lang` 속성에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/html-has-lang)"
285
+ "message": "페이지에서 `lang` 속성을 지정하지 않는 경우 스크린 리더는 사용자가 스크린 리더를 설정할 때 선택한 기본 언어로 페이지가 작성되어 있다고 가정합니다. 페이지가 기본 언어로 작성되어 있지 않으면 스크린 리더에서 페이지에 있는 텍스트를 제대로 읽어줄 수 없습니다. [`lang` 속성에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/html-has-lang)"
295
286
  },
296
287
  "core/audits/accessibility/html-has-lang.js | failureTitle": {
297
288
  "message": "`<html>` 요소에 `[lang]` 속성이 없음"
@@ -300,7 +291,7 @@
300
291
  "message": "`<html>` 요소에 `[lang]` 속성이 있음"
301
292
  },
302
293
  "core/audits/accessibility/html-lang-valid.js | description": {
303
- "message": "유효한 [BCP 47 언어](https://www.w3.org/International/questions/qa-choosing-language-tags#question)를 지정하면 스크린 리더에서 텍스트를 올바르게 읽는 데 도움이 됩니다. [`lang` 속성을 사용하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.8/html-lang-valid)"
294
+ "message": "유효한 [BCP 47 언어](https://www.w3.org/International/questions/qa-choosing-language-tags#question)를 지정하면 스크린 리더에서 텍스트를 올바르게 읽는 데 도움이 됩니다. [`lang` 속성을 사용하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.9/html-lang-valid)"
304
295
  },
305
296
  "core/audits/accessibility/html-lang-valid.js | failureTitle": {
306
297
  "message": "`<html>` 요소의 `[lang]` 속성에 유효한 값이 없음"
@@ -309,7 +300,7 @@
309
300
  "message": "`<html>` 요소에 `[lang]` 속성의 유효한 값이 있음"
310
301
  },
311
302
  "core/audits/accessibility/html-xml-lang-mismatch.js | description": {
312
- "message": "웹페이지에서 일관된 언어를 지정하지 않으면 스크린 리더에서 페이지의 텍스트를 올바르게 알리지 못할 수 있습니다. [`lang` 속성에 관해 자세히 알아보세요](https://dequeuniversity.com/rules/axe/4.8/html-xml-lang-mismatch)."
303
+ "message": "웹페이지에서 일관된 언어를 지정하지 않으면 스크린 리더에서 페이지의 텍스트를 올바르게 알리지 못할 수 있습니다. [`lang` 속성에 관해 자세히 알아보세요](https://dequeuniversity.com/rules/axe/4.9/html-xml-lang-mismatch)."
313
304
  },
314
305
  "core/audits/accessibility/html-xml-lang-mismatch.js | failureTitle": {
315
306
  "message": "`<html>` 요소에 기본 속성이 `[lang]` 속성과 기본 언어가 동일한 `[xml:lang]` 속성이 없습니다"
@@ -318,7 +309,7 @@
318
309
  "message": "`<html>` 요소에는 `[lang]` 속성과 동일한 기본 언어를 사용하는 `[xml:lang]` 속성이 있습니다."
319
310
  },
320
311
  "core/audits/accessibility/identical-links-same-purpose.js | description": {
321
- "message": "도착 페이지가 동일한 링크에는 동일한 설명을 제공하여 사용자가 링크의 목적을 이해하고 링크 사용 여부를 결정할 수 있도록 해야 합니다. [동일한 링크에 관해 자세히 알아보세요](https://dequeuniversity.com/rules/axe/4.8/identical-links-same-purpose)."
312
+ "message": "도착 페이지가 동일한 링크에는 동일한 설명을 제공하여 사용자가 링크의 목적을 이해하고 링크 사용 여부를 결정할 수 있도록 해야 합니다. [동일한 링크에 관해 자세히 알아보세요](https://dequeuniversity.com/rules/axe/4.9/identical-links-same-purpose)."
322
313
  },
323
314
  "core/audits/accessibility/identical-links-same-purpose.js | failureTitle": {
324
315
  "message": "동일한 링크의 목적이 동일하지 않습니다."
@@ -327,7 +318,7 @@
327
318
  "message": "동일한 링크의 목적이 동일합니다."
328
319
  },
329
320
  "core/audits/accessibility/image-alt.js | description": {
330
- "message": "정보 요소는 짧아야 하며 설명을 제공하는 대체 텍스트를 목표로 해야 합니다. 장식 요소는 Alt 속성이 비어 있는 경우 무시될 수 있습니다. [`alt` 속성에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/image-alt)"
321
+ "message": "정보 요소는 짧아야 하며 설명을 제공하는 대체 텍스트를 목표로 해야 합니다. 장식 요소는 Alt 속성이 비어 있는 경우 무시될 수 있습니다. [`alt` 속성에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/image-alt)"
331
322
  },
332
323
  "core/audits/accessibility/image-alt.js | failureTitle": {
333
324
  "message": "이미지 요소에 `[alt]` 속성 없음"
@@ -336,7 +327,7 @@
336
327
  "message": "이미지 요소에 `[alt]` 속성이 있음"
337
328
  },
338
329
  "core/audits/accessibility/image-redundant-alt.js | description": {
339
- "message": "정보 요소는 짧아야 하며 설명을 제공하는 대체 텍스트를 목표로 해야 합니다. 링크 또는 이미지에 인접한 텍스트와 정확하게 일치하는 대체 텍스트는 스크린 리더 사용자에게 혼란을 줄 수 있습니다. 텍스트가 두 번 읽히기 때문입니다. [`alt` 속성에 대해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/image-redundant-alt)"
330
+ "message": "정보 요소는 짧아야 하며 설명을 제공하는 대체 텍스트를 목표로 해야 합니다. 링크 또는 이미지에 인접한 텍스트와 정확하게 일치하는 대체 텍스트는 스크린 리더 사용자에게 혼란을 줄 수 있습니다. 텍스트가 두 번 읽히기 때문입니다. [`alt` 속성에 대해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/image-redundant-alt)"
340
331
  },
341
332
  "core/audits/accessibility/image-redundant-alt.js | failureTitle": {
342
333
  "message": "이미지 요소에 중복된 텍스트인 `[alt]` 속성이 있습니다"
@@ -345,7 +336,7 @@
345
336
  "message": "이미지 요소에 중복된 텍스트인 `[alt]` 속성이 없습니다"
346
337
  },
347
338
  "core/audits/accessibility/input-button-name.js | description": {
348
- "message": "입력 버튼에 식별 가능하고 액세스 가능한 텍스트를 추가하면 스크린 리더 사용자가 입력 버튼의 목적을 이해하는 데 도움이 될 수 있습니다. [입력 버튼에 관해 자세히 알아보세요](https://dequeuniversity.com/rules/axe/4.8/input-button-name)."
339
+ "message": "입력 버튼에 식별 가능하고 액세스 가능한 텍스트를 추가하면 스크린 리더 사용자가 입력 버튼의 목적을 이해하는 데 도움이 될 수 있습니다. [입력 버튼에 관해 자세히 알아보세요](https://dequeuniversity.com/rules/axe/4.9/input-button-name)."
349
340
  },
350
341
  "core/audits/accessibility/input-button-name.js | failureTitle": {
351
342
  "message": "입력 버튼에 식별 가능한 텍스트가 없습니다."
@@ -354,7 +345,7 @@
354
345
  "message": "입력 버튼에 식별 가능한 텍스트가 있습니다"
355
346
  },
356
347
  "core/audits/accessibility/input-image-alt.js | description": {
357
- "message": "이미지가 `<input>` 버튼으로 사용되는 경우 대체 텍스트를 제공하면 스크린 리더 사용자가 버튼의 목적을 쉽게 이해하는 데 도움이 됩니다. [입력 이미지 대체 텍스트에 관해 알아보기](https://dequeuniversity.com/rules/axe/4.8/input-image-alt)"
348
+ "message": "이미지가 `<input>` 버튼으로 사용되는 경우 대체 텍스트를 제공하면 스크린 리더 사용자가 버튼의 목적을 쉽게 이해하는 데 도움이 됩니다. [입력 이미지 대체 텍스트에 관해 알아보기](https://dequeuniversity.com/rules/axe/4.9/input-image-alt)"
358
349
  },
359
350
  "core/audits/accessibility/input-image-alt.js | failureTitle": {
360
351
  "message": "`<input type=\"image\">` 요소에 `[alt]` 텍스트가 없음"
@@ -363,7 +354,7 @@
363
354
  "message": "`<input type=\"image\">` 요소에 `[alt]` 텍스트가 있음"
364
355
  },
365
356
  "core/audits/accessibility/label-content-name-mismatch.js | description": {
366
- "message": "표시되는 텍스트 라벨이 액세스 가능한 이름과 일치하지 않으면 스크린 리더 사용자에게 혼란을 초래할 수 있습니다. [액세스 가능한 이름에 대해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/label-content-name-mismatch)"
357
+ "message": "표시되는 텍스트 라벨이 액세스 가능한 이름과 일치하지 않으면 스크린 리더 사용자에게 혼란을 초래할 수 있습니다. [액세스 가능한 이름에 대해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/label-content-name-mismatch)"
367
358
  },
368
359
  "core/audits/accessibility/label-content-name-mismatch.js | failureTitle": {
369
360
  "message": "표시되는 텍스트 라벨이 포함된 요소에 일치하는 액세스 가능한 이름이 없습니다"
@@ -372,7 +363,7 @@
372
363
  "message": "표시되는 텍스트 라벨이 포함된 요소에 일치하는 액세스 가능한 이름이 있습니다"
373
364
  },
374
365
  "core/audits/accessibility/label.js | description": {
375
- "message": "라벨을 사용하면 스크린 리더와 같은 보조 기술에서 양식 컨트롤을 올바르게 읽을 수 있습니다. [양식 요소 라벨에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/label)"
366
+ "message": "라벨을 사용하면 스크린 리더와 같은 보조 기술에서 양식 컨트롤을 올바르게 읽을 수 있습니다. [양식 요소 라벨에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/label)"
376
367
  },
377
368
  "core/audits/accessibility/label.js | failureTitle": {
378
369
  "message": "양식 요소에 관련 라벨이 포함되어 있지 않습니다"
@@ -381,7 +372,7 @@
381
372
  "message": "양식 요소에 관련 라벨이 포함되어 있습니다"
382
373
  },
383
374
  "core/audits/accessibility/landmark-one-main.js | description": {
384
- "message": "주요 랜드마크가 하나 있으면 스크린 리더 사용자가 웹페이지를 탐색하는 데 도움이 됩니다. [랜드마크에 관해 자세히 알아보세요](https://dequeuniversity.com/rules/axe/4.8/landmark-one-main)."
375
+ "message": "주요 랜드마크가 하나 있으면 스크린 리더 사용자가 웹페이지를 탐색하는 데 도움이 됩니다. [랜드마크에 관해 자세히 알아보세요](https://dequeuniversity.com/rules/axe/4.9/landmark-one-main)."
385
376
  },
386
377
  "core/audits/accessibility/landmark-one-main.js | failureTitle": {
387
378
  "message": "문서에 주요 랜드마크가 없습니다."
@@ -390,7 +381,7 @@
390
381
  "message": "문서에 주요 랜드마크가 있습니다."
391
382
  },
392
383
  "core/audits/accessibility/link-in-text-block.js | description": {
393
- "message": "많은 사용자가 저대비 텍스트를 읽는 데 어려움을 겪거나 전혀 읽지 못합니다. 눈에 잘 띄는 링크 텍스트는 시력이 낮은 사용자의 사용 경험을 개선합니다. [링크가 눈에 잘 띄게 만드는 방법을 알아보세요](https://dequeuniversity.com/rules/axe/4.8/link-in-text-block)."
384
+ "message": "많은 사용자가 저대비 텍스트를 읽는 데 어려움을 겪거나 전혀 읽지 못합니다. 눈에 잘 띄는 링크 텍스트는 시력이 낮은 사용자의 사용 경험을 개선합니다. [링크가 눈에 잘 띄게 만드는 방법을 알아보세요](https://dequeuniversity.com/rules/axe/4.9/link-in-text-block)."
394
385
  },
395
386
  "core/audits/accessibility/link-in-text-block.js | failureTitle": {
396
387
  "message": "색상에 의존하여 링크를 구분할 수 있습니다."
@@ -399,7 +390,7 @@
399
390
  "message": "색상에 의존하지 않고 링크를 구분할 수 있습니다."
400
391
  },
401
392
  "core/audits/accessibility/link-name.js | description": {
402
- "message": "인식하기 쉽고, 고유하고, 초점을 맞추기 쉬운 링크 텍스트(및 이미지가 링크로 사용되는 경우 이미지의 대체 텍스트)를 사용하면 스크린 리더 사용자의 탐색 환경을 개선할 수 있습니다. [링크 접근성을 높이는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.8/link-name)"
393
+ "message": "인식하기 쉽고, 고유하고, 초점을 맞추기 쉬운 링크 텍스트(및 이미지가 링크로 사용되는 경우 이미지의 대체 텍스트)를 사용하면 스크린 리더 사용자의 탐색 환경을 개선할 수 있습니다. [링크 접근성을 높이는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.9/link-name)"
403
394
  },
404
395
  "core/audits/accessibility/link-name.js | failureTitle": {
405
396
  "message": "링크에 인식 가능한 이름이 포함되어 있지 않습니다"
@@ -408,7 +399,7 @@
408
399
  "message": "링크에 인식 가능한 이름이 포함되어 있습니다"
409
400
  },
410
401
  "core/audits/accessibility/list.js | description": {
411
- "message": "스크린 리더에는 목록을 읽는 특정 방식이 있습니다. 목록 구조를 적절히 작성하면 스크린 리더 출력에 도움이 됩니다. [적절한 목록 구조에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/list)"
402
+ "message": "스크린 리더에는 목록을 읽는 특정 방식이 있습니다. 목록 구조를 적절히 작성하면 스크린 리더 출력에 도움이 됩니다. [적절한 목록 구조에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/list)"
412
403
  },
413
404
  "core/audits/accessibility/list.js | failureTitle": {
414
405
  "message": "목록에 `<li>` 요소와 스크립트 지원 요소(`<script>` 및 `<template>`)만 포함되지 않음"
@@ -417,7 +408,7 @@
417
408
  "message": "목록에 `<li>` 요소와 요소 지원 스크립트(`<script>` 및 `<template>`)만 포함됨"
418
409
  },
419
410
  "core/audits/accessibility/listitem.js | description": {
420
- "message": "스크린 리더에서 목록 항목(`<li>`)을 올바르게 읽으려면 목록 항목이 상위 `<ul>`, `<ol>` 또는 `<menu>`에 포함되어 있어야 합니다. [적절한 목록 구조에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/listitem)"
411
+ "message": "스크린 리더에서 목록 항목(`<li>`)을 올바르게 읽으려면 목록 항목이 상위 `<ul>`, `<ol>` 또는 `<menu>`에 포함되어 있어야 합니다. [적절한 목록 구조에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/listitem)"
421
412
  },
422
413
  "core/audits/accessibility/listitem.js | failureTitle": {
423
414
  "message": "목록 항목(`<li>`)이 `<ul>`, `<ol>` 또는 `<menu>` 상위 요소 내에 포함되지 않음"
@@ -426,7 +417,7 @@
426
417
  "message": "목록 항목(`<li>`)이 `<ul>`, `<ol>` 또는 `<menu>` 상위 요소 내에 포함되어 있음"
427
418
  },
428
419
  "core/audits/accessibility/meta-refresh.js | description": {
429
- "message": "사용자는 페이지가 자동으로 새로고침된다고 예상하지 못하기 때문에 페이지가 자동으로 새로고침되면 초점이 다시 페이지 상단에 맞춰집니다. 이로 인해 불쾌하거나 혼란스러운 상황이 발생할 수 있습니다. [새로고침 메타 태그에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/meta-refresh)"
420
+ "message": "사용자는 페이지가 자동으로 새로고침된다고 예상하지 못하기 때문에 페이지가 자동으로 새로고침되면 초점이 다시 페이지 상단에 맞춰집니다. 이로 인해 불쾌하거나 혼란스러운 상황이 발생할 수 있습니다. [새로고침 메타 태그에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/meta-refresh)"
430
421
  },
431
422
  "core/audits/accessibility/meta-refresh.js | failureTitle": {
432
423
  "message": "문서에서 `<meta http-equiv=\"refresh\">` 사용됨"
@@ -435,7 +426,7 @@
435
426
  "message": "문서에서 `<meta http-equiv=\"refresh\">`이(가) 사용되지 않음"
436
427
  },
437
428
  "core/audits/accessibility/meta-viewport.js | description": {
438
- "message": "확대/축소를 사용 중지하면 저시력으로 인해 웹페이지의 콘텐츠를 제대로 확인하기 위해 화면 확대를 사용하는 사용자에게 문제가 될 수 있습니다. [viewport meta 태그에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/meta-viewport)"
429
+ "message": "확대/축소를 사용 중지하면 저시력으로 인해 웹페이지의 콘텐츠를 제대로 확인하기 위해 화면 확대를 사용하는 사용자에게 문제가 될 수 있습니다. [viewport meta 태그에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/meta-viewport)"
439
430
  },
440
431
  "core/audits/accessibility/meta-viewport.js | failureTitle": {
441
432
  "message": "`[user-scalable=\"no\"]`이(가) `<meta name=\"viewport\">` 요소에서 사용되거나 `[maximum-scale]` 속성이 5보다 작음"
@@ -444,7 +435,7 @@
444
435
  "message": "`[user-scalable=\"no\"]`은(는) `<meta name=\"viewport\">` 요소에 사용되지 않으며 `[maximum-scale]` 속성이 5보다 작지 않음"
445
436
  },
446
437
  "core/audits/accessibility/object-alt.js | description": {
447
- "message": "스크린 리더는 텍스트가 아닌 콘텐츠를 번역할 수 없습니다. `<object>` 요소에 대체 텍스트를 추가하면 스크린 리더에서 사용자에게 텍스트의 의미를 전달하는 데 도움이 됩니다. [`object` 요소의 대체 텍스트에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/object-alt)"
438
+ "message": "스크린 리더는 텍스트가 아닌 콘텐츠를 번역할 수 없습니다. `<object>` 요소에 대체 텍스트를 추가하면 스크린 리더에서 사용자에게 텍스트의 의미를 전달하는 데 도움이 됩니다. [`object` 요소의 대체 텍스트에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/object-alt)"
448
439
  },
449
440
  "core/audits/accessibility/object-alt.js | failureTitle": {
450
441
  "message": "`<object>` 요소에 대체 텍스트가 없음"
@@ -453,7 +444,7 @@
453
444
  "message": "`<object>` 요소에 대체 텍스트가 있음"
454
445
  },
455
446
  "core/audits/accessibility/select-name.js | description": {
456
- "message": "효과적인 라벨이 없는 양식 요소로 인해 스크린 리더 사용자가 불편을 겪을 수 있습니다. [`select` 요소에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/select-name)"
447
+ "message": "효과적인 라벨이 없는 양식 요소로 인해 스크린 리더 사용자가 불편을 겪을 수 있습니다. [`select` 요소에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/select-name)"
457
448
  },
458
449
  "core/audits/accessibility/select-name.js | failureTitle": {
459
450
  "message": "선택 요소에 연결된 라벨 요소가 없습니다."
@@ -462,7 +453,7 @@
462
453
  "message": "선택 요소에 연결된 라벨 요소가 있습니다."
463
454
  },
464
455
  "core/audits/accessibility/skip-link.js | description": {
465
- "message": "건너뛰기 링크를 포함하면 사용자가 주요 콘텐츠로 건너뛰어 시간을 절약할 수 있습니다. [링크 건너뛰기 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/skip-link)"
456
+ "message": "건너뛰기 링크를 포함하면 사용자가 주요 콘텐츠로 건너뛰어 시간을 절약할 수 있습니다. [링크 건너뛰기 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/skip-link)"
466
457
  },
467
458
  "core/audits/accessibility/skip-link.js | failureTitle": {
468
459
  "message": "건너뛰기 링크는 포커스가 불가능합니다"
@@ -471,7 +462,7 @@
471
462
  "message": "건너뛰기 링크는 포커스 가능합니다"
472
463
  },
473
464
  "core/audits/accessibility/tabindex.js | description": {
474
- "message": "0보다 큰 값은 명시적인 탐색 순서를 나타냅니다. 기술적으로는 유효하나 보조 기술에 의존하는 사용자에게 불편한 환경이 생기는 경우가 많습니다. [`tabindex` 속성에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/tabindex)"
465
+ "message": "0보다 큰 값은 명시적인 탐색 순서를 나타냅니다. 기술적으로는 유효하나 보조 기술에 의존하는 사용자에게 불편한 환경이 생기는 경우가 많습니다. [`tabindex` 속성에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/tabindex)"
475
466
  },
476
467
  "core/audits/accessibility/tabindex.js | failureTitle": {
477
468
  "message": "일부 요소의 `[tabindex]` 값이 0보다 큼"
@@ -480,7 +471,7 @@
480
471
  "message": "`[tabindex]` 값이 0보다 큰 요소가 없음"
481
472
  },
482
473
  "core/audits/accessibility/table-duplicate-name.js | description": {
483
- "message": "summary 속성은 표 구조를 설명해야 하며 `<caption>`에는 화면 제목이 있어야 합니다. 표 마크업이 정확하면 스크린 리더 사용자에게 도움이 됩니다. [summary 속성 및 caption 요소에 대해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/table-duplicate-name)"
474
+ "message": "summary 속성은 표 구조를 설명해야 하며 `<caption>`에는 화면 제목이 있어야 합니다. 표 마크업이 정확하면 스크린 리더 사용자에게 도움이 됩니다. [summary 속성 및 caption 요소에 대해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/table-duplicate-name)"
484
475
  },
485
476
  "core/audits/accessibility/table-duplicate-name.js | failureTitle": {
486
477
  "message": "표의 summary 속성 및 `<caption>.`에 동일한 콘텐츠가 있습니다"
@@ -489,7 +480,7 @@
489
480
  "message": "표의 summary 속성 및 `<caption>`에 다른 콘텐츠가 있습니다"
490
481
  },
491
482
  "core/audits/accessibility/table-fake-caption.js | description": {
492
- "message": "스크린 리더에는 표를 좀 더 쉽게 탐색하는 기능이 있습니다. 표에서 `[colspan]` 속성이 있는 셀 대신 실제 자막 요소를 사용하면 스크린 리더 사용자 환경을 개선할 수 있습니다. [자막에 관해 자세히 알아보세요](https://dequeuniversity.com/rules/axe/4.8/table-fake-caption)."
483
+ "message": "스크린 리더에는 표를 좀 더 쉽게 탐색하는 기능이 있습니다. 표에서 `[colspan]` 속성이 있는 셀 대신 실제 자막 요소를 사용하면 스크린 리더 사용자 환경을 개선할 수 있습니다. [자막에 관해 자세히 알아보세요](https://dequeuniversity.com/rules/axe/4.9/table-fake-caption)."
493
484
  },
494
485
  "core/audits/accessibility/table-fake-caption.js | failureTitle": {
495
486
  "message": "표에서 자막을 나타내기 위해 `[colspan]` 속성이 있는 셀 대신 `<caption>`을(를) 사용하지 않습니다"
@@ -498,7 +489,7 @@
498
489
  "message": "표에서 자막을 나타내기 위해 `[colspan]` 속성이 있는 셀 대신 `<caption>`을(를) 사용합니다."
499
490
  },
500
491
  "core/audits/accessibility/target-size.js | description": {
501
- "message": "터치 영역의 크기와 간격이 충분한 경우 타겟을 활성화하는 컨트롤의 크기가 작아 조작에 어려움을 겪는 사용자에게 도움이 됩니다. [터치 영역에 대해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/target-size)"
492
+ "message": "터치 영역의 크기와 간격이 충분한 경우 타겟을 활성화하는 컨트롤의 크기가 작아 조작에 어려움을 겪는 사용자에게 도움이 됩니다. [터치 영역에 대해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/target-size)"
502
493
  },
503
494
  "core/audits/accessibility/target-size.js | failureTitle": {
504
495
  "message": "터치 영역의 크기 또는 간격이 충분하지 않습니다."
@@ -507,7 +498,7 @@
507
498
  "message": "터치 영역의 크기와 간격이 충분합니다."
508
499
  },
509
500
  "core/audits/accessibility/td-has-header.js | description": {
510
- "message": "스크린 리더에는 표를 좀 더 쉽게 탐색하는 기능이 있습니다. 큰 표(너비와 높이의 셀이 3개 이상)의 `<td>` 요소에 표 헤더가 연결되어 있는지 확인하면 스크린 리더 사용자의 환경을 개선할 수 있습니다. [표 헤더에 관해 자세히 알아보세요](https://dequeuniversity.com/rules/axe/4.8/td-has-header)."
501
+ "message": "스크린 리더에는 표를 좀 더 쉽게 탐색하는 기능이 있습니다. 큰 표(너비와 높이의 셀이 3개 이상)의 `<td>` 요소에 표 헤더가 연결되어 있는지 확인하면 스크린 리더 사용자의 환경을 개선할 수 있습니다. [표 헤더에 관해 자세히 알아보세요](https://dequeuniversity.com/rules/axe/4.9/td-has-header)."
511
502
  },
512
503
  "core/audits/accessibility/td-has-header.js | failureTitle": {
513
504
  "message": "큰 `<table>`의 `<td>` 요소에는 표 헤더가 없습니다."
@@ -516,7 +507,7 @@
516
507
  "message": "큰 `<table>`의 `<td>` 요소에는 하나 이상의 표 헤더가 있습니다."
517
508
  },
518
509
  "core/audits/accessibility/td-headers-attr.js | description": {
519
- "message": "스크린 리더에는 표를 좀 더 쉽게 탐색하는 기능이 있습니다. `[headers]` 속성을 사용하는 `<td>` 셀이 동일한 표에 있는 다른 셀만 참조하게 하면 스크린 리더 사용자 환경을 개선할 수 있습니다. [`headers` 속성에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/td-headers-attr)"
510
+ "message": "스크린 리더에는 표를 좀 더 쉽게 탐색하는 기능이 있습니다. `[headers]` 속성을 사용하는 `<td>` 셀이 동일한 표에 있는 다른 셀만 참조하게 하면 스크린 리더 사용자 환경을 개선할 수 있습니다. [`headers` 속성에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/td-headers-attr)"
520
511
  },
521
512
  "core/audits/accessibility/td-headers-attr.js | failureTitle": {
522
513
  "message": "`[headers]` 속성을 사용하는 `<table>` 요소의 셀은 동일한 테이블 내에 없는 요소 `id`만 참조합니다."
@@ -525,7 +516,7 @@
525
516
  "message": "`[headers]` 속성을 사용하는 `<table>` 요소의 셀이 동일한 테이블 내의 테이블 셀을 참조합니다."
526
517
  },
527
518
  "core/audits/accessibility/th-has-data-cells.js | description": {
528
- "message": "스크린 리더에는 표를 좀 더 쉽게 탐색하는 기능이 있습니다. 표 헤더에서 항상 셀 세트 일부를 참조하게 하면 스크린 리더 사용자 환경이 개선될 수 있습니다. [표 헤더에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/th-has-data-cells)"
519
+ "message": "스크린 리더에는 표를 좀 더 쉽게 탐색하는 기능이 있습니다. 표 헤더에서 항상 셀 세트 일부를 참조하게 하면 스크린 리더 사용자 환경이 개선될 수 있습니다. [표 헤더에 관해 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/th-has-data-cells)"
529
520
  },
530
521
  "core/audits/accessibility/th-has-data-cells.js | failureTitle": {
531
522
  "message": "`<th>` 요소와 `[role=\"columnheader\"/\"rowheader\"]` 지원 요소가 설명하는 데이터 셀이 해당 요소에 포함되지 않음"
@@ -534,7 +525,7 @@
534
525
  "message": "`<th>` 요소와 `[role=\"columnheader\"/\"rowheader\"]` 지원 요소가 설명하는 데이터 셀이 해당 요소에 포함됨"
535
526
  },
536
527
  "core/audits/accessibility/valid-lang.js | description": {
537
- "message": "요소에 유효한 [BCP 47 언어](https://www.w3.org/International/questions/qa-choosing-language-tags#question)를 지정하면 스크린 리더에서 텍스트를 올바르게 읽는 데 도움이 됩니다. [`lang` 속성을 사용하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.8/valid-lang)"
528
+ "message": "요소에 유효한 [BCP 47 언어](https://www.w3.org/International/questions/qa-choosing-language-tags#question)를 지정하면 스크린 리더에서 텍스트를 올바르게 읽는 데 도움이 됩니다. [`lang` 속성을 사용하는 방법 알아보기](https://dequeuniversity.com/rules/axe/4.9/valid-lang)"
538
529
  },
539
530
  "core/audits/accessibility/valid-lang.js | failureTitle": {
540
531
  "message": "`[lang]` 속성에 유효한 값이 없음"
@@ -543,7 +534,7 @@
543
534
  "message": "`[lang]` 속성에 유효한 값이 있음"
544
535
  },
545
536
  "core/audits/accessibility/video-caption.js | description": {
546
- "message": "동영상에 자막이 제공되면 청각장애인이나 난청이 있는 사용자가 동영상의 정보에 더 쉽게 접근할 수 있습니다. [동영상 자막 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.8/video-caption)"
537
+ "message": "동영상에 자막이 제공되면 청각장애인이나 난청이 있는 사용자가 동영상의 정보에 더 쉽게 접근할 수 있습니다. [동영상 자막 자세히 알아보기](https://dequeuniversity.com/rules/axe/4.9/video-caption)"
547
538
  },
548
539
  "core/audits/accessibility/video-caption.js | failureTitle": {
549
540
  "message": "`<video>` 요소에 `[kind=\"captions\"]` 지원 `<track>` 요소가 포함되지 않음"
@@ -743,18 +734,6 @@
743
734
  "core/audits/byte-efficiency/uses-text-compression.js | title": {
744
735
  "message": "텍스트 압축 사용"
745
736
  },
746
- "core/audits/content-width.js | description": {
747
- "message": "앱 콘텐츠의 너비가 표시 영역의 너비와 일치하지 않을 경우 앱이 휴대기기 화면에 최적화되지 않을 수 있습니다. [표시 영역에 맞게 콘텐츠 크기를 조절하는 방법 알아보기](https://developer.chrome.com/docs/lighthouse/pwa/content-width/)"
748
- },
749
- "core/audits/content-width.js | explanation": {
750
- "message": "{innerWidth}px의 표시 영역 크기는 {outerWidth}px인 창 크기와 일치하지 않습니다."
751
- },
752
- "core/audits/content-width.js | failureTitle": {
753
- "message": "콘텐츠의 크기가 표시 영역에 알맞지 않음"
754
- },
755
- "core/audits/content-width.js | title": {
756
- "message": "콘텐츠의 크기가 표시 영역에 알맞음"
757
- },
758
737
  "core/audits/critical-request-chains.js | description": {
759
738
  "message": "다음의 크리티컬 요청 체인은 로드 시 우선순위가 높은 리소스를 보여줍니다. 체인의 길이를 줄이고, 리소스의 다운로드 크기를 줄이거나 불필요한 리소스의 다운로드를 지연하여 페이지 로드 속도를 높이는 것이 좋습니다. [크리티컬 요청 체이닝을 방지하는 방법 알아보기](https://developer.chrome.com/docs/lighthouse/performance/critical-request-chains/)"
760
739
  },
@@ -1004,102 +983,6 @@
1004
983
  "core/audits/image-size-responsive.js | title": {
1005
984
  "message": "이미지가 적절한 해상도로 제공됨"
1006
985
  },
1007
- "core/audits/installable-manifest.js | already-installed": {
1008
- "message": "앱이 이미 설치되어 있습니다."
1009
- },
1010
- "core/audits/installable-manifest.js | cannot-download-icon": {
1011
- "message": "매니페스트에서 필요한 아이콘을 다운로드할 수 없음"
1012
- },
1013
- "core/audits/installable-manifest.js | columnValue": {
1014
- "message": "실패 이유"
1015
- },
1016
- "core/audits/installable-manifest.js | description": {
1017
- "message": "서비스 워커는 앱에서 오프라인, 홈 화면에 추가, 푸시 알림 등 다양한 프로그레시브 웹 앱 기능을 사용할 수 있도록 하는 기술입니다. 적절한 서비스 워커와 매니페스트를 구현할 경우 브라우저는 사용자에게 홈 화면에 앱을 추가하라는 메시지를 사전에 표시할 수 있으며 이렇게 하면 참여도가 높아질 수 있습니다. [매니페스트 설치 가능 요건에 관해 자세히 알아보기](https://developer.chrome.com/docs/lighthouse/pwa/installable-manifest/)"
1018
- },
1019
- "core/audits/installable-manifest.js | displayValue": {
1020
- "message": "{itemCount,plural, =1{이유: 1개}other{이유: #개}}"
1021
- },
1022
- "core/audits/installable-manifest.js | failureTitle": {
1023
- "message": "웹 앱 매니페스트 또는 서비스 워커가 설치 가능 요건을 충족하지 않음"
1024
- },
1025
- "core/audits/installable-manifest.js | ids-do-not-match": {
1026
- "message": "Play 스토어 앱 URL 및 Play 스토어 ID가 일치하지 않습니다."
1027
- },
1028
- "core/audits/installable-manifest.js | in-incognito": {
1029
- "message": "페이지가 시크릿 창에 로드되었습니다."
1030
- },
1031
- "core/audits/installable-manifest.js | manifest-display-not-supported": {
1032
- "message": "매니페스트 `display` 속성은 `standalone`, `fullscreen`, `minimal-ui` 중 하나여야 합니다."
1033
- },
1034
- "core/audits/installable-manifest.js | manifest-display-override-not-supported": {
1035
- "message": "매니페스트에 'display_override' 입력란이 포함되어 있으며 첫 번째 지원되는 디스플레이 모드는 'standalone', 'fullscreen', 'minimal-ui' 중 하나여야 합니다."
1036
- },
1037
- "core/audits/installable-manifest.js | manifest-empty": {
1038
- "message": "매니페스트를 가져올 수 없거나 비어있거나 파싱할 수 없습니다."
1039
- },
1040
- "core/audits/installable-manifest.js | manifest-location-changed": {
1041
- "message": "매니페스트를 가져오는 중에 매니페스트 URL이 변경되었습니다."
1042
- },
1043
- "core/audits/installable-manifest.js | manifest-missing-name-or-short-name": {
1044
- "message": "매니페스트에는 `name` 또는 `short_name` 필드가 포함되지 않습니다."
1045
- },
1046
- "core/audits/installable-manifest.js | manifest-missing-suitable-icon": {
1047
- "message": "매니페스트에 적절한 아이콘이 포함되어 있지 않습니다. 아이콘은 최소 {value0}px 크기의 PNG, SVG 또는 WebP 형식으로 sizes 속성이 설정되어야 하며 purpose 속성이 설정된 경우 'any'를 포함해야 합니다."
1048
- },
1049
- "core/audits/installable-manifest.js | no-acceptable-icon": {
1050
- "message": "제공된 아이콘 중 최소 {value0}px인 PNG, SVG, WebP 형식의 정사각형이며, purpose 속성이 설정되어 있지 않거나 'any'로 설정되어 있는 아이콘이 없습니다."
1051
- },
1052
- "core/audits/installable-manifest.js | no-icon-available": {
1053
- "message": "다운로드된 아이콘이 비어 있거나 손상됨"
1054
- },
1055
- "core/audits/installable-manifest.js | no-id-specified": {
1056
- "message": "제공된 Play 스토어 ID 없음"
1057
- },
1058
- "core/audits/installable-manifest.js | no-manifest": {
1059
- "message": "페이지에 매니페스트 <link> URL이 없습니다."
1060
- },
1061
- "core/audits/installable-manifest.js | no-url-for-service-worker": {
1062
- "message": "매니페스트에 'start_url' 필드가 없는 서비스 워크를 확인할 수 없습니다."
1063
- },
1064
- "core/audits/installable-manifest.js | noErrorId": {
1065
- "message": "설치 가능 오류 ID ‘{errorId}’을(를) 인식할 수 없습니다."
1066
- },
1067
- "core/audits/installable-manifest.js | not-from-secure-origin": {
1068
- "message": "페이지가 보안이 설정된 출처에서 제공되지 않았습니다."
1069
- },
1070
- "core/audits/installable-manifest.js | not-in-main-frame": {
1071
- "message": "메인 프레임에 페이지가 로드되지 않았습니다."
1072
- },
1073
- "core/audits/installable-manifest.js | not-offline-capable": {
1074
- "message": "페이지가 오프라인에서 작동하지 않습니다."
1075
- },
1076
- "core/audits/installable-manifest.js | pipeline-restarted": {
1077
- "message": "PWA가 제거되었으며 설치 가능 여부 확인이 재설정되었습니다."
1078
- },
1079
- "core/audits/installable-manifest.js | platform-not-supported-on-android": {
1080
- "message": "지정된 애플리케이션 플랫폼이 Android에서 지원되지 않습니다."
1081
- },
1082
- "core/audits/installable-manifest.js | prefer-related-applications": {
1083
- "message": "매니페스트에서 다음과 같이 지정합니다. prefer_related_applications: true"
1084
- },
1085
- "core/audits/installable-manifest.js | prefer-related-applications-only-beta-stable": {
1086
- "message": "prefer_related_applications는 Android의 Chrome 베타 및 공개 버전 채널에서만 지원됩니다."
1087
- },
1088
- "core/audits/installable-manifest.js | protocol-timeout": {
1089
- "message": "Lighthouse에서 페이지 설치 가능 여부를 판단할 수 없습니다. 최신 버전의 Chrome을 사용해 시도해 보세요."
1090
- },
1091
- "core/audits/installable-manifest.js | start-url-not-valid": {
1092
- "message": "잘못된 매니페스트 시작 URL입니다."
1093
- },
1094
- "core/audits/installable-manifest.js | title": {
1095
- "message": "웹 앱 매니페스트 및 서비스 워커가 설치 가능 요건을 충족함"
1096
- },
1097
- "core/audits/installable-manifest.js | url-not-supported-for-webapk": {
1098
- "message": "매니페스트의 URL에 사용자 이름, 비밀번호 또는 포트가 포함되어 있습니다."
1099
- },
1100
- "core/audits/installable-manifest.js | warn-not-offline-capable": {
1101
- "message": "페이지가 오프라인에서 작동하지 않습니다. Chrome 93 안정화 버전이 2021년 8월 출시된 이후에는 이 페이지가 설치 가능한 것으로 간주되지 않을 것입니다."
1102
- },
1103
986
  "core/audits/is-on-https.js | allowed": {
1104
987
  "message": "허용됨"
1105
988
  },
@@ -1157,15 +1040,6 @@
1157
1040
  "core/audits/largest-contentful-paint-element.js | title": {
1158
1041
  "message": "콘텐츠가 포함된 최대 페인트 요소"
1159
1042
  },
1160
- "core/audits/layout-shift-elements.js | columnContribution": {
1161
- "message": "레이아웃 변경 영향"
1162
- },
1163
- "core/audits/layout-shift-elements.js | description": {
1164
- "message": "이러한 DOM 요소는 레이아웃 변경의 영향을 가장 많이 받았습니다. [윈도잉](https://web.dev/articles/cls#what_is_cls)으로 인해 일부 레이아웃 변경은 CLS 측정항목 값에 포함되지 않을 수 있습니다. [CLS 개선 방법 알아보기](https://web.dev/articles/optimize-cls)"
1165
- },
1166
- "core/audits/layout-shift-elements.js | title": {
1167
- "message": "대규모 레이아웃 변경 피하기"
1168
- },
1169
1043
  "core/audits/layout-shifts.js | columnScore": {
1170
1044
  "message": "레이아웃 변경 점수"
1171
1045
  },
@@ -1220,33 +1094,6 @@
1220
1094
  "core/audits/mainthread-work-breakdown.js | title": {
1221
1095
  "message": "기본 스레드 작업 최소화하기"
1222
1096
  },
1223
- "core/audits/manual/pwa-cross-browser.js | description": {
1224
- "message": "최대한 많은 사용자가 이용할 수 있으려면 사이트가 모든 주요 브라우저에서 작동해야 합니다. [교차 브라우저 호환성에 관해 알아보기](https://developer.chrome.com/docs/lighthouse/pwa/pwa-cross-browser/)"
1225
- },
1226
- "core/audits/manual/pwa-cross-browser.js | title": {
1227
- "message": "사이트가 다양한 브라우저에서 작동함"
1228
- },
1229
- "core/audits/manual/pwa-each-page-has-url.js | description": {
1230
- "message": "페이지를 소셜 미디어에 공유하려면 개별 페이지가 URL을 통해 딥 링크로 연결될 수 있어야 하며 페이지별로 URL이 달라야 합니다. [딥 링크 제공에 관해 자세히 알아보기](https://developer.chrome.com/docs/lighthouse/pwa/pwa-each-page-has-url/)"
1231
- },
1232
- "core/audits/manual/pwa-each-page-has-url.js | title": {
1233
- "message": "페이지마다 URL이 있음"
1234
- },
1235
- "core/audits/manual/pwa-page-transitions.js | description": {
1236
- "message": "느린 네트워크에서도 탭할 때 전환이 빠르게 느껴져야 합니다. 이 전환 경험이야말로 사용자의 성능 인식에 중요한 영향을 미칩니다. [페이지 전환 자세히 알아보기](https://developer.chrome.com/docs/lighthouse/pwa/pwa-page-transitions/)"
1237
- },
1238
- "core/audits/manual/pwa-page-transitions.js | title": {
1239
- "message": "페이지 전환 시 네트워크에서 막히는 느낌이 들지 않음"
1240
- },
1241
- "core/audits/maskable-icon.js | description": {
1242
- "message": "마스크 가능한 아이콘은 앱을 기기에 설치할 때 레터박스 없이 이미지가 도형 전체를 채울 수 있게 합니다. [마스크 가능한 매니페스트 아이콘에 관해 자세히 알아보기](https://developer.chrome.com/docs/lighthouse/pwa/maskable-icon-audit/)"
1243
- },
1244
- "core/audits/maskable-icon.js | failureTitle": {
1245
- "message": "매니페스트에 마스크 가능한 아이콘이 없음"
1246
- },
1247
- "core/audits/maskable-icon.js | title": {
1248
- "message": "매니페스트에 마스크 가능한 아이콘이 있음"
1249
- },
1250
1097
  "core/audits/metrics/cumulative-layout-shift.js | description": {
1251
1098
  "message": "레이아웃 변경 횟수는 표시 영역 안에 보이는 요소의 이동을 측정합니다. [레이아웃 변경 횟수 측정항목에 관해 자세히 알아보기](https://web.dev/articles/cls)"
1252
1099
  },
@@ -1286,15 +1133,6 @@
1286
1133
  "core/audits/network-server-latency.js | title": {
1287
1134
  "message": "서버 백엔드 지연 시간"
1288
1135
  },
1289
- "core/audits/no-unload-listeners.js | description": {
1290
- "message": "`unload` 이벤트는 안정적으로 실행되지 않으며 이 이벤트를 수신 대기하면 '뒤로-앞으로 캐시'와 같은 브라우저 최적화 기능을 사용하지 못할 수 있습니다. `pagehide` 또는 `visibilitychange` 이벤트를 대신 사용하세요. [이벤트 리스너 로드 취소에 관해 자세히 알아보기](https://web.dev/articles/bfcache#never_use_the_unload_event)"
1291
- },
1292
- "core/audits/no-unload-listeners.js | failureTitle": {
1293
- "message": "`unload` 리스너 등록"
1294
- },
1295
- "core/audits/no-unload-listeners.js | title": {
1296
- "message": "`unload` 이벤트 리스너를 사용하지 않음"
1297
- },
1298
1136
  "core/audits/non-composited-animations.js | description": {
1299
1137
  "message": "합성 작업을 거치지 않은 애니메이션은 품질이 나쁘고 CLS를 높일 수 있습니다. [합성 작업을 거치지 않은 애니메이션을 방지하는 방법 알아보기](https://developer.chrome.com/docs/lighthouse/performance/non-composited-animations/)"
1300
1138
  },
@@ -1322,15 +1160,6 @@
1322
1160
  "core/audits/non-composited-animations.js | unsupportedTimingParameters": {
1323
1161
  "message": "지원되지 않는 타이밍 매개변수가 효과에 포함됨"
1324
1162
  },
1325
- "core/audits/performance-budget.js | description": {
1326
- "message": "네트워크 요청의 양과 크기는 제공된 성능 예산에 따라 설정된 목표치 아래로 유지하세요. [성능 예산에 관해 자세히 알아보기](https://developers.google.com/web/tools/lighthouse/audits/budgets)"
1327
- },
1328
- "core/audits/performance-budget.js | requestCountOverBudget": {
1329
- "message": "{count,plural, =1{요청 1건}other{요청 #건}}"
1330
- },
1331
- "core/audits/performance-budget.js | title": {
1332
- "message": "성능 예산"
1333
- },
1334
1163
  "core/audits/preload-fonts.js | description": {
1335
1164
  "message": "신규 방문자가 사용할 수 있도록 `optional` 글꼴을 미리 로드하세요 [글꼴 미리 로드에 관해 자세히 알아보기](https://web.dev/articles/preload-optional-fonts)"
1336
1165
  },
@@ -1481,15 +1310,6 @@
1481
1310
  "core/audits/seo/meta-description.js | title": {
1482
1311
  "message": "문서에 메타 설명이 있음"
1483
1312
  },
1484
- "core/audits/seo/plugins.js | description": {
1485
- "message": "검색엔진은 플러그인 콘텐츠의 색인을 생성할 수 없고 플러그인을 제한하거나 지원하지 않는 기기도 많습니다. [플러그인 방지 자세히 알아보기](https://developer.chrome.com/docs/lighthouse/seo/plugins/)"
1486
- },
1487
- "core/audits/seo/plugins.js | failureTitle": {
1488
- "message": "문서가 플러그인을 사용함"
1489
- },
1490
- "core/audits/seo/plugins.js | title": {
1491
- "message": "문서에서 플러그인을 사용할 수 없음"
1492
- },
1493
1313
  "core/audits/seo/robots-txt.js | description": {
1494
1314
  "message": "robots.txt 파일 형식이 잘못된 경우 크롤러가 웹사이트를 어떻게 크롤링하고 색인을 생성해야 할지 파악하지 못할 수 있습니다. [robots.txt에 관해 자세히 알아보기](https://developer.chrome.com/docs/lighthouse/seo/invalid-robots-txt/)"
1495
1315
  },
@@ -1508,27 +1328,6 @@
1508
1328
  "core/audits/seo/robots-txt.js | title": {
1509
1329
  "message": "robots.txt가 유효함"
1510
1330
  },
1511
- "core/audits/seo/tap-targets.js | description": {
1512
- "message": "버튼이나 링크 같은 상호작용 요소가 충분히 크거나(48x48px), 주변에 충분한 공간이 있고 다른 요소와 겹치지 않아 쉽게 탭할 수 있어야 합니다. [탭 타겟에 관해 자세히 알아세요](https://developer.chrome.com/docs/lighthouse/seo/tap-targets/)."
1513
- },
1514
- "core/audits/seo/tap-targets.js | displayValue": {
1515
- "message": "{decimalProportion, number, percent} 탭 타겟 크기가 적절함"
1516
- },
1517
- "core/audits/seo/tap-targets.js | explanationViewportMetaNotOptimized": {
1518
- "message": "모바일 화면에 최적화된 표시 영역 메타 태그가 없어서 탭 타겟이 너무 작음"
1519
- },
1520
- "core/audits/seo/tap-targets.js | failureTitle": {
1521
- "message": "탭 타겟 크기가 적절하지 않음"
1522
- },
1523
- "core/audits/seo/tap-targets.js | overlappingTargetHeader": {
1524
- "message": "타겟이 중복됨"
1525
- },
1526
- "core/audits/seo/tap-targets.js | tapTargetHeader": {
1527
- "message": "탭 타겟"
1528
- },
1529
- "core/audits/seo/tap-targets.js | title": {
1530
- "message": "탭 타겟의 크기가 적절함"
1531
- },
1532
1331
  "core/audits/server-response-time.js | description": {
1533
1332
  "message": "다른 모든 요청이 기본 문서의 영향을 받으므로 기본 문서에 대한 서버 응답 시간을 짧게 유지하세요. [Time to First Byte(첫 바이트까지의 시간) 측정항목에 관해 자세히 알아보기](https://developer.chrome.com/docs/lighthouse/performance/time-to-first-byte/)"
1534
1333
  },
@@ -1541,24 +1340,6 @@
1541
1340
  "core/audits/server-response-time.js | title": {
1542
1341
  "message": "초기 서버 응답 시간 짧음"
1543
1342
  },
1544
- "core/audits/splash-screen.js | description": {
1545
- "message": "테마 스플래시 화면을 사용하면 사용자가 홈 화면에서 앱을 실행했을 때 고품질의 환경을 경험할 수 있습니다. [스플래시 화면에 관해 자세히 알아보기](https://developer.chrome.com/docs/lighthouse/pwa/splash-screen/)"
1546
- },
1547
- "core/audits/splash-screen.js | failureTitle": {
1548
- "message": "맞춤 스플래시 화면에 맞게 구성되지 않음"
1549
- },
1550
- "core/audits/splash-screen.js | title": {
1551
- "message": "맞춤 스플래시 화면에 맞게 구성됨"
1552
- },
1553
- "core/audits/themed-omnibox.js | description": {
1554
- "message": "브라우저 주소 표시줄에는 사이트에 맞는 테마를 설정할 수 있습니다. [주소 표시줄 테마 설정에 관해 자세히 알아보기](https://developer.chrome.com/docs/lighthouse/pwa/themed-omnibox/)"
1555
- },
1556
- "core/audits/themed-omnibox.js | failureTitle": {
1557
- "message": "주소 표시줄의 테마 색상을 설정하지 않음"
1558
- },
1559
- "core/audits/themed-omnibox.js | title": {
1560
- "message": "주소 표시줄의 테마 색상을 설정함"
1561
- },
1562
1343
  "core/audits/third-party-cookies.js | description": {
1563
1344
  "message": "서드 파티 쿠키에 대한 지원은 Chrome 향후 버전에서 삭제될 예정입니다. [서드 파티 쿠키의 단계적 지원 중단에 대해 자세히 알아보기](https://developer.chrome.com/en/docs/privacy-sandbox/third-party-cookie-phase-out/)"
1564
1345
  },
@@ -1613,18 +1394,6 @@
1613
1394
  "core/audits/third-party-summary.js | title": {
1614
1395
  "message": "타사 사용량 최소화"
1615
1396
  },
1616
- "core/audits/timing-budget.js | columnMeasurement": {
1617
- "message": "측정값"
1618
- },
1619
- "core/audits/timing-budget.js | columnTimingMetric": {
1620
- "message": "측정항목"
1621
- },
1622
- "core/audits/timing-budget.js | description": {
1623
- "message": "시기 예산을 설정하면 사이트 실적을 확인하는 데 도움이 됩니다. 성능 기준에 맞는 사이트는 빠르게 로드되고 사용자 입력 이벤트에 빠르게 응답합니다. [성능 예산에 관해 자세히 알아보기](https://developers.google.com/web/tools/lighthouse/audits/budgets)"
1624
- },
1625
- "core/audits/timing-budget.js | title": {
1626
- "message": "시기 예산"
1627
- },
1628
1397
  "core/audits/unsized-images.js | description": {
1629
1398
  "message": "이미지 요소에 명시적인 너비 및 높이를 설정하여 레이아웃 변경 횟수를 줄이고 누적 레이아웃 변경을 개선합니다. [이미지 크기 설정 방법 알아보기](https://web.dev/articles/optimize-cls#images_without_dimensions)"
1630
1399
  },
@@ -1718,8 +1487,8 @@
1718
1487
  "core/audits/work-during-interaction.js | presentationDelay": {
1719
1488
  "message": "표시 지연"
1720
1489
  },
1721
- "core/audits/work-during-interaction.js | processingTime": {
1722
- "message": "처리 시간"
1490
+ "core/audits/work-during-interaction.js | processingDuration": {
1491
+ "message": "처리 기간"
1723
1492
  },
1724
1493
  "core/audits/work-during-interaction.js | title": {
1725
1494
  "message": "주요 상호작용 중 작업 최소화"
@@ -1796,12 +1565,6 @@
1796
1565
  "core/config/default-config.js | bestPracticesUXGroupTitle": {
1797
1566
  "message": "사용자 환경"
1798
1567
  },
1799
- "core/config/default-config.js | budgetsGroupDescription": {
1800
- "message": "성능 예산은 사이트 성능의 표준을 설정합니다."
1801
- },
1802
- "core/config/default-config.js | budgetsGroupTitle": {
1803
- "message": "예산"
1804
- },
1805
1568
  "core/config/default-config.js | diagnosticsGroupDescription": {
1806
1569
  "message": "애플리케이션 성능과 관련된 추가 정보입니다. 이러한 숫자는 성능 점수에 [직접적인 영향](https://developer.chrome.com/docs/lighthouse/performance/performance-scoring/)을 미치지 않습니다."
1807
1570
  },
@@ -1814,12 +1577,6 @@
1814
1577
  "core/config/default-config.js | firstPaintImprovementsGroupTitle": {
1815
1578
  "message": "최초 페인트 개선"
1816
1579
  },
1817
- "core/config/default-config.js | loadOpportunitiesGroupDescription": {
1818
- "message": "이러한 권장사항은 페이지를 더 빠르게 로드하는 데 도움이 될 수 있습니다. 성능 점수에는 [직접적인 영향](https://developer.chrome.com/docs/lighthouse/performance/performance-scoring/)을 미치지 않습니다."
1819
- },
1820
- "core/config/default-config.js | loadOpportunitiesGroupTitle": {
1821
- "message": "추천"
1822
- },
1823
1580
  "core/config/default-config.js | metricGroupTitle": {
1824
1581
  "message": "측정항목"
1825
1582
  },
@@ -1832,21 +1589,6 @@
1832
1589
  "core/config/default-config.js | performanceCategoryTitle": {
1833
1590
  "message": "성능"
1834
1591
  },
1835
- "core/config/default-config.js | pwaCategoryDescription": {
1836
- "message": "프로그레시브 웹 앱의 요소를 확인하는 검사입니다. [좋은 프로그레시브 웹 앱의 특징 알아보기](https://web.dev/articles/pwa-checklist)"
1837
- },
1838
- "core/config/default-config.js | pwaCategoryManualDescription": {
1839
- "message": "이 검사는 기준 [PWA 체크리스트](https://web.dev/articles/pwa-checklist)의 필수 항목이지만 Lighthouse에서 자동으로 확인되지는 않습니다. 점수에 영향을 미치지는 않지만 직접 확인하는 것이 중요합니다."
1840
- },
1841
- "core/config/default-config.js | pwaCategoryTitle": {
1842
- "message": "PWA"
1843
- },
1844
- "core/config/default-config.js | pwaInstallableGroupTitle": {
1845
- "message": "설치 가능"
1846
- },
1847
- "core/config/default-config.js | pwaOptimizedGroupTitle": {
1848
- "message": "PWA 최적화됨"
1849
- },
1850
1592
  "core/config/default-config.js | seoCategoryDescription": {
1851
1593
  "message": "페이지가 기본적인 검색엔진 최적화 권고를 따르는지 확인하는 검사입니다. Lighthouse가 여기에서 고려하지는 않지만 검색 순위에 영향을 줄 수 있는 요소(예: [코어 웹 바이탈](https://web.dev/explore/vitals) 실적)는 이 외에도 많이 있습니다. [Google 검색 Essentials에 관해 자세히 알아보기](https://support.google.com/webmasters/answer/35769)"
1852
1594
  },
@@ -2516,9 +2258,6 @@
2516
2258
  "core/lib/i18n/i18n.js | columnName": {
2517
2259
  "message": "이름"
2518
2260
  },
2519
- "core/lib/i18n/i18n.js | columnOverBudget": {
2520
- "message": "예산 초과"
2521
- },
2522
2261
  "core/lib/i18n/i18n.js | columnRequests": {
2523
2262
  "message": "요청"
2524
2263
  },
@@ -2729,9 +2468,6 @@
2729
2468
  "flow-report/src/i18n/ui-strings.js | categoryPerformance": {
2730
2469
  "message": "성능"
2731
2470
  },
2732
- "flow-report/src/i18n/ui-strings.js | categoryProgressiveWebApp": {
2733
- "message": "프로그레시브 웹 앱"
2734
- },
2735
2471
  "flow-report/src/i18n/ui-strings.js | categorySeo": {
2736
2472
  "message": "검색엔진 최적화"
2737
2473
  },
@@ -3398,9 +3134,6 @@
3398
3134
  "report/renderer/report-utils.js | passedAuditsGroupTitle": {
3399
3135
  "message": "통과한 감사"
3400
3136
  },
3401
- "report/renderer/report-utils.js | pwaRemovalMessage": {
3402
- "message": "Lighthouse는 [Chrome의 업데이트된 설치 가능 기준](https://developer.chrome.com/blog/update-install-criteria)에 따라 향후 버전에서 PWA 카테고리를 지원 중단할 예정입니다. 향후 PWA 테스트에 관해서는 [업데이트된 PWA 문서](https://developer.chrome.com/docs/devtools/progressive-web-apps/)를 참고하세요."
3403
- },
3404
3137
  "report/renderer/report-utils.js | runtimeAnalysisWindow": {
3405
3138
  "message": "초기 페이지 로드"
3406
3139
  },