From ab375b27f9a40a689fe1fd82d409fa11ecaf0254 Mon Sep 17 00:00:00 2001 From: babyfish-ct Date: Tue, 16 Apr 2024 17:31:34 +0000 Subject: [PATCH] deploy: cb373d2d90143b62d542a33f9076505fc001c991 --- 404.html | 4 ++-- assets/js/c9e80a64.6b0a5350.js | 1 + assets/js/c9e80a64.be2fe4ea.js | 1 - .../js/{main.08605edb.js => main.85ae797d.js} | 4 ++-- ...CENSE.txt => main.85ae797d.js.LICENSE.txt} | 0 ...n.74b28b35.js => runtime~main.da16c504.js} | 2 +- blog/archive/index.html | 4 ++-- blog/first-blog-post/index.html | 4 ++-- blog/index.html | 4 ++-- blog/long-blog-post/index.html | Bin 15180 -> 15180 bytes blog/mdx-blog-post/index.html | 4 ++-- blog/tags/docusaurus/index.html | 4 ++-- blog/tags/facebook/index.html | 4 ++-- blog/tags/hello/index.html | 4 ++-- blog/tags/hola/index.html | 4 ++-- blog/tags/index.html | 4 ++-- blog/welcome/index.html | 4 ++-- docs/cache/cache-type/association/index.html | 4 ++-- docs/cache/cache-type/calculation/index.html | 4 ++-- docs/cache/cache-type/index.html | 4 ++-- docs/cache/cache-type/object/index.html | 4 ++-- docs/cache/consistency/index.html | 4 ++-- docs/cache/enable-cache/index.html | 4 ++-- docs/cache/index.html | 4 ++-- .../abandoned-callback/index.html | 4 ++-- .../cache/multiview-cache/advanced/index.html | 4 ++-- docs/cache/multiview-cache/concept/index.html | 4 ++-- docs/cache/multiview-cache/index.html | 4 ++-- .../multiview-cache/user-filter/index.html | 4 ++-- docs/client/api/index.html | 4 ++-- docs/client/error/index.html | 4 ++-- docs/client/index.html | 4 ++-- docs/configuration/batch-size/index.html | 4 ++-- docs/configuration/cache-abandoned/index.html | 4 ++-- .../connection-manager/index.html | 4 ++-- .../database-validation/index.html | 4 ++-- .../default-database-stragegy/index.html | 4 ++-- .../default-enum-strategy/index.html | 4 ++-- docs/configuration/dialect/index.html | 4 ++-- .../dissociate-action-checking/index.html | 4 ++-- .../id-only-target-checking-level/index.html | 4 ++-- docs/configuration/index.html | 4 ++-- docs/configuration/micro-service/index.html | 4 ++-- .../multi-datasources/index.html | 4 ++-- .../save-command-pessimistic-lock/index.html | 4 ++-- docs/configuration/scala-providder/index.html | 4 ++-- docs/configuration/sql-log/index.html | 4 ++-- docs/configuration/trigger-type/index.html | 4 ++-- docs/graphql/concept/index.html | 4 ++-- docs/graphql/index.html | 4 ++-- docs/graphql/mutation/index.html | 4 ++-- docs/graphql/query/index.html | 4 ++-- .../advanced/calculated/formula/index.html | 4 ++-- docs/mapping/advanced/calculated/index.html | 4 ++-- .../advanced/calculated/transient/index.html | 4 ++-- docs/mapping/advanced/embedded/index.html | 4 ++-- docs/mapping/advanced/enum/index.html | 4 ++-- docs/mapping/advanced/index.html | 4 ++-- docs/mapping/advanced/join-sql/index.html | 4 ++-- .../advanced/join-table-filter/index.html | 4 ++-- docs/mapping/advanced/json/index.html | 4 ++-- docs/mapping/advanced/key/index.html | 4 ++-- .../logical-deleted/entity/index.html | 4 ++-- .../advanced/logical-deleted/index.html | 4 ++-- .../logical-deleted/join-table/index.html | 4 ++-- .../advanced/mapped-super-class/index.html | 4 ++-- .../mapping/advanced/on-dissociate/index.html | 4 ++-- docs/mapping/advanced/remote/index.html | 4 ++-- docs/mapping/advanced/view/id-view/index.html | 4 ++-- docs/mapping/advanced/view/index.html | 4 ++-- .../view/many-to-many-view/index.html | 4 ++-- docs/mapping/base/association/index.html | 4 ++-- .../base/association/many-to-many/index.html | 4 ++-- .../base/association/many-to-one/index.html | 4 ++-- .../base/association/one-to-many/index.html | 4 ++-- .../base/association/one-to-one/index.html | 4 ++-- docs/mapping/base/basic/index.html | 4 ++-- docs/mapping/base/foreignkey/index.html | 4 ++-- docs/mapping/base/index.html | 4 ++-- docs/mapping/base/json-converter/index.html | 4 ++-- docs/mapping/base/more-type/index.html | 4 ++-- docs/mapping/base/naming-strategy/index.html | 4 ++-- docs/mapping/base/nullity/index.html | 4 ++-- docs/mapping/index.html | 4 ++-- docs/mutation/associations/index.html | 4 ++-- docs/mutation/delete-command/index.html | 4 ++-- docs/mutation/delete-statement/index.html | 4 ++-- docs/mutation/draft-interceptor/index.html | 4 ++-- docs/mutation/index.html | 4 ++-- .../associated-save-mode/index.html | 4 ++-- .../save-command/association/index.html | 4 ++-- .../save-command/dissociation/index.html | 4 ++-- .../save-command/id-checking/index.html | 4 ++-- .../save-command/incomplete/index.html | 4 ++-- docs/mutation/save-command/index.html | 4 ++-- .../input-dto/dto-lang/index.html | 4 ++-- .../save-command/input-dto/index.html | 4 ++-- .../save-command/input-dto/lonely/index.html | 4 ++-- .../input-dto/mapstruct/index.html | 4 ++-- .../save-command/input-dto/problem/index.html | 4 ++-- docs/mutation/save-command/lock/index.html | 4 ++-- docs/mutation/save-command/other/index.html | 4 ++-- .../save-command/save-mode/index.html | 4 ++-- docs/mutation/save-command/usage/index.html | 4 ++-- docs/mutation/trigger/index.html | 4 ++-- docs/mutation/update-statement/index.html | 4 ++-- docs/object/draft/index.html | 4 ++-- docs/object/dynamic/index.html | 4 ++-- .../immutable/current-situation/index.html | 4 ++-- docs/object/immutable/index.html | 4 ++-- docs/object/immutable/reason/index.html | 4 ++-- docs/object/immutable/solution/index.html | 4 ++-- docs/object/index.html | 4 ++-- docs/object/jackson/index.html | 4 ++-- docs/object/tool/index.html | 4 ++-- docs/object/view/dto-language/index.html | 4 ++-- docs/object/view/index.html | 4 ++-- docs/object/view/mapstruct/index.html | 4 ++-- docs/object/visibility/index.html | 4 ++-- docs/overview/apt-ksp/index.html | 4 ++-- docs/overview/benchmark/index.html | 4 ++-- docs/overview/index.html | 4 ++-- docs/overview/introduction/index.html | 4 ++-- docs/overview/welcome/index.html | 4 ++-- docs/query/associations/index.html | 4 ++-- .../query/dynamic-join/chain-style/index.html | 4 ++-- docs/query/dynamic-join/index.html | 4 ++-- .../query/dynamic-join/kotlin-join/index.html | 4 ++-- docs/query/dynamic-join/merge/index.html | 4 ++-- .../dynamic-join/optimization/index.html | 4 ++-- docs/query/dynamic-join/problem/index.html | 4 ++-- docs/query/dynamic-join/table-ex/index.html | 4 ++-- docs/query/dynamic-join/weak-join/index.html | 4 ++-- docs/query/dynamic-order/index.html | 4 ++-- docs/query/dynamic-where/index.html | 4 ++-- docs/query/expression/index.html | 4 ++-- docs/query/global-filter/index.html | 4 ++-- .../global-filter/logical-deleted/index.html | 4 ++-- .../global-filter/user-filter/index.html | 4 ++-- docs/query/group/index.html | 4 ++-- docs/query/implicit-subquery/index.html | 4 ++-- docs/query/index.html | 4 ++-- docs/query/native-sql/index.html | 4 ++-- .../object-fetcher/association/index.html | 4 ++-- docs/query/object-fetcher/dto/index.html | 4 ++-- docs/query/object-fetcher/index.html | 4 ++-- docs/query/object-fetcher/props/index.html | 4 ++-- .../query/object-fetcher/recursive/index.html | 4 ++-- .../object-fetcher/spring-data/index.html | 4 ++-- docs/query/object-fetcher/usage/index.html | 4 ++-- docs/query/object-fetcher/view/index.html | 4 ++-- .../query/paging/deep-optimization/index.html | 4 ++-- docs/query/paging/index.html | 4 ++-- docs/query/paging/reverse-sorting/index.html | 4 ++-- docs/query/paging/unncessary-join/index.html | 4 ++-- docs/query/paging/usage/index.html | 4 ++-- docs/query/sub-query/index.html | 4 ++-- docs/query/super_qbe/index.html | 4 ++-- docs/query/usage/index.html | 4 ++-- docs/quick-view/dsl/feature/index.html | 4 ++-- docs/quick-view/dsl/index.html | 4 ++-- docs/quick-view/dsl/super_qbe/index.html | 4 ++-- .../fetch/export/comparison/index.html | 4 ++-- docs/quick-view/fetch/export/dto/index.html | 6 +++--- .../quick-view/fetch/export/entity/index.html | 4 ++-- docs/quick-view/fetch/export/index.html | 4 ++-- docs/quick-view/fetch/feature/index.html | 4 ++-- docs/quick-view/fetch/index.html | 4 ++-- .../get-started/create-database/index.html | 4 ++-- .../get-started/create-project/index.html | 4 ++-- .../get-started/define-entity/index.html | 4 ++-- .../get-started/generate-code/index.html | 4 ++-- docs/quick-view/get-started/index.html | 4 ++-- docs/quick-view/get-started/usage/index.html | 4 ++-- docs/quick-view/index.html | 4 ++-- docs/quick-view/precondition/index.html | 4 ++-- docs/quick-view/save/export/index.html | 4 ++-- docs/quick-view/save/export/long/index.html | 4 ++-- docs/quick-view/save/export/root/index.html | 4 ++-- docs/quick-view/save/export/short/index.html | 4 ++-- docs/quick-view/save/feature/index.html | 4 ++-- docs/quick-view/save/index.html | 4 ++-- docs/quick-view/standard-demo/index.html | 4 ++-- docs/resource/discuss/index.html | 4 ++-- docs/resource/ecosystem/index.html | 4 ++-- docs/resource/index.html | 4 ++-- docs/resource/video/index.html | 4 ++-- docs/showcase/base/index.html | 4 ++-- docs/showcase/comprehensive-query/index.html | 4 ++-- docs/showcase/delete-statement/index.html | 4 ++-- .../associated-id/index.html | 4 ++-- .../associated-object/index.html | 4 ++-- .../deeper-association/index.html | 4 ++-- docs/showcase/fetch-association/index.html | 4 ++-- .../more-association/index.html | 4 ++-- docs/showcase/index.html | 4 ++-- docs/showcase/order-by/dynamic/index.html | 4 ++-- docs/showcase/order-by/index.html | 4 ++-- docs/showcase/order-by/usage/index.html | 4 ++-- docs/showcase/other-query/index.html | 4 ++-- docs/showcase/page/index.html | 4 ++-- .../showcase/recursive-query/depth/index.html | 4 ++-- docs/showcase/recursive-query/index.html | 4 ++-- .../recursive-query/multiple-props/index.html | 4 ++-- .../recursive-query/node-control/index.html | 4 ++-- .../showcase/recursive-query/usage/index.html | 4 ++-- docs/showcase/to-be-conitnued/index.html | 4 ++-- docs/showcase/update-statement/index.html | 4 ++-- docs/showcase/where/associated-id/index.html | 4 ++-- docs/showcase/where/dynamic-join/index.html | 4 ++-- docs/showcase/where/dynamic-where/index.html | 4 ++-- .../where/implicit-subquery/index.html | 4 ++-- docs/showcase/where/index.html | 4 ++-- docs/showcase/where/usage/index.html | 4 ++-- docs/spring/appendix/index.html | 4 ++-- docs/spring/index.html | 4 ++-- docs/spring/repository/abstract/index.html | 4 ++-- docs/spring/repository/concept/index.html | 4 ++-- docs/spring/repository/default/index.html | 4 ++-- docs/spring/repository/dto/index.html | 4 ++-- docs/spring/repository/index.html | 4 ++-- docs/spring/spring-cloud/index.html | 4 ++-- docs/spring/transaction/index.html | 4 ++-- index.html | 4 ++-- markdown-page/index.html | 4 ++-- search-index.json | 2 +- search/index.html | 4 ++-- zh/404.html | 4 ++-- zh/assets/js/49825b4e.3e7b7a3d.js | 1 + zh/assets/js/49825b4e.9e260d8f.js | 1 - .../js/{main.ec214034.js => main.b92c9aba.js} | 4 ++-- ...CENSE.txt => main.b92c9aba.js.LICENSE.txt} | 0 ...n.65d03a8c.js => runtime~main.b442f09c.js} | 2 +- zh/blog/archive/index.html | 4 ++-- zh/blog/first-blog-post/index.html | 4 ++-- zh/blog/index.html | 4 ++-- zh/blog/long-blog-post/index.html | Bin 15233 -> 15233 bytes zh/blog/mdx-blog-post/index.html | 4 ++-- zh/blog/tags/docusaurus/index.html | 4 ++-- zh/blog/tags/facebook/index.html | 4 ++-- zh/blog/tags/hello/index.html | 4 ++-- zh/blog/tags/hola/index.html | 4 ++-- zh/blog/tags/index.html | 4 ++-- zh/blog/welcome/index.html | 4 ++-- .../cache/cache-type/association/index.html | 4 ++-- .../cache/cache-type/calculation/index.html | 4 ++-- zh/docs/cache/cache-type/index.html | 4 ++-- zh/docs/cache/cache-type/object/index.html | 4 ++-- zh/docs/cache/consistency/index.html | 4 ++-- zh/docs/cache/enable-cache/index.html | 4 ++-- zh/docs/cache/index.html | 4 ++-- .../abandoned-callback/index.html | 4 ++-- .../cache/multiview-cache/advanced/index.html | 4 ++-- .../cache/multiview-cache/concept/index.html | 4 ++-- zh/docs/cache/multiview-cache/index.html | 4 ++-- .../multiview-cache/user-filter/index.html | 4 ++-- zh/docs/client/api/index.html | 4 ++-- zh/docs/client/error/index.html | 4 ++-- zh/docs/client/index.html | 4 ++-- zh/docs/configuration/batch-size/index.html | 4 ++-- .../configuration/cache-abandoned/index.html | 4 ++-- .../connection-manager/index.html | 4 ++-- .../database-validation/index.html | 4 ++-- .../default-database-stragegy/index.html | 4 ++-- .../default-enum-strategy/index.html | 4 ++-- zh/docs/configuration/dialect/index.html | 4 ++-- .../dissociate-action-checking/index.html | 4 ++-- .../id-only-target-checking-level/index.html | 4 ++-- zh/docs/configuration/index.html | 4 ++-- .../configuration/micro-service/index.html | 4 ++-- .../multi-datasources/index.html | 4 ++-- .../save-command-pessimistic-lock/index.html | 4 ++-- .../configuration/scala-providder/index.html | 4 ++-- zh/docs/configuration/sql-log/index.html | 4 ++-- zh/docs/configuration/trigger-type/index.html | 4 ++-- zh/docs/graphql/concept/index.html | 4 ++-- zh/docs/graphql/index.html | 4 ++-- zh/docs/graphql/mutation/index.html | 4 ++-- zh/docs/graphql/query/index.html | 4 ++-- .../advanced/calculated/formula/index.html | 4 ++-- .../mapping/advanced/calculated/index.html | 4 ++-- .../advanced/calculated/transient/index.html | 4 ++-- zh/docs/mapping/advanced/embedded/index.html | 4 ++-- zh/docs/mapping/advanced/enum/index.html | 4 ++-- zh/docs/mapping/advanced/index.html | 4 ++-- zh/docs/mapping/advanced/join-sql/index.html | 4 ++-- .../advanced/join-table-filter/index.html | 4 ++-- zh/docs/mapping/advanced/json/index.html | 4 ++-- zh/docs/mapping/advanced/key/index.html | 4 ++-- .../logical-deleted/entity/index.html | 4 ++-- .../advanced/logical-deleted/index.html | 4 ++-- .../logical-deleted/join-table/index.html | 4 ++-- .../advanced/mapped-super-class/index.html | 4 ++-- .../mapping/advanced/on-dissociate/index.html | 4 ++-- zh/docs/mapping/advanced/remote/index.html | 4 ++-- .../mapping/advanced/view/id-view/index.html | 4 ++-- zh/docs/mapping/advanced/view/index.html | 4 ++-- .../view/many-to-many-view/index.html | 4 ++-- zh/docs/mapping/base/association/index.html | 4 ++-- .../base/association/many-to-many/index.html | 4 ++-- .../base/association/many-to-one/index.html | 4 ++-- .../base/association/one-to-many/index.html | 4 ++-- .../base/association/one-to-one/index.html | 4 ++-- zh/docs/mapping/base/basic/index.html | 4 ++-- zh/docs/mapping/base/foreignkey/index.html | 4 ++-- zh/docs/mapping/base/index.html | 4 ++-- .../mapping/base/json-converter/index.html | 4 ++-- zh/docs/mapping/base/more-type/index.html | 4 ++-- .../mapping/base/naming-strategy/index.html | 4 ++-- zh/docs/mapping/base/nullity/index.html | 4 ++-- zh/docs/mapping/index.html | 4 ++-- zh/docs/mutation/associations/index.html | 4 ++-- zh/docs/mutation/delete-command/index.html | 4 ++-- zh/docs/mutation/delete-statement/index.html | 4 ++-- zh/docs/mutation/draft-interceptor/index.html | 4 ++-- zh/docs/mutation/index.html | 4 ++-- .../associated-save-mode/index.html | 4 ++-- .../save-command/association/index.html | 4 ++-- .../save-command/dissociation/index.html | 4 ++-- .../save-command/id-checking/index.html | 4 ++-- .../save-command/incomplete/index.html | 4 ++-- zh/docs/mutation/save-command/index.html | 4 ++-- .../input-dto/dto-lang/index.html | 4 ++-- .../save-command/input-dto/index.html | 4 ++-- .../save-command/input-dto/lonely/index.html | 4 ++-- .../input-dto/mapstruct/index.html | 4 ++-- .../save-command/input-dto/problem/index.html | 4 ++-- zh/docs/mutation/save-command/lock/index.html | 4 ++-- .../mutation/save-command/other/index.html | 4 ++-- .../save-command/save-mode/index.html | 4 ++-- .../mutation/save-command/usage/index.html | 4 ++-- zh/docs/mutation/trigger/index.html | 4 ++-- zh/docs/mutation/update-statement/index.html | 4 ++-- zh/docs/object/draft/index.html | 4 ++-- zh/docs/object/dynamic/index.html | 4 ++-- .../immutable/current-situation/index.html | 4 ++-- zh/docs/object/immutable/index.html | 4 ++-- zh/docs/object/immutable/reason/index.html | 4 ++-- zh/docs/object/immutable/solution/index.html | 4 ++-- zh/docs/object/index.html | 4 ++-- zh/docs/object/jackson/index.html | 4 ++-- zh/docs/object/tool/index.html | 4 ++-- zh/docs/object/view/dto-language/index.html | 4 ++-- zh/docs/object/view/index.html | 4 ++-- zh/docs/object/view/mapstruct/index.html | 4 ++-- zh/docs/object/visibility/index.html | 4 ++-- zh/docs/overview/apt-ksp/index.html | 4 ++-- zh/docs/overview/benchmark/index.html | 4 ++-- zh/docs/overview/index.html | 4 ++-- zh/docs/overview/introduction/index.html | 4 ++-- zh/docs/overview/welcome/index.html | 4 ++-- zh/docs/query/associations/index.html | 4 ++-- .../query/dynamic-join/chain-style/index.html | 4 ++-- zh/docs/query/dynamic-join/index.html | 4 ++-- .../query/dynamic-join/kotlin-join/index.html | 4 ++-- zh/docs/query/dynamic-join/merge/index.html | 4 ++-- .../dynamic-join/optimization/index.html | 4 ++-- zh/docs/query/dynamic-join/problem/index.html | 4 ++-- .../query/dynamic-join/table-ex/index.html | 4 ++-- .../query/dynamic-join/weak-join/index.html | 4 ++-- zh/docs/query/dynamic-order/index.html | 4 ++-- zh/docs/query/dynamic-where/index.html | 4 ++-- zh/docs/query/expression/index.html | 4 ++-- zh/docs/query/global-filter/index.html | 4 ++-- .../global-filter/logical-deleted/index.html | 4 ++-- .../global-filter/user-filter/index.html | 4 ++-- zh/docs/query/group/index.html | 4 ++-- zh/docs/query/implicit-subquery/index.html | 4 ++-- zh/docs/query/index.html | 4 ++-- zh/docs/query/native-sql/index.html | 4 ++-- .../object-fetcher/association/index.html | 4 ++-- zh/docs/query/object-fetcher/dto/index.html | 4 ++-- zh/docs/query/object-fetcher/index.html | 4 ++-- zh/docs/query/object-fetcher/props/index.html | 4 ++-- .../query/object-fetcher/recursive/index.html | 4 ++-- .../object-fetcher/spring-data/index.html | 4 ++-- zh/docs/query/object-fetcher/usage/index.html | 4 ++-- zh/docs/query/object-fetcher/view/index.html | 4 ++-- .../query/paging/deep-optimization/index.html | 4 ++-- zh/docs/query/paging/index.html | 4 ++-- .../query/paging/reverse-sorting/index.html | 4 ++-- .../query/paging/unncessary-join/index.html | 4 ++-- zh/docs/query/paging/usage/index.html | 4 ++-- zh/docs/query/sub-query/index.html | 4 ++-- zh/docs/query/super_qbe/index.html | 4 ++-- zh/docs/query/usage/index.html | 4 ++-- zh/docs/quick-view/dsl/feature/index.html | 4 ++-- zh/docs/quick-view/dsl/index.html | 4 ++-- zh/docs/quick-view/dsl/super_qbe/index.html | 4 ++-- .../fetch/export/comparison/index.html | 4 ++-- .../quick-view/fetch/export/dto/index.html | 10 +++++----- .../quick-view/fetch/export/entity/index.html | 4 ++-- zh/docs/quick-view/fetch/export/index.html | 4 ++-- zh/docs/quick-view/fetch/feature/index.html | 4 ++-- zh/docs/quick-view/fetch/index.html | 4 ++-- .../get-started/create-database/index.html | 4 ++-- .../get-started/create-project/index.html | 4 ++-- .../get-started/define-entity/index.html | 4 ++-- .../get-started/generate-code/index.html | 4 ++-- zh/docs/quick-view/get-started/index.html | 4 ++-- .../quick-view/get-started/usage/index.html | 4 ++-- zh/docs/quick-view/index.html | 4 ++-- zh/docs/quick-view/precondition/index.html | 4 ++-- zh/docs/quick-view/save/export/index.html | 4 ++-- .../quick-view/save/export/long/index.html | 4 ++-- .../quick-view/save/export/root/index.html | 4 ++-- .../quick-view/save/export/short/index.html | 4 ++-- zh/docs/quick-view/save/feature/index.html | 4 ++-- zh/docs/quick-view/save/index.html | 4 ++-- zh/docs/quick-view/standard-demo/index.html | 4 ++-- zh/docs/resource/discuss/index.html | 4 ++-- zh/docs/resource/ecosystem/index.html | 4 ++-- zh/docs/resource/index.html | 4 ++-- zh/docs/resource/video/index.html | 4 ++-- zh/docs/showcase/base/index.html | 4 ++-- .../showcase/comprehensive-query/index.html | 4 ++-- zh/docs/showcase/delete-statement/index.html | 4 ++-- .../associated-id/index.html | 4 ++-- .../associated-object/index.html | 4 ++-- .../deeper-association/index.html | 4 ++-- zh/docs/showcase/fetch-association/index.html | 4 ++-- .../more-association/index.html | 4 ++-- zh/docs/showcase/index.html | 4 ++-- zh/docs/showcase/order-by/dynamic/index.html | 4 ++-- zh/docs/showcase/order-by/index.html | 4 ++-- zh/docs/showcase/order-by/usage/index.html | 4 ++-- zh/docs/showcase/other-query/index.html | 4 ++-- zh/docs/showcase/page/index.html | 4 ++-- .../showcase/recursive-query/depth/index.html | 4 ++-- zh/docs/showcase/recursive-query/index.html | 4 ++-- .../recursive-query/multiple-props/index.html | 4 ++-- .../recursive-query/node-control/index.html | 4 ++-- .../showcase/recursive-query/usage/index.html | 4 ++-- zh/docs/showcase/to-be-conitnued/index.html | 4 ++-- zh/docs/showcase/update-statement/index.html | 4 ++-- .../showcase/where/associated-id/index.html | 4 ++-- .../showcase/where/dynamic-join/index.html | 4 ++-- .../showcase/where/dynamic-where/index.html | 4 ++-- .../where/implicit-subquery/index.html | 4 ++-- zh/docs/showcase/where/index.html | 4 ++-- zh/docs/showcase/where/usage/index.html | 4 ++-- zh/docs/spring/appendix/index.html | 4 ++-- zh/docs/spring/index.html | 4 ++-- zh/docs/spring/repository/abstract/index.html | 4 ++-- zh/docs/spring/repository/concept/index.html | 4 ++-- zh/docs/spring/repository/default/index.html | 4 ++-- zh/docs/spring/repository/dto/index.html | 4 ++-- zh/docs/spring/repository/index.html | 4 ++-- zh/docs/spring/spring-cloud/index.html | 4 ++-- zh/docs/spring/transaction/index.html | 4 ++-- zh/index.html | 4 ++-- zh/markdown-page/index.html | 4 ++-- zh/search-index.json | 2 +- zh/search/index.html | 4 ++-- 454 files changed, 894 insertions(+), 894 deletions(-) create mode 100644 assets/js/c9e80a64.6b0a5350.js delete mode 100644 assets/js/c9e80a64.be2fe4ea.js rename assets/js/{main.08605edb.js => main.85ae797d.js} (99%) rename assets/js/{main.08605edb.js.LICENSE.txt => main.85ae797d.js.LICENSE.txt} (100%) rename assets/js/{runtime~main.74b28b35.js => runtime~main.da16c504.js} (99%) create mode 100644 zh/assets/js/49825b4e.3e7b7a3d.js delete mode 100644 zh/assets/js/49825b4e.9e260d8f.js rename zh/assets/js/{main.ec214034.js => main.b92c9aba.js} (98%) rename zh/assets/js/{main.ec214034.js.LICENSE.txt => main.b92c9aba.js.LICENSE.txt} (100%) rename zh/assets/js/{runtime~main.65d03a8c.js => runtime~main.b442f09c.js} (99%) diff --git a/404.html b/404.html index fbc492aff..1aa7a917d 100644 --- a/404.html +++ b/404.html @@ -5,8 +5,8 @@ Page Not Found | A revolutionary ORM framework for both java & kotlin - - + +
Skip to main content

Page Not Found

We could not find what you were looking for.

Please contact the owner of the site that linked you to the original URL and let them know their link is broken.

diff --git a/assets/js/c9e80a64.6b0a5350.js b/assets/js/c9e80a64.6b0a5350.js new file mode 100644 index 000000000..0366fb162 --- /dev/null +++ b/assets/js/c9e80a64.6b0a5350.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocusaurus_code=self.webpackChunkdocusaurus_code||[]).push([[663],{39889:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>s,default:()=>u,frontMatter:()=>a,metadata:()=>c,toc:()=>h});var o=t(74848),i=t(28453),l=t(11470),r=t(19365);t(74400),t(62601);const a={sidebar_position:2,title:"Return Output DTO"},s=void 0,c={id:"quick-view/fetch/export/dto",title:"Return Output DTO",description:"Java/Kotlin Applications Use Query Results",source:"@site/docs/quick-view/fetch/export/dto.mdx",sourceDirName:"quick-view/fetch/export",slug:"/quick-view/fetch/export/dto",permalink:"/jimmer-doc/docs/quick-view/fetch/export/dto",draft:!1,unlisted:!1,editUrl:"https://github.com/babyfish-ct/jimmer-doc/edit/main/docs/quick-view/fetch/export/dto.mdx",tags:[],version:"current",sidebarPosition:2,frontMatter:{sidebar_position:2,title:"Return Output DTO"},sidebar:"tutorialSidebar",previous:{title:"Directly Return Entities",permalink:"/jimmer-doc/docs/quick-view/fetch/export/entity"},next:{title:"Comparison",permalink:"/jimmer-doc/docs/quick-view/fetch/export/comparison"}},d={},h=[{value:"Java/Kotlin Applications Use Query Results",id:"javakotlin-applications-use-query-results",level:2},{value:"DTO Language",id:"dto-language",level:2},{value:"DTO Language Plugin",id:"dto-language-plugin",level:3},{value:"Define DTO Files",id:"define-dto-files",level:3},{value:"View Generated DTOs",id:"view-generated-dtos",level:3},{value:"New BookRepository",id:"new-bookrepository",level:2},{value:"Review Old BookRepository",id:"review-old-bookrepository",level:3},{value:"Write New BookRepository",id:"write-new-bookrepository",level:3},{value:"Try New BookRepository",id:"try-new-bookrepository",level:3},{value:"Write BookController",id:"write-bookcontroller",level:2},{value:"Document Comments",id:"document-comments",level:2},{value:"Flat Association ID",id:"flat-association-id",level:2},{value:"Flat Associated Objects",id:"flat-associated-objects",level:2}];function A(e){const n={a:"a",admonition:"admonition",blockquote:"blockquote",code:"code",em:"em",h2:"h2",h3:"h3",li:"li",mdxAdmonitionTitle:"mdxAdmonitionTitle",ol:"ol",p:"p",pre:"pre",ul:"ul",...(0,i.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.h2,{id:"javakotlin-applications-use-query-results",children:"Java/Kotlin Applications Use Query Results"}),"\n",(0,o.jsxs)(n.p,{children:["In the ",(0,o.jsx)(n.a,{href:"./entity",children:"previous article"}),", we introduced that the web service does not need to define DTO types, directly returns entities, and uses ",(0,o.jsx)(n.code,{children:"@FetchBy"})," annotations to restore all DTO type definitions in automatically generated client code."]}),"\n",(0,o.jsx)(n.p,{children:"However, what if a query result is not returned to the Web remote client, but the server itself uses it?"}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",children:'List books = bookRepository.findBooksByName(\n "graphql",\n Fetchers.BOOK_FETCHER \u2776\n .name()\n .edition()\n);\nfor (Book book : books) {\n System.out.println("--------");\n System.out.println("Id: " + book.id());\n System.out.println("Name: " + book.name());\n System.out.println("Edition: " + book.edition());\n System.out.println("Price:" + book.price()); \u2777\n}\n'})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",children:'val books = bookRepository.findBooksByName(\n "graphql",\n newFetcher(Book::class).by { \u2776\n name()\n edition()\n } \n)\nfor (book in books) {\n println("--------")\n println("Id: ${book.id}")\n println("Name: ${book.name}")\n println("Edition: ${book.edition}") \n println("Price: ${book.price}") \u2777\n} \n'})})})]}),"\n",(0,o.jsx)(n.p,{children:"Here, there is no web service or remote call, it is just a call within the same JVM"}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u2776 Only queries three properties of the object: ",(0,o.jsx)(n.code,{children:"id"})," ",(0,o.jsx)(n.em,{children:"(implicit)"}),", ",(0,o.jsx)(n.code,{children:"name"})," and ",(0,o.jsx)(n.code,{children:"edition"})]}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u2777 Access the unqueried ",(0,o.jsx)(n.code,{children:"price"})," property of the ",(0,o.jsx)(n.code,{children:"book"})," object."]}),"\n",(0,o.jsx)(n.p,{children:"This erroneous access will cause an exception:"}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"Exception type: org.babyfish.jimmer.UnloadedException"}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:'Exception message: The property "com.yourcompany.yourproject.model.Book.price" is unloaded'}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,o.jsx)(n.p,{children:"It can be seen that it is not enough to only consider automatically defining DTO types in remote client APIs. When the JVM itself directly uses query results, if sufficient compile-time security is required, defining DTO types for Java/Kotlin will be inevitable and necessary to ensure better compile-time safety."}),"\n",(0,o.jsx)(n.h2,{id:"dto-language",children:"DTO Language"}),"\n",(0,o.jsx)(n.p,{children:"The mutual conversion between entity objects and DTO objects is a boring, labor-intensive and error-prone thing that is common pain point in information management software development. Although many frameworks are trying to mitigate this problem, development efficiency has remained unable to be improved qualitatively."}),"\n",(0,o.jsx)(n.p,{children:"In order to minimize the cost of DTO type creation, Jimmer introduces the DTO language, which supplements the Java/Kotlin type system and can quickly generate Java/Kotlin DTO type definitions at compile time."}),"\n",(0,o.jsxs)(n.blockquote,{children:["\n",(0,o.jsxs)(n.p,{children:["This article only provides a quick overview without detailed introduction. For complete information, please refer to ",(0,o.jsx)(n.a,{href:"/jimmer-doc/docs/object/view/dto-language",children:"DTO Language"})]}),"\n"]}),"\n",(0,o.jsx)(n.h3,{id:"dto-language-plugin",children:"DTO Language Plugin"}),"\n",(0,o.jsxs)(n.p,{children:["A jimmer user provide Intellij plugins for the DTO language. For details, see ",(0,o.jsx)(n.a,{href:"https://github.com/ClearPlume/jimmer-dto",children:"https://github.com/ClearPlume/jimmer-dto"})]}),"\n",(0,o.jsxs)(n.blockquote,{children:["\n",(0,o.jsx)(n.p,{children:"Installing the DTO language plugin is not required, but you can get a better development experience after installation, so it is recommended to install."}),"\n"]}),"\n",(0,o.jsx)(n.h3,{id:"define-dto-files",children:"Define DTO Files"}),"\n",(0,o.jsxs)(n.ol,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["For any Java/Kotlin project that needs to use the DTO language, create a subdirectory ",(0,o.jsx)(n.code,{children:"dto"})," under its ",(0,o.jsx)(n.code,{children:"src/main"})," directory. That is, ",(0,o.jsx)(n.code,{children:"src/main/dto"})," is where DTO files are stored."]}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["Create a ",(0,o.jsx)(n.code,{children:"Book.dto"})," file under ",(0,o.jsx)(n.code,{children:"src/main/dto"})," and enter the following code:"]}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:'language-sh="Book.dto"',children:"export com.yourcompany.yourproject.model.Book \n -> package com.yourcompany.yourproject.model.dto \n\nSimpleBookView { \n id \n name\n} \n\nComplexBookView { \n #allScalars(this)\n store { \n id \n name\n }\n authors {\n id\n firstName\n lastName \n }\n}\n"})}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["Compile the project ",(0,o.jsx)(n.em,{children:"(either use gradle/maven commands on the command line or click gradle/maven build on the right side of Intellij)"})," to generate related DTO types"]}),"\n"]}),"\n"]}),"\n",(0,o.jsx)(n.h3,{id:"view-generated-dtos",children:"View Generated DTOs"}),"\n",(0,o.jsxs)(n.p,{children:["After compilation, the following two types ",(0,o.jsx)(n.code,{children:"SimpleBookView"})," and ",(0,o.jsx)(n.code,{children:"ComplexView"})," will be generated automatically. The code for each is as follows:"]}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:(0,o.jsx)(n.code,{children:"SimpleBookView"})}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",metastring:'title="SimpleBookView.java" ',children:'// highlight-next-line \n@GeneratedBy( \u2776\n file = "/src/main/dto/Book.dto"\n)\npublic class SimpleBookView implements View { \u2777\n\n private long id; \n\n @NotNull \n private String name; \n\n public SimpleBookView(@NotNull Book base) { \u2778\n ...omitted...\n }\n\n @Override \n public Book toEntity() { \u2779\n ...omitted...\n } \n\n ...Omit getters and setters... \n\n ...Omit hashCode/equals/toString...\n\n ...Omit other members...\n}\n'})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",metastring:'title="SimpleBookView.kt" ',children:'// highlight-next-line\n@GeneratedBy( \u2776\n file = "/src/main/dto/Book.dto"\n)\ndata class SimpleBookView( \n val id: Long\n val name: String\n) : View { \u2777\n constructor(base: Book): \u2778 \n this(...omitted...)\n\n override fun toEntity(): Book = \u2779\n ...omitted... \n\n ...Omit other members...\n}\n'})})})]}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"\u2776 Reminds users that this is code automatically generated by Jimmer"}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u2777 Output DTO based on ",(0,o.jsx)(n.code,{children:"Book"})," entity needs to implement ",(0,o.jsx)(n.code,{children:"View"})," interface"]}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"\u2778 Converts entity to DTO"}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"\u2779 Converts DTO to entity"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:(0,o.jsx)(n.code,{children:"ComplexBookView"})}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",metastring:'title="ComplexBookView.java"',children:'// highlight-next-line\n@GeneratedBy( \u2776\n file = "/src/main/dto/Book.dto"\n)\npublic class ComplexBookView implements View { \u2777\n\n private long id;\n\n @NotNull \n private String name;\n\n private int edition;\n\n @NotNull\n private BigDecimal price;\n\n @Nullable \n private TargetOf_store store; \n\n @NotNull\n private List authors; \n\n public ComplexBookView(@NotNull Book base) { \u2778 \n ...omitted... \n }\n\n @Override\n public Book toEntity() { \u2779\n ...omitted...\n } \n\n ...Omit getters and setters... \n\n ...Omit hashCode/equals/toString... \n\n ...Omit other members...\n\n public static class TargetOf_store implements View { \u277a\n\n private long id;\n\n @NotNull \n private String name;\n\n public TargetOf_store(@NotNull BookStore base) { \n ...omitted...\n } \n\n @Override\n public BookStore toEntity() { \n ...omitted...\n } \n\n ...Omit getters and setters...\n\n ...Omit hashCode/equals/toString...\n\n ...Omit other members...\n }\n\n public static class TargetOf_authors implements View { \u277b \n\n private long id;\n\n @NotNull \n private String firstName; \n\n @NotNull\n private String lastName;\n\n public TargetOf_authors(@NotNull Author base) {\n ...omitted...\n } \n\n @Override \n public Author toEntity() {\n ...omitted...\n } \n\n ...Omit getters and setters... \n\n ...Omit hashCode/equals/toString...\n\n ...Omit other members...\n }\n}\n'})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",metastring:'title="ComplexBookView.kt"',children:'// highlight-next-line\n@GeneratedBy( \u2776\n file = "/src/main/dto/Book.dto"\n)\ndata class ComplexBookView( \n val id: Long, \n val name: String,\n val edition: Int, \n val price: BigDecimal,\n val store: TargetOf_store?, \n val authors: List\n) : View { \u2777\n\n constructor(base: Book): \u2778 \n this(...omitted...)\n\n override fun toEntity(): Book = \u2779 \n ...omitted... \n\n data class TargetOf_store( \u277a\n val id: Long,\n val name: String \n ) : View { \n\n constructor(base: BookStore): \n this(...omitted...) \n\n override fun toEntity(): BookStore = \n ...omitted...\n }\n\n data class TargetOf_authors( \u277b\n val id: Long, \n val firstName: String,\n val lastName: String \n ) : View { \n\n constructor(base: Author): \n this(...omitted...) \n\n override fun toEntity(): Author = \n ...omitted...\n } \n}\n'})})})]}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"\u2776 Reminds users that this is code automatically generated by Jimmer"}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u2777 Output DTO based on ",(0,o.jsx)(n.code,{children:"Book"})," entity needs to implement ",(0,o.jsx)(n.code,{children:"View"})," interface"]}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"\u2778 Converts entity to DTO"}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"\u2779 Converts DTO to entity"}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u277a DTO definition of associated object referenced by many-to-one association ",(0,o.jsx)(n.code,{children:"Book.store"})]}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u277b DTO definition of associated object referenced by many-to-many association ",(0,o.jsx)(n.code,{children:"Book.autors"})]}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,o.jsx)(n.h2,{id:"new-bookrepository",children:"New BookRepository"}),"\n",(0,o.jsx)(n.h3,{id:"review-old-bookrepository",children:"Review Old BookRepository"}),"\n",(0,o.jsxs)(n.p,{children:["In the ",(0,o.jsx)(n.a,{href:"../feature#improved-repository",children:"Feature Introduction"})," article, we wrote a ",(0,o.jsx)(n.code,{children:"BookRepository"})," class"]}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",metastring:'title = "BookRepository.java"',children:"public class BookRepository {\n\n @Nullable\n public Book findBookById(\n long id, \n // highlight-next-line \n Fetcher fetcher\n ) {\n ...omitted...\n }\n\n public List findBooksByName(\n @Nullable String name, \n // highlight-next-line\n @Nullable Fetcher fetcher\n ) {\n ...omitted...\n }\n\n ...Omit other members...\n}\n"})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",metastring:'title="BookRepository.kt"',children:"class BookRepository(\n ...Omit other members... \n) {\n\n fun findBookById(\n id: Long, \n // highlight-next-line\n fetcher: Fetcher\n ): Book? = \n ...omitted...\n\n fun findBooksByName(\n name: String? = null,\n // highlight-next-line \n fetcher: Fetcher? = null\n ): List = \n ...omitted...\n}\n"})})})]}),"\n",(0,o.jsxs)(n.p,{children:["Each query method adds a parameter of type ",(0,o.jsx)(n.code,{children:"Fetcher"}),". We can use it to flexibly control the format of queried objects ",(0,o.jsx)(n.em,{children:"(that is, the shape of queried data structures)"}),"."]}),"\n",(0,o.jsxs)(n.p,{children:["This is the recommended usage. The Repository is only responsible for filtering, sorting, paging and other operations, but does not control the format of the returned data. Instead, it exposes the control of the data format through the ",(0,o.jsx)(n.code,{children:"Fetcher"})," parameter to allow upper layer business logic to decide."]}),"\n",(0,o.jsx)(n.h3,{id:"write-new-bookrepository",children:"Write New BookRepository"}),"\n",(0,o.jsxs)(n.p,{children:["Now, this ",(0,o.jsx)(n.code,{children:"BookRepository"})," no longer meets our requirements. Because we no longer want to query Jimmer entities, but want to query DTO types automatically generated by the DTO language, we need to modify it."]}),"\n",(0,o.jsxs)(n.p,{children:["However, we want ",(0,o.jsx)(n.code,{children:"BookRepository"})," to still maintain the excellent quality of exposing shape control externally. The modified code is as follows."]}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",metastring:'title = "BookRepository.java" ',children:"@Component\npublic class BookRepository {\n\n private final JSqlClient sqlClient; \n\n public BookRepository(JSqlClient sqlClient) {\n this.sqlClient = sqlClient;\n }\n\n @Nullable\n public > V findBookById( \u2776\n long id, \n // highlight-next-line \n Class viewType \u2777\n ) {\n return sqlClient.findById(\n viewType, \u2778 \n id\n );\n }\n\n public > List findBooksByName( \u2779\n @Nullable String name,\n // highlight-next-line\n Class viewType \u277a\n ) {\n BookTable table = Tables.BOOK_TABLE;\n return sqlClient\n .createQuery(table)\n .whereIf(\n name != null && !name.isEmpty(), \n table.name().ilike(name)\n )\n .select(\n table.fetch(viewType) \u277b\n )\n .execute();\n }\n} \n"})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",metastring:'title="BookRepository.kt"',children:"@Component \nclass BookRepository(\n private val sqlClient: KSqlClient \n) {\n\n fun > findBookById( \u2776\n id: Long, \n // highlight-next-line\n viewType: KClass \u2777\n ): V? = \n sqlClient.findById(\n viewType, \u2778\n id\n )\n\n fun > findBooksByName( \u2779\n name: String? = null,\n // highlight-next-line \n viewType: KClass \u277a\n ): List = \n sqlClient \n .createQuery(Book::class) {\n name?.takeIf { it.isNotEmpty() }?.let {\n where(table.name ilike it)\n }\n select(\n table.fetch(viewType) \u277b\n )\n }\n .execute()\n}\n"})})})]}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u2776 \u2779: ",(0,o.jsx)(n.code,{children:">"})," in java or ",(0,o.jsx)(n.code,{children:">"})," in kotlin defines a generic parameter ",(0,o.jsx)(n.code,{children:"V"})," representing any Output DTO type based on ",(0,o.jsx)(n.code,{children:"Book"}),"."]}),"\n",(0,o.jsxs)(n.p,{children:["For example: ",(0,o.jsx)(n.code,{children:"SimpleBookView"})," and ",(0,o.jsx)(n.code,{children:"ComplexBookView"})," generated above implement the ",(0,o.jsx)(n.code,{children:"View"})," interface."]}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u2777 \u277a: Use the type of any DTO based on ",(0,o.jsx)(n.code,{children:"Book"})," as a parameter."]}),"\n",(0,o.jsx)(n.p,{children:"The return type varies with the change of the parameter type to achieve querying any DTO type and hand over the decision of the DTO type to the upper caller."}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"\u2778 \u277b: Let Jimmer query data of the specified type"}),"\n",(0,o.jsxs)(n.admonition,{type:"tip",children:[(0,o.jsx)(n.mdxAdmonitionTitle,{}),(0,o.jsxs)(n.p,{children:["The DTO type internally includes a ",(0,o.jsx)(n.code,{children:"Fetcher"})," matching the shape. First, entity data structures matching the shape are queried through this ",(0,o.jsx)(n.code,{children:"Fetcher"}),", and then automatically converted to DTO types."]})]}),"\n"]}),"\n"]}),"\n",(0,o.jsx)(n.h3,{id:"try-new-bookrepository",children:"Try New BookRepository"}),"\n",(0,o.jsxs)(n.p,{children:["Take ",(0,o.jsx)(n.code,{children:"bookRepository.findById"})," as an example"]}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["Query relatively simple ",(0,o.jsx)(n.code,{children:"SimpleBookView"})]}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",children:"System.out.println(\n bookRepository.findBookById(\n 1L, \n // highlight-next-line\n SimpleBookView.class\n )\n);\n"})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",children:"println(\n bookRepository.findBookById(\n 1L, \n // highlight-next-line\n SimpleBookView::class\n )\n)\n"})})})]}),"\n",(0,o.jsx)(n.p,{children:"Print output:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-json",children:"// highlight-next-line\nSimpleBookView(\n id=1, \n name=Learning GraphQL\n)\n"})}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["Query relatively complex ",(0,o.jsx)(n.code,{children:"ComplexBookView"})]}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",children:"System.out.println(\n bookRepository.findBookById(\n 1L, \n // highlight-next-line\n ComplexBookView.class\n )\n);\n"})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",children:"println(\n bookRepository.findBookById(\n 1L, \n // highlight-next-line\n ComplexBookView::class\n )\n)\n"})})})]}),"\n",(0,o.jsx)(n.p,{children:"Print output:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-json",children:"// highlight-next-line\nComplexBookView(\n id=1, \n name=Learning GraphQL, \n edition=1, \n price=50.0, \n // highlight-next-line\n store=ComplexBookView.TargetOf_store(\n id=1, \n name=O'REILLY\n ), \n authors=[\n // highlight-next-line\n ComplexBookView.TargetOf_authors(\n id=1, \n firstName=Eve, \n lastName=Procello\n ),\n // highlight-next-line\n ComplexBookView.TargetOf_authors(\n id=2, \n firstName=Alex, \n lastName=Banks\n )\n ]\n)\n"})}),"\n"]}),"\n"]}),"\n",(0,o.jsx)(n.h2,{id:"write-bookcontroller",children:"Write BookController"}),"\n",(0,o.jsx)(n.p,{children:"Although the DTO language is more suitable for Java/Kotlin applications to use query results internally, you can also use them as return information for HTTP APIs without any difference from using ordinary POJOs."}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",metastring:'title="BookController.java"',children:'@RestController \npublic class BookController implements Fetchers { \n\n private final BookRepository bookRepository; \n\n public BookController(BookRepository bookRepository) {\n this.bookRepository = bookRepository;\n } \n\n @Nullable\n @GetMapping("/book/{id}")\n public ComplexBookView findBookById(@PathVariable("id") long id) {\n return bookRepository.findBookById(\n id, \n // highlight-next-line\n ComplexBookView.class\n );\n }\n\n @GetMapping("/books")\n public List findBooksByName(\n @RequestParam(name = "name", required = false) String name\n ) {\n return bookRepository.findBooksByName(\n name,\n // highlight-next-line \n SimpleBookView.class\n );\n }\n}\n'})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",metastring:'title="BookController.kt"',children:'@RestController\nclass BookController(\n private val bookRepository: BookRepository \n) { \n @GetMapping("/book/{id}")\n fun findBookById(\n @PathVariable id: Long\n ): ComplexBookView = \n bookRepository.findBookById(\n id, \n // highlight-next-line \n ComplexBookView::class\n )\n\n @GetMapping("/books")\n fun findBooksByName( \n @RequestParam(required = false) name: String \n ): List = \n bookRepository.findBooksByName(\n name,\n // highlight-next-line \n SimpleBookView::class\n ) \n}\n'})})})]}),"\n",(0,o.jsx)(n.h2,{id:"document-comments",children:"Document Comments"}),"\n",(0,o.jsxs)(n.p,{children:["In the ",(0,o.jsx)(n.a,{href:"./entity",children:"previous article"}),", we mentioned that Jimmer can copy the document comments in Java/Kotlin code to the client Api, whether it is OpenApi online documentation or generated TypeScript code."]}),"\n",(0,o.jsx)(n.p,{children:"The method introduced in this article has the same functionality, but it needs to be explained that the types and properties in the DTO language support document comments like Java/Kotlin types, so the DTO language can override Java/Kotlin document comments. For example, the original entity definition is as follows"}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",children:"//highlight-start\n/**\n * The book entity\n */\n//highlight-end\n@Entity\npublic interface Book {\n\n //highlight-start\n /**\n * The name of book entity\n */\n //highlight-end\n String name();\n\n ...Omit other members...\n}\n"})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",children:"//highlight-start\n/**\n * The book entity\n */ \n//highlight-end\n@Entity\ninterface Book {\n\n //highlight-start\n /**\n * The name of book entity\n */\n //highlight-end\n val price: BigDecimal\n\n ...Omit other members...\n}\n"})})})]}),"\n",(0,o.jsx)(n.p,{children:"The document comments here are the original document comments."}),"\n",(0,o.jsxs)(n.p,{children:["The ",(0,o.jsx)(n.a,{href:"/jimmer-doc/docs/object/view/dto-language",children:"DTO Language"})," also supports document comments. For example:"]}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-json",metastring:'title="Book.Dto" ',children:"export com.yourcompany.yourproject.model.Book \n -> package com.yourcompany.yourproject.model.dto\n\n//highlight-start \n/**\n * Simple book dto\n */ \n//highlight-end\nSimpleBookView {\n\n //highlight-start\n /**\n * The name of simple book dto\n */\n //highlight-end \n name\n\n ...Omit other members...\n}\n\n...Omit other DTO definitions...\n"})}),"\n",(0,o.jsxs)(n.admonition,{type:"info",children:[(0,o.jsxs)(n.p,{children:["The document comment of the ",(0,o.jsx)(n.a,{href:"/jimmer-doc/docs/object/view/dto-language",children:"DTO Language"})," has higher priority."]}),(0,o.jsx)(n.p,{children:"That is, the document comments in the DTO language can override the document comments of the original entity, finally it is used to generate OpenApi documentation or TypeScript code."})]}),"\n",(0,o.jsx)(n.h2,{id:"flat-association-id",children:"Flat Association ID"}),"\n",(0,o.jsxs)(n.p,{children:["If the associated object only has the ",(0,o.jsx)(n.code,{children:"id"})," property, the associated Id will be better than the associated object. For example:"]}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"Using associated objects will lead to a large number of objects with only id properties, making the results slightly redundant:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-json",children:'{\n "id": 1, \n "name": "Learning GraphQL",\n "edition": 1,\n "price": 50.00, \n "store": { \n // highlight-next-line\n "id": 1 \n },\n "authors": [{\n // highlight-next-line \n "id": 1\n }, {\n // highlight-next-line\n "id": 2 \n }]\n}\n'})}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"Using associated Ids makes the results relatively concise:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-json",children:'{\n "id": 1,\n "name": "Learning GraphQL", \n "edition": 1,\n "price": 50.00, \n // highlight-next-line\n "storeId": 1, \n // highlight-next-line\n "authorIds": [1, 2] \n}\n'})}),"\n"]}),"\n"]}),"\n",(0,o.jsxs)(n.p,{children:["If you choose to return DTO ",(0,o.jsxs)(n.em,{children:["(instead of directly returning entities as in ",(0,o.jsx)(n.a,{href:"./entity",children:"the previous article"}),")"]}),", you can define the following DTO code:"]}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:'language-title="Book.dto"',children:"export com.yourcompany.yourproject.model.Book \n -> package com.yourcompany.yourproject.model.dto\n\nShallowBookView { \n #allScalars(this) \n #highlight-next-line\n id(store)\n #highlight-next-line \n id(authors) as authorIds \n} \n\n...Omit other DTO definitions...\n"})}),"\n",(0,o.jsx)(n.p,{children:"After compilation, the following code is generated:"}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",metastring:'title="ShallowBookView.java" ',children:'// highlight-next-line\n@GeneratedBy( \n file = "/src/main/dto/Book.dto" \n)\npublic class ShallowBookView implements View { \n \n private long id; \n\n @NotNull \n private String name; \n\n private int edition; \n\n @NotNull\n private BigDecimal price; \n\n @Nullable\n // highlight-next-line\n private Long storeId; \n\n @NotNull\n // highlight-next-line\n private List authorIds; \n\n ...Omit other members...\n}\n'})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",metastring:'title="ShallowBookView.kt"',children:'// highlight-next-line \n@GeneratedBy( \n file = "/src/main/dto/Book.dto" \n)\ndata class ShallowBookView(\n val id: Long,\n val name: String,\n val edition: Int,\n val price: BigDecimal, \n // highlight-next-line\n val storeId: Long?,\n // highlight-next-line\n val authorIds: List \n): View { \n ...Omit other members... \n}\n'})})})]}),"\n",(0,o.jsx)(n.h2,{id:"flat-associated-objects",children:"Flat Associated Objects"}),"\n",(0,o.jsx)(n.p,{children:"A large part of server development teams will deal with a type of frontend development team who do not accept data structures composed of associated multiple objects, and only want to accept a huge single object. So they require all non-collection associations to be flattened. That is:"}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"They do not accept structured return information:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-json",children:'{\n "prop1": 1,\n "prop2": 2, \n "a": {\n "prop1": 3,\n "prop2": 4, \n "b": {\n "prop1": 5,\n "prop2": 6, \n }\n },\n "c": {\n "prop1": 7, \n "prop2": 8,\n "d": {\n "prop1": 9,\n "prop2": 10,\n } \n }\n}\n'})}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"Insist on asking for such flat data:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-json",children:'{ \n "prop1": 1, \n "prop2": 2, \n "aProp1": 3, \n "aProp2": 4, \n "aBProp1": 5, \n "abProp2": 6, \n "cProp1": 7, \n "cProp2": 8, \n "cdProp1": 9, \n "cdProp2": 10 \n}\n'})}),"\n"]}),"\n"]}),"\n",(0,o.jsx)(n.p,{children:"In fact, such flat non-structured data is a disaster for client programs that need state management. But such frontend teams only do UI rendering without state management, so they do not realize this problem and insist on it very much."}),"\n",(0,o.jsx)(n.p,{children:"When you can't argue but need to complete the task quickly, write DTO code as follows:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-sh",metastring:'title="Book.dto"',children:"export com.yourcompany.yourproject.model.Book \n -> package com.yourcompany.yourproject.model.dto\n\nFlatBookView { \n #allScalars(this) \n flat(store) { \u2776\n as(^ -> store) { \u2777 \n #allScalar(this) \n }\n } \n} \n\n...Omit other DTO definitions...\n"})}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u2776 The ",(0,o.jsx)(n.code,{children:"flat"})," function means to flatten the properties of the associated object pointed to by the ",(0,o.jsx)(n.code,{children:"Book.store"})," one-to-many association to the current object."]}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u2777 For the properties of the associated object, the property name needs to be changed after being flattened to the current object. Prefix the old property name with ",(0,o.jsx)(n.code,{children:"store"}),". For example, ",(0,o.jsx)(n.code,{children:"name"})," -> ",(0,o.jsx)(n.code,{children:"storeName"}),"."]}),"\n"]}),"\n"]}),"\n",(0,o.jsx)(n.p,{children:"After compilation, the following code is generated:"}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",metastring:'title="FlatBookView.java" ',children:'// highlight-next-line\n@GeneratedBy( \n file = "/src/main/dto/Book.dto" \n)\npublic class FlatBookView implements View { \n \n private long id; \n\n @NotNull\n private String name; \n\n private int edition; \n\n @NotNull\n private BigDecimal price; \n\n @Nullable\n // highlight-next-line \n private Long storeId; \n\n @Nullable\n // highlight-next-line\n private String storeName; \n\n @Nullable\n // highlight-next-line\n private String storeWebsite; \n\n ...Omit other members...\n}\n'})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",metastring:'title="FlatBookView.kt" ',children:'// highlight-next-line \n@GeneratedBy( \n file = "/src/main/dto/Book.dto" \n)\ndata class FlatBookView( \n val id: Long,\n val name: String,\n val edition: Int,\n val price: BigDecimal,\n // highlight-next-line\n val storeId: Long?,\n // highlight-next-line\n val storeName: String?,\n // highlight-next-line\n val storeWebsite: String?\n): View { \n ...Omit other members... \n}\n'})})})]}),"\n",(0,o.jsxs)(n.blockquote,{children:["\n",(0,o.jsxs)(n.p,{children:["Here, the flattened properties are all nullable, because the ",(0,o.jsx)(n.code,{children:"Book.store"})," association itself allows null."]}),"\n"]})]})}function u(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(A,{...e})}):A(e)}},90846:(e,n,t)=>{t.d(n,{A:()=>k});var o,i,l,r,a,s,c,d,h,A,u,p,m,g,x,f,j,b=t(96540);function y(){return y=Object.assign?Object.assign.bind():function(e){for(var n=1;n{let{title:n,titleId:t,...k}=e;return b.createElement("svg",y({width:431,height:202,xmlns:"http://www.w3.org/2000/svg","aria-labelledby":t},k),n?b.createElement("title",{id:t},n):null,o||(o=b.createElement("path",{d:"M25 29q0-4 4-4h77q4 0 4 4v25q0 4-4 4H29q-4 0-4-4Z",stroke:"rgba(33,41,48,1)",strokeWidth:2,fill:"#fff"})),i||(i=b.createElement("text",{fontFamily:"\\u5FAE\\u8F6F\\u96C5\\u9ED1",textAnchor:"middle",fontSize:13,fill:"#323232",fontWeight:400,y:5.875,transform:"translate(25 25)"},b.createElement("tspan",{dy:16,x:42.5},b.createElement("tspan",null,"BookStore")))),l||(l=b.createElement("path",{d:"M173 29q0-4 4-4h77q4 0 4 4v25q0 4-4 4h-77q-4 0-4-4Z",stroke:"rgba(33,41,48,1)",strokeWidth:2,fill:"#fff"})),r||(r=b.createElement("text",{fontFamily:"\\u5FAE\\u8F6F\\u96C5\\u9ED1",textAnchor:"middle",fontSize:13,fill:"#323232",fontWeight:400,y:5.875,transform:"translate(173 25)"},b.createElement("tspan",{dy:16,x:42.5},b.createElement("tspan",null,"Book")))),a||(a=b.createElement("path",{d:"M321 29q0-4 4-4h77q4 0 4 4v25q0 4-4 4h-77q-4 0-4-4Z",stroke:"rgba(33,41,48,1)",strokeWidth:2,fill:"#fff"})),s||(s=b.createElement("text",{fontFamily:"\\u5FAE\\u8F6F\\u96C5\\u9ED1",textAnchor:"middle",fontSize:13,fill:"#323232",fontWeight:400,y:5.875,transform:"translate(321 25)"},b.createElement("tspan",{dy:16,x:42.5},b.createElement("tspan",null,"Author")))),c||(c=b.createElement("path",{d:"M25 148q0-4 4-4h79q4 0 4 4v25q0 4-4 4H29q-4 0-4-4Z",stroke:"rgba(33,41,48,1)",strokeWidth:2,fill:"#fff"})),d||(d=b.createElement("text",{fontFamily:"\\u5FAE\\u8F6F\\u96C5\\u9ED1",textAnchor:"middle",fontSize:13,fill:"#323232",fontWeight:400,y:5.875,transform:"translate(25 144)"},b.createElement("tspan",{dy:16,x:43.5},b.createElement("tspan",null,"TreeNode")))),h||(h=b.createElement("path",{d:"M111 42h61",stroke:"#7f7f7f",strokeWidth:2,fill:"none"})),A||(A=b.createElement("path",{fill:"#fff",d:"M131 34h21v16h-21z"})),u||(u=b.createElement("text",{fontFamily:"\\u5FAE\\u8F6F\\u96C5\\u9ED1",textAnchor:"middle",fontSize:13,fill:"#323232",fontWeight:400,y:31.375},b.createElement("tspan",{dy:16,x:141.5},b.createElement("tspan",null,"0:N")))),p||(p=b.createElement("path",{d:"M259 42h61",stroke:"#7f8b98",strokeWidth:2,fill:"none"})),m||(m=b.createElement("path",{fill:"#fff",d:"M277.5 34h24v16h-24z"})),g||(g=b.createElement("text",{fontFamily:"\\u5FAE\\u8F6F\\u96C5\\u9ED1",textAnchor:"middle",fontSize:13,fill:"#323232",fontWeight:400,y:31.375},b.createElement("tspan",{dy:16,x:289.5},b.createElement("tspan",null,"M:N")))),x||(x=b.createElement("path",{d:"m68.983 143-.483-29H142v47h-29",stroke:"#7f8b98",strokeWidth:2,fill:"none"})),f||(f=b.createElement("path",{fill:"#fff",d:"M118.248 106h21v16h-21z"})),j||(j=b.createElement("text",{fontFamily:"\\u5FAE\\u8F6F\\u96C5\\u9ED1",textAnchor:"middle",fontSize:13,fill:"#323232",fontWeight:400,y:103.375},b.createElement("tspan",{dy:16,x:128.748},b.createElement("tspan",null,"0:N")))))}},19365:(e,n,t)=>{t.d(n,{A:()=>r});t(96540);var o=t(18215);const i={tabItem:"tabItem_Ymn6"};var l=t(74848);function r(e){let{children:n,hidden:t,className:r}=e;return(0,l.jsx)("div",{role:"tabpanel",className:(0,o.A)(i.tabItem,r),hidden:t,children:n})}},11470:(e,n,t)=>{t.d(n,{A:()=>k});var o=t(96540),i=t(18215),l=t(23104),r=t(56347),a=t(205),s=t(57485),c=t(31682),d=t(89466);function h(e){return o.Children.toArray(e).filter((e=>"\n"!==e)).map((e=>{if(!e||(0,o.isValidElement)(e)&&function(e){const{props:n}=e;return!!n&&"object"==typeof n&&"value"in n}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}function A(e){const{values:n,children:t}=e;return(0,o.useMemo)((()=>{const e=n??function(e){return h(e).map((e=>{let{props:{value:n,label:t,attributes:o,default:i}}=e;return{value:n,label:t,attributes:o,default:i}}))}(t);return function(e){const n=(0,c.X)(e,((e,n)=>e.value===n.value));if(n.length>0)throw new Error(`Docusaurus error: Duplicate values "${n.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[n,t])}function u(e){let{value:n,tabValues:t}=e;return t.some((e=>e.value===n))}function p(e){let{queryString:n=!1,groupId:t}=e;const i=(0,r.W6)(),l=function(e){let{queryString:n=!1,groupId:t}=e;if("string"==typeof n)return n;if(!1===n)return null;if(!0===n&&!t)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return t??null}({queryString:n,groupId:t});return[(0,s.aZ)(l),(0,o.useCallback)((e=>{if(!l)return;const n=new URLSearchParams(i.location.search);n.set(l,e),i.replace({...i.location,search:n.toString()})}),[l,i])]}function m(e){const{defaultValue:n,queryString:t=!1,groupId:i}=e,l=A(e),[r,s]=(0,o.useState)((()=>function(e){let{defaultValue:n,tabValues:t}=e;if(0===t.length)throw new Error("Docusaurus error: the component requires at least one children component");if(n){if(!u({value:n,tabValues:t}))throw new Error(`Docusaurus error: The has a defaultValue "${n}" but none of its children has the corresponding value. Available values are: ${t.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return n}const o=t.find((e=>e.default))??t[0];if(!o)throw new Error("Unexpected error: 0 tabValues");return o.value}({defaultValue:n,tabValues:l}))),[c,h]=p({queryString:t,groupId:i}),[m,g]=function(e){let{groupId:n}=e;const t=function(e){return e?`docusaurus.tab.${e}`:null}(n),[i,l]=(0,d.Dv)(t);return[i,(0,o.useCallback)((e=>{t&&l.set(e)}),[t,l])]}({groupId:i}),x=(()=>{const e=c??m;return u({value:e,tabValues:l})?e:null})();(0,a.A)((()=>{x&&s(x)}),[x]);return{selectedValue:r,selectValue:(0,o.useCallback)((e=>{if(!u({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);s(e),h(e),g(e)}),[h,g,l]),tabValues:l}}var g=t(92303);const x={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};var f=t(74848);function j(e){let{className:n,block:t,selectedValue:o,selectValue:r,tabValues:a}=e;const s=[],{blockElementScrollPositionUntilNextRender:c}=(0,l.a_)(),d=e=>{const n=e.currentTarget,t=s.indexOf(n),i=a[t].value;i!==o&&(c(n),r(i))},h=e=>{let n=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":{const t=s.indexOf(e.currentTarget)+1;n=s[t]??s[0];break}case"ArrowLeft":{const t=s.indexOf(e.currentTarget)-1;n=s[t]??s[s.length-1];break}}n?.focus()};return(0,f.jsx)("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,i.A)("tabs",{"tabs--block":t},n),children:a.map((e=>{let{value:n,label:t,attributes:l}=e;return(0,f.jsx)("li",{role:"tab",tabIndex:o===n?0:-1,"aria-selected":o===n,ref:e=>s.push(e),onKeyDown:h,onClick:d,...l,className:(0,i.A)("tabs__item",x.tabItem,l?.className,{"tabs__item--active":o===n}),children:t??n},n)}))})}function b(e){let{lazy:n,children:t,selectedValue:i}=e;const l=(Array.isArray(t)?t:[t]).filter(Boolean);if(n){const e=l.find((e=>e.props.value===i));return e?(0,o.cloneElement)(e,{className:"margin-top--md"}):null}return(0,f.jsx)("div",{className:"margin-top--md",children:l.map(((e,n)=>(0,o.cloneElement)(e,{key:n,hidden:e.props.value!==i})))})}function y(e){const n=m(e);return(0,f.jsxs)("div",{className:(0,i.A)("tabs-container",x.tabList),children:[(0,f.jsx)(j,{...e,...n}),(0,f.jsx)(b,{...e,...n})]})}function k(e){const n=(0,g.A)();return(0,f.jsx)(y,{...e,children:h(e.children)},String(n))}},62601:(e,n,t)=>{t.d(n,{$1:()=>p,A2:()=>N,Aw:()=>B,Es:()=>x,GH:()=>b,Pp:()=>E,RZ:()=>m,UF:()=>A,X0:()=>T,_p:()=>V,ci:()=>u,eM:()=>v,i1:()=>f,j$:()=>q,j4:()=>w,js:()=>g,ko:()=>y,pe:()=>j,vO:()=>k,w0:()=>C,xk:()=>h});var o=t(96540),i=t(3246),l=t(99912),r=t(16712),a=t(1489),s=t(92303),c=t(74848);const d=(0,o.memo)((e=>{let{src:n}=e;const t=(0,r.o)(),[d,h]=(0,o.useState)(!1),A=(0,o.useCallback)((()=>h(!0)),[]),u=(0,s.A)();return u&&!function(){const e=D;if("boolean"==typeof e)return e;var n=document.createElement("canvas");const t=n.getContext&&n.getContext("2d")&&0==n.toDataURL("image/webp").indexOf("data:image/webp");return D=t,t}()&&n.endsWith(".webp")?(0,c.jsx)(l.A,{security:"error",children:t?"\u65e0\u6cd5\u5c55\u793a\u56fe\u7247\uff0c\u8bf7\u4f7f\u7528\u652f\u6301webp\u7684\u6d4f\u89c8\u5668":"Unable to display image, please use a browser that supports webp"}):(0,c.jsxs)(c.Fragment,{children:[u&&!d&&(0,c.jsxs)(a.Ay,{container:!0,direction:"column",alignItems:"center",children:[(0,c.jsx)(a.Ay,{item:!0,children:(0,c.jsx)(i.A,{})}),(0,c.jsx)(a.Ay,{item:!0,children:t?"\u52a0\u8f7d\u56fe\u7247\u4e2d":"Loading image"})]}),(0,c.jsx)("img",{src:n,onLoad:A})]})})),h=(0,o.memo)((()=>(0,c.jsx)(d,{src:O}))),A=(0,o.memo)((()=>(0,c.jsx)(d,{src:S}))),u=(0,o.memo)((()=>(0,c.jsx)(d,{src:L}))),p=(0,o.memo)((()=>(0,c.jsx)(d,{src:I}))),m=(0,o.memo)((()=>(0,c.jsx)(d,{src:F}))),g=(0,o.memo)((()=>(0,c.jsx)(d,{src:P}))),x=(0,o.memo)((()=>(0,c.jsx)(d,{src:R}))),f=(0,o.memo)((()=>(0,c.jsx)(d,{src:K}))),j=(0,o.memo)((()=>(0,c.jsx)(d,{src:J}))),b=(0,o.memo)((()=>(0,c.jsx)(d,{src:G}))),y=(0,o.memo)((()=>(0,c.jsx)(d,{src:H}))),k=(0,o.memo)((()=>(0,c.jsx)(d,{src:M}))),v=(0,o.memo)((()=>(0,c.jsx)(d,{src:Q}))),B=(0,o.memo)((()=>(0,c.jsx)(d,{src:W}))),w=(0,o.memo)((()=>(0,c.jsx)(d,{src:Z}))),N=(0,o.memo)((()=>(0,c.jsx)(d,{src:z}))),V=(0,o.memo)((()=>(0,c.jsx)(d,{src:X}))),C=(0,o.memo)((()=>(0,c.jsx)(d,{src:U}))),T=(0,o.memo)((()=>(0,c.jsx)(d,{src:Y}))),E=(0,o.memo)((()=>(0,c.jsx)(d,{src:_}))),q=(0,o.memo)((()=>(0,c.jsx)(d,{src:$})));let D;const O=t(32100).A,S=t(77089).A,L=t(33823).A,I=t(19682).A,F=t(53491).A,P=t(31191).A,R=t(75546).A,K=t(3225).A,J=t(29686).A,G=t(9950).A,H=t(55421).A,M=t(52500).A,Q=t(48608).A,W=(t(51722).A,t(90846).A,t(86935).A),Z=t(5268).A,z=t(89477).A,X=t(9159).A,U=t(91225).A,Y=(t(52077).A,t(14604).A),_=t(63234).A,$=t(25448).A},66971:(e,n,t)=>{t.d(n,{a:()=>m});var o=t(96540),i=t(72774),l=t(63051),r=t(28968),a=t(48875),s=t(44676),c=t(47859),d=t(4671),h=t(99343),A=t(7324),u=t(39781),p=t(74848);const m=(0,o.memo)((e=>{let{open:n,fullScreen:t=!1,title:a,maxWidth:m="md",onClose:x,children:f}=e;const[j,b]=(0,o.useState)(t),y=(0,o.useCallback)((()=>{b((e=>!e))}),[]);return(0,p.jsxs)(l.A,{open:n,onClose:x,fullScreen:j,TransitionComponent:g,maxWidth:m,children:[(0,p.jsx)(i.A,{sx:{position:"relative"},children:(0,p.jsxs)(s.A,{children:[(0,p.jsx)(c.A,{sx:{ml:2,flex:1},variant:"h6",component:"div",children:a}),(0,p.jsx)(d.A,{onClick:y,style:{color:"white"},children:j?(0,p.jsx)(A.A,{}):(0,p.jsx)(h.A,{})}),(0,p.jsx)(d.A,{"aria-label":"close",onClick:x,style:{color:"white"},children:(0,p.jsx)(u.A,{})})]})}),(0,p.jsx)(r.A,{children:f})]})})),g=o.forwardRef((function(e,n){return(0,p.jsx)(a.A,{direction:"up",ref:n,...e})}))},74400:(e,n,t)=>{t.d(n,{l:()=>a});var o=t(96540),i=t(67512),l=t(66971),r=t(74848);const a=(0,o.memo)((e=>{let{buttonText:n,fullScreen:t=!1,title:a=n,variant:s="outlined",maxWidth:c,useOriginalText:d=!0,children:h}=e;const[A,u]=(0,o.useState)(!1),p=(0,o.useCallback)((e=>{u(!0),e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}),[]),m=(0,o.useCallback)((()=>{u(!1)}),[]),g=d?{textTransform:"none"}:{};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(i.A,{"data-is-view-more-button":"true",onClick:p,variant:s,size:"small",style:g,children:n}),(0,r.jsx)(l.a,{open:A,onClose:m,title:a,maxWidth:c,fullScreen:t,children:h})]})}))},16712:(e,n,t)=>{t.d(n,{o:()=>i});var o=t(44586);function i(){const{i18n:e}=(0,o.A)(),n=e.currentLocale;return"zh"===n||"zh_cn"===n||"zh_CN"==n}},33823:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/association-cache-dbeabc0a449a23469331c7bd822e1540.webp"},19682:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/calculated-cache-b73a5f78ce1bc73348621025d583aa47.webp"},75546:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/cloud-4029a49b29895e2ef7f199be53c647c8.webp"},31191:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/consistency-782cc1bfaf8d5f2c50a6cf4fd290c383.webp"},32100:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/dto-explosion-f0066fdbe10e41d79a21628460e40468.webp"},3225:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/generated-java-32e67690ba94b4f0d63bbd248844dd71.webp"},29686:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/generated-kt-2d53fe7a5ad2ee91828171f07954eea8.webp"},9950:(e,n,t)=>{t.d(n,{A:()=>o});const o="data:image/webp;base64,UklGRlwDAABXRUJQVlA4WAoAAAAoAAAAIwAAHwAASUNDUBQCAAAAAAIUYXBwbAQAAABtbnRyUkdCIFhZWiAH5wADABkAEgA3ABdhY3NwQVBQTAAAAABBUFBMAAAAAAAAAAAAAAAAAAAAAAAA9tYAAQAAAADTLWFwcGzwmkVkcoBXfc7VHI8vo5G3AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApkZXNjAAAA/AAAAGVjcHJ0AAABZAAAACN3dHB0AAABiAAAABRyWFlaAAABnAAAABRnWFlaAAABsAAAABRiWFlaAAABxAAAABRyVFJDAAAB2AAAABBjaGFkAAAB6AAAACxiVFJDAAAB2AAAABBnVFJDAAAB2AAAABBkZXNjAAAAAAAAAAtVMjdVMkc2UjRCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHRleHQAAAAAQ29weXJpZ2h0IEFwcGxlIEluYy4sIDIwMjMAAFhZWiAAAAAAAADz2AABAAAAARYIWFlaIAAAAAAAAHLJAAA6rAAAAZFYWVogAAAAAAAAXQgAALT9AAAPUFhZWiAAAAAAAAAnBQAAEFYAAMJMcGFyYQAAAAAAAAAAAAH2BHNmMzIAAAAAAAELtwAABZb///NXAAAHKQAA/df///u3///9pgAAA9oAAMD2VlA4IK4AAABQBgCdASokACAAPo04mEelIyKhMBVdUKARiWIAxPLgLf/smI7f4opUf8y4Na5nNiiOM9fdUSb/n/4qAAD+76lTf73FZ+2hhhPQzsV9rZahOwFWYzUW6kNtghYCTvo/PpeTwWM9j+YlVt+tUxq84FN9eUFzu7J4H42kzR6StHV7YV1WZG+EvIW3H4gjv94UShhqQ2cvrX/y91uP4+a/hCq3skB3vjdta+qP9EVAAABFWElGbAAAAE1NACoAAAAIAAQBGgAFAAAAAQAAAD4BGwAFAAAAAQAAAEYBKAADAAAAAQACAACHaQAEAAAAAQAAAE4AAAAAAAAAkAAAAAEAAACQAAAAAQACoAIABAAAAAEAAAAkoAMABAAAAAEAAAAgAAAAAA=="},52500:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/graphiql-headers-676e3ff2a6da158f8a8b2b0d43633896.webp"},53491:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/multi-view-cache-57a9e6ec32df6b23eceac9376d0268d1.webp"},77089:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/object-cache-5a67daa9966fe7b728af64423333ba74.webp"},25448:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/complex-9425049a58775c669ef7f9c8826e0b2a.webp"},14604:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/openapi-e3db15b0d20a1e447225e55a4983c253.webp"},63234:(e,n,t)=>{t.d(n,{A:()=>o});const o="data:image/webp;base64,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"},52077:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/qq-group-0f9be0ea42cca1506ad211af4ad0dbc3.webp"},48608:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/save-d37c62a7516ccbf2bc561f935cf77de2.webp"},51722:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/shape-ba5246fcd39e013ea28a73144614bd9d.webp"},55421:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/swagger-authorize-144b7e355d1d59381a6fa660b743e2a7.webp"},86935:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/api-2a7966c9db85aec24ae0d1fe0cb62c17.webp"},5268:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/code-bfdfb727fb3ccc54d12fe6a4c5ddc58f.webp"},89477:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/family-b9c1857991f5f8d662444aa9f6e2b85f.webp"},9159:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/field-05834b18f87cfe96cfd1d1a72750e9e5.webp"},91225:(e,n,t)=>{t.d(n,{A:()=>o});const o="data:image/webp;base64,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"}}]); \ No newline at end of file diff --git a/assets/js/c9e80a64.be2fe4ea.js b/assets/js/c9e80a64.be2fe4ea.js deleted file mode 100644 index fff5364c7..000000000 --- a/assets/js/c9e80a64.be2fe4ea.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkdocusaurus_code=self.webpackChunkdocusaurus_code||[]).push([[663],{39889:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>s,default:()=>u,frontMatter:()=>a,metadata:()=>c,toc:()=>h});var o=t(74848),i=t(28453),l=t(11470),r=t(19365);t(74400),t(62601);const a={sidebar_position:2,title:"Return Output DTO"},s=void 0,c={id:"quick-view/fetch/export/dto",title:"Return Output DTO",description:"Java/Kotlin Applications Use Query Results",source:"@site/docs/quick-view/fetch/export/dto.mdx",sourceDirName:"quick-view/fetch/export",slug:"/quick-view/fetch/export/dto",permalink:"/jimmer-doc/docs/quick-view/fetch/export/dto",draft:!1,unlisted:!1,editUrl:"https://github.com/babyfish-ct/jimmer-doc/edit/main/docs/quick-view/fetch/export/dto.mdx",tags:[],version:"current",sidebarPosition:2,frontMatter:{sidebar_position:2,title:"Return Output DTO"},sidebar:"tutorialSidebar",previous:{title:"Directly Return Entities",permalink:"/jimmer-doc/docs/quick-view/fetch/export/entity"},next:{title:"Comparison",permalink:"/jimmer-doc/docs/quick-view/fetch/export/comparison"}},d={},h=[{value:"Java/Kotlin Applications Use Query Results",id:"javakotlin-applications-use-query-results",level:2},{value:"DTO Language",id:"dto-language",level:2},{value:"DTO Language Plugin",id:"dto-language-plugin",level:3},{value:"Define DTO Files",id:"define-dto-files",level:3},{value:"View Generated DTOs",id:"view-generated-dtos",level:3},{value:"New BookRepository",id:"new-bookrepository",level:2},{value:"Review Old BookRepository",id:"review-old-bookrepository",level:3},{value:"Write New BookRepository",id:"write-new-bookrepository",level:3},{value:"Try New BookRepository",id:"try-new-bookrepository",level:3},{value:"Write BookController",id:"write-bookcontroller",level:2},{value:"Document Comments",id:"document-comments",level:2},{value:"Flat Association ID",id:"flat-association-id",level:2},{value:"Flat Associated Objects",id:"flat-associated-objects",level:2}];function A(e){const n={a:"a",admonition:"admonition",blockquote:"blockquote",code:"code",em:"em",h2:"h2",h3:"h3",li:"li",mdxAdmonitionTitle:"mdxAdmonitionTitle",ol:"ol",p:"p",pre:"pre",ul:"ul",...(0,i.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.h2,{id:"javakotlin-applications-use-query-results",children:"Java/Kotlin Applications Use Query Results"}),"\n",(0,o.jsxs)(n.p,{children:["In the ",(0,o.jsx)(n.a,{href:"./entity",children:"previous article"}),", we introduced that the web service does not need to define DTO types, directly returns entities, and uses ",(0,o.jsx)(n.code,{children:"@FetchBy"})," annotations to restore all DTO type definitions in automatically generated client code."]}),"\n",(0,o.jsx)(n.p,{children:"However, what if a query result is not returned to the Web remote client, but the server itself uses it?"}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",children:'List books = bookRepository.findBooksByName(\n "graphql",\n Fetchers.BOOK_FETCHER \u2776\n .name()\n .edition()\n);\nfor (Book book : books) {\n System.out.println("--------");\n System.out.println("Id: " + book.id());\n System.out.println("Name: " + book.id());\n System.out.println("Edition: " + book.id());\n System.out.println("Price:" + book.price()); \u2777\n}\n'})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",children:'val books = bookRepository.findBooksByName(\n "graphql",\n newFetcher(Book::class).by { \u2776\n name()\n edition()\n } \n)\nfor (book in books) {\n println("--------")\n println("Id: ${book.id}")\n println("Name: ${book.name}")\n println("Edition: ${book.edition}") \n println("Price: ${book.price}") \u2777\n} \n'})})})]}),"\n",(0,o.jsx)(n.p,{children:"Here, there is no web service or remote call, it is just a call within the same JVM"}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u2776 Only queries three properties of the object: ",(0,o.jsx)(n.code,{children:"id"})," ",(0,o.jsx)(n.em,{children:"(implicit)"}),", ",(0,o.jsx)(n.code,{children:"name"})," and ",(0,o.jsx)(n.code,{children:"edition"})]}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u2777 Access the unqueried ",(0,o.jsx)(n.code,{children:"price"})," property of the ",(0,o.jsx)(n.code,{children:"book"})," object."]}),"\n",(0,o.jsx)(n.p,{children:"This erroneous access will cause an exception:"}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"Exception type: org.babyfish.jimmer.UnloadedException"}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:'Exception message: The property "com.yourcompany.yourproject.model.Book.price" is unloaded'}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,o.jsx)(n.p,{children:"It can be seen that it is not enough to only consider automatically defining DTO types in remote client APIs. When the JVM itself directly uses query results, if sufficient compile-time security is required, defining DTO types for Java/Kotlin will be inevitable and necessary to ensure better compile-time safety."}),"\n",(0,o.jsx)(n.h2,{id:"dto-language",children:"DTO Language"}),"\n",(0,o.jsx)(n.p,{children:"The mutual conversion between entity objects and DTO objects is a boring, labor-intensive and error-prone thing that is common pain point in information management software development. Although many frameworks are trying to mitigate this problem, development efficiency has remained unable to be improved qualitatively."}),"\n",(0,o.jsx)(n.p,{children:"In order to minimize the cost of DTO type creation, Jimmer introduces the DTO language, which supplements the Java/Kotlin type system and can quickly generate Java/Kotlin DTO type definitions at compile time."}),"\n",(0,o.jsxs)(n.blockquote,{children:["\n",(0,o.jsxs)(n.p,{children:["This article only provides a quick overview without detailed introduction. For complete information, please refer to ",(0,o.jsx)(n.a,{href:"/jimmer-doc/docs/object/view/dto-language",children:"DTO Language"})]}),"\n"]}),"\n",(0,o.jsx)(n.h3,{id:"dto-language-plugin",children:"DTO Language Plugin"}),"\n",(0,o.jsxs)(n.p,{children:["A jimmer user provide Intellij plugins for the DTO language. For details, see ",(0,o.jsx)(n.a,{href:"https://github.com/ClearPlume/jimmer-dto",children:"https://github.com/ClearPlume/jimmer-dto"})]}),"\n",(0,o.jsxs)(n.blockquote,{children:["\n",(0,o.jsx)(n.p,{children:"Installing the DTO language plugin is not required, but you can get a better development experience after installation, so it is recommended to install."}),"\n"]}),"\n",(0,o.jsx)(n.h3,{id:"define-dto-files",children:"Define DTO Files"}),"\n",(0,o.jsxs)(n.ol,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["For any Java/Kotlin project that needs to use the DTO language, create a subdirectory ",(0,o.jsx)(n.code,{children:"dto"})," under its ",(0,o.jsx)(n.code,{children:"src/main"})," directory. That is, ",(0,o.jsx)(n.code,{children:"src/main/dto"})," is where DTO files are stored."]}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["Create a ",(0,o.jsx)(n.code,{children:"Book.dto"})," file under ",(0,o.jsx)(n.code,{children:"src/main/dto"})," and enter the following code:"]}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:'language-sh="Book.dto"',children:"export com.yourcompany.yourproject.model.Book \n -> package com.yourcompany.yourproject.model.dto \n\nSimpleBookView { \n id \n name\n} \n\nComplexBookView { \n #allScalars(this)\n store { \n id \n name\n }\n authors {\n id\n firstName\n lastName \n }\n}\n"})}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["Compile the project ",(0,o.jsx)(n.em,{children:"(either use gradle/maven commands on the command line or click gradle/maven build on the right side of Intellij)"})," to generate related DTO types"]}),"\n"]}),"\n"]}),"\n",(0,o.jsx)(n.h3,{id:"view-generated-dtos",children:"View Generated DTOs"}),"\n",(0,o.jsxs)(n.p,{children:["After compilation, the following two types ",(0,o.jsx)(n.code,{children:"SimpleBookView"})," and ",(0,o.jsx)(n.code,{children:"ComplexView"})," will be generated automatically. The code for each is as follows:"]}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:(0,o.jsx)(n.code,{children:"SimpleBookView"})}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",metastring:'title="SimpleBookView.java" ',children:'// highlight-next-line \n@GeneratedBy( \u2776\n file = "/src/main/dto/Book.dto"\n)\npublic class SimpleBookView implements View { \u2777\n\n private long id; \n\n @NotNull \n private String name; \n\n public SimpleBookView(@NotNull Book base) { \u2778\n ...omitted...\n }\n\n @Override \n public Book toEntity() { \u2779\n ...omitted...\n } \n\n ...Omit getters and setters... \n\n ...Omit hashCode/equals/toString...\n\n ...Omit other members...\n}\n'})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",metastring:'title="SimpleBookView.kt" ',children:'// highlight-next-line\n@GeneratedBy( \u2776\n file = "/src/main/dto/Book.dto"\n)\ndata class SimpleBookView( \n val id: Long\n val name: String\n) : View { \u2777\n constructor(base: Book): \u2778 \n this(...omitted...)\n\n override fun toEntity(): Book = \u2779\n ...omitted... \n\n ...Omit other members...\n}\n'})})})]}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"\u2776 Reminds users that this is code automatically generated by Jimmer"}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u2777 Output DTO based on ",(0,o.jsx)(n.code,{children:"Book"})," entity needs to implement ",(0,o.jsx)(n.code,{children:"View"})," interface"]}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"\u2778 Converts entity to DTO"}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"\u2779 Converts DTO to entity"}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:(0,o.jsx)(n.code,{children:"ComplexBookView"})}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",metastring:'title="ComplexBookView.java"',children:'// highlight-next-line\n@GeneratedBy( \u2776\n file = "/src/main/dto/Book.dto"\n)\npublic class ComplexBookView implements View { \u2777\n\n private long id;\n\n @NotNull \n private String name;\n\n private int edition;\n\n @NotNull\n private BigDecimal price;\n\n @Nullable \n private TargetOf_store store; \n\n @NotNull\n private List authors; \n\n public ComplexBookView(@NotNull Book base) { \u2778 \n ...omitted... \n }\n\n @Override\n public Book toEntity() { \u2779\n ...omitted...\n } \n\n ...Omit getters and setters... \n\n ...Omit hashCode/equals/toString... \n\n ...Omit other members...\n\n public static class TargetOf_store implements View { \u277a\n\n private long id;\n\n @NotNull \n private String name;\n\n public TargetOf_store(@NotNull BookStore base) { \n ...omitted...\n } \n\n @Override\n public BookStore toEntity() { \n ...omitted...\n } \n\n ...Omit getters and setters...\n\n ...Omit hashCode/equals/toString...\n\n ...Omit other members...\n }\n\n public static class TargetOf_authors implements View { \u277b \n\n private long id;\n\n @NotNull \n private String firstName; \n\n @NotNull\n private String lastName;\n\n public TargetOf_authors(@NotNull Author base) {\n ...omitted...\n } \n\n @Override \n public Author toEntity() {\n ...omitted...\n } \n\n ...Omit getters and setters... \n\n ...Omit hashCode/equals/toString...\n\n ...Omit other members...\n }\n}\n'})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",metastring:'title="ComplexBookView.kt"',children:'// highlight-next-line\n@GeneratedBy( \u2776\n file = "/src/main/dto/Book.dto"\n)\ndata class ComplexBookView( \n val id: Long, \n val name: String,\n val edition: Int, \n val price: BigDecimal,\n val store: TargetOf_store?, \n val authors: List\n) : View { \u2777\n\n constructor(base: Book): \u2778 \n this(...omitted...)\n\n override fun toEntity(): Book = \u2779 \n ...omitted... \n\n data class TargetOf_store( \u277a\n val id: Long,\n val name: String \n ) : View { \n\n constructor(base: BookStore): \n this(...omitted...) \n\n override fun toEntity(): BookStore = \n ...omitted...\n }\n\n data class TargetOf_authors( \u277b\n val id: Long, \n val firstName: String,\n val lastName: String \n ) : View { \n\n constructor(base: Author): \n this(...omitted...) \n\n override fun toEntity(): Author = \n ...omitted...\n } \n}\n'})})})]}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"\u2776 Reminds users that this is code automatically generated by Jimmer"}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u2777 Output DTO based on ",(0,o.jsx)(n.code,{children:"Book"})," entity needs to implement ",(0,o.jsx)(n.code,{children:"View"})," interface"]}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"\u2778 Converts entity to DTO"}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"\u2779 Converts DTO to entity"}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u277a DTO definition of associated object referenced by many-to-one association ",(0,o.jsx)(n.code,{children:"Book.store"})]}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u277b DTO definition of associated object referenced by many-to-many association ",(0,o.jsx)(n.code,{children:"Book.autors"})]}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,o.jsx)(n.h2,{id:"new-bookrepository",children:"New BookRepository"}),"\n",(0,o.jsx)(n.h3,{id:"review-old-bookrepository",children:"Review Old BookRepository"}),"\n",(0,o.jsxs)(n.p,{children:["In the ",(0,o.jsx)(n.a,{href:"../feature#improved-repository",children:"Feature Introduction"})," article, we wrote a ",(0,o.jsx)(n.code,{children:"BookRepository"})," class"]}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",metastring:'title = "BookRepository.java"',children:"public class BookRepository {\n\n @Nullable\n public Book findBookById(\n long id, \n // highlight-next-line \n Fetcher fetcher\n ) {\n ...omitted...\n }\n\n public List findBooksByName(\n @Nullable String name, \n // highlight-next-line\n @Nullable Fetcher fetcher\n ) {\n ...omitted...\n }\n\n ...Omit other members...\n}\n"})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",metastring:'title="BookRepository.kt"',children:"class BookRepository(\n ...Omit other members... \n) {\n\n fun findBookById(\n id: Long, \n // highlight-next-line\n fetcher: Fetcher\n ): Book? = \n ...omitted...\n\n fun findBooksByName(\n name: String? = null,\n // highlight-next-line \n fetcher: Fetcher? = null\n ): List = \n ...omitted...\n}\n"})})})]}),"\n",(0,o.jsxs)(n.p,{children:["Each query method adds a parameter of type ",(0,o.jsx)(n.code,{children:"Fetcher"}),". We can use it to flexibly control the format of queried objects ",(0,o.jsx)(n.em,{children:"(that is, the shape of queried data structures)"}),"."]}),"\n",(0,o.jsxs)(n.p,{children:["This is the recommended usage. The Repository is only responsible for filtering, sorting, paging and other operations, but does not control the format of the returned data. Instead, it exposes the control of the data format through the ",(0,o.jsx)(n.code,{children:"Fetcher"})," parameter to allow upper layer business logic to decide."]}),"\n",(0,o.jsx)(n.h3,{id:"write-new-bookrepository",children:"Write New BookRepository"}),"\n",(0,o.jsxs)(n.p,{children:["Now, this ",(0,o.jsx)(n.code,{children:"BookRepository"})," no longer meets our requirements. Because we no longer want to query Jimmer entities, but want to query DTO types automatically generated by the DTO language, we need to modify it."]}),"\n",(0,o.jsxs)(n.p,{children:["However, we want ",(0,o.jsx)(n.code,{children:"BookRepository"})," to still maintain the excellent quality of exposing shape control externally. The modified code is as follows."]}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",metastring:'title = "BookRepository.java" ',children:"@Component\npublic class BookRepository {\n\n private final JSqlClient sqlClient; \n\n public BookRepository(JSqlClient sqlClient) {\n this.sqlClient = sqlClient;\n }\n\n @Nullable\n public > V findBookById( \u2776\n long id, \n // highlight-next-line \n Class viewType \u2777\n ) {\n return sqlClient.findById(\n viewType, \u2778 \n id\n );\n }\n\n public > List findBooksByName( \u2779\n @Nullable String name,\n // highlight-next-line\n Class viewType \u277a\n ) {\n BookTable table = Tables.BOOK_TABLE;\n return sqlClient\n .createQuery(table)\n .whereIf(\n name != null && !name.isEmpty(), \n table.name().ilike(name)\n )\n .select(\n table.fetch(viewType) \u277b\n )\n .execute();\n }\n} \n"})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",metastring:'title="BookRepository.kt"',children:"@Component \nclass BookRepository(\n private val sqlClient: KSqlClient \n) {\n\n fun > findBookById( \u2776\n id: Long, \n // highlight-next-line\n viewType: KClass \u2777\n ): V? = \n sqlClient.findById(\n viewType, \u2778\n id\n )\n\n fun > findBooksByName( \u2779\n name: String? = null,\n // highlight-next-line \n viewType: KClass \u277a\n ): List = \n sqlClient \n .createQuery(Book::class) {\n name?.takeIf { it.isNotEmpty() }?.let {\n where(table.name ilike it)\n }\n select(\n table.fetch(viewType) \u277b\n )\n }\n .execute()\n}\n"})})})]}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u2776 \u2779: ",(0,o.jsx)(n.code,{children:">"})," in java or ",(0,o.jsx)(n.code,{children:">"})," in kotlin defines a generic parameter ",(0,o.jsx)(n.code,{children:"V"})," representing any Output DTO type based on ",(0,o.jsx)(n.code,{children:"Book"}),"."]}),"\n",(0,o.jsxs)(n.p,{children:["For example: ",(0,o.jsx)(n.code,{children:"SimpleBookView"})," and ",(0,o.jsx)(n.code,{children:"ComplexBookView"})," generated above implement the ",(0,o.jsx)(n.code,{children:"View"})," interface."]}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u2777 \u277a: Use the type of any DTO based on ",(0,o.jsx)(n.code,{children:"Book"})," as a parameter."]}),"\n",(0,o.jsx)(n.p,{children:"The return type varies with the change of the parameter type to achieve querying any DTO type and hand over the decision of the DTO type to the upper caller."}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"\u2778 \u277b: Let Jimmer query data of the specified type"}),"\n",(0,o.jsxs)(n.admonition,{type:"tip",children:[(0,o.jsx)(n.mdxAdmonitionTitle,{}),(0,o.jsxs)(n.p,{children:["The DTO type internally includes a ",(0,o.jsx)(n.code,{children:"Fetcher"})," matching the shape. First, entity data structures matching the shape are queried through this ",(0,o.jsx)(n.code,{children:"Fetcher"}),", and then automatically converted to DTO types."]})]}),"\n"]}),"\n"]}),"\n",(0,o.jsx)(n.h3,{id:"try-new-bookrepository",children:"Try New BookRepository"}),"\n",(0,o.jsxs)(n.p,{children:["Take ",(0,o.jsx)(n.code,{children:"bookRepository.findById"})," as an example"]}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["Query relatively simple ",(0,o.jsx)(n.code,{children:"SimpleBookView"})]}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",children:"System.out.println(\n bookRepository.findBookById(\n 1L, \n // highlight-next-line\n SimpleBookView.class\n )\n);\n"})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",children:"println(\n bookRepository.findBookById(\n 1L, \n // highlight-next-line\n SimpleBookView::class\n )\n)\n"})})})]}),"\n",(0,o.jsx)(n.p,{children:"Print output:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-json",children:"// highlight-next-line\nSimpleBookView(\n id=1, \n name=Learning GraphQL\n)\n"})}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["Query relatively complex ",(0,o.jsx)(n.code,{children:"ComplexBookView"})]}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",children:"System.out.println(\n bookRepository.findBookById(\n 1L, \n // highlight-next-line\n ComplexBookView.class\n )\n);\n"})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",children:"println(\n bookRepository.findBookById(\n 1L, \n // highlight-next-line\n ComplexBookView::class\n )\n)\n"})})})]}),"\n",(0,o.jsx)(n.p,{children:"Print output:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-json",children:"// highlight-next-line\nComplexBookView(\n id=1, \n name=Learning GraphQL, \n edition=1, \n price=50.0, \n // highlight-next-line\n store=ComplexBookView.TargetOf_store(\n id=1, \n name=O'REILLY\n ), \n authors=[\n // highlight-next-line\n ComplexBookView.TargetOf_authors(\n id=1, \n firstName=Eve, \n lastName=Procello\n ),\n // highlight-next-line\n ComplexBookView.TargetOf_authors(\n id=2, \n firstName=Alex, \n lastName=Banks\n )\n ]\n)\n"})}),"\n"]}),"\n"]}),"\n",(0,o.jsx)(n.h2,{id:"write-bookcontroller",children:"Write BookController"}),"\n",(0,o.jsx)(n.p,{children:"Although the DTO language is more suitable for Java/Kotlin applications to use query results internally, you can also use them as return information for HTTP APIs without any difference from using ordinary POJOs."}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",metastring:'title="BookController.java"',children:'@RestController \npublic class BookController implements Fetchers { \n\n private final BookRepository bookRepository; \n\n public BookController(BookRepository bookRepository) {\n this.bookRepository = bookRepository;\n } \n\n @Nullable\n @GetMapping("/book/{id}")\n public ComplexBookView findBookById(@PathVariable("id") long id) {\n return bookRepository.findBookById(\n id, \n // highlight-next-line\n ComplexBookView.class\n );\n }\n\n @GetMapping("/books")\n public List findBooksByName(\n @RequestParam(name = "name", required = false) String name\n ) {\n return bookRepository.findBooksByName(\n name,\n // highlight-next-line \n SimpleBookView.class\n );\n }\n}\n'})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",metastring:'title="BookController.kt"',children:'@RestController\nclass BookController(\n private val bookRepository: BookRepository \n) { \n @GetMapping("/book/{id}")\n fun findBookById(\n @PathVariable id: Long\n ): ComplexBookView = \n bookRepository.findBookById(\n id, \n // highlight-next-line \n ComplexBookView::class\n )\n\n @GetMapping("/books")\n fun findBooksByName( \n @RequestParam(required = false) name: String \n ): List = \n bookRepository.findBooksByName(\n name,\n // highlight-next-line \n SimpleBookView::class\n ) \n}\n'})})})]}),"\n",(0,o.jsx)(n.h2,{id:"document-comments",children:"Document Comments"}),"\n",(0,o.jsxs)(n.p,{children:["In the ",(0,o.jsx)(n.a,{href:"./entity",children:"previous article"}),", we mentioned that Jimmer can copy the document comments in Java/Kotlin code to the client Api, whether it is OpenApi online documentation or generated TypeScript code."]}),"\n",(0,o.jsx)(n.p,{children:"The method introduced in this article has the same functionality, but it needs to be explained that the types and properties in the DTO language support document comments like Java/Kotlin types, so the DTO language can override Java/Kotlin document comments. For example, the original entity definition is as follows"}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",children:"//highlight-start\n/**\n * The book entity\n */\n//highlight-end\n@Entity\npublic interface Book {\n\n //highlight-start\n /**\n * The name of book entity\n */\n //highlight-end\n String name();\n\n ...Omit other members...\n}\n"})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",children:"//highlight-start\n/**\n * The book entity\n */ \n//highlight-end\n@Entity\ninterface Book {\n\n //highlight-start\n /**\n * The name of book entity\n */\n //highlight-end\n val price: BigDecimal\n\n ...Omit other members...\n}\n"})})})]}),"\n",(0,o.jsx)(n.p,{children:"The document comments here are the original document comments."}),"\n",(0,o.jsxs)(n.p,{children:["The ",(0,o.jsx)(n.a,{href:"/jimmer-doc/docs/object/view/dto-language",children:"DTO Language"})," also supports document comments. For example:"]}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-json",metastring:'title="Book.Dto" ',children:"export com.yourcompany.yourproject.model.Book \n -> package com.yourcompany.yourproject.model.dto\n\n//highlight-start \n/**\n * Simple book dto\n */ \n//highlight-end\nSimpleBookView {\n\n //highlight-start\n /**\n * The name of simple book dto\n */\n //highlight-end \n name\n\n ...Omit other members...\n}\n\n...Omit other DTO definitions...\n"})}),"\n",(0,o.jsxs)(n.admonition,{type:"info",children:[(0,o.jsxs)(n.p,{children:["The document comment of the ",(0,o.jsx)(n.a,{href:"/jimmer-doc/docs/object/view/dto-language",children:"DTO Language"})," has higher priority."]}),(0,o.jsx)(n.p,{children:"That is, the document comments in the DTO language can override the document comments of the original entity, finally it is used to generate OpenApi documentation or TypeScript code."})]}),"\n",(0,o.jsx)(n.h2,{id:"flat-association-id",children:"Flat Association ID"}),"\n",(0,o.jsxs)(n.p,{children:["If the associated object only has the ",(0,o.jsx)(n.code,{children:"id"})," property, the associated Id will be better than the associated object. For example:"]}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"Using associated objects will lead to a large number of objects with only id properties, making the results slightly redundant:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-json",children:'{\n "id": 1, \n "name": "Learning GraphQL",\n "edition": 1,\n "price": 50.00, \n "store": { \n // highlight-next-line\n "id": 1 \n },\n "authors": [{\n // highlight-next-line \n "id": 1\n }, {\n // highlight-next-line\n "id": 2 \n }]\n}\n'})}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"Using associated Ids makes the results relatively concise:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-json",children:'{\n "id": 1,\n "name": "Learning GraphQL", \n "edition": 1,\n "price": 50.00, \n // highlight-next-line\n "storeId": 1, \n // highlight-next-line\n "authorIds": [1, 2] \n}\n'})}),"\n"]}),"\n"]}),"\n",(0,o.jsxs)(n.p,{children:["If you choose to return DTO ",(0,o.jsxs)(n.em,{children:["(instead of directly returning entities as in ",(0,o.jsx)(n.a,{href:"./entity",children:"the previous article"}),")"]}),", you can define the following DTO code:"]}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:'language-title="Book.dto"',children:"export com.yourcompany.yourproject.model.Book \n -> package com.yourcompany.yourproject.model.dto\n\nShallowBookView { \n #allScalars(this) \n #highlight-next-line\n id(store)\n #highlight-next-line \n id(authors) as authorIds \n} \n\n...Omit other DTO definitions...\n"})}),"\n",(0,o.jsx)(n.p,{children:"After compilation, the following code is generated:"}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",metastring:'title="ShallowBookView.java" ',children:'// highlight-next-line\n@GeneratedBy( \n file = "/src/main/dto/Book.dto" \n)\npublic class ShallowBookView implements View { \n \n private long id; \n\n @NotNull \n private String name; \n\n private int edition; \n\n @NotNull\n private BigDecimal price; \n\n @Nullable\n // highlight-next-line\n private Long storeId; \n\n @NotNull\n // highlight-next-line\n private List authorIds; \n\n ...Omit other members...\n}\n'})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",metastring:'title="ShallowBookView.kt"',children:'// highlight-next-line \n@GeneratedBy( \n file = "/src/main/dto/Book.dto" \n)\ndata class ShallowBookView(\n val id: Long,\n val name: String,\n val edition: Int,\n val price: BigDecimal, \n // highlight-next-line\n val storeId: Long?,\n // highlight-next-line\n val authorIds: List \n): View { \n ...Omit other members... \n}\n'})})})]}),"\n",(0,o.jsx)(n.h2,{id:"flat-associated-objects",children:"Flat Associated Objects"}),"\n",(0,o.jsx)(n.p,{children:"A large part of server development teams will deal with a type of frontend development team who do not accept data structures composed of associated multiple objects, and only want to accept a huge single object. So they require all non-collection associations to be flattened. That is:"}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"They do not accept structured return information:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-json",children:'{\n "prop1": 1,\n "prop2": 2, \n "a": {\n "prop1": 3,\n "prop2": 4, \n "b": {\n "prop1": 5,\n "prop2": 6, \n }\n },\n "c": {\n "prop1": 7, \n "prop2": 8,\n "d": {\n "prop1": 9,\n "prop2": 10,\n } \n }\n}\n'})}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsx)(n.p,{children:"Insist on asking for such flat data:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-json",children:'{ \n "prop1": 1, \n "prop2": 2, \n "aProp1": 3, \n "aProp2": 4, \n "aBProp1": 5, \n "abProp2": 6, \n "cProp1": 7, \n "cProp2": 8, \n "cdProp1": 9, \n "cdProp2": 10 \n}\n'})}),"\n"]}),"\n"]}),"\n",(0,o.jsx)(n.p,{children:"In fact, such flat non-structured data is a disaster for client programs that need state management. But such frontend teams only do UI rendering without state management, so they do not realize this problem and insist on it very much."}),"\n",(0,o.jsx)(n.p,{children:"When you can't argue but need to complete the task quickly, write DTO code as follows:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-sh",metastring:'title="Book.dto"',children:"export com.yourcompany.yourproject.model.Book \n -> package com.yourcompany.yourproject.model.dto\n\nFlatBookView { \n #allScalars(this) \n flat(store) { \u2776\n as(^ -> store) { \u2777 \n #allScalar(this) \n }\n } \n} \n\n...Omit other DTO definitions...\n"})}),"\n",(0,o.jsxs)(n.ul,{children:["\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u2776 The ",(0,o.jsx)(n.code,{children:"flat"})," function means to flatten the properties of the associated object pointed to by the ",(0,o.jsx)(n.code,{children:"Book.store"})," one-to-many association to the current object."]}),"\n"]}),"\n",(0,o.jsxs)(n.li,{children:["\n",(0,o.jsxs)(n.p,{children:["\u2777 For the properties of the associated object, the property name needs to be changed after being flattened to the current object. Prefix the old property name with ",(0,o.jsx)(n.code,{children:"store"}),". For example, ",(0,o.jsx)(n.code,{children:"name"})," -> ",(0,o.jsx)(n.code,{children:"storeName"}),"."]}),"\n"]}),"\n"]}),"\n",(0,o.jsx)(n.p,{children:"After compilation, the following code is generated:"}),"\n",(0,o.jsxs)(l.A,{groupId:"language",children:[(0,o.jsx)(r.A,{value:"java",label:"Java",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-java",metastring:'title="FlatBookView.java" ',children:'// highlight-next-line\n@GeneratedBy( \n file = "/src/main/dto/Book.dto" \n)\npublic class FlatBookView implements View { \n \n private long id; \n\n @NotNull\n private String name; \n\n private int edition; \n\n @NotNull\n private BigDecimal price; \n\n @Nullable\n // highlight-next-line \n private Long storeId; \n\n @Nullable\n // highlight-next-line\n private String storeName; \n\n @Nullable\n // highlight-next-line\n private String storeWebsite; \n\n ...Omit other members...\n}\n'})})}),(0,o.jsx)(r.A,{value:"kotlin",label:"Kotlin",children:(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{className:"language-kotlin",metastring:'title="FlatBookView.kt" ',children:'// highlight-next-line \n@GeneratedBy( \n file = "/src/main/dto/Book.dto" \n)\ndata class FlatBookView( \n val id: Long,\n val name: String,\n val edition: Int,\n val price: BigDecimal,\n // highlight-next-line\n val storeId: Long?,\n // highlight-next-line\n val storeName: String?,\n // highlight-next-line\n val storeWebsite: String?\n): View { \n ...Omit other members... \n}\n'})})})]}),"\n",(0,o.jsxs)(n.blockquote,{children:["\n",(0,o.jsxs)(n.p,{children:["Here, the flattened properties are all nullable, because the ",(0,o.jsx)(n.code,{children:"Book.store"})," association itself allows null."]}),"\n"]})]})}function u(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(A,{...e})}):A(e)}},90846:(e,n,t)=>{t.d(n,{A:()=>k});var o,i,l,r,a,s,c,d,h,A,u,p,m,g,x,f,j,b=t(96540);function y(){return y=Object.assign?Object.assign.bind():function(e){for(var n=1;n{let{title:n,titleId:t,...k}=e;return b.createElement("svg",y({width:431,height:202,xmlns:"http://www.w3.org/2000/svg","aria-labelledby":t},k),n?b.createElement("title",{id:t},n):null,o||(o=b.createElement("path",{d:"M25 29q0-4 4-4h77q4 0 4 4v25q0 4-4 4H29q-4 0-4-4Z",stroke:"rgba(33,41,48,1)",strokeWidth:2,fill:"#fff"})),i||(i=b.createElement("text",{fontFamily:"\\u5FAE\\u8F6F\\u96C5\\u9ED1",textAnchor:"middle",fontSize:13,fill:"#323232",fontWeight:400,y:5.875,transform:"translate(25 25)"},b.createElement("tspan",{dy:16,x:42.5},b.createElement("tspan",null,"BookStore")))),l||(l=b.createElement("path",{d:"M173 29q0-4 4-4h77q4 0 4 4v25q0 4-4 4h-77q-4 0-4-4Z",stroke:"rgba(33,41,48,1)",strokeWidth:2,fill:"#fff"})),r||(r=b.createElement("text",{fontFamily:"\\u5FAE\\u8F6F\\u96C5\\u9ED1",textAnchor:"middle",fontSize:13,fill:"#323232",fontWeight:400,y:5.875,transform:"translate(173 25)"},b.createElement("tspan",{dy:16,x:42.5},b.createElement("tspan",null,"Book")))),a||(a=b.createElement("path",{d:"M321 29q0-4 4-4h77q4 0 4 4v25q0 4-4 4h-77q-4 0-4-4Z",stroke:"rgba(33,41,48,1)",strokeWidth:2,fill:"#fff"})),s||(s=b.createElement("text",{fontFamily:"\\u5FAE\\u8F6F\\u96C5\\u9ED1",textAnchor:"middle",fontSize:13,fill:"#323232",fontWeight:400,y:5.875,transform:"translate(321 25)"},b.createElement("tspan",{dy:16,x:42.5},b.createElement("tspan",null,"Author")))),c||(c=b.createElement("path",{d:"M25 148q0-4 4-4h79q4 0 4 4v25q0 4-4 4H29q-4 0-4-4Z",stroke:"rgba(33,41,48,1)",strokeWidth:2,fill:"#fff"})),d||(d=b.createElement("text",{fontFamily:"\\u5FAE\\u8F6F\\u96C5\\u9ED1",textAnchor:"middle",fontSize:13,fill:"#323232",fontWeight:400,y:5.875,transform:"translate(25 144)"},b.createElement("tspan",{dy:16,x:43.5},b.createElement("tspan",null,"TreeNode")))),h||(h=b.createElement("path",{d:"M111 42h61",stroke:"#7f7f7f",strokeWidth:2,fill:"none"})),A||(A=b.createElement("path",{fill:"#fff",d:"M131 34h21v16h-21z"})),u||(u=b.createElement("text",{fontFamily:"\\u5FAE\\u8F6F\\u96C5\\u9ED1",textAnchor:"middle",fontSize:13,fill:"#323232",fontWeight:400,y:31.375},b.createElement("tspan",{dy:16,x:141.5},b.createElement("tspan",null,"0:N")))),p||(p=b.createElement("path",{d:"M259 42h61",stroke:"#7f8b98",strokeWidth:2,fill:"none"})),m||(m=b.createElement("path",{fill:"#fff",d:"M277.5 34h24v16h-24z"})),g||(g=b.createElement("text",{fontFamily:"\\u5FAE\\u8F6F\\u96C5\\u9ED1",textAnchor:"middle",fontSize:13,fill:"#323232",fontWeight:400,y:31.375},b.createElement("tspan",{dy:16,x:289.5},b.createElement("tspan",null,"M:N")))),x||(x=b.createElement("path",{d:"m68.983 143-.483-29H142v47h-29",stroke:"#7f8b98",strokeWidth:2,fill:"none"})),f||(f=b.createElement("path",{fill:"#fff",d:"M118.248 106h21v16h-21z"})),j||(j=b.createElement("text",{fontFamily:"\\u5FAE\\u8F6F\\u96C5\\u9ED1",textAnchor:"middle",fontSize:13,fill:"#323232",fontWeight:400,y:103.375},b.createElement("tspan",{dy:16,x:128.748},b.createElement("tspan",null,"0:N")))))}},19365:(e,n,t)=>{t.d(n,{A:()=>r});t(96540);var o=t(18215);const i={tabItem:"tabItem_Ymn6"};var l=t(74848);function r(e){let{children:n,hidden:t,className:r}=e;return(0,l.jsx)("div",{role:"tabpanel",className:(0,o.A)(i.tabItem,r),hidden:t,children:n})}},11470:(e,n,t)=>{t.d(n,{A:()=>k});var o=t(96540),i=t(18215),l=t(23104),r=t(56347),a=t(205),s=t(57485),c=t(31682),d=t(89466);function h(e){return o.Children.toArray(e).filter((e=>"\n"!==e)).map((e=>{if(!e||(0,o.isValidElement)(e)&&function(e){const{props:n}=e;return!!n&&"object"==typeof n&&"value"in n}(e))return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)}))?.filter(Boolean)??[]}function A(e){const{values:n,children:t}=e;return(0,o.useMemo)((()=>{const e=n??function(e){return h(e).map((e=>{let{props:{value:n,label:t,attributes:o,default:i}}=e;return{value:n,label:t,attributes:o,default:i}}))}(t);return function(e){const n=(0,c.X)(e,((e,n)=>e.value===n.value));if(n.length>0)throw new Error(`Docusaurus error: Duplicate values "${n.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`)}(e),e}),[n,t])}function u(e){let{value:n,tabValues:t}=e;return t.some((e=>e.value===n))}function p(e){let{queryString:n=!1,groupId:t}=e;const i=(0,r.W6)(),l=function(e){let{queryString:n=!1,groupId:t}=e;if("string"==typeof n)return n;if(!1===n)return null;if(!0===n&&!t)throw new Error('Docusaurus error: The component groupId prop is required if queryString=true, because this value is used as the search param name. You can also provide an explicit value such as queryString="my-search-param".');return t??null}({queryString:n,groupId:t});return[(0,s.aZ)(l),(0,o.useCallback)((e=>{if(!l)return;const n=new URLSearchParams(i.location.search);n.set(l,e),i.replace({...i.location,search:n.toString()})}),[l,i])]}function m(e){const{defaultValue:n,queryString:t=!1,groupId:i}=e,l=A(e),[r,s]=(0,o.useState)((()=>function(e){let{defaultValue:n,tabValues:t}=e;if(0===t.length)throw new Error("Docusaurus error: the component requires at least one children component");if(n){if(!u({value:n,tabValues:t}))throw new Error(`Docusaurus error: The has a defaultValue "${n}" but none of its children has the corresponding value. Available values are: ${t.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);return n}const o=t.find((e=>e.default))??t[0];if(!o)throw new Error("Unexpected error: 0 tabValues");return o.value}({defaultValue:n,tabValues:l}))),[c,h]=p({queryString:t,groupId:i}),[m,g]=function(e){let{groupId:n}=e;const t=function(e){return e?`docusaurus.tab.${e}`:null}(n),[i,l]=(0,d.Dv)(t);return[i,(0,o.useCallback)((e=>{t&&l.set(e)}),[t,l])]}({groupId:i}),x=(()=>{const e=c??m;return u({value:e,tabValues:l})?e:null})();(0,a.A)((()=>{x&&s(x)}),[x]);return{selectedValue:r,selectValue:(0,o.useCallback)((e=>{if(!u({value:e,tabValues:l}))throw new Error(`Can't select invalid tab value=${e}`);s(e),h(e),g(e)}),[h,g,l]),tabValues:l}}var g=t(92303);const x={tabList:"tabList__CuJ",tabItem:"tabItem_LNqP"};var f=t(74848);function j(e){let{className:n,block:t,selectedValue:o,selectValue:r,tabValues:a}=e;const s=[],{blockElementScrollPositionUntilNextRender:c}=(0,l.a_)(),d=e=>{const n=e.currentTarget,t=s.indexOf(n),i=a[t].value;i!==o&&(c(n),r(i))},h=e=>{let n=null;switch(e.key){case"Enter":d(e);break;case"ArrowRight":{const t=s.indexOf(e.currentTarget)+1;n=s[t]??s[0];break}case"ArrowLeft":{const t=s.indexOf(e.currentTarget)-1;n=s[t]??s[s.length-1];break}}n?.focus()};return(0,f.jsx)("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,i.A)("tabs",{"tabs--block":t},n),children:a.map((e=>{let{value:n,label:t,attributes:l}=e;return(0,f.jsx)("li",{role:"tab",tabIndex:o===n?0:-1,"aria-selected":o===n,ref:e=>s.push(e),onKeyDown:h,onClick:d,...l,className:(0,i.A)("tabs__item",x.tabItem,l?.className,{"tabs__item--active":o===n}),children:t??n},n)}))})}function b(e){let{lazy:n,children:t,selectedValue:i}=e;const l=(Array.isArray(t)?t:[t]).filter(Boolean);if(n){const e=l.find((e=>e.props.value===i));return e?(0,o.cloneElement)(e,{className:"margin-top--md"}):null}return(0,f.jsx)("div",{className:"margin-top--md",children:l.map(((e,n)=>(0,o.cloneElement)(e,{key:n,hidden:e.props.value!==i})))})}function y(e){const n=m(e);return(0,f.jsxs)("div",{className:(0,i.A)("tabs-container",x.tabList),children:[(0,f.jsx)(j,{...e,...n}),(0,f.jsx)(b,{...e,...n})]})}function k(e){const n=(0,g.A)();return(0,f.jsx)(y,{...e,children:h(e.children)},String(n))}},62601:(e,n,t)=>{t.d(n,{$1:()=>p,A2:()=>N,Aw:()=>B,Es:()=>x,GH:()=>b,Pp:()=>E,RZ:()=>m,UF:()=>A,X0:()=>T,_p:()=>V,ci:()=>u,eM:()=>v,i1:()=>f,j$:()=>q,j4:()=>w,js:()=>g,ko:()=>y,pe:()=>j,vO:()=>k,w0:()=>C,xk:()=>h});var o=t(96540),i=t(3246),l=t(99912),r=t(16712),a=t(1489),s=t(92303),c=t(74848);const d=(0,o.memo)((e=>{let{src:n}=e;const t=(0,r.o)(),[d,h]=(0,o.useState)(!1),A=(0,o.useCallback)((()=>h(!0)),[]),u=(0,s.A)();return u&&!function(){const e=D;if("boolean"==typeof e)return e;var n=document.createElement("canvas");const t=n.getContext&&n.getContext("2d")&&0==n.toDataURL("image/webp").indexOf("data:image/webp");return D=t,t}()&&n.endsWith(".webp")?(0,c.jsx)(l.A,{security:"error",children:t?"\u65e0\u6cd5\u5c55\u793a\u56fe\u7247\uff0c\u8bf7\u4f7f\u7528\u652f\u6301webp\u7684\u6d4f\u89c8\u5668":"Unable to display image, please use a browser that supports webp"}):(0,c.jsxs)(c.Fragment,{children:[u&&!d&&(0,c.jsxs)(a.Ay,{container:!0,direction:"column",alignItems:"center",children:[(0,c.jsx)(a.Ay,{item:!0,children:(0,c.jsx)(i.A,{})}),(0,c.jsx)(a.Ay,{item:!0,children:t?"\u52a0\u8f7d\u56fe\u7247\u4e2d":"Loading image"})]}),(0,c.jsx)("img",{src:n,onLoad:A})]})})),h=(0,o.memo)((()=>(0,c.jsx)(d,{src:O}))),A=(0,o.memo)((()=>(0,c.jsx)(d,{src:S}))),u=(0,o.memo)((()=>(0,c.jsx)(d,{src:L}))),p=(0,o.memo)((()=>(0,c.jsx)(d,{src:I}))),m=(0,o.memo)((()=>(0,c.jsx)(d,{src:F}))),g=(0,o.memo)((()=>(0,c.jsx)(d,{src:P}))),x=(0,o.memo)((()=>(0,c.jsx)(d,{src:R}))),f=(0,o.memo)((()=>(0,c.jsx)(d,{src:K}))),j=(0,o.memo)((()=>(0,c.jsx)(d,{src:J}))),b=(0,o.memo)((()=>(0,c.jsx)(d,{src:G}))),y=(0,o.memo)((()=>(0,c.jsx)(d,{src:H}))),k=(0,o.memo)((()=>(0,c.jsx)(d,{src:M}))),v=(0,o.memo)((()=>(0,c.jsx)(d,{src:Q}))),B=(0,o.memo)((()=>(0,c.jsx)(d,{src:W}))),w=(0,o.memo)((()=>(0,c.jsx)(d,{src:Z}))),N=(0,o.memo)((()=>(0,c.jsx)(d,{src:z}))),V=(0,o.memo)((()=>(0,c.jsx)(d,{src:X}))),C=(0,o.memo)((()=>(0,c.jsx)(d,{src:U}))),T=(0,o.memo)((()=>(0,c.jsx)(d,{src:Y}))),E=(0,o.memo)((()=>(0,c.jsx)(d,{src:_}))),q=(0,o.memo)((()=>(0,c.jsx)(d,{src:$})));let D;const O=t(32100).A,S=t(77089).A,L=t(33823).A,I=t(19682).A,F=t(53491).A,P=t(31191).A,R=t(75546).A,K=t(3225).A,J=t(29686).A,G=t(9950).A,H=t(55421).A,M=t(52500).A,Q=t(48608).A,W=(t(51722).A,t(90846).A,t(86935).A),Z=t(5268).A,z=t(89477).A,X=t(9159).A,U=t(91225).A,Y=(t(52077).A,t(14604).A),_=t(63234).A,$=t(25448).A},66971:(e,n,t)=>{t.d(n,{a:()=>m});var o=t(96540),i=t(72774),l=t(63051),r=t(28968),a=t(48875),s=t(44676),c=t(47859),d=t(4671),h=t(99343),A=t(7324),u=t(39781),p=t(74848);const m=(0,o.memo)((e=>{let{open:n,fullScreen:t=!1,title:a,maxWidth:m="md",onClose:x,children:f}=e;const[j,b]=(0,o.useState)(t),y=(0,o.useCallback)((()=>{b((e=>!e))}),[]);return(0,p.jsxs)(l.A,{open:n,onClose:x,fullScreen:j,TransitionComponent:g,maxWidth:m,children:[(0,p.jsx)(i.A,{sx:{position:"relative"},children:(0,p.jsxs)(s.A,{children:[(0,p.jsx)(c.A,{sx:{ml:2,flex:1},variant:"h6",component:"div",children:a}),(0,p.jsx)(d.A,{onClick:y,style:{color:"white"},children:j?(0,p.jsx)(A.A,{}):(0,p.jsx)(h.A,{})}),(0,p.jsx)(d.A,{"aria-label":"close",onClick:x,style:{color:"white"},children:(0,p.jsx)(u.A,{})})]})}),(0,p.jsx)(r.A,{children:f})]})})),g=o.forwardRef((function(e,n){return(0,p.jsx)(a.A,{direction:"up",ref:n,...e})}))},74400:(e,n,t)=>{t.d(n,{l:()=>a});var o=t(96540),i=t(67512),l=t(66971),r=t(74848);const a=(0,o.memo)((e=>{let{buttonText:n,fullScreen:t=!1,title:a=n,variant:s="outlined",maxWidth:c,useOriginalText:d=!0,children:h}=e;const[A,u]=(0,o.useState)(!1),p=(0,o.useCallback)((e=>{u(!0),e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}),[]),m=(0,o.useCallback)((()=>{u(!1)}),[]),g=d?{textTransform:"none"}:{};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(i.A,{"data-is-view-more-button":"true",onClick:p,variant:s,size:"small",style:g,children:n}),(0,r.jsx)(l.a,{open:A,onClose:m,title:a,maxWidth:c,fullScreen:t,children:h})]})}))},16712:(e,n,t)=>{t.d(n,{o:()=>i});var o=t(44586);function i(){const{i18n:e}=(0,o.A)(),n=e.currentLocale;return"zh"===n||"zh_cn"===n||"zh_CN"==n}},33823:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/association-cache-dbeabc0a449a23469331c7bd822e1540.webp"},19682:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/calculated-cache-b73a5f78ce1bc73348621025d583aa47.webp"},75546:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/cloud-4029a49b29895e2ef7f199be53c647c8.webp"},31191:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/consistency-782cc1bfaf8d5f2c50a6cf4fd290c383.webp"},32100:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/dto-explosion-f0066fdbe10e41d79a21628460e40468.webp"},3225:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/generated-java-32e67690ba94b4f0d63bbd248844dd71.webp"},29686:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/generated-kt-2d53fe7a5ad2ee91828171f07954eea8.webp"},9950:(e,n,t)=>{t.d(n,{A:()=>o});const o="data:image/webp;base64,UklGRlwDAABXRUJQVlA4WAoAAAAoAAAAIwAAHwAASUNDUBQCAAAAAAIUYXBwbAQAAABtbnRyUkdCIFhZWiAH5wADABkAEgA3ABdhY3NwQVBQTAAAAABBUFBMAAAAAAAAAAAAAAAAAAAAAAAA9tYAAQAAAADTLWFwcGzwmkVkcoBXfc7VHI8vo5G3AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApkZXNjAAAA/AAAAGVjcHJ0AAABZAAAACN3dHB0AAABiAAAABRyWFlaAAABnAAAABRnWFlaAAABsAAAABRiWFlaAAABxAAAABRyVFJDAAAB2AAAABBjaGFkAAAB6AAAACxiVFJDAAAB2AAAABBnVFJDAAAB2AAAABBkZXNjAAAAAAAAAAtVMjdVMkc2UjRCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHRleHQAAAAAQ29weXJpZ2h0IEFwcGxlIEluYy4sIDIwMjMAAFhZWiAAAAAAAADz2AABAAAAARYIWFlaIAAAAAAAAHLJAAA6rAAAAZFYWVogAAAAAAAAXQgAALT9AAAPUFhZWiAAAAAAAAAnBQAAEFYAAMJMcGFyYQAAAAAAAAAAAAH2BHNmMzIAAAAAAAELtwAABZb///NXAAAHKQAA/df///u3///9pgAAA9oAAMD2VlA4IK4AAABQBgCdASokACAAPo04mEelIyKhMBVdUKARiWIAxPLgLf/smI7f4opUf8y4Na5nNiiOM9fdUSb/n/4qAAD+76lTf73FZ+2hhhPQzsV9rZahOwFWYzUW6kNtghYCTvo/PpeTwWM9j+YlVt+tUxq84FN9eUFzu7J4H42kzR6StHV7YV1WZG+EvIW3H4gjv94UShhqQ2cvrX/y91uP4+a/hCq3skB3vjdta+qP9EVAAABFWElGbAAAAE1NACoAAAAIAAQBGgAFAAAAAQAAAD4BGwAFAAAAAQAAAEYBKAADAAAAAQACAACHaQAEAAAAAQAAAE4AAAAAAAAAkAAAAAEAAACQAAAAAQACoAIABAAAAAEAAAAkoAMABAAAAAEAAAAgAAAAAA=="},52500:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/graphiql-headers-676e3ff2a6da158f8a8b2b0d43633896.webp"},53491:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/multi-view-cache-57a9e6ec32df6b23eceac9376d0268d1.webp"},77089:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/object-cache-5a67daa9966fe7b728af64423333ba74.webp"},25448:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/complex-9425049a58775c669ef7f9c8826e0b2a.webp"},14604:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/openapi-e3db15b0d20a1e447225e55a4983c253.webp"},63234:(e,n,t)=>{t.d(n,{A:()=>o});const o="data:image/webp;base64,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"},52077:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/qq-group-0f9be0ea42cca1506ad211af4ad0dbc3.webp"},48608:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/save-d37c62a7516ccbf2bc561f935cf77de2.webp"},51722:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/shape-ba5246fcd39e013ea28a73144614bd9d.webp"},55421:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/swagger-authorize-144b7e355d1d59381a6fa660b743e2a7.webp"},86935:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/api-2a7966c9db85aec24ae0d1fe0cb62c17.webp"},5268:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/code-bfdfb727fb3ccc54d12fe6a4c5ddc58f.webp"},89477:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/family-b9c1857991f5f8d662444aa9f6e2b85f.webp"},9159:(e,n,t)=>{t.d(n,{A:()=>o});const o=t.p+"assets/images/field-05834b18f87cfe96cfd1d1a72750e9e5.webp"},91225:(e,n,t)=>{t.d(n,{A:()=>o});const o="data:image/webp;base64,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"}}]); \ No newline at end of file diff --git a/assets/js/main.08605edb.js b/assets/js/main.85ae797d.js similarity index 99% rename from assets/js/main.08605edb.js rename to assets/js/main.85ae797d.js index 931b5fde1..711e1d486 100644 --- a/assets/js/main.08605edb.js +++ b/assets/js/main.85ae797d.js @@ -1,2 +1,2 @@ -/*! For license information please see main.08605edb.js.LICENSE.txt */ -(self.webpackChunkdocusaurus_code=self.webpackChunkdocusaurus_code||[]).push([[8792],{35947:(e,t,n)=>{"use strict";n.d(t,{A:()=>p});n(96540);var r=n(53259),o=n.n(r),a=n(84054);const i={"005cbe6b":[()=>Promise.all([n.e(1869),n.e(2408),n.e(6501),n.e(2450),n.e(3988)]).then(n.bind(n,86467)),"@site/docs/quick-view/save/export/short.mdx",86467],"006ba0db":[()=>n.e(4998).then(n.bind(n,35590)),"@site/docs/showcase/index.md",35590],"00732ad8":[()=>Promise.all([n.e(1869),n.e(7522)]).then(n.bind(n,1128)),"@site/docs/mapping/base/association/many-to-many.mdx",1128],"01388c3a":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(8207),n.e(5560)]).then(n.bind(n,27701)),"@site/docs/quick-view/standard-demo.mdx",27701],"013d6672":[()=>Promise.all([n.e(1869),n.e(3908)]).then(n.bind(n,65655)),"@site/docs/mapping/advanced/logical-deleted/join-table.mdx",65655],"01a85c17":[()=>Promise.all([n.e(1869),n.e(8209)]).then(n.bind(n,69158)),"@theme/BlogTagsListPage",69158],"01e6406a":[()=>Promise.all([n.e(1869),n.e(8432)]).then(n.bind(n,14647)),"@site/docs/mapping/advanced/key.mdx",14647],"0577f881":[()=>n.e(4719).then(n.t.bind(n,54214,19)),"~blog/default/jimmer-doc-blog-archive-201.json",54214],"06745454":[()=>n.e(8008).then(n.bind(n,4828)),"@site/docs/configuration/save-command-pessimistic-lock.md",4828],"07cc7485":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(2450),n.e(5323),n.e(3506)]).then(n.bind(n,22606)),"@site/docs/object/view/dto-language.mdx",22606],"07e70db4":[()=>Promise.all([n.e(1869),n.e(622)]).then(n.bind(n,86522)),"@site/docs/query/object-fetcher/view.mdx",86522],"08b88f97":[()=>Promise.all([n.e(1869),n.e(1239)]).then(n.bind(n,29537)),"@site/docs/mapping/base/association/one-to-many.mdx",29537],"0ace37b9":[()=>Promise.all([n.e(1869),n.e(8579)]).then(n.bind(n,74023)),"@site/docs/showcase/where/usage.mdx",74023],"0c02f5c0":[()=>n.e(5408).then(n.bind(n,38687)),"@site/docs/showcase/update-statement.mdx",38687],"0ea6c9cf":[()=>Promise.all([n.e(1869),n.e(8428)]).then(n.bind(n,56255)),"@site/docs/query/associations.mdx",56255],"11f9f98d":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(4957)]).then(n.bind(n,69025)),"@site/docs/cache/enable-cache.mdx",69025],"12d3ea20":[()=>n.e(1777).then(n.bind(n,7834)),"@site/docs/configuration/default-enum-strategy.md",7834],"15834d7d":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(8855)]).then(n.bind(n,50057)),"@site/docs/mutation/save-command/save-mode.mdx",50057],"1601cbbb":[()=>n.e(3928).then(n.bind(n,99307)),"@site/docs/mapping/index.md",99307],"16b3d858":[()=>Promise.all([n.e(1869),n.e(8932)]).then(n.bind(n,38609)),"@site/docs/query/native-sql.mdx",38609],"16f8ed23":[()=>Promise.all([n.e(1869),n.e(9482)]).then(n.bind(n,90313)),"@site/docs/showcase/fetch-association/associated-id.mdx",90313],17896441:[()=>Promise.all([n.e(1869),n.e(6300),n.e(6369),n.e(8401)]).then(n.bind(n,12447)),"@theme/DocItem",12447],"178adfff":[()=>Promise.all([n.e(1869),n.e(4620)]).then(n.bind(n,73654)),"@site/docs/quick-view/get-started/define-entity.mdx",73654],"19ab30c6":[()=>n.e(1190).then(n.bind(n,26957)),"@site/docs/configuration/micro-service.md",26957],"1a4e3797":[()=>Promise.all([n.e(1869),n.e(2138)]).then(n.bind(n,41283)),"@theme/SearchPage",41283],"1b672f9b":[()=>n.e(4070).then(n.bind(n,88459)),"@site/docs/mutation/save-command/input-dto/index.md",88459],"1c70c65a":[()=>Promise.all([n.e(1869),n.e(1119)]).then(n.bind(n,34994)),"@site/docs/mapping/base/foreignkey.mdx",34994],"1c827492":[()=>Promise.all([n.e(1869),n.e(9045)]).then(n.bind(n,44187)),"@site/docs/mapping/advanced/enum.mdx",44187],"1cbb77aa":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(1489),n.e(2450),n.e(8207),n.e(7617),n.e(2342),n.e(9223)]).then(n.bind(n,55081)),"@site/docs/mutation/save-command/association.mdx",55081],"1df93b7f":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(6300),n.e(4583)]).then(n.bind(n,49462)),"@site/src/pages/index.tsx",49462],"1ef6f02f":[()=>Promise.all([n.e(1869),n.e(4979)]).then(n.bind(n,90214)),"@site/docs/showcase/where/implicit-subquery.mdx",90214],"1f391b9e":[()=>Promise.all([n.e(1869),n.e(6300),n.e(6061)]).then(n.bind(n,67973)),"@theme/MDXPage",67973],"1fc64d7d":[()=>n.e(2488).then(n.bind(n,86030)),"@site/docs/mapping/advanced/logical-deleted/index.md",86030],"202f6188":[()=>n.e(958).then(n.bind(n,50746)),"@site/docs/query/global-filter/index.md",50746],"20510d53":[()=>Promise.all([n.e(1869),n.e(6559)]).then(n.bind(n,96684)),"@site/docs/showcase/where/dynamic-join.mdx",96684],"20d355c2":[()=>n.e(559).then(n.bind(n,73004)),"@site/docs/overview/welcome.mdx",73004],"21610bd9":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(1566),n.e(4616)]).then(n.bind(n,4872)),"@site/docs/object/dynamic.mdx",4872],"22b2a30e":[()=>n.e(9058).then(n.bind(n,79740)),"@site/docs/showcase/recursive-query/index.md",79740],"255bd155":[()=>Promise.all([n.e(1869),n.e(7762)]).then(n.bind(n,16490)),"@site/docs/query/paging/unncessary-join.mdx",16490],"2700da38":[()=>Promise.all([n.e(1869),n.e(7514)]).then(n.bind(n,18452)),"@site/docs/graphql/query.mdx",18452],27697630:[()=>n.e(6503).then(n.bind(n,74851)),"@site/docs/mapping/advanced/calculated/index.md",74851],"2773b18d":[()=>Promise.all([n.e(1869),n.e(5099)]).then(n.bind(n,51773)),"@site/docs/showcase/page.mdx",51773],"28ff5ee1":[()=>Promise.all([n.e(1869),n.e(9285)]).then(n.bind(n,43001)),"@site/docs/mutation/update-statement.mdx",43001],"2945d958":[()=>n.e(4935).then(n.bind(n,2533)),"@site/docs/query/index.md",2533],"2adfac87":[()=>Promise.all([n.e(1869),n.e(5045)]).then(n.bind(n,44953)),"@site/docs/mapping/advanced/logical-deleted/entity.mdx",44953],"2bab343d":[()=>Promise.all([n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(3294)]).then(n.bind(n,7839)),"@site/docs/quick-view/fetch/export/comparison.mdx",7839],"2bbb61ed":[()=>n.e(3339).then(n.bind(n,20664)),"@site/docs/client/index.mdx",20664],"2c1fb4b4":[()=>Promise.all([n.e(1869),n.e(9527)]).then(n.bind(n,38721)),"@site/docs/query/dynamic-join/chain-style.mdx",38721],"2d428d13":[()=>n.e(387).then(n.t.bind(n,26841,19)),"~blog/default/jimmer-doc-blog-tags-docusaurus-e06-list.json",26841],"2eb99824":[()=>Promise.all([n.e(1869),n.e(3406)]).then(n.bind(n,93047)),"@site/docs/mutation/save-command/lock.mdx",93047],"2f8d695d":[()=>Promise.all([n.e(1869),n.e(5987)]).then(n.bind(n,86112)),"@site/docs/object/immutable/solution.mdx",86112],"2fbba66b":[()=>Promise.all([n.e(1869),n.e(454)]).then(n.bind(n,82143)),"@site/docs/showcase/recursive-query/depth.mdx",82143],"306d1aee":[()=>n.e(5392).then(n.bind(n,46724)),"@site/docs/mutation/save-command/index.md",46724],"3151ae14":[()=>Promise.all([n.e(1869),n.e(3840)]).then(n.bind(n,36702)),"@site/docs/mapping/advanced/remote.mdx",36702],"31be8507":[()=>Promise.all([n.e(1869),n.e(1958)]).then(n.bind(n,55413)),"@site/docs/mapping/base/association/many-to-one.mdx",55413],"341962fd":[()=>Promise.all([n.e(1869),n.e(1222)]).then(n.bind(n,98527)),"@site/docs/mutation/delete-statement.mdx",98527],"35ede3c1":[()=>Promise.all([n.e(1869),n.e(9520)]).then(n.bind(n,55374)),"@site/docs/query/group.mdx",55374],"36ba556f":[()=>n.e(2441).then(n.bind(n,64405)),"@site/docs/configuration/dissociate-action-checking.md",64405],"3912ee3d":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(9185),n.e(4009)]).then(n.bind(n,14630)),"@site/docs/quick-view/save/feature.mdx",14630],"3921e2e1":[()=>n.e(8151).then(n.bind(n,31674)),"@site/docs/mapping/advanced/view/index.md",31674],"393be207":[()=>n.e(4134).then(n.bind(n,26602)),"@site/src/pages/markdown-page.md",26602],"3a054751":[()=>Promise.all([n.e(1869),n.e(9407)]).then(n.bind(n,66464)),"@site/docs/mutation/trigger.mdx",66464],"3ac4343f":[()=>n.e(6088).then(n.t.bind(n,96174,19)),"~blog/default/jimmer-doc-blog-tags-hola-905-list.json",96174],"3c9d0a9e":[()=>Promise.all([n.e(1869),n.e(9733)]).then(n.bind(n,70193)),"@site/docs/query/super_qbe.mdx",70193],"3da5df4e":[()=>Promise.all([n.e(1869),n.e(1567)]).then(n.bind(n,62895)),"@site/docs/showcase/recursive-query/multiple-props.mdx",62895],"3e1be3f7":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(2450),n.e(8207),n.e(7617),n.e(7704),n.e(8987)]).then(n.bind(n,68927)),"@site/docs/mutation/save-command/dissociation.mdx",68927],"40467a3a":[()=>Promise.all([n.e(1869),n.e(4469)]).then(n.bind(n,46583)),"@site/docs/spring/repository/abstract.mdx",46583],"4138804c":[()=>Promise.all([n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(4432)]).then(n.bind(n,25158)),"@site/docs/quick-view/fetch/export/index.mdx",25158],"436589d9":[()=>Promise.all([n.e(1869),n.e(8875)]).then(n.bind(n,41166)),"@site/docs/showcase/order-by/usage.mdx",41166],"4371d503":[()=>Promise.all([n.e(1869),n.e(7014)]).then(n.bind(n,9611)),"@site/docs/configuration/scala-providder.mdx",9611],"43c83b6b":[()=>n.e(6082).then(n.bind(n,56893)),"@site/docs/configuration/default-database-stragegy.md",56893],"448f4275":[()=>Promise.all([n.e(1869),n.e(3675)]).then(n.bind(n,16012)),"@site/docs/mapping/advanced/on-dissociate.mdx",16012],"459b0630":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(1489),n.e(2450),n.e(8207),n.e(7617),n.e(6892)]).then(n.bind(n,7363)),"@site/docs/quick-view/save/export/long.mdx",7363],"45ae48a0":[()=>Promise.all([n.e(1869),n.e(4627)]).then(n.bind(n,37171)),"@site/docs/mutation/draft-interceptor.mdx",37171],"4819028f":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(6397)]).then(n.bind(n,61394)),"@site/docs/query/dynamic-join/table-ex.mdx",61394],"4bc25951":[()=>Promise.all([n.e(1869),n.e(5774)]).then(n.bind(n,64082)),"@site/docs/mutation/save-command/incomplete.mdx",64082],"4bc59e30":[()=>Promise.all([n.e(1869),n.e(5122)]).then(n.bind(n,3338)),"@site/docs/quick-view/dsl/feature.mdx",3338],"4cf4f624":[()=>n.e(9616).then(n.bind(n,74971)),"@site/docs/quick-view/get-started/index.md",74971],"4d990c41":[()=>Promise.all([n.e(1869),n.e(1147)]).then(n.bind(n,84431)),"@site/docs/query/global-filter/logical-deleted.mdx",84431],"4df7d2da":[()=>Promise.all([n.e(1869),n.e(8941)]).then(n.bind(n,983)),"@site/docs/mutation/delete-command.mdx",983],"527f0fc8":[()=>n.e(382).then(n.bind(n,27481)),"@site/docs/showcase/order-by/index.md",27481],"52e015ef":[()=>n.e(2122).then(n.bind(n,86502)),"@site/docs/query/paging/index.md",86502],"557f3b28":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(2635)]).then(n.bind(n,21842)),"@site/docs/cache/cache-type/object.mdx",21842],"558e784a":[()=>Promise.all([n.e(1869),n.e(2072)]).then(n.bind(n,55379)),"@site/docs/object/jackson.mdx",55379],"559f4d7f":[()=>Promise.all([n.e(1869),n.e(6087)]).then(n.bind(n,31399)),"@site/docs/quick-view/fetch/feature.mdx",31399],57630155:[()=>n.e(97).then(n.bind(n,63369)),"@site/docs/resource/ecosystem.mdx",63369],"585ffb47":[()=>Promise.all([n.e(1869),n.e(590)]).then(n.bind(n,24404)),"@site/docs/showcase/fetch-association/deeper-association.mdx",24404],59362658:[()=>n.e(9325).then(n.bind(n,81180)),"@site/blog/2021-08-01-mdx-blog-post.mdx",81180],"5a36f7cb":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(4980)]).then(n.bind(n,56664)),"@site/docs/quick-view/get-started/usage.mdx",56664],"5cc43a59":[()=>Promise.all([n.e(1869),n.e(9852)]).then(n.bind(n,13344)),"@site/docs/quick-view/precondition.mdx",13344],"5e95c892":[()=>n.e(9647).then(n.bind(n,7121)),"@theme/DocsRoot",7121],"5e9f5e1a":[()=>Promise.resolve().then(n.bind(n,4784)),"@generated/docusaurus.config",4784],"605934e1":[()=>Promise.all([n.e(1869),n.e(5120)]).then(n.bind(n,53917)),"@site/docs/showcase/recursive-query/usage.mdx",53917],"605a233a":[()=>Promise.all([n.e(1869),n.e(3238)]).then(n.bind(n,76494)),"@site/docs/quick-view/dsl/super_qbe.mdx",76494],"60a3bf30":[()=>n.e(5448).then(n.t.bind(n,85240,19)),"~blog/default/jimmer-doc-blog-tags-facebook-534-list.json",85240],"60eace35":[()=>n.e(1667).then(n.bind(n,3924)),"@site/docs/configuration/trigger-type.mdx",3924],"628173bc":[()=>n.e(3093).then(n.bind(n,7239)),"@site/docs/quick-view/get-started/create-database.mdx",7239],"62bb3c34":[()=>Promise.all([n.e(1869),n.e(2864)]).then(n.bind(n,82707)),"@site/docs/query/dynamic-join/weak-join.mdx",82707],"64d8b0df":[()=>Promise.all([n.e(1869),n.e(4089)]).then(n.bind(n,29179)),"@site/docs/query/dynamic-join/problem.mdx",29179],65369449:[()=>n.e(1817).then(n.bind(n,4991)),"@site/docs/quick-view/save/export/index.md",4991],"6621886b":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(2450),n.e(561),n.e(84)]).then(n.bind(n,80029)),"@site/docs/object/view/mapstruct.mdx",80029],"663d9028":[()=>n.e(9563).then(n.bind(n,25770)),"@site/docs/query/dynamic-join/kotlin-join.mdx",25770],"6675ee19":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1055)]).then(n.bind(n,17551)),"@site/docs/query/object-fetcher/association.mdx",17551],"6875c492":[()=>Promise.all([n.e(1869),n.e(6300),n.e(6369),n.e(5309),n.e(4813)]).then(n.bind(n,33069)),"@theme/BlogTagsPostsPage",33069],"6958de31":[()=>Promise.all([n.e(1869),n.e(2914)]).then(n.bind(n,22114)),"@site/docs/object/immutable/reason.mdx",22114],"6ac5903c":[()=>Promise.all([n.e(1869),n.e(7649)]).then(n.bind(n,80442)),"@site/docs/query/dynamic-where.mdx",80442],"6c8a7c11":[()=>Promise.all([n.e(1869),n.e(6903)]).then(n.bind(n,19864)),"@site/docs/graphql/concept.mdx",19864],"6dd2f47c":[()=>Promise.all([n.e(1869),n.e(3175)]).then(n.bind(n,44871)),"@site/docs/configuration/batch-size.mdx",44871],"70e1957c":[()=>n.e(5416).then(n.bind(n,30740)),"@site/docs/configuration/cache-abandoned.md",30740],"70fb01eb":[()=>Promise.all([n.e(1869),n.e(7386)]).then(n.bind(n,86525)),"@site/docs/query/object-fetcher/recursive.mdx",86525],"7198b1f0":[()=>Promise.all([n.e(1869),n.e(3557)]).then(n.bind(n,46623)),"@site/docs/query/object-fetcher/props.mdx",46623],"730779bd":[()=>n.e(7400).then(n.t.bind(n,8735,19)),"~blog/default/jimmer-doc-blog-tags-hola-905.json",8735],"73664a40":[()=>n.e(1972).then(n.bind(n,49581)),"@site/blog/2019-05-29-long-blog-post.md",49581],"753f99cc":[()=>Promise.all([n.e(1869),n.e(1220)]).then(n.bind(n,60430)),"@site/docs/query/object-fetcher/dto.mdx",60430],"7661071f":[()=>n.e(8737).then(n.bind(n,24137)),"@site/blog/2021-08-26-welcome/index.md?truncated=true",24137],"77aee7f4":[()=>n.e(1281).then(n.bind(n,73452)),"@site/docs/graphql/index.md",73452],"7a85095b":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(7902)]).then(n.bind(n,61770)),"@site/docs/cache/cache-type/association.mdx",61770],"7afd587f":[()=>n.e(8873).then(n.t.bind(n,41257,19)),"~blog/default/jimmer-doc-blog-tags-facebook-534.json",41257],"7b48746c":[()=>Promise.all([n.e(1869),n.e(3820)]).then(n.bind(n,83338)),"@site/docs/mapping/advanced/embedded.mdx",83338],"7d0e0890":[()=>Promise.all([n.e(1869),n.e(2900)]).then(n.bind(n,27642)),"@site/docs/object/visibility.mdx",27642],"7d87bd59":[()=>n.e(9245).then(n.t.bind(n,52920,19)),"~blog/default/jimmer-doc-blog-tags-hello-277-list.json",52920],"7ef6abe2":[()=>Promise.all([n.e(1869),n.e(35)]).then(n.bind(n,94225)),"@site/docs/spring/repository/concept.mdx",94225],"800d2ff8":[()=>n.e(5793).then(n.bind(n,68862)),"@site/docs/mapping/base/nullity.mdx",68862],"80d2c30b":[()=>Promise.all([n.e(1869),n.e(625)]).then(n.bind(n,77765)),"@site/docs/query/expression.mdx",77765],"814f3328":[()=>n.e(7472).then(n.t.bind(n,55513,19)),"~blog/default/blog-post-list-prop-default.json",55513],"8394151f":[()=>Promise.all([n.e(1869),n.e(7500)]).then(n.bind(n,26379)),"@site/docs/showcase/where/dynamic-where.mdx",26379],"83d3e8be":[()=>Promise.all([n.e(1869),n.e(7543)]).then(n.bind(n,75159)),"@site/docs/configuration/connection-manager.mdx",75159],"83dc5d6a":[()=>Promise.all([n.e(1869),n.e(7123)]).then(n.bind(n,96438)),"@site/docs/query/sub-query.mdx",96438],"861ba749":[()=>Promise.all([n.e(1869),n.e(6861)]).then(n.bind(n,88375)),"@site/docs/mapping/advanced/calculated/formula.mdx",88375],"8717b14a":[()=>n.e(3694).then(n.bind(n,61615)),"@site/blog/2019-05-29-long-blog-post.md?truncated=true",61615],"874e2623":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(8124)]).then(n.bind(n,99860)),"@site/docs/query/object-fetcher/usage.mdx",99860],"87ef1f65":[()=>n.e(7959).then(n.bind(n,67212)),"@site/docs/quick-view/dsl/index.md",67212],"89e8cae1":[()=>Promise.all([n.e(1869),n.e(4711)]).then(n.bind(n,51567)),"@site/docs/mapping/advanced/calculated/transient.mdx",51567],"8c270299":[()=>n.e(5221).then(n.bind(n,30789)),"@site/docs/cache/cache-type/index.md",30789],"8c3e49ce":[()=>Promise.all([n.e(1869),n.e(9329)]).then(n.bind(n,26410)),"@site/docs/query/paging/deep-optimization.mdx",26410],"8c4d1e2a":[()=>Promise.all([n.e(1869),n.e(3981)]).then(n.bind(n,92256)),"@site/docs/object/tool.mdx",92256],"8f8023c5":[()=>n.e(8684).then(n.t.bind(n,52945,19)),"/home/runner/work/jimmer-doc/jimmer-doc/.docusaurus/docusaurus-plugin-content-blog/default/plugin-route-context-module-100.json",52945],"8fba53f5":[()=>Promise.all([n.e(1869),n.e(101)]).then(n.bind(n,23140)),"@site/docs/configuration/database-validation.mdx",23140],"8febb6ae":[()=>Promise.all([n.e(1869),n.e(8022)]).then(n.bind(n,92526)),"@site/docs/showcase/where/associated-id.mdx",92526],"902dd95a":[()=>n.e(8125).then(n.bind(n,10574)),"@site/docs/query/dynamic-join/index.md",10574],"91468ecc":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(28)]).then(n.bind(n,57562)),"@site/docs/query/global-filter/user-filter.mdx",57562],"925b3f96":[()=>n.e(8609).then(n.bind(n,95026)),"@site/blog/2019-05-28-first-blog-post.md?truncated=true",95026],"9343c629":[()=>n.e(9220).then(n.bind(n,91876)),"@site/docs/object/view/index.md",91876],"935f2afb":[()=>n.e(8581).then(n.t.bind(n,35610,19)),"~docs/default/version-current-metadata-prop-751.json",35610],"946cca97":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(5969)]).then(n.bind(n,82673)),"@site/docs/quick-view/fetch/index.mdx",82673],"95e53b8e":[()=>n.e(2293).then(n.bind(n,80788)),"@site/docs/resource/video.mdx",80788],"9648250d":[()=>Promise.all([n.e(1869),n.e(2073)]).then(n.bind(n,28043)),"@site/docs/showcase/fetch-association/associated-object.mdx",28043],"977e38ee":[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(8108)]).then(n.bind(n,94191)),"@site/docs/query/object-fetcher/index.md",94191],"9aaede80":[()=>Promise.all([n.e(1869),n.e(1910)]).then(n.bind(n,84376)),"@site/docs/showcase/order-by/dynamic.mdx",84376],"9b2e2caf":[()=>Promise.all([n.e(1869),n.e(2745)]).then(n.bind(n,73273)),"@site/docs/cache/multiview-cache/abandoned-callback.mdx",73273],"9e4087bc":[()=>n.e(2711).then(n.bind(n,89331)),"@theme/BlogArchivePage",89331],"9ff0bc88":[()=>Promise.all([n.e(1869),n.e(9493)]).then(n.bind(n,74807)),"@site/docs/mapping/base/more-type.mdx",74807],a063efc6:[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(2450),n.e(8207),n.e(7617),n.e(2942),n.e(9071)]).then(n.bind(n,54421)),"@site/docs/mutation/save-command/input-dto/dto-lang.mdx",54421],a14b1014:[()=>n.e(3759).then(n.bind(n,28179)),"@site/docs/cache/multiview-cache/index.md",28179],a2478bf7:[()=>Promise.all([n.e(1869),n.e(6822)]).then(n.bind(n,84615)),"@site/docs/query/dynamic-order.mdx",84615],a31a6589:[()=>n.e(5415).then(n.bind(n,46595)),"@site/docs/configuration/id-only-target-checking-level.md",46595],a376312c:[()=>Promise.all([n.e(1869),n.e(1341)]).then(n.bind(n,31296)),"@site/docs/mapping/advanced/mapped-super-class.mdx",31296],a516f925:[()=>Promise.all([n.e(1869),n.e(9876)]).then(n.bind(n,24902)),"@site/docs/spring/repository/dto.mdx",24902],a5cccfca:[()=>Promise.all([n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(8207),n.e(6568)]).then(n.bind(n,10441)),"@site/docs/cache/index.mdx",10441],a63da6c3:[()=>Promise.all([n.e(1869),n.e(2408),n.e(8207),n.e(1175),n.e(1496)]).then(n.bind(n,98793)),"@site/docs/overview/benchmark.mdx",98793],a6aa9e1f:[()=>Promise.all([n.e(1869),n.e(6300),n.e(6369),n.e(5309),n.e(7643)]).then(n.bind(n,35124)),"@theme/BlogListPage",35124],a78a5d93:[()=>n.e(7065).then(n.bind(n,10069)),"@site/docs/query/object-fetcher/spring-data.mdx",10069],a7bd4aaa:[()=>n.e(7098).then(n.bind(n,74532)),"@theme/DocVersionRoot",74532],a7c3c01f:[()=>Promise.all([n.e(1869),n.e(1129)]).then(n.bind(n,49569)),"@site/docs/mapping/base/naming-strategy.mdx",49569],a86b22fd:[()=>n.e(6886).then(n.t.bind(n,4061,19)),"/home/runner/work/jimmer-doc/jimmer-doc/.docusaurus/docusaurus-plugin-content-pages/default/plugin-route-context-module-100.json",4061],a94703ab:[()=>Promise.all([n.e(1869),n.e(9048)]).then(n.bind(n,92559)),"@theme/DocRoot",92559],aa6065f3:[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(3809)]).then(n.bind(n,90005)),"@site/docs/cache/multiview-cache/user-filter.mdx",90005],aa6882f1:[()=>n.e(8054).then(n.bind(n,98037)),"@site/docs/mapping/base/association/index.md",98037],ab400fc1:[()=>Promise.all([n.e(1869),n.e(1364)]).then(n.bind(n,32699)),"@site/docs/configuration/dialect.mdx",32699],ac7b7999:[()=>n.e(8610).then(n.bind(n,224)),"@site/docs/quick-view/index.md",224],acecf23e:[()=>n.e(1903).then(n.t.bind(n,1912,19)),"~blog/default/blogMetadata-default.json",1912],adb1c574:[()=>n.e(6154).then(n.bind(n,64353)),"@site/docs/cache/consistency.mdx",64353],afdef289:[()=>Promise.all([n.e(1869),n.e(7678)]).then(n.bind(n,96444)),"@site/docs/configuration/sql-log.mdx",96444],afe42421:[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(8256)]).then(n.bind(n,16546)),"@site/docs/client/error.mdx",16546],b0829ae7:[()=>n.e(5441).then(n.bind(n,6934)),"@site/docs/showcase/where/index.md",6934],b2f0d5f0:[()=>Promise.all([n.e(1869),n.e(6058)]).then(n.bind(n,59378)),"@site/docs/mapping/base/json-converter.mdx",59378],b4066d5c:[()=>Promise.all([n.e(1869),n.e(1989)]).then(n.bind(n,23100)),"@site/docs/mutation/save-command/input-dto/problem.mdx",23100],b4a967c6:[()=>n.e(3997).then(n.bind(n,16060)),"@site/docs/object/index.md",16060],b50828ba:[()=>n.e(7593).then(n.bind(n,9216)),"@site/docs/quick-view/save/index.md",9216],b5501865:[()=>Promise.all([n.e(1869),n.e(2408),n.e(6501),n.e(2450),n.e(5785),n.e(6875)]).then(n.bind(n,21877)),"@site/docs/mapping/advanced/view/id-view.mdx",21877],b6da5c62:[()=>Promise.all([n.e(1869),n.e(3950)]).then(n.bind(n,2487)),"@site/docs/query/paging/usage.mdx",2487],b8c20ac3:[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(2450),n.e(8207),n.e(7617),n.e(8180),n.e(833)]).then(n.bind(n,10936)),"@site/docs/mutation/save-command/input-dto/mapstruct.mdx",10936],b93aa536:[()=>Promise.all([n.e(1869),n.e(1217)]).then(n.bind(n,8319)),"@site/docs/showcase/base.mdx",8319],ba4879ed:[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(2450),n.e(8207),n.e(7617),n.e(5799),n.e(1375)]).then(n.bind(n,90008)),"@site/docs/mutation/save-command/id-checking.mdx",90008],ba581578:[()=>Promise.all([n.e(1869),n.e(5304)]).then(n.bind(n,68379)),"@site/docs/cache/multiview-cache/advanced.mdx",68379],bd9174b6:[()=>Promise.all([n.e(1869),n.e(6338)]).then(n.bind(n,93245)),"@site/docs/quick-view/fetch/export/entity.mdx",93245],bde1f36a:[()=>Promise.all([n.e(1869),n.e(5597)]).then(n.bind(n,41726)),"@site/docs/mapping/advanced/json.mdx",41726],be496525:[()=>n.e(2773).then(n.bind(n,36642)),"@site/docs/mutation/save-command/associated-save-mode.mdx",36642],beb873fb:[()=>n.e(7628).then(n.bind(n,80124)),"@site/docs/mutation/index.md",80124],bfb21d8c:[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(2450),n.e(8207),n.e(7617),n.e(3500)]).then(n.bind(n,75285)),"@site/docs/mutation/save-command/usage.mdx",75285],c074b85a:[()=>n.e(4223).then(n.bind(n,7151)),"@site/docs/object/immutable/index.md",7151],c083bcd0:[()=>n.e(4148).then(n.bind(n,16751)),"@site/docs/showcase/to-be-conitnued.md",16751],c0b3814b:[()=>n.e(9e3).then(n.bind(n,76139)),"@site/docs/resource/index.md",76139],c2aeead2:[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(2890)]).then(n.bind(n,2084)),"@site/docs/cache/cache-type/calculation.mdx",2084],c36f5314:[()=>Promise.all([n.e(1869),n.e(9322)]).then(n.bind(n,13890)),"@site/docs/mutation/associations.mdx",13890],c5928c98:[()=>Promise.all([n.e(1869),n.e(8562)]).then(n.bind(n,65753)),"@site/docs/mapping/advanced/view/many-to-many-view.mdx",65753],c66a1eda:[()=>n.e(4116).then(n.bind(n,76295)),"@site/docs/spring/repository/index.md",76295],c7a8e15d:[()=>Promise.all([n.e(1869),n.e(555)]).then(n.bind(n,43883)),"@site/docs/configuration/multi-datasources.mdx",43883],c8c542a9:[()=>Promise.all([n.e(1869),n.e(110)]).then(n.bind(n,81702)),"@site/docs/mapping/base/association/one-to-one.mdx",81702],c924aa2a:[()=>Promise.all([n.e(1869),n.e(5328)]).then(n.bind(n,50738)),"@site/docs/query/usage.mdx",50738],c9e80a64:[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(663)]).then(n.bind(n,39889)),"@site/docs/quick-view/fetch/export/dto.mdx",39889],cb190153:[()=>Promise.all([n.e(1869),n.e(3079)]).then(n.bind(n,96001)),"@site/docs/showcase/comprehensive-query.mdx",96001],cc44ff58:[()=>Promise.all([n.e(1869),n.e(1250)]).then(n.bind(n,18827)),"@site/docs/query/implicit-subquery.mdx",18827],cca045ce:[()=>n.e(8940).then(n.t.bind(n,88130,19)),"~blog/default/jimmer-doc-blog-419.json",88130],ccc49370:[()=>Promise.all([n.e(1869),n.e(6300),n.e(6369),n.e(5309),n.e(3249)]).then(n.bind(n,73858)),"@theme/BlogPostPage",73858],cd38f424:[()=>n.e(2367).then(n.t.bind(n,31561,19)),"~blog/default/jimmer-doc-blog-tags-hello-277.json",31561],ce541b0b:[()=>n.e(5255).then(n.t.bind(n,82931,19)),"~blog/default/jimmer-doc-blog-tags-tags-f69.json",82931],cf3feb9b:[()=>n.e(931).then(n.bind(n,95317)),"@site/docs/mapping/base/index.md",95317],d03e038e:[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(5)]).then(n.bind(n,62473)),"@site/docs/mapping/base/basic.mdx",62473],d0753778:[()=>n.e(8520).then(n.bind(n,56314)),"@site/docs/mapping/advanced/index.md",56314],d150cc51:[()=>Promise.all([n.e(1869),n.e(9141)]).then(n.bind(n,84301)),"@site/docs/quick-view/save/export/root.mdx",84301],d1abe535:[()=>Promise.all([n.e(1869),n.e(569)]).then(n.bind(n,84243)),"@site/docs/mapping/advanced/join-sql.mdx",84243],d23c7c62:[()=>n.e(5421).then(n.bind(n,26045)),"@site/docs/showcase/delete-statement.mdx",26045],d4274f83:[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(2450),n.e(8207),n.e(7617),n.e(6300),n.e(8419)]).then(n.bind(n,75429)),"@site/docs/overview/introduction.mdx",75429],d567e126:[()=>Promise.all([n.e(1869),n.e(449)]).then(n.bind(n,69555)),"@site/docs/graphql/mutation.mdx",69555],d5df40b3:[()=>Promise.all([n.e(1869),n.e(1621)]).then(n.bind(n,81026)),"@site/docs/object/immutable/current-situation.mdx",81026],d732d636:[()=>Promise.all([n.e(1869),n.e(7162)]).then(n.bind(n,13386)),"@site/docs/mutation/save-command/other.mdx",13386],d7e00ab0:[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(1489),n.e(3073),n.e(3036)]).then(n.bind(n,53032)),"@site/docs/quick-view/get-started/generate-code.mdx",53032],d8527e09:[()=>n.e(5491).then(n.t.bind(n,61966,19)),"/home/runner/work/jimmer-doc/jimmer-doc/.docusaurus/docusaurus-plugin-content-docs/default/plugin-route-context-module-100.json",61966],d99a3a89:[()=>Promise.all([n.e(1869),n.e(7285)]).then(n.bind(n,2413)),"@site/docs/quick-view/get-started/create-project.mdx",2413],d9f32620:[()=>n.e(5557).then(n.bind(n,7447)),"@site/blog/2021-08-26-welcome/index.md",7447],de35dadd:[()=>Promise.all([n.e(1869),n.e(2539)]).then(n.bind(n,60768)),"@site/docs/showcase/fetch-association/more-association.mdx",60768],e0e10584:[()=>Promise.all([n.e(1869),n.e(8967)]).then(n.bind(n,67414)),"@site/docs/spring/repository/default.mdx",67414],e273c56f:[()=>n.e(9328).then(n.bind(n,84014)),"@site/blog/2019-05-28-first-blog-post.md",84014],e6a741c9:[()=>n.e(8535).then(n.bind(n,73675)),"@site/docs/showcase/fetch-association/index.md",73675],e7ab3a02:[()=>n.e(6280).then(n.t.bind(n,14194,19)),"~blog/default/jimmer-doc-blog-tags-docusaurus-e06.json",14194],e7b6289b:[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1489),n.e(3073),n.e(3764)]).then(n.bind(n,3944)),"@site/docs/client/api.mdx",3944],eaa82752:[()=>Promise.all([n.e(1869),n.e(7994)]).then(n.bind(n,14116)),"@site/docs/mutation/save-command/input-dto/lonely.mdx",14116],eb75a885:[()=>n.e(2980).then(n.bind(n,15890)),"@site/docs/spring/index.md",15890],ef1eea17:[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(1746)]).then(n.bind(n,99243)),"@site/docs/query/dynamic-join/optimization.mdx",99243],ef8ecbcf:[()=>Promise.all([n.e(1869),n.e(2515)]).then(n.bind(n,89396)),"@site/docs/overview/apt-ksp.mdx",89396],f036e362:[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(1489),n.e(3073),n.e(2134)]).then(n.bind(n,96507)),"@site/docs/spring/spring-cloud.mdx",96507],f0c65a92:[()=>Promise.all([n.e(1869),n.e(9405)]).then(n.bind(n,57571)),"@site/docs/query/paging/reverse-sorting.mdx",57571],f3ba1e69:[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(5864)]).then(n.bind(n,38374)),"@site/docs/spring/transaction.mdx",38374],f4f34a3a:[()=>n.e(3637).then(n.bind(n,95512)),"@site/blog/2021-08-01-mdx-blog-post.mdx?truncated=true",95512],f663cff3:[()=>Promise.all([n.e(1869),n.e(7204)]).then(n.bind(n,51945)),"@site/docs/object/draft.mdx",51945],f6d78023:[()=>n.e(4545).then(n.bind(n,11631)),"@site/docs/configuration/index.md",11631],f8749a39:[()=>n.e(4662).then(n.bind(n,70515)),"@site/docs/spring/appendix.mdx",70515],f8e1f00b:[()=>Promise.all([n.e(1869),n.e(6015)]).then(n.bind(n,12613)),"@site/docs/showcase/recursive-query/node-control.mdx",12613],f9127a9a:[()=>n.e(9251).then(n.t.bind(n,81142,19)),"/home/runner/work/jimmer-doc/jimmer-doc/.docusaurus/@easyops-cn/docusaurus-search-local/default/plugin-route-context-module-100.json",81142],fb76b9dc:[()=>n.e(4756).then(n.bind(n,13527)),"@site/docs/resource/discuss.mdx",13527],fb87d503:[()=>n.e(6910).then(n.bind(n,43300)),"@site/docs/overview/index.md",43300],fdc2078d:[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(1489),n.e(3073),n.e(8613)]).then(n.bind(n,49917)),"@site/docs/cache/multiview-cache/concept.mdx",49917],fed42c34:[()=>Promise.all([n.e(1869),n.e(2408),n.e(3635),n.e(6501),n.e(4110),n.e(4380)]).then(n.bind(n,60089)),"@site/docs/query/dynamic-join/merge.mdx",60089],ff585802:[()=>Promise.all([n.e(1869),n.e(325)]).then(n.bind(n,66460)),"@site/docs/mapping/advanced/join-table-filter.mdx",66460],ffbf8c6b:[()=>Promise.all([n.e(1869),n.e(3768)]).then(n.bind(n,38323)),"@site/docs/showcase/other-query.mdx",38323]};var s=n(74848);function c(e){let{error:t,retry:n,pastDelay:r}=e;return t?(0,s.jsxs)("div",{style:{textAlign:"center",color:"#fff",backgroundColor:"#fa383e",borderColor:"#fa383e",borderStyle:"solid",borderRadius:"0.25rem",borderWidth:"1px",boxSizing:"border-box",display:"block",padding:"1rem",flex:"0 0 50%",marginLeft:"25%",marginRight:"25%",marginTop:"5rem",maxWidth:"50%",width:"100%"},children:[(0,s.jsx)("p",{children:String(t)}),(0,s.jsx)("div",{children:(0,s.jsx)("button",{type:"button",onClick:n,children:"Retry"})})]}):r?(0,s.jsx)("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:(0,s.jsx)("svg",{id:"loader",style:{width:128,height:110,position:"absolute",top:"calc(100vh - 64%)"},viewBox:"0 0 45 45",xmlns:"http://www.w3.org/2000/svg",stroke:"#61dafb",children:(0,s.jsxs)("g",{fill:"none",fillRule:"evenodd",transform:"translate(1 1)",strokeWidth:"2",children:[(0,s.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,s.jsx)("animate",{attributeName:"r",begin:"1.5s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-opacity",begin:"1.5s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-width",begin:"1.5s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,s.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,s.jsx)("animate",{attributeName:"r",begin:"3s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-opacity",begin:"3s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-width",begin:"3s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,s.jsx)("circle",{cx:"22",cy:"22",r:"8",children:(0,s.jsx)("animate",{attributeName:"r",begin:"0s",dur:"1.5s",values:"6;1;2;3;4;5;6",calcMode:"linear",repeatCount:"indefinite"})})]})})}):null}var l=n(86921),u=n(53102);function d(e,t){if("*"===e)return o()({loading:c,loader:()=>n.e(2237).then(n.bind(n,82237)),modules:["@theme/NotFound"],webpack:()=>[82237],render(e,t){const n=e.default;return(0,s.jsx)(u.W,{value:{plugin:{name:"native",id:"default"}},children:(0,s.jsx)(n,{...t})})}});const r=a[`${e}-${t}`],d={},p=[],m=[],f=(0,l.A)(r);return Object.entries(f).forEach((e=>{let[t,n]=e;const r=i[n];r&&(d[t]=r[0],p.push(r[1]),m.push(r[2]))})),o().Map({loading:c,loader:d,modules:p,webpack:()=>m,render(t,n){const o=JSON.parse(JSON.stringify(r));Object.entries(t).forEach((t=>{let[n,r]=t;const a=r.default;if(!a)throw new Error(`The page component at ${e} doesn't have a default export. This makes it impossible to render anything. Consider default-exporting a React component.`);"object"!=typeof a&&"function"!=typeof a||Object.keys(r).filter((e=>"default"!==e)).forEach((e=>{a[e]=r[e]}));let i=o;const s=n.split(".");s.slice(0,-1).forEach((e=>{i=i[e]})),i[s[s.length-1]]=a}));const a=o.__comp;delete o.__comp;const i=o.__context;return delete o.__context,(0,s.jsx)(u.W,{value:i,children:(0,s.jsx)(a,{...o,...n})})}})}const p=[{path:"/jimmer-doc/",component:d("/jimmer-doc/","ec7"),exact:!0},{path:"/jimmer-doc/blog",component:d("/jimmer-doc/blog","b8b"),exact:!0},{path:"/jimmer-doc/blog/archive",component:d("/jimmer-doc/blog/archive","b7c"),exact:!0},{path:"/jimmer-doc/blog/first-blog-post",component:d("/jimmer-doc/blog/first-blog-post","3fe"),exact:!0},{path:"/jimmer-doc/blog/long-blog-post",component:d("/jimmer-doc/blog/long-blog-post","316"),exact:!0},{path:"/jimmer-doc/blog/mdx-blog-post",component:d("/jimmer-doc/blog/mdx-blog-post","44f"),exact:!0},{path:"/jimmer-doc/blog/tags",component:d("/jimmer-doc/blog/tags","8fd"),exact:!0},{path:"/jimmer-doc/blog/tags/docusaurus",component:d("/jimmer-doc/blog/tags/docusaurus","427"),exact:!0},{path:"/jimmer-doc/blog/tags/facebook",component:d("/jimmer-doc/blog/tags/facebook","d6f"),exact:!0},{path:"/jimmer-doc/blog/tags/hello",component:d("/jimmer-doc/blog/tags/hello","d85"),exact:!0},{path:"/jimmer-doc/blog/tags/hola",component:d("/jimmer-doc/blog/tags/hola","853"),exact:!0},{path:"/jimmer-doc/blog/welcome",component:d("/jimmer-doc/blog/welcome","49e"),exact:!0},{path:"/jimmer-doc/markdown-page",component:d("/jimmer-doc/markdown-page","f81"),exact:!0},{path:"/jimmer-doc/search",component:d("/jimmer-doc/search","b73"),exact:!0},{path:"/jimmer-doc/docs",component:d("/jimmer-doc/docs","348"),routes:[{path:"/jimmer-doc/docs",component:d("/jimmer-doc/docs","524"),routes:[{path:"/jimmer-doc/docs",component:d("/jimmer-doc/docs","976"),routes:[{path:"/jimmer-doc/docs/cache/",component:d("/jimmer-doc/docs/cache/","9b7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/cache/cache-type/",component:d("/jimmer-doc/docs/cache/cache-type/","268"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/cache/cache-type/association",component:d("/jimmer-doc/docs/cache/cache-type/association","f26"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/cache/cache-type/calculation",component:d("/jimmer-doc/docs/cache/cache-type/calculation","e0a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/cache/cache-type/object",component:d("/jimmer-doc/docs/cache/cache-type/object","282"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/cache/consistency",component:d("/jimmer-doc/docs/cache/consistency","e1c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/cache/enable-cache",component:d("/jimmer-doc/docs/cache/enable-cache","672"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/cache/multiview-cache/",component:d("/jimmer-doc/docs/cache/multiview-cache/","d78"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/cache/multiview-cache/abandoned-callback",component:d("/jimmer-doc/docs/cache/multiview-cache/abandoned-callback","602"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/cache/multiview-cache/advanced",component:d("/jimmer-doc/docs/cache/multiview-cache/advanced","e29"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/cache/multiview-cache/concept",component:d("/jimmer-doc/docs/cache/multiview-cache/concept","88e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/cache/multiview-cache/user-filter",component:d("/jimmer-doc/docs/cache/multiview-cache/user-filter","6a8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/client/",component:d("/jimmer-doc/docs/client/","0eb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/client/api",component:d("/jimmer-doc/docs/client/api","05f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/client/error",component:d("/jimmer-doc/docs/client/error","5c5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/configuration/",component:d("/jimmer-doc/docs/configuration/","b35"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/configuration/batch-size",component:d("/jimmer-doc/docs/configuration/batch-size","891"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/configuration/cache-abandoned",component:d("/jimmer-doc/docs/configuration/cache-abandoned","f50"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/configuration/connection-manager",component:d("/jimmer-doc/docs/configuration/connection-manager","559"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/configuration/database-validation",component:d("/jimmer-doc/docs/configuration/database-validation","c96"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/configuration/default-database-stragegy",component:d("/jimmer-doc/docs/configuration/default-database-stragegy","9ea"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/configuration/default-enum-strategy",component:d("/jimmer-doc/docs/configuration/default-enum-strategy","5fd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/configuration/dialect",component:d("/jimmer-doc/docs/configuration/dialect","fb1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/configuration/dissociate-action-checking",component:d("/jimmer-doc/docs/configuration/dissociate-action-checking","d41"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/configuration/id-only-target-checking-level",component:d("/jimmer-doc/docs/configuration/id-only-target-checking-level","cc9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/configuration/micro-service",component:d("/jimmer-doc/docs/configuration/micro-service","1e3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/configuration/multi-datasources",component:d("/jimmer-doc/docs/configuration/multi-datasources","8c8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/configuration/save-command-pessimistic-lock",component:d("/jimmer-doc/docs/configuration/save-command-pessimistic-lock","5e3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/configuration/scala-providder",component:d("/jimmer-doc/docs/configuration/scala-providder","219"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/configuration/sql-log",component:d("/jimmer-doc/docs/configuration/sql-log","e4a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/configuration/trigger-type",component:d("/jimmer-doc/docs/configuration/trigger-type","585"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/graphql/",component:d("/jimmer-doc/docs/graphql/","53c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/graphql/concept",component:d("/jimmer-doc/docs/graphql/concept","c1c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/graphql/mutation",component:d("/jimmer-doc/docs/graphql/mutation","bad"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/graphql/query",component:d("/jimmer-doc/docs/graphql/query","f22"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/",component:d("/jimmer-doc/docs/mapping/","05e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/",component:d("/jimmer-doc/docs/mapping/advanced/","b47"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/calculated/",component:d("/jimmer-doc/docs/mapping/advanced/calculated/","3c1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/calculated/formula",component:d("/jimmer-doc/docs/mapping/advanced/calculated/formula","6c0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/calculated/transient",component:d("/jimmer-doc/docs/mapping/advanced/calculated/transient","146"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/embedded",component:d("/jimmer-doc/docs/mapping/advanced/embedded","5f1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/enum",component:d("/jimmer-doc/docs/mapping/advanced/enum","c3f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/join-sql",component:d("/jimmer-doc/docs/mapping/advanced/join-sql","a00"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/join-table-filter",component:d("/jimmer-doc/docs/mapping/advanced/join-table-filter","bcb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/json",component:d("/jimmer-doc/docs/mapping/advanced/json","e9b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/key",component:d("/jimmer-doc/docs/mapping/advanced/key","5c2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/logical-deleted/",component:d("/jimmer-doc/docs/mapping/advanced/logical-deleted/","48f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/logical-deleted/entity",component:d("/jimmer-doc/docs/mapping/advanced/logical-deleted/entity","076"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/logical-deleted/join-table",component:d("/jimmer-doc/docs/mapping/advanced/logical-deleted/join-table","0c8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/mapped-super-class",component:d("/jimmer-doc/docs/mapping/advanced/mapped-super-class","3cd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/on-dissociate",component:d("/jimmer-doc/docs/mapping/advanced/on-dissociate","70e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/remote",component:d("/jimmer-doc/docs/mapping/advanced/remote","e2f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/view/",component:d("/jimmer-doc/docs/mapping/advanced/view/","02c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/view/id-view",component:d("/jimmer-doc/docs/mapping/advanced/view/id-view","cf8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/advanced/view/many-to-many-view",component:d("/jimmer-doc/docs/mapping/advanced/view/many-to-many-view","99f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/base/",component:d("/jimmer-doc/docs/mapping/base/","2e0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/base/association/",component:d("/jimmer-doc/docs/mapping/base/association/","956"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/base/association/many-to-many",component:d("/jimmer-doc/docs/mapping/base/association/many-to-many","64a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/base/association/many-to-one",component:d("/jimmer-doc/docs/mapping/base/association/many-to-one","836"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/base/association/one-to-many",component:d("/jimmer-doc/docs/mapping/base/association/one-to-many","f9a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/base/association/one-to-one",component:d("/jimmer-doc/docs/mapping/base/association/one-to-one","077"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/base/basic",component:d("/jimmer-doc/docs/mapping/base/basic","d5d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/base/foreignkey",component:d("/jimmer-doc/docs/mapping/base/foreignkey","123"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/base/json-converter",component:d("/jimmer-doc/docs/mapping/base/json-converter","e83"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/base/more-type",component:d("/jimmer-doc/docs/mapping/base/more-type","330"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/base/naming-strategy",component:d("/jimmer-doc/docs/mapping/base/naming-strategy","e56"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mapping/base/nullity",component:d("/jimmer-doc/docs/mapping/base/nullity","66d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/",component:d("/jimmer-doc/docs/mutation/","338"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/associations",component:d("/jimmer-doc/docs/mutation/associations","db2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/delete-command",component:d("/jimmer-doc/docs/mutation/delete-command","321"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/delete-statement",component:d("/jimmer-doc/docs/mutation/delete-statement","ba6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/draft-interceptor",component:d("/jimmer-doc/docs/mutation/draft-interceptor","b44"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/save-command/",component:d("/jimmer-doc/docs/mutation/save-command/","049"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/save-command/associated-save-mode",component:d("/jimmer-doc/docs/mutation/save-command/associated-save-mode","abc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/save-command/association",component:d("/jimmer-doc/docs/mutation/save-command/association","e10"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/save-command/dissociation",component:d("/jimmer-doc/docs/mutation/save-command/dissociation","03f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/save-command/id-checking",component:d("/jimmer-doc/docs/mutation/save-command/id-checking","6d0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/save-command/incomplete",component:d("/jimmer-doc/docs/mutation/save-command/incomplete","66a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/save-command/input-dto/",component:d("/jimmer-doc/docs/mutation/save-command/input-dto/","ada"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/save-command/input-dto/dto-lang",component:d("/jimmer-doc/docs/mutation/save-command/input-dto/dto-lang","978"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/save-command/input-dto/lonely",component:d("/jimmer-doc/docs/mutation/save-command/input-dto/lonely","e67"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/save-command/input-dto/mapstruct",component:d("/jimmer-doc/docs/mutation/save-command/input-dto/mapstruct","686"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/save-command/input-dto/problem",component:d("/jimmer-doc/docs/mutation/save-command/input-dto/problem","a8e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/save-command/lock",component:d("/jimmer-doc/docs/mutation/save-command/lock","2d9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/save-command/other",component:d("/jimmer-doc/docs/mutation/save-command/other","e79"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/save-command/save-mode",component:d("/jimmer-doc/docs/mutation/save-command/save-mode","fa6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/save-command/usage",component:d("/jimmer-doc/docs/mutation/save-command/usage","593"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/trigger",component:d("/jimmer-doc/docs/mutation/trigger","2ed"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/mutation/update-statement",component:d("/jimmer-doc/docs/mutation/update-statement","6dc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/object/",component:d("/jimmer-doc/docs/object/","e22"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/object/draft",component:d("/jimmer-doc/docs/object/draft","e8d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/object/dynamic",component:d("/jimmer-doc/docs/object/dynamic","f19"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/object/immutable/",component:d("/jimmer-doc/docs/object/immutable/","71b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/object/immutable/current-situation",component:d("/jimmer-doc/docs/object/immutable/current-situation","0b9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/object/immutable/reason",component:d("/jimmer-doc/docs/object/immutable/reason","cc6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/object/immutable/solution",component:d("/jimmer-doc/docs/object/immutable/solution","30c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/object/jackson",component:d("/jimmer-doc/docs/object/jackson","50f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/object/tool",component:d("/jimmer-doc/docs/object/tool","854"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/object/view/",component:d("/jimmer-doc/docs/object/view/","770"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/object/view/dto-language",component:d("/jimmer-doc/docs/object/view/dto-language","596"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/object/view/mapstruct",component:d("/jimmer-doc/docs/object/view/mapstruct","f0a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/object/visibility",component:d("/jimmer-doc/docs/object/visibility","973"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/overview/",component:d("/jimmer-doc/docs/overview/","301"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/overview/apt-ksp",component:d("/jimmer-doc/docs/overview/apt-ksp","be4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/overview/benchmark",component:d("/jimmer-doc/docs/overview/benchmark","08f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/overview/introduction",component:d("/jimmer-doc/docs/overview/introduction","e50"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/overview/welcome",component:d("/jimmer-doc/docs/overview/welcome","aee"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/",component:d("/jimmer-doc/docs/query/","4f3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/associations",component:d("/jimmer-doc/docs/query/associations","2b6"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/dynamic-join/",component:d("/jimmer-doc/docs/query/dynamic-join/","920"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/dynamic-join/chain-style",component:d("/jimmer-doc/docs/query/dynamic-join/chain-style","6ca"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/dynamic-join/kotlin-join",component:d("/jimmer-doc/docs/query/dynamic-join/kotlin-join","706"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/dynamic-join/merge",component:d("/jimmer-doc/docs/query/dynamic-join/merge","d3d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/dynamic-join/optimization",component:d("/jimmer-doc/docs/query/dynamic-join/optimization","9ea"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/dynamic-join/problem",component:d("/jimmer-doc/docs/query/dynamic-join/problem","33b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/dynamic-join/table-ex",component:d("/jimmer-doc/docs/query/dynamic-join/table-ex","b1c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/dynamic-join/weak-join",component:d("/jimmer-doc/docs/query/dynamic-join/weak-join","d47"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/dynamic-order",component:d("/jimmer-doc/docs/query/dynamic-order","894"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/dynamic-where",component:d("/jimmer-doc/docs/query/dynamic-where","324"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/expression",component:d("/jimmer-doc/docs/query/expression","bca"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/global-filter/",component:d("/jimmer-doc/docs/query/global-filter/","a5a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/global-filter/logical-deleted",component:d("/jimmer-doc/docs/query/global-filter/logical-deleted","fbb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/global-filter/user-filter",component:d("/jimmer-doc/docs/query/global-filter/user-filter","7f0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/group",component:d("/jimmer-doc/docs/query/group","9f9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/implicit-subquery",component:d("/jimmer-doc/docs/query/implicit-subquery","782"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/native-sql",component:d("/jimmer-doc/docs/query/native-sql","42c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/object-fetcher/",component:d("/jimmer-doc/docs/query/object-fetcher/","838"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/object-fetcher/association",component:d("/jimmer-doc/docs/query/object-fetcher/association","e01"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/object-fetcher/dto",component:d("/jimmer-doc/docs/query/object-fetcher/dto","bb8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/object-fetcher/props",component:d("/jimmer-doc/docs/query/object-fetcher/props","15a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/object-fetcher/recursive",component:d("/jimmer-doc/docs/query/object-fetcher/recursive","75c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/object-fetcher/spring-data",component:d("/jimmer-doc/docs/query/object-fetcher/spring-data","0ba"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/object-fetcher/usage",component:d("/jimmer-doc/docs/query/object-fetcher/usage","072"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/object-fetcher/view",component:d("/jimmer-doc/docs/query/object-fetcher/view","474"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/paging/",component:d("/jimmer-doc/docs/query/paging/","742"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/paging/deep-optimization",component:d("/jimmer-doc/docs/query/paging/deep-optimization","8bf"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/paging/reverse-sorting",component:d("/jimmer-doc/docs/query/paging/reverse-sorting","328"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/paging/unncessary-join",component:d("/jimmer-doc/docs/query/paging/unncessary-join","507"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/paging/usage",component:d("/jimmer-doc/docs/query/paging/usage","dc5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/sub-query",component:d("/jimmer-doc/docs/query/sub-query","b20"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/super_qbe",component:d("/jimmer-doc/docs/query/super_qbe","b4d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/query/usage",component:d("/jimmer-doc/docs/query/usage","1f5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/",component:d("/jimmer-doc/docs/quick-view/","602"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/dsl/",component:d("/jimmer-doc/docs/quick-view/dsl/","2f5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/dsl/feature",component:d("/jimmer-doc/docs/quick-view/dsl/feature","0c1"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/dsl/super_qbe",component:d("/jimmer-doc/docs/quick-view/dsl/super_qbe","4b3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/fetch/",component:d("/jimmer-doc/docs/quick-view/fetch/","49e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/fetch/export/",component:d("/jimmer-doc/docs/quick-view/fetch/export/","f90"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/fetch/export/comparison",component:d("/jimmer-doc/docs/quick-view/fetch/export/comparison","894"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/fetch/export/dto",component:d("/jimmer-doc/docs/quick-view/fetch/export/dto","215"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/fetch/export/entity",component:d("/jimmer-doc/docs/quick-view/fetch/export/entity","8a8"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/fetch/feature",component:d("/jimmer-doc/docs/quick-view/fetch/feature","471"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/get-started/",component:d("/jimmer-doc/docs/quick-view/get-started/","79e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/get-started/create-database",component:d("/jimmer-doc/docs/quick-view/get-started/create-database","28e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/get-started/create-project",component:d("/jimmer-doc/docs/quick-view/get-started/create-project","c88"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/get-started/define-entity",component:d("/jimmer-doc/docs/quick-view/get-started/define-entity","fb2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/get-started/generate-code",component:d("/jimmer-doc/docs/quick-view/get-started/generate-code","f02"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/get-started/usage",component:d("/jimmer-doc/docs/quick-view/get-started/usage","328"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/precondition",component:d("/jimmer-doc/docs/quick-view/precondition","604"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/save/",component:d("/jimmer-doc/docs/quick-view/save/","973"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/save/export/",component:d("/jimmer-doc/docs/quick-view/save/export/","959"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/save/export/long",component:d("/jimmer-doc/docs/quick-view/save/export/long","9b4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/save/export/root",component:d("/jimmer-doc/docs/quick-view/save/export/root","ff0"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/save/export/short",component:d("/jimmer-doc/docs/quick-view/save/export/short","671"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/save/feature",component:d("/jimmer-doc/docs/quick-view/save/feature","9ee"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/quick-view/standard-demo",component:d("/jimmer-doc/docs/quick-view/standard-demo","f8c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/resource/",component:d("/jimmer-doc/docs/resource/","004"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/resource/discuss",component:d("/jimmer-doc/docs/resource/discuss","e91"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/resource/ecosystem",component:d("/jimmer-doc/docs/resource/ecosystem","11a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/resource/video",component:d("/jimmer-doc/docs/resource/video","4a5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/",component:d("/jimmer-doc/docs/showcase/","dc9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/base",component:d("/jimmer-doc/docs/showcase/base","8f7"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/comprehensive-query",component:d("/jimmer-doc/docs/showcase/comprehensive-query","dff"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/delete-statement",component:d("/jimmer-doc/docs/showcase/delete-statement","943"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/fetch-association/",component:d("/jimmer-doc/docs/showcase/fetch-association/","195"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/fetch-association/associated-id",component:d("/jimmer-doc/docs/showcase/fetch-association/associated-id","1f5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/fetch-association/associated-object",component:d("/jimmer-doc/docs/showcase/fetch-association/associated-object","7c2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/fetch-association/deeper-association",component:d("/jimmer-doc/docs/showcase/fetch-association/deeper-association","6cb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/fetch-association/more-association",component:d("/jimmer-doc/docs/showcase/fetch-association/more-association","da3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/order-by/",component:d("/jimmer-doc/docs/showcase/order-by/","69f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/order-by/dynamic",component:d("/jimmer-doc/docs/showcase/order-by/dynamic","fbc"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/order-by/usage",component:d("/jimmer-doc/docs/showcase/order-by/usage","ab9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/other-query",component:d("/jimmer-doc/docs/showcase/other-query","2de"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/page",component:d("/jimmer-doc/docs/showcase/page","218"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/recursive-query/",component:d("/jimmer-doc/docs/showcase/recursive-query/","574"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/recursive-query/depth",component:d("/jimmer-doc/docs/showcase/recursive-query/depth","8d4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/recursive-query/multiple-props",component:d("/jimmer-doc/docs/showcase/recursive-query/multiple-props","4c9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/recursive-query/node-control",component:d("/jimmer-doc/docs/showcase/recursive-query/node-control","eba"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/recursive-query/usage",component:d("/jimmer-doc/docs/showcase/recursive-query/usage","3b2"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/to-be-conitnued",component:d("/jimmer-doc/docs/showcase/to-be-conitnued","45f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/update-statement",component:d("/jimmer-doc/docs/showcase/update-statement","516"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/where/",component:d("/jimmer-doc/docs/showcase/where/","88d"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/where/associated-id",component:d("/jimmer-doc/docs/showcase/where/associated-id","930"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/where/dynamic-join",component:d("/jimmer-doc/docs/showcase/where/dynamic-join","cdd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/where/dynamic-where",component:d("/jimmer-doc/docs/showcase/where/dynamic-where","6cd"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/where/implicit-subquery",component:d("/jimmer-doc/docs/showcase/where/implicit-subquery","f75"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/showcase/where/usage",component:d("/jimmer-doc/docs/showcase/where/usage","46c"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/spring/",component:d("/jimmer-doc/docs/spring/","b75"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/spring/appendix",component:d("/jimmer-doc/docs/spring/appendix","51a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/spring/repository/",component:d("/jimmer-doc/docs/spring/repository/","410"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/spring/repository/abstract",component:d("/jimmer-doc/docs/spring/repository/abstract","ab9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/spring/repository/concept",component:d("/jimmer-doc/docs/spring/repository/concept","517"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/spring/repository/default",component:d("/jimmer-doc/docs/spring/repository/default","7d4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/spring/repository/dto",component:d("/jimmer-doc/docs/spring/repository/dto","c8f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/spring/spring-cloud",component:d("/jimmer-doc/docs/spring/spring-cloud","afb"),exact:!0,sidebar:"tutorialSidebar"},{path:"/jimmer-doc/docs/spring/transaction",component:d("/jimmer-doc/docs/spring/transaction","291"),exact:!0,sidebar:"tutorialSidebar"}]}]}]},{path:"*",component:d("*")}]},6125:(e,t,n)=>{"use strict";n.d(t,{o:()=>a,x:()=>i});var r=n(96540),o=n(74848);const a=r.createContext(!1);function i(e){let{children:t}=e;const[n,i]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{i(!0)}),[]),(0,o.jsx)(a.Provider,{value:n,children:t})}},38536:(e,t,n)=>{"use strict";var r=n(96540),o=n(5338),a=n(54625),i=n(80545),s=n(38193);const c=[n(10119),n(46491),n(76294),n(51043)];var l=n(35947),u=n(56347),d=n(22831),p=n(74848);function m(e){let{children:t}=e;return(0,p.jsx)(p.Fragment,{children:t})}var f=n(5260),h=n(44586),g=n(86025),b=n(6342),y=n(61213),v=n(32131),w=n(14090),x=n(2967),k=n(70440),j=n(41463);function S(){const{i18n:{currentLocale:e,defaultLocale:t,localeConfigs:n}}=(0,h.A)(),r=(0,v.o)(),o=n[e].htmlLang,a=e=>e.replace("-","_");return(0,p.jsxs)(f.A,{children:[Object.entries(n).map((e=>{let[t,{htmlLang:n}]=e;return(0,p.jsx)("link",{rel:"alternate",href:r.createUrl({locale:t,fullyQualified:!0}),hrefLang:n},t)})),(0,p.jsx)("link",{rel:"alternate",href:r.createUrl({locale:t,fullyQualified:!0}),hrefLang:"x-default"}),(0,p.jsx)("meta",{property:"og:locale",content:a(o)}),Object.values(n).filter((e=>o!==e.htmlLang)).map((e=>(0,p.jsx)("meta",{property:"og:locale:alternate",content:a(e.htmlLang)},`meta-og-${e.htmlLang}`)))]})}function E(e){let{permalink:t}=e;const{siteConfig:{url:n}}=(0,h.A)(),r=function(){const{siteConfig:{url:e,baseUrl:t,trailingSlash:n}}=(0,h.A)(),{pathname:r}=(0,u.zy)();return e+(0,k.applyTrailingSlash)((0,g.A)(r),{trailingSlash:n,baseUrl:t})}(),o=t?`${n}${t}`:r;return(0,p.jsxs)(f.A,{children:[(0,p.jsx)("meta",{property:"og:url",content:o}),(0,p.jsx)("link",{rel:"canonical",href:o})]})}function _(){const{i18n:{currentLocale:e}}=(0,h.A)(),{metadata:t,image:n}=(0,b.p)();return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(f.A,{children:[(0,p.jsx)("meta",{name:"twitter:card",content:"summary_large_image"}),(0,p.jsx)("body",{className:w.w})]}),n&&(0,p.jsx)(y.be,{image:n}),(0,p.jsx)(E,{}),(0,p.jsx)(S,{}),(0,p.jsx)(j.A,{tag:x.Cy,locale:e}),(0,p.jsx)(f.A,{children:t.map(((e,t)=>(0,p.jsx)("meta",{...e},t)))})]})}const T=new Map;function C(e){if(T.has(e.pathname))return{...e,pathname:T.get(e.pathname)};if((0,d.u)(l.A,e.pathname).some((e=>{let{route:t}=e;return!0===t.exact})))return T.set(e.pathname,e.pathname),e;const t=e.pathname.trim().replace(/(?:\/index)?\.html$/,"")||"/";return T.set(e.pathname,t),{...e,pathname:t}}var A=n(6125),P=n(26988),N=n(205);function L(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{const r=t.default?.[e]??t[e];return r?.(...n)}));return()=>o.forEach((e=>e?.()))}const R=function(e){let{children:t,location:n,previousLocation:r}=e;return(0,N.A)((()=>{r!==n&&(!function(e){let{location:t,previousLocation:n}=e;if(!n)return;const r=t.pathname===n.pathname,o=t.hash===n.hash,a=t.search===n.search;if(r&&o&&!a)return;const{hash:i}=t;if(i){const e=decodeURIComponent(i.substring(1)),t=document.getElementById(e);t?.scrollIntoView()}else window.scrollTo(0,0)}({location:n,previousLocation:r}),L("onRouteDidUpdate",{previousLocation:r,location:n}))}),[r,n]),t};function I(e){const t=Array.from(new Set([e,decodeURI(e)])).map((e=>(0,d.u)(l.A,e))).flat();return Promise.all(t.map((e=>e.route.component.preload?.())))}class O extends r.Component{previousLocation;routeUpdateCleanupCb;constructor(e){super(e),this.previousLocation=null,this.routeUpdateCleanupCb=s.A.canUseDOM?L("onRouteUpdate",{previousLocation:null,location:this.props.location}):()=>{},this.state={nextRouteHasLoaded:!0}}shouldComponentUpdate(e,t){if(e.location===this.props.location)return t.nextRouteHasLoaded;const n=e.location;return this.previousLocation=this.props.location,this.setState({nextRouteHasLoaded:!1}),this.routeUpdateCleanupCb=L("onRouteUpdate",{previousLocation:this.previousLocation,location:n}),I(n.pathname).then((()=>{this.routeUpdateCleanupCb(),this.setState({nextRouteHasLoaded:!0})})).catch((e=>{console.warn(e),window.location.reload()})),!1}render(){const{children:e,location:t}=this.props;return(0,p.jsx)(R,{previousLocation:this.previousLocation,location:t,children:(0,p.jsx)(u.qh,{location:t,render:()=>e})})}}const F=O,q="__docusaurus-base-url-issue-banner-container",D="__docusaurus-base-url-issue-banner",M="__docusaurus-base-url-issue-banner-suggestion-container";function B(e){return`\ndocument.addEventListener('DOMContentLoaded', function maybeInsertBanner() {\n var shouldInsert = typeof window['docusaurus'] === 'undefined';\n shouldInsert && insertBanner();\n});\n\nfunction insertBanner() {\n var bannerContainer = document.createElement('div');\n bannerContainer.id = '${q}';\n var bannerHtml = ${JSON.stringify(function(e){return`\n
\n

Your Docusaurus site did not load properly.

\n

A very common reason is a wrong site baseUrl configuration.

\n

Current configured baseUrl = ${e} ${"/"===e?" (default value)":""}

\n

We suggest trying baseUrl =

\n
\n`}(e)).replace(/{if("undefined"==typeof document)return void n();const r=document.createElement("link");r.setAttribute("rel","prefetch"),r.setAttribute("href",e),r.onload=()=>t(),r.onerror=()=>n();const o=document.getElementsByTagName("head")[0]??document.getElementsByName("script")[0]?.parentNode;o?.appendChild(r)}))}:function(e){return new Promise(((t,n)=>{const r=new XMLHttpRequest;r.open("GET",e,!0),r.withCredentials=!0,r.onload=()=>{200===r.status?t():n()},r.send(null)}))};var Z=n(86921);const K=new Set,X=new Set,J=()=>navigator.connection?.effectiveType.includes("2g")||navigator.connection?.saveData,ee={prefetch(e){if(!(e=>!J()&&!X.has(e)&&!K.has(e))(e))return!1;K.add(e);const t=(0,d.u)(l.A,e).flatMap((e=>{return t=e.route.path,Object.entries(G).filter((e=>{let[n]=e;return n.replace(/-[^-]+$/,"")===t})).flatMap((e=>{let[,t]=e;return Object.values((0,Z.A)(t))}));var t}));return Promise.all(t.map((e=>{const t=n.gca(e);return t&&!t.includes("undefined")?Y(t).catch((()=>{})):Promise.resolve()})))},preload:e=>!!(e=>!J()&&!X.has(e))(e)&&(X.add(e),I(e))},te=Object.freeze(ee),ne=Boolean(!0);if(s.A.canUseDOM){window.docusaurus=te;const e=document.getElementById("__docusaurus"),t=(0,p.jsx)(i.vd,{children:(0,p.jsx)(a.Kd,{children:(0,p.jsx)(Q,{})})}),n=(e,t)=>{console.error("Docusaurus React Root onRecoverableError:",e,t)},s=()=>{if(ne)r.startTransition((()=>{o.hydrateRoot(e,t,{onRecoverableError:n})}));else{const a=o.createRoot(e,{onRecoverableError:n});r.startTransition((()=>{a.render(t)}))}};I(window.location.pathname).then(s)}},26988:(e,t,n)=>{"use strict";n.d(t,{o:()=>d,l:()=>p});var r=n(96540),o=n(4784);const a=JSON.parse('{"docusaurus-plugin-content-docs":{"default":{"path":"/jimmer-doc/docs","versions":[{"name":"current","label":"Next","isLast":true,"path":"/jimmer-doc/docs","mainDocId":"overview/index","docs":[{"id":"cache/cache-type/association","path":"/jimmer-doc/docs/cache/cache-type/association","sidebar":"tutorialSidebar"},{"id":"cache/cache-type/calculation","path":"/jimmer-doc/docs/cache/cache-type/calculation","sidebar":"tutorialSidebar"},{"id":"cache/cache-type/index","path":"/jimmer-doc/docs/cache/cache-type/","sidebar":"tutorialSidebar"},{"id":"cache/cache-type/object","path":"/jimmer-doc/docs/cache/cache-type/object","sidebar":"tutorialSidebar"},{"id":"cache/consistency","path":"/jimmer-doc/docs/cache/consistency","sidebar":"tutorialSidebar"},{"id":"cache/enable-cache","path":"/jimmer-doc/docs/cache/enable-cache","sidebar":"tutorialSidebar"},{"id":"cache/index","path":"/jimmer-doc/docs/cache/","sidebar":"tutorialSidebar"},{"id":"cache/multiview-cache/abandoned-callback","path":"/jimmer-doc/docs/cache/multiview-cache/abandoned-callback","sidebar":"tutorialSidebar"},{"id":"cache/multiview-cache/advanced","path":"/jimmer-doc/docs/cache/multiview-cache/advanced","sidebar":"tutorialSidebar"},{"id":"cache/multiview-cache/concept","path":"/jimmer-doc/docs/cache/multiview-cache/concept","sidebar":"tutorialSidebar"},{"id":"cache/multiview-cache/index","path":"/jimmer-doc/docs/cache/multiview-cache/","sidebar":"tutorialSidebar"},{"id":"cache/multiview-cache/user-filter","path":"/jimmer-doc/docs/cache/multiview-cache/user-filter","sidebar":"tutorialSidebar"},{"id":"client/api","path":"/jimmer-doc/docs/client/api","sidebar":"tutorialSidebar"},{"id":"client/error","path":"/jimmer-doc/docs/client/error","sidebar":"tutorialSidebar"},{"id":"client/index","path":"/jimmer-doc/docs/client/","sidebar":"tutorialSidebar"},{"id":"configuration/batch-size","path":"/jimmer-doc/docs/configuration/batch-size","sidebar":"tutorialSidebar"},{"id":"configuration/cache-abandoned","path":"/jimmer-doc/docs/configuration/cache-abandoned","sidebar":"tutorialSidebar"},{"id":"configuration/connection-manager","path":"/jimmer-doc/docs/configuration/connection-manager","sidebar":"tutorialSidebar"},{"id":"configuration/database-validation","path":"/jimmer-doc/docs/configuration/database-validation","sidebar":"tutorialSidebar"},{"id":"configuration/default-database-stragegy","path":"/jimmer-doc/docs/configuration/default-database-stragegy","sidebar":"tutorialSidebar"},{"id":"configuration/default-enum-strategy","path":"/jimmer-doc/docs/configuration/default-enum-strategy","sidebar":"tutorialSidebar"},{"id":"configuration/dialect","path":"/jimmer-doc/docs/configuration/dialect","sidebar":"tutorialSidebar"},{"id":"configuration/dissociate-action-checking","path":"/jimmer-doc/docs/configuration/dissociate-action-checking","sidebar":"tutorialSidebar"},{"id":"configuration/id-only-target-checking-level","path":"/jimmer-doc/docs/configuration/id-only-target-checking-level","sidebar":"tutorialSidebar"},{"id":"configuration/index","path":"/jimmer-doc/docs/configuration/","sidebar":"tutorialSidebar"},{"id":"configuration/micro-service","path":"/jimmer-doc/docs/configuration/micro-service","sidebar":"tutorialSidebar"},{"id":"configuration/multi-datasources","path":"/jimmer-doc/docs/configuration/multi-datasources","sidebar":"tutorialSidebar"},{"id":"configuration/save-command-pessimistic-lock","path":"/jimmer-doc/docs/configuration/save-command-pessimistic-lock","sidebar":"tutorialSidebar"},{"id":"configuration/scala-providder","path":"/jimmer-doc/docs/configuration/scala-providder","sidebar":"tutorialSidebar"},{"id":"configuration/sql-log","path":"/jimmer-doc/docs/configuration/sql-log","sidebar":"tutorialSidebar"},{"id":"configuration/trigger-type","path":"/jimmer-doc/docs/configuration/trigger-type","sidebar":"tutorialSidebar"},{"id":"graphql/concept","path":"/jimmer-doc/docs/graphql/concept","sidebar":"tutorialSidebar"},{"id":"graphql/index","path":"/jimmer-doc/docs/graphql/","sidebar":"tutorialSidebar"},{"id":"graphql/mutation","path":"/jimmer-doc/docs/graphql/mutation","sidebar":"tutorialSidebar"},{"id":"graphql/query","path":"/jimmer-doc/docs/graphql/query","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/calculated/formula","path":"/jimmer-doc/docs/mapping/advanced/calculated/formula","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/calculated/index","path":"/jimmer-doc/docs/mapping/advanced/calculated/","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/calculated/transient","path":"/jimmer-doc/docs/mapping/advanced/calculated/transient","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/embedded","path":"/jimmer-doc/docs/mapping/advanced/embedded","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/enum","path":"/jimmer-doc/docs/mapping/advanced/enum","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/index","path":"/jimmer-doc/docs/mapping/advanced/","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/join-sql","path":"/jimmer-doc/docs/mapping/advanced/join-sql","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/join-table-filter","path":"/jimmer-doc/docs/mapping/advanced/join-table-filter","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/json","path":"/jimmer-doc/docs/mapping/advanced/json","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/key","path":"/jimmer-doc/docs/mapping/advanced/key","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/logical-deleted/entity","path":"/jimmer-doc/docs/mapping/advanced/logical-deleted/entity","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/logical-deleted/index","path":"/jimmer-doc/docs/mapping/advanced/logical-deleted/","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/logical-deleted/join-table","path":"/jimmer-doc/docs/mapping/advanced/logical-deleted/join-table","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/mapped-super-class","path":"/jimmer-doc/docs/mapping/advanced/mapped-super-class","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/on-dissociate","path":"/jimmer-doc/docs/mapping/advanced/on-dissociate","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/remote","path":"/jimmer-doc/docs/mapping/advanced/remote","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/view/id-view","path":"/jimmer-doc/docs/mapping/advanced/view/id-view","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/view/index","path":"/jimmer-doc/docs/mapping/advanced/view/","sidebar":"tutorialSidebar"},{"id":"mapping/advanced/view/many-to-many-view","path":"/jimmer-doc/docs/mapping/advanced/view/many-to-many-view","sidebar":"tutorialSidebar"},{"id":"mapping/base/association/index","path":"/jimmer-doc/docs/mapping/base/association/","sidebar":"tutorialSidebar"},{"id":"mapping/base/association/many-to-many","path":"/jimmer-doc/docs/mapping/base/association/many-to-many","sidebar":"tutorialSidebar"},{"id":"mapping/base/association/many-to-one","path":"/jimmer-doc/docs/mapping/base/association/many-to-one","sidebar":"tutorialSidebar"},{"id":"mapping/base/association/one-to-many","path":"/jimmer-doc/docs/mapping/base/association/one-to-many","sidebar":"tutorialSidebar"},{"id":"mapping/base/association/one-to-one","path":"/jimmer-doc/docs/mapping/base/association/one-to-one","sidebar":"tutorialSidebar"},{"id":"mapping/base/basic","path":"/jimmer-doc/docs/mapping/base/basic","sidebar":"tutorialSidebar"},{"id":"mapping/base/foreignkey","path":"/jimmer-doc/docs/mapping/base/foreignkey","sidebar":"tutorialSidebar"},{"id":"mapping/base/index","path":"/jimmer-doc/docs/mapping/base/","sidebar":"tutorialSidebar"},{"id":"mapping/base/json-converter","path":"/jimmer-doc/docs/mapping/base/json-converter","sidebar":"tutorialSidebar"},{"id":"mapping/base/more-type","path":"/jimmer-doc/docs/mapping/base/more-type","sidebar":"tutorialSidebar"},{"id":"mapping/base/naming-strategy","path":"/jimmer-doc/docs/mapping/base/naming-strategy","sidebar":"tutorialSidebar"},{"id":"mapping/base/nullity","path":"/jimmer-doc/docs/mapping/base/nullity","sidebar":"tutorialSidebar"},{"id":"mapping/index","path":"/jimmer-doc/docs/mapping/","sidebar":"tutorialSidebar"},{"id":"mutation/associations","path":"/jimmer-doc/docs/mutation/associations","sidebar":"tutorialSidebar"},{"id":"mutation/delete-command","path":"/jimmer-doc/docs/mutation/delete-command","sidebar":"tutorialSidebar"},{"id":"mutation/delete-statement","path":"/jimmer-doc/docs/mutation/delete-statement","sidebar":"tutorialSidebar"},{"id":"mutation/draft-interceptor","path":"/jimmer-doc/docs/mutation/draft-interceptor","sidebar":"tutorialSidebar"},{"id":"mutation/index","path":"/jimmer-doc/docs/mutation/","sidebar":"tutorialSidebar"},{"id":"mutation/save-command/associated-save-mode","path":"/jimmer-doc/docs/mutation/save-command/associated-save-mode","sidebar":"tutorialSidebar"},{"id":"mutation/save-command/association","path":"/jimmer-doc/docs/mutation/save-command/association","sidebar":"tutorialSidebar"},{"id":"mutation/save-command/dissociation","path":"/jimmer-doc/docs/mutation/save-command/dissociation","sidebar":"tutorialSidebar"},{"id":"mutation/save-command/id-checking","path":"/jimmer-doc/docs/mutation/save-command/id-checking","sidebar":"tutorialSidebar"},{"id":"mutation/save-command/incomplete","path":"/jimmer-doc/docs/mutation/save-command/incomplete","sidebar":"tutorialSidebar"},{"id":"mutation/save-command/index","path":"/jimmer-doc/docs/mutation/save-command/","sidebar":"tutorialSidebar"},{"id":"mutation/save-command/input-dto/dto-lang","path":"/jimmer-doc/docs/mutation/save-command/input-dto/dto-lang","sidebar":"tutorialSidebar"},{"id":"mutation/save-command/input-dto/index","path":"/jimmer-doc/docs/mutation/save-command/input-dto/","sidebar":"tutorialSidebar"},{"id":"mutation/save-command/input-dto/lonely","path":"/jimmer-doc/docs/mutation/save-command/input-dto/lonely","sidebar":"tutorialSidebar"},{"id":"mutation/save-command/input-dto/mapstruct","path":"/jimmer-doc/docs/mutation/save-command/input-dto/mapstruct","sidebar":"tutorialSidebar"},{"id":"mutation/save-command/input-dto/problem","path":"/jimmer-doc/docs/mutation/save-command/input-dto/problem","sidebar":"tutorialSidebar"},{"id":"mutation/save-command/lock","path":"/jimmer-doc/docs/mutation/save-command/lock","sidebar":"tutorialSidebar"},{"id":"mutation/save-command/other","path":"/jimmer-doc/docs/mutation/save-command/other","sidebar":"tutorialSidebar"},{"id":"mutation/save-command/save-mode","path":"/jimmer-doc/docs/mutation/save-command/save-mode","sidebar":"tutorialSidebar"},{"id":"mutation/save-command/usage","path":"/jimmer-doc/docs/mutation/save-command/usage","sidebar":"tutorialSidebar"},{"id":"mutation/trigger","path":"/jimmer-doc/docs/mutation/trigger","sidebar":"tutorialSidebar"},{"id":"mutation/update-statement","path":"/jimmer-doc/docs/mutation/update-statement","sidebar":"tutorialSidebar"},{"id":"object/draft","path":"/jimmer-doc/docs/object/draft","sidebar":"tutorialSidebar"},{"id":"object/dynamic","path":"/jimmer-doc/docs/object/dynamic","sidebar":"tutorialSidebar"},{"id":"object/immutable/current-situation","path":"/jimmer-doc/docs/object/immutable/current-situation","sidebar":"tutorialSidebar"},{"id":"object/immutable/index","path":"/jimmer-doc/docs/object/immutable/","sidebar":"tutorialSidebar"},{"id":"object/immutable/reason","path":"/jimmer-doc/docs/object/immutable/reason","sidebar":"tutorialSidebar"},{"id":"object/immutable/solution","path":"/jimmer-doc/docs/object/immutable/solution","sidebar":"tutorialSidebar"},{"id":"object/index","path":"/jimmer-doc/docs/object/","sidebar":"tutorialSidebar"},{"id":"object/jackson","path":"/jimmer-doc/docs/object/jackson","sidebar":"tutorialSidebar"},{"id":"object/tool","path":"/jimmer-doc/docs/object/tool","sidebar":"tutorialSidebar"},{"id":"object/view/dto-language","path":"/jimmer-doc/docs/object/view/dto-language","sidebar":"tutorialSidebar"},{"id":"object/view/index","path":"/jimmer-doc/docs/object/view/","sidebar":"tutorialSidebar"},{"id":"object/view/mapstruct","path":"/jimmer-doc/docs/object/view/mapstruct","sidebar":"tutorialSidebar"},{"id":"object/visibility","path":"/jimmer-doc/docs/object/visibility","sidebar":"tutorialSidebar"},{"id":"overview/apt-ksp","path":"/jimmer-doc/docs/overview/apt-ksp","sidebar":"tutorialSidebar"},{"id":"overview/benchmark","path":"/jimmer-doc/docs/overview/benchmark","sidebar":"tutorialSidebar"},{"id":"overview/index","path":"/jimmer-doc/docs/overview/","sidebar":"tutorialSidebar"},{"id":"overview/introduction","path":"/jimmer-doc/docs/overview/introduction","sidebar":"tutorialSidebar"},{"id":"overview/welcome","path":"/jimmer-doc/docs/overview/welcome","sidebar":"tutorialSidebar"},{"id":"query/associations","path":"/jimmer-doc/docs/query/associations","sidebar":"tutorialSidebar"},{"id":"query/dynamic-join/chain-style","path":"/jimmer-doc/docs/query/dynamic-join/chain-style","sidebar":"tutorialSidebar"},{"id":"query/dynamic-join/index","path":"/jimmer-doc/docs/query/dynamic-join/","sidebar":"tutorialSidebar"},{"id":"query/dynamic-join/kotlin-join","path":"/jimmer-doc/docs/query/dynamic-join/kotlin-join","sidebar":"tutorialSidebar"},{"id":"query/dynamic-join/merge","path":"/jimmer-doc/docs/query/dynamic-join/merge","sidebar":"tutorialSidebar"},{"id":"query/dynamic-join/optimization","path":"/jimmer-doc/docs/query/dynamic-join/optimization","sidebar":"tutorialSidebar"},{"id":"query/dynamic-join/problem","path":"/jimmer-doc/docs/query/dynamic-join/problem","sidebar":"tutorialSidebar"},{"id":"query/dynamic-join/table-ex","path":"/jimmer-doc/docs/query/dynamic-join/table-ex","sidebar":"tutorialSidebar"},{"id":"query/dynamic-join/weak-join","path":"/jimmer-doc/docs/query/dynamic-join/weak-join","sidebar":"tutorialSidebar"},{"id":"query/dynamic-order","path":"/jimmer-doc/docs/query/dynamic-order","sidebar":"tutorialSidebar"},{"id":"query/dynamic-where","path":"/jimmer-doc/docs/query/dynamic-where","sidebar":"tutorialSidebar"},{"id":"query/expression","path":"/jimmer-doc/docs/query/expression","sidebar":"tutorialSidebar"},{"id":"query/global-filter/index","path":"/jimmer-doc/docs/query/global-filter/","sidebar":"tutorialSidebar"},{"id":"query/global-filter/logical-deleted","path":"/jimmer-doc/docs/query/global-filter/logical-deleted","sidebar":"tutorialSidebar"},{"id":"query/global-filter/user-filter","path":"/jimmer-doc/docs/query/global-filter/user-filter","sidebar":"tutorialSidebar"},{"id":"query/group","path":"/jimmer-doc/docs/query/group","sidebar":"tutorialSidebar"},{"id":"query/implicit-subquery","path":"/jimmer-doc/docs/query/implicit-subquery","sidebar":"tutorialSidebar"},{"id":"query/index","path":"/jimmer-doc/docs/query/","sidebar":"tutorialSidebar"},{"id":"query/native-sql","path":"/jimmer-doc/docs/query/native-sql","sidebar":"tutorialSidebar"},{"id":"query/object-fetcher/association","path":"/jimmer-doc/docs/query/object-fetcher/association","sidebar":"tutorialSidebar"},{"id":"query/object-fetcher/dto","path":"/jimmer-doc/docs/query/object-fetcher/dto","sidebar":"tutorialSidebar"},{"id":"query/object-fetcher/index","path":"/jimmer-doc/docs/query/object-fetcher/","sidebar":"tutorialSidebar"},{"id":"query/object-fetcher/props","path":"/jimmer-doc/docs/query/object-fetcher/props","sidebar":"tutorialSidebar"},{"id":"query/object-fetcher/recursive","path":"/jimmer-doc/docs/query/object-fetcher/recursive","sidebar":"tutorialSidebar"},{"id":"query/object-fetcher/spring-data","path":"/jimmer-doc/docs/query/object-fetcher/spring-data","sidebar":"tutorialSidebar"},{"id":"query/object-fetcher/usage","path":"/jimmer-doc/docs/query/object-fetcher/usage","sidebar":"tutorialSidebar"},{"id":"query/object-fetcher/view","path":"/jimmer-doc/docs/query/object-fetcher/view","sidebar":"tutorialSidebar"},{"id":"query/paging/deep-optimization","path":"/jimmer-doc/docs/query/paging/deep-optimization","sidebar":"tutorialSidebar"},{"id":"query/paging/index","path":"/jimmer-doc/docs/query/paging/","sidebar":"tutorialSidebar"},{"id":"query/paging/reverse-sorting","path":"/jimmer-doc/docs/query/paging/reverse-sorting","sidebar":"tutorialSidebar"},{"id":"query/paging/unncessary-join","path":"/jimmer-doc/docs/query/paging/unncessary-join","sidebar":"tutorialSidebar"},{"id":"query/paging/usage","path":"/jimmer-doc/docs/query/paging/usage","sidebar":"tutorialSidebar"},{"id":"query/sub-query","path":"/jimmer-doc/docs/query/sub-query","sidebar":"tutorialSidebar"},{"id":"query/super_qbe","path":"/jimmer-doc/docs/query/super_qbe","sidebar":"tutorialSidebar"},{"id":"query/usage","path":"/jimmer-doc/docs/query/usage","sidebar":"tutorialSidebar"},{"id":"quick-view/dsl/feature","path":"/jimmer-doc/docs/quick-view/dsl/feature","sidebar":"tutorialSidebar"},{"id":"quick-view/dsl/index","path":"/jimmer-doc/docs/quick-view/dsl/","sidebar":"tutorialSidebar"},{"id":"quick-view/dsl/super_qbe","path":"/jimmer-doc/docs/quick-view/dsl/super_qbe","sidebar":"tutorialSidebar"},{"id":"quick-view/fetch/export/comparison","path":"/jimmer-doc/docs/quick-view/fetch/export/comparison","sidebar":"tutorialSidebar"},{"id":"quick-view/fetch/export/dto","path":"/jimmer-doc/docs/quick-view/fetch/export/dto","sidebar":"tutorialSidebar"},{"id":"quick-view/fetch/export/entity","path":"/jimmer-doc/docs/quick-view/fetch/export/entity","sidebar":"tutorialSidebar"},{"id":"quick-view/fetch/export/index","path":"/jimmer-doc/docs/quick-view/fetch/export/","sidebar":"tutorialSidebar"},{"id":"quick-view/fetch/feature","path":"/jimmer-doc/docs/quick-view/fetch/feature","sidebar":"tutorialSidebar"},{"id":"quick-view/fetch/index","path":"/jimmer-doc/docs/quick-view/fetch/","sidebar":"tutorialSidebar"},{"id":"quick-view/get-started/create-database","path":"/jimmer-doc/docs/quick-view/get-started/create-database","sidebar":"tutorialSidebar"},{"id":"quick-view/get-started/create-project","path":"/jimmer-doc/docs/quick-view/get-started/create-project","sidebar":"tutorialSidebar"},{"id":"quick-view/get-started/define-entity","path":"/jimmer-doc/docs/quick-view/get-started/define-entity","sidebar":"tutorialSidebar"},{"id":"quick-view/get-started/generate-code","path":"/jimmer-doc/docs/quick-view/get-started/generate-code","sidebar":"tutorialSidebar"},{"id":"quick-view/get-started/index","path":"/jimmer-doc/docs/quick-view/get-started/","sidebar":"tutorialSidebar"},{"id":"quick-view/get-started/usage","path":"/jimmer-doc/docs/quick-view/get-started/usage","sidebar":"tutorialSidebar"},{"id":"quick-view/index","path":"/jimmer-doc/docs/quick-view/","sidebar":"tutorialSidebar"},{"id":"quick-view/precondition","path":"/jimmer-doc/docs/quick-view/precondition","sidebar":"tutorialSidebar"},{"id":"quick-view/save/export/index","path":"/jimmer-doc/docs/quick-view/save/export/","sidebar":"tutorialSidebar"},{"id":"quick-view/save/export/long","path":"/jimmer-doc/docs/quick-view/save/export/long","sidebar":"tutorialSidebar"},{"id":"quick-view/save/export/root","path":"/jimmer-doc/docs/quick-view/save/export/root","sidebar":"tutorialSidebar"},{"id":"quick-view/save/export/short","path":"/jimmer-doc/docs/quick-view/save/export/short","sidebar":"tutorialSidebar"},{"id":"quick-view/save/feature","path":"/jimmer-doc/docs/quick-view/save/feature","sidebar":"tutorialSidebar"},{"id":"quick-view/save/index","path":"/jimmer-doc/docs/quick-view/save/","sidebar":"tutorialSidebar"},{"id":"quick-view/standard-demo","path":"/jimmer-doc/docs/quick-view/standard-demo","sidebar":"tutorialSidebar"},{"id":"resource/discuss","path":"/jimmer-doc/docs/resource/discuss","sidebar":"tutorialSidebar"},{"id":"resource/ecosystem","path":"/jimmer-doc/docs/resource/ecosystem","sidebar":"tutorialSidebar"},{"id":"resource/index","path":"/jimmer-doc/docs/resource/","sidebar":"tutorialSidebar"},{"id":"resource/video","path":"/jimmer-doc/docs/resource/video","sidebar":"tutorialSidebar"},{"id":"showcase/base","path":"/jimmer-doc/docs/showcase/base","sidebar":"tutorialSidebar"},{"id":"showcase/comprehensive-query","path":"/jimmer-doc/docs/showcase/comprehensive-query","sidebar":"tutorialSidebar"},{"id":"showcase/delete-statement","path":"/jimmer-doc/docs/showcase/delete-statement","sidebar":"tutorialSidebar"},{"id":"showcase/fetch-association/associated-id","path":"/jimmer-doc/docs/showcase/fetch-association/associated-id","sidebar":"tutorialSidebar"},{"id":"showcase/fetch-association/associated-object","path":"/jimmer-doc/docs/showcase/fetch-association/associated-object","sidebar":"tutorialSidebar"},{"id":"showcase/fetch-association/deeper-association","path":"/jimmer-doc/docs/showcase/fetch-association/deeper-association","sidebar":"tutorialSidebar"},{"id":"showcase/fetch-association/index","path":"/jimmer-doc/docs/showcase/fetch-association/","sidebar":"tutorialSidebar"},{"id":"showcase/fetch-association/more-association","path":"/jimmer-doc/docs/showcase/fetch-association/more-association","sidebar":"tutorialSidebar"},{"id":"showcase/index","path":"/jimmer-doc/docs/showcase/","sidebar":"tutorialSidebar"},{"id":"showcase/order-by/dynamic","path":"/jimmer-doc/docs/showcase/order-by/dynamic","sidebar":"tutorialSidebar"},{"id":"showcase/order-by/index","path":"/jimmer-doc/docs/showcase/order-by/","sidebar":"tutorialSidebar"},{"id":"showcase/order-by/usage","path":"/jimmer-doc/docs/showcase/order-by/usage","sidebar":"tutorialSidebar"},{"id":"showcase/other-query","path":"/jimmer-doc/docs/showcase/other-query","sidebar":"tutorialSidebar"},{"id":"showcase/page","path":"/jimmer-doc/docs/showcase/page","sidebar":"tutorialSidebar"},{"id":"showcase/recursive-query/depth","path":"/jimmer-doc/docs/showcase/recursive-query/depth","sidebar":"tutorialSidebar"},{"id":"showcase/recursive-query/index","path":"/jimmer-doc/docs/showcase/recursive-query/","sidebar":"tutorialSidebar"},{"id":"showcase/recursive-query/multiple-props","path":"/jimmer-doc/docs/showcase/recursive-query/multiple-props","sidebar":"tutorialSidebar"},{"id":"showcase/recursive-query/node-control","path":"/jimmer-doc/docs/showcase/recursive-query/node-control","sidebar":"tutorialSidebar"},{"id":"showcase/recursive-query/usage","path":"/jimmer-doc/docs/showcase/recursive-query/usage","sidebar":"tutorialSidebar"},{"id":"showcase/to-be-conitnued","path":"/jimmer-doc/docs/showcase/to-be-conitnued","sidebar":"tutorialSidebar"},{"id":"showcase/update-statement","path":"/jimmer-doc/docs/showcase/update-statement","sidebar":"tutorialSidebar"},{"id":"showcase/where/associated-id","path":"/jimmer-doc/docs/showcase/where/associated-id","sidebar":"tutorialSidebar"},{"id":"showcase/where/dynamic-join","path":"/jimmer-doc/docs/showcase/where/dynamic-join","sidebar":"tutorialSidebar"},{"id":"showcase/where/dynamic-where","path":"/jimmer-doc/docs/showcase/where/dynamic-where","sidebar":"tutorialSidebar"},{"id":"showcase/where/implicit-subquery","path":"/jimmer-doc/docs/showcase/where/implicit-subquery","sidebar":"tutorialSidebar"},{"id":"showcase/where/index","path":"/jimmer-doc/docs/showcase/where/","sidebar":"tutorialSidebar"},{"id":"showcase/where/usage","path":"/jimmer-doc/docs/showcase/where/usage","sidebar":"tutorialSidebar"},{"id":"spring/appendix","path":"/jimmer-doc/docs/spring/appendix","sidebar":"tutorialSidebar"},{"id":"spring/index","path":"/jimmer-doc/docs/spring/","sidebar":"tutorialSidebar"},{"id":"spring/repository/abstract","path":"/jimmer-doc/docs/spring/repository/abstract","sidebar":"tutorialSidebar"},{"id":"spring/repository/concept","path":"/jimmer-doc/docs/spring/repository/concept","sidebar":"tutorialSidebar"},{"id":"spring/repository/default","path":"/jimmer-doc/docs/spring/repository/default","sidebar":"tutorialSidebar"},{"id":"spring/repository/dto","path":"/jimmer-doc/docs/spring/repository/dto","sidebar":"tutorialSidebar"},{"id":"spring/repository/index","path":"/jimmer-doc/docs/spring/repository/","sidebar":"tutorialSidebar"},{"id":"spring/spring-cloud","path":"/jimmer-doc/docs/spring/spring-cloud","sidebar":"tutorialSidebar"},{"id":"spring/transaction","path":"/jimmer-doc/docs/spring/transaction","sidebar":"tutorialSidebar"}],"draftIds":[],"sidebars":{"tutorialSidebar":{"link":{"path":"/jimmer-doc/docs/overview/","label":"Introduction \u2605"}}}}],"breadcrumbs":true}}}'),i=JSON.parse('{"defaultLocale":"en","locales":["en","zh"],"path":"i18n","currentLocale":"en","localeConfigs":{"en":{"label":"English","direction":"ltr","htmlLang":"en","calendar":"gregory","path":"en"},"zh":{"label":"\u4e2d\u6587","direction":"ltr","htmlLang":"zh","calendar":"gregory","path":"zh"}}}');var s=n(22654);const c=JSON.parse('{"docusaurusVersion":"3.2.1","siteVersion":"0.0.0","pluginVersions":{"docusaurus-plugin-content-docs":{"type":"package","name":"@docusaurus/plugin-content-docs","version":"3.2.1"},"docusaurus-plugin-content-blog":{"type":"package","name":"@docusaurus/plugin-content-blog","version":"3.2.1"},"docusaurus-plugin-content-pages":{"type":"package","name":"@docusaurus/plugin-content-pages","version":"3.2.1"},"docusaurus-plugin-sitemap":{"type":"package","name":"@docusaurus/plugin-sitemap","version":"3.2.1"},"docusaurus-theme-classic":{"type":"package","name":"@docusaurus/theme-classic","version":"3.2.1"},"@easyops-cn/docusaurus-search-local":{"type":"package","name":"@easyops-cn/docusaurus-search-local","version":"0.33.6"}}}');var l=n(74848);const u={siteConfig:o.default,siteMetadata:c,globalData:a,i18n:i,codeTranslations:s},d=r.createContext(u);function p(e){let{children:t}=e;return(0,l.jsx)(d.Provider,{value:u,children:t})}},67489:(e,t,n)=>{"use strict";n.d(t,{A:()=>h});var r=n(96540),o=n(38193),a=n(5260),i=n(70440),s=n(9909),c=n(53102),l=n(74848);function u(e){let{error:t,tryAgain:n}=e;return(0,l.jsxs)("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"flex-start",minHeight:"100vh",width:"100%",maxWidth:"80ch",fontSize:"20px",margin:"0 auto",padding:"1rem"},children:[(0,l.jsx)("h1",{style:{fontSize:"3rem"},children:"This page crashed"}),(0,l.jsx)("button",{type:"button",onClick:n,style:{margin:"1rem 0",fontSize:"2rem",cursor:"pointer",borderRadius:20,padding:"1rem"},children:"Try again"}),(0,l.jsx)(d,{error:t})]})}function d(e){let{error:t}=e;const n=(0,i.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,l.jsx)("p",{style:{whiteSpace:"pre-wrap"},children:n})}function p(e){let{children:t}=e;return(0,l.jsx)(c.W,{value:{plugin:{name:"docusaurus-core-error-boundary",id:"default"}},children:t})}function m(e){let{error:t,tryAgain:n}=e;return(0,l.jsx)(p,{children:(0,l.jsxs)(h,{fallback:()=>(0,l.jsx)(u,{error:t,tryAgain:n}),children:[(0,l.jsx)(a.A,{children:(0,l.jsx)("title",{children:"Page Error"})}),(0,l.jsx)(s.A,{children:(0,l.jsx)(u,{error:t,tryAgain:n})})]})})}const f=e=>(0,l.jsx)(m,{...e});class h extends r.Component{constructor(e){super(e),this.state={error:null}}componentDidCatch(e){o.A.canUseDOM&&this.setState({error:e})}render(){const{children:e}=this.props,{error:t}=this.state;if(t){const e={error:t,tryAgain:()=>this.setState({error:null})};return(this.props.fallback??f)(e)}return e??null}}},38193:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});const r="undefined"!=typeof window&&"document"in window&&"createElement"in window.document,o={canUseDOM:r,canUseEventListeners:r&&("addEventListener"in window||"attachEvent"in window),canUseIntersectionObserver:r&&"IntersectionObserver"in window,canUseViewport:r&&"screen"in window}},5260:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});n(96540);var r=n(80545),o=n(74848);function a(e){return(0,o.jsx)(r.mg,{...e})}},28774:(e,t,n)=>{"use strict";n.d(t,{A:()=>m});var r=n(96540),o=n(54625),a=n(70440),i=n(44586),s=n(16654),c=n(38193),l=n(63427),u=n(86025),d=n(74848);function p(e,t){let{isNavLink:n,to:p,href:m,activeClassName:f,isActive:h,"data-noBrokenLinkCheck":g,autoAddBaseUrl:b=!0,...y}=e;const{siteConfig:{trailingSlash:v,baseUrl:w}}=(0,i.A)(),{withBaseUrl:x}=(0,u.h)(),k=(0,l.A)(),j=(0,r.useRef)(null);(0,r.useImperativeHandle)(t,(()=>j.current));const S=p||m;const E=(0,s.A)(S),_=S?.replace("pathname://","");let T=void 0!==_?(C=_,b&&(e=>e.startsWith("/"))(C)?x(C):C):void 0;var C;T&&E&&(T=(0,a.applyTrailingSlash)(T,{trailingSlash:v,baseUrl:w}));const A=(0,r.useRef)(!1),P=n?o.k2:o.N_,N=c.A.canUseIntersectionObserver,L=(0,r.useRef)(),R=()=>{A.current||null==T||(window.docusaurus.preload(T),A.current=!0)};(0,r.useEffect)((()=>(!N&&E&&null!=T&&window.docusaurus.prefetch(T),()=>{N&&L.current&&L.current.disconnect()})),[L,T,N,E]);const I=T?.startsWith("#")??!1,O=!y.target||"_self"===y.target,F=!T||!E||!O||I;return g||!I&&F||k.collectLink(T),y.id&&k.collectAnchor(y.id),F?(0,d.jsx)("a",{ref:j,href:T,...S&&!E&&{target:"_blank",rel:"noopener noreferrer"},...y}):(0,d.jsx)(P,{...y,onMouseEnter:R,onTouchStart:R,innerRef:e=>{j.current=e,N&&e&&E&&(L.current=new window.IntersectionObserver((t=>{t.forEach((t=>{e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(L.current.unobserve(e),L.current.disconnect(),null!=T&&window.docusaurus.prefetch(T))}))})),L.current.observe(e))},to:T,...n&&{isActive:h,activeClassName:f}})}const m=r.forwardRef(p)},21312:(e,t,n)=>{"use strict";n.d(t,{A:()=>l,T:()=>c});var r=n(96540),o=n(74848);function a(e,t){const n=e.split(/(\{\w+\})/).map(((e,n)=>{if(n%2==1){const n=t?.[e.slice(1,-1)];if(void 0!==n)return n}return e}));return n.some((e=>(0,r.isValidElement)(e)))?n.map(((e,t)=>(0,r.isValidElement)(e)?r.cloneElement(e,{key:t}):e)).filter((e=>""!==e)):n.join("")}var i=n(22654);function s(e){let{id:t,message:n}=e;if(void 0===t&&void 0===n)throw new Error("Docusaurus translation declarations must have at least a translation id or a default translation message");return i[t??n]??n??t}function c(e,t){let{message:n,id:r}=e;return a(s({message:n,id:r}),t)}function l(e){let{children:t,id:n,values:r}=e;if(t&&"string"!=typeof t)throw console.warn("Illegal children",t),new Error("The Docusaurus component only accept simple string values");const i=s({message:t,id:n});return(0,o.jsx)(o.Fragment,{children:a(i,r)})}},17065:(e,t,n)=>{"use strict";n.d(t,{W:()=>r});const r="default"},16654:(e,t,n)=>{"use strict";function r(e){return/^(?:\w*:|\/\/)/.test(e)}function o(e){return void 0!==e&&!r(e)}n.d(t,{A:()=>o,z:()=>r})},86025:(e,t,n)=>{"use strict";n.d(t,{A:()=>s,h:()=>i});var r=n(96540),o=n(44586),a=n(16654);function i(){const{siteConfig:{baseUrl:e,url:t}}=(0,o.A)(),n=(0,r.useCallback)(((n,r)=>function(e,t,n,r){let{forcePrependBaseUrl:o=!1,absolute:i=!1}=void 0===r?{}:r;if(!n||n.startsWith("#")||(0,a.z)(n))return n;if(o)return t+n.replace(/^\//,"");if(n===t.replace(/\/$/,""))return t;const s=n.startsWith(t)?n:t+n.replace(/^\//,"");return i?e+s:s}(t,e,n,r)),[t,e]);return{withBaseUrl:n}}function s(e,t){void 0===t&&(t={});const{withBaseUrl:n}=i();return n(e,t)}},63427:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(96540);n(74848);const o=r.createContext({collectAnchor:()=>{},collectLink:()=>{}}),a=()=>(0,r.useContext)(o);function i(){return a()}},44586:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=n(96540),o=n(26988);function a(){return(0,r.useContext)(o.o)}},66588:(e,t,n)=>{"use strict";n.d(t,{P_:()=>i,kh:()=>a});var r=n(44586),o=n(17065);function a(e,t){void 0===t&&(t={});const n=function(){const{globalData:e}=(0,r.A)();return e}()[e];if(!n&&t.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin.`);return n}function i(e,t,n){void 0===t&&(t=o.W),void 0===n&&(n={});const r=a(e),i=r?.[t];if(!i&&n.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin with id "${t}".`);return i}},92303:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=n(96540),o=n(6125);function a(){return(0,r.useContext)(o.o)}},205:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(96540);const o=n(38193).A.canUseDOM?r.useLayoutEffect:r.useEffect},36803:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=n(96540),o=n(53102);function a(){const e=r.useContext(o.o);if(!e)throw new Error("Unexpected: no Docusaurus route context found");return e}},86921:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});const r=e=>"object"==typeof e&&!!e&&Object.keys(e).length>0;function o(e){const t={};return function e(n,o){Object.entries(n).forEach((n=>{let[a,i]=n;const s=o?`${o}.${a}`:a;r(i)?e(i,s):t[s]=i}))}(e),t}},53102:(e,t,n)=>{"use strict";n.d(t,{W:()=>i,o:()=>a});var r=n(96540),o=n(74848);const a=r.createContext(null);function i(e){let{children:t,value:n}=e;const i=r.useContext(a),s=(0,r.useMemo)((()=>function(e){let{parent:t,value:n}=e;if(!t){if(!n)throw new Error("Unexpected: no Docusaurus route context found");if(!("plugin"in n))throw new Error("Unexpected: Docusaurus topmost route context has no `plugin` attribute");return n}const r={...t.data,...n?.data};return{plugin:t.plugin,data:r}}({parent:i,value:n})),[i,n]);return(0,o.jsx)(a.Provider,{value:s,children:t})}},48295:(e,t,n)=>{"use strict";n.d(t,{zK:()=>m,vT:()=>u,Gy:()=>c,HW:()=>f,ht:()=>l,r7:()=>p,jh:()=>d});var r=n(56347),o=n(66588);const a=e=>e.versions.find((e=>e.isLast));function i(e,t){const n=function(e,t){const n=a(e);return[...e.versions.filter((e=>e!==n)),n].find((e=>!!(0,r.B6)(t,{path:e.path,exact:!1,strict:!1})))}(e,t),o=n?.docs.find((e=>!!(0,r.B6)(t,{path:e.path,exact:!0,strict:!1})));return{activeVersion:n,activeDoc:o,alternateDocVersions:o?function(t){const n={};return e.versions.forEach((e=>{e.docs.forEach((r=>{r.id===t&&(n[e.name]=r)}))})),n}(o.id):{}}}const s={},c=()=>(0,o.kh)("docusaurus-plugin-content-docs")??s,l=e=>{try{return(0,o.P_)("docusaurus-plugin-content-docs",e,{failfast:!0})}catch(t){throw new Error("You are using a feature of the Docusaurus docs plugin, but this plugin does not seem to be enabled"+("Default"===e?"":` (pluginId=${e}`),{cause:t})}};function u(e){void 0===e&&(e={});const t=c(),{pathname:n}=(0,r.zy)();return function(e,t,n){void 0===n&&(n={});const o=Object.entries(e).sort(((e,t)=>t[1].path.localeCompare(e[1].path))).find((e=>{let[,n]=e;return!!(0,r.B6)(t,{path:n.path,exact:!1,strict:!1})})),a=o?{pluginId:o[0],pluginData:o[1]}:void 0;if(!a&&n.failfast)throw new Error(`Can't find active docs plugin for "${t}" pathname, while it was expected to be found. Maybe you tried to use a docs feature that can only be used on a docs-related page? Existing docs plugin paths are: ${Object.values(e).map((e=>e.path)).join(", ")}`);return a}(t,n,e)}function d(e){return l(e).versions}function p(e){const t=l(e);return a(t)}function m(e){const t=l(e),{pathname:n}=(0,r.zy)();return i(t,n)}function f(e){const t=l(e),{pathname:n}=(0,r.zy)();return function(e,t){const n=a(e);return{latestDocSuggestion:i(e,t).alternateDocVersions[n.name],latestVersionSuggestion:n}}(t,n)}},76294:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>a});var r=n(5947),o=n.n(r);o().configure({showSpinner:!1});const a={onRouteUpdate(e){let{location:t,previousLocation:n}=e;if(n&&t.pathname!==n.pathname){const e=window.setTimeout((()=>{o().start()}),200);return()=>window.clearTimeout(e)}},onRouteDidUpdate(){o().done()}}},46491:(e,t,n)=>{"use strict";n.r(t);var r=n(84876),o=n(4784);!function(e){const{themeConfig:{prism:t}}=o.default,{additionalLanguages:r}=t;globalThis.Prism=e,r.forEach((e=>{n(34387)(`./prism-${e}`)})),delete globalThis.Prism}(r.My)},51107:(e,t,n)=>{"use strict";n.d(t,{A:()=>u});n(96540);var r=n(18215),o=n(21312),a=n(6342),i=n(28774),s=n(63427);const c={anchorWithStickyNavbar:"anchorWithStickyNavbar_LWe7",anchorWithHideOnScrollNavbar:"anchorWithHideOnScrollNavbar_WYt5"};var l=n(74848);function u(e){let{as:t,id:n,...u}=e;const d=(0,s.A)(),{navbar:{hideOnScroll:p}}=(0,a.p)();if("h1"===t||!n)return(0,l.jsx)(t,{...u,id:void 0});d.collectAnchor(n);const m=(0,o.T)({id:"theme.common.headingLinkTitle",message:"Direct link to {heading}",description:"Title for link to heading"},{heading:"string"==typeof u.children?u.children:n});return(0,l.jsxs)(t,{...u,className:(0,r.A)("anchor",p?c.anchorWithHideOnScrollNavbar:c.anchorWithStickyNavbar,u.className),id:n,children:[u.children,(0,l.jsx)(i.A,{className:"hash-link",to:`#${n}`,"aria-label":m,title:m,children:"\u200b"})]})}},43186:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});n(96540);const r={iconExternalLink:"iconExternalLink_nPIU"};var o=n(74848);function a(e){let{width:t=13.5,height:n=13.5}=e;return(0,o.jsx)("svg",{width:t,height:n,"aria-hidden":"true",viewBox:"0 0 24 24",className:r.iconExternalLink,children:(0,o.jsx)("path",{fill:"currentColor",d:"M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"})})}},9909:(e,t,n)=>{"use strict";n.d(t,{A:()=>Mt});var r=n(96540),o=n(18215),a=n(67489),i=n(61213),s=n(56347),c=n(21312),l=n(75062),u=n(74848);const d="__docusaurus_skipToContent_fallback";function p(e){e.setAttribute("tabindex","-1"),e.focus(),e.removeAttribute("tabindex")}function m(){const e=(0,r.useRef)(null),{action:t}=(0,s.W6)(),n=(0,r.useCallback)((e=>{e.preventDefault();const t=document.querySelector("main:first-of-type")??document.getElementById(d);t&&p(t)}),[]);return(0,l.$)((n=>{let{location:r}=n;e.current&&!r.hash&&"PUSH"===t&&p(e.current)})),{containerRef:e,onClick:n}}const f=(0,c.T)({id:"theme.common.skipToMainContent",description:"The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation",message:"Skip to main content"});function h(e){const t=e.children??f,{containerRef:n,onClick:r}=m();return(0,u.jsx)("div",{ref:n,role:"region","aria-label":f,children:(0,u.jsx)("a",{...e,href:`#${d}`,onClick:r,children:t})})}var g=n(17559),b=n(14090);const y={skipToContent:"skipToContent_fXgn"};function v(){return(0,u.jsx)(h,{className:y.skipToContent})}var w=n(6342),x=n(65041);function k(e){let{width:t=21,height:n=21,color:r="currentColor",strokeWidth:o=1.2,className:a,...i}=e;return(0,u.jsx)("svg",{viewBox:"0 0 15 15",width:t,height:n,...i,children:(0,u.jsx)("g",{stroke:r,strokeWidth:o,children:(0,u.jsx)("path",{d:"M.75.75l13.5 13.5M14.25.75L.75 14.25"})})})}const j={closeButton:"closeButton_CVFx"};function S(e){return(0,u.jsx)("button",{type:"button","aria-label":(0,c.T)({id:"theme.AnnouncementBar.closeButtonAriaLabel",message:"Close",description:"The ARIA label for close button of announcement bar"}),...e,className:(0,o.A)("clean-btn close",j.closeButton,e.className),children:(0,u.jsx)(k,{width:14,height:14,strokeWidth:3.1})})}const E={content:"content_knG7"};function _(e){const{announcementBar:t}=(0,w.p)(),{content:n}=t;return(0,u.jsx)("div",{...e,className:(0,o.A)(E.content,e.className),dangerouslySetInnerHTML:{__html:n}})}const T={announcementBar:"announcementBar_mb4j",announcementBarPlaceholder:"announcementBarPlaceholder_vyr4",announcementBarClose:"announcementBarClose_gvF7",announcementBarContent:"announcementBarContent_xLdY"};function C(){const{announcementBar:e}=(0,w.p)(),{isActive:t,close:n}=(0,x.Mj)();if(!t)return null;const{backgroundColor:r,textColor:o,isCloseable:a}=e;return(0,u.jsxs)("div",{className:T.announcementBar,style:{backgroundColor:r,color:o},role:"banner",children:[a&&(0,u.jsx)("div",{className:T.announcementBarPlaceholder}),(0,u.jsx)(_,{className:T.announcementBarContent}),a&&(0,u.jsx)(S,{onClick:n,className:T.announcementBarClose})]})}var A=n(22069),P=n(23104);var N=n(89532),L=n(75600);const R=r.createContext(null);function I(e){let{children:t}=e;const n=function(){const e=(0,A.M)(),t=(0,L.YL)(),[n,o]=(0,r.useState)(!1),a=null!==t.component,i=(0,N.ZC)(a);return(0,r.useEffect)((()=>{a&&!i&&o(!0)}),[a,i]),(0,r.useEffect)((()=>{a?e.shown||o(!0):o(!1)}),[e.shown,a]),(0,r.useMemo)((()=>[n,o]),[n])}();return(0,u.jsx)(R.Provider,{value:n,children:t})}function O(e){if(e.component){const t=e.component;return(0,u.jsx)(t,{...e.props})}}function F(){const e=(0,r.useContext)(R);if(!e)throw new N.dV("NavbarSecondaryMenuDisplayProvider");const[t,n]=e,o=(0,r.useCallback)((()=>n(!1)),[n]),a=(0,L.YL)();return(0,r.useMemo)((()=>({shown:t,hide:o,content:O(a)})),[o,a,t])}function q(e){let{header:t,primaryMenu:n,secondaryMenu:r}=e;const{shown:a}=F();return(0,u.jsxs)("div",{className:"navbar-sidebar",children:[t,(0,u.jsxs)("div",{className:(0,o.A)("navbar-sidebar__items",{"navbar-sidebar__items--show-secondary":a}),children:[(0,u.jsx)("div",{className:"navbar-sidebar__item menu",children:n}),(0,u.jsx)("div",{className:"navbar-sidebar__item menu",children:r})]})]})}var D=n(95293),M=n(92303);function B(e){return(0,u.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,u.jsx)("path",{fill:"currentColor",d:"M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"})})}function z(e){return(0,u.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,u.jsx)("path",{fill:"currentColor",d:"M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"})})}const $={toggle:"toggle_vylO",toggleButton:"toggleButton_gllP",darkToggleIcon:"darkToggleIcon_wfgR",lightToggleIcon:"lightToggleIcon_pyhR",toggleButtonDisabled:"toggleButtonDisabled_aARS"};function U(e){let{className:t,buttonClassName:n,value:r,onChange:a}=e;const i=(0,M.A)(),s=(0,c.T)({message:"Switch between dark and light mode (currently {mode})",id:"theme.colorToggle.ariaLabel",description:"The ARIA label for the navbar color mode toggle"},{mode:"dark"===r?(0,c.T)({message:"dark mode",id:"theme.colorToggle.ariaLabel.mode.dark",description:"The name for the dark color mode"}):(0,c.T)({message:"light mode",id:"theme.colorToggle.ariaLabel.mode.light",description:"The name for the light color mode"})});return(0,u.jsx)("div",{className:(0,o.A)($.toggle,t),children:(0,u.jsxs)("button",{className:(0,o.A)("clean-btn",$.toggleButton,!i&&$.toggleButtonDisabled,n),type:"button",onClick:()=>a("dark"===r?"light":"dark"),disabled:!i,title:s,"aria-label":s,"aria-live":"polite",children:[(0,u.jsx)(B,{className:(0,o.A)($.toggleIcon,$.lightToggleIcon)}),(0,u.jsx)(z,{className:(0,o.A)($.toggleIcon,$.darkToggleIcon)})]})})}const W=r.memo(U),H={darkNavbarColorModeToggle:"darkNavbarColorModeToggle_X3D1"};function V(e){let{className:t}=e;const n=(0,w.p)().navbar.style,r=(0,w.p)().colorMode.disableSwitch,{colorMode:o,setColorMode:a}=(0,D.G)();return r?null:(0,u.jsx)(W,{className:t,buttonClassName:"dark"===n?H.darkNavbarColorModeToggle:void 0,value:o,onChange:a})}var Q=n(23465);function G(){return(0,u.jsx)(Q.A,{className:"navbar__brand",imageClassName:"navbar__logo",titleClassName:"navbar__title text--truncate"})}function Y(){const e=(0,A.M)();return(0,u.jsx)("button",{type:"button","aria-label":(0,c.T)({id:"theme.docs.sidebar.closeSidebarButtonAriaLabel",message:"Close navigation bar",description:"The ARIA label for close button of mobile sidebar"}),className:"clean-btn navbar-sidebar__close",onClick:()=>e.toggle(),children:(0,u.jsx)(k,{color:"var(--ifm-color-emphasis-600)"})})}function Z(){return(0,u.jsxs)("div",{className:"navbar-sidebar__brand",children:[(0,u.jsx)(G,{}),(0,u.jsx)(V,{className:"margin-right--md"}),(0,u.jsx)(Y,{})]})}var K=n(28774),X=n(86025),J=n(16654);function ee(e,t){return void 0!==e&&void 0!==t&&new RegExp(e,"gi").test(t)}var te=n(43186);function ne(e){let{activeBasePath:t,activeBaseRegex:n,to:r,href:o,label:a,html:i,isDropdownLink:s,prependBaseUrlToHref:c,...l}=e;const d=(0,X.A)(r),p=(0,X.A)(t),m=(0,X.A)(o,{forcePrependBaseUrl:!0}),f=a&&o&&!(0,J.A)(o),h=i?{dangerouslySetInnerHTML:{__html:i}}:{children:(0,u.jsxs)(u.Fragment,{children:[a,f&&(0,u.jsx)(te.A,{...s&&{width:12,height:12}})]})};return o?(0,u.jsx)(K.A,{href:c?m:o,...l,...h}):(0,u.jsx)(K.A,{to:d,isNavLink:!0,...(t||n)&&{isActive:(e,t)=>n?ee(n,t.pathname):t.pathname.startsWith(p)},...l,...h})}function re(e){let{className:t,isDropdownItem:n=!1,...r}=e;const a=(0,u.jsx)(ne,{className:(0,o.A)(n?"dropdown__link":"navbar__item navbar__link",t),isDropdownLink:n,...r});return n?(0,u.jsx)("li",{children:a}):a}function oe(e){let{className:t,isDropdownItem:n,...r}=e;return(0,u.jsx)("li",{className:"menu__list-item",children:(0,u.jsx)(ne,{className:(0,o.A)("menu__link",t),...r})})}function ae(e){let{mobile:t=!1,position:n,...r}=e;const o=t?oe:re;return(0,u.jsx)(o,{...r,activeClassName:r.activeClassName??(t?"menu__link--active":"navbar__link--active")})}var ie=n(41422),se=n(99169),ce=n(44586);const le={dropdownNavbarItemMobile:"dropdownNavbarItemMobile_S0Fm"};function ue(e,t){return e.some((e=>function(e,t){return!!(0,se.ys)(e.to,t)||!!ee(e.activeBaseRegex,t)||!(!e.activeBasePath||!t.startsWith(e.activeBasePath))}(e,t)))}function de(e){let{items:t,position:n,className:a,onClick:i,...s}=e;const c=(0,r.useRef)(null),[l,d]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{const e=e=>{c.current&&!c.current.contains(e.target)&&d(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),document.addEventListener("focusin",e),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),document.removeEventListener("focusin",e)}}),[c]),(0,u.jsxs)("div",{ref:c,className:(0,o.A)("navbar__item","dropdown","dropdown--hoverable",{"dropdown--right":"right"===n,"dropdown--show":l}),children:[(0,u.jsx)(ne,{"aria-haspopup":"true","aria-expanded":l,role:"button",href:s.to?void 0:"#",className:(0,o.A)("navbar__link",a),...s,onClick:s.to?void 0:e=>e.preventDefault(),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),d(!l))},children:s.children??s.label}),(0,u.jsx)("ul",{className:"dropdown__menu",children:t.map(((e,t)=>(0,r.createElement)(Ke,{isDropdownItem:!0,activeClassName:"dropdown__link--active",...e,key:t})))})]})}function pe(e){let{items:t,className:n,position:a,onClick:i,...c}=e;const l=function(){const{siteConfig:{baseUrl:e}}=(0,ce.A)(),{pathname:t}=(0,s.zy)();return t.replace(e,"/")}(),d=ue(t,l),{collapsed:p,toggleCollapsed:m,setCollapsed:f}=(0,ie.u)({initialState:()=>!d});return(0,r.useEffect)((()=>{d&&f(!d)}),[l,d,f]),(0,u.jsxs)("li",{className:(0,o.A)("menu__list-item",{"menu__list-item--collapsed":p}),children:[(0,u.jsx)(ne,{role:"button",className:(0,o.A)(le.dropdownNavbarItemMobile,"menu__link menu__link--sublist menu__link--sublist-caret",n),...c,onClick:e=>{e.preventDefault(),m()},children:c.children??c.label}),(0,u.jsx)(ie.N,{lazy:!0,as:"ul",className:"menu__list",collapsed:p,children:t.map(((e,t)=>(0,r.createElement)(Ke,{mobile:!0,isDropdownItem:!0,onClick:i,activeClassName:"menu__link--active",...e,key:t})))})]})}function me(e){let{mobile:t=!1,...n}=e;const r=t?pe:de;return(0,u.jsx)(r,{...n})}var fe=n(32131);function he(e){let{width:t=20,height:n=20,...r}=e;return(0,u.jsx)("svg",{viewBox:"0 0 24 24",width:t,height:n,"aria-hidden":!0,...r,children:(0,u.jsx)("path",{fill:"currentColor",d:"M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"})})}const ge="iconLanguage_nlXk";var be=n(11088),ye=n(20053),ve=n(38193),we=n(55597),xe=n(66588);const ke={},je=()=>(0,xe.kh)("docusaurus-plugin-content-docs")??ke;function Se(e){void 0===e&&(e={});const t=je(),{pathname:n}=(0,s.zy)();return function(e,t,n){void 0===n&&(n={});const r=Object.entries(e).sort(((e,t)=>t[1].path.localeCompare(e[1].path))).find((e=>{let[,n]=e;return!!(0,s.B6)(t,{path:n.path,exact:!1,strict:!1})})),o=r?{pluginId:r[0],pluginData:r[1]}:void 0;if(!o&&n.failfast)throw new Error(`Can't find active docs plugin for "${t}" pathname, while it was expected to be found. Maybe you tried to use a docs feature that can only be used on a docs-related page? Existing docs plugin paths are: ${Object.values(e).map((e=>e.path)).join(", ")}`);return o}(t,n,e)}var Ee=n(5891),_e=n(32384),Te=n(4471),Ce=n(27674),Ae=n(86841),Pe=n(43810);const Ne='',Le='',Re='',Ie='',Oe='',Fe='',qe='',De={searchBar:"searchBar_RVTs",dropdownMenu:"dropdownMenu_qbY6",searchBarLeft:"searchBarLeft_MXDe",suggestion:"suggestion_fB_2",cursor:"cursor_eG29",hitTree:"hitTree_kk6K",hitIcon:"hitIcon_a7Zy",hitPath:"hitPath_ieM4",noResultsIcon:"noResultsIcon_EBY5",hitFooter:"hitFooter_E9YW",hitWrapper:"hitWrapper_sAK8",hitTitle:"hitTitle_vyVt",hitAction:"hitAction_NqkB",hideAction:"hideAction_vcyE",noResults:"noResults_l6Q3",searchBarContainer:"searchBarContainer_NW3z",searchBarLoadingRing:"searchBarLoadingRing_YnHq",searchClearButton:"searchClearButton_qk4g",searchIndexLoading:"searchIndexLoading_EJ1f",searchHintContainer:"searchHintContainer_Pkmr",searchHint:"searchHint_iIMx",focused:"focused_OWtg",input:"input_FOTf",hint:"hint_URu1",suggestions:"suggestions_X8XU",dataset:"dataset_QiCy",empty:"empty_eITn"};function Me(e){let{document:t,type:n,page:r,metadata:o,tokens:a,isInterOfTree:i,isLastOfTree:s}=e;const c=0===n,l=1===n,u=[];i?u.push(Fe):s&&u.push(qe);const d=u.map((e=>`${e}`)),p=`${c?Ne:l?Le:Re}`,m=[`${(0,Pe.C)(t.t,(0,Ce.g)(o,"t"),a)}`];if(!i&&!s&&be.tb){const e=r?(r.b??[]).concat(r.t).concat(t.s&&t.s!==r.t?t.s:[]):t.b;m.push(`${(0,Te.$)(e??[])}`)}else c||m.push(`${(0,Ae.Z)(r.t||(t.u.startsWith("/docs/api-reference/")?"API Reference":""),a)}`);const f=`${Ie}`;return[...d,p,``,...m,"",f].join("")}function Be(){return`${Oe}${(0,c.T)({id:"theme.SearchBar.noResultsText",message:"No results"})}`}var ze=n(2849);async function $e(){const e=await Promise.all([n.e(489),n.e(5741)]).then(n.t.bind(n,90489,23)),t=e.default;return t.noConflict?t.noConflict():e.noConflict&&e.noConflict(),t}const Ue="_highlight";const We=function(e){let{handleSearchBarToggle:t}=e;const{siteConfig:{baseUrl:n}}=(0,ce.A)(),o=Se();let a=n;try{const{preferredVersion:e}=(0,we.g1)(o?.pluginId??be.UB);e&&!e.isLast&&(a=e.path+"/")}catch(O){if(be.I$&&!(O instanceof N.dV))throw O}const i=(0,s.W6)(),l=(0,s.zy)(),d=(0,r.useRef)(null),p=(0,r.useRef)(new Map),m=(0,r.useRef)(!1),[f,h]=(0,r.useState)(!1),[g,b]=(0,r.useState)(!1),[y,v]=(0,r.useState)(""),w=(0,r.useRef)(null),x=(0,r.useRef)(""),[k,j]=(0,r.useState)("");(0,r.useEffect)((()=>{if(!Array.isArray(be.Hg))return;let e="";if(l.pathname.startsWith(a)){const t=l.pathname.substring(a.length),n=be.Hg.find((e=>t===e||t.startsWith(`${e}/`)));n&&(e=n)}x.current!==e&&(p.current.delete(e),x.current=e),j(e)}),[l.pathname,a]);const S=!!be.O6&&Array.isArray(be.Hg)&&""===k,E=(0,r.useCallback)((async()=>{if(S||p.current.get(k))return;p.current.set(k,"loading"),w.current?.autocomplete.destroy(),h(!0);const[{wrappedIndexes:e,zhDictionary:t},r]=await Promise.all([(0,Ee.Z)(a,k),$e()]);if(w.current=r(d.current,{hint:!1,autoselect:!0,openOnFocus:!0,cssClasses:{root:(0,ye.A)(De.searchBar,{[De.searchBarLeft]:"left"===be.ZG}),noPrefix:!0,dropdownMenu:De.dropdownMenu,input:De.input,hint:De.hint,suggestions:De.suggestions,suggestion:De.suggestion,cursor:De.cursor,dataset:De.dataset,empty:De.empty}},[{source:(0,_e.m)(e,t,be.AT),templates:{suggestion:Me,empty:Be,footer:e=>{let{query:t,isEmpty:r}=e;if(r)return;const o=document.createElement("a"),s=new URLSearchParams;if(s.set("q",t),Array.isArray(be.Hg)&&s.set("ctx",k),a!==n){if(!a.startsWith(n))throw new Error(`Version url '${a}' does not start with base url '${n}', this is a bug of \`@easyops-cn/docusaurus-search-local\`, please report it.`);s.set("version",a.substring(n.length))}const l=`${n}search?${s.toString()}`;o.href=l,o.textContent=(0,c.T)({id:"theme.SearchBar.seeAll",message:"See all results"}),o.addEventListener("click",(e=>{e.ctrlKey||e.metaKey||(e.preventDefault(),w.current?.autocomplete.close(),i.push(l))}));const u=document.createElement("div");return u.className=De.hitFooter,u.appendChild(o),u}}}]).on("autocomplete:selected",(function(e,t){let{document:{u:n,h:r},tokens:o}=t;d.current?.blur();let a=n;if(be.CU&&o.length>0){const e=new URLSearchParams;for(const t of o)e.append(Ue,t);a+=`?${e.toString()}`}r&&(a+=r),i.push(a)})).on("autocomplete:closed",(()=>{d.current?.blur()})),p.current.set(k,"done"),h(!1),m.current){const e=d.current;e.value&&w.current?.autocomplete.open(),e.focus()}}),[S,k,a,n,i]);(0,r.useEffect)((()=>{if(!be.CU)return;const e=ve.A.canUseDOM?new URLSearchParams(l.search).getAll(Ue):[];setTimeout((()=>{const t=document.querySelector("article");if(!t)return;const n=new be.CU(t);n.unmark(),0!==e.length&&n.mark(e),v(e.join(" ")),w.current?.autocomplete.setVal(e.join(" "))}))}),[l.search,l.pathname]);const[_,T]=(0,r.useState)(!1),C=(0,r.useCallback)((()=>{m.current=!0,E(),T(!0),t?.(!0)}),[t,E]),A=(0,r.useCallback)((()=>{T(!1),t?.(!1)}),[t]),P=(0,r.useCallback)((()=>{E()}),[E]),L=(0,r.useCallback)((e=>{v(e.target.value),e.target.value&&b(!0)}),[]),R=!!ve.A.canUseDOM&&/mac/i.test(navigator.userAgentData?.platform??navigator.platform);(0,r.useEffect)((()=>{if(!be.WW)return;const e=e=>{!(R?e.metaKey:e.ctrlKey)||"k"!==e.key&&"K"!==e.key||(e.preventDefault(),d.current?.focus(),C())};return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)}}),[R,C]);const I=(0,r.useCallback)((()=>{const e=new URLSearchParams(l.search);e.delete(Ue);const t=e.toString(),n=l.pathname+(""!=t?`?${t}`:"")+l.hash;n!=l.pathname+l.search+l.hash&&i.push(n),v(""),w.current?.autocomplete.setVal("")}),[l.pathname,l.search,l.hash,i]);return(0,u.jsxs)("div",{className:(0,ye.A)("navbar__search",De.searchBarContainer,{[De.searchIndexLoading]:f&&g,[De.focused]:_}),hidden:S,children:[(0,u.jsx)("input",{placeholder:(0,c.T)({id:"theme.SearchBar.label",message:"Search",description:"The ARIA label and placeholder for search button"}),"aria-label":"Search",className:"navbar__search-input",onMouseEnter:P,onFocus:C,onBlur:A,onChange:L,ref:d,value:y}),(0,u.jsx)(ze.A,{className:De.searchBarLoadingRing}),be.WW&&be.pk&&(""!==y?(0,u.jsx)("button",{className:De.searchClearButton,onClick:I,children:"\u2715"}):ve.A.canUseDOM&&(0,u.jsxs)("div",{className:De.searchHintContainer,children:[(0,u.jsx)("kbd",{className:De.searchHint,children:R?"\u2318":"ctrl"}),(0,u.jsx)("kbd",{className:De.searchHint,children:"K"})]}))]})},He={navbarSearchContainer:"navbarSearchContainer_Bca1"};function Ve(e){let{children:t,className:n}=e;return(0,u.jsx)("div",{className:(0,o.A)(n,He.navbarSearchContainer),children:t})}var Qe=n(48295),Ge=n(84142);const Ye=e=>e.docs.find((t=>t.id===e.mainDocId));const Ze={default:ae,localeDropdown:function(e){let{mobile:t,dropdownItemsBefore:n,dropdownItemsAfter:r,queryString:o="",...a}=e;const{i18n:{currentLocale:i,locales:l,localeConfigs:d}}=(0,ce.A)(),p=(0,fe.o)(),{search:m,hash:f}=(0,s.zy)(),h=[...n,...l.map((e=>{const n=`${`pathname://${p.createUrl({locale:e,fullyQualified:!1})}`}${m}${f}${o}`;return{label:d[e].label,lang:d[e].htmlLang,to:n,target:"_self",autoAddBaseUrl:!1,className:e===i?t?"menu__link--active":"dropdown__link--active":""}})),...r],g=t?(0,c.T)({message:"Languages",id:"theme.navbar.mobileLanguageDropdown.label",description:"The label for the mobile language switcher dropdown"}):d[i].label;return(0,u.jsx)(me,{...a,mobile:t,label:(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(he,{className:ge}),g]}),items:h})},search:function(e){let{mobile:t,className:n}=e;return t?null:(0,u.jsx)(Ve,{className:n,children:(0,u.jsx)(We,{})})},dropdown:me,html:function(e){let{value:t,className:n,mobile:r=!1,isDropdownItem:a=!1}=e;const i=a?"li":"div";return(0,u.jsx)(i,{className:(0,o.A)({navbar__item:!r&&!a,"menu__list-item":r},n),dangerouslySetInnerHTML:{__html:t}})},doc:function(e){let{docId:t,label:n,docsPluginId:r,...o}=e;const{activeDoc:a}=(0,Qe.zK)(r),i=(0,Ge.QB)(t,r),s=a?.path===i?.path;return null===i||i.unlisted&&!s?null:(0,u.jsx)(ae,{exact:!0,...o,isActive:()=>s||!!a?.sidebar&&a.sidebar===i.sidebar,label:n??i.id,to:i.path})},docSidebar:function(e){let{sidebarId:t,label:n,docsPluginId:r,...o}=e;const{activeDoc:a}=(0,Qe.zK)(r),i=(0,Ge.fW)(t,r).link;if(!i)throw new Error(`DocSidebarNavbarItem: Sidebar with ID "${t}" doesn't have anything to be linked to.`);return(0,u.jsx)(ae,{exact:!0,...o,isActive:()=>a?.sidebar===t,label:n??i.label,to:i.path})},docsVersion:function(e){let{label:t,to:n,docsPluginId:r,...o}=e;const a=(0,Ge.Vd)(r)[0],i=t??a.label,s=n??(e=>e.docs.find((t=>t.id===e.mainDocId)))(a).path;return(0,u.jsx)(ae,{...o,label:i,to:s})},docsVersionDropdown:function(e){let{mobile:t,docsPluginId:n,dropdownActiveClassDisabled:r,dropdownItemsBefore:o,dropdownItemsAfter:a,...i}=e;const{search:l,hash:d}=(0,s.zy)(),p=(0,Qe.zK)(n),m=(0,Qe.jh)(n),{savePreferredVersionName:f}=(0,we.g1)(n),h=[...o,...m.map((e=>{const t=p.alternateDocVersions[e.name]??Ye(e);return{label:e.label,to:`${t.path}${l}${d}`,isActive:()=>e===p.activeVersion,onClick:()=>f(e.name)}})),...a],g=(0,Ge.Vd)(n)[0],b=t&&h.length>1?(0,c.T)({id:"theme.navbar.mobileVersionsDropdown.label",message:"Versions",description:"The label for the navbar versions dropdown on mobile view"}):g.label,y=t&&h.length>1?void 0:Ye(g).path;return h.length<=1?(0,u.jsx)(ae,{...i,mobile:t,label:b,to:y,isActive:r?()=>!1:void 0}):(0,u.jsx)(me,{...i,mobile:t,label:b,to:y,items:h,isActive:r?()=>!1:void 0})}};function Ke(e){let{type:t,...n}=e;const r=function(e,t){return e&&"default"!==e?e:"items"in t?"dropdown":"default"}(t,n),o=Ze[r];if(!o)throw new Error(`No NavbarItem component found for type "${t}".`);return(0,u.jsx)(o,{...n})}function Xe(){const e=(0,A.M)(),t=(0,w.p)().navbar.items;return(0,u.jsx)("ul",{className:"menu__list",children:t.map(((t,n)=>(0,r.createElement)(Ke,{mobile:!0,...t,onClick:()=>e.toggle(),key:n})))})}function Je(e){return(0,u.jsx)("button",{...e,type:"button",className:"clean-btn navbar-sidebar__back",children:(0,u.jsx)(c.A,{id:"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel",description:"The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)",children:"\u2190 Back to main menu"})})}function et(){const e=0===(0,w.p)().navbar.items.length,t=F();return(0,u.jsxs)(u.Fragment,{children:[!e&&(0,u.jsx)(Je,{onClick:()=>t.hide()}),t.content]})}function tt(){const e=(0,A.M)();var t;return void 0===(t=e.shown)&&(t=!0),(0,r.useEffect)((()=>(document.body.style.overflow=t?"hidden":"visible",()=>{document.body.style.overflow="visible"})),[t]),e.shouldRender?(0,u.jsx)(q,{header:(0,u.jsx)(Z,{}),primaryMenu:(0,u.jsx)(Xe,{}),secondaryMenu:(0,u.jsx)(et,{})}):null}const nt={navbarHideable:"navbarHideable_m1mJ",navbarHidden:"navbarHidden_jGov"};function rt(e){return(0,u.jsx)("div",{role:"presentation",...e,className:(0,o.A)("navbar-sidebar__backdrop",e.className)})}function ot(e){let{children:t}=e;const{navbar:{hideOnScroll:n,style:a}}=(0,w.p)(),i=(0,A.M)(),{navbarRef:s,isNavbarVisible:d}=function(e){const[t,n]=(0,r.useState)(e),o=(0,r.useRef)(!1),a=(0,r.useRef)(0),i=(0,r.useCallback)((e=>{null!==e&&(a.current=e.getBoundingClientRect().height)}),[]);return(0,P.Mq)(((t,r)=>{let{scrollY:i}=t;if(!e)return;if(i=s?n(!1):i+l{if(!e)return;const r=t.location.hash;if(r?document.getElementById(r.substring(1)):void 0)return o.current=!0,void n(!1);n(!0)})),{navbarRef:i,isNavbarVisible:t}}(n);return(0,u.jsxs)("nav",{ref:s,"aria-label":(0,c.T)({id:"theme.NavBar.navAriaLabel",message:"Main",description:"The ARIA label for the main navigation"}),className:(0,o.A)("navbar","navbar--fixed-top",n&&[nt.navbarHideable,!d&&nt.navbarHidden],{"navbar--dark":"dark"===a,"navbar--primary":"primary"===a,"navbar-sidebar--show":i.shown}),children:[t,(0,u.jsx)(rt,{onClick:i.toggle}),(0,u.jsx)(tt,{})]})}var at=n(70440);const it={errorBoundaryError:"errorBoundaryError_a6uf",errorBoundaryFallback:"errorBoundaryFallback_VBag"};function st(e){return(0,u.jsx)("button",{type:"button",...e,children:(0,u.jsx)(c.A,{id:"theme.ErrorPageContent.tryAgain",description:"The label of the button to try again rendering when the React error boundary captures an error",children:"Try again"})})}function ct(e){let{error:t}=e;const n=(0,at.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,u.jsx)("p",{className:it.errorBoundaryError,children:n})}class lt extends r.Component{componentDidCatch(e,t){throw this.props.onError(e,t)}render(){return this.props.children}}const ut="right";function dt(e){let{width:t=30,height:n=30,className:r,...o}=e;return(0,u.jsx)("svg",{className:r,width:t,height:n,viewBox:"0 0 30 30","aria-hidden":"true",...o,children:(0,u.jsx)("path",{stroke:"currentColor",strokeLinecap:"round",strokeMiterlimit:"10",strokeWidth:"2",d:"M4 7h22M4 15h22M4 23h22"})})}function pt(){const{toggle:e,shown:t}=(0,A.M)();return(0,u.jsx)("button",{onClick:e,"aria-label":(0,c.T)({id:"theme.docs.sidebar.toggleSidebarButtonAriaLabel",message:"Toggle navigation bar",description:"The ARIA label for hamburger menu button of mobile navigation"}),"aria-expanded":t,className:"navbar__toggle clean-btn",type:"button",children:(0,u.jsx)(dt,{})})}const mt={colorModeToggle:"colorModeToggle_DEke"};function ft(e){let{items:t}=e;return(0,u.jsx)(u.Fragment,{children:t.map(((e,t)=>(0,u.jsx)(lt,{onError:t=>new Error(`A theme navbar item failed to render.\nPlease double-check the following navbar item (themeConfig.navbar.items) of your Docusaurus config:\n${JSON.stringify(e,null,2)}`,{cause:t}),children:(0,u.jsx)(Ke,{...e})},t)))})}function ht(e){let{left:t,right:n}=e;return(0,u.jsxs)("div",{className:"navbar__inner",children:[(0,u.jsx)("div",{className:"navbar__items",children:t}),(0,u.jsx)("div",{className:"navbar__items navbar__items--right",children:n})]})}function gt(){const e=(0,A.M)(),t=(0,w.p)().navbar.items,[n,r]=function(e){function t(e){return"left"===(e.position??ut)}return[e.filter(t),e.filter((e=>!t(e)))]}(t),o=t.find((e=>"search"===e.type));return(0,u.jsx)(ht,{left:(0,u.jsxs)(u.Fragment,{children:[!e.disabled&&(0,u.jsx)(pt,{}),(0,u.jsx)(G,{}),(0,u.jsx)(ft,{items:n})]}),right:(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(ft,{items:r}),(0,u.jsx)(V,{className:mt.colorModeToggle}),!o&&(0,u.jsx)(Ve,{children:(0,u.jsx)(We,{})})]})})}function bt(){return(0,u.jsx)(ot,{children:(0,u.jsx)(gt,{})})}function yt(e){let{item:t}=e;const{to:n,href:r,label:o,prependBaseUrlToHref:a,...i}=t,s=(0,X.A)(n),c=(0,X.A)(r,{forcePrependBaseUrl:!0});return(0,u.jsxs)(K.A,{className:"footer__link-item",...r?{href:a?c:r}:{to:s},...i,children:[o,r&&!(0,J.A)(r)&&(0,u.jsx)(te.A,{})]})}function vt(e){let{item:t}=e;return t.html?(0,u.jsx)("li",{className:"footer__item",dangerouslySetInnerHTML:{__html:t.html}}):(0,u.jsx)("li",{className:"footer__item",children:(0,u.jsx)(yt,{item:t})},t.href??t.to)}function wt(e){let{column:t}=e;return(0,u.jsxs)("div",{className:"col footer__col",children:[(0,u.jsx)("div",{className:"footer__title",children:t.title}),(0,u.jsx)("ul",{className:"footer__items clean-list",children:t.items.map(((e,t)=>(0,u.jsx)(vt,{item:e},t)))})]})}function xt(e){let{columns:t}=e;return(0,u.jsx)("div",{className:"row footer__links",children:t.map(((e,t)=>(0,u.jsx)(wt,{column:e},t)))})}function kt(){return(0,u.jsx)("span",{className:"footer__link-separator",children:"\xb7"})}function jt(e){let{item:t}=e;return t.html?(0,u.jsx)("span",{className:"footer__link-item",dangerouslySetInnerHTML:{__html:t.html}}):(0,u.jsx)(yt,{item:t})}function St(e){let{links:t}=e;return(0,u.jsx)("div",{className:"footer__links text--center",children:(0,u.jsx)("div",{className:"footer__links",children:t.map(((e,n)=>(0,u.jsxs)(r.Fragment,{children:[(0,u.jsx)(jt,{item:e}),t.length!==n+1&&(0,u.jsx)(kt,{})]},n)))})})}function Et(e){let{links:t}=e;return function(e){return"title"in e[0]}(t)?(0,u.jsx)(xt,{columns:t}):(0,u.jsx)(St,{links:t})}var _t=n(21122);const Tt={footerLogoLink:"footerLogoLink_BH7S"};function Ct(e){let{logo:t}=e;const{withBaseUrl:n}=(0,X.h)(),r={light:n(t.src),dark:n(t.srcDark??t.src)};return(0,u.jsx)(_t.A,{className:(0,o.A)("footer__logo",t.className),alt:t.alt,sources:r,width:t.width,height:t.height,style:t.style})}function At(e){let{logo:t}=e;return t.href?(0,u.jsx)(K.A,{href:t.href,className:Tt.footerLogoLink,target:t.target,children:(0,u.jsx)(Ct,{logo:t})}):(0,u.jsx)(Ct,{logo:t})}function Pt(e){let{copyright:t}=e;return(0,u.jsx)("div",{className:"footer__copyright",dangerouslySetInnerHTML:{__html:t}})}function Nt(e){let{style:t,links:n,logo:r,copyright:a}=e;return(0,u.jsx)("footer",{className:(0,o.A)("footer",{"footer--dark":"dark"===t}),children:(0,u.jsxs)("div",{className:"container container-fluid",children:[n,(r||a)&&(0,u.jsxs)("div",{className:"footer__bottom text--center",children:[r&&(0,u.jsx)("div",{className:"margin-bottom--sm",children:r}),a]})]})})}function Lt(){const{footer:e}=(0,w.p)();if(!e)return null;const{copyright:t,links:n,logo:r,style:o}=e;return(0,u.jsx)(Nt,{style:o,links:n&&n.length>0&&(0,u.jsx)(Et,{links:n}),logo:r&&(0,u.jsx)(At,{logo:r}),copyright:t&&(0,u.jsx)(Pt,{copyright:t})})}const Rt=r.memo(Lt),It=(0,N.fM)([D.a,x.oq,P.Tv,we.VQ,i.Jx,function(e){let{children:t}=e;return(0,u.jsx)(L.y_,{children:(0,u.jsx)(A.e,{children:(0,u.jsx)(I,{children:t})})})}]);function Ot(e){let{children:t}=e;return(0,u.jsx)(It,{children:t})}var Ft=n(51107);function qt(e){let{error:t,tryAgain:n}=e;return(0,u.jsx)("main",{className:"container margin-vert--xl",children:(0,u.jsx)("div",{className:"row",children:(0,u.jsxs)("div",{className:"col col--6 col--offset-3",children:[(0,u.jsx)(Ft.A,{as:"h1",className:"hero__title",children:(0,u.jsx)(c.A,{id:"theme.ErrorPageContent.title",description:"The title of the fallback page when the page crashed",children:"This page crashed."})}),(0,u.jsx)("div",{className:"margin-vert--lg",children:(0,u.jsx)(st,{onClick:n,className:"button button--primary shadow--lw"})}),(0,u.jsx)("hr",{}),(0,u.jsx)("div",{className:"margin-vert--md",children:(0,u.jsx)(ct,{error:t})})]})})})}const Dt={mainWrapper:"mainWrapper_z2l0"};function Mt(e){const{children:t,noFooter:n,wrapperClassName:r,title:s,description:c}=e;return(0,b.J)(),(0,u.jsxs)(Ot,{children:[(0,u.jsx)(i.be,{title:s,description:c}),(0,u.jsx)(v,{}),(0,u.jsx)(C,{}),(0,u.jsx)(bt,{}),(0,u.jsx)("div",{id:d,className:(0,o.A)(g.G.wrapper.main,Dt.mainWrapper,r),children:(0,u.jsx)(a.A,{fallback:e=>(0,u.jsx)(qt,{...e}),children:t})}),!n&&(0,u.jsx)(Rt,{})]})}},23465:(e,t,n)=>{"use strict";n.d(t,{A:()=>u});n(96540);var r=n(28774),o=n(86025),a=n(44586),i=n(6342),s=n(21122),c=n(74848);function l(e){let{logo:t,alt:n,imageClassName:r}=e;const a={light:(0,o.A)(t.src),dark:(0,o.A)(t.srcDark||t.src)},i=(0,c.jsx)(s.A,{className:t.className,sources:a,height:t.height,width:t.width,alt:n,style:t.style});return r?(0,c.jsx)("div",{className:r,children:i}):i}function u(e){const{siteConfig:{title:t}}=(0,a.A)(),{navbar:{title:n,logo:s}}=(0,i.p)(),{imageClassName:u,titleClassName:d,...p}=e,m=(0,o.A)(s?.href||"/"),f=n?"":t,h=s?.alt??f;return(0,c.jsxs)(r.A,{to:m,...p,...s?.target&&{target:s.target},children:[s&&(0,c.jsx)(l,{logo:s,alt:h,imageClassName:u}),null!=n&&(0,c.jsx)("b",{className:d,children:n})]})}},41463:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});n(96540);var r=n(5260),o=n(74848);function a(e){let{locale:t,version:n,tag:a}=e;const i=t;return(0,o.jsxs)(r.A,{children:[t&&(0,o.jsx)("meta",{name:"docusaurus_locale",content:t}),n&&(0,o.jsx)("meta",{name:"docusaurus_version",content:n}),a&&(0,o.jsx)("meta",{name:"docusaurus_tag",content:a}),i&&(0,o.jsx)("meta",{name:"docsearch:language",content:i}),n&&(0,o.jsx)("meta",{name:"docsearch:version",content:n}),a&&(0,o.jsx)("meta",{name:"docsearch:docusaurus_tag",content:a})]})}},21122:(e,t,n)=>{"use strict";n.d(t,{A:()=>u});var r=n(96540),o=n(15066),a=n(92303),i=n(95293);const s={themedComponent:"themedComponent_mlkZ","themedComponent--light":"themedComponent--light_NVdE","themedComponent--dark":"themedComponent--dark_xIcU"};var c=n(74848);function l(e){let{className:t,children:n}=e;const l=(0,a.A)(),{colorMode:u}=(0,i.G)();return(0,c.jsx)(c.Fragment,{children:(l?"dark"===u?["dark"]:["light"]:["light","dark"]).map((e=>{const a=n({theme:e,className:(0,o.A)(t,s.themedComponent,s[`themedComponent--${e}`])});return(0,c.jsx)(r.Fragment,{children:a},e)}))})}function u(e){const{sources:t,className:n,alt:r,...o}=e;return(0,c.jsx)(l,{className:n,children:e=>{let{theme:n,className:a}=e;return(0,c.jsx)("img",{src:t[n],alt:r,className:a,...o})}})}},41422:(e,t,n)=>{"use strict";n.d(t,{N:()=>b,u:()=>l});var r=n(96540),o=n(38193),a=n(205),i=n(53109),s=n(74848);const c="ease-in-out";function l(e){let{initialState:t}=e;const[n,o]=(0,r.useState)(t??!1),a=(0,r.useCallback)((()=>{o((e=>!e))}),[]);return{collapsed:n,setCollapsed:o,toggleCollapsed:a}}const u={display:"none",overflow:"hidden",height:"0px"},d={display:"block",overflow:"visible",height:"auto"};function p(e,t){const n=t?u:d;e.style.display=n.display,e.style.overflow=n.overflow,e.style.height=n.height}function m(e){let{collapsibleRef:t,collapsed:n,animation:o}=e;const a=(0,r.useRef)(!1);(0,r.useEffect)((()=>{const e=t.current;function r(){const t=e.scrollHeight,n=o?.duration??function(e){if((0,i.O)())return 1;const t=e/36;return Math.round(10*(4+15*t**.25+t/5))}(t);return{transition:`height ${n}ms ${o?.easing??c}`,height:`${t}px`}}function s(){const t=r();e.style.transition=t.transition,e.style.height=t.height}if(!a.current)return p(e,n),void(a.current=!0);return e.style.willChange="height",function(){const t=requestAnimationFrame((()=>{n?(s(),requestAnimationFrame((()=>{e.style.height=u.height,e.style.overflow=u.overflow}))):(e.style.display="block",requestAnimationFrame((()=>{s()})))}));return()=>cancelAnimationFrame(t)}()}),[t,n,o])}function f(e){if(!o.A.canUseDOM)return e?u:d}function h(e){let{as:t="div",collapsed:n,children:o,animation:a,onCollapseTransitionEnd:i,className:c,disableSSRStyle:l}=e;const u=(0,r.useRef)(null);return m({collapsibleRef:u,collapsed:n,animation:a}),(0,s.jsx)(t,{ref:u,style:l?void 0:f(n),onTransitionEnd:e=>{"height"===e.propertyName&&(p(u.current,n),i?.(n))},className:c,children:o})}function g(e){let{collapsed:t,...n}=e;const[o,i]=(0,r.useState)(!t),[c,l]=(0,r.useState)(t);return(0,a.A)((()=>{t||i(!0)}),[t]),(0,a.A)((()=>{o&&l(t)}),[o,t]),o?(0,s.jsx)(h,{...n,collapsed:c}):null}function b(e){let{lazy:t,...n}=e;const r=t?g:h;return(0,s.jsx)(r,{...n})}},65041:(e,t,n)=>{"use strict";n.d(t,{Mj:()=>h,oq:()=>f});var r=n(96540),o=n(92303),a=n(89466),i=n(89532),s=n(6342),c=n(74848);const l=(0,a.Wf)("docusaurus.announcement.dismiss"),u=(0,a.Wf)("docusaurus.announcement.id"),d=()=>"true"===l.get(),p=e=>l.set(String(e)),m=r.createContext(null);function f(e){let{children:t}=e;const n=function(){const{announcementBar:e}=(0,s.p)(),t=(0,o.A)(),[n,a]=(0,r.useState)((()=>!!t&&d()));(0,r.useEffect)((()=>{a(d())}),[]);const i=(0,r.useCallback)((()=>{p(!0),a(!0)}),[]);return(0,r.useEffect)((()=>{if(!e)return;const{id:t}=e;let n=u.get();"annoucement-bar"===n&&(n="announcement-bar");const r=t!==n;u.set(t),r&&p(!1),!r&&d()||a(!1)}),[e]),(0,r.useMemo)((()=>({isActive:!!e&&!n,close:i})),[e,n,i])}();return(0,c.jsx)(m.Provider,{value:n,children:t})}function h(){const e=(0,r.useContext)(m);if(!e)throw new i.dV("AnnouncementBarProvider");return e}},95293:(e,t,n)=>{"use strict";n.d(t,{G:()=>b,a:()=>g});var r=n(96540),o=n(38193),a=n(89532),i=n(89466),s=n(6342),c=n(74848);const l=r.createContext(void 0),u="theme",d=(0,i.Wf)(u),p={light:"light",dark:"dark"},m=e=>e===p.dark?p.dark:p.light,f=e=>o.A.canUseDOM?m(document.documentElement.getAttribute("data-theme")):m(e),h=e=>{d.set(m(e))};function g(e){let{children:t}=e;const n=function(){const{colorMode:{defaultMode:e,disableSwitch:t,respectPrefersColorScheme:n}}=(0,s.p)(),[o,a]=(0,r.useState)(f(e));(0,r.useEffect)((()=>{t&&d.del()}),[t]);const i=(0,r.useCallback)((function(t,r){void 0===r&&(r={});const{persist:o=!0}=r;t?(a(t),o&&h(t)):(a(n?window.matchMedia("(prefers-color-scheme: dark)").matches?p.dark:p.light:e),d.del())}),[n,e]);(0,r.useEffect)((()=>{document.documentElement.setAttribute("data-theme",m(o))}),[o]),(0,r.useEffect)((()=>{if(t)return;const e=e=>{if(e.key!==u)return;const t=d.get();null!==t&&i(m(t))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)}),[t,i]);const c=(0,r.useRef)(!1);return(0,r.useEffect)((()=>{if(t&&!n)return;const e=window.matchMedia("(prefers-color-scheme: dark)"),r=()=>{window.matchMedia("print").matches||c.current?c.current=window.matchMedia("print").matches:i(null)};return e.addListener(r),()=>e.removeListener(r)}),[i,t,n]),(0,r.useMemo)((()=>({colorMode:o,setColorMode:i,get isDarkTheme(){return o===p.dark},setLightTheme(){i(p.light)},setDarkTheme(){i(p.dark)}})),[o,i])}();return(0,c.jsx)(l.Provider,{value:n,children:t})}function b(){const e=(0,r.useContext)(l);if(null==e)throw new a.dV("ColorModeProvider","Please see https://docusaurus.io/docs/api/themes/configuration#use-color-mode.");return e}},55597:(e,t,n)=>{"use strict";n.d(t,{VQ:()=>b,g1:()=>v});var r=n(96540),o=n(48295),a=n(17065),i=n(6342),s=n(84142),c=n(89532),l=n(89466),u=n(74848);const d=e=>`docs-preferred-version-${e}`,p={save:(e,t,n)=>{(0,l.Wf)(d(e),{persistence:t}).set(n)},read:(e,t)=>(0,l.Wf)(d(e),{persistence:t}).get(),clear:(e,t)=>{(0,l.Wf)(d(e),{persistence:t}).del()}},m=e=>Object.fromEntries(e.map((e=>[e,{preferredVersionName:null}])));const f=r.createContext(null);function h(){const e=(0,o.Gy)(),t=(0,i.p)().docs.versionPersistence,n=(0,r.useMemo)((()=>Object.keys(e)),[e]),[a,s]=(0,r.useState)((()=>m(n)));(0,r.useEffect)((()=>{s(function(e){let{pluginIds:t,versionPersistence:n,allDocsData:r}=e;function o(e){const t=p.read(e,n);return r[e].versions.some((e=>e.name===t))?{preferredVersionName:t}:(p.clear(e,n),{preferredVersionName:null})}return Object.fromEntries(t.map((e=>[e,o(e)])))}({allDocsData:e,versionPersistence:t,pluginIds:n}))}),[e,t,n]);return[a,(0,r.useMemo)((()=>({savePreferredVersion:function(e,n){p.save(e,t,n),s((t=>({...t,[e]:{preferredVersionName:n}})))}})),[t])]}function g(e){let{children:t}=e;const n=h();return(0,u.jsx)(f.Provider,{value:n,children:t})}function b(e){let{children:t}=e;return s.C5?(0,u.jsx)(g,{children:t}):(0,u.jsx)(u.Fragment,{children:t})}function y(){const e=(0,r.useContext)(f);if(!e)throw new c.dV("DocsPreferredVersionContextProvider");return e}function v(e){void 0===e&&(e=a.W);const t=(0,o.ht)(e),[n,i]=y(),{preferredVersionName:s}=n[e];return{preferredVersion:t.versions.find((e=>e.name===s))??null,savePreferredVersionName:(0,r.useCallback)((t=>{i.savePreferredVersion(e,t)}),[i,e])}}},26588:(e,t,n)=>{"use strict";n.d(t,{V:()=>c,t:()=>l});var r=n(96540),o=n(89532),a=n(74848);const i=Symbol("EmptyContext"),s=r.createContext(i);function c(e){let{children:t,name:n,items:o}=e;const i=(0,r.useMemo)((()=>n&&o?{name:n,items:o}:null),[n,o]);return(0,a.jsx)(s.Provider,{value:i,children:t})}function l(){const e=(0,r.useContext)(s);if(e===i)throw new o.dV("DocsSidebarProvider");return e}},32252:(e,t,n)=>{"use strict";n.d(t,{n:()=>s,r:()=>c});var r=n(96540),o=n(89532),a=n(74848);const i=r.createContext(null);function s(e){let{children:t,version:n}=e;return(0,a.jsx)(i.Provider,{value:n,children:t})}function c(){const e=(0,r.useContext)(i);if(null===e)throw new o.dV("DocsVersionProvider");return e}},22069:(e,t,n)=>{"use strict";n.d(t,{M:()=>m,e:()=>p});var r=n(96540),o=n(75600),a=n(24581),i=n(57485),s=n(6342),c=n(89532),l=n(74848);const u=r.createContext(void 0);function d(){const e=function(){const e=(0,o.YL)(),{items:t}=(0,s.p)().navbar;return 0===t.length&&!e.component}(),t=(0,a.l)(),n=!e&&"mobile"===t,[c,l]=(0,r.useState)(!1);(0,i.$Z)((()=>{if(c)return l(!1),!1}));const u=(0,r.useCallback)((()=>{l((e=>!e))}),[]);return(0,r.useEffect)((()=>{"desktop"===t&&l(!1)}),[t]),(0,r.useMemo)((()=>({disabled:e,shouldRender:n,toggle:u,shown:c})),[e,n,u,c])}function p(e){let{children:t}=e;const n=d();return(0,l.jsx)(u.Provider,{value:n,children:t})}function m(){const e=r.useContext(u);if(void 0===e)throw new c.dV("NavbarMobileSidebarProvider");return e}},75600:(e,t,n)=>{"use strict";n.d(t,{GX:()=>l,YL:()=>c,y_:()=>s});var r=n(96540),o=n(89532),a=n(74848);const i=r.createContext(null);function s(e){let{children:t}=e;const n=(0,r.useState)({component:null,props:null});return(0,a.jsx)(i.Provider,{value:n,children:t})}function c(){const e=(0,r.useContext)(i);if(!e)throw new o.dV("NavbarSecondaryMenuContentProvider");return e[0]}function l(e){let{component:t,props:n}=e;const a=(0,r.useContext)(i);if(!a)throw new o.dV("NavbarSecondaryMenuContentProvider");const[,s]=a,c=(0,o.Be)(n);return(0,r.useEffect)((()=>{s({component:t,props:c})}),[s,t,c]),(0,r.useEffect)((()=>()=>s({component:null,props:null})),[s]),null}},14090:(e,t,n)=>{"use strict";n.d(t,{w:()=>o,J:()=>a});var r=n(96540);const o="navigation-with-keyboard";function a(){(0,r.useEffect)((()=>{function e(e){"keydown"===e.type&&"Tab"===e.key&&document.body.classList.add(o),"mousedown"===e.type&&document.body.classList.remove(o)}return document.addEventListener("keydown",e),document.addEventListener("mousedown",e),()=>{document.body.classList.remove(o),document.removeEventListener("keydown",e),document.removeEventListener("mousedown",e)}}),[])}},24581:(e,t,n)=>{"use strict";n.d(t,{l:()=>s});var r=n(96540),o=n(38193);const a={desktop:"desktop",mobile:"mobile",ssr:"ssr"},i=996;function s(e){let{desktopBreakpoint:t=i}=void 0===e?{}:e;const[n,s]=(0,r.useState)((()=>"ssr"));return(0,r.useEffect)((()=>{function e(){s(function(e){if(!o.A.canUseDOM)throw new Error("getWindowSize() should only be called after React hydration");return window.innerWidth>e?a.desktop:a.mobile}(t))}return e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}}),[t]),n}},17559:(e,t,n)=>{"use strict";n.d(t,{G:()=>r});const r={page:{blogListPage:"blog-list-page",blogPostPage:"blog-post-page",blogTagsListPage:"blog-tags-list-page",blogTagPostListPage:"blog-tags-post-list-page",docsDocPage:"docs-doc-page",docsTagsListPage:"docs-tags-list-page",docsTagDocListPage:"docs-tags-doc-list-page",mdxPage:"mdx-page"},wrapper:{main:"main-wrapper",blogPages:"blog-wrapper",docsPages:"docs-wrapper",mdxPages:"mdx-wrapper"},common:{editThisPage:"theme-edit-this-page",lastUpdated:"theme-last-updated",backToTopButton:"theme-back-to-top-button",codeBlock:"theme-code-block",admonition:"theme-admonition",unlistedBanner:"theme-unlisted-banner",admonitionType:e=>`theme-admonition-${e}`},layout:{},docs:{docVersionBanner:"theme-doc-version-banner",docVersionBadge:"theme-doc-version-badge",docBreadcrumbs:"theme-doc-breadcrumbs",docMarkdown:"theme-doc-markdown",docTocMobile:"theme-doc-toc-mobile",docTocDesktop:"theme-doc-toc-desktop",docFooter:"theme-doc-footer",docFooterTagsRow:"theme-doc-footer-tags-row",docFooterEditMetaRow:"theme-doc-footer-edit-meta-row",docSidebarContainer:"theme-doc-sidebar-container",docSidebarMenu:"theme-doc-sidebar-menu",docSidebarItemCategory:"theme-doc-sidebar-item-category",docSidebarItemLink:"theme-doc-sidebar-item-link",docSidebarItemCategoryLevel:e=>`theme-doc-sidebar-item-category-level-${e}`,docSidebarItemLinkLevel:e=>`theme-doc-sidebar-item-link-level-${e}`},blog:{blogFooterTagsRow:"theme-blog-footer-tags-row",blogFooterEditMetaRow:"theme-blog-footer-edit-meta-row"}}},53109:(e,t,n)=>{"use strict";function r(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}n.d(t,{O:()=>r})},84142:(e,t,n)=>{"use strict";n.d(t,{B5:()=>S,C5:()=>p,Nr:()=>m,OF:()=>w,QB:()=>j,Vd:()=>x,Y:()=>y,fW:()=>k,w8:()=>g});var r=n(96540),o=n(56347),a=n(22831),i=n(48295),s=n(55597),c=n(32252),l=n(26588),u=n(31682),d=n(99169);const p=!!i.Gy;function m(e){return"link"!==e.type||e.unlisted?"category"===e.type?function(e){if(e.href&&!e.linkUnlisted)return e.href;for(const t of e.items){const e=m(t);if(e)return e}}(e):void 0:e.href}const f=(e,t)=>void 0!==e&&(0,d.ys)(e,t),h=(e,t)=>e.some((e=>g(e,t)));function g(e,t){return"link"===e.type?f(e.href,t):"category"===e.type&&(f(e.href,t)||h(e.items,t))}function b(e,t){switch(e.type){case"category":return g(e,t)||e.items.some((e=>b(e,t)));case"link":return!e.unlisted||g(e,t);default:return!0}}function y(e,t){return(0,r.useMemo)((()=>e.filter((e=>b(e,t)))),[e,t])}function v(e){let{sidebarItems:t,pathname:n,onlyCategories:r=!1}=e;const o=[];return function e(t){for(const a of t)if("category"===a.type&&((0,d.ys)(a.href,n)||e(a.items))||"link"===a.type&&(0,d.ys)(a.href,n)){return r&&"category"!==a.type||o.unshift(a),!0}return!1}(t),o}function w(){const e=(0,l.t)(),{pathname:t}=(0,o.zy)(),n=(0,i.vT)()?.pluginData.breadcrumbs;return!1!==n&&e?v({sidebarItems:e.items,pathname:t}):null}function x(e){const{activeVersion:t}=(0,i.zK)(e),{preferredVersion:n}=(0,s.g1)(e),o=(0,i.r7)(e);return(0,r.useMemo)((()=>(0,u.s)([t,n,o].filter(Boolean))),[t,n,o])}function k(e,t){const n=x(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.sidebars?Object.entries(e.sidebars):[])),r=t.find((t=>t[0]===e));if(!r)throw new Error(`Can't find any sidebar with id "${e}" in version${n.length>1?"s":""} ${n.map((e=>e.name)).join(", ")}".\nAvailable sidebar ids are:\n- ${t.map((e=>e[0])).join("\n- ")}`);return r[1]}),[e,n])}function j(e,t){const n=x(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.docs)),r=t.find((t=>t.id===e));if(!r){if(n.flatMap((e=>e.draftIds)).includes(e))return null;throw new Error(`Couldn't find any doc with id "${e}" in version${n.length>1?"s":""} "${n.map((e=>e.name)).join(", ")}".\nAvailable doc ids are:\n- ${(0,u.s)(t.map((e=>e.id))).join("\n- ")}`)}return r}),[e,n])}function S(e){let{route:t}=e;const n=(0,o.zy)(),r=(0,c.r)(),i=t.routes,s=i.find((e=>(0,o.B6)(n.pathname,e)));if(!s)return null;const l=s.sidebar,u=l?r.docsSidebars[l]:void 0;return{docElement:(0,a.v)(i),sidebarName:l,sidebarItems:u}}},57485:(e,t,n)=>{"use strict";n.d(t,{$Z:()=>i,aZ:()=>s});var r=n(96540),o=n(56347),a=n(89532);function i(e){!function(e){const t=(0,o.W6)(),n=(0,a._q)(e);(0,r.useEffect)((()=>t.block(((e,t)=>n(e,t)))),[t,n])}(((t,n)=>{if("POP"===n)return e(t,n)}))}function s(e){return function(e){const t=(0,o.W6)();return(0,r.useSyncExternalStore)(t.listen,(()=>e(t)),(()=>e(t)))}((t=>null===e?null:new URLSearchParams(t.location.search).get(e)))}},31682:(e,t,n)=>{"use strict";function r(e,t){return void 0===t&&(t=(e,t)=>e===t),e.filter(((n,r)=>e.findIndex((e=>t(e,n)))!==r))}function o(e){return Array.from(new Set(e))}n.d(t,{X:()=>r,s:()=>o})},61213:(e,t,n)=>{"use strict";n.d(t,{e3:()=>p,be:()=>u,Jx:()=>m});var r=n(96540),o=n(15066),a=n(5260),i=n(36803),s=n(86025),c=n(44586);var l=n(74848);function u(e){let{title:t,description:n,keywords:r,image:o,children:i}=e;const u=function(e){const{siteConfig:t}=(0,c.A)(),{title:n,titleDelimiter:r}=t;return e?.trim().length?`${e.trim()} ${r} ${n}`:n}(t),{withBaseUrl:d}=(0,s.h)(),p=o?d(o,{absolute:!0}):void 0;return(0,l.jsxs)(a.A,{children:[t&&(0,l.jsx)("title",{children:u}),t&&(0,l.jsx)("meta",{property:"og:title",content:u}),n&&(0,l.jsx)("meta",{name:"description",content:n}),n&&(0,l.jsx)("meta",{property:"og:description",content:n}),r&&(0,l.jsx)("meta",{name:"keywords",content:Array.isArray(r)?r.join(","):r}),p&&(0,l.jsx)("meta",{property:"og:image",content:p}),p&&(0,l.jsx)("meta",{name:"twitter:image",content:p}),i]})}const d=r.createContext(void 0);function p(e){let{className:t,children:n}=e;const i=r.useContext(d),s=(0,o.A)(i,t);return(0,l.jsxs)(d.Provider,{value:s,children:[(0,l.jsx)(a.A,{children:(0,l.jsx)("html",{className:s})}),n]})}function m(e){let{children:t}=e;const n=(0,i.A)(),r=`plugin-${n.plugin.name.replace(/docusaurus-(?:plugin|theme)-(?:content-)?/gi,"")}`;const a=`plugin-id-${n.plugin.id}`;return(0,l.jsx)(p,{className:(0,o.A)(r,a),children:t})}},89532:(e,t,n)=>{"use strict";n.d(t,{Be:()=>l,ZC:()=>s,_q:()=>i,dV:()=>c,fM:()=>u});var r=n(96540),o=n(205),a=n(74848);function i(e){const t=(0,r.useRef)(e);return(0,o.A)((()=>{t.current=e}),[e]),(0,r.useCallback)((function(){return t.current(...arguments)}),[])}function s(e){const t=(0,r.useRef)();return(0,o.A)((()=>{t.current=e})),t.current}class c extends Error{constructor(e,t){super(),this.name="ReactContextError",this.message=`Hook ${this.stack?.split("\n")[1]?.match(/at (?:\w+\.)?(?\w+)/)?.groups.name??""} is called outside the <${e}>. ${t??""}`}}function l(e){const t=Object.entries(e);return t.sort(((e,t)=>e[0].localeCompare(t[0]))),(0,r.useMemo)((()=>e),t.flat())}function u(e){return t=>{let{children:n}=t;return(0,a.jsx)(a.Fragment,{children:e.reduceRight(((e,t)=>(0,a.jsx)(t,{children:e})),n)})}}},99169:(e,t,n)=>{"use strict";n.d(t,{Dt:()=>s,ys:()=>i});var r=n(96540),o=n(35947),a=n(44586);function i(e,t){const n=e=>(!e||e.endsWith("/")?e:`${e}/`)?.toLowerCase();return n(e)===n(t)}function s(){const{baseUrl:e}=(0,a.A)().siteConfig;return(0,r.useMemo)((()=>function(e){let{baseUrl:t,routes:n}=e;function r(e){return e.path===t&&!0===e.exact}function o(e){return e.path===t&&!e.exact}return function e(t){if(0===t.length)return;return t.find(r)||e(t.filter(o).flatMap((e=>e.routes??[])))}(n)}({routes:o.A,baseUrl:e})),[e])}},23104:(e,t,n)=>{"use strict";n.d(t,{Mq:()=>m,Tv:()=>u,a_:()=>f,gk:()=>h});var r=n(96540),o=n(38193),a=n(92303),i=n(205),s=n(89532),c=n(74848);const l=r.createContext(void 0);function u(e){let{children:t}=e;const n=function(){const e=(0,r.useRef)(!0);return(0,r.useMemo)((()=>({scrollEventsEnabledRef:e,enableScrollEvents:()=>{e.current=!0},disableScrollEvents:()=>{e.current=!1}})),[])}();return(0,c.jsx)(l.Provider,{value:n,children:t})}function d(){const e=(0,r.useContext)(l);if(null==e)throw new s.dV("ScrollControllerProvider");return e}const p=()=>o.A.canUseDOM?{scrollX:window.pageXOffset,scrollY:window.pageYOffset}:null;function m(e,t){void 0===t&&(t=[]);const{scrollEventsEnabledRef:n}=d(),o=(0,r.useRef)(p()),a=(0,s._q)(e);(0,r.useEffect)((()=>{const e=()=>{if(!n.current)return;const e=p();a(e,o.current),o.current=e},t={passive:!0};return e(),window.addEventListener("scroll",e,t),()=>window.removeEventListener("scroll",e,t)}),[a,n,...t])}function f(){const e=d(),t=function(){const e=(0,r.useRef)({elem:null,top:0}),t=(0,r.useCallback)((t=>{e.current={elem:t,top:t.getBoundingClientRect().top}}),[]),n=(0,r.useCallback)((()=>{const{current:{elem:t,top:n}}=e;if(!t)return{restored:!1};const r=t.getBoundingClientRect().top-n;return r&&window.scrollBy({left:0,top:r}),e.current={elem:null,top:0},{restored:0!==r}}),[]);return(0,r.useMemo)((()=>({save:t,restore:n})),[n,t])}(),n=(0,r.useRef)(void 0),o=(0,r.useCallback)((r=>{t.save(r),e.disableScrollEvents(),n.current=()=>{const{restored:r}=t.restore();if(n.current=void 0,r){const t=()=>{e.enableScrollEvents(),window.removeEventListener("scroll",t)};window.addEventListener("scroll",t)}else e.enableScrollEvents()}}),[e,t]);return(0,i.A)((()=>{queueMicrotask((()=>n.current?.()))})),{blockElementScrollPositionUntilNextRender:o}}function h(){const e=(0,r.useRef)(null),t=(0,a.A)()&&"smooth"===getComputedStyle(document.documentElement).scrollBehavior;return{startScroll:n=>{e.current=t?function(e){return window.scrollTo({top:e,behavior:"smooth"}),()=>{}}(n):function(e){let t=null;const n=document.documentElement.scrollTop>e;return function r(){const o=document.documentElement.scrollTop;(n&&o>e||!n&&ot&&cancelAnimationFrame(t)}(n)},cancelScroll:()=>e.current?.()}}},2967:(e,t,n)=>{"use strict";n.d(t,{Cy:()=>r,tU:()=>o});n(44586);const r="default";function o(e,t){return`docs-${e}-${t}`}},89466:(e,t,n)=>{"use strict";n.d(t,{Dv:()=>u,Wf:()=>l});var r=n(96540);const o="localStorage";function a(e){let{key:t,oldValue:n,newValue:r,storage:o}=e;if(n===r)return;const a=document.createEvent("StorageEvent");a.initStorageEvent("storage",!1,!1,t,n,r,window.location.href,o),window.dispatchEvent(a)}function i(e){if(void 0===e&&(e=o),"undefined"==typeof window)throw new Error("Browser storage is not available on Node.js/Docusaurus SSR process.");if("none"===e)return null;try{return window[e]}catch(n){return t=n,s||(console.warn("Docusaurus browser storage is not available.\nPossible reasons: running Docusaurus in an iframe, in an incognito browser session, or using too strict browser privacy settings.",t),s=!0),null}var t}let s=!1;const c={get:()=>null,set:()=>{},del:()=>{},listen:()=>()=>{}};function l(e,t){if("undefined"==typeof window)return function(e){function t(){throw new Error(`Illegal storage API usage for storage key "${e}".\nDocusaurus storage APIs are not supposed to be called on the server-rendering process.\nPlease only call storage APIs in effects and event handlers.`)}return{get:t,set:t,del:t,listen:t}}(e);const n=i(t?.persistence);return null===n?c:{get:()=>{try{return n.getItem(e)}catch(t){return console.error(`Docusaurus storage error, can't get key=${e}`,t),null}},set:t=>{try{const r=n.getItem(e);n.setItem(e,t),a({key:e,oldValue:r,newValue:t,storage:n})}catch(r){console.error(`Docusaurus storage error, can't set ${e}=${t}`,r)}},del:()=>{try{const t=n.getItem(e);n.removeItem(e),a({key:e,oldValue:t,newValue:null,storage:n})}catch(t){console.error(`Docusaurus storage error, can't delete key=${e}`,t)}},listen:t=>{try{const r=r=>{r.storageArea===n&&r.key===e&&t(r)};return window.addEventListener("storage",r),()=>window.removeEventListener("storage",r)}catch(r){return console.error(`Docusaurus storage error, can't listen for changes of key=${e}`,r),()=>{}}}}}function u(e,t){const n=(0,r.useRef)((()=>null===e?c:l(e,t))).current(),o=(0,r.useCallback)((e=>"undefined"==typeof window?()=>{}:n.listen(e)),[n]);return[(0,r.useSyncExternalStore)(o,(()=>"undefined"==typeof window?null:n.get()),(()=>null)),n]}},32131:(e,t,n)=>{"use strict";n.d(t,{o:()=>i});var r=n(44586),o=n(56347),a=n(70440);function i(){const{siteConfig:{baseUrl:e,url:t,trailingSlash:n},i18n:{defaultLocale:i,currentLocale:s}}=(0,r.A)(),{pathname:c}=(0,o.zy)(),l=(0,a.applyTrailingSlash)(c,{trailingSlash:n,baseUrl:e}),u=s===i?e:e.replace(`/${s}/`,"/"),d=l.replace(e,"");return{createUrl:function(e){let{locale:n,fullyQualified:r}=e;return`${r?t:""}${function(e){return e===i?`${u}`:`${u}${e}/`}(n)}${d}`}}}},75062:(e,t,n)=>{"use strict";n.d(t,{$:()=>i});var r=n(96540),o=n(56347),a=n(89532);function i(e){const t=(0,o.zy)(),n=(0,a.ZC)(t),i=(0,a._q)(e);(0,r.useEffect)((()=>{n&&t!==n&&i({location:t,previousLocation:n})}),[i,t,n])}},6342:(e,t,n)=>{"use strict";n.d(t,{p:()=>o});var r=n(44586);function o(){return(0,r.A)().siteConfig.themeConfig}},12983:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.removeTrailingSlash=t.addLeadingSlash=t.addTrailingSlash=void 0;const r=n(42566);function o(e){return e.endsWith("/")?e:`${e}/`}function a(e){return(0,r.removeSuffix)(e,"/")}t.addTrailingSlash=o,t.default=function(e,t){const{trailingSlash:n,baseUrl:r}=t;if(e.startsWith("#"))return e;if(void 0===n)return e;const[i]=e.split(/[#?]/),s="/"===i||i===r?i:(c=i,n?o(c):a(c));var c;return e.replace(i,s)},t.addLeadingSlash=function(e){return(0,r.addPrefix)(e,"/")},t.removeTrailingSlash=a},80253:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=void 0,t.getErrorCausalChain=function e(t){return t.cause?[t,...e(t.cause)]:[t]}},70440:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=t.removePrefix=t.addSuffix=t.removeSuffix=t.addPrefix=t.removeTrailingSlash=t.addLeadingSlash=t.addTrailingSlash=t.applyTrailingSlash=t.blogPostContainerID=void 0,t.blogPostContainerID="__blog-post-container";var o=n(12983);Object.defineProperty(t,"applyTrailingSlash",{enumerable:!0,get:function(){return r(o).default}}),Object.defineProperty(t,"addTrailingSlash",{enumerable:!0,get:function(){return o.addTrailingSlash}}),Object.defineProperty(t,"addLeadingSlash",{enumerable:!0,get:function(){return o.addLeadingSlash}}),Object.defineProperty(t,"removeTrailingSlash",{enumerable:!0,get:function(){return o.removeTrailingSlash}});var a=n(42566);Object.defineProperty(t,"addPrefix",{enumerable:!0,get:function(){return a.addPrefix}}),Object.defineProperty(t,"removeSuffix",{enumerable:!0,get:function(){return a.removeSuffix}}),Object.defineProperty(t,"addSuffix",{enumerable:!0,get:function(){return a.addSuffix}}),Object.defineProperty(t,"removePrefix",{enumerable:!0,get:function(){return a.removePrefix}});var i=n(80253);Object.defineProperty(t,"getErrorCausalChain",{enumerable:!0,get:function(){return i.getErrorCausalChain}})},42566:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.removePrefix=t.addSuffix=t.removeSuffix=t.addPrefix=void 0,t.addPrefix=function(e,t){return e.startsWith(t)?e:`${t}${e}`},t.removeSuffix=function(e,t){return""===t?e:e.endsWith(t)?e.slice(0,-t.length):e},t.addSuffix=function(e,t){return e.endsWith(t)?e:`${e}${t}`},t.removePrefix=function(e,t){return e.startsWith(t)?e.slice(t.length):e}},2849:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});n(96540);var r=n(20053);const o={loadingRing:"loadingRing_RJI3","loading-ring":"loading-ring_FB5o"};var a=n(74848);function i(e){let{className:t}=e;return(0,a.jsxs)("div",{className:(0,r.A)(o.loadingRing,t),children:[(0,a.jsx)("div",{}),(0,a.jsx)("div",{}),(0,a.jsx)("div",{}),(0,a.jsx)("div",{})]})}},5891:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s});var r=n(58291),o=n.n(r),a=n(11088);const i=new Map;function s(e,t){const n=`${e}${t}`;let r=i.get(n);return r||(r=async function(e,t){{const n=`${e}${a.IH.replace("{dir}",t?`-${t.replace(/\//g,"-")}`:"")}`;if(new URL(n,location.origin).origin!==location.origin)throw new Error("Unexpected version url");const r=await(await fetch(n)).json(),i=r.map(((e,t)=>{let{documents:n,index:r}=e;return{type:t,documents:n,index:o().Index.load(r)}})),s=r.reduce(((e,t)=>{for(const n of t.index.invertedIndex)/\p{Unified_Ideograph}/u.test(n[0][0])&&e.add(n[0]);return e}),new Set);return{wrappedIndexes:i,zhDictionary:Array.from(s)}}return{wrappedIndexes:[],zhDictionary:[]}}(e,t),i.set(n,r)),r}},32384:(e,t,n)=>{"use strict";n.d(t,{m:()=>c});var r=n(58291),o=n.n(r);var a=n(11088);function i(e){return s(e).concat(s(e.filter((e=>{const t=e[e.length-1];return!t.trailing&&t.maybeTyping})),!0))}function s(e,t){return e.map((e=>({tokens:e.map((e=>e.value)),term:e.map((e=>({value:e.value,presence:o().Query.presence.REQUIRED,wildcard:(t?e.trailing||e.maybeTyping:e.trailing)?o().Query.wildcard.TRAILING:o().Query.wildcard.NONE})))})))}function c(e,t,n){return function(r,s){const c=function(e,t){if(1===t.length&&["ja","jp","th"].includes(t[0]))return o()[t[0]].tokenizer(e).map((e=>e.toString()));let n=/[^-\s]+/g;return t.includes("zh")&&(n=/\w+|\p{Unified_Ideograph}+/gu),e.toLowerCase().match(n)||[]}(r,a.BH);if(0===c.length)return void s([]);const l=function(e,t){const n=function(e,t){const n=[];return function e(r,o){if(0===r.length)return void n.push(o);const a=r[0];if(/\p{Unified_Ideograph}/u.test(a)){const n=function(e,t){const n=[];return function e(r,o){let a=0,i=!1;for(const s of t)if(r.substr(0,s.length)===s){const t={missed:o.missed,term:o.term.concat({value:s})};r.length>s.length?e(r.substr(s.length),t):n.push(t),i=!0}else for(let t=s.length-1;t>a;t-=1){const c=s.substr(0,t);if(r.substr(0,t)===c){a=t;const s={missed:o.missed,term:o.term.concat({value:c,trailing:!0})};r.length>t?e(r.substr(t),s):n.push(s),i=!0;break}}i||(r.length>0?e(r.substr(1),{missed:o.missed+1,term:o.term}):o.term.length>0&&n.push(o))}(e,{missed:0,term:[]}),n.sort(((e,t)=>{const n=e.missed>0?1:0,r=t.missed>0?1:0;return n!==r?n-r:e.term.length-t.term.length})).map((e=>e.term))}(a,t);for(const t of n){const n=o.concat(...t);e(r.slice(1),n)}}else{const t=o.concat({value:a});e(r.slice(1),t)}}(e,[]),n}(e,t);if(0===n.length)return[{tokens:e,term:e.map((e=>({value:e,presence:o().Query.presence.REQUIRED,wildcard:o().Query.wildcard.LEADING|o().Query.wildcard.TRAILING})))}];for(const o of n)o[o.length-1].maybeTyping=!0;const r=[];for(const i of a.BH)if("en"===i)a.sx||r.unshift(o().stopWordFilter);else{const e=o()[i];e.stopWordFilter&&r.unshift(e.stopWordFilter)}let s;if(r.length>0){const e=e=>r.reduce(((e,t)=>e.filter((e=>t(e.value)))),e);s=[];const t=[];for(const r of n){const n=e(r);s.push(n),n.length0&&t.push(n)}n.push(...t)}else s=n.slice();const c=[];for(const o of s)if(o.length>2)for(let e=o.length-1;e>=0;e-=1)c.push(o.slice(0,e).concat(o.slice(e+1)));return i(n).concat(i(c))}(c,t),u=[];e:for(const{term:t,tokens:o}of l)for(const{documents:r,index:a,type:i}of e)if(u.push(...a.query((e=>{for(const n of t)e.term(n.value,{wildcard:n.wildcard,presence:n.presence})})).slice(0,n).filter((e=>!u.some((t=>t.document.i.toString()===e.ref)))).slice(0,n-u.length).map((t=>{const n=r.find((e=>e.i.toString()===t.ref));return{document:n,type:i,page:0!==i&&e[0].documents.find((e=>e.i===n.p)),metadata:t.matchData.metadata,tokens:o,score:t.score}}))),u.length>=n)break e;!function(e){e.forEach(((e,t)=>{e.index=t})),e.sort(((t,n)=>{let r=t.type>0&&t.page?e.findIndex((e=>e.document===t.page)):t.index,o=n.type>0&&n.page?e.findIndex((e=>e.document===n.page)):n.index;return-1===r&&(r=t.index),-1===o&&(o=n.index),r===o?0===t.type?-1:0===n.type?1:t.index-n.index:r-o}))}(u),function(e){e.forEach(((t,n)=>{n>0&&t.page&&e.some((e=>e.document===t.page))&&(n{"use strict";function r(e){return e.join(" \u203a ")}n.d(t,{$:()=>r})},53103:(e,t,n)=>{"use strict";function r(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}n.d(t,{Z:()=>r})},27674:(e,t,n)=>{"use strict";function r(e,t){const n=[];for(const r of Object.values(e))r[t]&&n.push(...r[t].position);return n.sort(((e,t)=>e[0]-t[0]||t[1]-e[1]))}n.d(t,{g:()=>r})},86841:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(53103);function o(e,t,n){const a=[];for(const i of t){const n=e.toLowerCase().indexOf(i);if(n>=0){n>0&&a.push(o(e.substr(0,n),t)),a.push(`${(0,r.Z)(e.substr(n,i.length))}`);const s=n+i.length;s${(0,r.Z)(e)}`:(0,r.Z)(e):a.join("")}},43810:(e,t,n)=>{"use strict";n.d(t,{C:()=>c});var r=n(53103),o=n(86841);const a=/\w+|\p{Unified_Ideograph}/u;function i(e){const t=[];let n=0,r=e;for(;r.length>0;){const o=r.match(a);if(!o){t.push(r);break}o.index>0&&t.push(r.substring(0,o.index)),t.push(o[0]),n+=o.index+o[0].length,r=e.substring(n)}return t}var s=n(11088);function c(e,t,n,a){void 0===a&&(a=s.rG);const{chunkIndex:c,chunks:l}=function(e,t,n){const a=[];let s=0,c=0,l=-1;for(;sc){const t=i(e.substring(c,u)).map((e=>({html:(0,r.Z)(e),textLength:e.length})));for(const e of t)a.push(e)}-1===l&&(l=a.length),c=u+d,a.push({html:(0,o.Z)(e.substring(u,c),n,!0),textLength:d})}}if(c({html:(0,r.Z)(e),textLength:e.length})));for(const e of t)a.push(e)}return{chunkIndex:l,chunks:a}}(e,t,n),u=l.slice(0,c),d=l[c],p=[d.html],m=l.slice(c+1);let f=d.textLength,h=0,g=0,b=!1,y=!1;for(;f0){const e=u.pop();f+e.textLength<=a?(p.unshift(e.html),h+=e.textLength,f+=e.textLength):(b=!0,u.length=0)}else{if(!(m.length>0))break;{const e=m.shift();f+e.textLength<=a?(p.push(e.html),g+=e.textLength,f+=e.textLength):(y=!0,m.length=0)}}return(b||u.length>0)&&p.unshift("\u2026"),(y||m.length>0)&&p.push("\u2026"),p.join("")}},11088:(e,t,n)=>{"use strict";n.d(t,{CU:()=>i(),UB:()=>g,tb:()=>p,O6:()=>v,I$:()=>b,BH:()=>s,sx:()=>c,ZG:()=>h,WW:()=>m,pk:()=>f,Hg:()=>y,IH:()=>l,rG:()=>d,AT:()=>u});var r=n(58291),o=n.n(r),a=n(689),i=n.n(a);n(86121)(o()),n(3397).A(o()),n(66106)(o());const s=["en","zh"],c=!1,l="search-index{dir}.json?_=c75b8fa8",u=8,d=50,p=!0,m=!0,f=!0,h="right",g=void 0,b=!0,y=null,v=!1},3397:(e,t,n)=>{"use strict";function r(e){const t=new RegExp("^[^"+e+"]+","u"),n=new RegExp("[^"+e+"]+$","u");return function(e){return e.update((function(e){return e.replace(t,"").replace(n,"")}))}}function o(e,t){e.trimmerSupport.generateTrimmer=r,e.zh=function(){this.pipeline.reset(),this.pipeline.add(e.zh.trimmer,e.zh.stopWordFilter),t&&(this.tokenizer=t)},t&&(e.zh.tokenizer=t),e.zh.wordCharacters="\\u3400-\\u4DBF\\u4E00-\\u9FFC\\uFA0E\\uFA0F\\uFA11\\uFA13\\uFA14\\uFA1F\\uFA21\\uFA23\\uFA24\\uFA27-\\uFA29\\u{20000}-\\u{2A6DD}\\u{2A700}-\\u{2B734}\\u{2B740}-\\u{2B81D}\\u{2B820}-\\u{2CEA1}\\u{2CEB0}-\\u{2EBE0}\\u{30000}-\\u{3134A}",e.zh.trimmer=e.trimmerSupport.generateTrimmer(e.zh.wordCharacters),e.Pipeline.registerFunction(e.zh.trimmer,"trimmer-zh"),e.zh.stopWordFilter=e.generateStopWordFilter("\u7684 \u4e00 \u4e0d \u5728 \u4eba \u6709 \u662f \u4e3a \u4ee5 \u4e8e \u4e0a \u4ed6 \u800c \u540e \u4e4b \u6765 \u53ca \u4e86 \u56e0 \u4e0b \u53ef \u5230 \u7531 \u8fd9 \u4e0e \u4e5f \u6b64 \u4f46 \u5e76 \u4e2a \u5176 \u5df2 \u65e0 \u5c0f \u6211 \u4eec \u8d77 \u6700 \u518d \u4eca \u53bb \u597d \u53ea \u53c8 \u6216 \u5f88 \u4ea6 \u67d0 \u628a \u90a3 \u4f60 \u4e43 \u5b83 \u5427 \u88ab \u6bd4 \u522b \u8d81 \u5f53 \u4ece \u5230 \u5f97 \u6253 \u51e1 \u513f \u5c14 \u8be5 \u5404 \u7ed9 \u8ddf \u548c \u4f55 \u8fd8 \u5373 \u51e0 \u65e2 \u770b \u636e \u8ddd \u9760 \u5566 \u4e86 \u53e6 \u4e48 \u6bcf \u4eec \u561b \u62ff \u54ea \u90a3 \u60a8 \u51ed \u4e14 \u5374 \u8ba9 \u4ecd \u5565 \u5982 \u82e5 \u4f7f \u8c01 \u867d \u968f \u540c \u6240 \u5979 \u54c7 \u55e1 \u5f80 \u54ea \u4e9b \u5411 \u6cbf \u54df \u7528 \u4e8e \u54b1 \u5219 \u600e \u66fe \u81f3 \u81f4 \u7740 \u8bf8 \u81ea".split(" ")),e.Pipeline.registerFunction(e.zh.stopWordFilter,"stopWordFilter-zh")}n.d(t,{A:()=>o})},20053:(e,t,n)=>{"use strict";function r(e){var t,n,o="";if("string"==typeof e||"number"==typeof e)o+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;to});const o=function(){for(var e,t,n=0,o="";n{"use strict";n.d(t,{zR:()=>w,TM:()=>_,yJ:()=>m,sC:()=>C,AO:()=>p});var r=n(58168);function o(e){return"/"===e.charAt(0)}function a(e,t){for(var n=t,r=n+1,o=e.length;r=0;p--){var m=i[p];"."===m?a(i,p):".."===m?(a(i,p),d++):d&&(a(i,p),d--)}if(!l)for(;d--;d)i.unshift("..");!l||""===i[0]||i[0]&&o(i[0])||i.unshift("");var f=i.join("/");return n&&"/"!==f.substr(-1)&&(f+="/"),f};var s=n(11561);function c(e){return"/"===e.charAt(0)?e:"/"+e}function l(e){return"/"===e.charAt(0)?e.substr(1):e}function u(e,t){return function(e,t){return 0===e.toLowerCase().indexOf(t.toLowerCase())&&-1!=="/?#".indexOf(e.charAt(t.length))}(e,t)?e.substr(t.length):e}function d(e){return"/"===e.charAt(e.length-1)?e.slice(0,-1):e}function p(e){var t=e.pathname,n=e.search,r=e.hash,o=t||"/";return n&&"?"!==n&&(o+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(o+="#"===r.charAt(0)?r:"#"+r),o}function m(e,t,n,o){var a;"string"==typeof e?(a=function(e){var t=e||"/",n="",r="",o=t.indexOf("#");-1!==o&&(r=t.substr(o),t=t.substr(0,o));var a=t.indexOf("?");return-1!==a&&(n=t.substr(a),t=t.substr(0,a)),{pathname:t,search:"?"===n?"":n,hash:"#"===r?"":r}}(e),a.state=t):(void 0===(a=(0,r.A)({},e)).pathname&&(a.pathname=""),a.search?"?"!==a.search.charAt(0)&&(a.search="?"+a.search):a.search="",a.hash?"#"!==a.hash.charAt(0)&&(a.hash="#"+a.hash):a.hash="",void 0!==t&&void 0===a.state&&(a.state=t));try{a.pathname=decodeURI(a.pathname)}catch(s){throw s instanceof URIError?new URIError('Pathname "'+a.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):s}return n&&(a.key=n),o?a.pathname?"/"!==a.pathname.charAt(0)&&(a.pathname=i(a.pathname,o.pathname)):a.pathname=o.pathname:a.pathname||(a.pathname="/"),a}function f(){var e=null;var t=[];return{setPrompt:function(t){return e=t,function(){e===t&&(e=null)}},confirmTransitionTo:function(t,n,r,o){if(null!=e){var a="function"==typeof e?e(t,n):e;"string"==typeof a?"function"==typeof r?r(a,o):o(!0):o(!1!==a)}else o(!0)},appendListener:function(e){var n=!0;function r(){n&&e.apply(void 0,arguments)}return t.push(r),function(){n=!1,t=t.filter((function(e){return e!==r}))}},notifyListeners:function(){for(var e=arguments.length,n=new Array(e),r=0;rt?n.splice(t,n.length-t,o):n.push(o),d({action:r,location:o,index:t,entries:n})}}))},replace:function(e,t){var r="REPLACE",o=m(e,t,h(),w.location);u.confirmTransitionTo(o,r,n,(function(e){e&&(w.entries[w.index]=o,d({action:r,location:o}))}))},go:v,goBack:function(){v(-1)},goForward:function(){v(1)},canGo:function(e){var t=w.index+e;return t>=0&&t{"use strict";var r=n(44363),o={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},a={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},i={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function c(e){return r.isMemo(e)?i:s[e.$$typeof]||o}s[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[r.Memo]=i;var l=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,m=Object.getPrototypeOf,f=Object.prototype;e.exports=function e(t,n,r){if("string"!=typeof n){if(f){var o=m(n);o&&o!==f&&e(t,o,r)}var i=u(n);d&&(i=i.concat(d(n)));for(var s=c(t),h=c(n),g=0;g{"use strict";e.exports=function(e,t,n,r,o,a,i,s){if(!e){var c;if(void 0===t)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var l=[n,r,o,a,i,s],u=0;(c=new Error(t.replace(/%s/g,(function(){return l[u++]})))).name="Invariant Violation"}throw c.framesToPop=1,c}}},66106:function(e,t,n){var r,o;r=function(){return function(e){e.multiLanguage=function(){for(var t=Array.prototype.slice.call(arguments),n=t.join("-"),r="",o=[],a=[],i=0;i=n&&t[(o-=n)>>3]&1<<(7&o))return this.cursor++,!0}return!1},in_grouping_b:function(t,n,r){if(this.cursor>this.limit_backward){var o=e.charCodeAt(this.cursor-1);if(o<=r&&o>=n&&t[(o-=n)>>3]&1<<(7&o))return this.cursor--,!0}return!1},out_grouping:function(t,n,r){if(this.cursorr||o>3]&1<<(7&o)))return this.cursor++,!0}return!1},out_grouping_b:function(t,n,r){if(this.cursor>this.limit_backward){var o=e.charCodeAt(this.cursor-1);if(o>r||o>3]&1<<(7&o)))return this.cursor--,!0}return!1},eq_s:function(t,n){if(this.limit-this.cursor>1),d=0,p=s0||o==r||l)break;l=!0}}for(;;){if(s>=(m=t[r]).s_size){if(this.cursor=a+m.s_size,!m.method)return m.result;var h=m.method();if(this.cursor=a+m.s_size,h)return m.result}if((r=m.substring_i)<0)return 0}},find_among_b:function(t,n){for(var r=0,o=n,a=this.cursor,i=this.limit_backward,s=0,c=0,l=!1;;){for(var u=r+(o-r>>1),d=0,p=s=0;m--){if(a-p==i){d=-1;break}if(d=e.charCodeAt(a-1-p)-f.s[m])break;p++}if(d<0?(o=u,c=p):(r=u,s=p),o-r<=1){if(r>0||o==r||l)break;l=!0}}for(;;){var f;if(s>=(f=t[r]).s_size){if(this.cursor=a-f.s_size,!f.method)return f.result;var h=f.method();if(this.cursor=a-f.s_size,h)return f.result}if((r=f.substring_i)<0)return 0}},replace_s:function(t,n,r){var o=r.length-(n-t),a=e.substring(0,t),i=e.substring(n);return e=a+r+i,this.limit+=o,this.cursor>=n?this.cursor+=o:this.cursor>t&&(this.cursor=t),o},slice_check:function(){if(this.bra<0||this.bra>this.ket||this.ket>this.limit||this.limit>e.length)throw"faulty slice operation"},slice_from:function(e){this.slice_check(),this.replace_s(this.bra,this.ket,e)},slice_del:function(){this.slice_from("")},insert:function(e,t,n){var r=this.replace_s(e,t,n);e<=this.bra&&(this.bra+=r),e<=this.ket&&(this.ket+=r)},slice_to:function(){return this.slice_check(),e.substring(this.bra,this.ket)},eq_v_b:function(e){return this.eq_s_b(e.length,e)}}}},e.trimmerSupport={generateTrimmer:function(e){var t=new RegExp("^[^"+e+"]+"),n=new RegExp("[^"+e+"]+$");return function(e){return"function"==typeof e.update?e.update((function(e){return e.replace(t,"").replace(n,"")})):e.replace(t,"").replace(n,"")}}}}})?r.call(t,n,t,e):r)||(e.exports=o)},58291:(e,t,n)=>{var r,o;!function(){var a,i,s,c,l,u,d,p,m,f,h,g,b,y,v,w,x,k,j,S,E,_,T,C,A,P,N,L,R,I,O=function(e){var t=new O.Builder;return t.pipeline.add(O.trimmer,O.stopWordFilter,O.stemmer),t.searchPipeline.add(O.stemmer),e.call(t,t),t.build()};O.version="2.3.9",O.utils={},O.utils.warn=(a=this,function(e){a.console&&console.warn&&console.warn(e)}),O.utils.asString=function(e){return null==e?"":e.toString()},O.utils.clone=function(e){if(null==e)return e;for(var t=Object.create(null),n=Object.keys(e),r=0;r0){var c=O.utils.clone(t)||{};c.position=[i,s],c.index=o.length,o.push(new O.Token(n.slice(i,a),c))}i=a+1}}return o},O.tokenizer.separator=/[\s\-]+/,O.Pipeline=function(){this._stack=[]},O.Pipeline.registeredFunctions=Object.create(null),O.Pipeline.registerFunction=function(e,t){t in this.registeredFunctions&&O.utils.warn("Overwriting existing registered function: "+t),e.label=t,O.Pipeline.registeredFunctions[e.label]=e},O.Pipeline.warnIfFunctionNotRegistered=function(e){e.label&&e.label in this.registeredFunctions||O.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",e)},O.Pipeline.load=function(e){var t=new O.Pipeline;return e.forEach((function(e){var n=O.Pipeline.registeredFunctions[e];if(!n)throw new Error("Cannot load unregistered function: "+e);t.add(n)})),t},O.Pipeline.prototype.add=function(){Array.prototype.slice.call(arguments).forEach((function(e){O.Pipeline.warnIfFunctionNotRegistered(e),this._stack.push(e)}),this)},O.Pipeline.prototype.after=function(e,t){O.Pipeline.warnIfFunctionNotRegistered(t);var n=this._stack.indexOf(e);if(-1==n)throw new Error("Cannot find existingFn");n+=1,this._stack.splice(n,0,t)},O.Pipeline.prototype.before=function(e,t){O.Pipeline.warnIfFunctionNotRegistered(t);var n=this._stack.indexOf(e);if(-1==n)throw new Error("Cannot find existingFn");this._stack.splice(n,0,t)},O.Pipeline.prototype.remove=function(e){var t=this._stack.indexOf(e);-1!=t&&this._stack.splice(t,1)},O.Pipeline.prototype.run=function(e){for(var t=this._stack.length,n=0;n1&&(ae&&(n=o),a!=e);)r=n-t,o=t+Math.floor(r/2),a=this.elements[2*o];return a==e||a>e?2*o:as?l+=2:i==s&&(t+=n[c+1]*r[l+1],c+=2,l+=2);return t},O.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},O.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),t=1,n=0;t0){var a,i=o.str.charAt(0);i in o.node.edges?a=o.node.edges[i]:(a=new O.TokenSet,o.node.edges[i]=a),1==o.str.length&&(a.final=!0),r.push({node:a,editsRemaining:o.editsRemaining,str:o.str.slice(1)})}if(0!=o.editsRemaining){if("*"in o.node.edges)var s=o.node.edges["*"];else{s=new O.TokenSet;o.node.edges["*"]=s}if(0==o.str.length&&(s.final=!0),r.push({node:s,editsRemaining:o.editsRemaining-1,str:o.str}),o.str.length>1&&r.push({node:o.node,editsRemaining:o.editsRemaining-1,str:o.str.slice(1)}),1==o.str.length&&(o.node.final=!0),o.str.length>=1){if("*"in o.node.edges)var c=o.node.edges["*"];else{c=new O.TokenSet;o.node.edges["*"]=c}1==o.str.length&&(c.final=!0),r.push({node:c,editsRemaining:o.editsRemaining-1,str:o.str.slice(1)})}if(o.str.length>1){var l,u=o.str.charAt(0),d=o.str.charAt(1);d in o.node.edges?l=o.node.edges[d]:(l=new O.TokenSet,o.node.edges[d]=l),1==o.str.length&&(l.final=!0),r.push({node:l,editsRemaining:o.editsRemaining-1,str:u+o.str.slice(2)})}}}return n},O.TokenSet.fromString=function(e){for(var t=new O.TokenSet,n=t,r=0,o=e.length;r=e;t--){var n=this.uncheckedNodes[t],r=n.child.toString();r in this.minimizedNodes?n.parent.edges[n.char]=this.minimizedNodes[r]:(n.child._str=r,this.minimizedNodes[r]=n.child),this.uncheckedNodes.pop()}},O.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},O.Index.prototype.search=function(e){return this.query((function(t){new O.QueryParser(e,t).parse()}))},O.Index.prototype.query=function(e){for(var t=new O.Query(this.fields),n=Object.create(null),r=Object.create(null),o=Object.create(null),a=Object.create(null),i=Object.create(null),s=0;s1?1:e},O.Builder.prototype.k1=function(e){this._k1=e},O.Builder.prototype.add=function(e,t){var n=e[this._ref],r=Object.keys(this._fields);this._documents[n]=t||{},this.documentCount+=1;for(var o=0;o=this.length)return O.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},O.QueryLexer.prototype.width=function(){return this.pos-this.start},O.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},O.QueryLexer.prototype.backup=function(){this.pos-=1},O.QueryLexer.prototype.acceptDigitRun=function(){var e,t;do{t=(e=this.next()).charCodeAt(0)}while(t>47&&t<58);e!=O.QueryLexer.EOS&&this.backup()},O.QueryLexer.prototype.more=function(){return this.pos1&&(e.backup(),e.emit(O.QueryLexer.TERM)),e.ignore(),e.more())return O.QueryLexer.lexText},O.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(O.QueryLexer.EDIT_DISTANCE),O.QueryLexer.lexText},O.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(O.QueryLexer.BOOST),O.QueryLexer.lexText},O.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(O.QueryLexer.TERM)},O.QueryLexer.termSeparator=O.tokenizer.separator,O.QueryLexer.lexText=function(e){for(;;){var t=e.next();if(t==O.QueryLexer.EOS)return O.QueryLexer.lexEOS;if(92!=t.charCodeAt(0)){if(":"==t)return O.QueryLexer.lexField;if("~"==t)return e.backup(),e.width()>0&&e.emit(O.QueryLexer.TERM),O.QueryLexer.lexEditDistance;if("^"==t)return e.backup(),e.width()>0&&e.emit(O.QueryLexer.TERM),O.QueryLexer.lexBoost;if("+"==t&&1===e.width())return e.emit(O.QueryLexer.PRESENCE),O.QueryLexer.lexText;if("-"==t&&1===e.width())return e.emit(O.QueryLexer.PRESENCE),O.QueryLexer.lexText;if(t.match(O.QueryLexer.termSeparator))return O.QueryLexer.lexTerm}else e.escapeCharacter()}},O.QueryParser=function(e,t){this.lexer=new O.QueryLexer(e),this.query=t,this.currentClause={},this.lexemeIdx=0},O.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=O.QueryParser.parseClause;e;)e=e(this);return this.query},O.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},O.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},O.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},O.QueryParser.parseClause=function(e){var t=e.peekLexeme();if(null!=t)switch(t.type){case O.QueryLexer.PRESENCE:return O.QueryParser.parsePresence;case O.QueryLexer.FIELD:return O.QueryParser.parseField;case O.QueryLexer.TERM:return O.QueryParser.parseTerm;default:var n="expected either a field or a term, found "+t.type;throw t.str.length>=1&&(n+=" with value '"+t.str+"'"),new O.QueryParseError(n,t.start,t.end)}},O.QueryParser.parsePresence=function(e){var t=e.consumeLexeme();if(null!=t){switch(t.str){case"-":e.currentClause.presence=O.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=O.Query.presence.REQUIRED;break;default:var n="unrecognised presence operator'"+t.str+"'";throw new O.QueryParseError(n,t.start,t.end)}var r=e.peekLexeme();if(null==r){n="expecting term or field, found nothing";throw new O.QueryParseError(n,t.start,t.end)}switch(r.type){case O.QueryLexer.FIELD:return O.QueryParser.parseField;case O.QueryLexer.TERM:return O.QueryParser.parseTerm;default:n="expecting term or field, found '"+r.type+"'";throw new O.QueryParseError(n,r.start,r.end)}}},O.QueryParser.parseField=function(e){var t=e.consumeLexeme();if(null!=t){if(-1==e.query.allFields.indexOf(t.str)){var n=e.query.allFields.map((function(e){return"'"+e+"'"})).join(", "),r="unrecognised field '"+t.str+"', possible fields: "+n;throw new O.QueryParseError(r,t.start,t.end)}e.currentClause.fields=[t.str];var o=e.peekLexeme();if(null==o){r="expecting term, found nothing";throw new O.QueryParseError(r,t.start,t.end)}if(o.type===O.QueryLexer.TERM)return O.QueryParser.parseTerm;r="expecting term, found '"+o.type+"'";throw new O.QueryParseError(r,o.start,o.end)}},O.QueryParser.parseTerm=function(e){var t=e.consumeLexeme();if(null!=t){e.currentClause.term=t.str.toLowerCase(),-1!=t.str.indexOf("*")&&(e.currentClause.usePipeline=!1);var n=e.peekLexeme();if(null!=n)switch(n.type){case O.QueryLexer.TERM:return e.nextClause(),O.QueryParser.parseTerm;case O.QueryLexer.FIELD:return e.nextClause(),O.QueryParser.parseField;case O.QueryLexer.EDIT_DISTANCE:return O.QueryParser.parseEditDistance;case O.QueryLexer.BOOST:return O.QueryParser.parseBoost;case O.QueryLexer.PRESENCE:return e.nextClause(),O.QueryParser.parsePresence;default:var r="Unexpected lexeme type '"+n.type+"'";throw new O.QueryParseError(r,n.start,n.end)}else e.nextClause()}},O.QueryParser.parseEditDistance=function(e){var t=e.consumeLexeme();if(null!=t){var n=parseInt(t.str,10);if(isNaN(n)){var r="edit distance must be numeric";throw new O.QueryParseError(r,t.start,t.end)}e.currentClause.editDistance=n;var o=e.peekLexeme();if(null!=o)switch(o.type){case O.QueryLexer.TERM:return e.nextClause(),O.QueryParser.parseTerm;case O.QueryLexer.FIELD:return e.nextClause(),O.QueryParser.parseField;case O.QueryLexer.EDIT_DISTANCE:return O.QueryParser.parseEditDistance;case O.QueryLexer.BOOST:return O.QueryParser.parseBoost;case O.QueryLexer.PRESENCE:return e.nextClause(),O.QueryParser.parsePresence;default:r="Unexpected lexeme type '"+o.type+"'";throw new O.QueryParseError(r,o.start,o.end)}else e.nextClause()}},O.QueryParser.parseBoost=function(e){var t=e.consumeLexeme();if(null!=t){var n=parseInt(t.str,10);if(isNaN(n)){var r="boost must be numeric";throw new O.QueryParseError(r,t.start,t.end)}e.currentClause.boost=n;var o=e.peekLexeme();if(null!=o)switch(o.type){case O.QueryLexer.TERM:return e.nextClause(),O.QueryParser.parseTerm;case O.QueryLexer.FIELD:return e.nextClause(),O.QueryParser.parseField;case O.QueryLexer.EDIT_DISTANCE:return O.QueryParser.parseEditDistance;case O.QueryLexer.BOOST:return O.QueryParser.parseBoost;case O.QueryLexer.PRESENCE:return e.nextClause(),O.QueryParser.parsePresence;default:r="Unexpected lexeme type '"+o.type+"'";throw new O.QueryParseError(r,o.start,o.end)}else e.nextClause()}},void 0===(o="function"==typeof(r=function(){return O})?r.call(t,n,t,e):r)||(e.exports=o)}()},689:function(e){e.exports=function(){"use strict";var e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},t=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},n=function(){function e(e,t){for(var n=0;n1&&void 0!==arguments[1])||arguments[1],o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:5e3;t(this,e),this.ctx=n,this.iframes=r,this.exclude=o,this.iframesTimeout=a}return n(e,[{key:"getContexts",value:function(){var e=[];return(void 0!==this.ctx&&this.ctx?NodeList.prototype.isPrototypeOf(this.ctx)?Array.prototype.slice.call(this.ctx):Array.isArray(this.ctx)?this.ctx:"string"==typeof this.ctx?Array.prototype.slice.call(document.querySelectorAll(this.ctx)):[this.ctx]:[]).forEach((function(t){var n=e.filter((function(e){return e.contains(t)})).length>0;-1!==e.indexOf(t)||n||e.push(t)})),e}},{key:"getIframeContents",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){},r=void 0;try{var o=e.contentWindow;if(r=o.document,!o||!r)throw new Error("iframe inaccessible")}catch(a){n()}r&&t(r)}},{key:"isIframeBlank",value:function(e){var t="about:blank",n=e.getAttribute("src").trim();return e.contentWindow.location.href===t&&n!==t&&n}},{key:"observeIframeLoad",value:function(e,t,n){var r=this,o=!1,a=null,i=function i(){if(!o){o=!0,clearTimeout(a);try{r.isIframeBlank(e)||(e.removeEventListener("load",i),r.getIframeContents(e,t,n))}catch(s){n()}}};e.addEventListener("load",i),a=setTimeout(i,this.iframesTimeout)}},{key:"onIframeReady",value:function(e,t,n){try{"complete"===e.contentWindow.document.readyState?this.isIframeBlank(e)?this.observeIframeLoad(e,t,n):this.getIframeContents(e,t,n):this.observeIframeLoad(e,t,n)}catch(r){n()}}},{key:"waitForIframes",value:function(e,t){var n=this,r=0;this.forEachIframe(e,(function(){return!0}),(function(e){r++,n.waitForIframes(e.querySelector("html"),(function(){--r||t()}))}),(function(e){e||t()}))}},{key:"forEachIframe",value:function(t,n,r){var o=this,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:function(){},i=t.querySelectorAll("iframe"),s=i.length,c=0;i=Array.prototype.slice.call(i);var l=function(){--s<=0&&a(c)};s||l(),i.forEach((function(t){e.matches(t,o.exclude)?l():o.onIframeReady(t,(function(e){n(t)&&(c++,r(e)),l()}),l)}))}},{key:"createIterator",value:function(e,t,n){return document.createNodeIterator(e,t,n,!1)}},{key:"createInstanceOnIframe",value:function(t){return new e(t.querySelector("html"),this.iframes)}},{key:"compareNodeIframe",value:function(e,t,n){if(e.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_PRECEDING){if(null===t)return!0;if(t.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_FOLLOWING)return!0}return!1}},{key:"getIteratorNode",value:function(e){var t=e.previousNode();return{prevNode:t,node:(null===t||e.nextNode())&&e.nextNode()}}},{key:"checkIframeFilter",value:function(e,t,n,r){var o=!1,a=!1;return r.forEach((function(e,t){e.val===n&&(o=t,a=e.handled)})),this.compareNodeIframe(e,t,n)?(!1!==o||a?!1===o||a||(r[o].handled=!0):r.push({val:n,handled:!0}),!0):(!1===o&&r.push({val:n,handled:!1}),!1)}},{key:"handleOpenIframes",value:function(e,t,n,r){var o=this;e.forEach((function(e){e.handled||o.getIframeContents(e.val,(function(e){o.createInstanceOnIframe(e).forEachNode(t,n,r)}))}))}},{key:"iterateThroughNodes",value:function(e,t,n,r,o){for(var a=this,i=this.createIterator(t,e,r),s=[],c=[],l=void 0,u=void 0,d=function(){var e=a.getIteratorNode(i);return u=e.prevNode,l=e.node};d();)this.iframes&&this.forEachIframe(t,(function(e){return a.checkIframeFilter(l,u,e,s)}),(function(t){a.createInstanceOnIframe(t).forEachNode(e,(function(e){return c.push(e)}),r)})),c.push(l);c.forEach((function(e){n(e)})),this.iframes&&this.handleOpenIframes(s,e,n,r),o()}},{key:"forEachNode",value:function(e,t,n){var r=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:function(){},a=this.getContexts(),i=a.length;i||o(),a.forEach((function(a){var s=function(){r.iterateThroughNodes(e,a,t,n,(function(){--i<=0&&o()}))};r.iframes?r.waitForIframes(a,s):s()}))}}],[{key:"matches",value:function(e,t){var n="string"==typeof t?[t]:t,r=e.matches||e.matchesSelector||e.msMatchesSelector||e.mozMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector;if(r){var o=!1;return n.every((function(t){return!r.call(e,t)||(o=!0,!1)})),o}return!1}}]),e}(),a=function(){function a(e){t(this,a),this.ctx=e,this.ie=!1;var n=window.navigator.userAgent;(n.indexOf("MSIE")>-1||n.indexOf("Trident")>-1)&&(this.ie=!0)}return n(a,[{key:"log",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"debug",r=this.opt.log;this.opt.debug&&"object"===(void 0===r?"undefined":e(r))&&"function"==typeof r[n]&&r[n]("mark.js: "+t)}},{key:"escapeStr",value:function(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}},{key:"createRegExp",value:function(e){return"disabled"!==this.opt.wildcards&&(e=this.setupWildcardsRegExp(e)),e=this.escapeStr(e),Object.keys(this.opt.synonyms).length&&(e=this.createSynonymsRegExp(e)),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.setupIgnoreJoinersRegExp(e)),this.opt.diacritics&&(e=this.createDiacriticsRegExp(e)),e=this.createMergedBlanksRegExp(e),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.createJoinersRegExp(e)),"disabled"!==this.opt.wildcards&&(e=this.createWildcardsRegExp(e)),e=this.createAccuracyRegExp(e)}},{key:"createSynonymsRegExp",value:function(e){var t=this.opt.synonyms,n=this.opt.caseSensitive?"":"i",r=this.opt.ignoreJoiners||this.opt.ignorePunctuation.length?"\0":"";for(var o in t)if(t.hasOwnProperty(o)){var a=t[o],i="disabled"!==this.opt.wildcards?this.setupWildcardsRegExp(o):this.escapeStr(o),s="disabled"!==this.opt.wildcards?this.setupWildcardsRegExp(a):this.escapeStr(a);""!==i&&""!==s&&(e=e.replace(new RegExp("("+this.escapeStr(i)+"|"+this.escapeStr(s)+")","gm"+n),r+"("+this.processSynomyms(i)+"|"+this.processSynomyms(s)+")"+r))}return e}},{key:"processSynomyms",value:function(e){return(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.setupIgnoreJoinersRegExp(e)),e}},{key:"setupWildcardsRegExp",value:function(e){return(e=e.replace(/(?:\\)*\?/g,(function(e){return"\\"===e.charAt(0)?"?":"\x01"}))).replace(/(?:\\)*\*/g,(function(e){return"\\"===e.charAt(0)?"*":"\x02"}))}},{key:"createWildcardsRegExp",value:function(e){var t="withSpaces"===this.opt.wildcards;return e.replace(/\u0001/g,t?"[\\S\\s]?":"\\S?").replace(/\u0002/g,t?"[\\S\\s]*?":"\\S*")}},{key:"setupIgnoreJoinersRegExp",value:function(e){return e.replace(/[^(|)\\]/g,(function(e,t,n){var r=n.charAt(t+1);return/[(|)\\]/.test(r)||""===r?e:e+"\0"}))}},{key:"createJoinersRegExp",value:function(e){var t=[],n=this.opt.ignorePunctuation;return Array.isArray(n)&&n.length&&t.push(this.escapeStr(n.join(""))),this.opt.ignoreJoiners&&t.push("\\u00ad\\u200b\\u200c\\u200d"),t.length?e.split(/\u0000+/).join("["+t.join("")+"]*"):e}},{key:"createDiacriticsRegExp",value:function(e){var t=this.opt.caseSensitive?"":"i",n=this.opt.caseSensitive?["a\xe0\xe1\u1ea3\xe3\u1ea1\u0103\u1eb1\u1eaf\u1eb3\u1eb5\u1eb7\xe2\u1ea7\u1ea5\u1ea9\u1eab\u1ead\xe4\xe5\u0101\u0105","A\xc0\xc1\u1ea2\xc3\u1ea0\u0102\u1eb0\u1eae\u1eb2\u1eb4\u1eb6\xc2\u1ea6\u1ea4\u1ea8\u1eaa\u1eac\xc4\xc5\u0100\u0104","c\xe7\u0107\u010d","C\xc7\u0106\u010c","d\u0111\u010f","D\u0110\u010e","e\xe8\xe9\u1ebb\u1ebd\u1eb9\xea\u1ec1\u1ebf\u1ec3\u1ec5\u1ec7\xeb\u011b\u0113\u0119","E\xc8\xc9\u1eba\u1ebc\u1eb8\xca\u1ec0\u1ebe\u1ec2\u1ec4\u1ec6\xcb\u011a\u0112\u0118","i\xec\xed\u1ec9\u0129\u1ecb\xee\xef\u012b","I\xcc\xcd\u1ec8\u0128\u1eca\xce\xcf\u012a","l\u0142","L\u0141","n\xf1\u0148\u0144","N\xd1\u0147\u0143","o\xf2\xf3\u1ecf\xf5\u1ecd\xf4\u1ed3\u1ed1\u1ed5\u1ed7\u1ed9\u01a1\u1edf\u1ee1\u1edb\u1edd\u1ee3\xf6\xf8\u014d","O\xd2\xd3\u1ece\xd5\u1ecc\xd4\u1ed2\u1ed0\u1ed4\u1ed6\u1ed8\u01a0\u1ede\u1ee0\u1eda\u1edc\u1ee2\xd6\xd8\u014c","r\u0159","R\u0158","s\u0161\u015b\u0219\u015f","S\u0160\u015a\u0218\u015e","t\u0165\u021b\u0163","T\u0164\u021a\u0162","u\xf9\xfa\u1ee7\u0169\u1ee5\u01b0\u1eeb\u1ee9\u1eed\u1eef\u1ef1\xfb\xfc\u016f\u016b","U\xd9\xda\u1ee6\u0168\u1ee4\u01af\u1eea\u1ee8\u1eec\u1eee\u1ef0\xdb\xdc\u016e\u016a","y\xfd\u1ef3\u1ef7\u1ef9\u1ef5\xff","Y\xdd\u1ef2\u1ef6\u1ef8\u1ef4\u0178","z\u017e\u017c\u017a","Z\u017d\u017b\u0179"]:["a\xe0\xe1\u1ea3\xe3\u1ea1\u0103\u1eb1\u1eaf\u1eb3\u1eb5\u1eb7\xe2\u1ea7\u1ea5\u1ea9\u1eab\u1ead\xe4\xe5\u0101\u0105A\xc0\xc1\u1ea2\xc3\u1ea0\u0102\u1eb0\u1eae\u1eb2\u1eb4\u1eb6\xc2\u1ea6\u1ea4\u1ea8\u1eaa\u1eac\xc4\xc5\u0100\u0104","c\xe7\u0107\u010dC\xc7\u0106\u010c","d\u0111\u010fD\u0110\u010e","e\xe8\xe9\u1ebb\u1ebd\u1eb9\xea\u1ec1\u1ebf\u1ec3\u1ec5\u1ec7\xeb\u011b\u0113\u0119E\xc8\xc9\u1eba\u1ebc\u1eb8\xca\u1ec0\u1ebe\u1ec2\u1ec4\u1ec6\xcb\u011a\u0112\u0118","i\xec\xed\u1ec9\u0129\u1ecb\xee\xef\u012bI\xcc\xcd\u1ec8\u0128\u1eca\xce\xcf\u012a","l\u0142L\u0141","n\xf1\u0148\u0144N\xd1\u0147\u0143","o\xf2\xf3\u1ecf\xf5\u1ecd\xf4\u1ed3\u1ed1\u1ed5\u1ed7\u1ed9\u01a1\u1edf\u1ee1\u1edb\u1edd\u1ee3\xf6\xf8\u014dO\xd2\xd3\u1ece\xd5\u1ecc\xd4\u1ed2\u1ed0\u1ed4\u1ed6\u1ed8\u01a0\u1ede\u1ee0\u1eda\u1edc\u1ee2\xd6\xd8\u014c","r\u0159R\u0158","s\u0161\u015b\u0219\u015fS\u0160\u015a\u0218\u015e","t\u0165\u021b\u0163T\u0164\u021a\u0162","u\xf9\xfa\u1ee7\u0169\u1ee5\u01b0\u1eeb\u1ee9\u1eed\u1eef\u1ef1\xfb\xfc\u016f\u016bU\xd9\xda\u1ee6\u0168\u1ee4\u01af\u1eea\u1ee8\u1eec\u1eee\u1ef0\xdb\xdc\u016e\u016a","y\xfd\u1ef3\u1ef7\u1ef9\u1ef5\xffY\xdd\u1ef2\u1ef6\u1ef8\u1ef4\u0178","z\u017e\u017c\u017aZ\u017d\u017b\u0179"],r=[];return e.split("").forEach((function(o){n.every((function(n){if(-1!==n.indexOf(o)){if(r.indexOf(n)>-1)return!1;e=e.replace(new RegExp("["+n+"]","gm"+t),"["+n+"]"),r.push(n)}return!0}))})),e}},{key:"createMergedBlanksRegExp",value:function(e){return e.replace(/[\s]+/gim,"[\\s]+")}},{key:"createAccuracyRegExp",value:function(e){var t=this,n="!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~\xa1\xbf",r=this.opt.accuracy,o="string"==typeof r?r:r.value,a="string"==typeof r?[]:r.limiters,i="";switch(a.forEach((function(e){i+="|"+t.escapeStr(e)})),o){case"partially":default:return"()("+e+")";case"complementary":return"()([^"+(i="\\s"+(i||this.escapeStr(n)))+"]*"+e+"[^"+i+"]*)";case"exactly":return"(^|\\s"+i+")("+e+")(?=$|\\s"+i+")"}}},{key:"getSeparatedKeywords",value:function(e){var t=this,n=[];return e.forEach((function(e){t.opt.separateWordSearch?e.split(" ").forEach((function(e){e.trim()&&-1===n.indexOf(e)&&n.push(e)})):e.trim()&&-1===n.indexOf(e)&&n.push(e)})),{keywords:n.sort((function(e,t){return t.length-e.length})),length:n.length}}},{key:"isNumeric",value:function(e){return Number(parseFloat(e))==e}},{key:"checkRanges",value:function(e){var t=this;if(!Array.isArray(e)||"[object Object]"!==Object.prototype.toString.call(e[0]))return this.log("markRanges() will only accept an array of objects"),this.opt.noMatch(e),[];var n=[],r=0;return e.sort((function(e,t){return e.start-t.start})).forEach((function(e){var o=t.callNoMatchOnInvalidRanges(e,r),a=o.start,i=o.end;o.valid&&(e.start=a,e.length=i-a,n.push(e),r=i)})),n}},{key:"callNoMatchOnInvalidRanges",value:function(e,t){var n=void 0,r=void 0,o=!1;return e&&void 0!==e.start?(r=(n=parseInt(e.start,10))+parseInt(e.length,10),this.isNumeric(e.start)&&this.isNumeric(e.length)&&r-t>0&&r-n>0?o=!0:(this.log("Ignoring invalid or overlapping range: "+JSON.stringify(e)),this.opt.noMatch(e))):(this.log("Ignoring invalid range: "+JSON.stringify(e)),this.opt.noMatch(e)),{start:n,end:r,valid:o}}},{key:"checkWhitespaceRanges",value:function(e,t,n){var r=void 0,o=!0,a=n.length,i=t-a,s=parseInt(e.start,10)-i;return(r=(s=s>a?a:s)+parseInt(e.length,10))>a&&(r=a,this.log("End range automatically set to the max value of "+a)),s<0||r-s<0||s>a||r>a?(o=!1,this.log("Invalid range: "+JSON.stringify(e)),this.opt.noMatch(e)):""===n.substring(s,r).replace(/\s+/g,"")&&(o=!1,this.log("Skipping whitespace only range: "+JSON.stringify(e)),this.opt.noMatch(e)),{start:s,end:r,valid:o}}},{key:"getTextNodes",value:function(e){var t=this,n="",r=[];this.iterator.forEachNode(NodeFilter.SHOW_TEXT,(function(e){r.push({start:n.length,end:(n+=e.textContent).length,node:e})}),(function(e){return t.matchesExclude(e.parentNode)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT}),(function(){e({value:n,nodes:r})}))}},{key:"matchesExclude",value:function(e){return o.matches(e,this.opt.exclude.concat(["script","style","title","head","html"]))}},{key:"wrapRangeInTextNode",value:function(e,t,n){var r=this.opt.element?this.opt.element:"mark",o=e.splitText(t),a=o.splitText(n-t),i=document.createElement(r);return i.setAttribute("data-markjs","true"),this.opt.className&&i.setAttribute("class",this.opt.className),i.textContent=o.textContent,o.parentNode.replaceChild(i,o),a}},{key:"wrapRangeInMappedTextNode",value:function(e,t,n,r,o){var a=this;e.nodes.every((function(i,s){var c=e.nodes[s+1];if(void 0===c||c.start>t){if(!r(i.node))return!1;var l=t-i.start,u=(n>i.end?i.end:n)-i.start,d=e.value.substr(0,i.start),p=e.value.substr(u+i.start);if(i.node=a.wrapRangeInTextNode(i.node,l,u),e.value=d+p,e.nodes.forEach((function(t,n){n>=s&&(e.nodes[n].start>0&&n!==s&&(e.nodes[n].start-=u),e.nodes[n].end-=u)})),n-=u,o(i.node.previousSibling,i.start),!(n>i.end))return!1;t=i.end}return!0}))}},{key:"wrapMatches",value:function(e,t,n,r,o){var a=this,i=0===t?0:t+1;this.getTextNodes((function(t){t.nodes.forEach((function(t){t=t.node;for(var o=void 0;null!==(o=e.exec(t.textContent))&&""!==o[i];)if(n(o[i],t)){var s=o.index;if(0!==i)for(var c=1;c{"use strict";n.r(t)},51043:(e,t,n)=>{"use strict";n.r(t)},5947:function(e,t,n){var r,o;r=function(){var e,t,n={version:"0.2.0"},r=n.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'
'};function o(e,t,n){return en?n:e}function a(e){return 100*(-1+e)}function i(e,t,n){var o;return(o="translate3d"===r.positionUsing?{transform:"translate3d("+a(e)+"%,0,0)"}:"translate"===r.positionUsing?{transform:"translate("+a(e)+"%,0)"}:{"margin-left":a(e)+"%"}).transition="all "+t+"ms "+n,o}n.configure=function(e){var t,n;for(t in e)void 0!==(n=e[t])&&e.hasOwnProperty(t)&&(r[t]=n);return this},n.status=null,n.set=function(e){var t=n.isStarted();e=o(e,r.minimum,1),n.status=1===e?null:e;var a=n.render(!t),l=a.querySelector(r.barSelector),u=r.speed,d=r.easing;return a.offsetWidth,s((function(t){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),c(l,i(e,u,d)),1===e?(c(a,{transition:"none",opacity:1}),a.offsetWidth,setTimeout((function(){c(a,{transition:"all "+u+"ms linear",opacity:0}),setTimeout((function(){n.remove(),t()}),u)}),u)):setTimeout(t,u)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var e=function(){setTimeout((function(){n.status&&(n.trickle(),e())}),r.trickleSpeed)};return r.trickle&&e(),this},n.done=function(e){return e||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(e){var t=n.status;return t?("number"!=typeof e&&(e=(1-t)*o(Math.random()*t,.1,.95)),t=o(t+e,0,.994),n.set(t)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},e=0,t=0,n.promise=function(r){return r&&"resolved"!==r.state()?(0===t&&n.start(),e++,t++,r.always((function(){0==--t?(e=0,n.done()):n.set((e-t)/e)})),this):this},n.render=function(e){if(n.isRendered())return document.getElementById("nprogress");u(document.documentElement,"nprogress-busy");var t=document.createElement("div");t.id="nprogress",t.innerHTML=r.template;var o,i=t.querySelector(r.barSelector),s=e?"-100":a(n.status||0),l=document.querySelector(r.parent);return c(i,{transition:"all 0 linear",transform:"translate3d("+s+"%,0,0)"}),r.showSpinner||(o=t.querySelector(r.spinnerSelector))&&m(o),l!=document.body&&u(l,"nprogress-custom-parent"),l.appendChild(t),t},n.remove=function(){d(document.documentElement,"nprogress-busy"),d(document.querySelector(r.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&m(e)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var e=document.body.style,t="WebkitTransform"in e?"Webkit":"MozTransform"in e?"Moz":"msTransform"in e?"ms":"OTransform"in e?"O":"";return t+"Perspective"in e?"translate3d":t+"Transform"in e?"translate":"margin"};var s=function(){var e=[];function t(){var n=e.shift();n&&n(t)}return function(n){e.push(n),1==e.length&&t()}}(),c=function(){var e=["Webkit","O","Moz","ms"],t={};function n(e){return e.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(e,t){return t.toUpperCase()}))}function r(t){var n=document.body.style;if(t in n)return t;for(var r,o=e.length,a=t.charAt(0).toUpperCase()+t.slice(1);o--;)if((r=e[o]+a)in n)return r;return t}function o(e){return e=n(e),t[e]||(t[e]=r(e))}function a(e,t,n){t=o(t),e.style[t]=n}return function(e,t){var n,r,o=arguments;if(2==o.length)for(n in t)void 0!==(r=t[n])&&t.hasOwnProperty(n)&&a(e,n,r);else a(e,o[1],o[2])}}();function l(e,t){return("string"==typeof e?e:p(e)).indexOf(" "+t+" ")>=0}function u(e,t){var n=p(e),r=n+t;l(n,t)||(e.className=r.substring(1))}function d(e,t){var n,r=p(e);l(e,t)&&(n=r.replace(" "+t+" "," "),e.className=n.substring(1,n.length-1))}function p(e){return(" "+(e.className||"")+" ").replace(/\s+/gi," ")}function m(e){e&&e.parentNode&&e.parentNode.removeChild(e)}return n},void 0===(o="function"==typeof r?r.call(t,n,t,e):r)||(e.exports=o)},72415:()=>{!function(e){var t=/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,n=/\b(?!)\w+(?:\s*\.\s*\w+)*\b/.source.replace(//g,(function(){return t.source}));e.languages.cpp=e.languages.extend("c",{"class-name":[{pattern:RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!)\w+/.source.replace(//g,(function(){return t.source}))),lookbehind:!0},/\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,/\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,/\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/],keyword:t,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,greedy:!0},operator:/>>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:false|true)\b/}),e.languages.insertBefore("cpp","string",{module:{pattern:RegExp(/(\b(?:import|module)\s+)/.source+"(?:"+/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|<[^<>\r\n]*>/.source+"|"+/(?:\s*:\s*)?|:\s*/.source.replace(//g,(function(){return n}))+")"),lookbehind:!0,greedy:!0,inside:{string:/^[<"][\s\S]+/,operator:/:/,punctuation:/\./}},"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),e.languages.insertBefore("cpp","keyword",{"generic-function":{pattern:/\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,inside:{function:/^\w+/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:e.languages.cpp}}}}),e.languages.insertBefore("cpp","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}}),e.languages.insertBefore("cpp","class-name",{"base-clause":{pattern:/(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:e.languages.extend("cpp",{})}}),e.languages.insertBefore("inside","double-colon",{"class-name":/\b[a-z_]\w*\b(?!\s*::)/i},e.languages.cpp["base-clause"])}(Prism)},5651:()=>{!function(e){function t(e,t){return e.replace(/<<(\d+)>>/g,(function(e,n){return"(?:"+t[+n]+")"}))}function n(e,n,r){return RegExp(t(e,n),r||"")}function r(e,t){for(var n=0;n>/g,(function(){return"(?:"+e+")"}));return e.replace(/<>/g,"[^\\s\\S]")}var o="bool byte char decimal double dynamic float int long object sbyte short string uint ulong ushort var void",a="class enum interface record struct",i="add alias and ascending async await by descending from(?=\\s*(?:\\w|$)) get global group into init(?=\\s*;) join let nameof not notnull on or orderby partial remove select set unmanaged value when where with(?=\\s*{)",s="abstract as base break case catch checked const continue default delegate do else event explicit extern finally fixed for foreach goto if implicit in internal is lock namespace new null operator out override params private protected public readonly ref return sealed sizeof stackalloc static switch this throw try typeof unchecked unsafe using virtual volatile while yield";function c(e){return"\\b(?:"+e.trim().replace(/ /g,"|")+")\\b"}var l=c(a),u=RegExp(c(o+" "+a+" "+i+" "+s)),d=c(a+" "+i+" "+s),p=c(o+" "+a+" "+s),m=r(/<(?:[^<>;=+\-*/%&|^]|<>)*>/.source,2),f=r(/\((?:[^()]|<>)*\)/.source,2),h=/@?\b[A-Za-z_]\w*\b/.source,g=t(/<<0>>(?:\s*<<1>>)?/.source,[h,m]),b=t(/(?!<<0>>)<<1>>(?:\s*\.\s*<<1>>)*/.source,[d,g]),y=/\[\s*(?:,\s*)*\]/.source,v=t(/<<0>>(?:\s*(?:\?\s*)?<<1>>)*(?:\s*\?)?/.source,[b,y]),w=t(/[^,()<>[\];=+\-*/%&|^]|<<0>>|<<1>>|<<2>>/.source,[m,f,y]),x=t(/\(<<0>>+(?:,<<0>>+)+\)/.source,[w]),k=t(/(?:<<0>>|<<1>>)(?:\s*(?:\?\s*)?<<2>>)*(?:\s*\?)?/.source,[x,b,y]),j={keyword:u,punctuation:/[<>()?,.:[\]]/},S=/'(?:[^\r\n'\\]|\\.|\\[Uux][\da-fA-F]{1,8})'/.source,E=/"(?:\\.|[^\\"\r\n])*"/.source,_=/@"(?:""|\\[\s\S]|[^\\"])*"(?!")/.source;e.languages.csharp=e.languages.extend("clike",{string:[{pattern:n(/(^|[^$\\])<<0>>/.source,[_]),lookbehind:!0,greedy:!0},{pattern:n(/(^|[^@$\\])<<0>>/.source,[E]),lookbehind:!0,greedy:!0}],"class-name":[{pattern:n(/(\busing\s+static\s+)<<0>>(?=\s*;)/.source,[b]),lookbehind:!0,inside:j},{pattern:n(/(\busing\s+<<0>>\s*=\s*)<<1>>(?=\s*;)/.source,[h,k]),lookbehind:!0,inside:j},{pattern:n(/(\busing\s+)<<0>>(?=\s*=)/.source,[h]),lookbehind:!0},{pattern:n(/(\b<<0>>\s+)<<1>>/.source,[l,g]),lookbehind:!0,inside:j},{pattern:n(/(\bcatch\s*\(\s*)<<0>>/.source,[b]),lookbehind:!0,inside:j},{pattern:n(/(\bwhere\s+)<<0>>/.source,[h]),lookbehind:!0},{pattern:n(/(\b(?:is(?:\s+not)?|as)\s+)<<0>>/.source,[v]),lookbehind:!0,inside:j},{pattern:n(/\b<<0>>(?=\s+(?!<<1>>|with\s*\{)<<2>>(?:\s*[=,;:{)\]]|\s+(?:in|when)\b))/.source,[k,p,h]),inside:j}],keyword:u,number:/(?:\b0(?:x[\da-f_]*[\da-f]|b[01_]*[01])|(?:\B\.\d+(?:_+\d+)*|\b\d+(?:_+\d+)*(?:\.\d+(?:_+\d+)*)?)(?:e[-+]?\d+(?:_+\d+)*)?)(?:[dflmu]|lu|ul)?\b/i,operator:/>>=?|<<=?|[-=]>|([-+&|])\1|~|\?\?=?|[-+*/%&|^!=<>]=?/,punctuation:/\?\.?|::|[{}[\];(),.:]/}),e.languages.insertBefore("csharp","number",{range:{pattern:/\.\./,alias:"operator"}}),e.languages.insertBefore("csharp","punctuation",{"named-parameter":{pattern:n(/([(,]\s*)<<0>>(?=\s*:)/.source,[h]),lookbehind:!0,alias:"punctuation"}}),e.languages.insertBefore("csharp","class-name",{namespace:{pattern:n(/(\b(?:namespace|using)\s+)<<0>>(?:\s*\.\s*<<0>>)*(?=\s*[;{])/.source,[h]),lookbehind:!0,inside:{punctuation:/\./}},"type-expression":{pattern:n(/(\b(?:default|sizeof|typeof)\s*\(\s*(?!\s))(?:[^()\s]|\s(?!\s)|<<0>>)*(?=\s*\))/.source,[f]),lookbehind:!0,alias:"class-name",inside:j},"return-type":{pattern:n(/<<0>>(?=\s+(?:<<1>>\s*(?:=>|[({]|\.\s*this\s*\[)|this\s*\[))/.source,[k,b]),inside:j,alias:"class-name"},"constructor-invocation":{pattern:n(/(\bnew\s+)<<0>>(?=\s*[[({])/.source,[k]),lookbehind:!0,inside:j,alias:"class-name"},"generic-method":{pattern:n(/<<0>>\s*<<1>>(?=\s*\()/.source,[h,m]),inside:{function:n(/^<<0>>/.source,[h]),generic:{pattern:RegExp(m),alias:"class-name",inside:j}}},"type-list":{pattern:n(/\b((?:<<0>>\s+<<1>>|record\s+<<1>>\s*<<5>>|where\s+<<2>>)\s*:\s*)(?:<<3>>|<<4>>|<<1>>\s*<<5>>|<<6>>)(?:\s*,\s*(?:<<3>>|<<4>>|<<6>>))*(?=\s*(?:where|[{;]|=>|$))/.source,[l,g,h,k,u.source,f,/\bnew\s*\(\s*\)/.source]),lookbehind:!0,inside:{"record-arguments":{pattern:n(/(^(?!new\s*\()<<0>>\s*)<<1>>/.source,[g,f]),lookbehind:!0,greedy:!0,inside:e.languages.csharp},keyword:u,"class-name":{pattern:RegExp(k),greedy:!0,inside:j},punctuation:/[,()]/}},preprocessor:{pattern:/(^[\t ]*)#.*/m,lookbehind:!0,alias:"property",inside:{directive:{pattern:/(#)\b(?:define|elif|else|endif|endregion|error|if|line|nullable|pragma|region|undef|warning)\b/,lookbehind:!0,alias:"keyword"}}}});var T=E+"|"+S,C=t(/\/(?![*/])|\/\/[^\r\n]*[\r\n]|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>/.source,[T]),A=r(t(/[^"'/()]|<<0>>|\(<>*\)/.source,[C]),2),P=/\b(?:assembly|event|field|method|module|param|property|return|type)\b/.source,N=t(/<<0>>(?:\s*\(<<1>>*\))?/.source,[b,A]);e.languages.insertBefore("csharp","class-name",{attribute:{pattern:n(/((?:^|[^\s\w>)?])\s*\[\s*)(?:<<0>>\s*:\s*)?<<1>>(?:\s*,\s*<<1>>)*(?=\s*\])/.source,[P,N]),lookbehind:!0,greedy:!0,inside:{target:{pattern:n(/^<<0>>(?=\s*:)/.source,[P]),alias:"keyword"},"attribute-arguments":{pattern:n(/\(<<0>>*\)/.source,[A]),inside:e.languages.csharp},"class-name":{pattern:RegExp(b),inside:{punctuation:/\./}},punctuation:/[:,]/}}});var L=/:[^}\r\n]+/.source,R=r(t(/[^"'/()]|<<0>>|\(<>*\)/.source,[C]),2),I=t(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source,[R,L]),O=r(t(/[^"'/()]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|<<0>>|\(<>*\)/.source,[T]),2),F=t(/\{(?!\{)(?:(?![}:])<<0>>)*<<1>>?\}/.source,[O,L]);function q(t,r){return{interpolation:{pattern:n(/((?:^|[^{])(?:\{\{)*)<<0>>/.source,[t]),lookbehind:!0,inside:{"format-string":{pattern:n(/(^\{(?:(?![}:])<<0>>)*)<<1>>(?=\}$)/.source,[r,L]),lookbehind:!0,inside:{punctuation:/^:/}},punctuation:/^\{|\}$/,expression:{pattern:/[\s\S]+/,alias:"language-csharp",inside:e.languages.csharp}}},string:/[\s\S]+/}}e.languages.insertBefore("csharp","string",{"interpolation-string":[{pattern:n(/(^|[^\\])(?:\$@|@\$)"(?:""|\\[\s\S]|\{\{|<<0>>|[^\\{"])*"/.source,[I]),lookbehind:!0,greedy:!0,inside:q(I,R)},{pattern:n(/(^|[^@\\])\$"(?:\\.|\{\{|<<0>>|[^\\"{])*"/.source,[F]),lookbehind:!0,greedy:!0,inside:q(F,O)}],char:{pattern:RegExp(S),greedy:!0}}),e.languages.dotnet=e.languages.cs=e.languages.csharp}(Prism)},34619:()=>{Prism.languages.graphql={comment:/#.*/,description:{pattern:/(?:"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*")(?=\s*[a-z_])/i,greedy:!0,alias:"string",inside:{"language-markdown":{pattern:/(^"(?:"")?)(?!\1)[\s\S]+(?=\1$)/,lookbehind:!0,inside:Prism.languages.markdown}}},string:{pattern:/"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},number:/(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,boolean:/\b(?:false|true)\b/,variable:/\$[a-z_]\w*/i,directive:{pattern:/@[a-z_]\w*/i,alias:"function"},"attr-name":{pattern:/\b[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i,greedy:!0},"atom-input":{pattern:/\b[A-Z]\w*Input\b/,alias:"class-name"},scalar:/\b(?:Boolean|Float|ID|Int|String)\b/,constant:/\b[A-Z][A-Z_\d]*\b/,"class-name":{pattern:/(\b(?:enum|implements|interface|on|scalar|type|union)\s+|&\s*|:\s*|\[)[A-Z_]\w*/,lookbehind:!0},fragment:{pattern:/(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-mutation":{pattern:/(\bmutation\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-query":{pattern:/(\bquery\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},keyword:/\b(?:directive|enum|extend|fragment|implements|input|interface|mutation|on|query|repeatable|scalar|schema|subscription|type|union)\b/,operator:/[!=|&]|\.{3}/,"property-query":/\w+(?=\s*\()/,object:/\w+(?=\s*\{)/,punctuation:/[!(){}\[\]:=,]/,property:/\w+/},Prism.hooks.add("after-tokenize",(function(e){if("graphql"===e.language)for(var t=e.tokens.filter((function(e){return"string"!=typeof e&&"comment"!==e.type&&"scalar"!==e.type})),n=0;n0)){var s=p(/^\{$/,/^\}$/);if(-1===s)continue;for(var c=n;c=0&&m(l,"variable-input")}}}}function u(e){return t[n+e]}function d(e,t){t=t||0;for(var n=0;n{!function(e){var t={pattern:/((?:^|[^\\$])(?:\\{2})*)\$(?:\w+|\{[^{}]*\})/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{?|\}$/,alias:"punctuation"},expression:{pattern:/[\s\S]+/,inside:null}}};e.languages.groovy=e.languages.extend("clike",{string:{pattern:/'''(?:[^\\]|\\[\s\S])*?'''|'(?:\\.|[^\\'\r\n])*'/,greedy:!0},keyword:/\b(?:abstract|as|assert|boolean|break|byte|case|catch|char|class|const|continue|def|default|do|double|else|enum|extends|final|finally|float|for|goto|if|implements|import|in|instanceof|int|interface|long|native|new|package|private|protected|public|return|short|static|strictfp|super|switch|synchronized|this|throw|throws|trait|transient|try|void|volatile|while)\b/,number:/\b(?:0b[01_]+|0x[\da-f_]+(?:\.[\da-f_p\-]+)?|[\d_]+(?:\.[\d_]+)?(?:e[+-]?\d+)?)[glidf]?\b/i,operator:{pattern:/(^|[^.])(?:~|==?~?|\?[.:]?|\*(?:[.=]|\*=?)?|\.[@&]|\.\.<|\.\.(?!\.)|-[-=>]?|\+[+=]?|!=?|<(?:<=?|=>?)?|>(?:>>?=?|=)?|&[&=]?|\|[|=]?|\/=?|\^=?|%=?)/,lookbehind:!0},punctuation:/\.+|[{}[\];(),:$]/}),e.languages.insertBefore("groovy","string",{shebang:{pattern:/#!.+/,alias:"comment",greedy:!0},"interpolation-string":{pattern:/"""(?:[^\\]|\\[\s\S])*?"""|(["/])(?:\\.|(?!\1)[^\\\r\n])*\1|\$\/(?:[^/$]|\$(?:[/$]|(?![/$]))|\/(?!\$))*\/\$/,greedy:!0,inside:{interpolation:t,string:/[\s\S]+/}}}),e.languages.insertBefore("groovy","punctuation",{"spock-block":/\b(?:and|cleanup|expect|given|setup|then|when|where):/}),e.languages.insertBefore("groovy","function",{annotation:{pattern:/(^|[^.])@\w+/,lookbehind:!0,alias:"punctuation"}}),t.inside.expression.inside=e.languages.groovy}(Prism)},96976:()=>{!function(e){var t=/\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|non-sealed|null|open|opens|package|permits|private|protected|provides|public|record(?!\s*[(){}[\]<>=%~.:,;?+\-*/&|^])|requires|return|sealed|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\b/,n=/(?:[a-z]\w*\s*\.\s*)*(?:[A-Z]\w*\s*\.\s*)*/.source,r={pattern:RegExp(/(^|[^\w.])/.source+n+/[A-Z](?:[\d_A-Z]*[a-z]\w*)?\b/.source),lookbehind:!0,inside:{namespace:{pattern:/^[a-z]\w*(?:\s*\.\s*[a-z]\w*)*(?:\s*\.)?/,inside:{punctuation:/\./}},punctuation:/\./}};e.languages.java=e.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"/,lookbehind:!0,greedy:!0},"class-name":[r,{pattern:RegExp(/(^|[^\w.])/.source+n+/[A-Z]\w*(?=\s+\w+\s*[;,=()]|\s*(?:\[[\s,]*\]\s*)?::\s*new\b)/.source),lookbehind:!0,inside:r.inside},{pattern:RegExp(/(\b(?:class|enum|extends|implements|instanceof|interface|new|record|throws)\s+)/.source+n+/[A-Z]\w*\b/.source),lookbehind:!0,inside:r.inside}],keyword:t,function:[e.languages.clike.function,{pattern:/(::\s*)[a-z_]\w*/,lookbehind:!0}],number:/\b0b[01][01_]*L?\b|\b0x(?:\.[\da-f_p+-]+|[\da-f_]+(?:\.[\da-f_p+-]+)?)\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,operator:{pattern:/(^|[^.])(?:<<=?|>>>?=?|->|--|\+\+|&&|\|\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,lookbehind:!0},constant:/\b[A-Z][A-Z_\d]+\b/}),e.languages.insertBefore("java","string",{"triple-quoted-string":{pattern:/"""[ \t]*[\r\n](?:(?:"|"")?(?:\\.|[^"\\]))*"""/,greedy:!0,alias:"string"},char:{pattern:/'(?:\\.|[^'\\\r\n]){1,6}'/,greedy:!0}}),e.languages.insertBefore("java","class-name",{annotation:{pattern:/(^|[^.])@\w+(?:\s*\.\s*\w+)*/,lookbehind:!0,alias:"punctuation"},generics:{pattern:/<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&))*>)*>)*>)*>/,inside:{"class-name":r,keyword:t,punctuation:/[<>(),.:]/,operator:/[?&|]/}},import:[{pattern:RegExp(/(\bimport\s+)/.source+n+/(?:[A-Z]\w*|\*)(?=\s*;)/.source),lookbehind:!0,inside:{namespace:r.inside.namespace,punctuation:/\./,operator:/\*/,"class-name":/\w+/}},{pattern:RegExp(/(\bimport\s+static\s+)/.source+n+/(?:\w+|\*)(?=\s*;)/.source),lookbehind:!0,alias:"static",inside:{namespace:r.inside.namespace,static:/\b\w+$/,punctuation:/\./,operator:/\*/,"class-name":/\w+/}}],namespace:{pattern:RegExp(/(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)(?!)[a-z]\w*(?:\.[a-z]\w*)*\.?/.source.replace(//g,(function(){return t.source}))),lookbehind:!0,inside:{punctuation:/\./}}})}(Prism)},72514:()=>{Prism.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}},Prism.languages.webmanifest=Prism.languages.json},69913:()=>{!function(e){e.languages.kotlin=e.languages.extend("clike",{keyword:{pattern:/(^|[^.])\b(?:abstract|actual|annotation|as|break|by|catch|class|companion|const|constructor|continue|crossinline|data|do|dynamic|else|enum|expect|external|final|finally|for|fun|get|if|import|in|infix|init|inline|inner|interface|internal|is|lateinit|noinline|null|object|open|operator|out|override|package|private|protected|public|reified|return|sealed|set|super|suspend|tailrec|this|throw|to|try|typealias|val|var|vararg|when|where|while)\b/,lookbehind:!0},function:[{pattern:/(?:`[^\r\n`]+`|\b\w+)(?=\s*\()/,greedy:!0},{pattern:/(\.)(?:`[^\r\n`]+`|\w+)(?=\s*\{)/,lookbehind:!0,greedy:!0}],number:/\b(?:0[xX][\da-fA-F]+(?:_[\da-fA-F]+)*|0[bB][01]+(?:_[01]+)*|\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?[fFL]?)\b/,operator:/\+[+=]?|-[-=>]?|==?=?|!(?:!|==?)?|[\/*%<>]=?|[?:]:?|\.\.|&&|\|\||\b(?:and|inv|or|shl|shr|ushr|xor)\b/}),delete e.languages.kotlin["class-name"];var t={"interpolation-punctuation":{pattern:/^\$\{?|\}$/,alias:"punctuation"},expression:{pattern:/[\s\S]+/,inside:e.languages.kotlin}};e.languages.insertBefore("kotlin","string",{"string-literal":[{pattern:/"""(?:[^$]|\$(?:(?!\{)|\{[^{}]*\}))*?"""/,alias:"multiline",inside:{interpolation:{pattern:/\$(?:[a-z_]\w*|\{[^{}]*\})/i,inside:t},string:/[\s\S]+/}},{pattern:/"(?:[^"\\\r\n$]|\\.|\$(?:(?!\{)|\{[^{}]*\}))*"/,alias:"singleline",inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$(?:[a-z_]\w*|\{[^{}]*\})/i,lookbehind:!0,inside:t},string:/[\s\S]+/}}],char:{pattern:/'(?:[^'\\\r\n]|\\(?:.|u[a-fA-F0-9]{0,4}))'/,greedy:!0}}),delete e.languages.kotlin.string,e.languages.insertBefore("kotlin","keyword",{annotation:{pattern:/\B@(?:\w+:)?(?:[A-Z]\w*|\[[^\]]+\])/,alias:"builtin"}}),e.languages.insertBefore("kotlin","function",{label:{pattern:/\b\w+@|@\w+\b/,alias:"symbol"}}),e.languages.kt=e.languages.kotlin,e.languages.kts=e.languages.kotlin}(Prism)},96966:()=>{Prism.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},identifier:{pattern:/(^|[^@\\])`(?:\\[\s\S]|[^`\\]|``)*`/,greedy:!0,lookbehind:!0,inside:{punctuation:/^`|`$/}},function:/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:COL|_INSERT)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURN(?:ING|S)?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,boolean:/\b(?:FALSE|NULL|TRUE)\b/i,number:/\b0x[\da-f]+\b|\b\d+(?:\.\d*)?|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/}},34387:(e,t,n)=>{var r={"./prism-cpp":72415,"./prism-csharp":5651,"./prism-graphql":34619,"./prism-groovy":75538,"./prism-java":96976,"./prism-json":72514,"./prism-kotlin":69913,"./prism-sql":96966};function o(e){var t=a(e);return n(t)}function a(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}o.keys=function(){return Object.keys(r)},o.resolve=a,e.exports=o,o.id=34387},2694:(e,t,n)=>{"use strict";var r=n(6925);function o(){}function a(){}a.resetWarningCache=o,e.exports=function(){function e(e,t,n,o,a,i){if(i!==r){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:a,resetWarningCache:o};return n.PropTypes=n,n}},5556:(e,t,n)=>{e.exports=n(2694)()},6925:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},22551:(e,t,n)=>{"use strict";var r=n(96540),o=n(69982);function a(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n