From 91ace6d33817f24d8026f461c5e138217ba0d4b7 Mon Sep 17 00:00:00 2001 From: Jared Galanis Date: Fri, 23 Aug 2024 19:23:43 -0400 Subject: [PATCH] v5.11.0 --- .../application-considerations.md | 58 ++ guides/v5.10.0/accessibility/components.md | 93 ++ guides/v5.10.0/accessibility/index.md | 16 + .../accessibility/learning-resources.md | 31 + .../page-template-considerations.md | 82 ++ guides/v5.10.0/accessibility/testing.md | 21 + .../v5.10.0/addons-and-dependencies/index.md | 172 ++++ .../managing-dependencies.md | 3 + .../applications-and-instances.md | 3 + .../applications/dependency-injection.md | 289 ++++++ guides/v5.10.0/applications/ember-engines.md | 23 + guides/v5.10.0/applications/index.md | 18 + guides/v5.10.0/applications/initializers.md | 129 +++ guides/v5.10.0/applications/run-loop.md | 246 +++++ guides/v5.10.0/applications/services.md | 3 + guides/v5.10.0/code-editors/index.md | 135 +++ guides/v5.10.0/components/block-content.md | 419 +++++++++ guides/v5.10.0/components/block-params.md | 3 + .../v5.10.0/components/built-in-components.md | 220 +++++ ...component-arguments-and-html-attributes.md | 147 +++ .../components/component-state-and-actions.md | 427 +++++++++ .../v5.10.0/components/conditional-content.md | 231 +++++ .../customizing-a-components-element.md | 3 + .../components/defining-a-component.md | 3 + guides/v5.10.0/components/handling-events.md | 3 + guides/v5.10.0/components/helper-functions.md | 502 ++++++++++ guides/v5.10.0/components/index.md | 227 +++++ .../components/introducing-components.md | 496 ++++++++++ .../components/looping-through-lists.md | 467 ++++++++++ .../passing-properties-to-a-component.md | 3 + .../template-lifecycle-dom-and-modifiers.md | 542 +++++++++++ .../v5.10.0/components/template-tag-format.md | 329 +++++++ .../components/the-component-lifecycle.md | 3 + .../triggering-changes-with-actions.md | 3 + .../wrapping-content-in-a-component.md | 3 + .../configuring-ember/build-targets.md | 14 + .../configuring-ember-cli.md | 14 + .../configuring-ember/configuring-your-app.md | 22 + guides/v5.10.0/configuring-ember/debugging.md | 102 ++ .../disabling-prototype-extensions.md | 108 +++ .../embedding-applications.md | 99 ++ .../configuring-ember/feature-flags.md | 62 ++ .../handling-deprecations.md | 142 +++ guides/v5.10.0/configuring-ember/index.md | 22 + .../configuring-ember/optional-features.md | 67 ++ .../configuring-ember/specifying-url-type.md | 45 + .../contributing/adding-new-features.md | 186 ++++ guides/v5.10.0/contributing/index.md | 48 + guides/v5.10.0/contributing/repositories.md | 71 ++ guides/v5.10.0/controllers/index.md | 3 + .../v5.10.0/ember-inspector/component-tree.md | 51 + guides/v5.10.0/ember-inspector/container.md | 19 + guides/v5.10.0/ember-inspector/data.md | 33 + .../v5.10.0/ember-inspector/deprecations.md | 40 + guides/v5.10.0/ember-inspector/index.md | 7 + guides/v5.10.0/ember-inspector/info.md | 15 + .../v5.10.0/ember-inspector/installation.md | 79 ++ .../ember-inspector/object-inspector.md | 91 ++ guides/v5.10.0/ember-inspector/promises.md | 88 ++ .../ember-inspector/render-performance.md | 20 + guides/v5.10.0/ember-inspector/routes.md | 24 + .../ember-inspector/troubleshooting.md | 67 ++ .../anatomy-of-an-ember-app.md | 130 +++ .../v5.10.0/getting-started/core-concepts.md | 3 + guides/v5.10.0/getting-started/index.md | 73 ++ guides/v5.10.0/getting-started/intro.md | 3 + guides/v5.10.0/getting-started/js-primer.md | 3 + guides/v5.10.0/getting-started/quick-start.md | 521 +++++++++++ .../working-with-html-css-and-javascript.md | 248 +++++ guides/v5.10.0/glossary/index.md | 99 ++ guides/v5.10.0/glossary/web-development.md | 3 + .../in-depth-topics/autotracking-in-depth.md | 406 ++++++++ guides/v5.10.0/in-depth-topics/index.md | 3 + .../in-depth-topics/making-api-requests.md | 74 ++ .../native-classes-in-depth.md | 736 +++++++++++++++ .../in-depth-topics/patterns-for-actions.md | 566 +++++++++++ .../patterns-for-components.md | 250 +++++ .../in-depth-topics/rendering-values.md | 91 ++ guides/v5.10.0/index.md | 28 + .../creating-updating-and-deleting-records.md | 145 +++ guides/v5.10.0/models/customizing-adapters.md | 262 ++++++ .../v5.10.0/models/customizing-serializers.md | 788 ++++++++++++++++ guides/v5.10.0/models/defining-models.md | 188 ++++ guides/v5.10.0/models/finding-records.md | 126 +++ guides/v5.10.0/models/handling-metadata.md | 88 ++ guides/v5.10.0/models/index.md | 374 ++++++++ .../models/pushing-records-into-the-store.md | 163 ++++ guides/v5.10.0/models/relationships.md | 509 ++++++++++ guides/v5.10.0/object-model/bindings.md | 3 + .../object-model/classes-and-instances.md | 3 + .../computed-properties-and-aggregate-data.md | 3 + .../object-model/computed-properties.md | 3 + guides/v5.10.0/object-model/enumerables.md | 3 + guides/v5.10.0/object-model/index.md | 3 + guides/v5.10.0/object-model/observers.md | 3 + .../reopening-classes-and-instances.md | 3 + guides/v5.10.0/pages.yml | 373 ++++++++ .../v5.10.0/reference/accessibility-guide.md | 3 + guides/v5.10.0/reference/index.md | 3 + .../reference/syntax-conversion-guide.md | 3 + .../v5.10.0/routing/asynchronous-routing.md | 172 ++++ guides/v5.10.0/routing/controllers.md | 107 +++ .../v5.10.0/routing/defining-your-routes.md | 368 ++++++++ guides/v5.10.0/routing/index.md | 21 + .../v5.10.0/routing/linking-between-routes.md | 221 +++++ .../routing/loading-and-error-substates.md | 279 ++++++ .../preventing-and-retrying-transitions.md | 116 +++ guides/v5.10.0/routing/query-params.md | 361 ++++++++ guides/v5.10.0/routing/redirection.md | 137 +++ .../v5.10.0/routing/rendering-a-template.md | 20 + .../routing/specifying-a-routes-model.md | 334 +++++++ guides/v5.10.0/services/index.md | 142 +++ guides/v5.10.0/templates/actions.md | 3 + .../templates/binding-element-attributes.md | 3 + guides/v5.10.0/templates/built-in-helpers.md | 3 + guides/v5.10.0/templates/conditionals.md | 3 + .../v5.10.0/templates/development-helpers.md | 3 + .../templates/displaying-a-list-of-items.md | 3 + .../displaying-the-keys-in-an-object.md | 3 + guides/v5.10.0/templates/handlebars-basics.md | 3 + guides/v5.10.0/templates/index.md | 3 + guides/v5.10.0/templates/input-helpers.md | 3 + guides/v5.10.0/templates/links.md | 3 + guides/v5.10.0/templates/writing-helpers.md | 3 + guides/v5.10.0/testing/acceptance.md | 3 + guides/v5.10.0/testing/index.md | 72 ++ guides/v5.10.0/testing/test-types.md | 226 +++++ guides/v5.10.0/testing/testing-application.md | 156 ++++ guides/v5.10.0/testing/testing-components.md | 539 +++++++++++ guides/v5.10.0/testing/testing-controllers.md | 90 ++ guides/v5.10.0/testing/testing-helpers.md | 100 ++ guides/v5.10.0/testing/testing-models.md | 113 +++ guides/v5.10.0/testing/testing-routes.md | 90 ++ guides/v5.10.0/testing/testing-tools.md | 171 ++++ guides/v5.10.0/testing/unit-testing-basics.md | 247 +++++ guides/v5.10.0/tutorial/acceptance-test.md | 5 + .../tutorial/autocomplete-component.md | 5 + guides/v5.10.0/tutorial/deploying.md | 5 + guides/v5.10.0/tutorial/ember-cli.md | 5 + guides/v5.10.0/tutorial/ember-data.md | 5 + guides/v5.10.0/tutorial/hbs-helper.md | 5 + guides/v5.10.0/tutorial/index.md | 5 + guides/v5.10.0/tutorial/installing-addons.md | 5 + guides/v5.10.0/tutorial/model-hook.md | 5 + .../tutorial/part-1/automated-testing.md | 190 ++++ .../v5.10.0/tutorial/part-1/building-pages.md | 192 ++++ .../tutorial/part-1/component-basics.md | 413 +++++++++ guides/v5.10.0/tutorial/part-1/index.md | 22 + .../tutorial/part-1/interactive-components.md | 312 +++++++ .../tutorial/part-1/more-about-components.md | 256 +++++ guides/v5.10.0/tutorial/part-1/orientation.md | 318 +++++++ guides/v5.10.0/tutorial/part-1/recap.md | 85 ++ .../tutorial/part-1/reusable-components.md | 604 ++++++++++++ .../tutorial/part-1/working-with-data.md | 436 +++++++++ guides/v5.10.0/tutorial/part-2/ember-data.md | 415 +++++++++ guides/v5.10.0/tutorial/part-2/index.md | 17 + .../tutorial/part-2/provider-components.md | 463 +++++++++ guides/v5.10.0/tutorial/part-2/recap.md | 41 + .../v5.10.0/tutorial/part-2/route-params.md | 485 ++++++++++ .../tutorial/part-2/service-injection.md | 555 +++++++++++ .../v5.10.0/tutorial/routes-and-templates.md | 5 + guides/v5.10.0/tutorial/service.md | 5 + guides/v5.10.0/tutorial/simple-component.md | 5 + guides/v5.10.0/tutorial/subroutes.md | 5 + .../typescript/additional-resources/faq.md | 89 ++ .../additional-resources/gotchas.md | 169 ++++ .../typescript/additional-resources/index.md | 18 + .../typescript/additional-resources/legacy.md | 205 ++++ .../application-development/addons.md | 174 ++++ .../application-development/configuration.md | 75 ++ .../converting-an-app.md | 105 +++ .../application-development/index.md | 15 + .../application-development/testing.md | 303 ++++++ .../typescript/core-concepts/ember-data.md | 276 ++++++ .../v5.10.0/typescript/core-concepts/index.md | 11 + .../typescript/core-concepts/invokables.md | 733 +++++++++++++++ .../typescript/core-concepts/routing.md | 132 +++ .../typescript/core-concepts/services.md | 115 +++ guides/v5.10.0/typescript/getting-started.md | 77 ++ guides/v5.10.0/typescript/index.md | 43 + .../current-edition/action-on-and-fn.md | 235 +++++ .../upgrading/current-edition/cheat-sheet.md | 10 + .../current-edition/glimmer-components.md | 875 ++++++++++++++++++ .../upgrading/current-edition/index.md | 121 +++ .../current-edition/native-classes.md | 816 ++++++++++++++++ .../upgrading/current-edition/templates.md | 264 ++++++ .../current-edition/tracked-properties.md | 407 ++++++++ guides/v5.10.0/upgrading/index.md | 39 + guides/versions.yml | 3 +- 189 files changed, 27477 insertions(+), 1 deletion(-) create mode 100644 guides/v5.10.0/accessibility/application-considerations.md create mode 100644 guides/v5.10.0/accessibility/components.md create mode 100644 guides/v5.10.0/accessibility/index.md create mode 100644 guides/v5.10.0/accessibility/learning-resources.md create mode 100644 guides/v5.10.0/accessibility/page-template-considerations.md create mode 100644 guides/v5.10.0/accessibility/testing.md create mode 100644 guides/v5.10.0/addons-and-dependencies/index.md create mode 100644 guides/v5.10.0/addons-and-dependencies/managing-dependencies.md create mode 100644 guides/v5.10.0/applications/applications-and-instances.md create mode 100644 guides/v5.10.0/applications/dependency-injection.md create mode 100644 guides/v5.10.0/applications/ember-engines.md create mode 100644 guides/v5.10.0/applications/index.md create mode 100644 guides/v5.10.0/applications/initializers.md create mode 100644 guides/v5.10.0/applications/run-loop.md create mode 100644 guides/v5.10.0/applications/services.md create mode 100644 guides/v5.10.0/code-editors/index.md create mode 100644 guides/v5.10.0/components/block-content.md create mode 100644 guides/v5.10.0/components/block-params.md create mode 100644 guides/v5.10.0/components/built-in-components.md create mode 100644 guides/v5.10.0/components/component-arguments-and-html-attributes.md create mode 100644 guides/v5.10.0/components/component-state-and-actions.md create mode 100644 guides/v5.10.0/components/conditional-content.md create mode 100644 guides/v5.10.0/components/customizing-a-components-element.md create mode 100644 guides/v5.10.0/components/defining-a-component.md create mode 100644 guides/v5.10.0/components/handling-events.md create mode 100644 guides/v5.10.0/components/helper-functions.md create mode 100644 guides/v5.10.0/components/index.md create mode 100644 guides/v5.10.0/components/introducing-components.md create mode 100644 guides/v5.10.0/components/looping-through-lists.md create mode 100644 guides/v5.10.0/components/passing-properties-to-a-component.md create mode 100644 guides/v5.10.0/components/template-lifecycle-dom-and-modifiers.md create mode 100644 guides/v5.10.0/components/template-tag-format.md create mode 100644 guides/v5.10.0/components/the-component-lifecycle.md create mode 100644 guides/v5.10.0/components/triggering-changes-with-actions.md create mode 100644 guides/v5.10.0/components/wrapping-content-in-a-component.md create mode 100644 guides/v5.10.0/configuring-ember/build-targets.md create mode 100644 guides/v5.10.0/configuring-ember/configuring-ember-cli.md create mode 100644 guides/v5.10.0/configuring-ember/configuring-your-app.md create mode 100644 guides/v5.10.0/configuring-ember/debugging.md create mode 100644 guides/v5.10.0/configuring-ember/disabling-prototype-extensions.md create mode 100644 guides/v5.10.0/configuring-ember/embedding-applications.md create mode 100644 guides/v5.10.0/configuring-ember/feature-flags.md create mode 100644 guides/v5.10.0/configuring-ember/handling-deprecations.md create mode 100644 guides/v5.10.0/configuring-ember/index.md create mode 100644 guides/v5.10.0/configuring-ember/optional-features.md create mode 100644 guides/v5.10.0/configuring-ember/specifying-url-type.md create mode 100644 guides/v5.10.0/contributing/adding-new-features.md create mode 100644 guides/v5.10.0/contributing/index.md create mode 100644 guides/v5.10.0/contributing/repositories.md create mode 100644 guides/v5.10.0/controllers/index.md create mode 100644 guides/v5.10.0/ember-inspector/component-tree.md create mode 100644 guides/v5.10.0/ember-inspector/container.md create mode 100644 guides/v5.10.0/ember-inspector/data.md create mode 100644 guides/v5.10.0/ember-inspector/deprecations.md create mode 100644 guides/v5.10.0/ember-inspector/index.md create mode 100644 guides/v5.10.0/ember-inspector/info.md create mode 100644 guides/v5.10.0/ember-inspector/installation.md create mode 100644 guides/v5.10.0/ember-inspector/object-inspector.md create mode 100644 guides/v5.10.0/ember-inspector/promises.md create mode 100644 guides/v5.10.0/ember-inspector/render-performance.md create mode 100644 guides/v5.10.0/ember-inspector/routes.md create mode 100644 guides/v5.10.0/ember-inspector/troubleshooting.md create mode 100644 guides/v5.10.0/getting-started/anatomy-of-an-ember-app.md create mode 100644 guides/v5.10.0/getting-started/core-concepts.md create mode 100644 guides/v5.10.0/getting-started/index.md create mode 100644 guides/v5.10.0/getting-started/intro.md create mode 100644 guides/v5.10.0/getting-started/js-primer.md create mode 100644 guides/v5.10.0/getting-started/quick-start.md create mode 100644 guides/v5.10.0/getting-started/working-with-html-css-and-javascript.md create mode 100644 guides/v5.10.0/glossary/index.md create mode 100644 guides/v5.10.0/glossary/web-development.md create mode 100644 guides/v5.10.0/in-depth-topics/autotracking-in-depth.md create mode 100644 guides/v5.10.0/in-depth-topics/index.md create mode 100644 guides/v5.10.0/in-depth-topics/making-api-requests.md create mode 100644 guides/v5.10.0/in-depth-topics/native-classes-in-depth.md create mode 100644 guides/v5.10.0/in-depth-topics/patterns-for-actions.md create mode 100644 guides/v5.10.0/in-depth-topics/patterns-for-components.md create mode 100644 guides/v5.10.0/in-depth-topics/rendering-values.md create mode 100644 guides/v5.10.0/index.md create mode 100644 guides/v5.10.0/models/creating-updating-and-deleting-records.md create mode 100644 guides/v5.10.0/models/customizing-adapters.md create mode 100644 guides/v5.10.0/models/customizing-serializers.md create mode 100644 guides/v5.10.0/models/defining-models.md create mode 100644 guides/v5.10.0/models/finding-records.md create mode 100644 guides/v5.10.0/models/handling-metadata.md create mode 100644 guides/v5.10.0/models/index.md create mode 100644 guides/v5.10.0/models/pushing-records-into-the-store.md create mode 100644 guides/v5.10.0/models/relationships.md create mode 100644 guides/v5.10.0/object-model/bindings.md create mode 100644 guides/v5.10.0/object-model/classes-and-instances.md create mode 100644 guides/v5.10.0/object-model/computed-properties-and-aggregate-data.md create mode 100644 guides/v5.10.0/object-model/computed-properties.md create mode 100644 guides/v5.10.0/object-model/enumerables.md create mode 100644 guides/v5.10.0/object-model/index.md create mode 100644 guides/v5.10.0/object-model/observers.md create mode 100644 guides/v5.10.0/object-model/reopening-classes-and-instances.md create mode 100644 guides/v5.10.0/pages.yml create mode 100644 guides/v5.10.0/reference/accessibility-guide.md create mode 100644 guides/v5.10.0/reference/index.md create mode 100644 guides/v5.10.0/reference/syntax-conversion-guide.md create mode 100644 guides/v5.10.0/routing/asynchronous-routing.md create mode 100644 guides/v5.10.0/routing/controllers.md create mode 100644 guides/v5.10.0/routing/defining-your-routes.md create mode 100644 guides/v5.10.0/routing/index.md create mode 100644 guides/v5.10.0/routing/linking-between-routes.md create mode 100644 guides/v5.10.0/routing/loading-and-error-substates.md create mode 100644 guides/v5.10.0/routing/preventing-and-retrying-transitions.md create mode 100644 guides/v5.10.0/routing/query-params.md create mode 100644 guides/v5.10.0/routing/redirection.md create mode 100644 guides/v5.10.0/routing/rendering-a-template.md create mode 100644 guides/v5.10.0/routing/specifying-a-routes-model.md create mode 100644 guides/v5.10.0/services/index.md create mode 100644 guides/v5.10.0/templates/actions.md create mode 100644 guides/v5.10.0/templates/binding-element-attributes.md create mode 100644 guides/v5.10.0/templates/built-in-helpers.md create mode 100644 guides/v5.10.0/templates/conditionals.md create mode 100644 guides/v5.10.0/templates/development-helpers.md create mode 100644 guides/v5.10.0/templates/displaying-a-list-of-items.md create mode 100644 guides/v5.10.0/templates/displaying-the-keys-in-an-object.md create mode 100644 guides/v5.10.0/templates/handlebars-basics.md create mode 100644 guides/v5.10.0/templates/index.md create mode 100644 guides/v5.10.0/templates/input-helpers.md create mode 100644 guides/v5.10.0/templates/links.md create mode 100644 guides/v5.10.0/templates/writing-helpers.md create mode 100644 guides/v5.10.0/testing/acceptance.md create mode 100644 guides/v5.10.0/testing/index.md create mode 100644 guides/v5.10.0/testing/test-types.md create mode 100644 guides/v5.10.0/testing/testing-application.md create mode 100644 guides/v5.10.0/testing/testing-components.md create mode 100644 guides/v5.10.0/testing/testing-controllers.md create mode 100644 guides/v5.10.0/testing/testing-helpers.md create mode 100644 guides/v5.10.0/testing/testing-models.md create mode 100644 guides/v5.10.0/testing/testing-routes.md create mode 100644 guides/v5.10.0/testing/testing-tools.md create mode 100644 guides/v5.10.0/testing/unit-testing-basics.md create mode 100644 guides/v5.10.0/tutorial/acceptance-test.md create mode 100644 guides/v5.10.0/tutorial/autocomplete-component.md create mode 100644 guides/v5.10.0/tutorial/deploying.md create mode 100644 guides/v5.10.0/tutorial/ember-cli.md create mode 100644 guides/v5.10.0/tutorial/ember-data.md create mode 100644 guides/v5.10.0/tutorial/hbs-helper.md create mode 100644 guides/v5.10.0/tutorial/index.md create mode 100644 guides/v5.10.0/tutorial/installing-addons.md create mode 100644 guides/v5.10.0/tutorial/model-hook.md create mode 100644 guides/v5.10.0/tutorial/part-1/automated-testing.md create mode 100644 guides/v5.10.0/tutorial/part-1/building-pages.md create mode 100644 guides/v5.10.0/tutorial/part-1/component-basics.md create mode 100644 guides/v5.10.0/tutorial/part-1/index.md create mode 100644 guides/v5.10.0/tutorial/part-1/interactive-components.md create mode 100644 guides/v5.10.0/tutorial/part-1/more-about-components.md create mode 100644 guides/v5.10.0/tutorial/part-1/orientation.md create mode 100644 guides/v5.10.0/tutorial/part-1/recap.md create mode 100644 guides/v5.10.0/tutorial/part-1/reusable-components.md create mode 100644 guides/v5.10.0/tutorial/part-1/working-with-data.md create mode 100644 guides/v5.10.0/tutorial/part-2/ember-data.md create mode 100644 guides/v5.10.0/tutorial/part-2/index.md create mode 100644 guides/v5.10.0/tutorial/part-2/provider-components.md create mode 100644 guides/v5.10.0/tutorial/part-2/recap.md create mode 100644 guides/v5.10.0/tutorial/part-2/route-params.md create mode 100644 guides/v5.10.0/tutorial/part-2/service-injection.md create mode 100644 guides/v5.10.0/tutorial/routes-and-templates.md create mode 100644 guides/v5.10.0/tutorial/service.md create mode 100644 guides/v5.10.0/tutorial/simple-component.md create mode 100644 guides/v5.10.0/tutorial/subroutes.md create mode 100644 guides/v5.10.0/typescript/additional-resources/faq.md create mode 100644 guides/v5.10.0/typescript/additional-resources/gotchas.md create mode 100644 guides/v5.10.0/typescript/additional-resources/index.md create mode 100644 guides/v5.10.0/typescript/additional-resources/legacy.md create mode 100644 guides/v5.10.0/typescript/application-development/addons.md create mode 100644 guides/v5.10.0/typescript/application-development/configuration.md create mode 100644 guides/v5.10.0/typescript/application-development/converting-an-app.md create mode 100644 guides/v5.10.0/typescript/application-development/index.md create mode 100644 guides/v5.10.0/typescript/application-development/testing.md create mode 100644 guides/v5.10.0/typescript/core-concepts/ember-data.md create mode 100644 guides/v5.10.0/typescript/core-concepts/index.md create mode 100644 guides/v5.10.0/typescript/core-concepts/invokables.md create mode 100644 guides/v5.10.0/typescript/core-concepts/routing.md create mode 100644 guides/v5.10.0/typescript/core-concepts/services.md create mode 100644 guides/v5.10.0/typescript/getting-started.md create mode 100644 guides/v5.10.0/typescript/index.md create mode 100644 guides/v5.10.0/upgrading/current-edition/action-on-and-fn.md create mode 100644 guides/v5.10.0/upgrading/current-edition/cheat-sheet.md create mode 100644 guides/v5.10.0/upgrading/current-edition/glimmer-components.md create mode 100644 guides/v5.10.0/upgrading/current-edition/index.md create mode 100644 guides/v5.10.0/upgrading/current-edition/native-classes.md create mode 100644 guides/v5.10.0/upgrading/current-edition/templates.md create mode 100644 guides/v5.10.0/upgrading/current-edition/tracked-properties.md create mode 100644 guides/v5.10.0/upgrading/index.md diff --git a/guides/v5.10.0/accessibility/application-considerations.md b/guides/v5.10.0/accessibility/application-considerations.md new file mode 100644 index 0000000000..95b487211c --- /dev/null +++ b/guides/v5.10.0/accessibility/application-considerations.md @@ -0,0 +1,58 @@ +In this section, you will learn about the configurations and libraries that affect an entire application's accessibility. + +## Lang Attribute + +Declaring the language of the HTML document allows users to better understand your content. + +> Both assistive technologies and conventional user agents can render text more accurately when the language of the Web page is identified. Screen readers can load the correct pronunciation rules. Visual browsers can display characters and scripts correctly. Media players can show captions correctly. As a result, users with disabilities will be better able to understand the content. +> [WCAG Success Criterion 3.1.1: Intent](https://www.w3.org/WAI/WCAG21/Understanding/language-of-page.html#intent) + +A primary language should be defined on the `` element's `lang` attribute. For new apps, you can use the `--lang` option on the `ember new` command to set the language for a new application. + +```bash +ember new mon-app --lang fr +``` + +This command will create your application with French defined as the primary language +on the `` element's `lang` attribute. + +For existing Ember apps, a developer may edit the `index.html` file or leverage [ember-intl](https://github.com/ember-intl/ember-intl). + +The `html` element may not have multiple `lang` _values_. If an element contains content in a language different from the primary, then you can provide the element its own `lang` attribute. + +![For example, the HTML tag may have a lang of "es" while a paragraph may have a lang of "en"](/images/accessibility/application-considerations/lang.png) + +
+
+
+
Zoey says...
+
+

+ To learn more about the lang attribute and how to use it: https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/lang. Unsure which language subtag to use? Try the Language Subtag Lookup tool. +

+
+
+ +
+
+ +## Accessibility addons + +Any addon that will provide UI elements to the application should be evaluated for accessibility before use. + +There are some existing Ember addons that may help you make your app more accessible. Each addon should be evaluated for its own usefulness and merit- you may find in some instances, that it would be better to implement the ideas presented in the addon in your own application. + +Here are some examples of accessibility-focused addons created by many people throughout the Ember community: + +- [ember-a11y-landmarks](https://github.com/ember-a11y/ember-a11y-landmarks) - Ember addon to help with landmark roles for better accessibility +- [ember-component-focus](https://github.com/ember-a11y/ember-component-focus) - A mixin for adding methods to your Ember components that help you manage the currently focused element. +- [ember-steps](https://github.com/rwjblue/ember-steps) - Declarative create wizards, tabbed UIs, and more +- [ember-page-title](https://github.com/tim-evans/ember-page-title) - Page title management for Ember.js Apps +- [ember-self-focused](https://github.com/linkedin/self-focused/tree/master/packages/ember-self-focused) - Focus on route on transition +- [ember-keyboard](https://github.com/patience-tema-baron/ember-keyboard) - An Ember.js addon for the painless support of keyboard events +- [ember-a11y-testing](https://github.com/ember-a11y/ember-a11y-testing) - A suite of accessibility tests that can be run within the Ember testing framework +- [a11y-announcer](https://github.com/ember-a11y/a11y-announcer) - An accessible ember route change announcer +- [ember-template-lint](https://github.com/ember-template-lint/ember-template-lint) - linter for Ember templates + ![Template Linting Preview](/images/accessibility/application-considerations/template-lint.png) + +While there are quite a few moving parts, here's a cheat sheet to get you started: [Accessibility Cheat Sheet](https://moritzgiessmann.de/accessibility-cheatsheet/) diff --git a/guides/v5.10.0/accessibility/components.md b/guides/v5.10.0/accessibility/components.md new file mode 100644 index 0000000000..6e0e2a99d2 --- /dev/null +++ b/guides/v5.10.0/accessibility/components.md @@ -0,0 +1,93 @@ +When crafting an accessible component, the first and most important thing is that the component should render valid HTML. + +Both the HTML and ARIA specifications have been written in a way that make them work together. Semantic HTML provides the necessary _context_ to screen readers. + +Browsers have implemented the spec in a way that provides functionality for free. +For example, consider this code sample: + +```html + +``` + +Here is what would be provided by the browser that the developer would otherwise need to provide: + +- keyboard interactions on interactive elements (i.e., using the `ENTER` key to activate a ` + + <:content> + This is what is shown when I'm opened! + + +``` + +We know the state of the popover because we passed it as an argument to the `yield`. To access its value, use the block parameters at the named block scope. It will not be accessible at the `Popover` level, so if you want the value to be available for all the blocks, you will have to pass it for each of them. + +Rendering the previous code example would give this as result: + +```html + +
+
+ +
+
+ This is what is showed when I'm opened! +
+
+``` + +Don't worry, you can also still use `yield` by itself, and mix it with named blocks. Let’s take a card example: + +```handlebars {data-filename=app/components/card.hbs} +
+ {{#if (has-block "title")}} +
+ {{yield to="title"}} +
+ {{/if}} +
+ {{yield}} +
+
+``` + +A yielded block without a name is called `default`. So to access it, it’s like any other named blocks. + +```handlebars + + <:title> +

It's nice to have me. Sometimes

+ + <:default> + The card content will appear here! + +
+``` + +The title being optional when you create a card, you can use the `(has-block)` helper with the named block by adding its name as a first parameter. That means you could also create this card: + +```handlebars + + I don't want any title, and I only have a default content! + +``` + +As you are not using named blocks, you can simply yield the content you would like to add, which becomes the default yield block. + + + + diff --git a/guides/v5.10.0/components/block-params.md b/guides/v5.10.0/components/block-params.md new file mode 100644 index 0000000000..db3eb8a161 --- /dev/null +++ b/guides/v5.10.0/components/block-params.md @@ -0,0 +1,3 @@ +--- +redirect: components/block-content +--- diff --git a/guides/v5.10.0/components/built-in-components.md b/guides/v5.10.0/components/built-in-components.md new file mode 100644 index 0000000000..6b6203d7ba --- /dev/null +++ b/guides/v5.10.0/components/built-in-components.md @@ -0,0 +1,220 @@ +Out of the box, Ember provides 2 components for building a form: + +* [``](https://api.emberjs.com/ember/5.10.0/classes/Ember.Templates.components/methods/Input?anchor=Input) +* [`