From 5dcdec35fb1558d0ba7b60354245836329dcb126 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 19 Aug 2025 07:52:22 +0000 Subject: [PATCH] Deploy to GitHub pages --- .nojekyll | 0 404.html | 34 + .../-hikage-view-declaration/alias.html | 80 + .../-hikage-view-declaration/index.html | 164 + .../-hikage-view-declaration/lparams.html | 80 + .../require-init.html | 80 + .../require-performer.html | 80 + .../-hikage-view-declaration/view.html | 80 + .../-hikage-view/alias.html | 80 + .../-hikage-view/index.html | 149 + .../-hikage-view/lparams.html | 80 + .../-hikage-view/require-init.html | 80 + .../-hikage-view/require-performer.html | 80 + .../-hikageable/index.html | 84 + .../index.html | 133 + .../-hikage-attrs-view/index.html | 9044 +++++++++++++ .../com.highcapable.hikage.bypass/index.html | 103 + .../-hikage-factory-builder/add-all.html | 80 + .../-hikage-factory-builder/add.html | 80 + .../-hikage-factory-builder/index.html | 119 + .../-hikage-factory.html | 80 + .../-hikage-factory/index.html | 84 + .../-hikage-performer/index.html | 84 + .../-hikage-view/index.html | 84 + .../-hikageable.html | 80 + .../index.html | 182 + .../-hikage-builder/build.html | 80 + .../-hikage-builder/index.html | 104 + .../index.html | 122 + .../lazy-hikage.html | 80 + .../-resources-scope/bitmap-resource.html | 80 + .../-resources-scope/color-resource.html | 80 + .../-resources-scope/dimen-resource.html | 80 + .../-resources-scope/drawable-resource.html | 80 + .../-resources-scope/font-resource.html | 80 + .../-resources-scope/index.html | 194 + .../state-color-resource.html | 80 + .../-resources-scope/string-resource.html | 80 + .../index.html | 103 + .../-hikage-preview/-hikage-preview.html | 80 + .../-hikage-preview/index.html | 10473 ++++++++++++++++ .../index.html | 103 + .../-mutable-state/-non-null/get-value.html | 80 + .../-mutable-state/-non-null/index.html | 153 + .../-mutable-state/-non-null/observe.html | 80 + .../-mutable-state/-non-null/set-value.html | 80 + .../-mutable-state/-non-null/value.html | 80 + .../-mutable-state/-nullable/get-value.html | 80 + .../-mutable-state/-nullable/index.html | 153 + .../-mutable-state/-nullable/observe.html | 80 + .../-mutable-state/-nullable/set-value.html | 80 + .../-mutable-state/-nullable/value.html | 80 + .../-mutable-state/index.html | 119 + .../-non-null-state/index.html | 153 + .../-non-null-state/observe.html | 80 + .../-non-null-state/value.html | 80 + .../-nullable-state/index.html | 153 + .../-nullable-state/observe.html | 80 + .../-nullable-state/value.html | 80 + .../-state/index.html | 119 + .../index.html | 197 + .../mutable-state-of-null.html | 80 + .../mutable-state-of.html | 80 + .../set-state.html | 80 + .../-hikage/-companion/build.html | 80 + .../-hikage/-companion/create.html | 80 + .../-hikage/-companion/index.html | 138 + .../is-auto-process-with-factory2.html | 80 + .../-hikage/-delegate/create.html | 80 + .../-hikage/-delegate/index.html | 104 + .../-hikage/-layout-params/create.html | 80 + .../-hikage/-layout-params/index.html | 104 + .../-hikage/-performer-params/attrs.html | 80 + .../-hikage/-performer-params/id.html | 80 + .../-hikage/-performer-params/index.html | 134 + .../-hikage/-performer-params/view-class.html | 80 + .../-hikage/-performer/-layout-params.html | 80 + .../-hikage/-performer/-layout.html | 80 + .../-hikage/-performer/-view-group.html | 80 + .../-hikage/-performer/-view.html | 80 + .../-hikage/-performer/actual-view-id.html | 80 + .../-hikage/-performer/bitmap-resource.html | 80 + .../-hikage/-performer/color-resource.html | 80 + .../-hikage/-performer/dimen-resource.html | 80 + .../-hikage/-performer/drawable-resource.html | 80 + .../-hikage/-performer/font-resource.html | 80 + .../-hikage/-performer/index.html | 333 + .../-performer/state-color-resource.html | 80 + .../-hikage/-performer/string-resource.html | 80 + .../-hikage/-performer/to-dp.html | 80 + .../-hikage/-performer/to-px.html | 80 + .../-hikage/get-actual-view-id.html | 80 + .../-hikage/get-or-null.html | 80 + .../-hikage/get.html | 80 + .../-hikage/index.html | 247 + .../-hikage/root.html | 80 + .../com.highcapable.hikage.core/index.html | 103 + KDoc/hikage-core/hikage-core/package-list | 121 + .../hikage-core/images/anchor-copy-button.svg | 8 + KDoc/hikage-core/images/arrow_down.svg | 7 + KDoc/hikage-core/images/burger.svg | 9 + KDoc/hikage-core/images/copy-icon.svg | 7 + .../images/copy-successful-icon.svg | 7 + KDoc/hikage-core/images/footer-go-to-link.svg | 7 + KDoc/hikage-core/images/go-to-top-icon.svg | 8 + KDoc/hikage-core/images/homepage.svg | 3 + KDoc/hikage-core/images/logo-icon.svg | 14 + .../nav-icons/abstract-class-kotlin.svg | 26 + .../images/nav-icons/abstract-class.svg | 20 + .../images/nav-icons/annotation-kotlin.svg | 13 + .../images/nav-icons/annotation.svg | 7 + .../images/nav-icons/class-kotlin.svg | 13 + KDoc/hikage-core/images/nav-icons/class.svg | 7 + .../images/nav-icons/enum-kotlin.svg | 13 + KDoc/hikage-core/images/nav-icons/enum.svg | 7 + .../images/nav-icons/exception-class.svg | 7 + .../images/nav-icons/field-value.svg | 10 + .../images/nav-icons/field-variable.svg | 10 + .../hikage-core/images/nav-icons/function.svg | 7 + .../images/nav-icons/interface-kotlin.svg | 13 + .../images/nav-icons/interface.svg | 7 + KDoc/hikage-core/images/nav-icons/object.svg | 13 + .../images/nav-icons/typealias-kotlin.svg | 13 + KDoc/hikage-core/images/theme-toggle.svg | 7 + KDoc/hikage-core/index.html | 225 + KDoc/hikage-core/navigation.html | 115 + KDoc/hikage-core/scripts/clipboard.js | 56 + KDoc/hikage-core/scripts/main.js | 44 + KDoc/hikage-core/scripts/navigation-loader.js | 95 + KDoc/hikage-core/scripts/pages.json | 1 + .../scripts/platform-content-handler.js | 400 + KDoc/hikage-core/scripts/prism.js | 22 + .../scripts/sourceset_dependencies.js | 1 + .../symbol-parameters-wrapper_deferred.js | 64 + KDoc/hikage-core/styles/font-jb-sans-auto.css | 36 + KDoc/hikage-core/styles/logo-styles.css | 9 + KDoc/hikage-core/styles/main.css | 124 + KDoc/hikage-core/styles/prism.css | 217 + KDoc/hikage-core/styles/style.css | 1509 +++ .../-hikage-holder-delegate/create.html | 80 + .../-hikage-holder-delegate/get-view.html | 80 + .../-hikage-holder-delegate/index.html | 119 + .../index.html | 103 + .../index.html | 148 + .../on-bind-footer-view.html | 80 + .../on-bind-header-view.html | 80 + .../on-bind-item-view.html | 80 + .../on-bind-page-view.html | 80 + .../package-list | 20 + .../images/anchor-copy-button.svg | 8 + .../images/arrow_down.svg | 7 + .../images/burger.svg | 9 + .../images/copy-icon.svg | 7 + .../images/copy-successful-icon.svg | 7 + .../images/footer-go-to-link.svg | 7 + .../images/go-to-top-icon.svg | 8 + .../images/homepage.svg | 3 + .../images/logo-icon.svg | 14 + .../nav-icons/abstract-class-kotlin.svg | 26 + .../images/nav-icons/abstract-class.svg | 20 + .../images/nav-icons/annotation-kotlin.svg | 13 + .../images/nav-icons/annotation.svg | 7 + .../images/nav-icons/class-kotlin.svg | 13 + .../images/nav-icons/class.svg | 7 + .../images/nav-icons/enum-kotlin.svg | 13 + .../images/nav-icons/enum.svg | 7 + .../images/nav-icons/exception-class.svg | 7 + .../images/nav-icons/field-value.svg | 10 + .../images/nav-icons/field-variable.svg | 10 + .../images/nav-icons/function.svg | 7 + .../images/nav-icons/interface-kotlin.svg | 13 + .../images/nav-icons/interface.svg | 7 + .../images/nav-icons/object.svg | 13 + .../images/nav-icons/typealias-kotlin.svg | 13 + .../images/theme-toggle.svg | 7 + .../hikage-extension-betterandroid/index.html | 117 + .../navigation.html | 25 + .../scripts/clipboard.js | 56 + .../scripts/main.js | 44 + .../scripts/navigation-loader.js | 95 + .../scripts/pages.json | 1 + .../scripts/platform-content-handler.js | 400 + .../scripts/prism.js | 22 + .../scripts/sourceset_dependencies.js | 1 + .../symbol-parameters-wrapper_deferred.js | 64 + .../styles/font-jb-sans-auto.css | 36 + .../styles/logo-styles.css | 9 + .../styles/main.css | 124 + .../styles/prism.css | 217 + .../styles/style.css | 1509 +++ .../-compose-view.html | 80 + .../-hikage-view.html | 80 + .../index.html | 118 + .../hikage-extension-compose/package-list | 8 + .../images/anchor-copy-button.svg | 8 + .../images/arrow_down.svg | 7 + .../images/burger.svg | 9 + .../images/copy-icon.svg | 7 + .../images/copy-successful-icon.svg | 7 + .../images/footer-go-to-link.svg | 7 + .../images/go-to-top-icon.svg | 8 + .../images/homepage.svg | 3 + .../images/logo-icon.svg | 14 + .../nav-icons/abstract-class-kotlin.svg | 26 + .../images/nav-icons/abstract-class.svg | 20 + .../images/nav-icons/annotation-kotlin.svg | 13 + .../images/nav-icons/annotation.svg | 7 + .../images/nav-icons/class-kotlin.svg | 13 + .../images/nav-icons/class.svg | 7 + .../images/nav-icons/enum-kotlin.svg | 13 + .../images/nav-icons/enum.svg | 7 + .../images/nav-icons/exception-class.svg | 7 + .../images/nav-icons/field-value.svg | 10 + .../images/nav-icons/field-variable.svg | 10 + .../images/nav-icons/function.svg | 7 + .../images/nav-icons/interface-kotlin.svg | 13 + .../images/nav-icons/interface.svg | 7 + .../images/nav-icons/object.svg | 13 + .../images/nav-icons/typealias-kotlin.svg | 13 + .../images/theme-toggle.svg | 7 + KDoc/hikage-extension-compose/index.html | 99 + KDoc/hikage-extension-compose/navigation.html | 13 + .../scripts/clipboard.js | 56 + KDoc/hikage-extension-compose/scripts/main.js | 44 + .../scripts/navigation-loader.js | 95 + .../scripts/pages.json | 1 + .../scripts/platform-content-handler.js | 400 + .../hikage-extension-compose/scripts/prism.js | 22 + .../scripts/sourceset_dependencies.js | 1 + .../symbol-parameters-wrapper_deferred.js | 64 + .../styles/font-jb-sans-auto.css | 36 + .../styles/logo-styles.css | 9 + KDoc/hikage-extension-compose/styles/main.css | 124 + .../hikage-extension-compose/styles/prism.css | 217 + .../hikage-extension-compose/styles/style.css | 1509 +++ .../above.html | 80 + .../align-baseline.html | 80 + .../align-bottom.html | 80 + .../align-end.html | 80 + .../align-left.html | 80 + .../align-parent-bottom.html | 80 + .../align-parent-end.html | 80 + .../align-parent-left.html | 80 + .../align-parent-right.html | 80 + .../align-parent-start.html | 80 + .../align-parent-top.html | 80 + .../align-right.html | 80 + .../align-start.html | 80 + .../align-top.html | 80 + .../below.html | 80 + .../bottom-to-parent.html | 80 + .../center-horizontally.html | 80 + .../center-in-parent.html | 80 + .../center-vertically.html | 80 + .../end-of.html | 80 + .../end-to-parent.html | 80 + .../index.html | 508 + .../left-of.html | 80 + .../left-to-parent.html | 80 + .../right-of.html | 80 + .../right-to-parent.html | 80 + .../start-of.html | 80 + .../start-to-parent.html | 80 + .../top-to-parent.html | 80 + .../add-view.html | 80 + .../index.html | 133 + .../set-content-view.html | 80 + .../set-view.html | 80 + .../hikage-extension/package-list | 65 + .../images/anchor-copy-button.svg | 8 + KDoc/hikage-extension/images/arrow_down.svg | 7 + KDoc/hikage-extension/images/burger.svg | 9 + KDoc/hikage-extension/images/copy-icon.svg | 7 + .../images/copy-successful-icon.svg | 7 + .../images/footer-go-to-link.svg | 7 + .../images/go-to-top-icon.svg | 8 + KDoc/hikage-extension/images/homepage.svg | 3 + KDoc/hikage-extension/images/logo-icon.svg | 14 + .../nav-icons/abstract-class-kotlin.svg | 26 + .../images/nav-icons/abstract-class.svg | 20 + .../images/nav-icons/annotation-kotlin.svg | 13 + .../images/nav-icons/annotation.svg | 7 + .../images/nav-icons/class-kotlin.svg | 13 + .../images/nav-icons/class.svg | 7 + .../images/nav-icons/enum-kotlin.svg | 13 + .../images/nav-icons/enum.svg | 7 + .../images/nav-icons/exception-class.svg | 7 + .../images/nav-icons/field-value.svg | 10 + .../images/nav-icons/field-variable.svg | 10 + .../images/nav-icons/function.svg | 7 + .../images/nav-icons/interface-kotlin.svg | 13 + .../images/nav-icons/interface.svg | 7 + .../images/nav-icons/object.svg | 13 + .../images/nav-icons/typealias-kotlin.svg | 13 + KDoc/hikage-extension/images/theme-toggle.svg | 7 + KDoc/hikage-extension/index.html | 117 + KDoc/hikage-extension/navigation.html | 103 + KDoc/hikage-extension/scripts/clipboard.js | 56 + KDoc/hikage-extension/scripts/main.js | 44 + .../scripts/navigation-loader.js | 95 + KDoc/hikage-extension/scripts/pages.json | 1 + .../scripts/platform-content-handler.js | 400 + KDoc/hikage-extension/scripts/prism.js | 22 + .../scripts/sourceset_dependencies.js | 1 + .../symbol-parameters-wrapper_deferred.js | 64 + .../styles/font-jb-sans-auto.css | 36 + KDoc/hikage-extension/styles/logo-styles.css | 9 + KDoc/hikage-extension/styles/main.css | 124 + KDoc/hikage-extension/styles/prism.css | 217 + KDoc/hikage-extension/styles/style.css | 1509 +++ assets/404.html-6Yl8cQE3.js | 1 + assets/404.html-Hb0EZKuq.js | 1 + assets/about.html--JeJn6VX.js | 1 + assets/about.html-M0ex9SEK.js | 16 + assets/about.html-aNmPduyK.js | 1 + assets/about.html-xtnDzGS9.js | 16 + assets/app-Th5ZUiPV.js | 16 + assets/changelog.html-4ij3JyOx.js | 1 + assets/changelog.html-70wDyZ6k.js | 1 + assets/changelog.html-SC4_c-OB.js | 1 + assets/changelog.html-jeM6caVi.js | 1 + assets/contacts.html-KvHhHdqG.js | 1 + assets/contacts.html-e3ZRLGK_.js | 1 + assets/contacts.html-lenQuBDC.js | 1 + assets/contacts.html-uhRwpcjF.js | 1 + assets/future.html-7XOynJeJ.js | 47 + assets/future.html-InmXBFae.js | 47 + assets/future.html-Oos9rVeC.js | 1 + assets/future.html-REnhLrdo.js | 1 + assets/hikage-compiler.html-5bVPMYp8.js | 79 + assets/hikage-compiler.html-K-VoveQu.js | 1 + assets/hikage-compiler.html-daBFruns.js | 79 + assets/hikage-compiler.html-iVKwHoFb.js | 1 + assets/hikage-core.html-40Ix1r4x.js | 285 + assets/hikage-core.html-6tGPbRmk.js | 1 + assets/hikage-core.html-gVi6UZx8.js | 1 + assets/hikage-core.html-lRhCMGKF.js | 281 + ...e-extension-betterandroid.html-CyG3Sxed.js | 29 + ...e-extension-betterandroid.html-Os5h9vs6.js | 1 + ...e-extension-betterandroid.html-rdAB3qTL.js | 29 + ...e-extension-betterandroid.html-zAeuzZ8X.js | 1 + .../hikage-extension-compose.html-1Dfh6yMp.js | 32 + .../hikage-extension-compose.html-K6jgaZLv.js | 1 + .../hikage-extension-compose.html-RxxykmCH.js | 1 + .../hikage-extension-compose.html-r3uCqqsR.js | 32 + assets/hikage-extension.html-1DTZp7CP.js | 113 + assets/hikage-extension.html-9qRH-qRK.js | 1 + assets/hikage-extension.html-NNPcC-vQ.js | 113 + assets/hikage-extension.html-d3HhdfKo.js | 1 + .../hikage-widget-androidx.html--DDjjKY9.js | 28 + .../hikage-widget-androidx.html-Kk_4er0h.js | 1 + .../hikage-widget-androidx.html-f-pJ9RQx.js | 28 + .../hikage-widget-androidx.html-uy8ylSjq.js | 1 + .../hikage-widget-material.html-ExJJLpC9.js | 44 + .../hikage-widget-material.html-REZuXk4N.js | 44 + .../hikage-widget-material.html-SrWOBHqa.js | 1 + .../hikage-widget-material.html-Z3imNZV7.js | 1 + assets/home.html-FkAIX882.js | 1 + assets/home.html-f3Kc44E4.js | 39 + assets/home.html-hszD4rJy.js | 1 + assets/home.html-i-icgBk8.js | 39 + assets/index.html-6RnrlwuM.js | 1 + assets/index.html-FjffWWA4.js | 1 + assets/index.html-UG_FDMyX.js | 1 + assets/index.html-XHTrceF2.js | 29 + assets/index.html-gsBQsPca.js | 29 + assets/index.html-l1SiVQn7.js | 1 + assets/nagasaki_soyo-RK2z5Lcj.js | 1 + assets/quick-start.html-OQgpPsXK.js | 1 + assets/quick-start.html-duoa-o83.js | 1 + assets/quick-start.html-pPBKXKHH.js | 26 + assets/quick-start.html-rt5lig6B.js | 28 + assets/r8-proguard.html-QTtfAIoi.js | 1 + assets/r8-proguard.html-_LaOmTsb.js | 3 + assets/r8-proguard.html-_aL0ZPoj.js | 1 + assets/r8-proguard.html-efuAW1em.js | 3 + assets/style-Rgr8LWAc.css | 1 + en/about/about.html | 49 + en/about/changelog.html | 34 + en/about/contacts.html | 34 + en/about/future.html | 80 + en/config/r8-proguard.html | 36 + en/guide/home.html | 72 + en/guide/quick-start.html | 59 + en/index.html | 62 + en/library/hikage-compiler.html | 112 + en/library/hikage-core.html | 318 + .../hikage-extension-betterandroid.html | 62 + en/library/hikage-extension-compose.html | 65 + en/library/hikage-extension.html | 146 + en/library/hikage-widget-androidx.html | 61 + en/library/hikage-widget-material.html | 77 + images/logo.svg | 11 + images/nagasaki_soyo.png | Bin 0 -> 45194 bytes index.html | 34 + zh-cn/about/about.html | 49 + zh-cn/about/changelog.html | 34 + zh-cn/about/contacts.html | 34 + zh-cn/about/future.html | 80 + zh-cn/config/r8-proguard.html | 36 + zh-cn/guide/home.html | 72 + zh-cn/guide/quick-start.html | 61 + zh-cn/index.html | 62 + zh-cn/library/hikage-compiler.html | 112 + zh-cn/library/hikage-core.html | 314 + .../hikage-extension-betterandroid.html | 62 + zh-cn/library/hikage-extension-compose.html | 65 + zh-cn/library/hikage-extension.html | 146 + zh-cn/library/hikage-widget-androidx.html | 61 + zh-cn/library/hikage-widget-material.html | 77 + 410 files changed, 49505 insertions(+) create mode 100644 .nojekyll create mode 100644 404.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/alias.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/lparams.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/require-init.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/require-performer.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/view.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/alias.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/lparams.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/require-init.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/require-performer.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikageable/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.bypass/-hikage-attrs-view/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.bypass/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory-builder/add-all.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory-builder/add.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory-builder/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-performer/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-view/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikageable.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.builder/-hikage-builder/build.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.builder/-hikage-builder/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.builder/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.builder/lazy-hikage.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/bitmap-resource.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/color-resource.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/dimen-resource.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/drawable-resource.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/font-resource.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/state-color-resource.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/string-resource.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.preview/-hikage-preview/-hikage-preview.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.preview/-hikage-preview/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.preview/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/get-value.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/observe.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/set-value.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/value.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/get-value.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/observe.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/set-value.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/value.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-non-null-state/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-non-null-state/observe.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-non-null-state/value.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-nullable-state/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-nullable-state/observe.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-nullable-state/value.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-state/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/mutable-state-of-null.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/mutable-state-of.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/set-state.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-companion/build.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-companion/create.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-companion/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-companion/is-auto-process-with-factory2.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-delegate/create.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-delegate/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-layout-params/create.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-layout-params/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/attrs.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/id.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/view-class.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-layout-params.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-layout.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-view-group.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-view.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/actual-view-id.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/bitmap-resource.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/color-resource.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/dimen-resource.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/drawable-resource.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/font-resource.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/state-color-resource.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/string-resource.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/to-dp.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/to-px.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/get-actual-view-id.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/get-or-null.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/get.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/index.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/root.html create mode 100644 KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/index.html create mode 100644 KDoc/hikage-core/hikage-core/package-list create mode 100644 KDoc/hikage-core/images/anchor-copy-button.svg create mode 100644 KDoc/hikage-core/images/arrow_down.svg create mode 100644 KDoc/hikage-core/images/burger.svg create mode 100644 KDoc/hikage-core/images/copy-icon.svg create mode 100644 KDoc/hikage-core/images/copy-successful-icon.svg create mode 100644 KDoc/hikage-core/images/footer-go-to-link.svg create mode 100644 KDoc/hikage-core/images/go-to-top-icon.svg create mode 100644 KDoc/hikage-core/images/homepage.svg create mode 100644 KDoc/hikage-core/images/logo-icon.svg create mode 100644 KDoc/hikage-core/images/nav-icons/abstract-class-kotlin.svg create mode 100644 KDoc/hikage-core/images/nav-icons/abstract-class.svg create mode 100644 KDoc/hikage-core/images/nav-icons/annotation-kotlin.svg create mode 100644 KDoc/hikage-core/images/nav-icons/annotation.svg create mode 100644 KDoc/hikage-core/images/nav-icons/class-kotlin.svg create mode 100644 KDoc/hikage-core/images/nav-icons/class.svg create mode 100644 KDoc/hikage-core/images/nav-icons/enum-kotlin.svg create mode 100644 KDoc/hikage-core/images/nav-icons/enum.svg create mode 100644 KDoc/hikage-core/images/nav-icons/exception-class.svg create mode 100644 KDoc/hikage-core/images/nav-icons/field-value.svg create mode 100644 KDoc/hikage-core/images/nav-icons/field-variable.svg create mode 100644 KDoc/hikage-core/images/nav-icons/function.svg create mode 100644 KDoc/hikage-core/images/nav-icons/interface-kotlin.svg create mode 100644 KDoc/hikage-core/images/nav-icons/interface.svg create mode 100644 KDoc/hikage-core/images/nav-icons/object.svg create mode 100644 KDoc/hikage-core/images/nav-icons/typealias-kotlin.svg create mode 100644 KDoc/hikage-core/images/theme-toggle.svg create mode 100644 KDoc/hikage-core/index.html create mode 100644 KDoc/hikage-core/navigation.html create mode 100644 KDoc/hikage-core/scripts/clipboard.js create mode 100644 KDoc/hikage-core/scripts/main.js create mode 100644 KDoc/hikage-core/scripts/navigation-loader.js create mode 100644 KDoc/hikage-core/scripts/pages.json create mode 100644 KDoc/hikage-core/scripts/platform-content-handler.js create mode 100644 KDoc/hikage-core/scripts/prism.js create mode 100644 KDoc/hikage-core/scripts/sourceset_dependencies.js create mode 100644 KDoc/hikage-core/scripts/symbol-parameters-wrapper_deferred.js create mode 100644 KDoc/hikage-core/styles/font-jb-sans-auto.css create mode 100644 KDoc/hikage-core/styles/logo-styles.css create mode 100644 KDoc/hikage-core/styles/main.css create mode 100644 KDoc/hikage-core/styles/prism.css create mode 100644 KDoc/hikage-core/styles/style.css create mode 100644 KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/-hikage-holder-delegate/create.html create mode 100644 KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/-hikage-holder-delegate/get-view.html create mode 100644 KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/-hikage-holder-delegate/index.html create mode 100644 KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/index.html create mode 100644 KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/index.html create mode 100644 KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-footer-view.html create mode 100644 KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-header-view.html create mode 100644 KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-item-view.html create mode 100644 KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-page-view.html create mode 100644 KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/package-list create mode 100644 KDoc/hikage-extension-betterandroid/images/anchor-copy-button.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/arrow_down.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/burger.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/copy-icon.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/copy-successful-icon.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/footer-go-to-link.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/go-to-top-icon.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/homepage.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/logo-icon.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/nav-icons/abstract-class-kotlin.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/nav-icons/abstract-class.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/nav-icons/annotation-kotlin.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/nav-icons/annotation.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/nav-icons/class-kotlin.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/nav-icons/class.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/nav-icons/enum-kotlin.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/nav-icons/enum.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/nav-icons/exception-class.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/nav-icons/field-value.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/nav-icons/field-variable.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/nav-icons/function.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/nav-icons/interface-kotlin.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/nav-icons/interface.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/nav-icons/object.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/nav-icons/typealias-kotlin.svg create mode 100644 KDoc/hikage-extension-betterandroid/images/theme-toggle.svg create mode 100644 KDoc/hikage-extension-betterandroid/index.html create mode 100644 KDoc/hikage-extension-betterandroid/navigation.html create mode 100644 KDoc/hikage-extension-betterandroid/scripts/clipboard.js create mode 100644 KDoc/hikage-extension-betterandroid/scripts/main.js create mode 100644 KDoc/hikage-extension-betterandroid/scripts/navigation-loader.js create mode 100644 KDoc/hikage-extension-betterandroid/scripts/pages.json create mode 100644 KDoc/hikage-extension-betterandroid/scripts/platform-content-handler.js create mode 100644 KDoc/hikage-extension-betterandroid/scripts/prism.js create mode 100644 KDoc/hikage-extension-betterandroid/scripts/sourceset_dependencies.js create mode 100644 KDoc/hikage-extension-betterandroid/scripts/symbol-parameters-wrapper_deferred.js create mode 100644 KDoc/hikage-extension-betterandroid/styles/font-jb-sans-auto.css create mode 100644 KDoc/hikage-extension-betterandroid/styles/logo-styles.css create mode 100644 KDoc/hikage-extension-betterandroid/styles/main.css create mode 100644 KDoc/hikage-extension-betterandroid/styles/prism.css create mode 100644 KDoc/hikage-extension-betterandroid/styles/style.css create mode 100644 KDoc/hikage-extension-compose/hikage-extension-compose/com.highcapable.hikage.extension.androidx.compose/-compose-view.html create mode 100644 KDoc/hikage-extension-compose/hikage-extension-compose/com.highcapable.hikage.extension.androidx.compose/-hikage-view.html create mode 100644 KDoc/hikage-extension-compose/hikage-extension-compose/com.highcapable.hikage.extension.androidx.compose/index.html create mode 100644 KDoc/hikage-extension-compose/hikage-extension-compose/package-list create mode 100644 KDoc/hikage-extension-compose/images/anchor-copy-button.svg create mode 100644 KDoc/hikage-extension-compose/images/arrow_down.svg create mode 100644 KDoc/hikage-extension-compose/images/burger.svg create mode 100644 KDoc/hikage-extension-compose/images/copy-icon.svg create mode 100644 KDoc/hikage-extension-compose/images/copy-successful-icon.svg create mode 100644 KDoc/hikage-extension-compose/images/footer-go-to-link.svg create mode 100644 KDoc/hikage-extension-compose/images/go-to-top-icon.svg create mode 100644 KDoc/hikage-extension-compose/images/homepage.svg create mode 100644 KDoc/hikage-extension-compose/images/logo-icon.svg create mode 100644 KDoc/hikage-extension-compose/images/nav-icons/abstract-class-kotlin.svg create mode 100644 KDoc/hikage-extension-compose/images/nav-icons/abstract-class.svg create mode 100644 KDoc/hikage-extension-compose/images/nav-icons/annotation-kotlin.svg create mode 100644 KDoc/hikage-extension-compose/images/nav-icons/annotation.svg create mode 100644 KDoc/hikage-extension-compose/images/nav-icons/class-kotlin.svg create mode 100644 KDoc/hikage-extension-compose/images/nav-icons/class.svg create mode 100644 KDoc/hikage-extension-compose/images/nav-icons/enum-kotlin.svg create mode 100644 KDoc/hikage-extension-compose/images/nav-icons/enum.svg create mode 100644 KDoc/hikage-extension-compose/images/nav-icons/exception-class.svg create mode 100644 KDoc/hikage-extension-compose/images/nav-icons/field-value.svg create mode 100644 KDoc/hikage-extension-compose/images/nav-icons/field-variable.svg create mode 100644 KDoc/hikage-extension-compose/images/nav-icons/function.svg create mode 100644 KDoc/hikage-extension-compose/images/nav-icons/interface-kotlin.svg create mode 100644 KDoc/hikage-extension-compose/images/nav-icons/interface.svg create mode 100644 KDoc/hikage-extension-compose/images/nav-icons/object.svg create mode 100644 KDoc/hikage-extension-compose/images/nav-icons/typealias-kotlin.svg create mode 100644 KDoc/hikage-extension-compose/images/theme-toggle.svg create mode 100644 KDoc/hikage-extension-compose/index.html create mode 100644 KDoc/hikage-extension-compose/navigation.html create mode 100644 KDoc/hikage-extension-compose/scripts/clipboard.js create mode 100644 KDoc/hikage-extension-compose/scripts/main.js create mode 100644 KDoc/hikage-extension-compose/scripts/navigation-loader.js create mode 100644 KDoc/hikage-extension-compose/scripts/pages.json create mode 100644 KDoc/hikage-extension-compose/scripts/platform-content-handler.js create mode 100644 KDoc/hikage-extension-compose/scripts/prism.js create mode 100644 KDoc/hikage-extension-compose/scripts/sourceset_dependencies.js create mode 100644 KDoc/hikage-extension-compose/scripts/symbol-parameters-wrapper_deferred.js create mode 100644 KDoc/hikage-extension-compose/styles/font-jb-sans-auto.css create mode 100644 KDoc/hikage-extension-compose/styles/logo-styles.css create mode 100644 KDoc/hikage-extension-compose/styles/main.css create mode 100644 KDoc/hikage-extension-compose/styles/prism.css create mode 100644 KDoc/hikage-extension-compose/styles/style.css create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/above.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-baseline.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-bottom.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-end.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-left.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-bottom.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-end.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-left.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-right.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-start.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-top.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-right.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-start.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-top.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/below.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/bottom-to-parent.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/center-horizontally.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/center-in-parent.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/center-vertically.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/end-of.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/end-to-parent.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/index.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/left-of.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/left-to-parent.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/right-of.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/right-to-parent.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/start-of.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/start-to-parent.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/top-to-parent.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension/add-view.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension/index.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension/set-content-view.html create mode 100644 KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension/set-view.html create mode 100644 KDoc/hikage-extension/hikage-extension/package-list create mode 100644 KDoc/hikage-extension/images/anchor-copy-button.svg create mode 100644 KDoc/hikage-extension/images/arrow_down.svg create mode 100644 KDoc/hikage-extension/images/burger.svg create mode 100644 KDoc/hikage-extension/images/copy-icon.svg create mode 100644 KDoc/hikage-extension/images/copy-successful-icon.svg create mode 100644 KDoc/hikage-extension/images/footer-go-to-link.svg create mode 100644 KDoc/hikage-extension/images/go-to-top-icon.svg create mode 100644 KDoc/hikage-extension/images/homepage.svg create mode 100644 KDoc/hikage-extension/images/logo-icon.svg create mode 100644 KDoc/hikage-extension/images/nav-icons/abstract-class-kotlin.svg create mode 100644 KDoc/hikage-extension/images/nav-icons/abstract-class.svg create mode 100644 KDoc/hikage-extension/images/nav-icons/annotation-kotlin.svg create mode 100644 KDoc/hikage-extension/images/nav-icons/annotation.svg create mode 100644 KDoc/hikage-extension/images/nav-icons/class-kotlin.svg create mode 100644 KDoc/hikage-extension/images/nav-icons/class.svg create mode 100644 KDoc/hikage-extension/images/nav-icons/enum-kotlin.svg create mode 100644 KDoc/hikage-extension/images/nav-icons/enum.svg create mode 100644 KDoc/hikage-extension/images/nav-icons/exception-class.svg create mode 100644 KDoc/hikage-extension/images/nav-icons/field-value.svg create mode 100644 KDoc/hikage-extension/images/nav-icons/field-variable.svg create mode 100644 KDoc/hikage-extension/images/nav-icons/function.svg create mode 100644 KDoc/hikage-extension/images/nav-icons/interface-kotlin.svg create mode 100644 KDoc/hikage-extension/images/nav-icons/interface.svg create mode 100644 KDoc/hikage-extension/images/nav-icons/object.svg create mode 100644 KDoc/hikage-extension/images/nav-icons/typealias-kotlin.svg create mode 100644 KDoc/hikage-extension/images/theme-toggle.svg create mode 100644 KDoc/hikage-extension/index.html create mode 100644 KDoc/hikage-extension/navigation.html create mode 100644 KDoc/hikage-extension/scripts/clipboard.js create mode 100644 KDoc/hikage-extension/scripts/main.js create mode 100644 KDoc/hikage-extension/scripts/navigation-loader.js create mode 100644 KDoc/hikage-extension/scripts/pages.json create mode 100644 KDoc/hikage-extension/scripts/platform-content-handler.js create mode 100644 KDoc/hikage-extension/scripts/prism.js create mode 100644 KDoc/hikage-extension/scripts/sourceset_dependencies.js create mode 100644 KDoc/hikage-extension/scripts/symbol-parameters-wrapper_deferred.js create mode 100644 KDoc/hikage-extension/styles/font-jb-sans-auto.css create mode 100644 KDoc/hikage-extension/styles/logo-styles.css create mode 100644 KDoc/hikage-extension/styles/main.css create mode 100644 KDoc/hikage-extension/styles/prism.css create mode 100644 KDoc/hikage-extension/styles/style.css create mode 100644 assets/404.html-6Yl8cQE3.js create mode 100644 assets/404.html-Hb0EZKuq.js create mode 100644 assets/about.html--JeJn6VX.js create mode 100644 assets/about.html-M0ex9SEK.js create mode 100644 assets/about.html-aNmPduyK.js create mode 100644 assets/about.html-xtnDzGS9.js create mode 100644 assets/app-Th5ZUiPV.js create mode 100644 assets/changelog.html-4ij3JyOx.js create mode 100644 assets/changelog.html-70wDyZ6k.js create mode 100644 assets/changelog.html-SC4_c-OB.js create mode 100644 assets/changelog.html-jeM6caVi.js create mode 100644 assets/contacts.html-KvHhHdqG.js create mode 100644 assets/contacts.html-e3ZRLGK_.js create mode 100644 assets/contacts.html-lenQuBDC.js create mode 100644 assets/contacts.html-uhRwpcjF.js create mode 100644 assets/future.html-7XOynJeJ.js create mode 100644 assets/future.html-InmXBFae.js create mode 100644 assets/future.html-Oos9rVeC.js create mode 100644 assets/future.html-REnhLrdo.js create mode 100644 assets/hikage-compiler.html-5bVPMYp8.js create mode 100644 assets/hikage-compiler.html-K-VoveQu.js create mode 100644 assets/hikage-compiler.html-daBFruns.js create mode 100644 assets/hikage-compiler.html-iVKwHoFb.js create mode 100644 assets/hikage-core.html-40Ix1r4x.js create mode 100644 assets/hikage-core.html-6tGPbRmk.js create mode 100644 assets/hikage-core.html-gVi6UZx8.js create mode 100644 assets/hikage-core.html-lRhCMGKF.js create mode 100644 assets/hikage-extension-betterandroid.html-CyG3Sxed.js create mode 100644 assets/hikage-extension-betterandroid.html-Os5h9vs6.js create mode 100644 assets/hikage-extension-betterandroid.html-rdAB3qTL.js create mode 100644 assets/hikage-extension-betterandroid.html-zAeuzZ8X.js create mode 100644 assets/hikage-extension-compose.html-1Dfh6yMp.js create mode 100644 assets/hikage-extension-compose.html-K6jgaZLv.js create mode 100644 assets/hikage-extension-compose.html-RxxykmCH.js create mode 100644 assets/hikage-extension-compose.html-r3uCqqsR.js create mode 100644 assets/hikage-extension.html-1DTZp7CP.js create mode 100644 assets/hikage-extension.html-9qRH-qRK.js create mode 100644 assets/hikage-extension.html-NNPcC-vQ.js create mode 100644 assets/hikage-extension.html-d3HhdfKo.js create mode 100644 assets/hikage-widget-androidx.html--DDjjKY9.js create mode 100644 assets/hikage-widget-androidx.html-Kk_4er0h.js create mode 100644 assets/hikage-widget-androidx.html-f-pJ9RQx.js create mode 100644 assets/hikage-widget-androidx.html-uy8ylSjq.js create mode 100644 assets/hikage-widget-material.html-ExJJLpC9.js create mode 100644 assets/hikage-widget-material.html-REZuXk4N.js create mode 100644 assets/hikage-widget-material.html-SrWOBHqa.js create mode 100644 assets/hikage-widget-material.html-Z3imNZV7.js create mode 100644 assets/home.html-FkAIX882.js create mode 100644 assets/home.html-f3Kc44E4.js create mode 100644 assets/home.html-hszD4rJy.js create mode 100644 assets/home.html-i-icgBk8.js create mode 100644 assets/index.html-6RnrlwuM.js create mode 100644 assets/index.html-FjffWWA4.js create mode 100644 assets/index.html-UG_FDMyX.js create mode 100644 assets/index.html-XHTrceF2.js create mode 100644 assets/index.html-gsBQsPca.js create mode 100644 assets/index.html-l1SiVQn7.js create mode 100644 assets/nagasaki_soyo-RK2z5Lcj.js create mode 100644 assets/quick-start.html-OQgpPsXK.js create mode 100644 assets/quick-start.html-duoa-o83.js create mode 100644 assets/quick-start.html-pPBKXKHH.js create mode 100644 assets/quick-start.html-rt5lig6B.js create mode 100644 assets/r8-proguard.html-QTtfAIoi.js create mode 100644 assets/r8-proguard.html-_LaOmTsb.js create mode 100644 assets/r8-proguard.html-_aL0ZPoj.js create mode 100644 assets/r8-proguard.html-efuAW1em.js create mode 100644 assets/style-Rgr8LWAc.css create mode 100644 en/about/about.html create mode 100644 en/about/changelog.html create mode 100644 en/about/contacts.html create mode 100644 en/about/future.html create mode 100644 en/config/r8-proguard.html create mode 100644 en/guide/home.html create mode 100644 en/guide/quick-start.html create mode 100644 en/index.html create mode 100644 en/library/hikage-compiler.html create mode 100644 en/library/hikage-core.html create mode 100644 en/library/hikage-extension-betterandroid.html create mode 100644 en/library/hikage-extension-compose.html create mode 100644 en/library/hikage-extension.html create mode 100644 en/library/hikage-widget-androidx.html create mode 100644 en/library/hikage-widget-material.html create mode 100644 images/logo.svg create mode 100644 images/nagasaki_soyo.png create mode 100644 index.html create mode 100644 zh-cn/about/about.html create mode 100644 zh-cn/about/changelog.html create mode 100644 zh-cn/about/contacts.html create mode 100644 zh-cn/about/future.html create mode 100644 zh-cn/config/r8-proguard.html create mode 100644 zh-cn/guide/home.html create mode 100644 zh-cn/guide/quick-start.html create mode 100644 zh-cn/index.html create mode 100644 zh-cn/library/hikage-compiler.html create mode 100644 zh-cn/library/hikage-core.html create mode 100644 zh-cn/library/hikage-extension-betterandroid.html create mode 100644 zh-cn/library/hikage-extension-compose.html create mode 100644 zh-cn/library/hikage-extension.html create mode 100644 zh-cn/library/hikage-widget-androidx.html create mode 100644 zh-cn/library/hikage-widget-material.html diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/404.html b/404.html new file mode 100644 index 0000000..e67b618 --- /dev/null +++ b/404.html @@ -0,0 +1,34 @@ + + + + + + + + + Hikage + + + + + +

404

That's a Four-Oh-Four.
Take me home
+ + + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/alias.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/alias.html new file mode 100644 index 0000000..f9d71bd --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/alias.html @@ -0,0 +1,80 @@ + + + + + alias + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

alias

+
+

Parameters

alias

the view's class name alias will naming the function, default is the view class name.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/index.html new file mode 100644 index 0000000..63732c3 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/index.html @@ -0,0 +1,164 @@ + + + + + HikageViewDeclaration + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

HikageViewDeclaration

+
@Target(allowedTargets = [AnnotationTarget.CLASS])
annotation class HikageViewDeclaration(val view: KClass<*>, val lparams: KClass<*> = Any::class, val alias: String = "", val requireInit: Boolean = false, val requirePerformer: Boolean = false)

Declare annotations to generate the Hikage.Performer function for the specified view at compile time.

You can declare a class for View that does not belong to your own View or third-party library.

The class name you define can be as good as you like, and notice it must to use the object keyword to modify it.

Usage:

@HikageViewDeclaration(ThirdPartyView::class, FrameLayout.LayoutParams::class, alias = "ThirdPartyView")
object ThirdPartyViewDeclaration

Parameters

view

the view class, only View can be specified.

lparams

the layout params class, only ViewGroup can be specified, after specifying, the performer parameter will be generated for the function. The parameters must be a class inherited from ViewGroup.LayoutParams, if the current View does not inherit from ViewGroup, this parameter will be ignored and warned.

alias

the view's class name alias will naming the function, default is the view class name.

requireInit

whether to force the init parameter to be called, default is false.

requirePerformer

whether to force the performer parameter to be called, default is false, this parameter will be ignored when no performer parameter is needed here.

+
+
+
+
+
+

Properties

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
val lparams: KClass<*>
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
val requireInit: Boolean = false
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
val view: KClass<*>
+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/lparams.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/lparams.html new file mode 100644 index 0000000..3e5fa84 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/lparams.html @@ -0,0 +1,80 @@ + + + + + lparams + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

lparams

+
+
val lparams: KClass<*>

Parameters

lparams

the layout params class, only ViewGroup can be specified, after specifying, the performer parameter will be generated for the function. The parameters must be a class inherited from ViewGroup.LayoutParams, if the current View does not inherit from ViewGroup, this parameter will be ignored and warned.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/require-init.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/require-init.html new file mode 100644 index 0000000..1d82d0a --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/require-init.html @@ -0,0 +1,80 @@ + + + + + requireInit + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

requireInit

+
+
val requireInit: Boolean = false

Parameters

requireInit

whether to force the init parameter to be called, default is false.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/require-performer.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/require-performer.html new file mode 100644 index 0000000..4ca0997 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/require-performer.html @@ -0,0 +1,80 @@ + + + + + requirePerformer + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

requirePerformer

+
+

Parameters

requirePerformer

whether to force the performer parameter to be called, default is false, this parameter will be ignored when no performer parameter is needed here.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/view.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/view.html new file mode 100644 index 0000000..7eef509 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/view.html @@ -0,0 +1,80 @@ + + + + + view + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

view

+
+
val view: KClass<*>

Parameters

view

the view class, only View can be specified.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/alias.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/alias.html new file mode 100644 index 0000000..00f1a8b --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/alias.html @@ -0,0 +1,80 @@ + + + + + alias + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

alias

+
+

Parameters

alias

the view's class name alias will naming the function, default is the class name.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/index.html new file mode 100644 index 0000000..bbed9f3 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/index.html @@ -0,0 +1,149 @@ + + + + + HikageView + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

HikageView

+
@Target(allowedTargets = [AnnotationTarget.CLASS])
annotation class HikageView(val lparams: KClass<*> = Any::class, val alias: String = "", val requireInit: Boolean = false, val requirePerformer: Boolean = false)

Declare annotations to generate the Hikage.Performer function for the specified View at compile time.

Usage:

@HikageView(lparams = FrameLayout.LayoutParams::class, alias = "MyView")
class MyView(context: Context, attrs: AttributeSet?) : FrameLayout(context, attrs) {
// ...
}

Parameters

lparams

the layout params class, only ViewGroup can be specified, after specifying, the performer parameter will be generated for the function. The parameters must be a class inherited from ViewGroup.LayoutParams, if the current View does not inherit from ViewGroup, this parameter will be ignored and warned.

alias

the view's class name alias will naming the function, default is the class name.

requireInit

whether to force the init parameter to be called, default is false.

requirePerformer

whether to force the performer parameter to be called, default is false, this parameter will be ignored when no performer parameter is needed here.

+
+
+
+
+
+

Properties

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
val lparams: KClass<*>
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
val requireInit: Boolean = false
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/lparams.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/lparams.html new file mode 100644 index 0000000..d411f0e --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/lparams.html @@ -0,0 +1,80 @@ + + + + + lparams + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

lparams

+
+
val lparams: KClass<*>

Parameters

lparams

the layout params class, only ViewGroup can be specified, after specifying, the performer parameter will be generated for the function. The parameters must be a class inherited from ViewGroup.LayoutParams, if the current View does not inherit from ViewGroup, this parameter will be ignored and warned.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/require-init.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/require-init.html new file mode 100644 index 0000000..703adcb --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/require-init.html @@ -0,0 +1,80 @@ + + + + + requireInit + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

requireInit

+
+
val requireInit: Boolean = false

Parameters

requireInit

whether to force the init parameter to be called, default is false.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/require-performer.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/require-performer.html new file mode 100644 index 0000000..cb04996 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikage-view/require-performer.html @@ -0,0 +1,80 @@ + + + + + requirePerformer + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

requirePerformer

+
+

Parameters

requirePerformer

whether to force the performer parameter to be called, default is false, this parameter will be ignored when no performer parameter is needed here.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikageable/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikageable/index.html new file mode 100644 index 0000000..751bd71 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/-hikageable/index.html @@ -0,0 +1,84 @@ + + + + + Hikageable + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Hikageable

+
@Target(allowedTargets = [AnnotationTarget.FUNCTION])
annotation class Hikageable

Declare an implementation of the Hikage.Performer function that will be used for infectious creation of sub-layouts.

Usage:

@Hikageable
inline fun <reified LP : ViewGroup.LayoutParams> Hikage.Performer<LP>.MyView(
lparams: Hikage.LayoutParams? = null,
id: String? = null,
init: HikageView<MyView> = {}
) = View<MyView>(id, init, lparams)

See also

+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/index.html new file mode 100644 index 0000000..14b98df --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.annotation/index.html @@ -0,0 +1,133 @@ + + + + + com.highcapable.hikage.annotation + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Package-level declarations

+
+
+
+
+
+

Types

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
@Target(allowedTargets = [AnnotationTarget.FUNCTION])
annotation class Hikageable

Declare an implementation of the Hikage.Performer function that will be used for infectious creation of sub-layouts.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
@Target(allowedTargets = [AnnotationTarget.CLASS])
annotation class HikageView(val lparams: KClass<*> = Any::class, val alias: String = "", val requireInit: Boolean = false, val requirePerformer: Boolean = false)

Declare annotations to generate the Hikage.Performer function for the specified View at compile time.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
@Target(allowedTargets = [AnnotationTarget.CLASS])
annotation class HikageViewDeclaration(val view: KClass<*>, val lparams: KClass<*> = Any::class, val alias: String = "", val requireInit: Boolean = false, val requirePerformer: Boolean = false)

Declare annotations to generate the Hikage.Performer function for the specified view at compile time.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.bypass/-hikage-attrs-view/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.bypass/-hikage-attrs-view/index.html new file mode 100644 index 0000000..1621a89 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.bypass/-hikage-attrs-view/index.html @@ -0,0 +1,9044 @@ + + + + + HikageAttrsView + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

HikageAttrsView

+

Just a view for obtaining AttributeSet.

DONT USE THIS VIEW IN YOUR LAYOUT.

+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun addFocusables(p0: ArrayList<View>, p1: Int)
open fun addFocusables(p0: ArrayList<View>, p1: Int, p2: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun bringToFront()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun buildLayer()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun callOnClick(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun cancelLongPress()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun clearAnimation()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun clearFocus()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun computeScroll()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ + + +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun dispatchDisplayHint(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun dispatchNestedFling(p0: Float, p1: Float, p2: Boolean): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun dispatchNestedPreScroll(p0: Int, p1: Int, p2: IntArray?, p3: IntArray?): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun dispatchNestedScroll(p0: Int, p1: Int, p2: Int, p3: Int, p4: IntArray?): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ + + + + +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun draw(p0: Canvas)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun findFocus(): View
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun <T : View> findViewById(p0: Int): T
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun <T : View> findViewWithTag(p0: Any): T
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun focusSearch(p0: Int): View
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun forceLayout()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getAlpha(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getAutofillType(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getBaseline(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun getBottom(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getClipBounds(): Rect
open fun getClipBounds(p0: Rect): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getDisplay(): Display
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getDrawingRect(p0: Rect)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getDrawingTime(): Long
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getElevation(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getExplicitStyle(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getFocusable(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getFocusedRect(p0: Rect)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getHandler(): Handler
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun getHeight(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getHitRect(p0: Rect)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getId(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getLabelFor(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getLayerType(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun getLeft(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getMatrix(): Matrix
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getMinimumHeight(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getMinimumWidth(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getNextFocusUpId(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getPaddingBottom(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getPaddingEnd(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getPaddingLeft(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getPaddingRight(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getPaddingStart(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getPaddingTop(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ + + +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getPivotX(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getPivotY(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun getRight(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getRootView(): View
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getRotation(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getRotationX(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getRotationY(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getScaleX(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getScaleY(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getScrollBarSize(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getSolidColor(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getTag(): Any
open fun getTag(p0: Int): Any
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getTextAlignment(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getTextDirection(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun getTop(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getVisibility(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun getWidth(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getWindowId(): WindowId
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getX(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getY(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getZ(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun hasFocus(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun hasFocusable(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun invalidate()
open fun invalidate(p0: Rect)
open fun invalidate(p0: Int, p1: Int, p2: Int, p3: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun invalidateDrawable(p0: Drawable)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isActivated(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isClickable(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isCredential(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isDirty(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isEnabled(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isFocused(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isHovered(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isInEditMode(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isInLayout(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isLaidOut(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isOpaque(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isPivotSet(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isPressed(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isSelected(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isShown(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun layout(p0: Int, p1: Int, p2: Int, p3: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun measure(p0: Int, p1: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun offsetLeftAndRight(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun offsetTopAndBottom(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+ +
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun onDrawForeground(p0: Canvas)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun onHoverChanged(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onKeyDown(p0: Int, p1: KeyEvent): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onKeyLongPress(p0: Int, p1: KeyEvent): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onKeyMultiple(p0: Int, p1: Int, p2: KeyEvent): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun onKeyPreIme(p0: Int, p1: KeyEvent): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun onKeyShortcut(p0: Int, p1: KeyEvent): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onKeyUp(p0: Int, p1: KeyEvent): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+ +
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun performClick(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun playSoundEffect(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun post(p0: Runnable): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun postDelayed(p0: Runnable, p1: Long): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun postInvalidate()
open fun postInvalidate(p0: Int, p1: Int, p2: Int, p3: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun postInvalidateDelayed(p0: Long, p1: Int, p2: Int, p3: Int, p4: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun postInvalidateOnAnimation(p0: Int, p1: Int, p2: Int, p3: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+ +
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+ +
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun requestLayout()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun <T : View> requireViewById(p0: Int): T & Any
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun resetPivot()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun scheduleDrawable(p0: Drawable, p1: Runnable, p2: Long)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun scrollBy(p0: Int, p1: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun scrollTo(p0: Int, p1: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun sendAccessibilityEvent(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setActivated(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setAlpha(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setAnimation(p0: Animation)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setAnimationMatrix(p0: Matrix?)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setAutofillHints(vararg p0: String)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setAutofillId(p0: AutofillId?)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setBackground(p0: Drawable)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setBackgroundColor(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun setBottom(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setCameraDistance(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setClickable(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setClipBounds(p0: Rect)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setElevation(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setEnabled(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setFadingEdgeLength(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setFocusable(p0: Boolean)
open fun setFocusable(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setForeground(p0: Drawable)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setHandwritingBoundsOffsets(p0: Float, p1: Float, p2: Float, p3: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setHovered(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setId(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setIsCredential(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setKeepScreenOn(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setLabelFor(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setLayerPaint(p0: Paint?)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setLayerType(p0: Int, p1: Paint?)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setLayoutDirection(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun setLeft(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun setLeftTopRightBottom(p0: Int, p1: Int, p2: Int, p3: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setMinimumHeight(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setMinimumWidth(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setNextFocusDownId(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setNextFocusLeftId(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setNextFocusRightId(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setNextFocusUpId(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ + + +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setOverScrollMode(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setPadding(p0: Int, p1: Int, p2: Int, p3: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setPaddingRelative(p0: Int, p1: Int, p2: Int, p3: Int)
+
+
+
+
+ + + +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setPivotX(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setPivotY(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setPressed(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun setRight(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setRotation(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setRotationX(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setRotationY(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setSaveEnabled(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setScaleX(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setScaleY(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setScrollBarSize(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setScrollBarStyle(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setScrollIndicators(p0: Int)
open fun setScrollIndicators(p0: Int, p1: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setScrollX(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setScrollY(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setSelected(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setTag(p0: Any)
open fun setTag(p0: Int, p1: Any)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setTextAlignment(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setTextDirection(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun setTop(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setTranslationX(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setTranslationY(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setTranslationZ(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setVisibility(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setWillNotDraw(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setX(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setY(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setZ(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun showContextMenu(p0: Float, p1: Float): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun stopNestedScroll()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun toString(): String
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun unscheduleDrawable(p0: Drawable, p1: Runnable)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun willNotDraw(): Boolean
+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.bypass/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.bypass/index.html new file mode 100644 index 0000000..ce467d3 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.bypass/index.html @@ -0,0 +1,103 @@ + + + + + com.highcapable.hikage.bypass + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Package-level declarations

+
+
+
+
+
+

Types

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+

Just a view for obtaining AttributeSet.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory-builder/add-all.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory-builder/add-all.html new file mode 100644 index 0000000..677698b --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory-builder/add-all.html @@ -0,0 +1,80 @@ + + + + + addAll + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

addAll

+
+
fun addAll(factories: List<HikageFactory>)

Add factories.

Parameters

factories

the factories.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory-builder/add.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory-builder/add.html new file mode 100644 index 0000000..6bc60cc --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory-builder/add.html @@ -0,0 +1,80 @@ + + + + + add + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

add

+
+
fun add(factory: HikageFactory)

Add a factory.

Parameters

factory

the factory.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory-builder/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory-builder/index.html new file mode 100644 index 0000000..869d48a --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory-builder/index.html @@ -0,0 +1,119 @@ + + + + + HikageFactoryBuilder + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

HikageFactoryBuilder

+ +
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun add(factory: HikageFactory)

Add a factory.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun addAll(factories: List<HikageFactory>)

Add factories.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory.html new file mode 100644 index 0000000..30ba538 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory.html @@ -0,0 +1,80 @@ + + + + + HikageFactory + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

HikageFactory

+
+
fun HikageFactory(createView: HikageFactory): (parent: ViewGroup?, base: View?, context: Context, params: Hikage.PerformerParams) -> View?

Create a Hikage factory.

Return

HikageFactory

Parameters

createView

the view creator.


fun HikageFactory(inflater: LayoutInflater): (parent: ViewGroup?, base: View?, context: Context, params: Hikage.PerformerParams) -> View?

Create a Hikage factory from LayoutInflater.

This will proxy the function of LayoutInflater.Factory2 to Hikage.

Return

HikageFactory

Parameters

inflater

the layout inflater.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory/index.html new file mode 100644 index 0000000..98c5fd8 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-factory/index.html @@ -0,0 +1,84 @@ + + + + + HikageFactory + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

HikageFactory

+
typealias HikageFactory = (parent: ViewGroup?, base: View?, context: Context, params: Hikage.PerformerParams) -> View?

The Hikage factory type.

  • parent the parent view group.

  • base the base view (from previous HikageFactory processed, if not will null).

  • context the view context.

  • params the parameters.

+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-performer/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-performer/index.html new file mode 100644 index 0000000..ccb57d1 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-performer/index.html @@ -0,0 +1,84 @@ + + + + + HikagePerformer + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

HikagePerformer

+ +
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-view/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-view/index.html new file mode 100644 index 0000000..a924495 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikage-view/index.html @@ -0,0 +1,84 @@ + + + + + HikageView + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

HikageView

+
typealias HikageView<V> = V.() -> Unit

The Hikage view scope type.

+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikageable.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikageable.html new file mode 100644 index 0000000..29d3941 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/-hikageable.html @@ -0,0 +1,80 @@ + + + + + Hikageable + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Hikageable

+
+
@JvmName(name = "HikageableTyped")
inline fun <LP : ViewGroup.LayoutParams> Hikageable(context: Context, parent: ViewGroup? = null, attachToParent: Boolean = parent != null, factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<LP>): <Error class: unknown class>

Start performing a Hikage layout LP.

Return

Hikage

Parameters

context

the context to create the layout.

parent

the parent view group.

attachToParent

whether to attach the layout to the parent when the parent is filled.

factory

the HikageFactory builder.

performer

the performer body.


inline fun Hikageable(context: Context, parent: ViewGroup? = null, attachToParent: Boolean = parent != null, factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<ViewGroup.LayoutParams>): <Error class: unknown class>

Start performing a Hikage layout.

Return

Hikage

Parameters

context

the context to create the layout.

parent

the parent view group.

attachToParent

whether to attach the layout to the parent when the parent is filled.

factory

the HikageFactory builder.

performer

the performer body.


@JvmName(name = "HikageableTyped")
inline fun <LP : ViewGroup.LayoutParams> Hikageable(noinline factory: HikageFactoryBuilder.() -> Unit = {}, noinline performer: HikagePerformer<LP>): Hikage.Delegate<LP>

Start performing a Hikage layout LP.

Return

Hikage.Delegate<LP>

Parameters

factory

the HikageFactory builder.

performer

the performer body.


Start performing a Hikage layout.

Return

Hikage.Delegate<ViewGroup.LayoutParams>

Parameters

factory

the HikageFactory builder.

performer

the performer body.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/index.html new file mode 100644 index 0000000..d97ed4e --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.base/index.html @@ -0,0 +1,182 @@ + + + + + com.highcapable.hikage.core.base + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Package-level declarations

+
+
+
+
+
+

Types

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
typealias HikageFactory = (parent: ViewGroup?, base: View?, context: Context, params: Hikage.PerformerParams) -> View?

The Hikage factory type.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
typealias HikageView<V> = V.() -> Unit

The Hikage view scope type.

+
+
+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
@JvmName(name = "HikageableTyped")
inline fun <LP : ViewGroup.LayoutParams> Hikageable(noinline factory: HikageFactoryBuilder.() -> Unit = {}, noinline performer: HikagePerformer<LP>): Hikage.Delegate<LP>
@JvmName(name = "HikageableTyped")
inline fun <LP : ViewGroup.LayoutParams> Hikageable(context: Context, parent: ViewGroup? = null, attachToParent: Boolean = parent != null, factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<LP>): <Error class: unknown class>

Start performing a Hikage layout LP.

inline fun Hikageable(context: Context, parent: ViewGroup? = null, attachToParent: Boolean = parent != null, factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<ViewGroup.LayoutParams>): <Error class: unknown class>

Start performing a Hikage layout.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun HikageFactory(inflater: LayoutInflater): (parent: ViewGroup?, base: View?, context: Context, params: Hikage.PerformerParams) -> View?

Create a Hikage factory from LayoutInflater.

fun HikageFactory(createView: HikageFactory): (parent: ViewGroup?, base: View?, context: Context, params: Hikage.PerformerParams) -> View?

Create a Hikage factory.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.builder/-hikage-builder/build.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.builder/-hikage-builder/build.html new file mode 100644 index 0000000..368c4c0 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.builder/-hikage-builder/build.html @@ -0,0 +1,80 @@ + + + + + build + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

build

+
+
abstract fun build(): Hikage.Delegate<*>

Provide a Hikage for builder.

Usage:

override fun build() = Hikageable {
TextView(
lparams = LayoutParams(
width = 100.dp,
height = 100.dp
)
) {
text = "Hello, Hikage!"
textSize = 20f
}
}

Return

Hikage.Delegate

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.builder/-hikage-builder/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.builder/-hikage-builder/index.html new file mode 100644 index 0000000..edef268 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.builder/-hikage-builder/index.html @@ -0,0 +1,104 @@ + + + + + HikageBuilder + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

HikageBuilder

+
interface HikageBuilder

A layout builder interface for Hikage.

Checking build for usage.

Inheritors

+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract fun build(): Hikage.Delegate<*>

Provide a Hikage for builder.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.builder/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.builder/index.html new file mode 100644 index 0000000..2a1fa93 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.builder/index.html @@ -0,0 +1,122 @@ + + + + + com.highcapable.hikage.core.builder + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Package-level declarations

+
+
+
+
+
+

Types

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
interface HikageBuilder

A layout builder interface for Hikage.

+
+
+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun Context.lazyHikage(builder: HikageBuilder, parent: ViewGroup? = null, attachToParent: Boolean = parent != null): <Error class: unknown class>

Lazy initialize a Hikage layout.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.builder/lazy-hikage.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.builder/lazy-hikage.html new file mode 100644 index 0000000..fc23cf0 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.builder/lazy-hikage.html @@ -0,0 +1,80 @@ + + + + + lazyHikage + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

lazyHikage

+
+
fun Context.lazyHikage(builder: HikageBuilder, parent: ViewGroup? = null, attachToParent: Boolean = parent != null): <Error class: unknown class>

Lazy initialize a Hikage layout.

Usage:

object MainLayout : HikageBuilder {

override fun build() = Hikageable {
LinearLayout(
lparams = LayoutParams(matchParent = true),
init = {
orientation = LinearLayout.VERTICAL
gravity = Gravity.CENTER
}
) {
TextView {
text = "Hello, Hikage!"
textSize = 20f
}
}
}
}

class MainActivity : AppCompatActivity() {

private val hikage by lazyHikage(MainLayout)

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(hikage)
}
}

Receiver

the context to create the layout.

Return

Lazy<Hikage>

Parameters

builder

the HikageBuilder instance.

parent

the parent view group.

attachToParent

whether to attach the layout to the parent when the parent is filled.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/bitmap-resource.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/bitmap-resource.html new file mode 100644 index 0000000..fd1692f --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/bitmap-resource.html @@ -0,0 +1,80 @@ + + + + + bitmapResource + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

bitmapResource

+
+
abstract fun bitmapResource(@DrawableRes resId: Int): Bitmap

Get the Bitmap from resId.

Return

Bitmap

Parameters

resId

the resource id.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/color-resource.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/color-resource.html new file mode 100644 index 0000000..ebaa91e --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/color-resource.html @@ -0,0 +1,80 @@ + + + + + colorResource + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

colorResource

+
+
abstract fun colorResource(@ColorRes resId: Int): Int

Get the color from resId.

Return

Int

Parameters

resId

the resource id.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/dimen-resource.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/dimen-resource.html new file mode 100644 index 0000000..7dc850a --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/dimen-resource.html @@ -0,0 +1,80 @@ + + + + + dimenResource + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

dimenResource

+
+
abstract fun dimenResource(@DimenRes resId: Int): Float

Get the dimension from resId.

Return

Float

Parameters

resId

the resource id.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/drawable-resource.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/drawable-resource.html new file mode 100644 index 0000000..2c74922 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/drawable-resource.html @@ -0,0 +1,80 @@ + + + + + drawableResource + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

drawableResource

+
+
abstract fun drawableResource(@DrawableRes resId: Int): Drawable

Get the Drawable from resId.

Return

Drawable

Parameters

resId

the resource id.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/font-resource.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/font-resource.html new file mode 100644 index 0000000..74963c2 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/font-resource.html @@ -0,0 +1,80 @@ + + + + + fontResource + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

fontResource

+
+
abstract fun fontResource(@FontRes resId: Int): Typeface?

Get the font from resId.

Return

Typeface or null.

Parameters

resId

the resource id.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/index.html new file mode 100644 index 0000000..03b920f --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/index.html @@ -0,0 +1,194 @@ + + + + + ResourcesScope + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

ResourcesScope

+
interface ResourcesScope

An extension for Hikage view scope to provide resources.

+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract fun bitmapResource(@DrawableRes resId: Int): Bitmap

Get the Bitmap from resId.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract fun colorResource(@ColorRes resId: Int): Int

Get the color from resId.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract fun dimenResource(@DimenRes resId: Int): Float

Get the dimension from resId.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract fun drawableResource(@DrawableRes resId: Int): Drawable

Get the Drawable from resId.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract fun fontResource(@FontRes resId: Int): Typeface?

Get the font from resId.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+

Get the ColorStateList from resId.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract fun stringResource(@StringRes resId: Int, vararg formatArgs: Any): String

Get the string from resId.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/state-color-resource.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/state-color-resource.html new file mode 100644 index 0000000..ce92d87 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/state-color-resource.html @@ -0,0 +1,80 @@ + + + + + stateColorResource + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

stateColorResource

+
+

Get the ColorStateList from resId.

Return

Int

Parameters

resId

the resource id.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/string-resource.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/string-resource.html new file mode 100644 index 0000000..cb8c3ae --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/string-resource.html @@ -0,0 +1,80 @@ + + + + + stringResource + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

stringResource

+
+
abstract fun stringResource(@StringRes resId: Int, vararg formatArgs: Any): String

Get the string from resId.

Return

String

Parameters

resId

the resource id.

formatArgs

the format arguments.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/index.html new file mode 100644 index 0000000..9f8ea25 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.extension/index.html @@ -0,0 +1,103 @@ + + + + + com.highcapable.hikage.core.extension + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Package-level declarations

+
+
+
+
+
+

Types

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
interface ResourcesScope

An extension for Hikage view scope to provide resources.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.preview/-hikage-preview/-hikage-preview.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.preview/-hikage-preview/-hikage-preview.html new file mode 100644 index 0000000..a4f1240 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.preview/-hikage-preview/-hikage-preview.html @@ -0,0 +1,80 @@ + + + + + HikagePreview + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

HikagePreview

+
+
constructor(context: Context, attrs: AttributeSet? = null)
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.preview/-hikage-preview/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.preview/-hikage-preview/index.html new file mode 100644 index 0000000..84e8794 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.preview/-hikage-preview/index.html @@ -0,0 +1,10473 @@ + + + + + HikagePreview + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

HikagePreview

+
abstract class HikagePreview(context: Context, attrs: AttributeSet? = null) : FrameLayout, HikageBuilder

A preview layout for Hikage.

  • Note: This class should only be used in the layout preview mode by View.isInEditMode.

+
+
+
+
+
+

Constructors

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
constructor(context: Context, attrs: AttributeSet? = null)
+
+
+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun addFocusables(p0: ArrayList<View>, p1: Int)
open override fun addFocusables(p0: ArrayList<View>, p1: Int, p2: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun addTouchables(p0: ArrayList<View>)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun addView(p0: View)
open override fun addView(p0: View, p1: ViewGroup.LayoutParams)
open fun addView(p0: View, p1: Int)
open fun addView(p0: View, p1: Int, p2: ViewGroup.LayoutParams)
open fun addView(p0: View, p1: Int, p2: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun bringChildToFront(p0: View)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun bringToFront()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract fun build(): Hikage.Delegate<*>

Provide a Hikage for builder.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun buildLayer()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun callOnClick(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun cancelLongPress()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun childDrawableStateChanged(p0: View)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun childHasTransientStateChanged(p0: View, p1: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun clearAnimation()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun clearChildFocus(p0: View)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun clearFocus()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun computeScroll()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ + + +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun dispatchDisplayHint(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun dispatchDragEvent(p0: DragEvent): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun dispatchDrawableHotspotChanged(p0: Float, p1: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun dispatchFinishTemporaryDetach()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun dispatchKeyEvent(p0: KeyEvent): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun dispatchKeyEventPreIme(p0: KeyEvent): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun dispatchKeyShortcutEvent(p0: KeyEvent): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun dispatchNestedFling(p0: Float, p1: Float, p2: Boolean): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun dispatchNestedPreScroll(p0: Int, p1: Int, p2: IntArray?, p3: IntArray?): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun dispatchNestedScroll(p0: Int, p1: Int, p2: Int, p3: Int, p4: IntArray?): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun dispatchPointerCaptureChanged(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun dispatchSetActivated(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun dispatchSetSelected(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun dispatchStartTemporaryDetach()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun dispatchSystemUiVisibilityChanged(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun dispatchTouchEvent(p0: MotionEvent): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun dispatchUnhandledMove(p0: View, p1: Int): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun dispatchWindowFocusChanged(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+ +
+ + + +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun dispatchWindowVisibilityChanged(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun draw(p0: Canvas)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun endViewTransition(p0: View)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun findFocus(): View
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun <T : View> findViewById(p0: Int): T
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun findViewsWithText(p0: ArrayList<View>, p1: CharSequence, p2: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun <T : View> findViewWithTag(p0: Any): T
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun focusableViewAvailable(p0: View)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun focusSearch(p0: Int): View
open override fun focusSearch(p0: View, p1: Int): View
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun forceLayout()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun gatherTransparentRegion(p0: Region?): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getAlpha(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getAutofillType(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getBaseline(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun getBottom(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getChildAt(p0: Int): View
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getChildCount(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun getChildVisibleRect(p0: View, p1: Rect, p2: Point): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getClipBounds(): Rect
open fun getClipBounds(p0: Rect): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getDisplay(): Display
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getDrawingRect(p0: Rect)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getDrawingTime(): Long
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getElevation(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getExplicitStyle(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getFocusable(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getFocusedChild(): View
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getFocusedRect(p0: Rect)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getHandler(): Handler
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun getHeight(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getHitRect(p0: Rect)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getId(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getLabelFor(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getLayerType(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getLayoutMode(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun getLeft(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getMatrix(): Matrix
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getMinimumHeight(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getMinimumWidth(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getNextFocusUpId(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun getOverlay(): ViewGroupOverlay
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getPaddingBottom(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getPaddingEnd(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getPaddingLeft(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getPaddingRight(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getPaddingStart(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getPaddingTop(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ + + +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getPivotX(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getPivotY(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun getRight(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getRootView(): View
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getRotation(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getRotationX(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getRotationY(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getScaleX(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getScaleY(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getScrollBarSize(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getSolidColor(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getTag(): Any
open fun getTag(p0: Int): Any
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getTextAlignment(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getTextDirection(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun getTop(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getVisibility(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun getWidth(): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getWindowId(): WindowId
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getX(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getY(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun getZ(): Float
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun hasFocus(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun hasFocusable(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun hasTransientState(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun indexOfChild(p0: View): Int
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun invalidate()
open fun invalidate(p0: Rect)
open fun invalidate(p0: Int, p1: Int, p2: Int, p3: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
override fun invalidateChild(p0: View, p1: Rect)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun invalidateChildInParent(p0: IntArray, p1: Rect): ViewParent
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun invalidateDrawable(p0: Drawable)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isActivated(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isClickable(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isCredential(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isDirty(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isEnabled(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isFocused(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isHovered(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isInEditMode(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isInLayout(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isLaidOut(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isOpaque(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isPivotSet(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isPressed(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isSelected(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun isShown(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun jumpDrawablesToCurrentState()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
override fun layout(p0: Int, p1: Int, p2: Int, p3: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun measure(p0: Int, p1: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun notifySubtreeAccessibilityStateChanged(p0: View, p1: View, p2: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun offsetLeftAndRight(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun offsetTopAndBottom(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+ +
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onDescendantInvalidated(p0: View, p1: View)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun onDrawForeground(p0: Canvas)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun onHoverChanged(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onKeyDown(p0: Int, p1: KeyEvent): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onKeyLongPress(p0: Int, p1: KeyEvent): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onKeyMultiple(p0: Int, p1: Int, p2: KeyEvent): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun onKeyPreIme(p0: Int, p1: KeyEvent): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun onKeyShortcut(p0: Int, p1: KeyEvent): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onKeyUp(p0: Int, p1: KeyEvent): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onNestedFling(p0: View, p1: Float, p2: Float, p3: Boolean): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onNestedPreFling(p0: View, p1: Float, p2: Float): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onNestedPrePerformAccessibilityAction(p0: View, p1: Int, p2: Bundle?): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onNestedPreScroll(p0: View, p1: Int, p2: Int, p3: IntArray)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onNestedScroll(p0: View, p1: Int, p2: Int, p3: Int, p4: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onNestedScrollAccepted(p0: View, p1: View, p2: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onResolvePointerIcon(p0: MotionEvent, p1: Int): PointerIcon
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onStartNestedScroll(p0: View, p1: View, p2: Int): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun onStopNestedScroll(p0: View)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun onViewAdded(p0: View)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun onViewRemoved(p0: View)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+ +
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun performClick(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun playSoundEffect(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun post(p0: Runnable): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun postDelayed(p0: Runnable, p1: Long): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun postInvalidate()
open fun postInvalidate(p0: Int, p1: Int, p2: Int, p3: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun postInvalidateDelayed(p0: Long, p1: Int, p2: Int, p3: Int, p4: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun postInvalidateOnAnimation(p0: Int, p1: Int, p2: Int, p3: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun recomputeViewAttributes(p0: View)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun removeAllViews()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+ +
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+ +
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun removeView(p0: View)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun removeViewAt(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun removeViewInLayout(p0: View)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun removeViews(p0: Int, p1: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun removeViewsInLayout(p0: Int, p1: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun requestChildFocus(p0: View, p1: View)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun requestChildRectangleOnScreen(p0: View, p1: Rect, p2: Boolean): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun requestFocus(p0: Int, p1: Rect): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun requestLayout()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun requestTransparentRegion(p0: View)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun <T : View> requireViewById(p0: Int): T & Any
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun resetPivot()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun restoreDefaultFocus(): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun scheduleDrawable(p0: Drawable, p1: Runnable, p2: Long)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun scrollBy(p0: Int, p1: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun scrollTo(p0: Int, p1: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun sendAccessibilityEvent(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setActivated(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setAlpha(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setAnimation(p0: Animation)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setAnimationMatrix(p0: Matrix?)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setAutofillHints(vararg p0: String)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setAutofillId(p0: AutofillId?)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setBackground(p0: Drawable)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setBackgroundColor(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun setBottom(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setCameraDistance(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setClickable(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setClipBounds(p0: Rect)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setClipChildren(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setElevation(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setEnabled(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setFadingEdgeLength(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setFocusable(p0: Boolean)
open fun setFocusable(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setForeground(p0: Drawable)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun setForegroundGravity(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setHandwritingBoundsOffsets(p0: Float, p1: Float, p2: Float, p3: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setHovered(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setId(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setIsCredential(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setKeepScreenOn(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setLabelFor(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setLayerPaint(p0: Paint?)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setLayerType(p0: Int, p1: Paint?)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setLayoutDirection(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setLayoutMode(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun setLeft(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun setLeftTopRightBottom(p0: Int, p1: Int, p2: Int, p3: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setMinimumHeight(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setMinimumWidth(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setNextFocusDownId(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setNextFocusLeftId(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setNextFocusRightId(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setNextFocusUpId(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ + + +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setOverScrollMode(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setPadding(p0: Int, p1: Int, p2: Int, p3: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setPaddingRelative(p0: Int, p1: Int, p2: Int, p3: Int)
+
+
+
+
+ + + +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setPivotX(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setPivotY(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setPressed(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun setRequestedFrameRate(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun setRight(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setRotation(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setRotationX(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setRotationY(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setSaveEnabled(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setScaleX(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setScaleY(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setScrollBarSize(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setScrollBarStyle(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setScrollIndicators(p0: Int)
open fun setScrollIndicators(p0: Int, p1: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setScrollX(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setScrollY(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setSelected(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setTag(p0: Any)
open fun setTag(p0: Int, p1: Any)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setTextAlignment(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setTextDirection(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun setTop(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setTranslationX(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setTranslationY(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setTranslationZ(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setVisibility(p0: Int)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setWillNotDraw(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setX(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setY(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun setZ(p0: Float)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun showContextMenu(p0: Float, p1: Float): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun showContextMenuForChild(p0: View): Boolean
open override fun showContextMenuForChild(p0: View, p1: Float, p2: Float): Boolean
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun stopNestedScroll()
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun suppressLayout(p0: Boolean)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun toString(): String
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun unscheduleDrawable(p0: Drawable, p1: Runnable)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun updateViewLayout(p0: View, p1: ViewGroup.LayoutParams)
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open fun willNotDraw(): Boolean
+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.preview/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.preview/index.html new file mode 100644 index 0000000..d46dbf7 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.preview/index.html @@ -0,0 +1,103 @@ + + + + + com.highcapable.hikage.core.preview + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Package-level declarations

+
+
+
+
+
+

Types

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract class HikagePreview(context: Context, attrs: AttributeSet? = null) : FrameLayout, HikageBuilder

A preview layout for Hikage.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/get-value.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/get-value.html new file mode 100644 index 0000000..7d604ea --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/get-value.html @@ -0,0 +1,80 @@ + + + + + getValue + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

getValue

+
+
open operator override fun getValue(thisRef: Any?, property: KProperty<*>): T
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/index.html new file mode 100644 index 0000000..22a81b5 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/index.html @@ -0,0 +1,153 @@ + + + + + NonNull + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

NonNull

+
class NonNull<T> : NonNullState<T>

The non-nullable state of Hikage.

+
+
+
+
+
+

Properties

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override var value: T

The current value of the state.

+
+
+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
open operator override fun getValue(thisRef: Any?, property: KProperty<*>): T
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun observe(observer: (T) -> Unit)

Observe the state changes.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open operator override fun setValue(thisRef: Any?, property: KProperty<*>, value: T)
+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/observe.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/observe.html new file mode 100644 index 0000000..2b83b72 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/observe.html @@ -0,0 +1,80 @@ + + + + + observe + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

observe

+
+
open override fun observe(observer: (T) -> Unit)

Observe the state changes.

Parameters

observer

the observer to be notified when the state changes.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/set-value.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/set-value.html new file mode 100644 index 0000000..62110e4 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/set-value.html @@ -0,0 +1,80 @@ + + + + + setValue + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

setValue

+
+
open operator override fun setValue(thisRef: Any?, property: KProperty<*>, value: T)
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/value.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/value.html new file mode 100644 index 0000000..2540aef --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/value.html @@ -0,0 +1,80 @@ + + + + + value + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

value

+
+
open override var value: T

The current value of the state.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/get-value.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/get-value.html new file mode 100644 index 0000000..15f74d3 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/get-value.html @@ -0,0 +1,80 @@ + + + + + getValue + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

getValue

+
+
open operator override fun getValue(thisRef: Any?, property: KProperty<*>): T?
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/index.html new file mode 100644 index 0000000..6fb2ed8 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/index.html @@ -0,0 +1,153 @@ + + + + + Nullable + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Nullable

+

The nullable state of Hikage.

+
+
+
+
+
+

Properties

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override var value: T?

The current value of the state.

+
+
+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
open operator override fun getValue(thisRef: Any?, property: KProperty<*>): T?
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun observe(observer: (T?) -> Unit)

Observe the state changes.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open operator override fun setValue(thisRef: Any?, property: KProperty<*>, value: T?)
+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/observe.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/observe.html new file mode 100644 index 0000000..d8555a0 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/observe.html @@ -0,0 +1,80 @@ + + + + + observe + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

observe

+
+
open override fun observe(observer: (T?) -> Unit)

Observe the state changes.

Parameters

observer

the observer to be notified when the state changes.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/set-value.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/set-value.html new file mode 100644 index 0000000..502a896 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/set-value.html @@ -0,0 +1,80 @@ + + + + + setValue + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

setValue

+
+
open operator override fun setValue(thisRef: Any?, property: KProperty<*>, value: T?)
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/value.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/value.html new file mode 100644 index 0000000..eab54a7 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/value.html @@ -0,0 +1,80 @@ + + + + + value + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

value

+
+
open override var value: T?

The current value of the state.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/index.html new file mode 100644 index 0000000..b94a6f4 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/index.html @@ -0,0 +1,119 @@ + + + + + MutableState + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

MutableState

+

Implementing the State interface mutable state of Hikage.

+
+
+
+
+
+

Types

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
class NonNull<T> : NonNullState<T>

The non-nullable state of Hikage.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+

The nullable state of Hikage.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-non-null-state/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-non-null-state/index.html new file mode 100644 index 0000000..ae0a9ae --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-non-null-state/index.html @@ -0,0 +1,153 @@ + + + + + NonNullState + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

NonNullState

+
interface NonNullState<T> : State<T>

Definition a Hikage runtime state interface for non-nullable type.

Inheritors

+
+
+
+
+
+

Properties

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract var value: T

The current value of the state.

+
+
+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract operator override fun getValue(thisRef: Any?, property: KProperty<*>): T
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract fun observe(observer: (T) -> Unit)

Observe the state changes.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract operator fun setValue(thisRef: Any?, property: KProperty<*>, value: T)
+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-non-null-state/observe.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-non-null-state/observe.html new file mode 100644 index 0000000..8b4087f --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-non-null-state/observe.html @@ -0,0 +1,80 @@ + + + + + observe + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

observe

+
+
abstract fun observe(observer: (T) -> Unit)

Observe the state changes.

Parameters

observer

the observer to be notified when the state changes.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-non-null-state/value.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-non-null-state/value.html new file mode 100644 index 0000000..9741cc8 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-non-null-state/value.html @@ -0,0 +1,80 @@ + + + + + value + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

value

+
+
abstract var value: T

The current value of the state.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-nullable-state/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-nullable-state/index.html new file mode 100644 index 0000000..3ad36c5 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-nullable-state/index.html @@ -0,0 +1,153 @@ + + + + + NullableState + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

NullableState

+
interface NullableState<T> : State<T?>

Definition a Hikage runtime state interface for nullable type.

Inheritors

+
+
+
+
+
+

Properties

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract var value: T?

The current value of the state.

+
+
+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract operator override fun getValue(thisRef: Any?, property: KProperty<*>): T?
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract fun observe(observer: (T?) -> Unit)

Observe the state changes.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract operator fun setValue(thisRef: Any?, property: KProperty<*>, value: T?)
+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-nullable-state/observe.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-nullable-state/observe.html new file mode 100644 index 0000000..2f767a0 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-nullable-state/observe.html @@ -0,0 +1,80 @@ + + + + + observe + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

observe

+
+
abstract fun observe(observer: (T?) -> Unit)

Observe the state changes.

Parameters

observer

the observer to be notified when the state changes.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-nullable-state/value.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-nullable-state/value.html new file mode 100644 index 0000000..cfc21ff --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-nullable-state/value.html @@ -0,0 +1,80 @@ + + + + + value + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

value

+
+
abstract var value: T?

The current value of the state.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-state/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-state/index.html new file mode 100644 index 0000000..99a161f --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/-state/index.html @@ -0,0 +1,119 @@ + + + + + State + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

State

+
interface State<T> : ReadWriteProperty<Any?, T>

Definition a Hikage runtime state interface.

Inheritors

+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract operator override fun getValue(thisRef: Any?, property: KProperty<*>): T
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
abstract operator fun setValue(thisRef: Any?, property: KProperty<*>, value: T)
+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/index.html new file mode 100644 index 0000000..ca4fb44 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/index.html @@ -0,0 +1,197 @@ + + + + + com.highcapable.hikage.core.runtime + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Package-level declarations

+
+
+
+
+
+

Types

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+

Implementing the State interface mutable state of Hikage.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
interface NonNullState<T> : State<T>

Definition a Hikage runtime state interface for non-nullable type.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
interface NullableState<T> : State<T?>

Definition a Hikage runtime state interface for nullable type.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
interface State<T> : ReadWriteProperty<Any?, T>

Definition a Hikage runtime state interface.

+
+
+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+

Create a mutable state of Hikage with the specified value.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun <T> mutableStateOfNull(value: T? = null): MutableState.Nullable<T>

Create a mutable state of Hikage with the specified value.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
inline fun <T, R> R.setState(state: NonNullState<T>, crossinline apply: R.(T) -> Unit)
inline fun <T, R> R.setState(state: NullableState<T>, crossinline apply: R.(T?) -> Unit)

Set the Hikage state value.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/mutable-state-of-null.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/mutable-state-of-null.html new file mode 100644 index 0000000..956fe25 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/mutable-state-of-null.html @@ -0,0 +1,80 @@ + + + + + mutableStateOfNull + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

mutableStateOfNull

+
+
fun <T> mutableStateOfNull(value: T? = null): MutableState.Nullable<T>

Create a mutable state of Hikage with the specified value.

Return

MutableState.Nullable

Parameters

value

the initial value of the state.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/mutable-state-of.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/mutable-state-of.html new file mode 100644 index 0000000..67a1028 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/mutable-state-of.html @@ -0,0 +1,80 @@ + + + + + mutableStateOf + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

mutableStateOf

+
+

Create a mutable state of Hikage with the specified value.

Return

MutableState.NonNull

Parameters

value

the initial value of the state.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/set-state.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/set-state.html new file mode 100644 index 0000000..e0faa7f --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core.runtime/set-state.html @@ -0,0 +1,80 @@ + + + + + setState + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

setState

+
+
inline fun <T, R> R.setState(state: NonNullState<T>, crossinline apply: R.(T) -> Unit)

Set the Hikage state value.

Usage:

val textState = mutableStateOf("Hello World!")
var text by textState
TextView {
setState(textState) {
text = it
}
}
// Modify the state.
text = "Hello Hikage!"

Parameters

state

the state to be set.

apply

the apply body.


inline fun <T, R> R.setState(state: NullableState<T>, crossinline apply: R.(T?) -> Unit)

Set the Hikage state value.

Parameters

state

the state to be set.

apply

the apply body.

See also

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-companion/build.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-companion/build.html new file mode 100644 index 0000000..a1f0b10 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-companion/build.html @@ -0,0 +1,80 @@ + + + + + build + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

build

+
+
@JvmName(name = "buildTyped")
inline fun <LP : ViewGroup.LayoutParams> build(noinline factory: HikageFactoryBuilder.() -> Unit = {}, noinline performer: HikagePerformer<LP>): Hikage.Delegate<LP>

Create a new Hikage.Delegate.

Return

Hikage.Delegate<LP>

Parameters

factory

the HikageFactory builder.

performer

the performer body.


Create a new Hikage.Delegate.

Return

Hikage.Delegate<ViewGroup.LayoutParams>

Parameters

factory

the HikageFactory builder.

performer

the performer body.


fun <LP : ViewGroup.LayoutParams> build(lpClass: Class<LP>, factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<LP>): Hikage.Delegate<LP>

Create a new Hikage.Delegate.

Return

Hikage.Delegate<LP>

Parameters

lpClass

the layout params type.

factory

the HikageFactory builder.

performer

the performer body.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-companion/create.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-companion/create.html new file mode 100644 index 0000000..2aafe60 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-companion/create.html @@ -0,0 +1,80 @@ + + + + + create + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

create

+
+
@JvmName(name = "createTyped")
inline fun <LP : ViewGroup.LayoutParams> create(context: Context, parent: ViewGroup? = null, attachToParent: Boolean = parent != null, factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<LP>): <Error class: unknown class>
inline fun create(context: Context, parent: ViewGroup? = null, attachToParent: Boolean = parent != null, factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<ViewGroup.LayoutParams>): <Error class: unknown class>

Create a new Hikage.

Return

Hikage

Parameters

context

the context to create the layout.

parent

the parent view group.

attachToParent

whether to attach the layout to the parent when the parent is filled.

factory

the HikageFactory builder.

performer

the performer body.


inline fun <LP : ViewGroup.LayoutParams> create(lpClass: Class<LP>, context: Context, parent: ViewGroup? = null, attachToParent: Boolean = parent != null, factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<LP>): <Error class: unknown class>

Create a new Hikage.

Return

Hikage

Parameters

lpClass

the layout params type.

context

the context to create the layout.

parent

the parent view group.

attachToParent

whether to attach the layout to the parent when the parent is filled.

factory

the HikageFactory builder.

performer

the performer body.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-companion/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-companion/index.html new file mode 100644 index 0000000..c280217 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-companion/index.html @@ -0,0 +1,138 @@ + + + + + Companion + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Companion

+
object Companion
+
+
+
+
+
+

Properties

+
+
+
+
+ + +
Link copied to clipboard
+
+
+ +
+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
@JvmName(name = "buildTyped")
inline fun <LP : ViewGroup.LayoutParams> build(noinline factory: HikageFactoryBuilder.() -> Unit = {}, noinline performer: HikagePerformer<LP>): Hikage.Delegate<LP>
fun <LP : ViewGroup.LayoutParams> build(lpClass: Class<LP>, factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<LP>): Hikage.Delegate<LP>

Create a new Hikage.Delegate.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
@JvmName(name = "createTyped")
inline fun <LP : ViewGroup.LayoutParams> create(context: Context, parent: ViewGroup? = null, attachToParent: Boolean = parent != null, factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<LP>): <Error class: unknown class>
inline fun create(context: Context, parent: ViewGroup? = null, attachToParent: Boolean = parent != null, factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<ViewGroup.LayoutParams>): <Error class: unknown class>
inline fun <LP : ViewGroup.LayoutParams> create(lpClass: Class<LP>, context: Context, parent: ViewGroup? = null, attachToParent: Boolean = parent != null, factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<LP>): <Error class: unknown class>

Create a new Hikage.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-companion/is-auto-process-with-factory2.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-companion/is-auto-process-with-factory2.html new file mode 100644 index 0000000..9d826a5 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-companion/is-auto-process-with-factory2.html @@ -0,0 +1,80 @@ + + + + + isAutoProcessWithFactory2 + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

isAutoProcessWithFactory2

+
+

Automatically add HikageFactory to handle LayoutInflater.Factory2.

This LayoutInflater will be retrieved from the Context you passed in.

This option is enabled by default and will add this feature when creating any Hikage. It can support the View autoboxing feature that supports libraries such as androidx.appcompat, which can be disabled if you don't need it.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-delegate/create.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-delegate/create.html new file mode 100644 index 0000000..177b485 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-delegate/create.html @@ -0,0 +1,80 @@ + + + + + create + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

create

+
+
fun create(context: Context, parent: ViewGroup? = null, attachToParent: Boolean = parent != null): <Error class: unknown class>

Create a new Hikage.

Return

Hikage

Parameters

context

the context to create the layout.

parent

the parent view group.

attachToParent

whether to attach the layout to the parent when the parent is filled.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-delegate/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-delegate/index.html new file mode 100644 index 0000000..fcb6b27 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-delegate/index.html @@ -0,0 +1,104 @@ + + + + + Delegate + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Delegate

+

The delegate for Hikage.

Parameters

lpClass

the layout params type.

factory

the HikageFactory builder.

performer

the performer body.

+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun create(context: Context, parent: ViewGroup? = null, attachToParent: Boolean = parent != null): <Error class: unknown class>

Create a new Hikage.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-layout-params/create.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-layout-params/create.html new file mode 100644 index 0000000..40c36b0 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-layout-params/create.html @@ -0,0 +1,80 @@ + + + + + create + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

create

+
+

Create the layout params.

Return

ViewGroup.LayoutParams

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-layout-params/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-layout-params/index.html new file mode 100644 index 0000000..534a017 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-layout-params/index.html @@ -0,0 +1,104 @@ + + + + + LayoutParams + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

LayoutParams

+

The Hikage layout params.

Parameters

current

the current Hikage.

lpClass

the layout params type.

parent

the parent view group.

See also

ViewLayoutParams
+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+

Create the layout params.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/attrs.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/attrs.html new file mode 100644 index 0000000..7822a60 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/attrs.html @@ -0,0 +1,80 @@ + + + + + attrs + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

attrs

+
+

Parameters

attrs

the attributes set.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/id.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/id.html new file mode 100644 index 0000000..4999c52 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/id.html @@ -0,0 +1,80 @@ + + + + + id + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

id

+
+
val id: String?

Parameters

id

the view ID.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/index.html new file mode 100644 index 0000000..6936416 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/index.html @@ -0,0 +1,134 @@ + + + + + PerformerParams + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

PerformerParams

+

The parameters of the Performer.

Parameters

id

the view ID.

attrs

the attributes set.

viewClass

the view class.

+
+
+
+
+
+

Properties

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
val id: String?
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/view-class.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/view-class.html new file mode 100644 index 0000000..6eba33f --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/view-class.html @@ -0,0 +1,80 @@ + + + + + viewClass + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

viewClass

+
+

Parameters

viewClass

the view class.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-layout-params.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-layout-params.html new file mode 100644 index 0000000..b9fe6da --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-layout-params.html @@ -0,0 +1,80 @@ + + + + + LayoutParams + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

LayoutParams

+
+
fun LayoutParams(width: Int = LayoutParamsUnspecified, height: Int = LayoutParamsUnspecified, matchParent: Boolean = false, widthMatchParent: Boolean = false, heightMatchParent: Boolean = false, body: LayoutParamsBody.Hikage<LP> = {}): <Error class: unknown class>

Create a new layout params.

Usage:

View(
lparams = LayoutParams {
// You code here.
}
)

Return

LayoutParams

Parameters

body

the layout params body.

See also

ViewLayoutParams
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-layout.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-layout.html new file mode 100644 index 0000000..a8caf92 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-layout.html @@ -0,0 +1,80 @@ + + + + + Layout + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Layout

+
+
fun Layout(@LayoutRes resId: Int, lparams: Hikage.LayoutParams? = null, id: String? = null): View

Provide layout from resId.

Parameters

resId

the layout resource id.

lparams

the view layout params.

id

the view id, generated by default.


inline fun <VB : ViewBinding> Layout(lparams: Hikage.LayoutParams? = null, id: String? = null): VB

Provide layout from ViewBinding.

Return

VB

Parameters

lparams

the view layout params.

id

the view id, generated by default.


fun Layout(view: View, lparams: Hikage.LayoutParams? = null, id: String? = null): View

Provide layout from exists View.

Return

View

Parameters

view

the view instance.

lparams

the view layout params.

id

the view id, generated by default.


fun Layout(hikage: Hikage, lparams: Hikage.LayoutParams? = null, id: String? = null): Hikage

Provide layout from another Hikage.

  • Note: Hikage view IDs will not copied to this layout when provides a complete Hikage instead of Delegate.

val first: Hikage = Hikageable(context) {
TextView(id = "textView")
}
val second: Hikage = Hikageable(context) {
TextView(id = "textView")
// The view ID "textView" will not copied to this layout,
// so there will be no problem of ID overlap.
Layout(first)
}

Return

Hikage

Parameters

hikage

the hikage instance.

lparams

the view layout params.

id

the view id, generated by default.


fun Layout(delegate: Hikage.Delegate<*>, lparams: Hikage.LayoutParams? = null, id: String? = null, embedded: Boolean = true): Hikage

Provide layout from another Delegate.

  • Note: If you use embedded, you must make sure that the introduced view IDs do not overlap with the view IDs in the current layout.

Return

Hikage

Parameters

delegate

the delegate instance.

lparams

the view layout params.

id

the view id, generated by default.

embedded

whether to embed this layout (All view IDs and performers will be copied), default is true.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-view-group.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-view-group.html new file mode 100644 index 0000000..4360c8a --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-view-group.html @@ -0,0 +1,80 @@ + + + + + ViewGroup + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

ViewGroup

+
+
@JvmName(name = "ViewGroupLP")
inline fun <VG : ViewGroup, LP : ViewGroup.LayoutParams> ViewGroup(lparams: Hikage.LayoutParams? = null, id: String? = null, init: HikageView<VG> = {}, performer: HikagePerformer<LP> = {}): VG

Provide a new ViewGroup instance VG.

Provide the new type of ViewGroup.LayoutParams down via LP.

Return

VG

Parameters

lparams

the view layout params.

id

the view id, generated by default.

init

the view initialization body.

performer

the performer body.


inline fun <VG : ViewGroup> ViewGroup(lparams: Hikage.LayoutParams? = null, id: String? = null, init: HikageView<VG> = {}, performer: HikagePerformer<ViewGroup.LayoutParams> = {}): VG

Provide a new ViewGroup instance VG.

Return

VG

Parameters

lparams

the view layout params.

id

the view id, generated by default.

init

the view initialization body.

performer

the performer body.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-view.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-view.html new file mode 100644 index 0000000..221efe8 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-view.html @@ -0,0 +1,80 @@ + + + + + View + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

View

+
+
@JvmName(name = "ViewTyped")
inline fun <V : View> View(lparams: Hikage.LayoutParams? = null, id: String? = null, init: HikageView<V> = {}): V

Provide a new View instance V.

Return

V

Parameters

lparams

the view layout params.

id

the view id, generated by default.

init

the view initialization body.


inline fun View(lparams: Hikage.LayoutParams? = null, id: String? = null, init: HikageView<View> = {}): View

Provide a new View instance.

Return

View

Parameters

lparams

the view layout params.

id

the view id, generated by default.

init

the view initialization body.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/actual-view-id.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/actual-view-id.html new file mode 100644 index 0000000..97416dc --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/actual-view-id.html @@ -0,0 +1,80 @@ + + + + + actualViewId + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

actualViewId

+
+
open override fun actualViewId(id: String): Int

Get the actual view id by id.

Return

Int or -1.

Parameters

id

the view id.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/bitmap-resource.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/bitmap-resource.html new file mode 100644 index 0000000..c811e8e --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/bitmap-resource.html @@ -0,0 +1,80 @@ + + + + + bitmapResource + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

bitmapResource

+
+
open override fun bitmapResource(@DrawableRes resId: Int): <Error class: unknown class>

Get the Bitmap from resId.

Return

Bitmap

Parameters

resId

the resource id.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/color-resource.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/color-resource.html new file mode 100644 index 0000000..b76fbad --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/color-resource.html @@ -0,0 +1,80 @@ + + + + + colorResource + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

colorResource

+
+
open override fun colorResource(@ColorRes resId: Int): <Error class: unknown class>

Get the color from resId.

Return

Int

Parameters

resId

the resource id.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/dimen-resource.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/dimen-resource.html new file mode 100644 index 0000000..65ec36f --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/dimen-resource.html @@ -0,0 +1,80 @@ + + + + + dimenResource + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

dimenResource

+
+
open override fun dimenResource(@DimenRes resId: Int): Float

Get the dimension from resId.

Return

Float

Parameters

resId

the resource id.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/drawable-resource.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/drawable-resource.html new file mode 100644 index 0000000..caad10a --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/drawable-resource.html @@ -0,0 +1,80 @@ + + + + + drawableResource + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

drawableResource

+
+
open override fun drawableResource(@DrawableRes resId: Int): <Error class: unknown class>

Get the Drawable from resId.

Return

Drawable

Parameters

resId

the resource id.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/font-resource.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/font-resource.html new file mode 100644 index 0000000..c5b3e0a --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/font-resource.html @@ -0,0 +1,80 @@ + + + + + fontResource + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

fontResource

+
+
open override fun fontResource(@FontRes resId: Int): <Error class: unknown class>

Get the font from resId.

Return

Typeface or null.

Parameters

resId

the resource id.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/index.html new file mode 100644 index 0000000..f5548f8 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/index.html @@ -0,0 +1,333 @@ + + + + + Performer + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Performer

+
inner class Performer<LP : ViewGroup.LayoutParams> : Hikage.PerformerScope

The core performer entity of layout build LP.

Parameters

parent

the parent view group.

attachToParent

whether to attach the layout to the parent.

lpClass

the layout params type.

baseContext

the context to create the layout, priority is given to parent's context. if parent is null, it must be set manually.

+
+
+
+
+
+

Properties

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
open val <N : Number> N.dp: N
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open val <N : Number> N.px: N
+
+
+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun actualViewId(id: String): Int

Get the actual view id by id.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun bitmapResource(@DrawableRes resId: Int): <Error class: unknown class>

Get the Bitmap from resId.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun colorResource(@ColorRes resId: Int): <Error class: unknown class>

Get the color from resId.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun dimenResource(@DimenRes resId: Int): Float

Get the dimension from resId.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun drawableResource(@DrawableRes resId: Int): <Error class: unknown class>

Get the Drawable from resId.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun fontResource(@FontRes resId: Int): <Error class: unknown class>

Get the font from resId.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
inline fun <VB : ViewBinding> Layout(lparams: Hikage.LayoutParams? = null, id: String? = null): VB

Provide layout from ViewBinding.

fun Layout(view: View, lparams: Hikage.LayoutParams? = null, id: String? = null): View

Provide layout from exists View.

fun Layout(hikage: Hikage, lparams: Hikage.LayoutParams? = null, id: String? = null): Hikage

Provide layout from another Hikage.

fun Layout(@LayoutRes resId: Int, lparams: Hikage.LayoutParams? = null, id: String? = null): View

Provide layout from resId.

fun Layout(delegate: Hikage.Delegate<*>, lparams: Hikage.LayoutParams? = null, id: String? = null, embedded: Boolean = true): Hikage

Provide layout from another Delegate.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun LayoutParams(width: Int = LayoutParamsUnspecified, height: Int = LayoutParamsUnspecified, matchParent: Boolean = false, widthMatchParent: Boolean = false, heightMatchParent: Boolean = false, body: LayoutParamsBody.Hikage<LP> = {}): <Error class: unknown class>

Create a new layout params.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun stateColorResource(@ColorRes resId: Int): <Error class: unknown class>

Get the ColorStateList from resId.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun stringResource(@StringRes resId: Int, vararg formatArgs: Any): String

Get the string from resId.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun <N : Number> N.toDp(): <Error class: unknown class>
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun <N : Number> N.toPx(): <Error class: unknown class>
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
@JvmName(name = "ViewTyped")
inline fun <V : View> View(lparams: Hikage.LayoutParams? = null, id: String? = null, init: HikageView<V> = {}): V

Provide a new View instance V.

inline fun View(lparams: Hikage.LayoutParams? = null, id: String? = null, init: HikageView<View> = {}): View

Provide a new View instance.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
@JvmName(name = "ViewGroupLP")
inline fun <VG : ViewGroup, LP : ViewGroup.LayoutParams> ViewGroup(lparams: Hikage.LayoutParams? = null, id: String? = null, init: HikageView<VG> = {}, performer: HikagePerformer<LP> = {}): VG
inline fun <VG : ViewGroup> ViewGroup(lparams: Hikage.LayoutParams? = null, id: String? = null, init: HikageView<VG> = {}, performer: HikagePerformer<ViewGroup.LayoutParams> = {}): VG

Provide a new ViewGroup instance VG.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/state-color-resource.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/state-color-resource.html new file mode 100644 index 0000000..b0692eb --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/state-color-resource.html @@ -0,0 +1,80 @@ + + + + + stateColorResource + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

stateColorResource

+
+
open override fun stateColorResource(@ColorRes resId: Int): <Error class: unknown class>

Get the ColorStateList from resId.

Return

Int

Parameters

resId

the resource id.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/string-resource.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/string-resource.html new file mode 100644 index 0000000..888311d --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/string-resource.html @@ -0,0 +1,80 @@ + + + + + stringResource + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

stringResource

+
+
open override fun stringResource(@StringRes resId: Int, vararg formatArgs: Any): String

Get the string from resId.

Return

String

Parameters

resId

the resource id.

formatArgs

the format arguments.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/to-dp.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/to-dp.html new file mode 100644 index 0000000..2ded9e7 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/to-dp.html @@ -0,0 +1,80 @@ + + + + + toDp + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

toDp

+
+
open override fun <N : Number> N.toDp(): <Error class: unknown class>
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/to-px.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/to-px.html new file mode 100644 index 0000000..466c6f4 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/-performer/to-px.html @@ -0,0 +1,80 @@ + + + + + toPx + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

toPx

+
+
open override fun <N : Number> N.toPx(): <Error class: unknown class>
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/get-actual-view-id.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/get-actual-view-id.html new file mode 100644 index 0000000..583a6df --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/get-actual-view-id.html @@ -0,0 +1,80 @@ + + + + + getActualViewId + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

getActualViewId

+
+

Get the actual view id by id.

Return

Int or -1.

Parameters

id

the view id.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/get-or-null.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/get-or-null.html new file mode 100644 index 0000000..2b0f168 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/get-or-null.html @@ -0,0 +1,80 @@ + + + + + getOrNull + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

getOrNull

+
+
fun getOrNull(id: String): <Error class: unknown class>

Get the view by id.

Return

View or null.

Parameters

id

the view id.


@JvmName(name = "getOrNullTyped")
inline fun <V : View> getOrNull(id: String): V?

Get the view by id via V.

Return

V or null.

Parameters

id

the view id.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/get.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/get.html new file mode 100644 index 0000000..d819104 --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/get.html @@ -0,0 +1,80 @@ + + + + + get + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

get

+
+
operator fun get(id: String): Nothing

Get the view by id.

Return

View

Parameters

id

the view id.


@JvmName(name = "getTyped")
inline fun <V : View> get(id: String): V

Get the view by id via V.

Return

V

Parameters

id

the view id.

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/index.html new file mode 100644 index 0000000..307e1fe --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/index.html @@ -0,0 +1,247 @@ + + + + + Hikage + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Hikage

+
class Hikage

The Hikage core layout builder.

A Hikage can have multiple levels of Hikage.Performer.

Parameters

factories

the factories to customize the custom view in the initialization.

+
+
+
+
+
+

Types

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
object Companion
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+

The delegate for Hikage.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+

The Hikage layout params.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
inner class Performer<LP : ViewGroup.LayoutParams> : Hikage.PerformerScope

The core performer entity of layout build LP.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+

The parameters of the Performer.

+
+
+
+
+
+
+
+

Properties

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+

Get the root view.

+
+
+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
operator fun get(id: String): Nothing

Get the view by id.

@JvmName(name = "getTyped")
inline fun <V : View> get(id: String): V

Get the view by id via V.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+

Get the actual view id by id.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun getOrNull(id: String): <Error class: unknown class>

Get the view by id.

@JvmName(name = "getOrNullTyped")
inline fun <V : View> getOrNull(id: String): V?

Get the view by id via V.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
inline fun <V : View> root(): V

Get the root view V.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/root.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/root.html new file mode 100644 index 0000000..3154e4a --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/-hikage/root.html @@ -0,0 +1,80 @@ + + + + + root + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

root

+
+
inline fun <V : View> root(): V

Get the root view V.

Return

V


Get the root view.

Return

View

+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/index.html b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/index.html new file mode 100644 index 0000000..f1be7da --- /dev/null +++ b/KDoc/hikage-core/hikage-core/com.highcapable.hikage.core/index.html @@ -0,0 +1,103 @@ + + + + + com.highcapable.hikage.core + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Package-level declarations

+
+
+
+
+
+

Types

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
class Hikage

The Hikage core layout builder.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/hikage-core/package-list b/KDoc/hikage-core/hikage-core/package-list new file mode 100644 index 0000000..ed2fa4d --- /dev/null +++ b/KDoc/hikage-core/hikage-core/package-list @@ -0,0 +1,121 @@ +$dokka.format:html-v1 +$dokka.linkExtension:html +$dokka.location:com.highcapable.hikage.annotation////PointingToDeclaration/hikage-core/com.highcapable.hikage.annotation/index.html +$dokka.location:com.highcapable.hikage.annotation/HikageView///PointingToDeclaration/hikage-core/com.highcapable.hikage.annotation/-hikage-view/index.html +$dokka.location:com.highcapable.hikage.annotation/HikageView/alias/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.annotation/-hikage-view/alias.html +$dokka.location:com.highcapable.hikage.annotation/HikageView/lparams/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.annotation/-hikage-view/lparams.html +$dokka.location:com.highcapable.hikage.annotation/HikageView/requireInit/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.annotation/-hikage-view/require-init.html +$dokka.location:com.highcapable.hikage.annotation/HikageView/requirePerformer/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.annotation/-hikage-view/require-performer.html +$dokka.location:com.highcapable.hikage.annotation/HikageViewDeclaration///PointingToDeclaration/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/index.html +$dokka.location:com.highcapable.hikage.annotation/HikageViewDeclaration/alias/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/alias.html +$dokka.location:com.highcapable.hikage.annotation/HikageViewDeclaration/lparams/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/lparams.html +$dokka.location:com.highcapable.hikage.annotation/HikageViewDeclaration/requireInit/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/require-init.html +$dokka.location:com.highcapable.hikage.annotation/HikageViewDeclaration/requirePerformer/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/require-performer.html +$dokka.location:com.highcapable.hikage.annotation/HikageViewDeclaration/view/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.annotation/-hikage-view-declaration/view.html +$dokka.location:com.highcapable.hikage.annotation/Hikageable///PointingToDeclaration/hikage-core/com.highcapable.hikage.annotation/-hikageable/index.html +$dokka.location:com.highcapable.hikage.bypass////PointingToDeclaration/hikage-core/com.highcapable.hikage.bypass/index.html +$dokka.location:com.highcapable.hikage.bypass/HikageAttrsView///PointingToDeclaration/hikage-core/com.highcapable.hikage.bypass/-hikage-attrs-view/index.html +$dokka.location:com.highcapable.hikage.core.base////PointingToDeclaration/hikage-core/com.highcapable.hikage.core.base/index.html +$dokka.location:com.highcapable.hikage.core.base//HikageFactory/#android.view.LayoutInflater/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.base/-hikage-factory.html +$dokka.location:com.highcapable.hikage.core.base//HikageFactory/#kotlin.Function4[android.view.ViewGroup?,android.view.View?,android.content.Context,com.highcapable.hikage.core.Hikage.PerformerParams,android.view.View?]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.base/-hikage-factory.html +$dokka.location:com.highcapable.hikage.core.base//Hikageable/#android.content.Context#android.view.ViewGroup?#kotlin.Boolean#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[TypeParam(bounds=[android.view.ViewGroup.LayoutParams])],kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.base/-hikageable.html +$dokka.location:com.highcapable.hikage.core.base//Hikageable/#android.content.Context#android.view.ViewGroup?#kotlin.Boolean#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.view.ViewGroup.LayoutParams],kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.base/-hikageable.html +$dokka.location:com.highcapable.hikage.core.base//Hikageable/#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[TypeParam(bounds=[android.view.ViewGroup.LayoutParams])],kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.base/-hikageable.html +$dokka.location:com.highcapable.hikage.core.base//Hikageable/#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.view.ViewGroup.LayoutParams],kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.base/-hikageable.html +$dokka.location:com.highcapable.hikage.core.base/HikageFactory///PointingToDeclaration/hikage-core/com.highcapable.hikage.core.base/-hikage-factory/index.html +$dokka.location:com.highcapable.hikage.core.base/HikageFactoryBuilder///PointingToDeclaration/hikage-core/com.highcapable.hikage.core.base/-hikage-factory-builder/index.html +$dokka.location:com.highcapable.hikage.core.base/HikageFactoryBuilder/add/#kotlin.Function4[android.view.ViewGroup?,android.view.View?,android.content.Context,com.highcapable.hikage.core.Hikage.PerformerParams,android.view.View?]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.base/-hikage-factory-builder/add.html +$dokka.location:com.highcapable.hikage.core.base/HikageFactoryBuilder/addAll/#kotlin.collections.List[kotlin.Function4[android.view.ViewGroup?,android.view.View?,android.content.Context,com.highcapable.hikage.core.Hikage.PerformerParams,android.view.View?]]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.base/-hikage-factory-builder/add-all.html +$dokka.location:com.highcapable.hikage.core.base/HikagePerformer///PointingToDeclaration/hikage-core/com.highcapable.hikage.core.base/-hikage-performer/index.html +$dokka.location:com.highcapable.hikage.core.base/HikageView///PointingToDeclaration/hikage-core/com.highcapable.hikage.core.base/-hikage-view/index.html +$dokka.location:com.highcapable.hikage.core.builder////PointingToDeclaration/hikage-core/com.highcapable.hikage.core.builder/index.html +$dokka.location:com.highcapable.hikage.core.builder//lazyHikage/android.content.Context#com.highcapable.hikage.core.builder.HikageBuilder#android.view.ViewGroup?#kotlin.Boolean/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.builder/lazy-hikage.html +$dokka.location:com.highcapable.hikage.core.builder/HikageBuilder///PointingToDeclaration/hikage-core/com.highcapable.hikage.core.builder/-hikage-builder/index.html +$dokka.location:com.highcapable.hikage.core.builder/HikageBuilder/build/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.builder/-hikage-builder/build.html +$dokka.location:com.highcapable.hikage.core.extension////PointingToDeclaration/hikage-core/com.highcapable.hikage.core.extension/index.html +$dokka.location:com.highcapable.hikage.core.extension/ResourcesScope///PointingToDeclaration/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/index.html +$dokka.location:com.highcapable.hikage.core.extension/ResourcesScope/bitmapResource/#kotlin.Int/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/bitmap-resource.html +$dokka.location:com.highcapable.hikage.core.extension/ResourcesScope/colorResource/#kotlin.Int/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/color-resource.html +$dokka.location:com.highcapable.hikage.core.extension/ResourcesScope/dimenResource/#kotlin.Int/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/dimen-resource.html +$dokka.location:com.highcapable.hikage.core.extension/ResourcesScope/drawableResource/#kotlin.Int/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/drawable-resource.html +$dokka.location:com.highcapable.hikage.core.extension/ResourcesScope/fontResource/#kotlin.Int/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/font-resource.html +$dokka.location:com.highcapable.hikage.core.extension/ResourcesScope/stateColorResource/#kotlin.Int/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/state-color-resource.html +$dokka.location:com.highcapable.hikage.core.extension/ResourcesScope/stringResource/#kotlin.Int#kotlin.Array[kotlin.Any]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.extension/-resources-scope/string-resource.html +$dokka.location:com.highcapable.hikage.core.preview////PointingToDeclaration/hikage-core/com.highcapable.hikage.core.preview/index.html +$dokka.location:com.highcapable.hikage.core.preview/HikagePreview///PointingToDeclaration/hikage-core/com.highcapable.hikage.core.preview/-hikage-preview/index.html +$dokka.location:com.highcapable.hikage.core.preview/HikagePreview/HikagePreview/#android.content.Context#android.util.AttributeSet?/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.preview/-hikage-preview/-hikage-preview.html +$dokka.location:com.highcapable.hikage.core.runtime////PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/index.html +$dokka.location:com.highcapable.hikage.core.runtime//mutableStateOf/#TypeParam(bounds=[kotlin.Any?])/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/mutable-state-of.html +$dokka.location:com.highcapable.hikage.core.runtime//mutableStateOfNull/#TypeParam(bounds=[kotlin.Any?])?/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/mutable-state-of-null.html +$dokka.location:com.highcapable.hikage.core.runtime//setState/TypeParam(bounds=[kotlin.Any?])#com.highcapable.hikage.core.runtime.NonNullState[TypeParam(bounds=[kotlin.Any?])]#kotlin.Function2[TypeParam(bounds=[kotlin.Any?]),TypeParam(bounds=[kotlin.Any?]),kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/set-state.html +$dokka.location:com.highcapable.hikage.core.runtime//setState/TypeParam(bounds=[kotlin.Any?])#com.highcapable.hikage.core.runtime.NullableState[TypeParam(bounds=[kotlin.Any?])]#kotlin.Function2[TypeParam(bounds=[kotlin.Any?]),TypeParam(bounds=[kotlin.Any?])?,kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/set-state.html +$dokka.location:com.highcapable.hikage.core.runtime/MutableState.NonNull///PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/index.html +$dokka.location:com.highcapable.hikage.core.runtime/MutableState.NonNull/getValue/#kotlin.Any?#kotlin.reflect.KProperty[*]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/get-value.html +$dokka.location:com.highcapable.hikage.core.runtime/MutableState.NonNull/observe/#kotlin.Function1[TypeParam(bounds=[kotlin.Any?]),kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/observe.html +$dokka.location:com.highcapable.hikage.core.runtime/MutableState.NonNull/setValue/#kotlin.Any?#kotlin.reflect.KProperty[*]#TypeParam(bounds=[kotlin.Any?])/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/set-value.html +$dokka.location:com.highcapable.hikage.core.runtime/MutableState.NonNull/value/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-non-null/value.html +$dokka.location:com.highcapable.hikage.core.runtime/MutableState.Nullable///PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/index.html +$dokka.location:com.highcapable.hikage.core.runtime/MutableState.Nullable/getValue/#kotlin.Any?#kotlin.reflect.KProperty[*]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/get-value.html +$dokka.location:com.highcapable.hikage.core.runtime/MutableState.Nullable/observe/#kotlin.Function1[TypeParam(bounds=[kotlin.Any?])?,kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/observe.html +$dokka.location:com.highcapable.hikage.core.runtime/MutableState.Nullable/setValue/#kotlin.Any?#kotlin.reflect.KProperty[*]#TypeParam(bounds=[kotlin.Any?])?/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/set-value.html +$dokka.location:com.highcapable.hikage.core.runtime/MutableState.Nullable/value/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/-nullable/value.html +$dokka.location:com.highcapable.hikage.core.runtime/MutableState///PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-mutable-state/index.html +$dokka.location:com.highcapable.hikage.core.runtime/NonNullState///PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-non-null-state/index.html +$dokka.location:com.highcapable.hikage.core.runtime/NonNullState/observe/#kotlin.Function1[TypeParam(bounds=[kotlin.Any?]),kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-non-null-state/observe.html +$dokka.location:com.highcapable.hikage.core.runtime/NonNullState/value/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-non-null-state/value.html +$dokka.location:com.highcapable.hikage.core.runtime/NullableState///PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-nullable-state/index.html +$dokka.location:com.highcapable.hikage.core.runtime/NullableState/observe/#kotlin.Function1[TypeParam(bounds=[kotlin.Any?])?,kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-nullable-state/observe.html +$dokka.location:com.highcapable.hikage.core.runtime/NullableState/value/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-nullable-state/value.html +$dokka.location:com.highcapable.hikage.core.runtime/State///PointingToDeclaration/hikage-core/com.highcapable.hikage.core.runtime/-state/index.html +$dokka.location:com.highcapable.hikage.core////PointingToDeclaration/hikage-core/com.highcapable.hikage.core/index.html +$dokka.location:com.highcapable.hikage.core/Hikage.Companion///PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-companion/index.html +$dokka.location:com.highcapable.hikage.core/Hikage.Companion/build/#java.lang.Class[TypeParam(bounds=[android.view.ViewGroup.LayoutParams])]#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[TypeParam(bounds=[android.view.ViewGroup.LayoutParams])],kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-companion/build.html +$dokka.location:com.highcapable.hikage.core/Hikage.Companion/build/#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[TypeParam(bounds=[android.view.ViewGroup.LayoutParams])],kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-companion/build.html +$dokka.location:com.highcapable.hikage.core/Hikage.Companion/build/#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.view.ViewGroup.LayoutParams],kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-companion/build.html +$dokka.location:com.highcapable.hikage.core/Hikage.Companion/create/#android.content.Context#android.view.ViewGroup?#kotlin.Boolean#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[TypeParam(bounds=[android.view.ViewGroup.LayoutParams])],kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-companion/create.html +$dokka.location:com.highcapable.hikage.core/Hikage.Companion/create/#android.content.Context#android.view.ViewGroup?#kotlin.Boolean#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.view.ViewGroup.LayoutParams],kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-companion/create.html +$dokka.location:com.highcapable.hikage.core/Hikage.Companion/create/#java.lang.Class[TypeParam(bounds=[android.view.ViewGroup.LayoutParams])]#android.content.Context#android.view.ViewGroup?#kotlin.Boolean#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[TypeParam(bounds=[android.view.ViewGroup.LayoutParams])],kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-companion/create.html +$dokka.location:com.highcapable.hikage.core/Hikage.Companion/isAutoProcessWithFactory2/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-companion/is-auto-process-with-factory2.html +$dokka.location:com.highcapable.hikage.core/Hikage.Delegate///PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-delegate/index.html +$dokka.location:com.highcapable.hikage.core/Hikage.Delegate/create/#android.content.Context#android.view.ViewGroup?#kotlin.Boolean/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-delegate/create.html +$dokka.location:com.highcapable.hikage.core/Hikage.LayoutParams///PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-layout-params/index.html +$dokka.location:com.highcapable.hikage.core/Hikage.LayoutParams/create/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-layout-params/create.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer///PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/index.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/Layout/#android.view.View#com.highcapable.hikage.core.Hikage.LayoutParams?#kotlin.String?/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-layout.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/Layout/#com.highcapable.hikage.core.Hikage#com.highcapable.hikage.core.Hikage.LayoutParams?#kotlin.String?/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-layout.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/Layout/#com.highcapable.hikage.core.Hikage.Delegate[*]#com.highcapable.hikage.core.Hikage.LayoutParams?#kotlin.String?#kotlin.Boolean/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-layout.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/Layout/#com.highcapable.hikage.core.Hikage.LayoutParams?#kotlin.String?/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-layout.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/Layout/#kotlin.Int#com.highcapable.hikage.core.Hikage.LayoutParams?#kotlin.String?/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-layout.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/LayoutParams/#kotlin.Int#kotlin.Int#kotlin.Boolean#kotlin.Boolean#kotlin.Boolean#kotlin.Function1[TypeParam(bounds=[android.view.ViewGroup.LayoutParams]),kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-layout-params.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/View/#com.highcapable.hikage.core.Hikage.LayoutParams?#kotlin.String?#kotlin.Function1[TypeParam(bounds=[android.view.View]),kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-view.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/View/#com.highcapable.hikage.core.Hikage.LayoutParams?#kotlin.String?#kotlin.Function1[android.view.View,kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-view.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/ViewGroup/#com.highcapable.hikage.core.Hikage.LayoutParams?#kotlin.String?#kotlin.Function1[TypeParam(bounds=[android.view.ViewGroup]),kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[TypeParam(bounds=[android.view.ViewGroup.LayoutParams])],kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-view-group.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/ViewGroup/#com.highcapable.hikage.core.Hikage.LayoutParams?#kotlin.String?#kotlin.Function1[TypeParam(bounds=[android.view.ViewGroup]),kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.view.ViewGroup.LayoutParams],kotlin.Unit]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/-view-group.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/actualViewId/#kotlin.String/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/actual-view-id.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/bitmapResource/#kotlin.Int/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/bitmap-resource.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/colorResource/#kotlin.Int/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/color-resource.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/dimenResource/#kotlin.Int/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/dimen-resource.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/drawableResource/#kotlin.Int/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/drawable-resource.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/fontResource/#kotlin.Int/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/font-resource.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/stateColorResource/#kotlin.Int/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/state-color-resource.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/stringResource/#kotlin.Int#kotlin.Array[kotlin.Any]/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/string-resource.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/toDp/TypeParam(bounds=[kotlin.Number])#/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/to-dp.html +$dokka.location:com.highcapable.hikage.core/Hikage.Performer/toPx/TypeParam(bounds=[kotlin.Number])#/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer/to-px.html +$dokka.location:com.highcapable.hikage.core/Hikage.PerformerParams///PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/index.html +$dokka.location:com.highcapable.hikage.core/Hikage.PerformerParams/attrs/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/attrs.html +$dokka.location:com.highcapable.hikage.core/Hikage.PerformerParams/id/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/id.html +$dokka.location:com.highcapable.hikage.core/Hikage.PerformerParams/viewClass/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/-performer-params/view-class.html +$dokka.location:com.highcapable.hikage.core/Hikage///PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/index.html +$dokka.location:com.highcapable.hikage.core/Hikage/get/#kotlin.String/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/get.html +$dokka.location:com.highcapable.hikage.core/Hikage/getActualViewId/#kotlin.String/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/get-actual-view-id.html +$dokka.location:com.highcapable.hikage.core/Hikage/getOrNull/#kotlin.String/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/get-or-null.html +$dokka.location:com.highcapable.hikage.core/Hikage/root/#/PointingToDeclaration/hikage-core/com.highcapable.hikage.core/-hikage/root.html +com.highcapable.hikage.annotation +com.highcapable.hikage.bypass +com.highcapable.hikage.core +com.highcapable.hikage.core.base +com.highcapable.hikage.core.builder +com.highcapable.hikage.core.extension +com.highcapable.hikage.core.preview +com.highcapable.hikage.core.runtime + diff --git a/KDoc/hikage-core/images/anchor-copy-button.svg b/KDoc/hikage-core/images/anchor-copy-button.svg new file mode 100644 index 0000000..19c1fa3 --- /dev/null +++ b/KDoc/hikage-core/images/anchor-copy-button.svg @@ -0,0 +1,8 @@ + + + + + + diff --git a/KDoc/hikage-core/images/arrow_down.svg b/KDoc/hikage-core/images/arrow_down.svg new file mode 100644 index 0000000..639aaf1 --- /dev/null +++ b/KDoc/hikage-core/images/arrow_down.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-core/images/burger.svg b/KDoc/hikage-core/images/burger.svg new file mode 100644 index 0000000..fcca732 --- /dev/null +++ b/KDoc/hikage-core/images/burger.svg @@ -0,0 +1,9 @@ + + + + + + + diff --git a/KDoc/hikage-core/images/copy-icon.svg b/KDoc/hikage-core/images/copy-icon.svg new file mode 100644 index 0000000..2cb02ec --- /dev/null +++ b/KDoc/hikage-core/images/copy-icon.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-core/images/copy-successful-icon.svg b/KDoc/hikage-core/images/copy-successful-icon.svg new file mode 100644 index 0000000..c4b9538 --- /dev/null +++ b/KDoc/hikage-core/images/copy-successful-icon.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-core/images/footer-go-to-link.svg b/KDoc/hikage-core/images/footer-go-to-link.svg new file mode 100644 index 0000000..a87add7 --- /dev/null +++ b/KDoc/hikage-core/images/footer-go-to-link.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-core/images/go-to-top-icon.svg b/KDoc/hikage-core/images/go-to-top-icon.svg new file mode 100644 index 0000000..abc3d1c --- /dev/null +++ b/KDoc/hikage-core/images/go-to-top-icon.svg @@ -0,0 +1,8 @@ + + + + + + diff --git a/KDoc/hikage-core/images/homepage.svg b/KDoc/hikage-core/images/homepage.svg new file mode 100644 index 0000000..e3c83b1 --- /dev/null +++ b/KDoc/hikage-core/images/homepage.svg @@ -0,0 +1,3 @@ + + + diff --git a/KDoc/hikage-core/images/logo-icon.svg b/KDoc/hikage-core/images/logo-icon.svg new file mode 100644 index 0000000..e42f957 --- /dev/null +++ b/KDoc/hikage-core/images/logo-icon.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + diff --git a/KDoc/hikage-core/images/nav-icons/abstract-class-kotlin.svg b/KDoc/hikage-core/images/nav-icons/abstract-class-kotlin.svg new file mode 100644 index 0000000..19d6148 --- /dev/null +++ b/KDoc/hikage-core/images/nav-icons/abstract-class-kotlin.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/KDoc/hikage-core/images/nav-icons/abstract-class.svg b/KDoc/hikage-core/images/nav-icons/abstract-class.svg new file mode 100644 index 0000000..6018203 --- /dev/null +++ b/KDoc/hikage-core/images/nav-icons/abstract-class.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/KDoc/hikage-core/images/nav-icons/annotation-kotlin.svg b/KDoc/hikage-core/images/nav-icons/annotation-kotlin.svg new file mode 100644 index 0000000..b90f508 --- /dev/null +++ b/KDoc/hikage-core/images/nav-icons/annotation-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-core/images/nav-icons/annotation.svg b/KDoc/hikage-core/images/nav-icons/annotation.svg new file mode 100644 index 0000000..b80c54b --- /dev/null +++ b/KDoc/hikage-core/images/nav-icons/annotation.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-core/images/nav-icons/class-kotlin.svg b/KDoc/hikage-core/images/nav-icons/class-kotlin.svg new file mode 100644 index 0000000..797a242 --- /dev/null +++ b/KDoc/hikage-core/images/nav-icons/class-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-core/images/nav-icons/class.svg b/KDoc/hikage-core/images/nav-icons/class.svg new file mode 100644 index 0000000..3f1ad16 --- /dev/null +++ b/KDoc/hikage-core/images/nav-icons/class.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-core/images/nav-icons/enum-kotlin.svg b/KDoc/hikage-core/images/nav-icons/enum-kotlin.svg new file mode 100644 index 0000000..775a7cc --- /dev/null +++ b/KDoc/hikage-core/images/nav-icons/enum-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-core/images/nav-icons/enum.svg b/KDoc/hikage-core/images/nav-icons/enum.svg new file mode 100644 index 0000000..fa7f247 --- /dev/null +++ b/KDoc/hikage-core/images/nav-icons/enum.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-core/images/nav-icons/exception-class.svg b/KDoc/hikage-core/images/nav-icons/exception-class.svg new file mode 100644 index 0000000..c0b2bde --- /dev/null +++ b/KDoc/hikage-core/images/nav-icons/exception-class.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-core/images/nav-icons/field-value.svg b/KDoc/hikage-core/images/nav-icons/field-value.svg new file mode 100644 index 0000000..2771ee5 --- /dev/null +++ b/KDoc/hikage-core/images/nav-icons/field-value.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/KDoc/hikage-core/images/nav-icons/field-variable.svg b/KDoc/hikage-core/images/nav-icons/field-variable.svg new file mode 100644 index 0000000..e2d2bbd --- /dev/null +++ b/KDoc/hikage-core/images/nav-icons/field-variable.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/KDoc/hikage-core/images/nav-icons/function.svg b/KDoc/hikage-core/images/nav-icons/function.svg new file mode 100644 index 0000000..f0da64a --- /dev/null +++ b/KDoc/hikage-core/images/nav-icons/function.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-core/images/nav-icons/interface-kotlin.svg b/KDoc/hikage-core/images/nav-icons/interface-kotlin.svg new file mode 100644 index 0000000..5e16326 --- /dev/null +++ b/KDoc/hikage-core/images/nav-icons/interface-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-core/images/nav-icons/interface.svg b/KDoc/hikage-core/images/nav-icons/interface.svg new file mode 100644 index 0000000..32063ba --- /dev/null +++ b/KDoc/hikage-core/images/nav-icons/interface.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-core/images/nav-icons/object.svg b/KDoc/hikage-core/images/nav-icons/object.svg new file mode 100644 index 0000000..31f0ee3 --- /dev/null +++ b/KDoc/hikage-core/images/nav-icons/object.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-core/images/nav-icons/typealias-kotlin.svg b/KDoc/hikage-core/images/nav-icons/typealias-kotlin.svg new file mode 100644 index 0000000..f4bb238 --- /dev/null +++ b/KDoc/hikage-core/images/nav-icons/typealias-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-core/images/theme-toggle.svg b/KDoc/hikage-core/images/theme-toggle.svg new file mode 100644 index 0000000..df86202 --- /dev/null +++ b/KDoc/hikage-core/images/theme-toggle.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-core/index.html b/KDoc/hikage-core/index.html new file mode 100644 index 0000000..ea2405b --- /dev/null +++ b/KDoc/hikage-core/index.html @@ -0,0 +1,225 @@ + + + + + hikage-core + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

hikage-core

+
+

Packages

+
+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+
+
+ +
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+
+
+ +
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+
+
+ +
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+
+
+ +
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+
+
+ +
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+
+
+ +
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+
+
+ +
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-core/navigation.html b/KDoc/hikage-core/navigation.html new file mode 100644 index 0000000..eea7e38 --- /dev/null +++ b/KDoc/hikage-core/navigation.html @@ -0,0 +1,115 @@ +
+
hikage-core
+
+ + + + +
+
+ + +
+
+ +
+ +
+ +
+
+ +
+ +
+ +
+ +
+
+
+ + + + + + + +
+
+ + + +
+
+ + +
+
+ + +
+
+ +
+ +
+ +
+
+ +
+
+ + + + + +
+ +
+
+
+ diff --git a/KDoc/hikage-core/scripts/clipboard.js b/KDoc/hikage-core/scripts/clipboard.js new file mode 100644 index 0000000..7a4f33c --- /dev/null +++ b/KDoc/hikage-core/scripts/clipboard.js @@ -0,0 +1,56 @@ +/* + * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license. + */ + +window.addEventListener('load', () => { + document.querySelectorAll('span.copy-icon').forEach(element => { + element.addEventListener('click', (el) => copyElementsContentToClipboard(element)); + }) + + document.querySelectorAll('span.anchor-icon').forEach(element => { + element.addEventListener('click', (el) => { + if(element.hasAttribute('pointing-to')){ + const location = hrefWithoutCurrentlyUsedAnchor() + '#' + element.getAttribute('pointing-to') + copyTextToClipboard(element, location) + } + }); + }) +}) + +const copyElementsContentToClipboard = (element) => { + const selection = window.getSelection(); + const range = document.createRange(); + range.selectNodeContents(element.parentNode.parentNode); + selection.removeAllRanges(); + selection.addRange(range); + + copyAndShowPopup(element, () => selection.removeAllRanges()) +} + +const copyTextToClipboard = (element, text) => { + var textarea = document.createElement("textarea"); + textarea.textContent = text; + textarea.style.position = "fixed"; + document.body.appendChild(textarea); + textarea.select(); + + copyAndShowPopup(element, () => document.body.removeChild(textarea)) +} + +const copyAndShowPopup = (element, after) => { + try { + document.execCommand('copy'); + element.nextElementSibling.classList.add('active-popup'); + setTimeout(() => { + element.nextElementSibling.classList.remove('active-popup'); + }, 1200); + } catch (e) { + console.error('Failed to write to clipboard:', e) + } + finally { + if(after) after() + } +} + +const hrefWithoutCurrentlyUsedAnchor = () => window.location.href.split('#')[0] + diff --git a/KDoc/hikage-core/scripts/main.js b/KDoc/hikage-core/scripts/main.js new file mode 100644 index 0000000..ba6c347 --- /dev/null +++ b/KDoc/hikage-core/scripts/main.js @@ -0,0 +1,44 @@ +(()=>{var e={8527:e=>{e.exports=''},5570:e=>{e.exports=''},107:e=>{e.exports=''},7224:e=>{e.exports=''},538:e=>{e.exports=''},1924:(e,n,t)=>{"use strict";var r=t(210),o=t(5559),i=o(r("String.prototype.indexOf"));e.exports=function(e,n){var t=r(e,!!n);return"function"==typeof t&&i(e,".prototype.")>-1?o(t):t}},5559:(e,n,t)=>{"use strict";var r=t(8612),o=t(210),i=o("%Function.prototype.apply%"),a=o("%Function.prototype.call%"),l=o("%Reflect.apply%",!0)||r.call(a,i),c=o("%Object.getOwnPropertyDescriptor%",!0),u=o("%Object.defineProperty%",!0),s=o("%Math.max%");if(u)try{u({},"a",{value:1})}catch(e){u=null}e.exports=function(e){var n=l(r,a,arguments);if(c&&u){var t=c(n,"length");t.configurable&&u(n,"length",{value:1+s(0,e.length-(arguments.length-1))})}return n};var f=function(){return l(r,i,arguments)};u?u(e.exports,"apply",{value:f}):e.exports.apply=f},4184:(e,n)=>{var t; +/*! + Copyright (c) 2018 Jed Watson. + Licensed under the MIT License (MIT), see + http://jedwatson.github.io/classnames +*/!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e=[],n=0;n{"use strict";e.exports=function(e,n){var t=this,r=t.constructor;return t.options=Object.assign({storeInstancesGlobally:!0},n||{}),t.callbacks={},t.directMap={},t.sequenceLevels={},t.resetTimer=null,t.ignoreNextKeyup=!1,t.ignoreNextKeypress=!1,t.nextExpectedAction=!1,t.element=e,t.addEvents(),t.options.storeInstancesGlobally&&r.instances.push(t),t},e.exports.prototype.bind=t(2207),e.exports.prototype.bindMultiple=t(3396),e.exports.prototype.unbind=t(9208),e.exports.prototype.trigger=t(9855),e.exports.prototype.reset=t(6214),e.exports.prototype.stopCallback=t(3450),e.exports.prototype.handleKey=t(3067),e.exports.prototype.addEvents=t(718),e.exports.prototype.bindSingle=t(8763),e.exports.prototype.getKeyInfo=t(5825),e.exports.prototype.pickBestAction=t(8608),e.exports.prototype.getReverseMap=t(3956),e.exports.prototype.getMatches=t(3373),e.exports.prototype.resetSequences=t(3346),e.exports.prototype.fireCallback=t(2684),e.exports.prototype.bindSequence=t(7103),e.exports.prototype.resetSequenceTimer=t(7309),e.exports.prototype.detach=t(7554),e.exports.instances=[],e.exports.reset=t(1822),e.exports.REVERSE_MAP=null},718:(e,n,t)=>{"use strict";e.exports=function(){var e=this,n=t(4323),r=e.element;e.eventHandler=t(9646).bind(e),n(r,"keypress",e.eventHandler),n(r,"keydown",e.eventHandler),n(r,"keyup",e.eventHandler)}},2207:e=>{"use strict";e.exports=function(e,n,t){return e=e instanceof Array?e:[e],this.bindMultiple(e,n,t),this}},3396:e=>{"use strict";e.exports=function(e,n,t){for(var r=0;r{"use strict";e.exports=function(e,n,r,o){var i=this;function a(n){return function(){i.nextExpectedAction=n,++i.sequenceLevels[e],i.resetSequenceTimer()}}function l(n){var a;i.fireCallback(r,n,e),"keyup"!==o&&(a=t(6770),i.ignoreNextKeyup=a(n)),setTimeout((function(){i.resetSequences()}),10)}i.sequenceLevels[e]=0;for(var c=0;c{"use strict";e.exports=function(e,n,t,r,o){var i=this;i.directMap[e+":"+t]=n;var a,l=(e=e.replace(/\s+/g," ")).split(" ");l.length>1?i.bindSequence(e,l,n,t):(a=i.getKeyInfo(e,t),i.callbacks[a.key]=i.callbacks[a.key]||[],i.getMatches(a.key,a.modifiers,{type:a.action},r,e,o),i.callbacks[a.key][r?"unshift":"push"]({callback:n,modifiers:a.modifiers,action:a.action,seq:r,level:o,combo:e}))}},7554:(e,n,t)=>{var r=t(4323).off;e.exports=function(){var e=this,n=e.element;r(n,"keypress",e.eventHandler),r(n,"keydown",e.eventHandler),r(n,"keyup",e.eventHandler)}},4323:e=>{function n(e,n,t,r){return!e.addEventListener&&(n="on"+n),(e.addEventListener||e.attachEvent).call(e,n,t,r),t}e.exports=n,e.exports.on=n,e.exports.off=function(e,n,t,r){return!e.removeEventListener&&(n="on"+n),(e.removeEventListener||e.detachEvent).call(e,n,t,r),t}},2684:(e,n,t)=>{"use strict";e.exports=function(e,n,r,o){this.stopCallback(n,n.target||n.srcElement,r,o)||!1===e(n,r)&&(t(1350)(n),t(6103)(n))}},5825:(e,n,t)=>{"use strict";e.exports=function(e,n){var r,o,i,a,l,c,u=[];for(r=t(4520)(e),a=t(7549),l=t(5355),c=t(8581),i=0;i{"use strict";e.exports=function(e,n,r,o,i,a){var l,c,u,s,f=this,p=[],d=r.type;"keypress"!==d||r.code&&"Arrow"===r.code.slice(0,5)||(f.callbacks["any-character"]||[]).forEach((function(e){p.push(e)}));if(!f.callbacks[e])return p;for(u=t(8581),"keyup"===d&&u(e)&&(n=[e]),l=0;l{"use strict";e.exports=function(){var e,n=this.constructor;if(!n.REVERSE_MAP)for(var r in n.REVERSE_MAP={},e=t(4766))r>95&&r<112||e.hasOwnProperty(r)&&(n.REVERSE_MAP[e[r]]=r);return n.REVERSE_MAP}},3067:(e,n,t)=>{"use strict";e.exports=function(e,n,r){var o,i,a,l,c=this,u={},s=0,f=!1;for(o=c.getMatches(e,n,r),i=0;i{"use strict";e.exports=function(e){var n,r=this;"number"!=typeof e.which&&(e.which=e.keyCode);var o=t(6770)(e);void 0!==o&&("keyup"!==e.type||r.ignoreNextKeyup!==o?(n=t(4610),r.handleKey(o,n(e),e)):r.ignoreNextKeyup=!1)}},5532:e=>{"use strict";e.exports=function(e,n){return e.sort().join(",")===n.sort().join(",")}},8608:e=>{"use strict";e.exports=function(e,n,t){return t||(t=this.getReverseMap()[e]?"keydown":"keypress"),"keypress"===t&&n.length&&(t="keydown"),t}},6214:e=>{"use strict";e.exports=function(){return this.callbacks={},this.directMap={},this}},7309:e=>{"use strict";e.exports=function(){var e=this;clearTimeout(e.resetTimer),e.resetTimer=setTimeout((function(){e.resetSequences()}),1e3)}},3346:e=>{"use strict";e.exports=function(e){var n=this;e=e||{};var t,r=!1;for(t in n.sequenceLevels)e[t]?r=!0:n.sequenceLevels[t]=0;r||(n.nextExpectedAction=!1)}},3450:e=>{"use strict";e.exports=function(e,n){if((" "+n.className+" ").indexOf(" combokeys ")>-1)return!1;var t=n.tagName.toLowerCase();return"input"===t||"select"===t||"textarea"===t||n.isContentEditable}},9855:e=>{"use strict";e.exports=function(e,n){return this.directMap[e+":"+n]&&this.directMap[e+":"+n]({},e),this}},9208:e=>{"use strict";e.exports=function(e,n){return this.bind(e,(function(){}),n)}},1822:e=>{"use strict";e.exports=function(){this.instances.forEach((function(e){e.reset()}))}},6770:(e,n,t)=>{"use strict";e.exports=function(e){var n,r;if(n=t(4766),r=t(5295),"keypress"===e.type){var o=String.fromCharCode(e.which);return e.shiftKey||(o=o.toLowerCase()),o}return void 0!==n[e.which]?n[e.which]:void 0!==r[e.which]?r[e.which]:String.fromCharCode(e.which).toLowerCase()}},4610:e=>{"use strict";e.exports=function(e){var n=[];return e.shiftKey&&n.push("shift"),e.altKey&&n.push("alt"),e.ctrlKey&&n.push("ctrl"),e.metaKey&&n.push("meta"),n}},8581:e=>{"use strict";e.exports=function(e){return"shift"===e||"ctrl"===e||"alt"===e||"meta"===e}},4520:e=>{"use strict";e.exports=function(e){return"+"===e?["+"]:e.split("+")}},1350:e=>{"use strict";e.exports=function(e){e.preventDefault?e.preventDefault():e.returnValue=!1}},5355:e=>{"use strict";e.exports={"~":"`","!":"1","@":"2","#":"3",$:"4","%":"5","^":"6","&":"7","*":"8","(":"9",")":"0",_:"-","+":"=",":":";",'"':"'","<":",",">":".","?":"/","|":"\\"}},7549:e=>{"use strict";e.exports={option:"alt",command:"meta",return:"enter",escape:"esc",mod:/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"meta":"ctrl"}},5295:e=>{"use strict";e.exports={106:"*",107:"plus",109:"minus",110:".",111:"/",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"}},4766:e=>{"use strict";e.exports={8:"backspace",9:"tab",13:"enter",16:"shift",17:"ctrl",18:"alt",20:"capslock",27:"esc",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"ins",46:"del",91:"meta",93:"meta",173:"minus",187:"plus",189:"minus",224:"meta"};for(var n=1;n<20;++n)e.exports[111+n]="f"+n;for(n=0;n<=9;++n)e.exports[n+96]=n},6103:e=>{"use strict";e.exports=function(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}},3362:()=>{var e;!function(){var e=Math.PI,n=2*e,t=e/180,r=document.createElement("div");document.head.appendChild(r);var o=self.ConicGradient=function(e){o.all.push(this),e=e||{},this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d"),this.repeating=!!e.repeating,this.size=e.size||Math.max(innerWidth,innerHeight),this.canvas.width=this.canvas.height=this.size;var n=e.stops;this.stops=(n||"").split(/\s*,(?![^(]*\))\s*/),this.from=0;for(var t=0;t0){var i=this.stops[0].clone();i.pos=0,this.stops.unshift(i)}if(void 0===this.stops[this.stops.length-1].pos)this.stops[this.stops.length-1].pos=1;else if(!this.repeating&&this.stops[this.stops.length-1].pos<1){var a=this.stops[this.stops.length-1].clone();a.pos=1,this.stops.push(a)}if(this.stops.forEach((function(e,n){if(void 0===e.pos){for(var t=n+1;this[t];t++)if(void 0!==this[t].pos){e.pos=this[n-1].pos+(this[t].pos-this[n-1].pos)/(t-n+1);break}}else n>0&&(e.pos=Math.max(e.pos,this[n-1].pos))}),this.stops),this.repeating){var l=(n=this.stops.slice())[n.length-1].pos-n[0].pos;for(t=0;this.stops[this.stops.length-1].pos<1&&t<1e4;t++)for(var c=0;c'},get png(){return this.canvas.toDataURL()},get r(){return Math.sqrt(2)*this.size/2},paint:function(){var e,n,r,o=this.context,i=this.r,a=this.size/2,l=0,c=this.stops[l];o.translate(this.size/2,this.size/2),o.rotate(-90*t),o.rotate(this.from*t),o.translate(-this.size/2,-this.size/2);for(var u=0;u<360;){if(u/360+1e-5>=c.pos){do{e=c,l++,c=this.stops[l]}while(c&&c!=e&&c.pos===e.pos);if(!c)break;var s=e.color+""==c.color+""&&e!=c;n=e.color.map((function(e,n){return c.color[n]-e}))}r=(u/360-e.pos)/(c.pos-e.pos);var f=s?c.color:n.map((function(n,t){var o=n*r+e.color[t];return t<3?255&o:o}));if(o.fillStyle="rgba("+f.join(",")+")",o.beginPath(),o.moveTo(a,a),s)var p=360*(c.pos-e.pos);else p=.5;var d=u*t,h=(d=Math.min(360*t,d))+p*t;h=Math.min(360*t,h+.02),o.arc(a,a,i,d,h),o.closePath(),o.fill(),u+=p}}},o.ColorStop=function(e,t){if(this.gradient=e,t){var r=t.match(/^(.+?)(?:\s+([\d.]+)(%|deg|turn|grad|rad)?)?(?:\s+([\d.]+)(%|deg|turn|grad|rad)?)?\s*$/);if(this.color=o.ColorStop.colorToRGBA(r[1]),r[2]){var i=r[3];"%"==i||"0"===r[2]&&!i?this.pos=r[2]/100:"turn"==i?this.pos=+r[2]:"deg"==i?this.pos=r[2]/360:"grad"==i?this.pos=r[2]/400:"rad"==i&&(this.pos=r[2]/n)}r[4]&&(this.next=new o.ColorStop(e,r[1]+" "+r[4]+r[5]))}},o.ColorStop.prototype={clone:function(){var e=new o.ColorStop(this.gradient);return e.color=this.color,e.pos=this.pos,e},toString:function(){return"rgba("+this.color.join(", ")+") "+100*this.pos+"%"}},o.ColorStop.colorToRGBA=function(e){if(!Array.isArray(e)&&-1==e.indexOf("from")){r.style.color=e;var n=getComputedStyle(r).color.match(/rgba?\(([\d.]+), ([\d.]+), ([\d.]+)(?:, ([\d.]+))?\)/);return n&&(n.shift(),(n=n.map((function(e){return+e})))[3]=isNaN(n[3])?1:n[3]),n||[0,0,0,0]}return e}}(),self.StyleFix&&((e=document.createElement("p")).style.backgroundImage="conic-gradient(white, black)",e.style.backgroundImage=PrefixFree.prefix+"conic-gradient(white, black)",e.style.backgroundImage||StyleFix.register((function(e,n){return e.indexOf("conic-gradient")>-1&&(e=e.replace(/(?:repeating-)?conic-gradient\(\s*((?:\([^()]+\)|[^;()}])+?)\)/g,(function(e,n){return new ConicGradient({stops:n,repeating:e.indexOf("repeating-")>-1})}))),e})))},9662:(e,n,t)=>{var r=t(7854),o=t(614),i=t(6330),a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not a function")}},9483:(e,n,t)=>{var r=t(7854),o=t(4411),i=t(6330),a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not a constructor")}},6077:(e,n,t)=>{var r=t(7854),o=t(614),i=r.String,a=r.TypeError;e.exports=function(e){if("object"==typeof e||o(e))return e;throw a("Can't set "+i(e)+" as a prototype")}},1223:(e,n,t)=>{var r=t(5112),o=t(30),i=t(3070),a=r("unscopables"),l=Array.prototype;null==l[a]&&i.f(l,a,{configurable:!0,value:o(null)}),e.exports=function(e){l[a][e]=!0}},1530:(e,n,t)=>{"use strict";var r=t(8710).charAt;e.exports=function(e,n,t){return n+(t?r(e,n).length:1)}},5787:(e,n,t)=>{var r=t(7854),o=t(7976),i=r.TypeError;e.exports=function(e,n){if(o(n,e))return e;throw i("Incorrect invocation")}},9670:(e,n,t)=>{var r=t(7854),o=t(111),i=r.String,a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not an object")}},7556:(e,n,t)=>{var r=t(7293);e.exports=r((function(){if("function"==typeof ArrayBuffer){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}))},8533:(e,n,t)=>{"use strict";var r=t(2092).forEach,o=t(9341)("forEach");e.exports=o?[].forEach:function(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}},8457:(e,n,t)=>{"use strict";var r=t(7854),o=t(9974),i=t(6916),a=t(7908),l=t(3411),c=t(7659),u=t(4411),s=t(6244),f=t(6135),p=t(8554),d=t(1246),h=r.Array;e.exports=function(e){var n=a(e),t=u(this),r=arguments.length,g=r>1?arguments[1]:void 0,v=void 0!==g;v&&(g=o(g,r>2?arguments[2]:void 0));var A,b,m,y,E,_,C=d(n),w=0;if(!C||this==h&&c(C))for(A=s(n),b=t?new this(A):h(A);A>w;w++)_=v?g(n[w],w):n[w],f(b,w,_);else for(E=(y=p(n,C)).next,b=t?new this:[];!(m=i(E,y)).done;w++)_=v?l(y,g,[m.value,w],!0):m.value,f(b,w,_);return b.length=w,b}},1318:(e,n,t)=>{var r=t(5656),o=t(1400),i=t(6244),a=function(e){return function(n,t,a){var l,c=r(n),u=i(c),s=o(a,u);if(e&&t!=t){for(;u>s;)if((l=c[s++])!=l)return!0}else for(;u>s;s++)if((e||s in c)&&c[s]===t)return e||s||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},2092:(e,n,t)=>{var r=t(9974),o=t(1702),i=t(8361),a=t(7908),l=t(6244),c=t(5417),u=o([].push),s=function(e){var n=1==e,t=2==e,o=3==e,s=4==e,f=6==e,p=7==e,d=5==e||f;return function(h,g,v,A){for(var b,m,y=a(h),E=i(y),_=r(g,v),C=l(E),w=0,x=A||c,k=n?x(h,C):t||p?x(h,0):void 0;C>w;w++)if((d||w in E)&&(m=_(b=E[w],w,y),e))if(n)k[w]=m;else if(m)switch(e){case 3:return!0;case 5:return b;case 6:return w;case 2:u(k,b)}else switch(e){case 4:return!1;case 7:u(k,b)}return f?-1:o||s?s:k}};e.exports={forEach:s(0),map:s(1),filter:s(2),some:s(3),every:s(4),find:s(5),findIndex:s(6),filterReject:s(7)}},1194:(e,n,t)=>{var r=t(7293),o=t(5112),i=t(7392),a=o("species");e.exports=function(e){return i>=51||!r((function(){var n=[];return(n.constructor={})[a]=function(){return{foo:1}},1!==n[e](Boolean).foo}))}},9341:(e,n,t)=>{"use strict";var r=t(7293);e.exports=function(e,n){var t=[][e];return!!t&&r((function(){t.call(null,n||function(){throw 1},1)}))}},3671:(e,n,t)=>{var r=t(7854),o=t(9662),i=t(7908),a=t(8361),l=t(6244),c=r.TypeError,u=function(e){return function(n,t,r,u){o(t);var s=i(n),f=a(s),p=l(s),d=e?p-1:0,h=e?-1:1;if(r<2)for(;;){if(d in f){u=f[d],d+=h;break}if(d+=h,e?d<0:p<=d)throw c("Reduce of empty array with no initial value")}for(;e?d>=0:p>d;d+=h)d in f&&(u=t(u,f[d],d,s));return u}};e.exports={left:u(!1),right:u(!0)}},206:(e,n,t)=>{var r=t(1702);e.exports=r([].slice)},4362:(e,n,t)=>{var r=t(206),o=Math.floor,i=function(e,n){var t=e.length,c=o(t/2);return t<8?a(e,n):l(e,i(r(e,0,c),n),i(r(e,c),n),n)},a=function(e,n){for(var t,r,o=e.length,i=1;i0;)e[r]=e[--r];r!==i++&&(e[r]=t)}return e},l=function(e,n,t,r){for(var o=n.length,i=t.length,a=0,l=0;a{var r=t(7854),o=t(3157),i=t(4411),a=t(111),l=t(5112)("species"),c=r.Array;e.exports=function(e){var n;return o(e)&&(n=e.constructor,(i(n)&&(n===c||o(n.prototype))||a(n)&&null===(n=n[l]))&&(n=void 0)),void 0===n?c:n}},5417:(e,n,t)=>{var r=t(7475);e.exports=function(e,n){return new(r(e))(0===n?0:n)}},3411:(e,n,t)=>{var r=t(9670),o=t(9212);e.exports=function(e,n,t,i){try{return i?n(r(t)[0],t[1]):n(t)}catch(n){o(e,"throw",n)}}},7072:(e,n,t)=>{var r=t(5112)("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(e){}e.exports=function(e,n){if(!n&&!o)return!1;var t=!1;try{var i={};i[r]=function(){return{next:function(){return{done:t=!0}}}},e(i)}catch(e){}return t}},4326:(e,n,t)=>{var r=t(1702),o=r({}.toString),i=r("".slice);e.exports=function(e){return i(o(e),8,-1)}},648:(e,n,t)=>{var r=t(7854),o=t(1694),i=t(614),a=t(4326),l=t(5112)("toStringTag"),c=r.Object,u="Arguments"==a(function(){return arguments}());e.exports=o?a:function(e){var n,t,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(t=function(e,n){try{return e[n]}catch(e){}}(n=c(e),l))?t:u?a(n):"Object"==(r=a(n))&&i(n.callee)?"Arguments":r}},5631:(e,n,t)=>{"use strict";var r=t(3070).f,o=t(30),i=t(2248),a=t(9974),l=t(5787),c=t(408),u=t(654),s=t(6340),f=t(9781),p=t(2423).fastKey,d=t(9909),h=d.set,g=d.getterFor;e.exports={getConstructor:function(e,n,t,u){var s=e((function(e,r){l(e,d),h(e,{type:n,index:o(null),first:void 0,last:void 0,size:0}),f||(e.size=0),null!=r&&c(r,e[u],{that:e,AS_ENTRIES:t})})),d=s.prototype,v=g(n),A=function(e,n,t){var r,o,i=v(e),a=b(e,n);return a?a.value=t:(i.last=a={index:o=p(n,!0),key:n,value:t,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),f?i.size++:e.size++,"F"!==o&&(i.index[o]=a)),e},b=function(e,n){var t,r=v(e),o=p(n);if("F"!==o)return r.index[o];for(t=r.first;t;t=t.next)if(t.key==n)return t};return i(d,{clear:function(){for(var e=v(this),n=e.index,t=e.first;t;)t.removed=!0,t.previous&&(t.previous=t.previous.next=void 0),delete n[t.index],t=t.next;e.first=e.last=void 0,f?e.size=0:this.size=0},delete:function(e){var n=this,t=v(n),r=b(n,e);if(r){var o=r.next,i=r.previous;delete t.index[r.index],r.removed=!0,i&&(i.next=o),o&&(o.previous=i),t.first==r&&(t.first=o),t.last==r&&(t.last=i),f?t.size--:n.size--}return!!r},forEach:function(e){for(var n,t=v(this),r=a(e,arguments.length>1?arguments[1]:void 0);n=n?n.next:t.first;)for(r(n.value,n.key,this);n&&n.removed;)n=n.previous},has:function(e){return!!b(this,e)}}),i(d,t?{get:function(e){var n=b(this,e);return n&&n.value},set:function(e,n){return A(this,0===e?0:e,n)}}:{add:function(e){return A(this,e=0===e?0:e,e)}}),f&&r(d,"size",{get:function(){return v(this).size}}),s},setStrong:function(e,n,t){var r=n+" Iterator",o=g(n),i=g(r);u(e,n,(function(e,n){h(this,{type:r,target:e,state:o(e),kind:n,last:void 0})}),(function(){for(var e=i(this),n=e.kind,t=e.last;t&&t.removed;)t=t.previous;return e.target&&(e.last=t=t?t.next:e.state.first)?"keys"==n?{value:t.key,done:!1}:"values"==n?{value:t.value,done:!1}:{value:[t.key,t.value],done:!1}:(e.target=void 0,{value:void 0,done:!0})}),t?"entries":"values",!t,!0),s(n)}}},9320:(e,n,t)=>{"use strict";var r=t(1702),o=t(2248),i=t(2423).getWeakData,a=t(9670),l=t(111),c=t(5787),u=t(408),s=t(2092),f=t(2597),p=t(9909),d=p.set,h=p.getterFor,g=s.find,v=s.findIndex,A=r([].splice),b=0,m=function(e){return e.frozen||(e.frozen=new y)},y=function(){this.entries=[]},E=function(e,n){return g(e.entries,(function(e){return e[0]===n}))};y.prototype={get:function(e){var n=E(this,e);if(n)return n[1]},has:function(e){return!!E(this,e)},set:function(e,n){var t=E(this,e);t?t[1]=n:this.entries.push([e,n])},delete:function(e){var n=v(this.entries,(function(n){return n[0]===e}));return~n&&A(this.entries,n,1),!!~n}},e.exports={getConstructor:function(e,n,t,r){var s=e((function(e,o){c(e,p),d(e,{type:n,id:b++,frozen:void 0}),null!=o&&u(o,e[r],{that:e,AS_ENTRIES:t})})),p=s.prototype,g=h(n),v=function(e,n,t){var r=g(e),o=i(a(n),!0);return!0===o?m(r).set(n,t):o[r.id]=t,e};return o(p,{delete:function(e){var n=g(this);if(!l(e))return!1;var t=i(e);return!0===t?m(n).delete(e):t&&f(t,n.id)&&delete t[n.id]},has:function(e){var n=g(this);if(!l(e))return!1;var t=i(e);return!0===t?m(n).has(e):t&&f(t,n.id)}}),o(p,t?{get:function(e){var n=g(this);if(l(e)){var t=i(e);return!0===t?m(n).get(e):t?t[n.id]:void 0}},set:function(e,n){return v(this,e,n)}}:{add:function(e){return v(this,e,!0)}}),s}}},7710:(e,n,t)=>{"use strict";var r=t(2109),o=t(7854),i=t(1702),a=t(4705),l=t(1320),c=t(2423),u=t(408),s=t(5787),f=t(614),p=t(111),d=t(7293),h=t(7072),g=t(8003),v=t(9587);e.exports=function(e,n,t){var A=-1!==e.indexOf("Map"),b=-1!==e.indexOf("Weak"),m=A?"set":"add",y=o[e],E=y&&y.prototype,_=y,C={},w=function(e){var n=i(E[e]);l(E,e,"add"==e?function(e){return n(this,0===e?0:e),this}:"delete"==e?function(e){return!(b&&!p(e))&&n(this,0===e?0:e)}:"get"==e?function(e){return b&&!p(e)?void 0:n(this,0===e?0:e)}:"has"==e?function(e){return!(b&&!p(e))&&n(this,0===e?0:e)}:function(e,t){return n(this,0===e?0:e,t),this})};if(a(e,!f(y)||!(b||E.forEach&&!d((function(){(new y).entries().next()})))))_=t.getConstructor(n,e,A,m),c.enable();else if(a(e,!0)){var x=new _,k=x[m](b?{}:-0,1)!=x,S=d((function(){x.has(1)})),O=h((function(e){new y(e)})),B=!b&&d((function(){for(var e=new y,n=5;n--;)e[m](n,n);return!e.has(-0)}));O||((_=n((function(e,n){s(e,E);var t=v(new y,e,_);return null!=n&&u(n,t[m],{that:t,AS_ENTRIES:A}),t}))).prototype=E,E.constructor=_),(S||B)&&(w("delete"),w("has"),A&&w("get")),(B||k)&&w(m),b&&E.clear&&delete E.clear}return C[e]=_,r({global:!0,forced:_!=y},C),g(_,e),b||t.setStrong(_,e,A),_}},9920:(e,n,t)=>{var r=t(2597),o=t(3887),i=t(1236),a=t(3070);e.exports=function(e,n){for(var t=o(n),l=a.f,c=i.f,u=0;u{var r=t(5112)("match");e.exports=function(e){var n=/./;try{"/./"[e](n)}catch(t){try{return n[r]=!1,"/./"[e](n)}catch(e){}}return!1}},8544:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},4230:(e,n,t)=>{var r=t(1702),o=t(4488),i=t(1340),a=/"/g,l=r("".replace);e.exports=function(e,n,t,r){var c=i(o(e)),u="<"+n;return""!==t&&(u+=" "+t+'="'+l(i(r),a,""")+'"'),u+">"+c+""}},4994:(e,n,t)=>{"use strict";var r=t(3383).IteratorPrototype,o=t(30),i=t(9114),a=t(8003),l=t(7497),c=function(){return this};e.exports=function(e,n,t){var u=n+" Iterator";return e.prototype=o(r,{next:i(1,t)}),a(e,u,!1,!0),l[u]=c,e}},8880:(e,n,t)=>{var r=t(9781),o=t(3070),i=t(9114);e.exports=r?function(e,n,t){return o.f(e,n,i(1,t))}:function(e,n,t){return e[n]=t,e}},9114:e=>{e.exports=function(e,n){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:n}}},6135:(e,n,t)=>{"use strict";var r=t(4948),o=t(3070),i=t(9114);e.exports=function(e,n,t){var a=r(n);a in e?o.f(e,a,i(0,t)):e[a]=t}},8709:(e,n,t)=>{"use strict";var r=t(7854),o=t(9670),i=t(2140),a=r.TypeError;e.exports=function(e){if(o(this),"string"===e||"default"===e)e="string";else if("number"!==e)throw a("Incorrect hint");return i(this,e)}},654:(e,n,t)=>{"use strict";var r=t(2109),o=t(6916),i=t(1913),a=t(6530),l=t(614),c=t(4994),u=t(9518),s=t(7674),f=t(8003),p=t(8880),d=t(1320),h=t(5112),g=t(7497),v=t(3383),A=a.PROPER,b=a.CONFIGURABLE,m=v.IteratorPrototype,y=v.BUGGY_SAFARI_ITERATORS,E=h("iterator"),_="keys",C="values",w="entries",x=function(){return this};e.exports=function(e,n,t,a,h,v,k){c(t,n,a);var S,O,B,I=function(e){if(e===h&&R)return R;if(!y&&e in j)return j[e];switch(e){case _:case C:case w:return function(){return new t(this,e)}}return function(){return new t(this)}},T=n+" Iterator",P=!1,j=e.prototype,z=j[E]||j["@@iterator"]||h&&j[h],R=!y&&z||I(h),M="Array"==n&&j.entries||z;if(M&&(S=u(M.call(new e)))!==Object.prototype&&S.next&&(i||u(S)===m||(s?s(S,m):l(S[E])||d(S,E,x)),f(S,T,!0,!0),i&&(g[T]=x)),A&&h==C&&z&&z.name!==C&&(!i&&b?p(j,"name",C):(P=!0,R=function(){return o(z,this)})),h)if(O={values:I(C),keys:v?R:I(_),entries:I(w)},k)for(B in O)(y||P||!(B in j))&&d(j,B,O[B]);else r({target:n,proto:!0,forced:y||P},O);return i&&!k||j[E]===R||d(j,E,R,{name:h}),g[n]=R,O}},7235:(e,n,t)=>{var r=t(857),o=t(2597),i=t(6061),a=t(3070).f;e.exports=function(e){var n=r.Symbol||(r.Symbol={});o(n,e)||a(n,e,{value:i.f(e)})}},9781:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},317:(e,n,t)=>{var r=t(7854),o=t(111),i=r.document,a=o(i)&&o(i.createElement);e.exports=function(e){return a?i.createElement(e):{}}},8324:e=>{e.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},8509:(e,n,t)=>{var r=t(317)("span").classList,o=r&&r.constructor&&r.constructor.prototype;e.exports=o===Object.prototype?void 0:o},8886:(e,n,t)=>{var r=t(8113).match(/firefox\/(\d+)/i);e.exports=!!r&&+r[1]},256:(e,n,t)=>{var r=t(8113);e.exports=/MSIE|Trident/.test(r)},5268:(e,n,t)=>{var r=t(4326),o=t(7854);e.exports="process"==r(o.process)},8113:(e,n,t)=>{var r=t(5005);e.exports=r("navigator","userAgent")||""},7392:(e,n,t)=>{var r,o,i=t(7854),a=t(8113),l=i.process,c=i.Deno,u=l&&l.versions||c&&c.version,s=u&&u.v8;s&&(o=(r=s.split("."))[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=+r[1]),e.exports=o},8008:(e,n,t)=>{var r=t(8113).match(/AppleWebKit\/(\d+)\./);e.exports=!!r&&+r[1]},748:e=>{e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},2109:(e,n,t)=>{var r=t(7854),o=t(1236).f,i=t(8880),a=t(1320),l=t(3505),c=t(9920),u=t(4705);e.exports=function(e,n){var t,s,f,p,d,h=e.target,g=e.global,v=e.stat;if(t=g?r:v?r[h]||l(h,{}):(r[h]||{}).prototype)for(s in n){if(p=n[s],f=e.noTargetGet?(d=o(t,s))&&d.value:t[s],!u(g?s:h+(v?".":"#")+s,e.forced)&&void 0!==f){if(typeof p==typeof f)continue;c(p,f)}(e.sham||f&&f.sham)&&i(p,"sham",!0),a(t,s,p,e)}}},7293:e=>{e.exports=function(e){try{return!!e()}catch(e){return!0}}},7007:(e,n,t)=>{"use strict";t(4916);var r=t(1702),o=t(1320),i=t(2261),a=t(7293),l=t(5112),c=t(8880),u=l("species"),s=RegExp.prototype;e.exports=function(e,n,t,f){var p=l(e),d=!a((function(){var n={};return n[p]=function(){return 7},7!=""[e](n)})),h=d&&!a((function(){var n=!1,t=/a/;return"split"===e&&((t={}).constructor={},t.constructor[u]=function(){return t},t.flags="",t[p]=/./[p]),t.exec=function(){return n=!0,null},t[p](""),!n}));if(!d||!h||t){var g=r(/./[p]),v=n(p,""[e],(function(e,n,t,o,a){var l=r(e),c=n.exec;return c===i||c===s.exec?d&&!a?{done:!0,value:g(n,t,o)}:{done:!0,value:l(t,n,o)}:{done:!1}}));o(String.prototype,e,v[0]),o(s,p,v[1])}f&&c(s[p],"sham",!0)}},6677:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){return Object.isExtensible(Object.preventExtensions({}))}))},2104:e=>{var n=Function.prototype,t=n.apply,r=n.bind,o=n.call;e.exports="object"==typeof Reflect&&Reflect.apply||(r?o.bind(t):function(){return o.apply(t,arguments)})},9974:(e,n,t)=>{var r=t(1702),o=t(9662),i=r(r.bind);e.exports=function(e,n){return o(e),void 0===n?e:i?i(e,n):function(){return e.apply(n,arguments)}}},7065:(e,n,t)=>{"use strict";var r=t(7854),o=t(1702),i=t(9662),a=t(111),l=t(2597),c=t(206),u=r.Function,s=o([].concat),f=o([].join),p={},d=function(e,n,t){if(!l(p,n)){for(var r=[],o=0;o{var n=Function.prototype.call;e.exports=n.bind?n.bind(n):function(){return n.apply(n,arguments)}},6530:(e,n,t)=>{var r=t(9781),o=t(2597),i=Function.prototype,a=r&&Object.getOwnPropertyDescriptor,l=o(i,"name"),c=l&&"something"===function(){}.name,u=l&&(!r||r&&a(i,"name").configurable);e.exports={EXISTS:l,PROPER:c,CONFIGURABLE:u}},1702:e=>{var n=Function.prototype,t=n.bind,r=n.call,o=t&&t.bind(r);e.exports=t?function(e){return e&&o(r,e)}:function(e){return e&&function(){return r.apply(e,arguments)}}},5005:(e,n,t)=>{var r=t(7854),o=t(614),i=function(e){return o(e)?e:void 0};e.exports=function(e,n){return arguments.length<2?i(r[e]):r[e]&&r[e][n]}},1246:(e,n,t)=>{var r=t(648),o=t(8173),i=t(7497),a=t(5112)("iterator");e.exports=function(e){if(null!=e)return o(e,a)||o(e,"@@iterator")||i[r(e)]}},8554:(e,n,t)=>{var r=t(7854),o=t(6916),i=t(9662),a=t(9670),l=t(6330),c=t(1246),u=r.TypeError;e.exports=function(e,n){var t=arguments.length<2?c(e):n;if(i(t))return a(o(t,e));throw u(l(e)+" is not iterable")}},8173:(e,n,t)=>{var r=t(9662);e.exports=function(e,n){var t=e[n];return null==t?void 0:r(t)}},647:(e,n,t)=>{var r=t(1702),o=t(7908),i=Math.floor,a=r("".charAt),l=r("".replace),c=r("".slice),u=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,s=/\$([$&'`]|\d{1,2})/g;e.exports=function(e,n,t,r,f,p){var d=t+e.length,h=r.length,g=s;return void 0!==f&&(f=o(f),g=u),l(p,g,(function(o,l){var u;switch(a(l,0)){case"$":return"$";case"&":return e;case"`":return c(n,0,t);case"'":return c(n,d);case"<":u=f[c(l,1,-1)];break;default:var s=+l;if(0===s)return o;if(s>h){var p=i(s/10);return 0===p?o:p<=h?void 0===r[p-1]?a(l,1):r[p-1]+a(l,1):o}u=r[s-1]}return void 0===u?"":u}))}},7854:(e,n,t)=>{var r=function(e){return e&&e.Math==Math&&e};e.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof t.g&&t.g)||function(){return this}()||Function("return this")()},2597:(e,n,t)=>{var r=t(1702),o=t(7908),i=r({}.hasOwnProperty);e.exports=Object.hasOwn||function(e,n){return i(o(e),n)}},3501:e=>{e.exports={}},490:(e,n,t)=>{var r=t(5005);e.exports=r("document","documentElement")},4664:(e,n,t)=>{var r=t(9781),o=t(7293),i=t(317);e.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},8361:(e,n,t)=>{var r=t(7854),o=t(1702),i=t(7293),a=t(4326),l=r.Object,c=o("".split);e.exports=i((function(){return!l("z").propertyIsEnumerable(0)}))?function(e){return"String"==a(e)?c(e,""):l(e)}:l},9587:(e,n,t)=>{var r=t(614),o=t(111),i=t(7674);e.exports=function(e,n,t){var a,l;return i&&r(a=n.constructor)&&a!==t&&o(l=a.prototype)&&l!==t.prototype&&i(e,l),e}},2788:(e,n,t)=>{var r=t(1702),o=t(614),i=t(5465),a=r(Function.toString);o(i.inspectSource)||(i.inspectSource=function(e){return a(e)}),e.exports=i.inspectSource},2423:(e,n,t)=>{var r=t(2109),o=t(1702),i=t(3501),a=t(111),l=t(2597),c=t(3070).f,u=t(8006),s=t(1156),f=t(2050),p=t(9711),d=t(6677),h=!1,g=p("meta"),v=0,A=function(e){c(e,g,{value:{objectID:"O"+v++,weakData:{}}})},b=e.exports={enable:function(){b.enable=function(){},h=!0;var e=u.f,n=o([].splice),t={};t[g]=1,e(t).length&&(u.f=function(t){for(var r=e(t),o=0,i=r.length;o{var r,o,i,a=t(8536),l=t(7854),c=t(1702),u=t(111),s=t(8880),f=t(2597),p=t(5465),d=t(6200),h=t(3501),g="Object already initialized",v=l.TypeError,A=l.WeakMap;if(a||p.state){var b=p.state||(p.state=new A),m=c(b.get),y=c(b.has),E=c(b.set);r=function(e,n){if(y(b,e))throw new v(g);return n.facade=e,E(b,e,n),n},o=function(e){return m(b,e)||{}},i=function(e){return y(b,e)}}else{var _=d("state");h[_]=!0,r=function(e,n){if(f(e,_))throw new v(g);return n.facade=e,s(e,_,n),n},o=function(e){return f(e,_)?e[_]:{}},i=function(e){return f(e,_)}}e.exports={set:r,get:o,has:i,enforce:function(e){return i(e)?o(e):r(e,{})},getterFor:function(e){return function(n){var t;if(!u(n)||(t=o(n)).type!==e)throw v("Incompatible receiver, "+e+" required");return t}}}},7659:(e,n,t)=>{var r=t(5112),o=t(7497),i=r("iterator"),a=Array.prototype;e.exports=function(e){return void 0!==e&&(o.Array===e||a[i]===e)}},3157:(e,n,t)=>{var r=t(4326);e.exports=Array.isArray||function(e){return"Array"==r(e)}},614:e=>{e.exports=function(e){return"function"==typeof e}},4411:(e,n,t)=>{var r=t(1702),o=t(7293),i=t(614),a=t(648),l=t(5005),c=t(2788),u=function(){},s=[],f=l("Reflect","construct"),p=/^\s*(?:class|function)\b/,d=r(p.exec),h=!p.exec(u),g=function(e){if(!i(e))return!1;try{return f(u,s,e),!0}catch(e){return!1}};e.exports=!f||o((function(){var e;return g(g.call)||!g(Object)||!g((function(){e=!0}))||e}))?function(e){if(!i(e))return!1;switch(a(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}return h||!!d(p,c(e))}:g},4705:(e,n,t)=>{var r=t(7293),o=t(614),i=/#|\.prototype\./,a=function(e,n){var t=c[l(e)];return t==s||t!=u&&(o(n)?r(n):!!n)},l=a.normalize=function(e){return String(e).replace(i,".").toLowerCase()},c=a.data={},u=a.NATIVE="N",s=a.POLYFILL="P";e.exports=a},111:(e,n,t)=>{var r=t(614);e.exports=function(e){return"object"==typeof e?null!==e:r(e)}},1913:e=>{e.exports=!1},7850:(e,n,t)=>{var r=t(111),o=t(4326),i=t(5112)("match");e.exports=function(e){var n;return r(e)&&(void 0!==(n=e[i])?!!n:"RegExp"==o(e))}},2190:(e,n,t)=>{var r=t(7854),o=t(5005),i=t(614),a=t(7976),l=t(3307),c=r.Object;e.exports=l?function(e){return"symbol"==typeof e}:function(e){var n=o("Symbol");return i(n)&&a(n.prototype,c(e))}},408:(e,n,t)=>{var r=t(7854),o=t(9974),i=t(6916),a=t(9670),l=t(6330),c=t(7659),u=t(6244),s=t(7976),f=t(8554),p=t(1246),d=t(9212),h=r.TypeError,g=function(e,n){this.stopped=e,this.result=n},v=g.prototype;e.exports=function(e,n,t){var r,A,b,m,y,E,_,C=t&&t.that,w=!(!t||!t.AS_ENTRIES),x=!(!t||!t.IS_ITERATOR),k=!(!t||!t.INTERRUPTED),S=o(n,C),O=function(e){return r&&d(r,"normal",e),new g(!0,e)},B=function(e){return w?(a(e),k?S(e[0],e[1],O):S(e[0],e[1])):k?S(e,O):S(e)};if(x)r=e;else{if(!(A=p(e)))throw h(l(e)+" is not iterable");if(c(A)){for(b=0,m=u(e);m>b;b++)if((y=B(e[b]))&&s(v,y))return y;return new g(!1)}r=f(e,A)}for(E=r.next;!(_=i(E,r)).done;){try{y=B(_.value)}catch(e){d(r,"throw",e)}if("object"==typeof y&&y&&s(v,y))return y}return new g(!1)}},9212:(e,n,t)=>{var r=t(6916),o=t(9670),i=t(8173);e.exports=function(e,n,t){var a,l;o(e);try{if(!(a=i(e,"return"))){if("throw"===n)throw t;return t}a=r(a,e)}catch(e){l=!0,a=e}if("throw"===n)throw t;if(l)throw a;return o(a),t}},3383:(e,n,t)=>{"use strict";var r,o,i,a=t(7293),l=t(614),c=t(30),u=t(9518),s=t(1320),f=t(5112),p=t(1913),d=f("iterator"),h=!1;[].keys&&("next"in(i=[].keys())?(o=u(u(i)))!==Object.prototype&&(r=o):h=!0),null==r||a((function(){var e={};return r[d].call(e)!==e}))?r={}:p&&(r=c(r)),l(r[d])||s(r,d,(function(){return this})),e.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:h}},7497:e=>{e.exports={}},6244:(e,n,t)=>{var r=t(7466);e.exports=function(e){return r(e.length)}},133:(e,n,t)=>{var r=t(7392),o=t(7293);e.exports=!!Object.getOwnPropertySymbols&&!o((function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},8536:(e,n,t)=>{var r=t(7854),o=t(614),i=t(2788),a=r.WeakMap;e.exports=o(a)&&/native code/.test(i(a))},3929:(e,n,t)=>{var r=t(7854),o=t(7850),i=r.TypeError;e.exports=function(e){if(o(e))throw i("The method doesn't accept regular expressions");return e}},1574:(e,n,t)=>{"use strict";var r=t(9781),o=t(1702),i=t(6916),a=t(7293),l=t(1956),c=t(5181),u=t(5296),s=t(7908),f=t(8361),p=Object.assign,d=Object.defineProperty,h=o([].concat);e.exports=!p||a((function(){if(r&&1!==p({b:1},p(d({},"a",{enumerable:!0,get:function(){d(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},n={},t=Symbol(),o="abcdefghijklmnopqrst";return e[t]=7,o.split("").forEach((function(e){n[e]=e})),7!=p({},e)[t]||l(p({},n)).join("")!=o}))?function(e,n){for(var t=s(e),o=arguments.length,a=1,p=c.f,d=u.f;o>a;)for(var g,v=f(arguments[a++]),A=p?h(l(v),p(v)):l(v),b=A.length,m=0;b>m;)g=A[m++],r&&!i(d,v,g)||(t[g]=v[g]);return t}:p},30:(e,n,t)=>{var r,o=t(9670),i=t(6048),a=t(748),l=t(3501),c=t(490),u=t(317),s=t(6200),f=s("IE_PROTO"),p=function(){},d=function(e){return" + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

create

+
+
open override fun create(context: Context, parent: ViewGroup?): Hikage
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/-hikage-holder-delegate/get-view.html b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/-hikage-holder-delegate/get-view.html new file mode 100644 index 0000000..31215e1 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/-hikage-holder-delegate/get-view.html @@ -0,0 +1,80 @@ + + + + + getView + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

getView

+
+
open override fun getView(instance: Hikage): View
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/-hikage-holder-delegate/index.html b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/-hikage-holder-delegate/index.html new file mode 100644 index 0000000..c2758b5 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/-hikage-holder-delegate/index.html @@ -0,0 +1,119 @@ + + + + + HikageHolderDelegate + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

HikageHolderDelegate

+
class HikageHolderDelegate : ViewHolderDelegate<Hikage>

Hikage.Delegate type view holder delegate.

Parameters

delegate

the Hikage.Delegate instance.

+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun create(context: Context, parent: ViewGroup?): Hikage
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
open override fun getView(instance: Hikage): View
+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/index.html b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/index.html new file mode 100644 index 0000000..130988f --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/index.html @@ -0,0 +1,103 @@ + + + + + com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Package-level declarations

+
+
+
+
+
+

Types

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
class HikageHolderDelegate : ViewHolderDelegate<Hikage>

Hikage.Delegate type view holder delegate.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/index.html b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/index.html new file mode 100644 index 0000000..5a3ea8c --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/index.html @@ -0,0 +1,148 @@ + + + + + com.highcapable.hikage.extension.betterandroid.ui.component.adapter + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Package-level declarations

+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun <E> RecyclerAdapterBuilder<E>.onBindFooterView(delegate: Hikage.Delegate<*>, viewHolder: (hikage: Hikage) -> Unit = {}): RecyclerAdapterBuilder<E>
fun <E> RecyclerAdapterBuilder<E>.onBindFooterView(Hikageable: HikagePerformer<ViewGroup.LayoutParams>, viewHolder: (hikage: Hikage) -> Unit = {}): RecyclerAdapterBuilder<E>

Create and add view holder from Hikage.Delegate for a footer view.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun <E> RecyclerAdapterBuilder<E>.onBindHeaderView(delegate: Hikage.Delegate<*>, viewHolder: (hikage: Hikage) -> Unit = {}): RecyclerAdapterBuilder<E>
fun <E> RecyclerAdapterBuilder<E>.onBindHeaderView(Hikageable: HikagePerformer<ViewGroup.LayoutParams>, viewHolder: (hikage: Hikage) -> Unit = {}): RecyclerAdapterBuilder<E>

Create and add view holder from Hikage.Delegate for a header view.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun <E> BaseAdapterBuilder<E>.onBindItemView(delegate: Hikage.Delegate<*>, viewHolder: (hikage: Hikage, entity: E, position: Int) -> Unit = { _, _, _ -> }): BaseAdapterBuilder<E>
fun <E> BaseAdapterBuilder<E>.onBindItemView(Hikageable: HikagePerformer<ViewGroup.LayoutParams>, viewHolder: (hikage: Hikage, entity: E, position: Int) -> Unit = { _, _, _ -> }): BaseAdapterBuilder<E>
fun <E> RecyclerAdapterBuilder<E>.onBindItemView(delegate: Hikage.Delegate<*>, viewType: Int = RecyclerAdapterBuilder.DEFAULT_VIEW_TYPE, viewHolder: (hikage: Hikage, entity: E, position: AdapterPosition) -> Unit = { _, _, _ -> }): RecyclerAdapterBuilder<E>
fun <E> RecyclerAdapterBuilder<E>.onBindItemView(Hikageable: HikagePerformer<ViewGroup.LayoutParams>, viewType: Int = RecyclerAdapterBuilder.DEFAULT_VIEW_TYPE, viewHolder: (hikage: Hikage, entity: E, position: AdapterPosition) -> Unit = { _, _, _ -> }): RecyclerAdapterBuilder<E>

Create and add view holder from Hikage.Delegate.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun <E> PagerAdapterBuilder<E>.onBindPageView(delegate: Hikage.Delegate<*>, viewHolder: (hikage: Hikage, entity: E, position: Int) -> Unit = { _, _, _ -> }): PagerAdapterBuilder<E>
fun <E> PagerAdapterBuilder<E>.onBindPageView(Hikageable: HikagePerformer<ViewGroup.LayoutParams>, viewHolder: (hikage: Hikage, entity: E, position: Int) -> Unit = { _, _, _ -> }): PagerAdapterBuilder<E>

Create and add view holder from Hikage.Delegate.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-footer-view.html b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-footer-view.html new file mode 100644 index 0000000..1162155 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-footer-view.html @@ -0,0 +1,80 @@ + + + + + onBindFooterView + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

onBindFooterView

+
+
fun <E> RecyclerAdapterBuilder<E>.onBindFooterView(Hikageable: HikagePerformer<ViewGroup.LayoutParams>, viewHolder: (hikage: Hikage) -> Unit = {}): RecyclerAdapterBuilder<E>

Create and add view holder from Hikage.Delegate for a footer view.

Usage:

onBindFooterView(
Hikageable = {
TextView(
id = "text",
lparams = LayoutParams(widthMatchParent = true)
) {
text = "Footer"
textSize = 20f
}
}
) { hikage ->
hikage.get<TextView>("text").text = "Footer with redefined text"
}

Return

RecyclerAdapterBuilder<E>

Parameters

Hikageable

the performer body.

See also

RecyclerAdapterBuilder.onBindFooterView

fun <E> RecyclerAdapterBuilder<E>.onBindFooterView(delegate: Hikage.Delegate<*>, viewHolder: (hikage: Hikage) -> Unit = {}): RecyclerAdapterBuilder<E>

Create and add view holder from Hikage.Delegate for a footer view.

Return

RecyclerAdapterBuilder<E>

Parameters

delegate

the delegate.

See also

RecyclerAdapterBuilder.onBindFooterView
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-header-view.html b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-header-view.html new file mode 100644 index 0000000..680d0ac --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-header-view.html @@ -0,0 +1,80 @@ + + + + + onBindHeaderView + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

onBindHeaderView

+
+
fun <E> RecyclerAdapterBuilder<E>.onBindHeaderView(Hikageable: HikagePerformer<ViewGroup.LayoutParams>, viewHolder: (hikage: Hikage) -> Unit = {}): RecyclerAdapterBuilder<E>

Create and add view holder from Hikage.Delegate for a header view.

Usage:

onBindHeaderView(
Hikageable = {
TextView(
id = "text",
lparams = LayoutParams(widthMatchParent = true)
) {
text = "Header"
textSize = 20f
}
}
) { hikage ->
hikage.get<TextView>("text").text = "Header with redefined text"
}

Return

RecyclerAdapterBuilder<E>

Parameters

Hikageable

the performer body.

See also

RecyclerAdapterBuilder.onBindHeaderView

fun <E> RecyclerAdapterBuilder<E>.onBindHeaderView(delegate: Hikage.Delegate<*>, viewHolder: (hikage: Hikage) -> Unit = {}): RecyclerAdapterBuilder<E>

Create and add view holder from Hikage.Delegate for a header view.

Return

RecyclerAdapterBuilder<E>

Parameters

delegate

the delegate.

See also

RecyclerAdapterBuilder.onBindHeaderView
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-item-view.html b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-item-view.html new file mode 100644 index 0000000..3d86f92 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-item-view.html @@ -0,0 +1,80 @@ + + + + + onBindItemView + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

onBindItemView

+
+
fun <E> BaseAdapterBuilder<E>.onBindItemView(Hikageable: HikagePerformer<ViewGroup.LayoutParams>, viewHolder: (hikage: Hikage, entity: E, position: Int) -> Unit = { _, _, _ -> }): BaseAdapterBuilder<E>

Create and add view holder from Hikage.Delegate.

Usage:

onBindItemView(
Hikageable = {
TextView(
id = "text",
lparams = LayoutParams(widthMatchParent = true)
) {
text = "Item"
textSize = 20f
}
}
) { hikage, entity, position ->
hikage.get<TextView>("text").text = "Item ${entity.name} of ${position + 1}"
}

Receiver

BaseAdapterBuilder<E>

Return

BaseAdapterBuilder<E>

Parameters

Hikageable

the performer body.

See also

BaseAdapterBuilder.onBindItemView

fun <E> BaseAdapterBuilder<E>.onBindItemView(delegate: Hikage.Delegate<*>, viewHolder: (hikage: Hikage, entity: E, position: Int) -> Unit = { _, _, _ -> }): BaseAdapterBuilder<E>

Create and add view holder from Hikage.Delegate.

Receiver

BaseAdapterBuilder<E>

Return

BaseAdapterBuilder<E>

Parameters

delegate

the delegate.

See also

BaseAdapterBuilder.onBindItemView

fun <E> RecyclerAdapterBuilder<E>.onBindItemView(Hikageable: HikagePerformer<ViewGroup.LayoutParams>, viewType: Int = RecyclerAdapterBuilder.DEFAULT_VIEW_TYPE, viewHolder: (hikage: Hikage, entity: E, position: AdapterPosition) -> Unit = { _, _, _ -> }): RecyclerAdapterBuilder<E>

Create and add view holder from Hikage.Delegate.

Usage:

onBindItemView(
Hikageable = {
TextView(
id = "text",
lparams = LayoutParams(widthMatchParent = true)
) {
text = "Item"
textSize = 20f
}
}
) { hikage, entity, position ->
hikage.get<TextView>("text").text = "Item ${entity.name} of ${position.value + 1}"
}

Receiver

RecyclerAdapterBuilder<E>

Return

RecyclerAdapterBuilder<E>

Parameters

Hikageable

the performer body.

See also

RecyclerAdapterBuilder.onBindItemView

fun <E> RecyclerAdapterBuilder<E>.onBindItemView(delegate: Hikage.Delegate<*>, viewType: Int = RecyclerAdapterBuilder.DEFAULT_VIEW_TYPE, viewHolder: (hikage: Hikage, entity: E, position: AdapterPosition) -> Unit = { _, _, _ -> }): RecyclerAdapterBuilder<E>

Create and add view holder from Hikage.Delegate.

Receiver

RecyclerAdapterBuilder<E>

Return

RecyclerAdapterBuilder<E>

Parameters

delegate

the delegate.

See also

RecyclerAdapterBuilder.onBindItemView
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-page-view.html b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-page-view.html new file mode 100644 index 0000000..5b98266 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-page-view.html @@ -0,0 +1,80 @@ + + + + + onBindPageView + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

onBindPageView

+
+
fun <E> PagerAdapterBuilder<E>.onBindPageView(Hikageable: HikagePerformer<ViewGroup.LayoutParams>, viewHolder: (hikage: Hikage, entity: E, position: Int) -> Unit = { _, _, _ -> }): PagerAdapterBuilder<E>

Create and add view holder from Hikage.Delegate.

Usage:

onBindPageView(
Hikageable = {
LinearLayout(
id = "container",
lparams = LayoutParams(matchParent = true),
init = {
orientation = LinearLayout.VERTICAL
gravity = Gravity.CENTER
}
) {
TextView(
id = "text",
lparams = LayoutParams {
gravity = Gravity.CENTER
}
) {
text = "Page"
textSize = 20f
}
}
}
) { hikage, entity, position ->
hikage.get<TextView>("text").text = "Page ${entity.name} of ${position + 1}"
}

Receiver

PagerAdapterBuilder<E>

Return

PagerAdapterBuilder<E>

Parameters

Hikageable

the performer body.

See also

PagerAdapterBuilder.onBindPageView

fun <E> PagerAdapterBuilder<E>.onBindPageView(delegate: Hikage.Delegate<*>, viewHolder: (hikage: Hikage, entity: E, position: Int) -> Unit = { _, _, _ -> }): PagerAdapterBuilder<E>

Create and add view holder from Hikage.Delegate.

Receiver

PagerAdapterBuilder<E>

Return

PagerAdapterBuilder<E>

Parameters

delegate

the delegate.

See also

PagerAdapterBuilder.onBindPageView
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/package-list b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/package-list new file mode 100644 index 0000000..9c1e51e --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/hikage-extension-betterandroid/package-list @@ -0,0 +1,20 @@ +$dokka.format:html-v1 +$dokka.linkExtension:html +$dokka.location:com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder////PointingToDeclaration/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/index.html +$dokka.location:com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/HikageHolderDelegate///PointingToDeclaration/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/-hikage-holder-delegate/index.html +$dokka.location:com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/HikageHolderDelegate/create/#android.content.Context#android.view.ViewGroup?/PointingToDeclaration/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/-hikage-holder-delegate/create.html +$dokka.location:com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/HikageHolderDelegate/getView/#com.highcapable.hikage.core.Hikage/PointingToDeclaration/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder/-hikage-holder-delegate/get-view.html +$dokka.location:com.highcapable.hikage.extension.betterandroid.ui.component.adapter////PointingToDeclaration/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/index.html +$dokka.location:com.highcapable.hikage.extension.betterandroid.ui.component.adapter//onBindFooterView/com.highcapable.betterandroid.ui.component.adapter.RecyclerAdapterBuilder[TypeParam(bounds=[kotlin.Any?])]#com.highcapable.hikage.core.Hikage.Delegate[*]#kotlin.Function1[com.highcapable.hikage.core.Hikage,kotlin.Unit]/PointingToDeclaration/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-footer-view.html +$dokka.location:com.highcapable.hikage.extension.betterandroid.ui.component.adapter//onBindFooterView/com.highcapable.betterandroid.ui.component.adapter.RecyclerAdapterBuilder[TypeParam(bounds=[kotlin.Any?])]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.view.ViewGroup.LayoutParams],kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage,kotlin.Unit]/PointingToDeclaration/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-footer-view.html +$dokka.location:com.highcapable.hikage.extension.betterandroid.ui.component.adapter//onBindHeaderView/com.highcapable.betterandroid.ui.component.adapter.RecyclerAdapterBuilder[TypeParam(bounds=[kotlin.Any?])]#com.highcapable.hikage.core.Hikage.Delegate[*]#kotlin.Function1[com.highcapable.hikage.core.Hikage,kotlin.Unit]/PointingToDeclaration/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-header-view.html +$dokka.location:com.highcapable.hikage.extension.betterandroid.ui.component.adapter//onBindHeaderView/com.highcapable.betterandroid.ui.component.adapter.RecyclerAdapterBuilder[TypeParam(bounds=[kotlin.Any?])]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.view.ViewGroup.LayoutParams],kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage,kotlin.Unit]/PointingToDeclaration/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-header-view.html +$dokka.location:com.highcapable.hikage.extension.betterandroid.ui.component.adapter//onBindItemView/com.highcapable.betterandroid.ui.component.adapter.BaseAdapterBuilder[TypeParam(bounds=[kotlin.Any?])]#com.highcapable.hikage.core.Hikage.Delegate[*]#kotlin.Function3[com.highcapable.hikage.core.Hikage,TypeParam(bounds=[kotlin.Any?]),kotlin.Int,kotlin.Unit]/PointingToDeclaration/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-item-view.html +$dokka.location:com.highcapable.hikage.extension.betterandroid.ui.component.adapter//onBindItemView/com.highcapable.betterandroid.ui.component.adapter.BaseAdapterBuilder[TypeParam(bounds=[kotlin.Any?])]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.view.ViewGroup.LayoutParams],kotlin.Unit]#kotlin.Function3[com.highcapable.hikage.core.Hikage,TypeParam(bounds=[kotlin.Any?]),kotlin.Int,kotlin.Unit]/PointingToDeclaration/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-item-view.html +$dokka.location:com.highcapable.hikage.extension.betterandroid.ui.component.adapter//onBindItemView/com.highcapable.betterandroid.ui.component.adapter.RecyclerAdapterBuilder[TypeParam(bounds=[kotlin.Any?])]#com.highcapable.hikage.core.Hikage.Delegate[*]#kotlin.Int#kotlin.Function3[com.highcapable.hikage.core.Hikage,TypeParam(bounds=[kotlin.Any?]),com.highcapable.betterandroid.ui.component.adapter.entity.AdapterPosition,kotlin.Unit]/PointingToDeclaration/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-item-view.html +$dokka.location:com.highcapable.hikage.extension.betterandroid.ui.component.adapter//onBindItemView/com.highcapable.betterandroid.ui.component.adapter.RecyclerAdapterBuilder[TypeParam(bounds=[kotlin.Any?])]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.view.ViewGroup.LayoutParams],kotlin.Unit]#kotlin.Int#kotlin.Function3[com.highcapable.hikage.core.Hikage,TypeParam(bounds=[kotlin.Any?]),com.highcapable.betterandroid.ui.component.adapter.entity.AdapterPosition,kotlin.Unit]/PointingToDeclaration/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-item-view.html +$dokka.location:com.highcapable.hikage.extension.betterandroid.ui.component.adapter//onBindPageView/com.highcapable.betterandroid.ui.component.adapter.PagerAdapterBuilder[TypeParam(bounds=[kotlin.Any?])]#com.highcapable.hikage.core.Hikage.Delegate[*]#kotlin.Function3[com.highcapable.hikage.core.Hikage,TypeParam(bounds=[kotlin.Any?]),kotlin.Int,kotlin.Unit]/PointingToDeclaration/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-page-view.html +$dokka.location:com.highcapable.hikage.extension.betterandroid.ui.component.adapter//onBindPageView/com.highcapable.betterandroid.ui.component.adapter.PagerAdapterBuilder[TypeParam(bounds=[kotlin.Any?])]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.view.ViewGroup.LayoutParams],kotlin.Unit]#kotlin.Function3[com.highcapable.hikage.core.Hikage,TypeParam(bounds=[kotlin.Any?]),kotlin.Int,kotlin.Unit]/PointingToDeclaration/hikage-extension-betterandroid/com.highcapable.hikage.extension.betterandroid.ui.component.adapter/on-bind-page-view.html +com.highcapable.hikage.extension.betterandroid.ui.component.adapter +com.highcapable.hikage.extension.betterandroid.ui.component.adapter.viewholder + diff --git a/KDoc/hikage-extension-betterandroid/images/anchor-copy-button.svg b/KDoc/hikage-extension-betterandroid/images/anchor-copy-button.svg new file mode 100644 index 0000000..19c1fa3 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/anchor-copy-button.svg @@ -0,0 +1,8 @@ + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/arrow_down.svg b/KDoc/hikage-extension-betterandroid/images/arrow_down.svg new file mode 100644 index 0000000..639aaf1 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/arrow_down.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/burger.svg b/KDoc/hikage-extension-betterandroid/images/burger.svg new file mode 100644 index 0000000..fcca732 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/burger.svg @@ -0,0 +1,9 @@ + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/copy-icon.svg b/KDoc/hikage-extension-betterandroid/images/copy-icon.svg new file mode 100644 index 0000000..2cb02ec --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/copy-icon.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/copy-successful-icon.svg b/KDoc/hikage-extension-betterandroid/images/copy-successful-icon.svg new file mode 100644 index 0000000..c4b9538 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/copy-successful-icon.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/footer-go-to-link.svg b/KDoc/hikage-extension-betterandroid/images/footer-go-to-link.svg new file mode 100644 index 0000000..a87add7 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/footer-go-to-link.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/go-to-top-icon.svg b/KDoc/hikage-extension-betterandroid/images/go-to-top-icon.svg new file mode 100644 index 0000000..abc3d1c --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/go-to-top-icon.svg @@ -0,0 +1,8 @@ + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/homepage.svg b/KDoc/hikage-extension-betterandroid/images/homepage.svg new file mode 100644 index 0000000..e3c83b1 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/homepage.svg @@ -0,0 +1,3 @@ + + + diff --git a/KDoc/hikage-extension-betterandroid/images/logo-icon.svg b/KDoc/hikage-extension-betterandroid/images/logo-icon.svg new file mode 100644 index 0000000..e42f957 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/logo-icon.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/nav-icons/abstract-class-kotlin.svg b/KDoc/hikage-extension-betterandroid/images/nav-icons/abstract-class-kotlin.svg new file mode 100644 index 0000000..19d6148 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/nav-icons/abstract-class-kotlin.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/nav-icons/abstract-class.svg b/KDoc/hikage-extension-betterandroid/images/nav-icons/abstract-class.svg new file mode 100644 index 0000000..6018203 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/nav-icons/abstract-class.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/nav-icons/annotation-kotlin.svg b/KDoc/hikage-extension-betterandroid/images/nav-icons/annotation-kotlin.svg new file mode 100644 index 0000000..b90f508 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/nav-icons/annotation-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/nav-icons/annotation.svg b/KDoc/hikage-extension-betterandroid/images/nav-icons/annotation.svg new file mode 100644 index 0000000..b80c54b --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/nav-icons/annotation.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/nav-icons/class-kotlin.svg b/KDoc/hikage-extension-betterandroid/images/nav-icons/class-kotlin.svg new file mode 100644 index 0000000..797a242 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/nav-icons/class-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/nav-icons/class.svg b/KDoc/hikage-extension-betterandroid/images/nav-icons/class.svg new file mode 100644 index 0000000..3f1ad16 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/nav-icons/class.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/nav-icons/enum-kotlin.svg b/KDoc/hikage-extension-betterandroid/images/nav-icons/enum-kotlin.svg new file mode 100644 index 0000000..775a7cc --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/nav-icons/enum-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/nav-icons/enum.svg b/KDoc/hikage-extension-betterandroid/images/nav-icons/enum.svg new file mode 100644 index 0000000..fa7f247 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/nav-icons/enum.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/nav-icons/exception-class.svg b/KDoc/hikage-extension-betterandroid/images/nav-icons/exception-class.svg new file mode 100644 index 0000000..c0b2bde --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/nav-icons/exception-class.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/nav-icons/field-value.svg b/KDoc/hikage-extension-betterandroid/images/nav-icons/field-value.svg new file mode 100644 index 0000000..2771ee5 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/nav-icons/field-value.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/nav-icons/field-variable.svg b/KDoc/hikage-extension-betterandroid/images/nav-icons/field-variable.svg new file mode 100644 index 0000000..e2d2bbd --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/nav-icons/field-variable.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/nav-icons/function.svg b/KDoc/hikage-extension-betterandroid/images/nav-icons/function.svg new file mode 100644 index 0000000..f0da64a --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/nav-icons/function.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/nav-icons/interface-kotlin.svg b/KDoc/hikage-extension-betterandroid/images/nav-icons/interface-kotlin.svg new file mode 100644 index 0000000..5e16326 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/nav-icons/interface-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/nav-icons/interface.svg b/KDoc/hikage-extension-betterandroid/images/nav-icons/interface.svg new file mode 100644 index 0000000..32063ba --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/nav-icons/interface.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/nav-icons/object.svg b/KDoc/hikage-extension-betterandroid/images/nav-icons/object.svg new file mode 100644 index 0000000..31f0ee3 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/nav-icons/object.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/nav-icons/typealias-kotlin.svg b/KDoc/hikage-extension-betterandroid/images/nav-icons/typealias-kotlin.svg new file mode 100644 index 0000000..f4bb238 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/nav-icons/typealias-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension-betterandroid/images/theme-toggle.svg b/KDoc/hikage-extension-betterandroid/images/theme-toggle.svg new file mode 100644 index 0000000..df86202 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/images/theme-toggle.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-extension-betterandroid/index.html b/KDoc/hikage-extension-betterandroid/index.html new file mode 100644 index 0000000..d5e7bdb --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/index.html @@ -0,0 +1,117 @@ + + + + + hikage-extension-betterandroid + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

hikage-extension-betterandroid

+
+

Packages

+
+
+
+
+ +
+
+ +
+
+
+
+
+
+ +
+
+
+ +
+
+ +
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension-betterandroid/navigation.html b/KDoc/hikage-extension-betterandroid/navigation.html new file mode 100644 index 0000000..5189caf --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/navigation.html @@ -0,0 +1,25 @@ + + diff --git a/KDoc/hikage-extension-betterandroid/scripts/clipboard.js b/KDoc/hikage-extension-betterandroid/scripts/clipboard.js new file mode 100644 index 0000000..7a4f33c --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/scripts/clipboard.js @@ -0,0 +1,56 @@ +/* + * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license. + */ + +window.addEventListener('load', () => { + document.querySelectorAll('span.copy-icon').forEach(element => { + element.addEventListener('click', (el) => copyElementsContentToClipboard(element)); + }) + + document.querySelectorAll('span.anchor-icon').forEach(element => { + element.addEventListener('click', (el) => { + if(element.hasAttribute('pointing-to')){ + const location = hrefWithoutCurrentlyUsedAnchor() + '#' + element.getAttribute('pointing-to') + copyTextToClipboard(element, location) + } + }); + }) +}) + +const copyElementsContentToClipboard = (element) => { + const selection = window.getSelection(); + const range = document.createRange(); + range.selectNodeContents(element.parentNode.parentNode); + selection.removeAllRanges(); + selection.addRange(range); + + copyAndShowPopup(element, () => selection.removeAllRanges()) +} + +const copyTextToClipboard = (element, text) => { + var textarea = document.createElement("textarea"); + textarea.textContent = text; + textarea.style.position = "fixed"; + document.body.appendChild(textarea); + textarea.select(); + + copyAndShowPopup(element, () => document.body.removeChild(textarea)) +} + +const copyAndShowPopup = (element, after) => { + try { + document.execCommand('copy'); + element.nextElementSibling.classList.add('active-popup'); + setTimeout(() => { + element.nextElementSibling.classList.remove('active-popup'); + }, 1200); + } catch (e) { + console.error('Failed to write to clipboard:', e) + } + finally { + if(after) after() + } +} + +const hrefWithoutCurrentlyUsedAnchor = () => window.location.href.split('#')[0] + diff --git a/KDoc/hikage-extension-betterandroid/scripts/main.js b/KDoc/hikage-extension-betterandroid/scripts/main.js new file mode 100644 index 0000000..ba6c347 --- /dev/null +++ b/KDoc/hikage-extension-betterandroid/scripts/main.js @@ -0,0 +1,44 @@ +(()=>{var e={8527:e=>{e.exports=''},5570:e=>{e.exports=''},107:e=>{e.exports=''},7224:e=>{e.exports=''},538:e=>{e.exports=''},1924:(e,n,t)=>{"use strict";var r=t(210),o=t(5559),i=o(r("String.prototype.indexOf"));e.exports=function(e,n){var t=r(e,!!n);return"function"==typeof t&&i(e,".prototype.")>-1?o(t):t}},5559:(e,n,t)=>{"use strict";var r=t(8612),o=t(210),i=o("%Function.prototype.apply%"),a=o("%Function.prototype.call%"),l=o("%Reflect.apply%",!0)||r.call(a,i),c=o("%Object.getOwnPropertyDescriptor%",!0),u=o("%Object.defineProperty%",!0),s=o("%Math.max%");if(u)try{u({},"a",{value:1})}catch(e){u=null}e.exports=function(e){var n=l(r,a,arguments);if(c&&u){var t=c(n,"length");t.configurable&&u(n,"length",{value:1+s(0,e.length-(arguments.length-1))})}return n};var f=function(){return l(r,i,arguments)};u?u(e.exports,"apply",{value:f}):e.exports.apply=f},4184:(e,n)=>{var t; +/*! + Copyright (c) 2018 Jed Watson. + Licensed under the MIT License (MIT), see + http://jedwatson.github.io/classnames +*/!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e=[],n=0;n{"use strict";e.exports=function(e,n){var t=this,r=t.constructor;return t.options=Object.assign({storeInstancesGlobally:!0},n||{}),t.callbacks={},t.directMap={},t.sequenceLevels={},t.resetTimer=null,t.ignoreNextKeyup=!1,t.ignoreNextKeypress=!1,t.nextExpectedAction=!1,t.element=e,t.addEvents(),t.options.storeInstancesGlobally&&r.instances.push(t),t},e.exports.prototype.bind=t(2207),e.exports.prototype.bindMultiple=t(3396),e.exports.prototype.unbind=t(9208),e.exports.prototype.trigger=t(9855),e.exports.prototype.reset=t(6214),e.exports.prototype.stopCallback=t(3450),e.exports.prototype.handleKey=t(3067),e.exports.prototype.addEvents=t(718),e.exports.prototype.bindSingle=t(8763),e.exports.prototype.getKeyInfo=t(5825),e.exports.prototype.pickBestAction=t(8608),e.exports.prototype.getReverseMap=t(3956),e.exports.prototype.getMatches=t(3373),e.exports.prototype.resetSequences=t(3346),e.exports.prototype.fireCallback=t(2684),e.exports.prototype.bindSequence=t(7103),e.exports.prototype.resetSequenceTimer=t(7309),e.exports.prototype.detach=t(7554),e.exports.instances=[],e.exports.reset=t(1822),e.exports.REVERSE_MAP=null},718:(e,n,t)=>{"use strict";e.exports=function(){var e=this,n=t(4323),r=e.element;e.eventHandler=t(9646).bind(e),n(r,"keypress",e.eventHandler),n(r,"keydown",e.eventHandler),n(r,"keyup",e.eventHandler)}},2207:e=>{"use strict";e.exports=function(e,n,t){return e=e instanceof Array?e:[e],this.bindMultiple(e,n,t),this}},3396:e=>{"use strict";e.exports=function(e,n,t){for(var r=0;r{"use strict";e.exports=function(e,n,r,o){var i=this;function a(n){return function(){i.nextExpectedAction=n,++i.sequenceLevels[e],i.resetSequenceTimer()}}function l(n){var a;i.fireCallback(r,n,e),"keyup"!==o&&(a=t(6770),i.ignoreNextKeyup=a(n)),setTimeout((function(){i.resetSequences()}),10)}i.sequenceLevels[e]=0;for(var c=0;c{"use strict";e.exports=function(e,n,t,r,o){var i=this;i.directMap[e+":"+t]=n;var a,l=(e=e.replace(/\s+/g," ")).split(" ");l.length>1?i.bindSequence(e,l,n,t):(a=i.getKeyInfo(e,t),i.callbacks[a.key]=i.callbacks[a.key]||[],i.getMatches(a.key,a.modifiers,{type:a.action},r,e,o),i.callbacks[a.key][r?"unshift":"push"]({callback:n,modifiers:a.modifiers,action:a.action,seq:r,level:o,combo:e}))}},7554:(e,n,t)=>{var r=t(4323).off;e.exports=function(){var e=this,n=e.element;r(n,"keypress",e.eventHandler),r(n,"keydown",e.eventHandler),r(n,"keyup",e.eventHandler)}},4323:e=>{function n(e,n,t,r){return!e.addEventListener&&(n="on"+n),(e.addEventListener||e.attachEvent).call(e,n,t,r),t}e.exports=n,e.exports.on=n,e.exports.off=function(e,n,t,r){return!e.removeEventListener&&(n="on"+n),(e.removeEventListener||e.detachEvent).call(e,n,t,r),t}},2684:(e,n,t)=>{"use strict";e.exports=function(e,n,r,o){this.stopCallback(n,n.target||n.srcElement,r,o)||!1===e(n,r)&&(t(1350)(n),t(6103)(n))}},5825:(e,n,t)=>{"use strict";e.exports=function(e,n){var r,o,i,a,l,c,u=[];for(r=t(4520)(e),a=t(7549),l=t(5355),c=t(8581),i=0;i{"use strict";e.exports=function(e,n,r,o,i,a){var l,c,u,s,f=this,p=[],d=r.type;"keypress"!==d||r.code&&"Arrow"===r.code.slice(0,5)||(f.callbacks["any-character"]||[]).forEach((function(e){p.push(e)}));if(!f.callbacks[e])return p;for(u=t(8581),"keyup"===d&&u(e)&&(n=[e]),l=0;l{"use strict";e.exports=function(){var e,n=this.constructor;if(!n.REVERSE_MAP)for(var r in n.REVERSE_MAP={},e=t(4766))r>95&&r<112||e.hasOwnProperty(r)&&(n.REVERSE_MAP[e[r]]=r);return n.REVERSE_MAP}},3067:(e,n,t)=>{"use strict";e.exports=function(e,n,r){var o,i,a,l,c=this,u={},s=0,f=!1;for(o=c.getMatches(e,n,r),i=0;i{"use strict";e.exports=function(e){var n,r=this;"number"!=typeof e.which&&(e.which=e.keyCode);var o=t(6770)(e);void 0!==o&&("keyup"!==e.type||r.ignoreNextKeyup!==o?(n=t(4610),r.handleKey(o,n(e),e)):r.ignoreNextKeyup=!1)}},5532:e=>{"use strict";e.exports=function(e,n){return e.sort().join(",")===n.sort().join(",")}},8608:e=>{"use strict";e.exports=function(e,n,t){return t||(t=this.getReverseMap()[e]?"keydown":"keypress"),"keypress"===t&&n.length&&(t="keydown"),t}},6214:e=>{"use strict";e.exports=function(){return this.callbacks={},this.directMap={},this}},7309:e=>{"use strict";e.exports=function(){var e=this;clearTimeout(e.resetTimer),e.resetTimer=setTimeout((function(){e.resetSequences()}),1e3)}},3346:e=>{"use strict";e.exports=function(e){var n=this;e=e||{};var t,r=!1;for(t in n.sequenceLevels)e[t]?r=!0:n.sequenceLevels[t]=0;r||(n.nextExpectedAction=!1)}},3450:e=>{"use strict";e.exports=function(e,n){if((" "+n.className+" ").indexOf(" combokeys ")>-1)return!1;var t=n.tagName.toLowerCase();return"input"===t||"select"===t||"textarea"===t||n.isContentEditable}},9855:e=>{"use strict";e.exports=function(e,n){return this.directMap[e+":"+n]&&this.directMap[e+":"+n]({},e),this}},9208:e=>{"use strict";e.exports=function(e,n){return this.bind(e,(function(){}),n)}},1822:e=>{"use strict";e.exports=function(){this.instances.forEach((function(e){e.reset()}))}},6770:(e,n,t)=>{"use strict";e.exports=function(e){var n,r;if(n=t(4766),r=t(5295),"keypress"===e.type){var o=String.fromCharCode(e.which);return e.shiftKey||(o=o.toLowerCase()),o}return void 0!==n[e.which]?n[e.which]:void 0!==r[e.which]?r[e.which]:String.fromCharCode(e.which).toLowerCase()}},4610:e=>{"use strict";e.exports=function(e){var n=[];return e.shiftKey&&n.push("shift"),e.altKey&&n.push("alt"),e.ctrlKey&&n.push("ctrl"),e.metaKey&&n.push("meta"),n}},8581:e=>{"use strict";e.exports=function(e){return"shift"===e||"ctrl"===e||"alt"===e||"meta"===e}},4520:e=>{"use strict";e.exports=function(e){return"+"===e?["+"]:e.split("+")}},1350:e=>{"use strict";e.exports=function(e){e.preventDefault?e.preventDefault():e.returnValue=!1}},5355:e=>{"use strict";e.exports={"~":"`","!":"1","@":"2","#":"3",$:"4","%":"5","^":"6","&":"7","*":"8","(":"9",")":"0",_:"-","+":"=",":":";",'"':"'","<":",",">":".","?":"/","|":"\\"}},7549:e=>{"use strict";e.exports={option:"alt",command:"meta",return:"enter",escape:"esc",mod:/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"meta":"ctrl"}},5295:e=>{"use strict";e.exports={106:"*",107:"plus",109:"minus",110:".",111:"/",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"}},4766:e=>{"use strict";e.exports={8:"backspace",9:"tab",13:"enter",16:"shift",17:"ctrl",18:"alt",20:"capslock",27:"esc",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"ins",46:"del",91:"meta",93:"meta",173:"minus",187:"plus",189:"minus",224:"meta"};for(var n=1;n<20;++n)e.exports[111+n]="f"+n;for(n=0;n<=9;++n)e.exports[n+96]=n},6103:e=>{"use strict";e.exports=function(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}},3362:()=>{var e;!function(){var e=Math.PI,n=2*e,t=e/180,r=document.createElement("div");document.head.appendChild(r);var o=self.ConicGradient=function(e){o.all.push(this),e=e||{},this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d"),this.repeating=!!e.repeating,this.size=e.size||Math.max(innerWidth,innerHeight),this.canvas.width=this.canvas.height=this.size;var n=e.stops;this.stops=(n||"").split(/\s*,(?![^(]*\))\s*/),this.from=0;for(var t=0;t0){var i=this.stops[0].clone();i.pos=0,this.stops.unshift(i)}if(void 0===this.stops[this.stops.length-1].pos)this.stops[this.stops.length-1].pos=1;else if(!this.repeating&&this.stops[this.stops.length-1].pos<1){var a=this.stops[this.stops.length-1].clone();a.pos=1,this.stops.push(a)}if(this.stops.forEach((function(e,n){if(void 0===e.pos){for(var t=n+1;this[t];t++)if(void 0!==this[t].pos){e.pos=this[n-1].pos+(this[t].pos-this[n-1].pos)/(t-n+1);break}}else n>0&&(e.pos=Math.max(e.pos,this[n-1].pos))}),this.stops),this.repeating){var l=(n=this.stops.slice())[n.length-1].pos-n[0].pos;for(t=0;this.stops[this.stops.length-1].pos<1&&t<1e4;t++)for(var c=0;c'},get png(){return this.canvas.toDataURL()},get r(){return Math.sqrt(2)*this.size/2},paint:function(){var e,n,r,o=this.context,i=this.r,a=this.size/2,l=0,c=this.stops[l];o.translate(this.size/2,this.size/2),o.rotate(-90*t),o.rotate(this.from*t),o.translate(-this.size/2,-this.size/2);for(var u=0;u<360;){if(u/360+1e-5>=c.pos){do{e=c,l++,c=this.stops[l]}while(c&&c!=e&&c.pos===e.pos);if(!c)break;var s=e.color+""==c.color+""&&e!=c;n=e.color.map((function(e,n){return c.color[n]-e}))}r=(u/360-e.pos)/(c.pos-e.pos);var f=s?c.color:n.map((function(n,t){var o=n*r+e.color[t];return t<3?255&o:o}));if(o.fillStyle="rgba("+f.join(",")+")",o.beginPath(),o.moveTo(a,a),s)var p=360*(c.pos-e.pos);else p=.5;var d=u*t,h=(d=Math.min(360*t,d))+p*t;h=Math.min(360*t,h+.02),o.arc(a,a,i,d,h),o.closePath(),o.fill(),u+=p}}},o.ColorStop=function(e,t){if(this.gradient=e,t){var r=t.match(/^(.+?)(?:\s+([\d.]+)(%|deg|turn|grad|rad)?)?(?:\s+([\d.]+)(%|deg|turn|grad|rad)?)?\s*$/);if(this.color=o.ColorStop.colorToRGBA(r[1]),r[2]){var i=r[3];"%"==i||"0"===r[2]&&!i?this.pos=r[2]/100:"turn"==i?this.pos=+r[2]:"deg"==i?this.pos=r[2]/360:"grad"==i?this.pos=r[2]/400:"rad"==i&&(this.pos=r[2]/n)}r[4]&&(this.next=new o.ColorStop(e,r[1]+" "+r[4]+r[5]))}},o.ColorStop.prototype={clone:function(){var e=new o.ColorStop(this.gradient);return e.color=this.color,e.pos=this.pos,e},toString:function(){return"rgba("+this.color.join(", ")+") "+100*this.pos+"%"}},o.ColorStop.colorToRGBA=function(e){if(!Array.isArray(e)&&-1==e.indexOf("from")){r.style.color=e;var n=getComputedStyle(r).color.match(/rgba?\(([\d.]+), ([\d.]+), ([\d.]+)(?:, ([\d.]+))?\)/);return n&&(n.shift(),(n=n.map((function(e){return+e})))[3]=isNaN(n[3])?1:n[3]),n||[0,0,0,0]}return e}}(),self.StyleFix&&((e=document.createElement("p")).style.backgroundImage="conic-gradient(white, black)",e.style.backgroundImage=PrefixFree.prefix+"conic-gradient(white, black)",e.style.backgroundImage||StyleFix.register((function(e,n){return e.indexOf("conic-gradient")>-1&&(e=e.replace(/(?:repeating-)?conic-gradient\(\s*((?:\([^()]+\)|[^;()}])+?)\)/g,(function(e,n){return new ConicGradient({stops:n,repeating:e.indexOf("repeating-")>-1})}))),e})))},9662:(e,n,t)=>{var r=t(7854),o=t(614),i=t(6330),a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not a function")}},9483:(e,n,t)=>{var r=t(7854),o=t(4411),i=t(6330),a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not a constructor")}},6077:(e,n,t)=>{var r=t(7854),o=t(614),i=r.String,a=r.TypeError;e.exports=function(e){if("object"==typeof e||o(e))return e;throw a("Can't set "+i(e)+" as a prototype")}},1223:(e,n,t)=>{var r=t(5112),o=t(30),i=t(3070),a=r("unscopables"),l=Array.prototype;null==l[a]&&i.f(l,a,{configurable:!0,value:o(null)}),e.exports=function(e){l[a][e]=!0}},1530:(e,n,t)=>{"use strict";var r=t(8710).charAt;e.exports=function(e,n,t){return n+(t?r(e,n).length:1)}},5787:(e,n,t)=>{var r=t(7854),o=t(7976),i=r.TypeError;e.exports=function(e,n){if(o(n,e))return e;throw i("Incorrect invocation")}},9670:(e,n,t)=>{var r=t(7854),o=t(111),i=r.String,a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not an object")}},7556:(e,n,t)=>{var r=t(7293);e.exports=r((function(){if("function"==typeof ArrayBuffer){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}))},8533:(e,n,t)=>{"use strict";var r=t(2092).forEach,o=t(9341)("forEach");e.exports=o?[].forEach:function(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}},8457:(e,n,t)=>{"use strict";var r=t(7854),o=t(9974),i=t(6916),a=t(7908),l=t(3411),c=t(7659),u=t(4411),s=t(6244),f=t(6135),p=t(8554),d=t(1246),h=r.Array;e.exports=function(e){var n=a(e),t=u(this),r=arguments.length,g=r>1?arguments[1]:void 0,v=void 0!==g;v&&(g=o(g,r>2?arguments[2]:void 0));var A,b,m,y,E,_,C=d(n),w=0;if(!C||this==h&&c(C))for(A=s(n),b=t?new this(A):h(A);A>w;w++)_=v?g(n[w],w):n[w],f(b,w,_);else for(E=(y=p(n,C)).next,b=t?new this:[];!(m=i(E,y)).done;w++)_=v?l(y,g,[m.value,w],!0):m.value,f(b,w,_);return b.length=w,b}},1318:(e,n,t)=>{var r=t(5656),o=t(1400),i=t(6244),a=function(e){return function(n,t,a){var l,c=r(n),u=i(c),s=o(a,u);if(e&&t!=t){for(;u>s;)if((l=c[s++])!=l)return!0}else for(;u>s;s++)if((e||s in c)&&c[s]===t)return e||s||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},2092:(e,n,t)=>{var r=t(9974),o=t(1702),i=t(8361),a=t(7908),l=t(6244),c=t(5417),u=o([].push),s=function(e){var n=1==e,t=2==e,o=3==e,s=4==e,f=6==e,p=7==e,d=5==e||f;return function(h,g,v,A){for(var b,m,y=a(h),E=i(y),_=r(g,v),C=l(E),w=0,x=A||c,k=n?x(h,C):t||p?x(h,0):void 0;C>w;w++)if((d||w in E)&&(m=_(b=E[w],w,y),e))if(n)k[w]=m;else if(m)switch(e){case 3:return!0;case 5:return b;case 6:return w;case 2:u(k,b)}else switch(e){case 4:return!1;case 7:u(k,b)}return f?-1:o||s?s:k}};e.exports={forEach:s(0),map:s(1),filter:s(2),some:s(3),every:s(4),find:s(5),findIndex:s(6),filterReject:s(7)}},1194:(e,n,t)=>{var r=t(7293),o=t(5112),i=t(7392),a=o("species");e.exports=function(e){return i>=51||!r((function(){var n=[];return(n.constructor={})[a]=function(){return{foo:1}},1!==n[e](Boolean).foo}))}},9341:(e,n,t)=>{"use strict";var r=t(7293);e.exports=function(e,n){var t=[][e];return!!t&&r((function(){t.call(null,n||function(){throw 1},1)}))}},3671:(e,n,t)=>{var r=t(7854),o=t(9662),i=t(7908),a=t(8361),l=t(6244),c=r.TypeError,u=function(e){return function(n,t,r,u){o(t);var s=i(n),f=a(s),p=l(s),d=e?p-1:0,h=e?-1:1;if(r<2)for(;;){if(d in f){u=f[d],d+=h;break}if(d+=h,e?d<0:p<=d)throw c("Reduce of empty array with no initial value")}for(;e?d>=0:p>d;d+=h)d in f&&(u=t(u,f[d],d,s));return u}};e.exports={left:u(!1),right:u(!0)}},206:(e,n,t)=>{var r=t(1702);e.exports=r([].slice)},4362:(e,n,t)=>{var r=t(206),o=Math.floor,i=function(e,n){var t=e.length,c=o(t/2);return t<8?a(e,n):l(e,i(r(e,0,c),n),i(r(e,c),n),n)},a=function(e,n){for(var t,r,o=e.length,i=1;i0;)e[r]=e[--r];r!==i++&&(e[r]=t)}return e},l=function(e,n,t,r){for(var o=n.length,i=t.length,a=0,l=0;a{var r=t(7854),o=t(3157),i=t(4411),a=t(111),l=t(5112)("species"),c=r.Array;e.exports=function(e){var n;return o(e)&&(n=e.constructor,(i(n)&&(n===c||o(n.prototype))||a(n)&&null===(n=n[l]))&&(n=void 0)),void 0===n?c:n}},5417:(e,n,t)=>{var r=t(7475);e.exports=function(e,n){return new(r(e))(0===n?0:n)}},3411:(e,n,t)=>{var r=t(9670),o=t(9212);e.exports=function(e,n,t,i){try{return i?n(r(t)[0],t[1]):n(t)}catch(n){o(e,"throw",n)}}},7072:(e,n,t)=>{var r=t(5112)("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(e){}e.exports=function(e,n){if(!n&&!o)return!1;var t=!1;try{var i={};i[r]=function(){return{next:function(){return{done:t=!0}}}},e(i)}catch(e){}return t}},4326:(e,n,t)=>{var r=t(1702),o=r({}.toString),i=r("".slice);e.exports=function(e){return i(o(e),8,-1)}},648:(e,n,t)=>{var r=t(7854),o=t(1694),i=t(614),a=t(4326),l=t(5112)("toStringTag"),c=r.Object,u="Arguments"==a(function(){return arguments}());e.exports=o?a:function(e){var n,t,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(t=function(e,n){try{return e[n]}catch(e){}}(n=c(e),l))?t:u?a(n):"Object"==(r=a(n))&&i(n.callee)?"Arguments":r}},5631:(e,n,t)=>{"use strict";var r=t(3070).f,o=t(30),i=t(2248),a=t(9974),l=t(5787),c=t(408),u=t(654),s=t(6340),f=t(9781),p=t(2423).fastKey,d=t(9909),h=d.set,g=d.getterFor;e.exports={getConstructor:function(e,n,t,u){var s=e((function(e,r){l(e,d),h(e,{type:n,index:o(null),first:void 0,last:void 0,size:0}),f||(e.size=0),null!=r&&c(r,e[u],{that:e,AS_ENTRIES:t})})),d=s.prototype,v=g(n),A=function(e,n,t){var r,o,i=v(e),a=b(e,n);return a?a.value=t:(i.last=a={index:o=p(n,!0),key:n,value:t,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),f?i.size++:e.size++,"F"!==o&&(i.index[o]=a)),e},b=function(e,n){var t,r=v(e),o=p(n);if("F"!==o)return r.index[o];for(t=r.first;t;t=t.next)if(t.key==n)return t};return i(d,{clear:function(){for(var e=v(this),n=e.index,t=e.first;t;)t.removed=!0,t.previous&&(t.previous=t.previous.next=void 0),delete n[t.index],t=t.next;e.first=e.last=void 0,f?e.size=0:this.size=0},delete:function(e){var n=this,t=v(n),r=b(n,e);if(r){var o=r.next,i=r.previous;delete t.index[r.index],r.removed=!0,i&&(i.next=o),o&&(o.previous=i),t.first==r&&(t.first=o),t.last==r&&(t.last=i),f?t.size--:n.size--}return!!r},forEach:function(e){for(var n,t=v(this),r=a(e,arguments.length>1?arguments[1]:void 0);n=n?n.next:t.first;)for(r(n.value,n.key,this);n&&n.removed;)n=n.previous},has:function(e){return!!b(this,e)}}),i(d,t?{get:function(e){var n=b(this,e);return n&&n.value},set:function(e,n){return A(this,0===e?0:e,n)}}:{add:function(e){return A(this,e=0===e?0:e,e)}}),f&&r(d,"size",{get:function(){return v(this).size}}),s},setStrong:function(e,n,t){var r=n+" Iterator",o=g(n),i=g(r);u(e,n,(function(e,n){h(this,{type:r,target:e,state:o(e),kind:n,last:void 0})}),(function(){for(var e=i(this),n=e.kind,t=e.last;t&&t.removed;)t=t.previous;return e.target&&(e.last=t=t?t.next:e.state.first)?"keys"==n?{value:t.key,done:!1}:"values"==n?{value:t.value,done:!1}:{value:[t.key,t.value],done:!1}:(e.target=void 0,{value:void 0,done:!0})}),t?"entries":"values",!t,!0),s(n)}}},9320:(e,n,t)=>{"use strict";var r=t(1702),o=t(2248),i=t(2423).getWeakData,a=t(9670),l=t(111),c=t(5787),u=t(408),s=t(2092),f=t(2597),p=t(9909),d=p.set,h=p.getterFor,g=s.find,v=s.findIndex,A=r([].splice),b=0,m=function(e){return e.frozen||(e.frozen=new y)},y=function(){this.entries=[]},E=function(e,n){return g(e.entries,(function(e){return e[0]===n}))};y.prototype={get:function(e){var n=E(this,e);if(n)return n[1]},has:function(e){return!!E(this,e)},set:function(e,n){var t=E(this,e);t?t[1]=n:this.entries.push([e,n])},delete:function(e){var n=v(this.entries,(function(n){return n[0]===e}));return~n&&A(this.entries,n,1),!!~n}},e.exports={getConstructor:function(e,n,t,r){var s=e((function(e,o){c(e,p),d(e,{type:n,id:b++,frozen:void 0}),null!=o&&u(o,e[r],{that:e,AS_ENTRIES:t})})),p=s.prototype,g=h(n),v=function(e,n,t){var r=g(e),o=i(a(n),!0);return!0===o?m(r).set(n,t):o[r.id]=t,e};return o(p,{delete:function(e){var n=g(this);if(!l(e))return!1;var t=i(e);return!0===t?m(n).delete(e):t&&f(t,n.id)&&delete t[n.id]},has:function(e){var n=g(this);if(!l(e))return!1;var t=i(e);return!0===t?m(n).has(e):t&&f(t,n.id)}}),o(p,t?{get:function(e){var n=g(this);if(l(e)){var t=i(e);return!0===t?m(n).get(e):t?t[n.id]:void 0}},set:function(e,n){return v(this,e,n)}}:{add:function(e){return v(this,e,!0)}}),s}}},7710:(e,n,t)=>{"use strict";var r=t(2109),o=t(7854),i=t(1702),a=t(4705),l=t(1320),c=t(2423),u=t(408),s=t(5787),f=t(614),p=t(111),d=t(7293),h=t(7072),g=t(8003),v=t(9587);e.exports=function(e,n,t){var A=-1!==e.indexOf("Map"),b=-1!==e.indexOf("Weak"),m=A?"set":"add",y=o[e],E=y&&y.prototype,_=y,C={},w=function(e){var n=i(E[e]);l(E,e,"add"==e?function(e){return n(this,0===e?0:e),this}:"delete"==e?function(e){return!(b&&!p(e))&&n(this,0===e?0:e)}:"get"==e?function(e){return b&&!p(e)?void 0:n(this,0===e?0:e)}:"has"==e?function(e){return!(b&&!p(e))&&n(this,0===e?0:e)}:function(e,t){return n(this,0===e?0:e,t),this})};if(a(e,!f(y)||!(b||E.forEach&&!d((function(){(new y).entries().next()})))))_=t.getConstructor(n,e,A,m),c.enable();else if(a(e,!0)){var x=new _,k=x[m](b?{}:-0,1)!=x,S=d((function(){x.has(1)})),O=h((function(e){new y(e)})),B=!b&&d((function(){for(var e=new y,n=5;n--;)e[m](n,n);return!e.has(-0)}));O||((_=n((function(e,n){s(e,E);var t=v(new y,e,_);return null!=n&&u(n,t[m],{that:t,AS_ENTRIES:A}),t}))).prototype=E,E.constructor=_),(S||B)&&(w("delete"),w("has"),A&&w("get")),(B||k)&&w(m),b&&E.clear&&delete E.clear}return C[e]=_,r({global:!0,forced:_!=y},C),g(_,e),b||t.setStrong(_,e,A),_}},9920:(e,n,t)=>{var r=t(2597),o=t(3887),i=t(1236),a=t(3070);e.exports=function(e,n){for(var t=o(n),l=a.f,c=i.f,u=0;u{var r=t(5112)("match");e.exports=function(e){var n=/./;try{"/./"[e](n)}catch(t){try{return n[r]=!1,"/./"[e](n)}catch(e){}}return!1}},8544:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},4230:(e,n,t)=>{var r=t(1702),o=t(4488),i=t(1340),a=/"/g,l=r("".replace);e.exports=function(e,n,t,r){var c=i(o(e)),u="<"+n;return""!==t&&(u+=" "+t+'="'+l(i(r),a,""")+'"'),u+">"+c+""}},4994:(e,n,t)=>{"use strict";var r=t(3383).IteratorPrototype,o=t(30),i=t(9114),a=t(8003),l=t(7497),c=function(){return this};e.exports=function(e,n,t){var u=n+" Iterator";return e.prototype=o(r,{next:i(1,t)}),a(e,u,!1,!0),l[u]=c,e}},8880:(e,n,t)=>{var r=t(9781),o=t(3070),i=t(9114);e.exports=r?function(e,n,t){return o.f(e,n,i(1,t))}:function(e,n,t){return e[n]=t,e}},9114:e=>{e.exports=function(e,n){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:n}}},6135:(e,n,t)=>{"use strict";var r=t(4948),o=t(3070),i=t(9114);e.exports=function(e,n,t){var a=r(n);a in e?o.f(e,a,i(0,t)):e[a]=t}},8709:(e,n,t)=>{"use strict";var r=t(7854),o=t(9670),i=t(2140),a=r.TypeError;e.exports=function(e){if(o(this),"string"===e||"default"===e)e="string";else if("number"!==e)throw a("Incorrect hint");return i(this,e)}},654:(e,n,t)=>{"use strict";var r=t(2109),o=t(6916),i=t(1913),a=t(6530),l=t(614),c=t(4994),u=t(9518),s=t(7674),f=t(8003),p=t(8880),d=t(1320),h=t(5112),g=t(7497),v=t(3383),A=a.PROPER,b=a.CONFIGURABLE,m=v.IteratorPrototype,y=v.BUGGY_SAFARI_ITERATORS,E=h("iterator"),_="keys",C="values",w="entries",x=function(){return this};e.exports=function(e,n,t,a,h,v,k){c(t,n,a);var S,O,B,I=function(e){if(e===h&&R)return R;if(!y&&e in j)return j[e];switch(e){case _:case C:case w:return function(){return new t(this,e)}}return function(){return new t(this)}},T=n+" Iterator",P=!1,j=e.prototype,z=j[E]||j["@@iterator"]||h&&j[h],R=!y&&z||I(h),M="Array"==n&&j.entries||z;if(M&&(S=u(M.call(new e)))!==Object.prototype&&S.next&&(i||u(S)===m||(s?s(S,m):l(S[E])||d(S,E,x)),f(S,T,!0,!0),i&&(g[T]=x)),A&&h==C&&z&&z.name!==C&&(!i&&b?p(j,"name",C):(P=!0,R=function(){return o(z,this)})),h)if(O={values:I(C),keys:v?R:I(_),entries:I(w)},k)for(B in O)(y||P||!(B in j))&&d(j,B,O[B]);else r({target:n,proto:!0,forced:y||P},O);return i&&!k||j[E]===R||d(j,E,R,{name:h}),g[n]=R,O}},7235:(e,n,t)=>{var r=t(857),o=t(2597),i=t(6061),a=t(3070).f;e.exports=function(e){var n=r.Symbol||(r.Symbol={});o(n,e)||a(n,e,{value:i.f(e)})}},9781:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},317:(e,n,t)=>{var r=t(7854),o=t(111),i=r.document,a=o(i)&&o(i.createElement);e.exports=function(e){return a?i.createElement(e):{}}},8324:e=>{e.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},8509:(e,n,t)=>{var r=t(317)("span").classList,o=r&&r.constructor&&r.constructor.prototype;e.exports=o===Object.prototype?void 0:o},8886:(e,n,t)=>{var r=t(8113).match(/firefox\/(\d+)/i);e.exports=!!r&&+r[1]},256:(e,n,t)=>{var r=t(8113);e.exports=/MSIE|Trident/.test(r)},5268:(e,n,t)=>{var r=t(4326),o=t(7854);e.exports="process"==r(o.process)},8113:(e,n,t)=>{var r=t(5005);e.exports=r("navigator","userAgent")||""},7392:(e,n,t)=>{var r,o,i=t(7854),a=t(8113),l=i.process,c=i.Deno,u=l&&l.versions||c&&c.version,s=u&&u.v8;s&&(o=(r=s.split("."))[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=+r[1]),e.exports=o},8008:(e,n,t)=>{var r=t(8113).match(/AppleWebKit\/(\d+)\./);e.exports=!!r&&+r[1]},748:e=>{e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},2109:(e,n,t)=>{var r=t(7854),o=t(1236).f,i=t(8880),a=t(1320),l=t(3505),c=t(9920),u=t(4705);e.exports=function(e,n){var t,s,f,p,d,h=e.target,g=e.global,v=e.stat;if(t=g?r:v?r[h]||l(h,{}):(r[h]||{}).prototype)for(s in n){if(p=n[s],f=e.noTargetGet?(d=o(t,s))&&d.value:t[s],!u(g?s:h+(v?".":"#")+s,e.forced)&&void 0!==f){if(typeof p==typeof f)continue;c(p,f)}(e.sham||f&&f.sham)&&i(p,"sham",!0),a(t,s,p,e)}}},7293:e=>{e.exports=function(e){try{return!!e()}catch(e){return!0}}},7007:(e,n,t)=>{"use strict";t(4916);var r=t(1702),o=t(1320),i=t(2261),a=t(7293),l=t(5112),c=t(8880),u=l("species"),s=RegExp.prototype;e.exports=function(e,n,t,f){var p=l(e),d=!a((function(){var n={};return n[p]=function(){return 7},7!=""[e](n)})),h=d&&!a((function(){var n=!1,t=/a/;return"split"===e&&((t={}).constructor={},t.constructor[u]=function(){return t},t.flags="",t[p]=/./[p]),t.exec=function(){return n=!0,null},t[p](""),!n}));if(!d||!h||t){var g=r(/./[p]),v=n(p,""[e],(function(e,n,t,o,a){var l=r(e),c=n.exec;return c===i||c===s.exec?d&&!a?{done:!0,value:g(n,t,o)}:{done:!0,value:l(t,n,o)}:{done:!1}}));o(String.prototype,e,v[0]),o(s,p,v[1])}f&&c(s[p],"sham",!0)}},6677:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){return Object.isExtensible(Object.preventExtensions({}))}))},2104:e=>{var n=Function.prototype,t=n.apply,r=n.bind,o=n.call;e.exports="object"==typeof Reflect&&Reflect.apply||(r?o.bind(t):function(){return o.apply(t,arguments)})},9974:(e,n,t)=>{var r=t(1702),o=t(9662),i=r(r.bind);e.exports=function(e,n){return o(e),void 0===n?e:i?i(e,n):function(){return e.apply(n,arguments)}}},7065:(e,n,t)=>{"use strict";var r=t(7854),o=t(1702),i=t(9662),a=t(111),l=t(2597),c=t(206),u=r.Function,s=o([].concat),f=o([].join),p={},d=function(e,n,t){if(!l(p,n)){for(var r=[],o=0;o{var n=Function.prototype.call;e.exports=n.bind?n.bind(n):function(){return n.apply(n,arguments)}},6530:(e,n,t)=>{var r=t(9781),o=t(2597),i=Function.prototype,a=r&&Object.getOwnPropertyDescriptor,l=o(i,"name"),c=l&&"something"===function(){}.name,u=l&&(!r||r&&a(i,"name").configurable);e.exports={EXISTS:l,PROPER:c,CONFIGURABLE:u}},1702:e=>{var n=Function.prototype,t=n.bind,r=n.call,o=t&&t.bind(r);e.exports=t?function(e){return e&&o(r,e)}:function(e){return e&&function(){return r.apply(e,arguments)}}},5005:(e,n,t)=>{var r=t(7854),o=t(614),i=function(e){return o(e)?e:void 0};e.exports=function(e,n){return arguments.length<2?i(r[e]):r[e]&&r[e][n]}},1246:(e,n,t)=>{var r=t(648),o=t(8173),i=t(7497),a=t(5112)("iterator");e.exports=function(e){if(null!=e)return o(e,a)||o(e,"@@iterator")||i[r(e)]}},8554:(e,n,t)=>{var r=t(7854),o=t(6916),i=t(9662),a=t(9670),l=t(6330),c=t(1246),u=r.TypeError;e.exports=function(e,n){var t=arguments.length<2?c(e):n;if(i(t))return a(o(t,e));throw u(l(e)+" is not iterable")}},8173:(e,n,t)=>{var r=t(9662);e.exports=function(e,n){var t=e[n];return null==t?void 0:r(t)}},647:(e,n,t)=>{var r=t(1702),o=t(7908),i=Math.floor,a=r("".charAt),l=r("".replace),c=r("".slice),u=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,s=/\$([$&'`]|\d{1,2})/g;e.exports=function(e,n,t,r,f,p){var d=t+e.length,h=r.length,g=s;return void 0!==f&&(f=o(f),g=u),l(p,g,(function(o,l){var u;switch(a(l,0)){case"$":return"$";case"&":return e;case"`":return c(n,0,t);case"'":return c(n,d);case"<":u=f[c(l,1,-1)];break;default:var s=+l;if(0===s)return o;if(s>h){var p=i(s/10);return 0===p?o:p<=h?void 0===r[p-1]?a(l,1):r[p-1]+a(l,1):o}u=r[s-1]}return void 0===u?"":u}))}},7854:(e,n,t)=>{var r=function(e){return e&&e.Math==Math&&e};e.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof t.g&&t.g)||function(){return this}()||Function("return this")()},2597:(e,n,t)=>{var r=t(1702),o=t(7908),i=r({}.hasOwnProperty);e.exports=Object.hasOwn||function(e,n){return i(o(e),n)}},3501:e=>{e.exports={}},490:(e,n,t)=>{var r=t(5005);e.exports=r("document","documentElement")},4664:(e,n,t)=>{var r=t(9781),o=t(7293),i=t(317);e.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},8361:(e,n,t)=>{var r=t(7854),o=t(1702),i=t(7293),a=t(4326),l=r.Object,c=o("".split);e.exports=i((function(){return!l("z").propertyIsEnumerable(0)}))?function(e){return"String"==a(e)?c(e,""):l(e)}:l},9587:(e,n,t)=>{var r=t(614),o=t(111),i=t(7674);e.exports=function(e,n,t){var a,l;return i&&r(a=n.constructor)&&a!==t&&o(l=a.prototype)&&l!==t.prototype&&i(e,l),e}},2788:(e,n,t)=>{var r=t(1702),o=t(614),i=t(5465),a=r(Function.toString);o(i.inspectSource)||(i.inspectSource=function(e){return a(e)}),e.exports=i.inspectSource},2423:(e,n,t)=>{var r=t(2109),o=t(1702),i=t(3501),a=t(111),l=t(2597),c=t(3070).f,u=t(8006),s=t(1156),f=t(2050),p=t(9711),d=t(6677),h=!1,g=p("meta"),v=0,A=function(e){c(e,g,{value:{objectID:"O"+v++,weakData:{}}})},b=e.exports={enable:function(){b.enable=function(){},h=!0;var e=u.f,n=o([].splice),t={};t[g]=1,e(t).length&&(u.f=function(t){for(var r=e(t),o=0,i=r.length;o{var r,o,i,a=t(8536),l=t(7854),c=t(1702),u=t(111),s=t(8880),f=t(2597),p=t(5465),d=t(6200),h=t(3501),g="Object already initialized",v=l.TypeError,A=l.WeakMap;if(a||p.state){var b=p.state||(p.state=new A),m=c(b.get),y=c(b.has),E=c(b.set);r=function(e,n){if(y(b,e))throw new v(g);return n.facade=e,E(b,e,n),n},o=function(e){return m(b,e)||{}},i=function(e){return y(b,e)}}else{var _=d("state");h[_]=!0,r=function(e,n){if(f(e,_))throw new v(g);return n.facade=e,s(e,_,n),n},o=function(e){return f(e,_)?e[_]:{}},i=function(e){return f(e,_)}}e.exports={set:r,get:o,has:i,enforce:function(e){return i(e)?o(e):r(e,{})},getterFor:function(e){return function(n){var t;if(!u(n)||(t=o(n)).type!==e)throw v("Incompatible receiver, "+e+" required");return t}}}},7659:(e,n,t)=>{var r=t(5112),o=t(7497),i=r("iterator"),a=Array.prototype;e.exports=function(e){return void 0!==e&&(o.Array===e||a[i]===e)}},3157:(e,n,t)=>{var r=t(4326);e.exports=Array.isArray||function(e){return"Array"==r(e)}},614:e=>{e.exports=function(e){return"function"==typeof e}},4411:(e,n,t)=>{var r=t(1702),o=t(7293),i=t(614),a=t(648),l=t(5005),c=t(2788),u=function(){},s=[],f=l("Reflect","construct"),p=/^\s*(?:class|function)\b/,d=r(p.exec),h=!p.exec(u),g=function(e){if(!i(e))return!1;try{return f(u,s,e),!0}catch(e){return!1}};e.exports=!f||o((function(){var e;return g(g.call)||!g(Object)||!g((function(){e=!0}))||e}))?function(e){if(!i(e))return!1;switch(a(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}return h||!!d(p,c(e))}:g},4705:(e,n,t)=>{var r=t(7293),o=t(614),i=/#|\.prototype\./,a=function(e,n){var t=c[l(e)];return t==s||t!=u&&(o(n)?r(n):!!n)},l=a.normalize=function(e){return String(e).replace(i,".").toLowerCase()},c=a.data={},u=a.NATIVE="N",s=a.POLYFILL="P";e.exports=a},111:(e,n,t)=>{var r=t(614);e.exports=function(e){return"object"==typeof e?null!==e:r(e)}},1913:e=>{e.exports=!1},7850:(e,n,t)=>{var r=t(111),o=t(4326),i=t(5112)("match");e.exports=function(e){var n;return r(e)&&(void 0!==(n=e[i])?!!n:"RegExp"==o(e))}},2190:(e,n,t)=>{var r=t(7854),o=t(5005),i=t(614),a=t(7976),l=t(3307),c=r.Object;e.exports=l?function(e){return"symbol"==typeof e}:function(e){var n=o("Symbol");return i(n)&&a(n.prototype,c(e))}},408:(e,n,t)=>{var r=t(7854),o=t(9974),i=t(6916),a=t(9670),l=t(6330),c=t(7659),u=t(6244),s=t(7976),f=t(8554),p=t(1246),d=t(9212),h=r.TypeError,g=function(e,n){this.stopped=e,this.result=n},v=g.prototype;e.exports=function(e,n,t){var r,A,b,m,y,E,_,C=t&&t.that,w=!(!t||!t.AS_ENTRIES),x=!(!t||!t.IS_ITERATOR),k=!(!t||!t.INTERRUPTED),S=o(n,C),O=function(e){return r&&d(r,"normal",e),new g(!0,e)},B=function(e){return w?(a(e),k?S(e[0],e[1],O):S(e[0],e[1])):k?S(e,O):S(e)};if(x)r=e;else{if(!(A=p(e)))throw h(l(e)+" is not iterable");if(c(A)){for(b=0,m=u(e);m>b;b++)if((y=B(e[b]))&&s(v,y))return y;return new g(!1)}r=f(e,A)}for(E=r.next;!(_=i(E,r)).done;){try{y=B(_.value)}catch(e){d(r,"throw",e)}if("object"==typeof y&&y&&s(v,y))return y}return new g(!1)}},9212:(e,n,t)=>{var r=t(6916),o=t(9670),i=t(8173);e.exports=function(e,n,t){var a,l;o(e);try{if(!(a=i(e,"return"))){if("throw"===n)throw t;return t}a=r(a,e)}catch(e){l=!0,a=e}if("throw"===n)throw t;if(l)throw a;return o(a),t}},3383:(e,n,t)=>{"use strict";var r,o,i,a=t(7293),l=t(614),c=t(30),u=t(9518),s=t(1320),f=t(5112),p=t(1913),d=f("iterator"),h=!1;[].keys&&("next"in(i=[].keys())?(o=u(u(i)))!==Object.prototype&&(r=o):h=!0),null==r||a((function(){var e={};return r[d].call(e)!==e}))?r={}:p&&(r=c(r)),l(r[d])||s(r,d,(function(){return this})),e.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:h}},7497:e=>{e.exports={}},6244:(e,n,t)=>{var r=t(7466);e.exports=function(e){return r(e.length)}},133:(e,n,t)=>{var r=t(7392),o=t(7293);e.exports=!!Object.getOwnPropertySymbols&&!o((function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},8536:(e,n,t)=>{var r=t(7854),o=t(614),i=t(2788),a=r.WeakMap;e.exports=o(a)&&/native code/.test(i(a))},3929:(e,n,t)=>{var r=t(7854),o=t(7850),i=r.TypeError;e.exports=function(e){if(o(e))throw i("The method doesn't accept regular expressions");return e}},1574:(e,n,t)=>{"use strict";var r=t(9781),o=t(1702),i=t(6916),a=t(7293),l=t(1956),c=t(5181),u=t(5296),s=t(7908),f=t(8361),p=Object.assign,d=Object.defineProperty,h=o([].concat);e.exports=!p||a((function(){if(r&&1!==p({b:1},p(d({},"a",{enumerable:!0,get:function(){d(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},n={},t=Symbol(),o="abcdefghijklmnopqrst";return e[t]=7,o.split("").forEach((function(e){n[e]=e})),7!=p({},e)[t]||l(p({},n)).join("")!=o}))?function(e,n){for(var t=s(e),o=arguments.length,a=1,p=c.f,d=u.f;o>a;)for(var g,v=f(arguments[a++]),A=p?h(l(v),p(v)):l(v),b=A.length,m=0;b>m;)g=A[m++],r&&!i(d,v,g)||(t[g]=v[g]);return t}:p},30:(e,n,t)=>{var r,o=t(9670),i=t(6048),a=t(748),l=t(3501),c=t(490),u=t(317),s=t(6200),f=s("IE_PROTO"),p=function(){},d=function(e){return" + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

ComposeView

+
+
@Hikageable
inline fun <LP : ViewGroup.LayoutParams> Hikage.Performer<LP>.ComposeView(lparams: Hikage.LayoutParams? = null, id: String? = null, init: HikageView<ComposeView> = {}, noinline content: @Composable () -> Unit? = null)

Composable in Hikage.

Usage:

Hikageable {
ComposeView(
lparams = LayoutParams(matchParent = true)
) {
Text("Hello, Compose in Hikage!")
}
}

See also

Hikage.Performer.View
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension-compose/hikage-extension-compose/com.highcapable.hikage.extension.androidx.compose/-hikage-view.html b/KDoc/hikage-extension-compose/hikage-extension-compose/com.highcapable.hikage.extension.androidx.compose/-hikage-view.html new file mode 100644 index 0000000..caed90c --- /dev/null +++ b/KDoc/hikage-extension-compose/hikage-extension-compose/com.highcapable.hikage.extension.androidx.compose/-hikage-view.html @@ -0,0 +1,80 @@ + + + + + HikageView + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

HikageView

+
+
fun HikageView(modifier: Modifier = Modifier, update: (View) -> Unit = {}, factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<ViewGroup.LayoutParams>)

Hikage in composable.

Usage:

Column(
modifier = Modifier.fillMaxSize()
) {
HikageView {
TextView(
lparams = LayoutParams(matchParent = true)
) {
text = "Hello, Hikage in Compose!"
textSize = 20f
}
}
}

See also


fun HikageView(delegate: Hikage.Delegate<*>, modifier: Modifier = Modifier, update: (View) -> Unit = {})

Hikage in composable.

Parameters

delegate

the Hikage.Delegate instance.

See also

+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension-compose/hikage-extension-compose/com.highcapable.hikage.extension.androidx.compose/index.html b/KDoc/hikage-extension-compose/hikage-extension-compose/com.highcapable.hikage.extension.androidx.compose/index.html new file mode 100644 index 0000000..f3f1577 --- /dev/null +++ b/KDoc/hikage-extension-compose/hikage-extension-compose/com.highcapable.hikage.extension.androidx.compose/index.html @@ -0,0 +1,118 @@ + + + + + com.highcapable.hikage.extension.androidx.compose + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Package-level declarations

+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
@Hikageable
inline fun <LP : ViewGroup.LayoutParams> Hikage.Performer<LP>.ComposeView(lparams: Hikage.LayoutParams? = null, id: String? = null, init: HikageView<ComposeView> = {}, noinline content: @Composable () -> Unit? = null)

Composable in Hikage.

+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun HikageView(delegate: Hikage.Delegate<*>, modifier: Modifier = Modifier, update: (View) -> Unit = {})
fun HikageView(modifier: Modifier = Modifier, update: (View) -> Unit = {}, factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<ViewGroup.LayoutParams>)

Hikage in composable.

+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension-compose/hikage-extension-compose/package-list b/KDoc/hikage-extension-compose/hikage-extension-compose/package-list new file mode 100644 index 0000000..9e53fe0 --- /dev/null +++ b/KDoc/hikage-extension-compose/hikage-extension-compose/package-list @@ -0,0 +1,8 @@ +$dokka.format:html-v1 +$dokka.linkExtension:html +$dokka.location:com.highcapable.hikage.extension.androidx.compose////PointingToDeclaration/hikage-extension-compose/com.highcapable.hikage.extension.androidx.compose/index.html +$dokka.location:com.highcapable.hikage.extension.androidx.compose//ComposeView/com.highcapable.hikage.core.Hikage.Performer[TypeParam(bounds=[android.view.ViewGroup.LayoutParams])]#com.highcapable.hikage.core.Hikage.LayoutParams?#kotlin.String?#kotlin.Function1[androidx.compose.ui.platform.ComposeView,kotlin.Unit]#kotlin.Function0[kotlin.Unit]?/PointingToDeclaration/hikage-extension-compose/com.highcapable.hikage.extension.androidx.compose/-compose-view.html +$dokka.location:com.highcapable.hikage.extension.androidx.compose//HikageView/#androidx.compose.ui.Modifier#kotlin.Function1[android.view.View,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.view.ViewGroup.LayoutParams],kotlin.Unit]/PointingToDeclaration/hikage-extension-compose/com.highcapable.hikage.extension.androidx.compose/-hikage-view.html +$dokka.location:com.highcapable.hikage.extension.androidx.compose//HikageView/#com.highcapable.hikage.core.Hikage.Delegate[*]#androidx.compose.ui.Modifier#kotlin.Function1[android.view.View,kotlin.Unit]/PointingToDeclaration/hikage-extension-compose/com.highcapable.hikage.extension.androidx.compose/-hikage-view.html +com.highcapable.hikage.extension.androidx.compose + diff --git a/KDoc/hikage-extension-compose/images/anchor-copy-button.svg b/KDoc/hikage-extension-compose/images/anchor-copy-button.svg new file mode 100644 index 0000000..19c1fa3 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/anchor-copy-button.svg @@ -0,0 +1,8 @@ + + + + + + diff --git a/KDoc/hikage-extension-compose/images/arrow_down.svg b/KDoc/hikage-extension-compose/images/arrow_down.svg new file mode 100644 index 0000000..639aaf1 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/arrow_down.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-extension-compose/images/burger.svg b/KDoc/hikage-extension-compose/images/burger.svg new file mode 100644 index 0000000..fcca732 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/burger.svg @@ -0,0 +1,9 @@ + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/copy-icon.svg b/KDoc/hikage-extension-compose/images/copy-icon.svg new file mode 100644 index 0000000..2cb02ec --- /dev/null +++ b/KDoc/hikage-extension-compose/images/copy-icon.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-extension-compose/images/copy-successful-icon.svg b/KDoc/hikage-extension-compose/images/copy-successful-icon.svg new file mode 100644 index 0000000..c4b9538 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/copy-successful-icon.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-extension-compose/images/footer-go-to-link.svg b/KDoc/hikage-extension-compose/images/footer-go-to-link.svg new file mode 100644 index 0000000..a87add7 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/footer-go-to-link.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-extension-compose/images/go-to-top-icon.svg b/KDoc/hikage-extension-compose/images/go-to-top-icon.svg new file mode 100644 index 0000000..abc3d1c --- /dev/null +++ b/KDoc/hikage-extension-compose/images/go-to-top-icon.svg @@ -0,0 +1,8 @@ + + + + + + diff --git a/KDoc/hikage-extension-compose/images/homepage.svg b/KDoc/hikage-extension-compose/images/homepage.svg new file mode 100644 index 0000000..e3c83b1 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/homepage.svg @@ -0,0 +1,3 @@ + + + diff --git a/KDoc/hikage-extension-compose/images/logo-icon.svg b/KDoc/hikage-extension-compose/images/logo-icon.svg new file mode 100644 index 0000000..e42f957 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/logo-icon.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/nav-icons/abstract-class-kotlin.svg b/KDoc/hikage-extension-compose/images/nav-icons/abstract-class-kotlin.svg new file mode 100644 index 0000000..19d6148 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/nav-icons/abstract-class-kotlin.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/nav-icons/abstract-class.svg b/KDoc/hikage-extension-compose/images/nav-icons/abstract-class.svg new file mode 100644 index 0000000..6018203 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/nav-icons/abstract-class.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/nav-icons/annotation-kotlin.svg b/KDoc/hikage-extension-compose/images/nav-icons/annotation-kotlin.svg new file mode 100644 index 0000000..b90f508 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/nav-icons/annotation-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/nav-icons/annotation.svg b/KDoc/hikage-extension-compose/images/nav-icons/annotation.svg new file mode 100644 index 0000000..b80c54b --- /dev/null +++ b/KDoc/hikage-extension-compose/images/nav-icons/annotation.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/nav-icons/class-kotlin.svg b/KDoc/hikage-extension-compose/images/nav-icons/class-kotlin.svg new file mode 100644 index 0000000..797a242 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/nav-icons/class-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/nav-icons/class.svg b/KDoc/hikage-extension-compose/images/nav-icons/class.svg new file mode 100644 index 0000000..3f1ad16 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/nav-icons/class.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/nav-icons/enum-kotlin.svg b/KDoc/hikage-extension-compose/images/nav-icons/enum-kotlin.svg new file mode 100644 index 0000000..775a7cc --- /dev/null +++ b/KDoc/hikage-extension-compose/images/nav-icons/enum-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/nav-icons/enum.svg b/KDoc/hikage-extension-compose/images/nav-icons/enum.svg new file mode 100644 index 0000000..fa7f247 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/nav-icons/enum.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/nav-icons/exception-class.svg b/KDoc/hikage-extension-compose/images/nav-icons/exception-class.svg new file mode 100644 index 0000000..c0b2bde --- /dev/null +++ b/KDoc/hikage-extension-compose/images/nav-icons/exception-class.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/nav-icons/field-value.svg b/KDoc/hikage-extension-compose/images/nav-icons/field-value.svg new file mode 100644 index 0000000..2771ee5 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/nav-icons/field-value.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/nav-icons/field-variable.svg b/KDoc/hikage-extension-compose/images/nav-icons/field-variable.svg new file mode 100644 index 0000000..e2d2bbd --- /dev/null +++ b/KDoc/hikage-extension-compose/images/nav-icons/field-variable.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/nav-icons/function.svg b/KDoc/hikage-extension-compose/images/nav-icons/function.svg new file mode 100644 index 0000000..f0da64a --- /dev/null +++ b/KDoc/hikage-extension-compose/images/nav-icons/function.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/nav-icons/interface-kotlin.svg b/KDoc/hikage-extension-compose/images/nav-icons/interface-kotlin.svg new file mode 100644 index 0000000..5e16326 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/nav-icons/interface-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/nav-icons/interface.svg b/KDoc/hikage-extension-compose/images/nav-icons/interface.svg new file mode 100644 index 0000000..32063ba --- /dev/null +++ b/KDoc/hikage-extension-compose/images/nav-icons/interface.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/nav-icons/object.svg b/KDoc/hikage-extension-compose/images/nav-icons/object.svg new file mode 100644 index 0000000..31f0ee3 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/nav-icons/object.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/nav-icons/typealias-kotlin.svg b/KDoc/hikage-extension-compose/images/nav-icons/typealias-kotlin.svg new file mode 100644 index 0000000..f4bb238 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/nav-icons/typealias-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension-compose/images/theme-toggle.svg b/KDoc/hikage-extension-compose/images/theme-toggle.svg new file mode 100644 index 0000000..df86202 --- /dev/null +++ b/KDoc/hikage-extension-compose/images/theme-toggle.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-extension-compose/index.html b/KDoc/hikage-extension-compose/index.html new file mode 100644 index 0000000..7810ac8 --- /dev/null +++ b/KDoc/hikage-extension-compose/index.html @@ -0,0 +1,99 @@ + + + + + hikage-extension-compose + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

hikage-extension-compose

+
+

Packages

+
+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension-compose/navigation.html b/KDoc/hikage-extension-compose/navigation.html new file mode 100644 index 0000000..d29d0f6 --- /dev/null +++ b/KDoc/hikage-extension-compose/navigation.html @@ -0,0 +1,13 @@ + + diff --git a/KDoc/hikage-extension-compose/scripts/clipboard.js b/KDoc/hikage-extension-compose/scripts/clipboard.js new file mode 100644 index 0000000..7a4f33c --- /dev/null +++ b/KDoc/hikage-extension-compose/scripts/clipboard.js @@ -0,0 +1,56 @@ +/* + * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license. + */ + +window.addEventListener('load', () => { + document.querySelectorAll('span.copy-icon').forEach(element => { + element.addEventListener('click', (el) => copyElementsContentToClipboard(element)); + }) + + document.querySelectorAll('span.anchor-icon').forEach(element => { + element.addEventListener('click', (el) => { + if(element.hasAttribute('pointing-to')){ + const location = hrefWithoutCurrentlyUsedAnchor() + '#' + element.getAttribute('pointing-to') + copyTextToClipboard(element, location) + } + }); + }) +}) + +const copyElementsContentToClipboard = (element) => { + const selection = window.getSelection(); + const range = document.createRange(); + range.selectNodeContents(element.parentNode.parentNode); + selection.removeAllRanges(); + selection.addRange(range); + + copyAndShowPopup(element, () => selection.removeAllRanges()) +} + +const copyTextToClipboard = (element, text) => { + var textarea = document.createElement("textarea"); + textarea.textContent = text; + textarea.style.position = "fixed"; + document.body.appendChild(textarea); + textarea.select(); + + copyAndShowPopup(element, () => document.body.removeChild(textarea)) +} + +const copyAndShowPopup = (element, after) => { + try { + document.execCommand('copy'); + element.nextElementSibling.classList.add('active-popup'); + setTimeout(() => { + element.nextElementSibling.classList.remove('active-popup'); + }, 1200); + } catch (e) { + console.error('Failed to write to clipboard:', e) + } + finally { + if(after) after() + } +} + +const hrefWithoutCurrentlyUsedAnchor = () => window.location.href.split('#')[0] + diff --git a/KDoc/hikage-extension-compose/scripts/main.js b/KDoc/hikage-extension-compose/scripts/main.js new file mode 100644 index 0000000..ba6c347 --- /dev/null +++ b/KDoc/hikage-extension-compose/scripts/main.js @@ -0,0 +1,44 @@ +(()=>{var e={8527:e=>{e.exports=''},5570:e=>{e.exports=''},107:e=>{e.exports=''},7224:e=>{e.exports=''},538:e=>{e.exports=''},1924:(e,n,t)=>{"use strict";var r=t(210),o=t(5559),i=o(r("String.prototype.indexOf"));e.exports=function(e,n){var t=r(e,!!n);return"function"==typeof t&&i(e,".prototype.")>-1?o(t):t}},5559:(e,n,t)=>{"use strict";var r=t(8612),o=t(210),i=o("%Function.prototype.apply%"),a=o("%Function.prototype.call%"),l=o("%Reflect.apply%",!0)||r.call(a,i),c=o("%Object.getOwnPropertyDescriptor%",!0),u=o("%Object.defineProperty%",!0),s=o("%Math.max%");if(u)try{u({},"a",{value:1})}catch(e){u=null}e.exports=function(e){var n=l(r,a,arguments);if(c&&u){var t=c(n,"length");t.configurable&&u(n,"length",{value:1+s(0,e.length-(arguments.length-1))})}return n};var f=function(){return l(r,i,arguments)};u?u(e.exports,"apply",{value:f}):e.exports.apply=f},4184:(e,n)=>{var t; +/*! + Copyright (c) 2018 Jed Watson. + Licensed under the MIT License (MIT), see + http://jedwatson.github.io/classnames +*/!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e=[],n=0;n{"use strict";e.exports=function(e,n){var t=this,r=t.constructor;return t.options=Object.assign({storeInstancesGlobally:!0},n||{}),t.callbacks={},t.directMap={},t.sequenceLevels={},t.resetTimer=null,t.ignoreNextKeyup=!1,t.ignoreNextKeypress=!1,t.nextExpectedAction=!1,t.element=e,t.addEvents(),t.options.storeInstancesGlobally&&r.instances.push(t),t},e.exports.prototype.bind=t(2207),e.exports.prototype.bindMultiple=t(3396),e.exports.prototype.unbind=t(9208),e.exports.prototype.trigger=t(9855),e.exports.prototype.reset=t(6214),e.exports.prototype.stopCallback=t(3450),e.exports.prototype.handleKey=t(3067),e.exports.prototype.addEvents=t(718),e.exports.prototype.bindSingle=t(8763),e.exports.prototype.getKeyInfo=t(5825),e.exports.prototype.pickBestAction=t(8608),e.exports.prototype.getReverseMap=t(3956),e.exports.prototype.getMatches=t(3373),e.exports.prototype.resetSequences=t(3346),e.exports.prototype.fireCallback=t(2684),e.exports.prototype.bindSequence=t(7103),e.exports.prototype.resetSequenceTimer=t(7309),e.exports.prototype.detach=t(7554),e.exports.instances=[],e.exports.reset=t(1822),e.exports.REVERSE_MAP=null},718:(e,n,t)=>{"use strict";e.exports=function(){var e=this,n=t(4323),r=e.element;e.eventHandler=t(9646).bind(e),n(r,"keypress",e.eventHandler),n(r,"keydown",e.eventHandler),n(r,"keyup",e.eventHandler)}},2207:e=>{"use strict";e.exports=function(e,n,t){return e=e instanceof Array?e:[e],this.bindMultiple(e,n,t),this}},3396:e=>{"use strict";e.exports=function(e,n,t){for(var r=0;r{"use strict";e.exports=function(e,n,r,o){var i=this;function a(n){return function(){i.nextExpectedAction=n,++i.sequenceLevels[e],i.resetSequenceTimer()}}function l(n){var a;i.fireCallback(r,n,e),"keyup"!==o&&(a=t(6770),i.ignoreNextKeyup=a(n)),setTimeout((function(){i.resetSequences()}),10)}i.sequenceLevels[e]=0;for(var c=0;c{"use strict";e.exports=function(e,n,t,r,o){var i=this;i.directMap[e+":"+t]=n;var a,l=(e=e.replace(/\s+/g," ")).split(" ");l.length>1?i.bindSequence(e,l,n,t):(a=i.getKeyInfo(e,t),i.callbacks[a.key]=i.callbacks[a.key]||[],i.getMatches(a.key,a.modifiers,{type:a.action},r,e,o),i.callbacks[a.key][r?"unshift":"push"]({callback:n,modifiers:a.modifiers,action:a.action,seq:r,level:o,combo:e}))}},7554:(e,n,t)=>{var r=t(4323).off;e.exports=function(){var e=this,n=e.element;r(n,"keypress",e.eventHandler),r(n,"keydown",e.eventHandler),r(n,"keyup",e.eventHandler)}},4323:e=>{function n(e,n,t,r){return!e.addEventListener&&(n="on"+n),(e.addEventListener||e.attachEvent).call(e,n,t,r),t}e.exports=n,e.exports.on=n,e.exports.off=function(e,n,t,r){return!e.removeEventListener&&(n="on"+n),(e.removeEventListener||e.detachEvent).call(e,n,t,r),t}},2684:(e,n,t)=>{"use strict";e.exports=function(e,n,r,o){this.stopCallback(n,n.target||n.srcElement,r,o)||!1===e(n,r)&&(t(1350)(n),t(6103)(n))}},5825:(e,n,t)=>{"use strict";e.exports=function(e,n){var r,o,i,a,l,c,u=[];for(r=t(4520)(e),a=t(7549),l=t(5355),c=t(8581),i=0;i{"use strict";e.exports=function(e,n,r,o,i,a){var l,c,u,s,f=this,p=[],d=r.type;"keypress"!==d||r.code&&"Arrow"===r.code.slice(0,5)||(f.callbacks["any-character"]||[]).forEach((function(e){p.push(e)}));if(!f.callbacks[e])return p;for(u=t(8581),"keyup"===d&&u(e)&&(n=[e]),l=0;l{"use strict";e.exports=function(){var e,n=this.constructor;if(!n.REVERSE_MAP)for(var r in n.REVERSE_MAP={},e=t(4766))r>95&&r<112||e.hasOwnProperty(r)&&(n.REVERSE_MAP[e[r]]=r);return n.REVERSE_MAP}},3067:(e,n,t)=>{"use strict";e.exports=function(e,n,r){var o,i,a,l,c=this,u={},s=0,f=!1;for(o=c.getMatches(e,n,r),i=0;i{"use strict";e.exports=function(e){var n,r=this;"number"!=typeof e.which&&(e.which=e.keyCode);var o=t(6770)(e);void 0!==o&&("keyup"!==e.type||r.ignoreNextKeyup!==o?(n=t(4610),r.handleKey(o,n(e),e)):r.ignoreNextKeyup=!1)}},5532:e=>{"use strict";e.exports=function(e,n){return e.sort().join(",")===n.sort().join(",")}},8608:e=>{"use strict";e.exports=function(e,n,t){return t||(t=this.getReverseMap()[e]?"keydown":"keypress"),"keypress"===t&&n.length&&(t="keydown"),t}},6214:e=>{"use strict";e.exports=function(){return this.callbacks={},this.directMap={},this}},7309:e=>{"use strict";e.exports=function(){var e=this;clearTimeout(e.resetTimer),e.resetTimer=setTimeout((function(){e.resetSequences()}),1e3)}},3346:e=>{"use strict";e.exports=function(e){var n=this;e=e||{};var t,r=!1;for(t in n.sequenceLevels)e[t]?r=!0:n.sequenceLevels[t]=0;r||(n.nextExpectedAction=!1)}},3450:e=>{"use strict";e.exports=function(e,n){if((" "+n.className+" ").indexOf(" combokeys ")>-1)return!1;var t=n.tagName.toLowerCase();return"input"===t||"select"===t||"textarea"===t||n.isContentEditable}},9855:e=>{"use strict";e.exports=function(e,n){return this.directMap[e+":"+n]&&this.directMap[e+":"+n]({},e),this}},9208:e=>{"use strict";e.exports=function(e,n){return this.bind(e,(function(){}),n)}},1822:e=>{"use strict";e.exports=function(){this.instances.forEach((function(e){e.reset()}))}},6770:(e,n,t)=>{"use strict";e.exports=function(e){var n,r;if(n=t(4766),r=t(5295),"keypress"===e.type){var o=String.fromCharCode(e.which);return e.shiftKey||(o=o.toLowerCase()),o}return void 0!==n[e.which]?n[e.which]:void 0!==r[e.which]?r[e.which]:String.fromCharCode(e.which).toLowerCase()}},4610:e=>{"use strict";e.exports=function(e){var n=[];return e.shiftKey&&n.push("shift"),e.altKey&&n.push("alt"),e.ctrlKey&&n.push("ctrl"),e.metaKey&&n.push("meta"),n}},8581:e=>{"use strict";e.exports=function(e){return"shift"===e||"ctrl"===e||"alt"===e||"meta"===e}},4520:e=>{"use strict";e.exports=function(e){return"+"===e?["+"]:e.split("+")}},1350:e=>{"use strict";e.exports=function(e){e.preventDefault?e.preventDefault():e.returnValue=!1}},5355:e=>{"use strict";e.exports={"~":"`","!":"1","@":"2","#":"3",$:"4","%":"5","^":"6","&":"7","*":"8","(":"9",")":"0",_:"-","+":"=",":":";",'"':"'","<":",",">":".","?":"/","|":"\\"}},7549:e=>{"use strict";e.exports={option:"alt",command:"meta",return:"enter",escape:"esc",mod:/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"meta":"ctrl"}},5295:e=>{"use strict";e.exports={106:"*",107:"plus",109:"minus",110:".",111:"/",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"}},4766:e=>{"use strict";e.exports={8:"backspace",9:"tab",13:"enter",16:"shift",17:"ctrl",18:"alt",20:"capslock",27:"esc",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"ins",46:"del",91:"meta",93:"meta",173:"minus",187:"plus",189:"minus",224:"meta"};for(var n=1;n<20;++n)e.exports[111+n]="f"+n;for(n=0;n<=9;++n)e.exports[n+96]=n},6103:e=>{"use strict";e.exports=function(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}},3362:()=>{var e;!function(){var e=Math.PI,n=2*e,t=e/180,r=document.createElement("div");document.head.appendChild(r);var o=self.ConicGradient=function(e){o.all.push(this),e=e||{},this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d"),this.repeating=!!e.repeating,this.size=e.size||Math.max(innerWidth,innerHeight),this.canvas.width=this.canvas.height=this.size;var n=e.stops;this.stops=(n||"").split(/\s*,(?![^(]*\))\s*/),this.from=0;for(var t=0;t0){var i=this.stops[0].clone();i.pos=0,this.stops.unshift(i)}if(void 0===this.stops[this.stops.length-1].pos)this.stops[this.stops.length-1].pos=1;else if(!this.repeating&&this.stops[this.stops.length-1].pos<1){var a=this.stops[this.stops.length-1].clone();a.pos=1,this.stops.push(a)}if(this.stops.forEach((function(e,n){if(void 0===e.pos){for(var t=n+1;this[t];t++)if(void 0!==this[t].pos){e.pos=this[n-1].pos+(this[t].pos-this[n-1].pos)/(t-n+1);break}}else n>0&&(e.pos=Math.max(e.pos,this[n-1].pos))}),this.stops),this.repeating){var l=(n=this.stops.slice())[n.length-1].pos-n[0].pos;for(t=0;this.stops[this.stops.length-1].pos<1&&t<1e4;t++)for(var c=0;c'},get png(){return this.canvas.toDataURL()},get r(){return Math.sqrt(2)*this.size/2},paint:function(){var e,n,r,o=this.context,i=this.r,a=this.size/2,l=0,c=this.stops[l];o.translate(this.size/2,this.size/2),o.rotate(-90*t),o.rotate(this.from*t),o.translate(-this.size/2,-this.size/2);for(var u=0;u<360;){if(u/360+1e-5>=c.pos){do{e=c,l++,c=this.stops[l]}while(c&&c!=e&&c.pos===e.pos);if(!c)break;var s=e.color+""==c.color+""&&e!=c;n=e.color.map((function(e,n){return c.color[n]-e}))}r=(u/360-e.pos)/(c.pos-e.pos);var f=s?c.color:n.map((function(n,t){var o=n*r+e.color[t];return t<3?255&o:o}));if(o.fillStyle="rgba("+f.join(",")+")",o.beginPath(),o.moveTo(a,a),s)var p=360*(c.pos-e.pos);else p=.5;var d=u*t,h=(d=Math.min(360*t,d))+p*t;h=Math.min(360*t,h+.02),o.arc(a,a,i,d,h),o.closePath(),o.fill(),u+=p}}},o.ColorStop=function(e,t){if(this.gradient=e,t){var r=t.match(/^(.+?)(?:\s+([\d.]+)(%|deg|turn|grad|rad)?)?(?:\s+([\d.]+)(%|deg|turn|grad|rad)?)?\s*$/);if(this.color=o.ColorStop.colorToRGBA(r[1]),r[2]){var i=r[3];"%"==i||"0"===r[2]&&!i?this.pos=r[2]/100:"turn"==i?this.pos=+r[2]:"deg"==i?this.pos=r[2]/360:"grad"==i?this.pos=r[2]/400:"rad"==i&&(this.pos=r[2]/n)}r[4]&&(this.next=new o.ColorStop(e,r[1]+" "+r[4]+r[5]))}},o.ColorStop.prototype={clone:function(){var e=new o.ColorStop(this.gradient);return e.color=this.color,e.pos=this.pos,e},toString:function(){return"rgba("+this.color.join(", ")+") "+100*this.pos+"%"}},o.ColorStop.colorToRGBA=function(e){if(!Array.isArray(e)&&-1==e.indexOf("from")){r.style.color=e;var n=getComputedStyle(r).color.match(/rgba?\(([\d.]+), ([\d.]+), ([\d.]+)(?:, ([\d.]+))?\)/);return n&&(n.shift(),(n=n.map((function(e){return+e})))[3]=isNaN(n[3])?1:n[3]),n||[0,0,0,0]}return e}}(),self.StyleFix&&((e=document.createElement("p")).style.backgroundImage="conic-gradient(white, black)",e.style.backgroundImage=PrefixFree.prefix+"conic-gradient(white, black)",e.style.backgroundImage||StyleFix.register((function(e,n){return e.indexOf("conic-gradient")>-1&&(e=e.replace(/(?:repeating-)?conic-gradient\(\s*((?:\([^()]+\)|[^;()}])+?)\)/g,(function(e,n){return new ConicGradient({stops:n,repeating:e.indexOf("repeating-")>-1})}))),e})))},9662:(e,n,t)=>{var r=t(7854),o=t(614),i=t(6330),a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not a function")}},9483:(e,n,t)=>{var r=t(7854),o=t(4411),i=t(6330),a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not a constructor")}},6077:(e,n,t)=>{var r=t(7854),o=t(614),i=r.String,a=r.TypeError;e.exports=function(e){if("object"==typeof e||o(e))return e;throw a("Can't set "+i(e)+" as a prototype")}},1223:(e,n,t)=>{var r=t(5112),o=t(30),i=t(3070),a=r("unscopables"),l=Array.prototype;null==l[a]&&i.f(l,a,{configurable:!0,value:o(null)}),e.exports=function(e){l[a][e]=!0}},1530:(e,n,t)=>{"use strict";var r=t(8710).charAt;e.exports=function(e,n,t){return n+(t?r(e,n).length:1)}},5787:(e,n,t)=>{var r=t(7854),o=t(7976),i=r.TypeError;e.exports=function(e,n){if(o(n,e))return e;throw i("Incorrect invocation")}},9670:(e,n,t)=>{var r=t(7854),o=t(111),i=r.String,a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not an object")}},7556:(e,n,t)=>{var r=t(7293);e.exports=r((function(){if("function"==typeof ArrayBuffer){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}))},8533:(e,n,t)=>{"use strict";var r=t(2092).forEach,o=t(9341)("forEach");e.exports=o?[].forEach:function(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}},8457:(e,n,t)=>{"use strict";var r=t(7854),o=t(9974),i=t(6916),a=t(7908),l=t(3411),c=t(7659),u=t(4411),s=t(6244),f=t(6135),p=t(8554),d=t(1246),h=r.Array;e.exports=function(e){var n=a(e),t=u(this),r=arguments.length,g=r>1?arguments[1]:void 0,v=void 0!==g;v&&(g=o(g,r>2?arguments[2]:void 0));var A,b,m,y,E,_,C=d(n),w=0;if(!C||this==h&&c(C))for(A=s(n),b=t?new this(A):h(A);A>w;w++)_=v?g(n[w],w):n[w],f(b,w,_);else for(E=(y=p(n,C)).next,b=t?new this:[];!(m=i(E,y)).done;w++)_=v?l(y,g,[m.value,w],!0):m.value,f(b,w,_);return b.length=w,b}},1318:(e,n,t)=>{var r=t(5656),o=t(1400),i=t(6244),a=function(e){return function(n,t,a){var l,c=r(n),u=i(c),s=o(a,u);if(e&&t!=t){for(;u>s;)if((l=c[s++])!=l)return!0}else for(;u>s;s++)if((e||s in c)&&c[s]===t)return e||s||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},2092:(e,n,t)=>{var r=t(9974),o=t(1702),i=t(8361),a=t(7908),l=t(6244),c=t(5417),u=o([].push),s=function(e){var n=1==e,t=2==e,o=3==e,s=4==e,f=6==e,p=7==e,d=5==e||f;return function(h,g,v,A){for(var b,m,y=a(h),E=i(y),_=r(g,v),C=l(E),w=0,x=A||c,k=n?x(h,C):t||p?x(h,0):void 0;C>w;w++)if((d||w in E)&&(m=_(b=E[w],w,y),e))if(n)k[w]=m;else if(m)switch(e){case 3:return!0;case 5:return b;case 6:return w;case 2:u(k,b)}else switch(e){case 4:return!1;case 7:u(k,b)}return f?-1:o||s?s:k}};e.exports={forEach:s(0),map:s(1),filter:s(2),some:s(3),every:s(4),find:s(5),findIndex:s(6),filterReject:s(7)}},1194:(e,n,t)=>{var r=t(7293),o=t(5112),i=t(7392),a=o("species");e.exports=function(e){return i>=51||!r((function(){var n=[];return(n.constructor={})[a]=function(){return{foo:1}},1!==n[e](Boolean).foo}))}},9341:(e,n,t)=>{"use strict";var r=t(7293);e.exports=function(e,n){var t=[][e];return!!t&&r((function(){t.call(null,n||function(){throw 1},1)}))}},3671:(e,n,t)=>{var r=t(7854),o=t(9662),i=t(7908),a=t(8361),l=t(6244),c=r.TypeError,u=function(e){return function(n,t,r,u){o(t);var s=i(n),f=a(s),p=l(s),d=e?p-1:0,h=e?-1:1;if(r<2)for(;;){if(d in f){u=f[d],d+=h;break}if(d+=h,e?d<0:p<=d)throw c("Reduce of empty array with no initial value")}for(;e?d>=0:p>d;d+=h)d in f&&(u=t(u,f[d],d,s));return u}};e.exports={left:u(!1),right:u(!0)}},206:(e,n,t)=>{var r=t(1702);e.exports=r([].slice)},4362:(e,n,t)=>{var r=t(206),o=Math.floor,i=function(e,n){var t=e.length,c=o(t/2);return t<8?a(e,n):l(e,i(r(e,0,c),n),i(r(e,c),n),n)},a=function(e,n){for(var t,r,o=e.length,i=1;i0;)e[r]=e[--r];r!==i++&&(e[r]=t)}return e},l=function(e,n,t,r){for(var o=n.length,i=t.length,a=0,l=0;a{var r=t(7854),o=t(3157),i=t(4411),a=t(111),l=t(5112)("species"),c=r.Array;e.exports=function(e){var n;return o(e)&&(n=e.constructor,(i(n)&&(n===c||o(n.prototype))||a(n)&&null===(n=n[l]))&&(n=void 0)),void 0===n?c:n}},5417:(e,n,t)=>{var r=t(7475);e.exports=function(e,n){return new(r(e))(0===n?0:n)}},3411:(e,n,t)=>{var r=t(9670),o=t(9212);e.exports=function(e,n,t,i){try{return i?n(r(t)[0],t[1]):n(t)}catch(n){o(e,"throw",n)}}},7072:(e,n,t)=>{var r=t(5112)("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(e){}e.exports=function(e,n){if(!n&&!o)return!1;var t=!1;try{var i={};i[r]=function(){return{next:function(){return{done:t=!0}}}},e(i)}catch(e){}return t}},4326:(e,n,t)=>{var r=t(1702),o=r({}.toString),i=r("".slice);e.exports=function(e){return i(o(e),8,-1)}},648:(e,n,t)=>{var r=t(7854),o=t(1694),i=t(614),a=t(4326),l=t(5112)("toStringTag"),c=r.Object,u="Arguments"==a(function(){return arguments}());e.exports=o?a:function(e){var n,t,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(t=function(e,n){try{return e[n]}catch(e){}}(n=c(e),l))?t:u?a(n):"Object"==(r=a(n))&&i(n.callee)?"Arguments":r}},5631:(e,n,t)=>{"use strict";var r=t(3070).f,o=t(30),i=t(2248),a=t(9974),l=t(5787),c=t(408),u=t(654),s=t(6340),f=t(9781),p=t(2423).fastKey,d=t(9909),h=d.set,g=d.getterFor;e.exports={getConstructor:function(e,n,t,u){var s=e((function(e,r){l(e,d),h(e,{type:n,index:o(null),first:void 0,last:void 0,size:0}),f||(e.size=0),null!=r&&c(r,e[u],{that:e,AS_ENTRIES:t})})),d=s.prototype,v=g(n),A=function(e,n,t){var r,o,i=v(e),a=b(e,n);return a?a.value=t:(i.last=a={index:o=p(n,!0),key:n,value:t,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),f?i.size++:e.size++,"F"!==o&&(i.index[o]=a)),e},b=function(e,n){var t,r=v(e),o=p(n);if("F"!==o)return r.index[o];for(t=r.first;t;t=t.next)if(t.key==n)return t};return i(d,{clear:function(){for(var e=v(this),n=e.index,t=e.first;t;)t.removed=!0,t.previous&&(t.previous=t.previous.next=void 0),delete n[t.index],t=t.next;e.first=e.last=void 0,f?e.size=0:this.size=0},delete:function(e){var n=this,t=v(n),r=b(n,e);if(r){var o=r.next,i=r.previous;delete t.index[r.index],r.removed=!0,i&&(i.next=o),o&&(o.previous=i),t.first==r&&(t.first=o),t.last==r&&(t.last=i),f?t.size--:n.size--}return!!r},forEach:function(e){for(var n,t=v(this),r=a(e,arguments.length>1?arguments[1]:void 0);n=n?n.next:t.first;)for(r(n.value,n.key,this);n&&n.removed;)n=n.previous},has:function(e){return!!b(this,e)}}),i(d,t?{get:function(e){var n=b(this,e);return n&&n.value},set:function(e,n){return A(this,0===e?0:e,n)}}:{add:function(e){return A(this,e=0===e?0:e,e)}}),f&&r(d,"size",{get:function(){return v(this).size}}),s},setStrong:function(e,n,t){var r=n+" Iterator",o=g(n),i=g(r);u(e,n,(function(e,n){h(this,{type:r,target:e,state:o(e),kind:n,last:void 0})}),(function(){for(var e=i(this),n=e.kind,t=e.last;t&&t.removed;)t=t.previous;return e.target&&(e.last=t=t?t.next:e.state.first)?"keys"==n?{value:t.key,done:!1}:"values"==n?{value:t.value,done:!1}:{value:[t.key,t.value],done:!1}:(e.target=void 0,{value:void 0,done:!0})}),t?"entries":"values",!t,!0),s(n)}}},9320:(e,n,t)=>{"use strict";var r=t(1702),o=t(2248),i=t(2423).getWeakData,a=t(9670),l=t(111),c=t(5787),u=t(408),s=t(2092),f=t(2597),p=t(9909),d=p.set,h=p.getterFor,g=s.find,v=s.findIndex,A=r([].splice),b=0,m=function(e){return e.frozen||(e.frozen=new y)},y=function(){this.entries=[]},E=function(e,n){return g(e.entries,(function(e){return e[0]===n}))};y.prototype={get:function(e){var n=E(this,e);if(n)return n[1]},has:function(e){return!!E(this,e)},set:function(e,n){var t=E(this,e);t?t[1]=n:this.entries.push([e,n])},delete:function(e){var n=v(this.entries,(function(n){return n[0]===e}));return~n&&A(this.entries,n,1),!!~n}},e.exports={getConstructor:function(e,n,t,r){var s=e((function(e,o){c(e,p),d(e,{type:n,id:b++,frozen:void 0}),null!=o&&u(o,e[r],{that:e,AS_ENTRIES:t})})),p=s.prototype,g=h(n),v=function(e,n,t){var r=g(e),o=i(a(n),!0);return!0===o?m(r).set(n,t):o[r.id]=t,e};return o(p,{delete:function(e){var n=g(this);if(!l(e))return!1;var t=i(e);return!0===t?m(n).delete(e):t&&f(t,n.id)&&delete t[n.id]},has:function(e){var n=g(this);if(!l(e))return!1;var t=i(e);return!0===t?m(n).has(e):t&&f(t,n.id)}}),o(p,t?{get:function(e){var n=g(this);if(l(e)){var t=i(e);return!0===t?m(n).get(e):t?t[n.id]:void 0}},set:function(e,n){return v(this,e,n)}}:{add:function(e){return v(this,e,!0)}}),s}}},7710:(e,n,t)=>{"use strict";var r=t(2109),o=t(7854),i=t(1702),a=t(4705),l=t(1320),c=t(2423),u=t(408),s=t(5787),f=t(614),p=t(111),d=t(7293),h=t(7072),g=t(8003),v=t(9587);e.exports=function(e,n,t){var A=-1!==e.indexOf("Map"),b=-1!==e.indexOf("Weak"),m=A?"set":"add",y=o[e],E=y&&y.prototype,_=y,C={},w=function(e){var n=i(E[e]);l(E,e,"add"==e?function(e){return n(this,0===e?0:e),this}:"delete"==e?function(e){return!(b&&!p(e))&&n(this,0===e?0:e)}:"get"==e?function(e){return b&&!p(e)?void 0:n(this,0===e?0:e)}:"has"==e?function(e){return!(b&&!p(e))&&n(this,0===e?0:e)}:function(e,t){return n(this,0===e?0:e,t),this})};if(a(e,!f(y)||!(b||E.forEach&&!d((function(){(new y).entries().next()})))))_=t.getConstructor(n,e,A,m),c.enable();else if(a(e,!0)){var x=new _,k=x[m](b?{}:-0,1)!=x,S=d((function(){x.has(1)})),O=h((function(e){new y(e)})),B=!b&&d((function(){for(var e=new y,n=5;n--;)e[m](n,n);return!e.has(-0)}));O||((_=n((function(e,n){s(e,E);var t=v(new y,e,_);return null!=n&&u(n,t[m],{that:t,AS_ENTRIES:A}),t}))).prototype=E,E.constructor=_),(S||B)&&(w("delete"),w("has"),A&&w("get")),(B||k)&&w(m),b&&E.clear&&delete E.clear}return C[e]=_,r({global:!0,forced:_!=y},C),g(_,e),b||t.setStrong(_,e,A),_}},9920:(e,n,t)=>{var r=t(2597),o=t(3887),i=t(1236),a=t(3070);e.exports=function(e,n){for(var t=o(n),l=a.f,c=i.f,u=0;u{var r=t(5112)("match");e.exports=function(e){var n=/./;try{"/./"[e](n)}catch(t){try{return n[r]=!1,"/./"[e](n)}catch(e){}}return!1}},8544:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},4230:(e,n,t)=>{var r=t(1702),o=t(4488),i=t(1340),a=/"/g,l=r("".replace);e.exports=function(e,n,t,r){var c=i(o(e)),u="<"+n;return""!==t&&(u+=" "+t+'="'+l(i(r),a,""")+'"'),u+">"+c+""}},4994:(e,n,t)=>{"use strict";var r=t(3383).IteratorPrototype,o=t(30),i=t(9114),a=t(8003),l=t(7497),c=function(){return this};e.exports=function(e,n,t){var u=n+" Iterator";return e.prototype=o(r,{next:i(1,t)}),a(e,u,!1,!0),l[u]=c,e}},8880:(e,n,t)=>{var r=t(9781),o=t(3070),i=t(9114);e.exports=r?function(e,n,t){return o.f(e,n,i(1,t))}:function(e,n,t){return e[n]=t,e}},9114:e=>{e.exports=function(e,n){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:n}}},6135:(e,n,t)=>{"use strict";var r=t(4948),o=t(3070),i=t(9114);e.exports=function(e,n,t){var a=r(n);a in e?o.f(e,a,i(0,t)):e[a]=t}},8709:(e,n,t)=>{"use strict";var r=t(7854),o=t(9670),i=t(2140),a=r.TypeError;e.exports=function(e){if(o(this),"string"===e||"default"===e)e="string";else if("number"!==e)throw a("Incorrect hint");return i(this,e)}},654:(e,n,t)=>{"use strict";var r=t(2109),o=t(6916),i=t(1913),a=t(6530),l=t(614),c=t(4994),u=t(9518),s=t(7674),f=t(8003),p=t(8880),d=t(1320),h=t(5112),g=t(7497),v=t(3383),A=a.PROPER,b=a.CONFIGURABLE,m=v.IteratorPrototype,y=v.BUGGY_SAFARI_ITERATORS,E=h("iterator"),_="keys",C="values",w="entries",x=function(){return this};e.exports=function(e,n,t,a,h,v,k){c(t,n,a);var S,O,B,I=function(e){if(e===h&&R)return R;if(!y&&e in j)return j[e];switch(e){case _:case C:case w:return function(){return new t(this,e)}}return function(){return new t(this)}},T=n+" Iterator",P=!1,j=e.prototype,z=j[E]||j["@@iterator"]||h&&j[h],R=!y&&z||I(h),M="Array"==n&&j.entries||z;if(M&&(S=u(M.call(new e)))!==Object.prototype&&S.next&&(i||u(S)===m||(s?s(S,m):l(S[E])||d(S,E,x)),f(S,T,!0,!0),i&&(g[T]=x)),A&&h==C&&z&&z.name!==C&&(!i&&b?p(j,"name",C):(P=!0,R=function(){return o(z,this)})),h)if(O={values:I(C),keys:v?R:I(_),entries:I(w)},k)for(B in O)(y||P||!(B in j))&&d(j,B,O[B]);else r({target:n,proto:!0,forced:y||P},O);return i&&!k||j[E]===R||d(j,E,R,{name:h}),g[n]=R,O}},7235:(e,n,t)=>{var r=t(857),o=t(2597),i=t(6061),a=t(3070).f;e.exports=function(e){var n=r.Symbol||(r.Symbol={});o(n,e)||a(n,e,{value:i.f(e)})}},9781:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},317:(e,n,t)=>{var r=t(7854),o=t(111),i=r.document,a=o(i)&&o(i.createElement);e.exports=function(e){return a?i.createElement(e):{}}},8324:e=>{e.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},8509:(e,n,t)=>{var r=t(317)("span").classList,o=r&&r.constructor&&r.constructor.prototype;e.exports=o===Object.prototype?void 0:o},8886:(e,n,t)=>{var r=t(8113).match(/firefox\/(\d+)/i);e.exports=!!r&&+r[1]},256:(e,n,t)=>{var r=t(8113);e.exports=/MSIE|Trident/.test(r)},5268:(e,n,t)=>{var r=t(4326),o=t(7854);e.exports="process"==r(o.process)},8113:(e,n,t)=>{var r=t(5005);e.exports=r("navigator","userAgent")||""},7392:(e,n,t)=>{var r,o,i=t(7854),a=t(8113),l=i.process,c=i.Deno,u=l&&l.versions||c&&c.version,s=u&&u.v8;s&&(o=(r=s.split("."))[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=+r[1]),e.exports=o},8008:(e,n,t)=>{var r=t(8113).match(/AppleWebKit\/(\d+)\./);e.exports=!!r&&+r[1]},748:e=>{e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},2109:(e,n,t)=>{var r=t(7854),o=t(1236).f,i=t(8880),a=t(1320),l=t(3505),c=t(9920),u=t(4705);e.exports=function(e,n){var t,s,f,p,d,h=e.target,g=e.global,v=e.stat;if(t=g?r:v?r[h]||l(h,{}):(r[h]||{}).prototype)for(s in n){if(p=n[s],f=e.noTargetGet?(d=o(t,s))&&d.value:t[s],!u(g?s:h+(v?".":"#")+s,e.forced)&&void 0!==f){if(typeof p==typeof f)continue;c(p,f)}(e.sham||f&&f.sham)&&i(p,"sham",!0),a(t,s,p,e)}}},7293:e=>{e.exports=function(e){try{return!!e()}catch(e){return!0}}},7007:(e,n,t)=>{"use strict";t(4916);var r=t(1702),o=t(1320),i=t(2261),a=t(7293),l=t(5112),c=t(8880),u=l("species"),s=RegExp.prototype;e.exports=function(e,n,t,f){var p=l(e),d=!a((function(){var n={};return n[p]=function(){return 7},7!=""[e](n)})),h=d&&!a((function(){var n=!1,t=/a/;return"split"===e&&((t={}).constructor={},t.constructor[u]=function(){return t},t.flags="",t[p]=/./[p]),t.exec=function(){return n=!0,null},t[p](""),!n}));if(!d||!h||t){var g=r(/./[p]),v=n(p,""[e],(function(e,n,t,o,a){var l=r(e),c=n.exec;return c===i||c===s.exec?d&&!a?{done:!0,value:g(n,t,o)}:{done:!0,value:l(t,n,o)}:{done:!1}}));o(String.prototype,e,v[0]),o(s,p,v[1])}f&&c(s[p],"sham",!0)}},6677:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){return Object.isExtensible(Object.preventExtensions({}))}))},2104:e=>{var n=Function.prototype,t=n.apply,r=n.bind,o=n.call;e.exports="object"==typeof Reflect&&Reflect.apply||(r?o.bind(t):function(){return o.apply(t,arguments)})},9974:(e,n,t)=>{var r=t(1702),o=t(9662),i=r(r.bind);e.exports=function(e,n){return o(e),void 0===n?e:i?i(e,n):function(){return e.apply(n,arguments)}}},7065:(e,n,t)=>{"use strict";var r=t(7854),o=t(1702),i=t(9662),a=t(111),l=t(2597),c=t(206),u=r.Function,s=o([].concat),f=o([].join),p={},d=function(e,n,t){if(!l(p,n)){for(var r=[],o=0;o{var n=Function.prototype.call;e.exports=n.bind?n.bind(n):function(){return n.apply(n,arguments)}},6530:(e,n,t)=>{var r=t(9781),o=t(2597),i=Function.prototype,a=r&&Object.getOwnPropertyDescriptor,l=o(i,"name"),c=l&&"something"===function(){}.name,u=l&&(!r||r&&a(i,"name").configurable);e.exports={EXISTS:l,PROPER:c,CONFIGURABLE:u}},1702:e=>{var n=Function.prototype,t=n.bind,r=n.call,o=t&&t.bind(r);e.exports=t?function(e){return e&&o(r,e)}:function(e){return e&&function(){return r.apply(e,arguments)}}},5005:(e,n,t)=>{var r=t(7854),o=t(614),i=function(e){return o(e)?e:void 0};e.exports=function(e,n){return arguments.length<2?i(r[e]):r[e]&&r[e][n]}},1246:(e,n,t)=>{var r=t(648),o=t(8173),i=t(7497),a=t(5112)("iterator");e.exports=function(e){if(null!=e)return o(e,a)||o(e,"@@iterator")||i[r(e)]}},8554:(e,n,t)=>{var r=t(7854),o=t(6916),i=t(9662),a=t(9670),l=t(6330),c=t(1246),u=r.TypeError;e.exports=function(e,n){var t=arguments.length<2?c(e):n;if(i(t))return a(o(t,e));throw u(l(e)+" is not iterable")}},8173:(e,n,t)=>{var r=t(9662);e.exports=function(e,n){var t=e[n];return null==t?void 0:r(t)}},647:(e,n,t)=>{var r=t(1702),o=t(7908),i=Math.floor,a=r("".charAt),l=r("".replace),c=r("".slice),u=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,s=/\$([$&'`]|\d{1,2})/g;e.exports=function(e,n,t,r,f,p){var d=t+e.length,h=r.length,g=s;return void 0!==f&&(f=o(f),g=u),l(p,g,(function(o,l){var u;switch(a(l,0)){case"$":return"$";case"&":return e;case"`":return c(n,0,t);case"'":return c(n,d);case"<":u=f[c(l,1,-1)];break;default:var s=+l;if(0===s)return o;if(s>h){var p=i(s/10);return 0===p?o:p<=h?void 0===r[p-1]?a(l,1):r[p-1]+a(l,1):o}u=r[s-1]}return void 0===u?"":u}))}},7854:(e,n,t)=>{var r=function(e){return e&&e.Math==Math&&e};e.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof t.g&&t.g)||function(){return this}()||Function("return this")()},2597:(e,n,t)=>{var r=t(1702),o=t(7908),i=r({}.hasOwnProperty);e.exports=Object.hasOwn||function(e,n){return i(o(e),n)}},3501:e=>{e.exports={}},490:(e,n,t)=>{var r=t(5005);e.exports=r("document","documentElement")},4664:(e,n,t)=>{var r=t(9781),o=t(7293),i=t(317);e.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},8361:(e,n,t)=>{var r=t(7854),o=t(1702),i=t(7293),a=t(4326),l=r.Object,c=o("".split);e.exports=i((function(){return!l("z").propertyIsEnumerable(0)}))?function(e){return"String"==a(e)?c(e,""):l(e)}:l},9587:(e,n,t)=>{var r=t(614),o=t(111),i=t(7674);e.exports=function(e,n,t){var a,l;return i&&r(a=n.constructor)&&a!==t&&o(l=a.prototype)&&l!==t.prototype&&i(e,l),e}},2788:(e,n,t)=>{var r=t(1702),o=t(614),i=t(5465),a=r(Function.toString);o(i.inspectSource)||(i.inspectSource=function(e){return a(e)}),e.exports=i.inspectSource},2423:(e,n,t)=>{var r=t(2109),o=t(1702),i=t(3501),a=t(111),l=t(2597),c=t(3070).f,u=t(8006),s=t(1156),f=t(2050),p=t(9711),d=t(6677),h=!1,g=p("meta"),v=0,A=function(e){c(e,g,{value:{objectID:"O"+v++,weakData:{}}})},b=e.exports={enable:function(){b.enable=function(){},h=!0;var e=u.f,n=o([].splice),t={};t[g]=1,e(t).length&&(u.f=function(t){for(var r=e(t),o=0,i=r.length;o{var r,o,i,a=t(8536),l=t(7854),c=t(1702),u=t(111),s=t(8880),f=t(2597),p=t(5465),d=t(6200),h=t(3501),g="Object already initialized",v=l.TypeError,A=l.WeakMap;if(a||p.state){var b=p.state||(p.state=new A),m=c(b.get),y=c(b.has),E=c(b.set);r=function(e,n){if(y(b,e))throw new v(g);return n.facade=e,E(b,e,n),n},o=function(e){return m(b,e)||{}},i=function(e){return y(b,e)}}else{var _=d("state");h[_]=!0,r=function(e,n){if(f(e,_))throw new v(g);return n.facade=e,s(e,_,n),n},o=function(e){return f(e,_)?e[_]:{}},i=function(e){return f(e,_)}}e.exports={set:r,get:o,has:i,enforce:function(e){return i(e)?o(e):r(e,{})},getterFor:function(e){return function(n){var t;if(!u(n)||(t=o(n)).type!==e)throw v("Incompatible receiver, "+e+" required");return t}}}},7659:(e,n,t)=>{var r=t(5112),o=t(7497),i=r("iterator"),a=Array.prototype;e.exports=function(e){return void 0!==e&&(o.Array===e||a[i]===e)}},3157:(e,n,t)=>{var r=t(4326);e.exports=Array.isArray||function(e){return"Array"==r(e)}},614:e=>{e.exports=function(e){return"function"==typeof e}},4411:(e,n,t)=>{var r=t(1702),o=t(7293),i=t(614),a=t(648),l=t(5005),c=t(2788),u=function(){},s=[],f=l("Reflect","construct"),p=/^\s*(?:class|function)\b/,d=r(p.exec),h=!p.exec(u),g=function(e){if(!i(e))return!1;try{return f(u,s,e),!0}catch(e){return!1}};e.exports=!f||o((function(){var e;return g(g.call)||!g(Object)||!g((function(){e=!0}))||e}))?function(e){if(!i(e))return!1;switch(a(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}return h||!!d(p,c(e))}:g},4705:(e,n,t)=>{var r=t(7293),o=t(614),i=/#|\.prototype\./,a=function(e,n){var t=c[l(e)];return t==s||t!=u&&(o(n)?r(n):!!n)},l=a.normalize=function(e){return String(e).replace(i,".").toLowerCase()},c=a.data={},u=a.NATIVE="N",s=a.POLYFILL="P";e.exports=a},111:(e,n,t)=>{var r=t(614);e.exports=function(e){return"object"==typeof e?null!==e:r(e)}},1913:e=>{e.exports=!1},7850:(e,n,t)=>{var r=t(111),o=t(4326),i=t(5112)("match");e.exports=function(e){var n;return r(e)&&(void 0!==(n=e[i])?!!n:"RegExp"==o(e))}},2190:(e,n,t)=>{var r=t(7854),o=t(5005),i=t(614),a=t(7976),l=t(3307),c=r.Object;e.exports=l?function(e){return"symbol"==typeof e}:function(e){var n=o("Symbol");return i(n)&&a(n.prototype,c(e))}},408:(e,n,t)=>{var r=t(7854),o=t(9974),i=t(6916),a=t(9670),l=t(6330),c=t(7659),u=t(6244),s=t(7976),f=t(8554),p=t(1246),d=t(9212),h=r.TypeError,g=function(e,n){this.stopped=e,this.result=n},v=g.prototype;e.exports=function(e,n,t){var r,A,b,m,y,E,_,C=t&&t.that,w=!(!t||!t.AS_ENTRIES),x=!(!t||!t.IS_ITERATOR),k=!(!t||!t.INTERRUPTED),S=o(n,C),O=function(e){return r&&d(r,"normal",e),new g(!0,e)},B=function(e){return w?(a(e),k?S(e[0],e[1],O):S(e[0],e[1])):k?S(e,O):S(e)};if(x)r=e;else{if(!(A=p(e)))throw h(l(e)+" is not iterable");if(c(A)){for(b=0,m=u(e);m>b;b++)if((y=B(e[b]))&&s(v,y))return y;return new g(!1)}r=f(e,A)}for(E=r.next;!(_=i(E,r)).done;){try{y=B(_.value)}catch(e){d(r,"throw",e)}if("object"==typeof y&&y&&s(v,y))return y}return new g(!1)}},9212:(e,n,t)=>{var r=t(6916),o=t(9670),i=t(8173);e.exports=function(e,n,t){var a,l;o(e);try{if(!(a=i(e,"return"))){if("throw"===n)throw t;return t}a=r(a,e)}catch(e){l=!0,a=e}if("throw"===n)throw t;if(l)throw a;return o(a),t}},3383:(e,n,t)=>{"use strict";var r,o,i,a=t(7293),l=t(614),c=t(30),u=t(9518),s=t(1320),f=t(5112),p=t(1913),d=f("iterator"),h=!1;[].keys&&("next"in(i=[].keys())?(o=u(u(i)))!==Object.prototype&&(r=o):h=!0),null==r||a((function(){var e={};return r[d].call(e)!==e}))?r={}:p&&(r=c(r)),l(r[d])||s(r,d,(function(){return this})),e.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:h}},7497:e=>{e.exports={}},6244:(e,n,t)=>{var r=t(7466);e.exports=function(e){return r(e.length)}},133:(e,n,t)=>{var r=t(7392),o=t(7293);e.exports=!!Object.getOwnPropertySymbols&&!o((function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},8536:(e,n,t)=>{var r=t(7854),o=t(614),i=t(2788),a=r.WeakMap;e.exports=o(a)&&/native code/.test(i(a))},3929:(e,n,t)=>{var r=t(7854),o=t(7850),i=r.TypeError;e.exports=function(e){if(o(e))throw i("The method doesn't accept regular expressions");return e}},1574:(e,n,t)=>{"use strict";var r=t(9781),o=t(1702),i=t(6916),a=t(7293),l=t(1956),c=t(5181),u=t(5296),s=t(7908),f=t(8361),p=Object.assign,d=Object.defineProperty,h=o([].concat);e.exports=!p||a((function(){if(r&&1!==p({b:1},p(d({},"a",{enumerable:!0,get:function(){d(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},n={},t=Symbol(),o="abcdefghijklmnopqrst";return e[t]=7,o.split("").forEach((function(e){n[e]=e})),7!=p({},e)[t]||l(p({},n)).join("")!=o}))?function(e,n){for(var t=s(e),o=arguments.length,a=1,p=c.f,d=u.f;o>a;)for(var g,v=f(arguments[a++]),A=p?h(l(v),p(v)):l(v),b=A.length,m=0;b>m;)g=A[m++],r&&!i(d,v,g)||(t[g]=v[g]);return t}:p},30:(e,n,t)=>{var r,o=t(9670),i=t(6048),a=t(748),l=t(3501),c=t(490),u=t(317),s=t(6200),f=s("IE_PROTO"),p=function(){},d=function(e){return" + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

above

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-baseline.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-baseline.html new file mode 100644 index 0000000..04410ab --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-baseline.html @@ -0,0 +1,80 @@ + + + + + alignBaseline + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

alignBaseline

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-bottom.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-bottom.html new file mode 100644 index 0000000..42926b1 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-bottom.html @@ -0,0 +1,80 @@ + + + + + alignBottom + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

alignBottom

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-end.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-end.html new file mode 100644 index 0000000..a193327 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-end.html @@ -0,0 +1,80 @@ + + + + + alignEnd + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

alignEnd

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-left.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-left.html new file mode 100644 index 0000000..8eaad6d --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-left.html @@ -0,0 +1,80 @@ + + + + + alignLeft + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

alignLeft

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-bottom.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-bottom.html new file mode 100644 index 0000000..d1f7db1 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-bottom.html @@ -0,0 +1,80 @@ + + + + + alignParentBottom + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

alignParentBottom

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-end.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-end.html new file mode 100644 index 0000000..9656008 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-end.html @@ -0,0 +1,80 @@ + + + + + alignParentEnd + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

alignParentEnd

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-left.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-left.html new file mode 100644 index 0000000..9e8919f --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-left.html @@ -0,0 +1,80 @@ + + + + + alignParentLeft + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

alignParentLeft

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-right.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-right.html new file mode 100644 index 0000000..1109355 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-right.html @@ -0,0 +1,80 @@ + + + + + alignParentRight + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

alignParentRight

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-start.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-start.html new file mode 100644 index 0000000..8d69e05 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-start.html @@ -0,0 +1,80 @@ + + + + + alignParentStart + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

alignParentStart

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-top.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-top.html new file mode 100644 index 0000000..2a763f1 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-top.html @@ -0,0 +1,80 @@ + + + + + alignParentTop + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

alignParentTop

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-right.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-right.html new file mode 100644 index 0000000..6bea3b3 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-right.html @@ -0,0 +1,80 @@ + + + + + alignRight + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

alignRight

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-start.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-start.html new file mode 100644 index 0000000..3b1995a --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-start.html @@ -0,0 +1,80 @@ + + + + + alignStart + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

alignStart

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-top.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-top.html new file mode 100644 index 0000000..c4f58b8 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/align-top.html @@ -0,0 +1,80 @@ + + + + + alignTop + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

alignTop

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/below.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/below.html new file mode 100644 index 0000000..0a52db2 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/below.html @@ -0,0 +1,80 @@ + + + + + below + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

below

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/bottom-to-parent.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/bottom-to-parent.html new file mode 100644 index 0000000..b4faa8d --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/bottom-to-parent.html @@ -0,0 +1,80 @@ + + + + + bottomToParent + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

bottomToParent

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/center-horizontally.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/center-horizontally.html new file mode 100644 index 0000000..888c3c6 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/center-horizontally.html @@ -0,0 +1,80 @@ + + + + + centerHorizontally + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

centerHorizontally

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/center-in-parent.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/center-in-parent.html new file mode 100644 index 0000000..fbc3284 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/center-in-parent.html @@ -0,0 +1,80 @@ + + + + + centerInParent + + + + + + + + + + + + + + + + + + + +
+ +
+ + +
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/center-vertically.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/center-vertically.html new file mode 100644 index 0000000..e7ecf0e --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/center-vertically.html @@ -0,0 +1,80 @@ + + + + + centerVertically + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

centerVertically

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/end-of.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/end-of.html new file mode 100644 index 0000000..0c2717c --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/end-of.html @@ -0,0 +1,80 @@ + + + + + endOf + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

endOf

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/end-to-parent.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/end-to-parent.html new file mode 100644 index 0000000..0cc8f6e --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/end-to-parent.html @@ -0,0 +1,80 @@ + + + + + endToParent + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

endToParent

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/index.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/index.html new file mode 100644 index 0000000..c9c004c --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/index.html @@ -0,0 +1,508 @@ + + + + + com.highcapable.hikage.extension.widget + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Package-level declarations

+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ + + +
+ +
+ + + +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+ +
+
+
+ + +
Link copied to clipboard
+
+ +
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/left-of.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/left-of.html new file mode 100644 index 0000000..37cf1ef --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/left-of.html @@ -0,0 +1,80 @@ + + + + + leftOf + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

leftOf

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/left-to-parent.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/left-to-parent.html new file mode 100644 index 0000000..76178d3 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/left-to-parent.html @@ -0,0 +1,80 @@ + + + + + leftToParent + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

leftToParent

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/right-of.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/right-of.html new file mode 100644 index 0000000..d0116cc --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/right-of.html @@ -0,0 +1,80 @@ + + + + + rightOf + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

rightOf

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/right-to-parent.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/right-to-parent.html new file mode 100644 index 0000000..5167b72 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/right-to-parent.html @@ -0,0 +1,80 @@ + + + + + rightToParent + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

rightToParent

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/start-of.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/start-of.html new file mode 100644 index 0000000..9aa181a --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/start-of.html @@ -0,0 +1,80 @@ + + + + + startOf + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

startOf

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/start-to-parent.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/start-to-parent.html new file mode 100644 index 0000000..dbba643 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/start-to-parent.html @@ -0,0 +1,80 @@ + + + + + startToParent + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

startToParent

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/top-to-parent.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/top-to-parent.html new file mode 100644 index 0000000..46b3685 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension.widget/top-to-parent.html @@ -0,0 +1,80 @@ + + + + + topToParent + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

topToParent

+
+ +
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension/add-view.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension/add-view.html new file mode 100644 index 0000000..bec845a --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension/add-view.html @@ -0,0 +1,80 @@ + + + + + addView + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

addView

+
+
inline fun ViewGroup.addView(index: Int = -1, factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<ViewGroup.LayoutParams>): <Error class: unknown class>

Return

Hikage

See also


fun ViewGroup.addView(index: Int = -1, hikage: Hikage)

See also


fun ViewGroup.addView(index: Int = -1, delegate: Hikage.Delegate<*>): <Error class: unknown class>

Return

Hikage

See also

Hikage.Delegate
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension/index.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension/index.html new file mode 100644 index 0000000..d483b0f --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension/index.html @@ -0,0 +1,133 @@ + + + + + com.highcapable.hikage.extension + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

Package-level declarations

+
+
+
+
+
+

Functions

+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun ViewGroup.addView(index: Int = -1, hikage: Hikage)
fun ViewGroup.addView(index: Int = -1, delegate: Hikage.Delegate<*>): <Error class: unknown class>
inline fun ViewGroup.addView(index: Int = -1, factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<ViewGroup.LayoutParams>): <Error class: unknown class>
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun Activity.setContentView(hikage: Hikage)
fun Activity.setContentView(delegate: Hikage.Delegate<*>): <Error class: unknown class>
fun Dialog.setContentView(hikage: Hikage)
fun Dialog.setContentView(delegate: Hikage.Delegate<*>): <Error class: unknown class>
fun Window.setContentView(hikage: Hikage)
fun Window.setContentView(delegate: Hikage.Delegate<*>): <Error class: unknown class>
fun PopupWindow.setContentView(hikage: Hikage)
inline fun Activity.setContentView(factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<FrameLayout.LayoutParams>): <Error class: unknown class>
inline fun Dialog.setContentView(factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<FrameLayout.LayoutParams>): <Error class: unknown class>
inline fun Window.setContentView(factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<FrameLayout.LayoutParams>): <Error class: unknown class>
fun PopupWindow.setContentView(context: Context = requireContext(), delegate: Hikage.Delegate<*>): <Error class: unknown class>
inline fun PopupWindow.setContentView(context: Context = requireContext(), factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<FrameLayout.LayoutParams>): <Error class: unknown class>
+
+
+
+
+ +
+
+
+ + +
Link copied to clipboard
+
+
+
+
fun AlertDialog.setView(hikage: Hikage)
fun AlertDialog.setView(delegate: Hikage.Delegate<*>): <Error class: unknown class>
fun AlertDialog.Builder.setView(delegate: Hikage.Delegate<*>): AlertDialog.Builder
fun AlertDialog.setView(hikage: Hikage)
fun AlertDialog.setView(delegate: Hikage.Delegate<*>): <Error class: unknown class>
fun AlertDialog.Builder.setView(delegate: Hikage.Delegate<*>): AlertDialog.Builder
inline fun AlertDialog.setView(factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<FrameLayout.LayoutParams>): <Error class: unknown class>
inline fun AlertDialog.Builder.setView(factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<FrameLayout.LayoutParams>): AlertDialog.Builder
inline fun AlertDialog.setView(factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<FrameLayout.LayoutParams>): <Error class: unknown class>
inline fun AlertDialog.Builder.setView(factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<FrameLayout.LayoutParams>): AlertDialog.Builder
+
+
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension/set-content-view.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension/set-content-view.html new file mode 100644 index 0000000..92e0631 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension/set-content-view.html @@ -0,0 +1,80 @@ + + + + + setContentView + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

setContentView

+
+
inline fun Activity.setContentView(factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<FrameLayout.LayoutParams>): <Error class: unknown class>

Return

Hikage

See also


fun Activity.setContentView(hikage: Hikage)

See also


fun Activity.setContentView(delegate: Hikage.Delegate<*>): <Error class: unknown class>

Return

Hikage

See also


inline fun Dialog.setContentView(factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<FrameLayout.LayoutParams>): <Error class: unknown class>

Return

Hikage

See also


fun Dialog.setContentView(hikage: Hikage)

See also


fun Dialog.setContentView(delegate: Hikage.Delegate<*>): <Error class: unknown class>

Return

Hikage

See also

Hikage.Delegate

inline fun PopupWindow.setContentView(context: Context = requireContext(), factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<FrameLayout.LayoutParams>): <Error class: unknown class>

Return

Hikage

See also


fun PopupWindow.setContentView(hikage: Hikage)

See also


fun PopupWindow.setContentView(context: Context = requireContext(), delegate: Hikage.Delegate<*>): <Error class: unknown class>

Return

Hikage

See also


inline fun Window.setContentView(factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<FrameLayout.LayoutParams>): <Error class: unknown class>

Return

Hikage

See also


fun Window.setContentView(hikage: Hikage)

See also


fun Window.setContentView(delegate: Hikage.Delegate<*>): <Error class: unknown class>

Return

Hikage

See also

Hikage.Delegate
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension/set-view.html b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension/set-view.html new file mode 100644 index 0000000..7800550 --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/com.highcapable.hikage.extension/set-view.html @@ -0,0 +1,80 @@ + + + + + setView + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

setView

+
+
inline fun AlertDialog.setView(factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<FrameLayout.LayoutParams>): <Error class: unknown class>

Return

Hikage

See also


fun AlertDialog.setView(hikage: Hikage)

See also


fun AlertDialog.setView(delegate: Hikage.Delegate<*>): <Error class: unknown class>

Return

Hikage

See also

Hikage.Delegate

inline fun AlertDialog.Builder.setView(factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<FrameLayout.LayoutParams>): AlertDialog.Builder

Return

AlertDialog.Builder

See also


Return

AlertDialog.Builder

See also


fun AlertDialog.Builder.setView(delegate: Hikage.Delegate<*>): AlertDialog.Builder

Return

AlertDialog.Builder

See also


inline fun AlertDialog.setView(factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<FrameLayout.LayoutParams>): <Error class: unknown class>

Return

Hikage

See also


fun AlertDialog.setView(hikage: Hikage)

See also


fun AlertDialog.setView(delegate: Hikage.Delegate<*>): <Error class: unknown class>

Return

Hikage

See also

Hikage.Delegate

inline fun AlertDialog.Builder.setView(factory: HikageFactoryBuilder.() -> Unit = {}, performer: HikagePerformer<FrameLayout.LayoutParams>): AlertDialog.Builder

Return

AndroidXAlertDialog.Builder

See also


Return

AndroidXAlertDialog.Builder

See also


fun AlertDialog.Builder.setView(delegate: Hikage.Delegate<*>): AlertDialog.Builder

Return

AndroidXAlertDialog.Builder

See also

+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/hikage-extension/package-list b/KDoc/hikage-extension/hikage-extension/package-list new file mode 100644 index 0000000..654966c --- /dev/null +++ b/KDoc/hikage-extension/hikage-extension/package-list @@ -0,0 +1,65 @@ +$dokka.format:html-v1 +$dokka.linkExtension:html +$dokka.location:com.highcapable.hikage.extension.widget////PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/index.html +$dokka.location:com.highcapable.hikage.extension.widget//above/android.widget.RelativeLayout.LayoutParams#kotlin.Int/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/above.html +$dokka.location:com.highcapable.hikage.extension.widget//alignBaseline/android.widget.RelativeLayout.LayoutParams#kotlin.Int/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/align-baseline.html +$dokka.location:com.highcapable.hikage.extension.widget//alignBottom/android.widget.RelativeLayout.LayoutParams#kotlin.Int/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/align-bottom.html +$dokka.location:com.highcapable.hikage.extension.widget//alignEnd/android.widget.RelativeLayout.LayoutParams#kotlin.Int/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/align-end.html +$dokka.location:com.highcapable.hikage.extension.widget//alignLeft/android.widget.RelativeLayout.LayoutParams#kotlin.Int/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/align-left.html +$dokka.location:com.highcapable.hikage.extension.widget//alignParentBottom/android.widget.RelativeLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-bottom.html +$dokka.location:com.highcapable.hikage.extension.widget//alignParentEnd/android.widget.RelativeLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-end.html +$dokka.location:com.highcapable.hikage.extension.widget//alignParentLeft/android.widget.RelativeLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-left.html +$dokka.location:com.highcapable.hikage.extension.widget//alignParentRight/android.widget.RelativeLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-right.html +$dokka.location:com.highcapable.hikage.extension.widget//alignParentStart/android.widget.RelativeLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-start.html +$dokka.location:com.highcapable.hikage.extension.widget//alignParentTop/android.widget.RelativeLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/align-parent-top.html +$dokka.location:com.highcapable.hikage.extension.widget//alignRight/android.widget.RelativeLayout.LayoutParams#kotlin.Int/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/align-right.html +$dokka.location:com.highcapable.hikage.extension.widget//alignStart/android.widget.RelativeLayout.LayoutParams#kotlin.Int/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/align-start.html +$dokka.location:com.highcapable.hikage.extension.widget//alignTop/android.widget.RelativeLayout.LayoutParams#kotlin.Int/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/align-top.html +$dokka.location:com.highcapable.hikage.extension.widget//below/android.widget.RelativeLayout.LayoutParams#kotlin.Int/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/below.html +$dokka.location:com.highcapable.hikage.extension.widget//bottomToParent/androidx.constraintlayout.widget.ConstraintLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/bottom-to-parent.html +$dokka.location:com.highcapable.hikage.extension.widget//centerHorizontally/android.widget.RelativeLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/center-horizontally.html +$dokka.location:com.highcapable.hikage.extension.widget//centerHorizontally/androidx.constraintlayout.widget.ConstraintLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/center-horizontally.html +$dokka.location:com.highcapable.hikage.extension.widget//centerInParent/android.widget.RelativeLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/center-in-parent.html +$dokka.location:com.highcapable.hikage.extension.widget//centerInParent/androidx.constraintlayout.widget.ConstraintLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/center-in-parent.html +$dokka.location:com.highcapable.hikage.extension.widget//centerVertically/android.widget.RelativeLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/center-vertically.html +$dokka.location:com.highcapable.hikage.extension.widget//centerVertically/androidx.constraintlayout.widget.ConstraintLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/center-vertically.html +$dokka.location:com.highcapable.hikage.extension.widget//endOf/android.widget.RelativeLayout.LayoutParams#kotlin.Int/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/end-of.html +$dokka.location:com.highcapable.hikage.extension.widget//endToParent/androidx.constraintlayout.widget.ConstraintLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/end-to-parent.html +$dokka.location:com.highcapable.hikage.extension.widget//leftOf/android.widget.RelativeLayout.LayoutParams#kotlin.Int/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/left-of.html +$dokka.location:com.highcapable.hikage.extension.widget//leftToParent/androidx.constraintlayout.widget.ConstraintLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/left-to-parent.html +$dokka.location:com.highcapable.hikage.extension.widget//rightOf/android.widget.RelativeLayout.LayoutParams#kotlin.Int/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/right-of.html +$dokka.location:com.highcapable.hikage.extension.widget//rightToParent/androidx.constraintlayout.widget.ConstraintLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/right-to-parent.html +$dokka.location:com.highcapable.hikage.extension.widget//startOf/android.widget.RelativeLayout.LayoutParams#kotlin.Int/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/start-of.html +$dokka.location:com.highcapable.hikage.extension.widget//startToParent/androidx.constraintlayout.widget.ConstraintLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/start-to-parent.html +$dokka.location:com.highcapable.hikage.extension.widget//topToParent/androidx.constraintlayout.widget.ConstraintLayout.LayoutParams#/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension.widget/top-to-parent.html +$dokka.location:com.highcapable.hikage.extension////PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/index.html +$dokka.location:com.highcapable.hikage.extension//addView/android.view.ViewGroup#kotlin.Int#com.highcapable.hikage.core.Hikage.Delegate[*]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/add-view.html +$dokka.location:com.highcapable.hikage.extension//addView/android.view.ViewGroup#kotlin.Int#com.highcapable.hikage.core.Hikage/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/add-view.html +$dokka.location:com.highcapable.hikage.extension//addView/android.view.ViewGroup#kotlin.Int#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.view.ViewGroup.LayoutParams],kotlin.Unit]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/add-view.html +$dokka.location:com.highcapable.hikage.extension//setContentView/android.app.Activity#com.highcapable.hikage.core.Hikage.Delegate[*]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-content-view.html +$dokka.location:com.highcapable.hikage.extension//setContentView/android.app.Activity#com.highcapable.hikage.core.Hikage/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-content-view.html +$dokka.location:com.highcapable.hikage.extension//setContentView/android.app.Activity#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.widget.FrameLayout.LayoutParams],kotlin.Unit]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-content-view.html +$dokka.location:com.highcapable.hikage.extension//setContentView/android.app.Dialog#com.highcapable.hikage.core.Hikage.Delegate[*]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-content-view.html +$dokka.location:com.highcapable.hikage.extension//setContentView/android.app.Dialog#com.highcapable.hikage.core.Hikage/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-content-view.html +$dokka.location:com.highcapable.hikage.extension//setContentView/android.app.Dialog#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.widget.FrameLayout.LayoutParams],kotlin.Unit]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-content-view.html +$dokka.location:com.highcapable.hikage.extension//setContentView/android.view.Window#com.highcapable.hikage.core.Hikage.Delegate[*]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-content-view.html +$dokka.location:com.highcapable.hikage.extension//setContentView/android.view.Window#com.highcapable.hikage.core.Hikage/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-content-view.html +$dokka.location:com.highcapable.hikage.extension//setContentView/android.view.Window#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.widget.FrameLayout.LayoutParams],kotlin.Unit]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-content-view.html +$dokka.location:com.highcapable.hikage.extension//setContentView/android.widget.PopupWindow#android.content.Context#com.highcapable.hikage.core.Hikage.Delegate[*]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-content-view.html +$dokka.location:com.highcapable.hikage.extension//setContentView/android.widget.PopupWindow#android.content.Context#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.widget.FrameLayout.LayoutParams],kotlin.Unit]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-content-view.html +$dokka.location:com.highcapable.hikage.extension//setContentView/android.widget.PopupWindow#com.highcapable.hikage.core.Hikage/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-content-view.html +$dokka.location:com.highcapable.hikage.extension//setView/android.app.AlertDialog#com.highcapable.hikage.core.Hikage.Delegate[*]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-view.html +$dokka.location:com.highcapable.hikage.extension//setView/android.app.AlertDialog#com.highcapable.hikage.core.Hikage/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-view.html +$dokka.location:com.highcapable.hikage.extension//setView/android.app.AlertDialog#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.widget.FrameLayout.LayoutParams],kotlin.Unit]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-view.html +$dokka.location:com.highcapable.hikage.extension//setView/android.app.AlertDialog.Builder#com.highcapable.hikage.core.Hikage.Delegate[*]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-view.html +$dokka.location:com.highcapable.hikage.extension//setView/android.app.AlertDialog.Builder#com.highcapable.hikage.core.Hikage/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-view.html +$dokka.location:com.highcapable.hikage.extension//setView/android.app.AlertDialog.Builder#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.widget.FrameLayout.LayoutParams],kotlin.Unit]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-view.html +$dokka.location:com.highcapable.hikage.extension//setView/androidx.appcompat.app.AlertDialog#com.highcapable.hikage.core.Hikage.Delegate[*]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-view.html +$dokka.location:com.highcapable.hikage.extension//setView/androidx.appcompat.app.AlertDialog#com.highcapable.hikage.core.Hikage/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-view.html +$dokka.location:com.highcapable.hikage.extension//setView/androidx.appcompat.app.AlertDialog#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.widget.FrameLayout.LayoutParams],kotlin.Unit]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-view.html +$dokka.location:com.highcapable.hikage.extension//setView/androidx.appcompat.app.AlertDialog.Builder#com.highcapable.hikage.core.Hikage.Delegate[*]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-view.html +$dokka.location:com.highcapable.hikage.extension//setView/androidx.appcompat.app.AlertDialog.Builder#com.highcapable.hikage.core.Hikage/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-view.html +$dokka.location:com.highcapable.hikage.extension//setView/androidx.appcompat.app.AlertDialog.Builder#kotlin.Function1[com.highcapable.hikage.core.base.HikageFactoryBuilder,kotlin.Unit]#kotlin.Function1[com.highcapable.hikage.core.Hikage.Performer[android.widget.FrameLayout.LayoutParams],kotlin.Unit]/PointingToDeclaration/hikage-extension/com.highcapable.hikage.extension/set-view.html +com.highcapable.hikage.extension +com.highcapable.hikage.extension.widget + diff --git a/KDoc/hikage-extension/images/anchor-copy-button.svg b/KDoc/hikage-extension/images/anchor-copy-button.svg new file mode 100644 index 0000000..19c1fa3 --- /dev/null +++ b/KDoc/hikage-extension/images/anchor-copy-button.svg @@ -0,0 +1,8 @@ + + + + + + diff --git a/KDoc/hikage-extension/images/arrow_down.svg b/KDoc/hikage-extension/images/arrow_down.svg new file mode 100644 index 0000000..639aaf1 --- /dev/null +++ b/KDoc/hikage-extension/images/arrow_down.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-extension/images/burger.svg b/KDoc/hikage-extension/images/burger.svg new file mode 100644 index 0000000..fcca732 --- /dev/null +++ b/KDoc/hikage-extension/images/burger.svg @@ -0,0 +1,9 @@ + + + + + + + diff --git a/KDoc/hikage-extension/images/copy-icon.svg b/KDoc/hikage-extension/images/copy-icon.svg new file mode 100644 index 0000000..2cb02ec --- /dev/null +++ b/KDoc/hikage-extension/images/copy-icon.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-extension/images/copy-successful-icon.svg b/KDoc/hikage-extension/images/copy-successful-icon.svg new file mode 100644 index 0000000..c4b9538 --- /dev/null +++ b/KDoc/hikage-extension/images/copy-successful-icon.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-extension/images/footer-go-to-link.svg b/KDoc/hikage-extension/images/footer-go-to-link.svg new file mode 100644 index 0000000..a87add7 --- /dev/null +++ b/KDoc/hikage-extension/images/footer-go-to-link.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-extension/images/go-to-top-icon.svg b/KDoc/hikage-extension/images/go-to-top-icon.svg new file mode 100644 index 0000000..abc3d1c --- /dev/null +++ b/KDoc/hikage-extension/images/go-to-top-icon.svg @@ -0,0 +1,8 @@ + + + + + + diff --git a/KDoc/hikage-extension/images/homepage.svg b/KDoc/hikage-extension/images/homepage.svg new file mode 100644 index 0000000..e3c83b1 --- /dev/null +++ b/KDoc/hikage-extension/images/homepage.svg @@ -0,0 +1,3 @@ + + + diff --git a/KDoc/hikage-extension/images/logo-icon.svg b/KDoc/hikage-extension/images/logo-icon.svg new file mode 100644 index 0000000..e42f957 --- /dev/null +++ b/KDoc/hikage-extension/images/logo-icon.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + diff --git a/KDoc/hikage-extension/images/nav-icons/abstract-class-kotlin.svg b/KDoc/hikage-extension/images/nav-icons/abstract-class-kotlin.svg new file mode 100644 index 0000000..19d6148 --- /dev/null +++ b/KDoc/hikage-extension/images/nav-icons/abstract-class-kotlin.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/KDoc/hikage-extension/images/nav-icons/abstract-class.svg b/KDoc/hikage-extension/images/nav-icons/abstract-class.svg new file mode 100644 index 0000000..6018203 --- /dev/null +++ b/KDoc/hikage-extension/images/nav-icons/abstract-class.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/KDoc/hikage-extension/images/nav-icons/annotation-kotlin.svg b/KDoc/hikage-extension/images/nav-icons/annotation-kotlin.svg new file mode 100644 index 0000000..b90f508 --- /dev/null +++ b/KDoc/hikage-extension/images/nav-icons/annotation-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension/images/nav-icons/annotation.svg b/KDoc/hikage-extension/images/nav-icons/annotation.svg new file mode 100644 index 0000000..b80c54b --- /dev/null +++ b/KDoc/hikage-extension/images/nav-icons/annotation.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension/images/nav-icons/class-kotlin.svg b/KDoc/hikage-extension/images/nav-icons/class-kotlin.svg new file mode 100644 index 0000000..797a242 --- /dev/null +++ b/KDoc/hikage-extension/images/nav-icons/class-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension/images/nav-icons/class.svg b/KDoc/hikage-extension/images/nav-icons/class.svg new file mode 100644 index 0000000..3f1ad16 --- /dev/null +++ b/KDoc/hikage-extension/images/nav-icons/class.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension/images/nav-icons/enum-kotlin.svg b/KDoc/hikage-extension/images/nav-icons/enum-kotlin.svg new file mode 100644 index 0000000..775a7cc --- /dev/null +++ b/KDoc/hikage-extension/images/nav-icons/enum-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension/images/nav-icons/enum.svg b/KDoc/hikage-extension/images/nav-icons/enum.svg new file mode 100644 index 0000000..fa7f247 --- /dev/null +++ b/KDoc/hikage-extension/images/nav-icons/enum.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension/images/nav-icons/exception-class.svg b/KDoc/hikage-extension/images/nav-icons/exception-class.svg new file mode 100644 index 0000000..c0b2bde --- /dev/null +++ b/KDoc/hikage-extension/images/nav-icons/exception-class.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension/images/nav-icons/field-value.svg b/KDoc/hikage-extension/images/nav-icons/field-value.svg new file mode 100644 index 0000000..2771ee5 --- /dev/null +++ b/KDoc/hikage-extension/images/nav-icons/field-value.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/KDoc/hikage-extension/images/nav-icons/field-variable.svg b/KDoc/hikage-extension/images/nav-icons/field-variable.svg new file mode 100644 index 0000000..e2d2bbd --- /dev/null +++ b/KDoc/hikage-extension/images/nav-icons/field-variable.svg @@ -0,0 +1,10 @@ + + + + + + + + diff --git a/KDoc/hikage-extension/images/nav-icons/function.svg b/KDoc/hikage-extension/images/nav-icons/function.svg new file mode 100644 index 0000000..f0da64a --- /dev/null +++ b/KDoc/hikage-extension/images/nav-icons/function.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension/images/nav-icons/interface-kotlin.svg b/KDoc/hikage-extension/images/nav-icons/interface-kotlin.svg new file mode 100644 index 0000000..5e16326 --- /dev/null +++ b/KDoc/hikage-extension/images/nav-icons/interface-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension/images/nav-icons/interface.svg b/KDoc/hikage-extension/images/nav-icons/interface.svg new file mode 100644 index 0000000..32063ba --- /dev/null +++ b/KDoc/hikage-extension/images/nav-icons/interface.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/KDoc/hikage-extension/images/nav-icons/object.svg b/KDoc/hikage-extension/images/nav-icons/object.svg new file mode 100644 index 0000000..31f0ee3 --- /dev/null +++ b/KDoc/hikage-extension/images/nav-icons/object.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension/images/nav-icons/typealias-kotlin.svg b/KDoc/hikage-extension/images/nav-icons/typealias-kotlin.svg new file mode 100644 index 0000000..f4bb238 --- /dev/null +++ b/KDoc/hikage-extension/images/nav-icons/typealias-kotlin.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + diff --git a/KDoc/hikage-extension/images/theme-toggle.svg b/KDoc/hikage-extension/images/theme-toggle.svg new file mode 100644 index 0000000..df86202 --- /dev/null +++ b/KDoc/hikage-extension/images/theme-toggle.svg @@ -0,0 +1,7 @@ + + + + + diff --git a/KDoc/hikage-extension/index.html b/KDoc/hikage-extension/index.html new file mode 100644 index 0000000..69a467e --- /dev/null +++ b/KDoc/hikage-extension/index.html @@ -0,0 +1,117 @@ + + + + + hikage-extension + + + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ +
+

hikage-extension

+
+

Packages

+
+
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+
+
+ +
+
+
+
+ + +
Link copied to clipboard
+
+
+
+ +
+
+
+
+
+
+
+
+ +
+
+
+ + diff --git a/KDoc/hikage-extension/navigation.html b/KDoc/hikage-extension/navigation.html new file mode 100644 index 0000000..67260da --- /dev/null +++ b/KDoc/hikage-extension/navigation.html @@ -0,0 +1,103 @@ + + diff --git a/KDoc/hikage-extension/scripts/clipboard.js b/KDoc/hikage-extension/scripts/clipboard.js new file mode 100644 index 0000000..7a4f33c --- /dev/null +++ b/KDoc/hikage-extension/scripts/clipboard.js @@ -0,0 +1,56 @@ +/* + * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license. + */ + +window.addEventListener('load', () => { + document.querySelectorAll('span.copy-icon').forEach(element => { + element.addEventListener('click', (el) => copyElementsContentToClipboard(element)); + }) + + document.querySelectorAll('span.anchor-icon').forEach(element => { + element.addEventListener('click', (el) => { + if(element.hasAttribute('pointing-to')){ + const location = hrefWithoutCurrentlyUsedAnchor() + '#' + element.getAttribute('pointing-to') + copyTextToClipboard(element, location) + } + }); + }) +}) + +const copyElementsContentToClipboard = (element) => { + const selection = window.getSelection(); + const range = document.createRange(); + range.selectNodeContents(element.parentNode.parentNode); + selection.removeAllRanges(); + selection.addRange(range); + + copyAndShowPopup(element, () => selection.removeAllRanges()) +} + +const copyTextToClipboard = (element, text) => { + var textarea = document.createElement("textarea"); + textarea.textContent = text; + textarea.style.position = "fixed"; + document.body.appendChild(textarea); + textarea.select(); + + copyAndShowPopup(element, () => document.body.removeChild(textarea)) +} + +const copyAndShowPopup = (element, after) => { + try { + document.execCommand('copy'); + element.nextElementSibling.classList.add('active-popup'); + setTimeout(() => { + element.nextElementSibling.classList.remove('active-popup'); + }, 1200); + } catch (e) { + console.error('Failed to write to clipboard:', e) + } + finally { + if(after) after() + } +} + +const hrefWithoutCurrentlyUsedAnchor = () => window.location.href.split('#')[0] + diff --git a/KDoc/hikage-extension/scripts/main.js b/KDoc/hikage-extension/scripts/main.js new file mode 100644 index 0000000..ba6c347 --- /dev/null +++ b/KDoc/hikage-extension/scripts/main.js @@ -0,0 +1,44 @@ +(()=>{var e={8527:e=>{e.exports=''},5570:e=>{e.exports=''},107:e=>{e.exports=''},7224:e=>{e.exports=''},538:e=>{e.exports=''},1924:(e,n,t)=>{"use strict";var r=t(210),o=t(5559),i=o(r("String.prototype.indexOf"));e.exports=function(e,n){var t=r(e,!!n);return"function"==typeof t&&i(e,".prototype.")>-1?o(t):t}},5559:(e,n,t)=>{"use strict";var r=t(8612),o=t(210),i=o("%Function.prototype.apply%"),a=o("%Function.prototype.call%"),l=o("%Reflect.apply%",!0)||r.call(a,i),c=o("%Object.getOwnPropertyDescriptor%",!0),u=o("%Object.defineProperty%",!0),s=o("%Math.max%");if(u)try{u({},"a",{value:1})}catch(e){u=null}e.exports=function(e){var n=l(r,a,arguments);if(c&&u){var t=c(n,"length");t.configurable&&u(n,"length",{value:1+s(0,e.length-(arguments.length-1))})}return n};var f=function(){return l(r,i,arguments)};u?u(e.exports,"apply",{value:f}):e.exports.apply=f},4184:(e,n)=>{var t; +/*! + Copyright (c) 2018 Jed Watson. + Licensed under the MIT License (MIT), see + http://jedwatson.github.io/classnames +*/!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e=[],n=0;n{"use strict";e.exports=function(e,n){var t=this,r=t.constructor;return t.options=Object.assign({storeInstancesGlobally:!0},n||{}),t.callbacks={},t.directMap={},t.sequenceLevels={},t.resetTimer=null,t.ignoreNextKeyup=!1,t.ignoreNextKeypress=!1,t.nextExpectedAction=!1,t.element=e,t.addEvents(),t.options.storeInstancesGlobally&&r.instances.push(t),t},e.exports.prototype.bind=t(2207),e.exports.prototype.bindMultiple=t(3396),e.exports.prototype.unbind=t(9208),e.exports.prototype.trigger=t(9855),e.exports.prototype.reset=t(6214),e.exports.prototype.stopCallback=t(3450),e.exports.prototype.handleKey=t(3067),e.exports.prototype.addEvents=t(718),e.exports.prototype.bindSingle=t(8763),e.exports.prototype.getKeyInfo=t(5825),e.exports.prototype.pickBestAction=t(8608),e.exports.prototype.getReverseMap=t(3956),e.exports.prototype.getMatches=t(3373),e.exports.prototype.resetSequences=t(3346),e.exports.prototype.fireCallback=t(2684),e.exports.prototype.bindSequence=t(7103),e.exports.prototype.resetSequenceTimer=t(7309),e.exports.prototype.detach=t(7554),e.exports.instances=[],e.exports.reset=t(1822),e.exports.REVERSE_MAP=null},718:(e,n,t)=>{"use strict";e.exports=function(){var e=this,n=t(4323),r=e.element;e.eventHandler=t(9646).bind(e),n(r,"keypress",e.eventHandler),n(r,"keydown",e.eventHandler),n(r,"keyup",e.eventHandler)}},2207:e=>{"use strict";e.exports=function(e,n,t){return e=e instanceof Array?e:[e],this.bindMultiple(e,n,t),this}},3396:e=>{"use strict";e.exports=function(e,n,t){for(var r=0;r{"use strict";e.exports=function(e,n,r,o){var i=this;function a(n){return function(){i.nextExpectedAction=n,++i.sequenceLevels[e],i.resetSequenceTimer()}}function l(n){var a;i.fireCallback(r,n,e),"keyup"!==o&&(a=t(6770),i.ignoreNextKeyup=a(n)),setTimeout((function(){i.resetSequences()}),10)}i.sequenceLevels[e]=0;for(var c=0;c{"use strict";e.exports=function(e,n,t,r,o){var i=this;i.directMap[e+":"+t]=n;var a,l=(e=e.replace(/\s+/g," ")).split(" ");l.length>1?i.bindSequence(e,l,n,t):(a=i.getKeyInfo(e,t),i.callbacks[a.key]=i.callbacks[a.key]||[],i.getMatches(a.key,a.modifiers,{type:a.action},r,e,o),i.callbacks[a.key][r?"unshift":"push"]({callback:n,modifiers:a.modifiers,action:a.action,seq:r,level:o,combo:e}))}},7554:(e,n,t)=>{var r=t(4323).off;e.exports=function(){var e=this,n=e.element;r(n,"keypress",e.eventHandler),r(n,"keydown",e.eventHandler),r(n,"keyup",e.eventHandler)}},4323:e=>{function n(e,n,t,r){return!e.addEventListener&&(n="on"+n),(e.addEventListener||e.attachEvent).call(e,n,t,r),t}e.exports=n,e.exports.on=n,e.exports.off=function(e,n,t,r){return!e.removeEventListener&&(n="on"+n),(e.removeEventListener||e.detachEvent).call(e,n,t,r),t}},2684:(e,n,t)=>{"use strict";e.exports=function(e,n,r,o){this.stopCallback(n,n.target||n.srcElement,r,o)||!1===e(n,r)&&(t(1350)(n),t(6103)(n))}},5825:(e,n,t)=>{"use strict";e.exports=function(e,n){var r,o,i,a,l,c,u=[];for(r=t(4520)(e),a=t(7549),l=t(5355),c=t(8581),i=0;i{"use strict";e.exports=function(e,n,r,o,i,a){var l,c,u,s,f=this,p=[],d=r.type;"keypress"!==d||r.code&&"Arrow"===r.code.slice(0,5)||(f.callbacks["any-character"]||[]).forEach((function(e){p.push(e)}));if(!f.callbacks[e])return p;for(u=t(8581),"keyup"===d&&u(e)&&(n=[e]),l=0;l{"use strict";e.exports=function(){var e,n=this.constructor;if(!n.REVERSE_MAP)for(var r in n.REVERSE_MAP={},e=t(4766))r>95&&r<112||e.hasOwnProperty(r)&&(n.REVERSE_MAP[e[r]]=r);return n.REVERSE_MAP}},3067:(e,n,t)=>{"use strict";e.exports=function(e,n,r){var o,i,a,l,c=this,u={},s=0,f=!1;for(o=c.getMatches(e,n,r),i=0;i{"use strict";e.exports=function(e){var n,r=this;"number"!=typeof e.which&&(e.which=e.keyCode);var o=t(6770)(e);void 0!==o&&("keyup"!==e.type||r.ignoreNextKeyup!==o?(n=t(4610),r.handleKey(o,n(e),e)):r.ignoreNextKeyup=!1)}},5532:e=>{"use strict";e.exports=function(e,n){return e.sort().join(",")===n.sort().join(",")}},8608:e=>{"use strict";e.exports=function(e,n,t){return t||(t=this.getReverseMap()[e]?"keydown":"keypress"),"keypress"===t&&n.length&&(t="keydown"),t}},6214:e=>{"use strict";e.exports=function(){return this.callbacks={},this.directMap={},this}},7309:e=>{"use strict";e.exports=function(){var e=this;clearTimeout(e.resetTimer),e.resetTimer=setTimeout((function(){e.resetSequences()}),1e3)}},3346:e=>{"use strict";e.exports=function(e){var n=this;e=e||{};var t,r=!1;for(t in n.sequenceLevels)e[t]?r=!0:n.sequenceLevels[t]=0;r||(n.nextExpectedAction=!1)}},3450:e=>{"use strict";e.exports=function(e,n){if((" "+n.className+" ").indexOf(" combokeys ")>-1)return!1;var t=n.tagName.toLowerCase();return"input"===t||"select"===t||"textarea"===t||n.isContentEditable}},9855:e=>{"use strict";e.exports=function(e,n){return this.directMap[e+":"+n]&&this.directMap[e+":"+n]({},e),this}},9208:e=>{"use strict";e.exports=function(e,n){return this.bind(e,(function(){}),n)}},1822:e=>{"use strict";e.exports=function(){this.instances.forEach((function(e){e.reset()}))}},6770:(e,n,t)=>{"use strict";e.exports=function(e){var n,r;if(n=t(4766),r=t(5295),"keypress"===e.type){var o=String.fromCharCode(e.which);return e.shiftKey||(o=o.toLowerCase()),o}return void 0!==n[e.which]?n[e.which]:void 0!==r[e.which]?r[e.which]:String.fromCharCode(e.which).toLowerCase()}},4610:e=>{"use strict";e.exports=function(e){var n=[];return e.shiftKey&&n.push("shift"),e.altKey&&n.push("alt"),e.ctrlKey&&n.push("ctrl"),e.metaKey&&n.push("meta"),n}},8581:e=>{"use strict";e.exports=function(e){return"shift"===e||"ctrl"===e||"alt"===e||"meta"===e}},4520:e=>{"use strict";e.exports=function(e){return"+"===e?["+"]:e.split("+")}},1350:e=>{"use strict";e.exports=function(e){e.preventDefault?e.preventDefault():e.returnValue=!1}},5355:e=>{"use strict";e.exports={"~":"`","!":"1","@":"2","#":"3",$:"4","%":"5","^":"6","&":"7","*":"8","(":"9",")":"0",_:"-","+":"=",":":";",'"':"'","<":",",">":".","?":"/","|":"\\"}},7549:e=>{"use strict";e.exports={option:"alt",command:"meta",return:"enter",escape:"esc",mod:/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"meta":"ctrl"}},5295:e=>{"use strict";e.exports={106:"*",107:"plus",109:"minus",110:".",111:"/",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"}},4766:e=>{"use strict";e.exports={8:"backspace",9:"tab",13:"enter",16:"shift",17:"ctrl",18:"alt",20:"capslock",27:"esc",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"ins",46:"del",91:"meta",93:"meta",173:"minus",187:"plus",189:"minus",224:"meta"};for(var n=1;n<20;++n)e.exports[111+n]="f"+n;for(n=0;n<=9;++n)e.exports[n+96]=n},6103:e=>{"use strict";e.exports=function(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}},3362:()=>{var e;!function(){var e=Math.PI,n=2*e,t=e/180,r=document.createElement("div");document.head.appendChild(r);var o=self.ConicGradient=function(e){o.all.push(this),e=e||{},this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d"),this.repeating=!!e.repeating,this.size=e.size||Math.max(innerWidth,innerHeight),this.canvas.width=this.canvas.height=this.size;var n=e.stops;this.stops=(n||"").split(/\s*,(?![^(]*\))\s*/),this.from=0;for(var t=0;t0){var i=this.stops[0].clone();i.pos=0,this.stops.unshift(i)}if(void 0===this.stops[this.stops.length-1].pos)this.stops[this.stops.length-1].pos=1;else if(!this.repeating&&this.stops[this.stops.length-1].pos<1){var a=this.stops[this.stops.length-1].clone();a.pos=1,this.stops.push(a)}if(this.stops.forEach((function(e,n){if(void 0===e.pos){for(var t=n+1;this[t];t++)if(void 0!==this[t].pos){e.pos=this[n-1].pos+(this[t].pos-this[n-1].pos)/(t-n+1);break}}else n>0&&(e.pos=Math.max(e.pos,this[n-1].pos))}),this.stops),this.repeating){var l=(n=this.stops.slice())[n.length-1].pos-n[0].pos;for(t=0;this.stops[this.stops.length-1].pos<1&&t<1e4;t++)for(var c=0;c'},get png(){return this.canvas.toDataURL()},get r(){return Math.sqrt(2)*this.size/2},paint:function(){var e,n,r,o=this.context,i=this.r,a=this.size/2,l=0,c=this.stops[l];o.translate(this.size/2,this.size/2),o.rotate(-90*t),o.rotate(this.from*t),o.translate(-this.size/2,-this.size/2);for(var u=0;u<360;){if(u/360+1e-5>=c.pos){do{e=c,l++,c=this.stops[l]}while(c&&c!=e&&c.pos===e.pos);if(!c)break;var s=e.color+""==c.color+""&&e!=c;n=e.color.map((function(e,n){return c.color[n]-e}))}r=(u/360-e.pos)/(c.pos-e.pos);var f=s?c.color:n.map((function(n,t){var o=n*r+e.color[t];return t<3?255&o:o}));if(o.fillStyle="rgba("+f.join(",")+")",o.beginPath(),o.moveTo(a,a),s)var p=360*(c.pos-e.pos);else p=.5;var d=u*t,h=(d=Math.min(360*t,d))+p*t;h=Math.min(360*t,h+.02),o.arc(a,a,i,d,h),o.closePath(),o.fill(),u+=p}}},o.ColorStop=function(e,t){if(this.gradient=e,t){var r=t.match(/^(.+?)(?:\s+([\d.]+)(%|deg|turn|grad|rad)?)?(?:\s+([\d.]+)(%|deg|turn|grad|rad)?)?\s*$/);if(this.color=o.ColorStop.colorToRGBA(r[1]),r[2]){var i=r[3];"%"==i||"0"===r[2]&&!i?this.pos=r[2]/100:"turn"==i?this.pos=+r[2]:"deg"==i?this.pos=r[2]/360:"grad"==i?this.pos=r[2]/400:"rad"==i&&(this.pos=r[2]/n)}r[4]&&(this.next=new o.ColorStop(e,r[1]+" "+r[4]+r[5]))}},o.ColorStop.prototype={clone:function(){var e=new o.ColorStop(this.gradient);return e.color=this.color,e.pos=this.pos,e},toString:function(){return"rgba("+this.color.join(", ")+") "+100*this.pos+"%"}},o.ColorStop.colorToRGBA=function(e){if(!Array.isArray(e)&&-1==e.indexOf("from")){r.style.color=e;var n=getComputedStyle(r).color.match(/rgba?\(([\d.]+), ([\d.]+), ([\d.]+)(?:, ([\d.]+))?\)/);return n&&(n.shift(),(n=n.map((function(e){return+e})))[3]=isNaN(n[3])?1:n[3]),n||[0,0,0,0]}return e}}(),self.StyleFix&&((e=document.createElement("p")).style.backgroundImage="conic-gradient(white, black)",e.style.backgroundImage=PrefixFree.prefix+"conic-gradient(white, black)",e.style.backgroundImage||StyleFix.register((function(e,n){return e.indexOf("conic-gradient")>-1&&(e=e.replace(/(?:repeating-)?conic-gradient\(\s*((?:\([^()]+\)|[^;()}])+?)\)/g,(function(e,n){return new ConicGradient({stops:n,repeating:e.indexOf("repeating-")>-1})}))),e})))},9662:(e,n,t)=>{var r=t(7854),o=t(614),i=t(6330),a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not a function")}},9483:(e,n,t)=>{var r=t(7854),o=t(4411),i=t(6330),a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not a constructor")}},6077:(e,n,t)=>{var r=t(7854),o=t(614),i=r.String,a=r.TypeError;e.exports=function(e){if("object"==typeof e||o(e))return e;throw a("Can't set "+i(e)+" as a prototype")}},1223:(e,n,t)=>{var r=t(5112),o=t(30),i=t(3070),a=r("unscopables"),l=Array.prototype;null==l[a]&&i.f(l,a,{configurable:!0,value:o(null)}),e.exports=function(e){l[a][e]=!0}},1530:(e,n,t)=>{"use strict";var r=t(8710).charAt;e.exports=function(e,n,t){return n+(t?r(e,n).length:1)}},5787:(e,n,t)=>{var r=t(7854),o=t(7976),i=r.TypeError;e.exports=function(e,n){if(o(n,e))return e;throw i("Incorrect invocation")}},9670:(e,n,t)=>{var r=t(7854),o=t(111),i=r.String,a=r.TypeError;e.exports=function(e){if(o(e))return e;throw a(i(e)+" is not an object")}},7556:(e,n,t)=>{var r=t(7293);e.exports=r((function(){if("function"==typeof ArrayBuffer){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}))},8533:(e,n,t)=>{"use strict";var r=t(2092).forEach,o=t(9341)("forEach");e.exports=o?[].forEach:function(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}},8457:(e,n,t)=>{"use strict";var r=t(7854),o=t(9974),i=t(6916),a=t(7908),l=t(3411),c=t(7659),u=t(4411),s=t(6244),f=t(6135),p=t(8554),d=t(1246),h=r.Array;e.exports=function(e){var n=a(e),t=u(this),r=arguments.length,g=r>1?arguments[1]:void 0,v=void 0!==g;v&&(g=o(g,r>2?arguments[2]:void 0));var A,b,m,y,E,_,C=d(n),w=0;if(!C||this==h&&c(C))for(A=s(n),b=t?new this(A):h(A);A>w;w++)_=v?g(n[w],w):n[w],f(b,w,_);else for(E=(y=p(n,C)).next,b=t?new this:[];!(m=i(E,y)).done;w++)_=v?l(y,g,[m.value,w],!0):m.value,f(b,w,_);return b.length=w,b}},1318:(e,n,t)=>{var r=t(5656),o=t(1400),i=t(6244),a=function(e){return function(n,t,a){var l,c=r(n),u=i(c),s=o(a,u);if(e&&t!=t){for(;u>s;)if((l=c[s++])!=l)return!0}else for(;u>s;s++)if((e||s in c)&&c[s]===t)return e||s||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},2092:(e,n,t)=>{var r=t(9974),o=t(1702),i=t(8361),a=t(7908),l=t(6244),c=t(5417),u=o([].push),s=function(e){var n=1==e,t=2==e,o=3==e,s=4==e,f=6==e,p=7==e,d=5==e||f;return function(h,g,v,A){for(var b,m,y=a(h),E=i(y),_=r(g,v),C=l(E),w=0,x=A||c,k=n?x(h,C):t||p?x(h,0):void 0;C>w;w++)if((d||w in E)&&(m=_(b=E[w],w,y),e))if(n)k[w]=m;else if(m)switch(e){case 3:return!0;case 5:return b;case 6:return w;case 2:u(k,b)}else switch(e){case 4:return!1;case 7:u(k,b)}return f?-1:o||s?s:k}};e.exports={forEach:s(0),map:s(1),filter:s(2),some:s(3),every:s(4),find:s(5),findIndex:s(6),filterReject:s(7)}},1194:(e,n,t)=>{var r=t(7293),o=t(5112),i=t(7392),a=o("species");e.exports=function(e){return i>=51||!r((function(){var n=[];return(n.constructor={})[a]=function(){return{foo:1}},1!==n[e](Boolean).foo}))}},9341:(e,n,t)=>{"use strict";var r=t(7293);e.exports=function(e,n){var t=[][e];return!!t&&r((function(){t.call(null,n||function(){throw 1},1)}))}},3671:(e,n,t)=>{var r=t(7854),o=t(9662),i=t(7908),a=t(8361),l=t(6244),c=r.TypeError,u=function(e){return function(n,t,r,u){o(t);var s=i(n),f=a(s),p=l(s),d=e?p-1:0,h=e?-1:1;if(r<2)for(;;){if(d in f){u=f[d],d+=h;break}if(d+=h,e?d<0:p<=d)throw c("Reduce of empty array with no initial value")}for(;e?d>=0:p>d;d+=h)d in f&&(u=t(u,f[d],d,s));return u}};e.exports={left:u(!1),right:u(!0)}},206:(e,n,t)=>{var r=t(1702);e.exports=r([].slice)},4362:(e,n,t)=>{var r=t(206),o=Math.floor,i=function(e,n){var t=e.length,c=o(t/2);return t<8?a(e,n):l(e,i(r(e,0,c),n),i(r(e,c),n),n)},a=function(e,n){for(var t,r,o=e.length,i=1;i0;)e[r]=e[--r];r!==i++&&(e[r]=t)}return e},l=function(e,n,t,r){for(var o=n.length,i=t.length,a=0,l=0;a{var r=t(7854),o=t(3157),i=t(4411),a=t(111),l=t(5112)("species"),c=r.Array;e.exports=function(e){var n;return o(e)&&(n=e.constructor,(i(n)&&(n===c||o(n.prototype))||a(n)&&null===(n=n[l]))&&(n=void 0)),void 0===n?c:n}},5417:(e,n,t)=>{var r=t(7475);e.exports=function(e,n){return new(r(e))(0===n?0:n)}},3411:(e,n,t)=>{var r=t(9670),o=t(9212);e.exports=function(e,n,t,i){try{return i?n(r(t)[0],t[1]):n(t)}catch(n){o(e,"throw",n)}}},7072:(e,n,t)=>{var r=t(5112)("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},return:function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(e){}e.exports=function(e,n){if(!n&&!o)return!1;var t=!1;try{var i={};i[r]=function(){return{next:function(){return{done:t=!0}}}},e(i)}catch(e){}return t}},4326:(e,n,t)=>{var r=t(1702),o=r({}.toString),i=r("".slice);e.exports=function(e){return i(o(e),8,-1)}},648:(e,n,t)=>{var r=t(7854),o=t(1694),i=t(614),a=t(4326),l=t(5112)("toStringTag"),c=r.Object,u="Arguments"==a(function(){return arguments}());e.exports=o?a:function(e){var n,t,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(t=function(e,n){try{return e[n]}catch(e){}}(n=c(e),l))?t:u?a(n):"Object"==(r=a(n))&&i(n.callee)?"Arguments":r}},5631:(e,n,t)=>{"use strict";var r=t(3070).f,o=t(30),i=t(2248),a=t(9974),l=t(5787),c=t(408),u=t(654),s=t(6340),f=t(9781),p=t(2423).fastKey,d=t(9909),h=d.set,g=d.getterFor;e.exports={getConstructor:function(e,n,t,u){var s=e((function(e,r){l(e,d),h(e,{type:n,index:o(null),first:void 0,last:void 0,size:0}),f||(e.size=0),null!=r&&c(r,e[u],{that:e,AS_ENTRIES:t})})),d=s.prototype,v=g(n),A=function(e,n,t){var r,o,i=v(e),a=b(e,n);return a?a.value=t:(i.last=a={index:o=p(n,!0),key:n,value:t,previous:r=i.last,next:void 0,removed:!1},i.first||(i.first=a),r&&(r.next=a),f?i.size++:e.size++,"F"!==o&&(i.index[o]=a)),e},b=function(e,n){var t,r=v(e),o=p(n);if("F"!==o)return r.index[o];for(t=r.first;t;t=t.next)if(t.key==n)return t};return i(d,{clear:function(){for(var e=v(this),n=e.index,t=e.first;t;)t.removed=!0,t.previous&&(t.previous=t.previous.next=void 0),delete n[t.index],t=t.next;e.first=e.last=void 0,f?e.size=0:this.size=0},delete:function(e){var n=this,t=v(n),r=b(n,e);if(r){var o=r.next,i=r.previous;delete t.index[r.index],r.removed=!0,i&&(i.next=o),o&&(o.previous=i),t.first==r&&(t.first=o),t.last==r&&(t.last=i),f?t.size--:n.size--}return!!r},forEach:function(e){for(var n,t=v(this),r=a(e,arguments.length>1?arguments[1]:void 0);n=n?n.next:t.first;)for(r(n.value,n.key,this);n&&n.removed;)n=n.previous},has:function(e){return!!b(this,e)}}),i(d,t?{get:function(e){var n=b(this,e);return n&&n.value},set:function(e,n){return A(this,0===e?0:e,n)}}:{add:function(e){return A(this,e=0===e?0:e,e)}}),f&&r(d,"size",{get:function(){return v(this).size}}),s},setStrong:function(e,n,t){var r=n+" Iterator",o=g(n),i=g(r);u(e,n,(function(e,n){h(this,{type:r,target:e,state:o(e),kind:n,last:void 0})}),(function(){for(var e=i(this),n=e.kind,t=e.last;t&&t.removed;)t=t.previous;return e.target&&(e.last=t=t?t.next:e.state.first)?"keys"==n?{value:t.key,done:!1}:"values"==n?{value:t.value,done:!1}:{value:[t.key,t.value],done:!1}:(e.target=void 0,{value:void 0,done:!0})}),t?"entries":"values",!t,!0),s(n)}}},9320:(e,n,t)=>{"use strict";var r=t(1702),o=t(2248),i=t(2423).getWeakData,a=t(9670),l=t(111),c=t(5787),u=t(408),s=t(2092),f=t(2597),p=t(9909),d=p.set,h=p.getterFor,g=s.find,v=s.findIndex,A=r([].splice),b=0,m=function(e){return e.frozen||(e.frozen=new y)},y=function(){this.entries=[]},E=function(e,n){return g(e.entries,(function(e){return e[0]===n}))};y.prototype={get:function(e){var n=E(this,e);if(n)return n[1]},has:function(e){return!!E(this,e)},set:function(e,n){var t=E(this,e);t?t[1]=n:this.entries.push([e,n])},delete:function(e){var n=v(this.entries,(function(n){return n[0]===e}));return~n&&A(this.entries,n,1),!!~n}},e.exports={getConstructor:function(e,n,t,r){var s=e((function(e,o){c(e,p),d(e,{type:n,id:b++,frozen:void 0}),null!=o&&u(o,e[r],{that:e,AS_ENTRIES:t})})),p=s.prototype,g=h(n),v=function(e,n,t){var r=g(e),o=i(a(n),!0);return!0===o?m(r).set(n,t):o[r.id]=t,e};return o(p,{delete:function(e){var n=g(this);if(!l(e))return!1;var t=i(e);return!0===t?m(n).delete(e):t&&f(t,n.id)&&delete t[n.id]},has:function(e){var n=g(this);if(!l(e))return!1;var t=i(e);return!0===t?m(n).has(e):t&&f(t,n.id)}}),o(p,t?{get:function(e){var n=g(this);if(l(e)){var t=i(e);return!0===t?m(n).get(e):t?t[n.id]:void 0}},set:function(e,n){return v(this,e,n)}}:{add:function(e){return v(this,e,!0)}}),s}}},7710:(e,n,t)=>{"use strict";var r=t(2109),o=t(7854),i=t(1702),a=t(4705),l=t(1320),c=t(2423),u=t(408),s=t(5787),f=t(614),p=t(111),d=t(7293),h=t(7072),g=t(8003),v=t(9587);e.exports=function(e,n,t){var A=-1!==e.indexOf("Map"),b=-1!==e.indexOf("Weak"),m=A?"set":"add",y=o[e],E=y&&y.prototype,_=y,C={},w=function(e){var n=i(E[e]);l(E,e,"add"==e?function(e){return n(this,0===e?0:e),this}:"delete"==e?function(e){return!(b&&!p(e))&&n(this,0===e?0:e)}:"get"==e?function(e){return b&&!p(e)?void 0:n(this,0===e?0:e)}:"has"==e?function(e){return!(b&&!p(e))&&n(this,0===e?0:e)}:function(e,t){return n(this,0===e?0:e,t),this})};if(a(e,!f(y)||!(b||E.forEach&&!d((function(){(new y).entries().next()})))))_=t.getConstructor(n,e,A,m),c.enable();else if(a(e,!0)){var x=new _,k=x[m](b?{}:-0,1)!=x,S=d((function(){x.has(1)})),O=h((function(e){new y(e)})),B=!b&&d((function(){for(var e=new y,n=5;n--;)e[m](n,n);return!e.has(-0)}));O||((_=n((function(e,n){s(e,E);var t=v(new y,e,_);return null!=n&&u(n,t[m],{that:t,AS_ENTRIES:A}),t}))).prototype=E,E.constructor=_),(S||B)&&(w("delete"),w("has"),A&&w("get")),(B||k)&&w(m),b&&E.clear&&delete E.clear}return C[e]=_,r({global:!0,forced:_!=y},C),g(_,e),b||t.setStrong(_,e,A),_}},9920:(e,n,t)=>{var r=t(2597),o=t(3887),i=t(1236),a=t(3070);e.exports=function(e,n){for(var t=o(n),l=a.f,c=i.f,u=0;u{var r=t(5112)("match");e.exports=function(e){var n=/./;try{"/./"[e](n)}catch(t){try{return n[r]=!1,"/./"[e](n)}catch(e){}}return!1}},8544:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}))},4230:(e,n,t)=>{var r=t(1702),o=t(4488),i=t(1340),a=/"/g,l=r("".replace);e.exports=function(e,n,t,r){var c=i(o(e)),u="<"+n;return""!==t&&(u+=" "+t+'="'+l(i(r),a,""")+'"'),u+">"+c+""}},4994:(e,n,t)=>{"use strict";var r=t(3383).IteratorPrototype,o=t(30),i=t(9114),a=t(8003),l=t(7497),c=function(){return this};e.exports=function(e,n,t){var u=n+" Iterator";return e.prototype=o(r,{next:i(1,t)}),a(e,u,!1,!0),l[u]=c,e}},8880:(e,n,t)=>{var r=t(9781),o=t(3070),i=t(9114);e.exports=r?function(e,n,t){return o.f(e,n,i(1,t))}:function(e,n,t){return e[n]=t,e}},9114:e=>{e.exports=function(e,n){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:n}}},6135:(e,n,t)=>{"use strict";var r=t(4948),o=t(3070),i=t(9114);e.exports=function(e,n,t){var a=r(n);a in e?o.f(e,a,i(0,t)):e[a]=t}},8709:(e,n,t)=>{"use strict";var r=t(7854),o=t(9670),i=t(2140),a=r.TypeError;e.exports=function(e){if(o(this),"string"===e||"default"===e)e="string";else if("number"!==e)throw a("Incorrect hint");return i(this,e)}},654:(e,n,t)=>{"use strict";var r=t(2109),o=t(6916),i=t(1913),a=t(6530),l=t(614),c=t(4994),u=t(9518),s=t(7674),f=t(8003),p=t(8880),d=t(1320),h=t(5112),g=t(7497),v=t(3383),A=a.PROPER,b=a.CONFIGURABLE,m=v.IteratorPrototype,y=v.BUGGY_SAFARI_ITERATORS,E=h("iterator"),_="keys",C="values",w="entries",x=function(){return this};e.exports=function(e,n,t,a,h,v,k){c(t,n,a);var S,O,B,I=function(e){if(e===h&&R)return R;if(!y&&e in j)return j[e];switch(e){case _:case C:case w:return function(){return new t(this,e)}}return function(){return new t(this)}},T=n+" Iterator",P=!1,j=e.prototype,z=j[E]||j["@@iterator"]||h&&j[h],R=!y&&z||I(h),M="Array"==n&&j.entries||z;if(M&&(S=u(M.call(new e)))!==Object.prototype&&S.next&&(i||u(S)===m||(s?s(S,m):l(S[E])||d(S,E,x)),f(S,T,!0,!0),i&&(g[T]=x)),A&&h==C&&z&&z.name!==C&&(!i&&b?p(j,"name",C):(P=!0,R=function(){return o(z,this)})),h)if(O={values:I(C),keys:v?R:I(_),entries:I(w)},k)for(B in O)(y||P||!(B in j))&&d(j,B,O[B]);else r({target:n,proto:!0,forced:y||P},O);return i&&!k||j[E]===R||d(j,E,R,{name:h}),g[n]=R,O}},7235:(e,n,t)=>{var r=t(857),o=t(2597),i=t(6061),a=t(3070).f;e.exports=function(e){var n=r.Symbol||(r.Symbol={});o(n,e)||a(n,e,{value:i.f(e)})}},9781:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},317:(e,n,t)=>{var r=t(7854),o=t(111),i=r.document,a=o(i)&&o(i.createElement);e.exports=function(e){return a?i.createElement(e):{}}},8324:e=>{e.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},8509:(e,n,t)=>{var r=t(317)("span").classList,o=r&&r.constructor&&r.constructor.prototype;e.exports=o===Object.prototype?void 0:o},8886:(e,n,t)=>{var r=t(8113).match(/firefox\/(\d+)/i);e.exports=!!r&&+r[1]},256:(e,n,t)=>{var r=t(8113);e.exports=/MSIE|Trident/.test(r)},5268:(e,n,t)=>{var r=t(4326),o=t(7854);e.exports="process"==r(o.process)},8113:(e,n,t)=>{var r=t(5005);e.exports=r("navigator","userAgent")||""},7392:(e,n,t)=>{var r,o,i=t(7854),a=t(8113),l=i.process,c=i.Deno,u=l&&l.versions||c&&c.version,s=u&&u.v8;s&&(o=(r=s.split("."))[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=+r[1]),e.exports=o},8008:(e,n,t)=>{var r=t(8113).match(/AppleWebKit\/(\d+)\./);e.exports=!!r&&+r[1]},748:e=>{e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},2109:(e,n,t)=>{var r=t(7854),o=t(1236).f,i=t(8880),a=t(1320),l=t(3505),c=t(9920),u=t(4705);e.exports=function(e,n){var t,s,f,p,d,h=e.target,g=e.global,v=e.stat;if(t=g?r:v?r[h]||l(h,{}):(r[h]||{}).prototype)for(s in n){if(p=n[s],f=e.noTargetGet?(d=o(t,s))&&d.value:t[s],!u(g?s:h+(v?".":"#")+s,e.forced)&&void 0!==f){if(typeof p==typeof f)continue;c(p,f)}(e.sham||f&&f.sham)&&i(p,"sham",!0),a(t,s,p,e)}}},7293:e=>{e.exports=function(e){try{return!!e()}catch(e){return!0}}},7007:(e,n,t)=>{"use strict";t(4916);var r=t(1702),o=t(1320),i=t(2261),a=t(7293),l=t(5112),c=t(8880),u=l("species"),s=RegExp.prototype;e.exports=function(e,n,t,f){var p=l(e),d=!a((function(){var n={};return n[p]=function(){return 7},7!=""[e](n)})),h=d&&!a((function(){var n=!1,t=/a/;return"split"===e&&((t={}).constructor={},t.constructor[u]=function(){return t},t.flags="",t[p]=/./[p]),t.exec=function(){return n=!0,null},t[p](""),!n}));if(!d||!h||t){var g=r(/./[p]),v=n(p,""[e],(function(e,n,t,o,a){var l=r(e),c=n.exec;return c===i||c===s.exec?d&&!a?{done:!0,value:g(n,t,o)}:{done:!0,value:l(t,n,o)}:{done:!1}}));o(String.prototype,e,v[0]),o(s,p,v[1])}f&&c(s[p],"sham",!0)}},6677:(e,n,t)=>{var r=t(7293);e.exports=!r((function(){return Object.isExtensible(Object.preventExtensions({}))}))},2104:e=>{var n=Function.prototype,t=n.apply,r=n.bind,o=n.call;e.exports="object"==typeof Reflect&&Reflect.apply||(r?o.bind(t):function(){return o.apply(t,arguments)})},9974:(e,n,t)=>{var r=t(1702),o=t(9662),i=r(r.bind);e.exports=function(e,n){return o(e),void 0===n?e:i?i(e,n):function(){return e.apply(n,arguments)}}},7065:(e,n,t)=>{"use strict";var r=t(7854),o=t(1702),i=t(9662),a=t(111),l=t(2597),c=t(206),u=r.Function,s=o([].concat),f=o([].join),p={},d=function(e,n,t){if(!l(p,n)){for(var r=[],o=0;o{var n=Function.prototype.call;e.exports=n.bind?n.bind(n):function(){return n.apply(n,arguments)}},6530:(e,n,t)=>{var r=t(9781),o=t(2597),i=Function.prototype,a=r&&Object.getOwnPropertyDescriptor,l=o(i,"name"),c=l&&"something"===function(){}.name,u=l&&(!r||r&&a(i,"name").configurable);e.exports={EXISTS:l,PROPER:c,CONFIGURABLE:u}},1702:e=>{var n=Function.prototype,t=n.bind,r=n.call,o=t&&t.bind(r);e.exports=t?function(e){return e&&o(r,e)}:function(e){return e&&function(){return r.apply(e,arguments)}}},5005:(e,n,t)=>{var r=t(7854),o=t(614),i=function(e){return o(e)?e:void 0};e.exports=function(e,n){return arguments.length<2?i(r[e]):r[e]&&r[e][n]}},1246:(e,n,t)=>{var r=t(648),o=t(8173),i=t(7497),a=t(5112)("iterator");e.exports=function(e){if(null!=e)return o(e,a)||o(e,"@@iterator")||i[r(e)]}},8554:(e,n,t)=>{var r=t(7854),o=t(6916),i=t(9662),a=t(9670),l=t(6330),c=t(1246),u=r.TypeError;e.exports=function(e,n){var t=arguments.length<2?c(e):n;if(i(t))return a(o(t,e));throw u(l(e)+" is not iterable")}},8173:(e,n,t)=>{var r=t(9662);e.exports=function(e,n){var t=e[n];return null==t?void 0:r(t)}},647:(e,n,t)=>{var r=t(1702),o=t(7908),i=Math.floor,a=r("".charAt),l=r("".replace),c=r("".slice),u=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,s=/\$([$&'`]|\d{1,2})/g;e.exports=function(e,n,t,r,f,p){var d=t+e.length,h=r.length,g=s;return void 0!==f&&(f=o(f),g=u),l(p,g,(function(o,l){var u;switch(a(l,0)){case"$":return"$";case"&":return e;case"`":return c(n,0,t);case"'":return c(n,d);case"<":u=f[c(l,1,-1)];break;default:var s=+l;if(0===s)return o;if(s>h){var p=i(s/10);return 0===p?o:p<=h?void 0===r[p-1]?a(l,1):r[p-1]+a(l,1):o}u=r[s-1]}return void 0===u?"":u}))}},7854:(e,n,t)=>{var r=function(e){return e&&e.Math==Math&&e};e.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof t.g&&t.g)||function(){return this}()||Function("return this")()},2597:(e,n,t)=>{var r=t(1702),o=t(7908),i=r({}.hasOwnProperty);e.exports=Object.hasOwn||function(e,n){return i(o(e),n)}},3501:e=>{e.exports={}},490:(e,n,t)=>{var r=t(5005);e.exports=r("document","documentElement")},4664:(e,n,t)=>{var r=t(9781),o=t(7293),i=t(317);e.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},8361:(e,n,t)=>{var r=t(7854),o=t(1702),i=t(7293),a=t(4326),l=r.Object,c=o("".split);e.exports=i((function(){return!l("z").propertyIsEnumerable(0)}))?function(e){return"String"==a(e)?c(e,""):l(e)}:l},9587:(e,n,t)=>{var r=t(614),o=t(111),i=t(7674);e.exports=function(e,n,t){var a,l;return i&&r(a=n.constructor)&&a!==t&&o(l=a.prototype)&&l!==t.prototype&&i(e,l),e}},2788:(e,n,t)=>{var r=t(1702),o=t(614),i=t(5465),a=r(Function.toString);o(i.inspectSource)||(i.inspectSource=function(e){return a(e)}),e.exports=i.inspectSource},2423:(e,n,t)=>{var r=t(2109),o=t(1702),i=t(3501),a=t(111),l=t(2597),c=t(3070).f,u=t(8006),s=t(1156),f=t(2050),p=t(9711),d=t(6677),h=!1,g=p("meta"),v=0,A=function(e){c(e,g,{value:{objectID:"O"+v++,weakData:{}}})},b=e.exports={enable:function(){b.enable=function(){},h=!0;var e=u.f,n=o([].splice),t={};t[g]=1,e(t).length&&(u.f=function(t){for(var r=e(t),o=0,i=r.length;o{var r,o,i,a=t(8536),l=t(7854),c=t(1702),u=t(111),s=t(8880),f=t(2597),p=t(5465),d=t(6200),h=t(3501),g="Object already initialized",v=l.TypeError,A=l.WeakMap;if(a||p.state){var b=p.state||(p.state=new A),m=c(b.get),y=c(b.has),E=c(b.set);r=function(e,n){if(y(b,e))throw new v(g);return n.facade=e,E(b,e,n),n},o=function(e){return m(b,e)||{}},i=function(e){return y(b,e)}}else{var _=d("state");h[_]=!0,r=function(e,n){if(f(e,_))throw new v(g);return n.facade=e,s(e,_,n),n},o=function(e){return f(e,_)?e[_]:{}},i=function(e){return f(e,_)}}e.exports={set:r,get:o,has:i,enforce:function(e){return i(e)?o(e):r(e,{})},getterFor:function(e){return function(n){var t;if(!u(n)||(t=o(n)).type!==e)throw v("Incompatible receiver, "+e+" required");return t}}}},7659:(e,n,t)=>{var r=t(5112),o=t(7497),i=r("iterator"),a=Array.prototype;e.exports=function(e){return void 0!==e&&(o.Array===e||a[i]===e)}},3157:(e,n,t)=>{var r=t(4326);e.exports=Array.isArray||function(e){return"Array"==r(e)}},614:e=>{e.exports=function(e){return"function"==typeof e}},4411:(e,n,t)=>{var r=t(1702),o=t(7293),i=t(614),a=t(648),l=t(5005),c=t(2788),u=function(){},s=[],f=l("Reflect","construct"),p=/^\s*(?:class|function)\b/,d=r(p.exec),h=!p.exec(u),g=function(e){if(!i(e))return!1;try{return f(u,s,e),!0}catch(e){return!1}};e.exports=!f||o((function(){var e;return g(g.call)||!g(Object)||!g((function(){e=!0}))||e}))?function(e){if(!i(e))return!1;switch(a(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}return h||!!d(p,c(e))}:g},4705:(e,n,t)=>{var r=t(7293),o=t(614),i=/#|\.prototype\./,a=function(e,n){var t=c[l(e)];return t==s||t!=u&&(o(n)?r(n):!!n)},l=a.normalize=function(e){return String(e).replace(i,".").toLowerCase()},c=a.data={},u=a.NATIVE="N",s=a.POLYFILL="P";e.exports=a},111:(e,n,t)=>{var r=t(614);e.exports=function(e){return"object"==typeof e?null!==e:r(e)}},1913:e=>{e.exports=!1},7850:(e,n,t)=>{var r=t(111),o=t(4326),i=t(5112)("match");e.exports=function(e){var n;return r(e)&&(void 0!==(n=e[i])?!!n:"RegExp"==o(e))}},2190:(e,n,t)=>{var r=t(7854),o=t(5005),i=t(614),a=t(7976),l=t(3307),c=r.Object;e.exports=l?function(e){return"symbol"==typeof e}:function(e){var n=o("Symbol");return i(n)&&a(n.prototype,c(e))}},408:(e,n,t)=>{var r=t(7854),o=t(9974),i=t(6916),a=t(9670),l=t(6330),c=t(7659),u=t(6244),s=t(7976),f=t(8554),p=t(1246),d=t(9212),h=r.TypeError,g=function(e,n){this.stopped=e,this.result=n},v=g.prototype;e.exports=function(e,n,t){var r,A,b,m,y,E,_,C=t&&t.that,w=!(!t||!t.AS_ENTRIES),x=!(!t||!t.IS_ITERATOR),k=!(!t||!t.INTERRUPTED),S=o(n,C),O=function(e){return r&&d(r,"normal",e),new g(!0,e)},B=function(e){return w?(a(e),k?S(e[0],e[1],O):S(e[0],e[1])):k?S(e,O):S(e)};if(x)r=e;else{if(!(A=p(e)))throw h(l(e)+" is not iterable");if(c(A)){for(b=0,m=u(e);m>b;b++)if((y=B(e[b]))&&s(v,y))return y;return new g(!1)}r=f(e,A)}for(E=r.next;!(_=i(E,r)).done;){try{y=B(_.value)}catch(e){d(r,"throw",e)}if("object"==typeof y&&y&&s(v,y))return y}return new g(!1)}},9212:(e,n,t)=>{var r=t(6916),o=t(9670),i=t(8173);e.exports=function(e,n,t){var a,l;o(e);try{if(!(a=i(e,"return"))){if("throw"===n)throw t;return t}a=r(a,e)}catch(e){l=!0,a=e}if("throw"===n)throw t;if(l)throw a;return o(a),t}},3383:(e,n,t)=>{"use strict";var r,o,i,a=t(7293),l=t(614),c=t(30),u=t(9518),s=t(1320),f=t(5112),p=t(1913),d=f("iterator"),h=!1;[].keys&&("next"in(i=[].keys())?(o=u(u(i)))!==Object.prototype&&(r=o):h=!0),null==r||a((function(){var e={};return r[d].call(e)!==e}))?r={}:p&&(r=c(r)),l(r[d])||s(r,d,(function(){return this})),e.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:h}},7497:e=>{e.exports={}},6244:(e,n,t)=>{var r=t(7466);e.exports=function(e){return r(e.length)}},133:(e,n,t)=>{var r=t(7392),o=t(7293);e.exports=!!Object.getOwnPropertySymbols&&!o((function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},8536:(e,n,t)=>{var r=t(7854),o=t(614),i=t(2788),a=r.WeakMap;e.exports=o(a)&&/native code/.test(i(a))},3929:(e,n,t)=>{var r=t(7854),o=t(7850),i=r.TypeError;e.exports=function(e){if(o(e))throw i("The method doesn't accept regular expressions");return e}},1574:(e,n,t)=>{"use strict";var r=t(9781),o=t(1702),i=t(6916),a=t(7293),l=t(1956),c=t(5181),u=t(5296),s=t(7908),f=t(8361),p=Object.assign,d=Object.defineProperty,h=o([].concat);e.exports=!p||a((function(){if(r&&1!==p({b:1},p(d({},"a",{enumerable:!0,get:function(){d(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},n={},t=Symbol(),o="abcdefghijklmnopqrst";return e[t]=7,o.split("").forEach((function(e){n[e]=e})),7!=p({},e)[t]||l(p({},n)).join("")!=o}))?function(e,n){for(var t=s(e),o=arguments.length,a=1,p=c.f,d=u.f;o>a;)for(var g,v=f(arguments[a++]),A=p?h(l(v),p(v)):l(v),b=A.length,m=0;b>m;)g=A[m++],r&&!i(d,v,g)||(t[g]=v[g]);return t}:p},30:(e,n,t)=>{var r,o=t(9670),i=t(6048),a=t(748),l=t(3501),c=t(490),u=t(317),s=t(6200),f=s("IE_PROTO"),p=function(){},d=function(e){return" + About This Document | Hikage + + + + + +

About This Document

This document is powered by VuePressopen in new window.

License

Apache-2.0open in new window

Apache License Version 2.0
+
+Copyright (C) 2019 HighCapable
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    https://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+

Copyright © 2019 HighCapable

+ + + diff --git a/en/about/changelog.html b/en/about/changelog.html new file mode 100644 index 0000000..1ee59f4 --- /dev/null +++ b/en/about/changelog.html @@ -0,0 +1,34 @@ + + + + + + + + + Changelog | Hikage + + + + + +

Changelog

The version update history of Hikage is recorded here.

Pay Attention

We will only maintain the latest dependencies. If you are using outdated dependencies, you voluntarily renounce any possibility of maintenance.

Notice

To avoid translation time consumption, Changelog will use Google Translation from Chinese to English, please refer to the original text for actual reference.

Time zone of version release date: UTC+8

hikage-core

1.0.1 | 2025.05.06  latest

  • Fixed the issue where the KSP source code was not successfully released
  • Added states management feature

1.0.0 | 2025.04.20  stale

  • The first version is submitted to Maven

hikage-compiler

1.0.0 | 2025.04.20  latest

  • The first version is submitted to Maven

hikage-extension

1.0.0 | 2025.04.20  latest

  • The first version is submitted to Maven

hikage-extension-betterandroid

1.0.0 | 2025.04.20  latest

  • The first version is submitted to Maven

hikage-extension-compose

1.0.0 | 2025.04.20  latest

  • The first version is submitted to Maven

hikage-widget-androidx

1.0.0 | 2025.04.20  latest

  • The first version is submitted to Maven

hikage-widget-material

1.0.0 | 2025.04.20  latest

  • The first version is submitted to Maven
+ + + diff --git a/en/about/contacts.html b/en/about/contacts.html new file mode 100644 index 0000000..e1e3436 --- /dev/null +++ b/en/about/contacts.html @@ -0,0 +1,34 @@ + + + + + + + + + Contact Us | Hikage + + + + + +

Contact Us

If you have any questions during usage, or have any constructive suggestions, you can contact us.

Join our developers group.

Find me on Twitter @fankesyooniopen in new window.

Help with Maintenance

Thank you for choosing and using Hikage.

If you have code-related suggestions and requests, you can submit a Pull Request on GitHub.

+ + + diff --git a/en/about/future.html b/en/about/future.html new file mode 100644 index 0000000..9dd511b --- /dev/null +++ b/en/about/future.html @@ -0,0 +1,80 @@ + + + + + + + + + Looking Toward the Future | Hikage + + + + + +

Looking Toward the Future

The future is bright and uncertain, let us look forward to the future development space of Hikage.

Future Plans

Features that Hikage may add later are included here.

Process AttributeSet

Hikage will support processing AttributeSet in the future to interface with the original XML properties to implement the takeover of some third-party components that are not open to customization of layout properties in the code.

Hikage currently supports automated creation of XmlBlock, but does not support the direct processing of customized AttributeSet. Because of its historical problems and high processing difficulty, it may be considered whether to continue to improve this function in later stages.

The following example

TextView(
+    id = "text_view",
+    // Attributes passed through AttributeSet.
+    attrs = {
+        namespace("android") {
+            set("text", "Hello, World!")
+            set("textSize", "16sp")
+            set("gravity", "center")
+        }
+    }
+) {
+    // Attributes passed through code.
+    text = "Hello, World!"
+    textSize = 16f
+    gravity = Gravity.CENTER
+}
+

Generate Components ID

Hikage may support the direct call function to generate component IDs customized with strings as required in the future.

The following example

object MyLayout : HikageBuilder {
+
+    override fun build() = Hikageable(context) {
+        LinearLayout(
+            id = "lin_layout",
+            lparams = LayoutParams(matchParent = true),
+            init = {
+                orientation = LinearLayout.VERTICAL
+                gravity = Gravity.CENTER
+            }
+        ) {
+            TextView(id = "text_view") {
+                text = "Hello, World!"
+                textSize = 16f
+                gravity = Gravity.CENTER
+            }
+        }
+    }
+}
+
+val context: Context
+// Create TypedHikage.
+val myLayout = MyLayout.asTyped().build().create(context)
+// Or, use lazy init.
+val myLayout by context.lazyTypedHikage(MyLayout)
+// Directly call the ID generated from the string.
+val linLayout = myLayout.linLayout
+val textView = myLayout.textView
+// Get the root layout, i.e. LinearLayout.
+val root = myLayout.root
+
+ + + diff --git a/en/config/r8-proguard.html b/en/config/r8-proguard.html new file mode 100644 index 0000000..714dd41 --- /dev/null +++ b/en/config/r8-proguard.html @@ -0,0 +1,36 @@ + + + + + + + + + R8 & Proguard Obfuscation | Hikage + + + + + +

R8 & Proguard Obfuscation

In most scenarios, app packages can be compressed through obfuscation. Here is an introduction to how to configure obfuscation rules.

Hikage does not require additional configuration of obfuscation rules, since View objects loaded by Hikage do not need to be defined in XML, they can be equally obfuscated.

You can force them to be obfuscated with your custom View, such as com.yourpackage.YourView, using the following rules.

-allowobfuscation class com.yourpackage.YourView
+

If you must prevent Hikage from being obfuscated or if something occurs after being obfuscated, you can use the following rules to prevent Hikage from being obfuscated.

-keep class com.highcapable.hikage**
+
+ + + diff --git a/en/guide/home.html b/en/guide/home.html new file mode 100644 index 0000000..36f321a --- /dev/null +++ b/en/guide/home.html @@ -0,0 +1,72 @@ + + + + + + + + + Introduction | Hikage + + + + + +

Introduction

Hikage (Pronunciation /ˈhɪkɑːɡeɪ/) is an Android responsive UI building tool.

Background

This is an Android responsive UI build tool designed to focus on real-time code-based UI building.

The project icon was designed by MaiTungTMopen in new window, the name is taken from the original song "Haruhikage" in "BanG Dream It's MyGO!!!!!".

Why...
LOGO

なんで春日影レイアウト使いの?

Unlike Jetpack Compose's declarative UI, Hikage focuses on Android native platforms, and its design goal is to enable developers to quickly build UIs and directly support Android native components.

Hikage is just a UI build tool and does not provide any UI components themselves.

Rejecting duplicate wheels, our solution is always compatible and efficient. Now you can abandon ViewBinding and XML, and even findViewById, and try using code layout directly.

Hikage works better with another project BetterAndroidopen in new window, and Hikage itself will automatically reference the BetterAndroid-related dependencies as the core content.

Usage

Hikage is mainly suitable for developers focusing on native Android platform development. Since Kotlin became the primary development language, there hasn't been a perfect tool to implement dynamic code layouts using DSL. Therefore, projects that do not use Jetpack Compose still need to use the original XML. Although ViewBinding provides support, it is still not very user-friendly.

Hikage inherits the design schemes of Ankoopen in new window and Splittiesopen in new window, and draws on the DSL function naming scheme of Jetpack Compose. On this basis, it has made many improvements, making it closer to native in terms of usage cost and closer to Jetpack Compose in terms of writing style.

Comparison of various DSL layout schemes

LinearLayout(
+    lparams = LayoutParams(matchParent = true) {
+        topMargin = 16.dp
+    },
+    init = {
+        orientation = LinearLayout.VERTICAL
+        gravity = Gravity.CENTER
+    }
+) {
+    TextView {
+        text = "Hello, World!"
+        textSize = 16f
+        gravity = Gravity.CENTER
+    }
+}
+
verticalLayout {
+    gravity = Gravity.CENTER
+    textView("Hello, World!") {
+        textSize = 16f
+        gravity = Gravity.CENTER
+    }
+}.lparams(
+    width = matchParent,
+    height = matchParent
+) {
+    topMargin = dip(16)
+}
+
Column(
+    modifier = Modifier.padding(top = 16.dp),
+    verticalArrangement = Arrangement.Center,
+    horizontalAlignment = Alignment.CenterHorizontally
+) {
+    Text(
+        text = "Hello, World!",
+        fontSize = 16.sp,
+        textAlign = TextAlign.Center
+    )
+}
+

The basic part of Hikage does not require any external or additional compilation plugins. It can be plug-and-play and create a View object anywhere that can be set to the parent layout and Window.

Hikage fully supports hybrid layouts. You can embed XML (using the R.layout scheme to load layouts), ViewBinding, and even Jetpack Compose within Hikage.

Language Requirement

It is recommended to use Kotlin as the preferred development language. This project is entirely written in Kotlin, and there are no plans to support Java compatibility.

All demo examples in the documentation will be described using Kotlin. If you are not familiar with Kotlin, you may encounter difficulties in using this project effectively.

Contribution

The maintenance of this project is inseparable from the support and contributions of all developers.

This project is currently in its early stages, and there may still be some problems or lack of functions you need.

If possible, feel free to submit a PR to contribute features you think are needed to this project, or go to GitHub Issuesopen in new window to make suggestions to us.

+ + + diff --git a/en/guide/quick-start.html b/en/guide/quick-start.html new file mode 100644 index 0000000..f9d8cd8 --- /dev/null +++ b/en/guide/quick-start.html @@ -0,0 +1,59 @@ + + + + + + + + + Quick Start | Hikage + + + + + +

Quick Start

Integrate Hikage into your project.

Project Requirements

The project needs to be created using Android Studio or IntelliJ IDEA and must be an Android or Kotlin Multiplatform project with integrated Kotlin environment dependencies.

  • Android Studio (It is recommended to get the latest version from hereopen in new window)

  • IntelliJ IDEA (It is recommended to get the latest version from hereopen in new window)

  • Kotlin 1.9.0+, Gradle 8+, Java 17+, Android Gradle Plugin 8+

Configure Repositories

The dependencies of Hikage are published in Maven Central and our public repository, you can use the following method to configure repositories.

We recommend using Kotlin DSL as the Gradle build script language and SweetDependencyopen in new window to manage dependencies.

Configure repositories in your project's SweetDependency configuration file.

repositories:
+  google:
+  maven-central:
+  # (Optional) You can add this URL to use our public repository
+  # When Sonatype-OSS fails and cannot publish dependencies, this repository is added as a backup
+  # For details, please visit: https://github.com/HighCapable/maven-repository
+  highcapable-maven-releases:
+    url: https://raw.githubusercontent.com/HighCapable/maven-repository/main/repository/releases
+

Traditional Method

Configure dependency in your project's build.gradle.kts.

repositories {
+    google()
+    mavenCentral()
+    // (Optional) You can add this URL to use our public repository
+    // When Sonatype-OSS fails and cannot publish dependencies, this repository is added as a backup
+    // For details, please visit: https://github.com/HighCapable/maven-repository
+    maven("https://raw.githubusercontent.com/HighCapable/maven-repository/main/repository/releases")
+}
+

Configure Java Version

Modify the Java version of Kotlin in your project's build.gradle.kts to 17 or above.

Kotlin DSL

android {
+    compileOptions {
+        sourceCompatibility = JavaVersion.VERSION_17
+        targetCompatibility = JavaVersion.VERSION_17
+    }
+    kotlinOptions {
+        jvmTarget = "17"
+    }
+}
+

Functional Overview

The project is divided into multiple modules. You can choose the module you wish to include as a dependency in your project, but be sure to include the hikage-core module.

Click the corresponding module below to view detailed feature descriptions.

Demo

You can find some samples hereopen in new window to view the corresponding demo project to better understand how these functions work and quickly select the functions you need.

+ + + diff --git a/en/index.html b/en/index.html new file mode 100644 index 0000000..b06b53d --- /dev/null +++ b/en/index.html @@ -0,0 +1,62 @@ + + + + + + + + + Home | Hikage + + + + + +
Hikage

Hikage

An Android responsive UI building tool

Get Started Changelog

Native Control

Using View as the foundation and Kotlin as the development language, 100% dynamic code layout, no additional configuration required, supports custom Views.

Fully Compatible

Supports embedding and mixing XML, ViewBinding, and Jetpack Compose, and provides support for Material components and Jetpack.

Quick to Start

Simple and easy to use right now! No complex configuration or extensive development experience needed. Just integrate dependencies and enjoy!

Layout, it's that flexible.

LinearLayout(
+    lparams = LayoutParams(matchParent = true),
+    init = {
+        orientation = LinearLayout.VERTICAL
+        gravity = Gravity.CENTER
+    }
+) {
+    TextView(id = "text_view") {
+        text = "Hello, World!"
+        textSize = 16f
+        gravity = Gravity.CENTER
+    }
+}
+
<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:orientation="vertical"
+    android:gravity="center">
+
+    <TextView
+        android:id="@+id/text_view"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="Hello, World!"
+        android:textSize="16sp"
+        android:gravity="center" />
+</LinearLayout>
+
+ + + diff --git a/en/library/hikage-compiler.html b/en/library/hikage-compiler.html new file mode 100644 index 0000000..a5a1cec --- /dev/null +++ b/en/library/hikage-compiler.html @@ -0,0 +1,112 @@ + + + + + + + + + hikage-compiler | Hikage + + + + + +

hikage-compiler

Maven CentralMaven metadata URLAndroid Min SDK

This is a Hikage automatic compilation module.

Configure Dependency

You can add this module to your project using the following method.

Notice

You need to integrate the Google KSPopen in new window plugin in your project that is suitable for the current Kotlin version of your project.

Add dependency in your project's SweetDependency configuration file.

plugins:
+  com.google.devtools.ksp:
+    version: +
+
+libraries:
+  com.highcapable.hikage:
+    hikage-compiler:
+      version: +
+

Configure dependency in your root project's build.gradle.kts.

plugins {
+    // ...
+    autowire(libs.plugins.com.google.devtools.ksp) apply false
+}
+

Configure dependency in your project's build.gradle.kts.

plugins {
+    // ...
+    autowire(libs.plugins.com.google.devtools.ksp)
+}
+
+dependencies {
+    // ...
+    ksp(com.highcapable.hikage.hikage.compiler)
+}
+

Version Catalog

Add dependency in your project's gradle/libs.versions.toml.

[versions]
+ksp = "<ksp-version>"
+hikage-compiler = "<version>"
+
+[plugins]
+ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
+
+[libraries]
+hikage-compiler = { module = "com.highcapable.hikage:hikage-compiler", version.ref = "hikage-compiler" }
+

Configure dependency in your root project's build.gradle.kts.

plugins {
+    // ...
+    alias(libs.plugins.ksp) apply false
+}
+

Configure dependency in your project's build.gradle.kts.

plugins {
+    // ...
+    alias(libs.plugins.ksp)
+}
+
+dependencies {
+    // ...
+    ksp(libs.hikage.compiler)
+}
+

Please change <version> to the version displayed at the top of this document, and change <ksp-version> to the KSP version corresponding to the Kotlin version currently used by your project.

Traditional Method

Configure dependency in your root project build.gradle.kts.

plugins {
+    // ...
+    id("com.google.devtools.ksp") version "<ksp-version>" apply false
+}
+

Configure dependency in your project's build.gradle.kts.

plugins {
+    // ...
+    id("com.google.devtools.ksp")
+}
+
+dependencies {
+    // ...
+    ksp("com.highcapable.hikage:hikage-compiler:<version>")
+}
+

Please change <version> to the version displayed at the top of this document, and change <ksp-version> to the KSP version corresponding to the Kotlin version currently used by your project.

Function Introduction

Hikage's compilation module will automatically generate code at runtime. After update, please re-run the assembleDebug or assembleRelease task to generate the latest code.

Generate Layout Components

Hikage can automatically generate the Hikageable function corresponding to the layout component for the specified layout component at compile time.

Custom View

You can add the HikageView annotation on your custom View to mark it as a Hikage layout component.

Parameter NameDescription
lparamsLayoutParams Class object, if your custom View is a subclass of ViewGroup, you can declare or leave it blank to use the default value
aliasThe alias of the layout component, that is, the function name to be generated, gets the name of the current Class by default
requireInitWhether to fill in the initialization method block of the layout, the default is the omitted parameters
requirePerformerWhether to fill in the performer method block of the layout, the default is an omitted parameter, which only takes effect when your custom View is a subclass of ViewGroup

The following example

@HikageView(lparams = LinearLayout.LayoutParams::class)
+class MyLayout(context: Context, attrs: AttributeSet? = null) : LinearLayout(context, attrs) {
+    // ...
+}
+

Once compiled, you can use MyLayout as the layout component in the Hikage layout.

The following example

Hikageable {
+    MyLayout {
+        TextView(
+            lparams = LayoutParams {
+                topMargin = 16.dp
+            }
+        ) {
+            text = "Hello, World!"
+        }
+    }
+}
+

Third-party Components

Hikage can also automatically generate layout component functions for the View component provided by third parties, and you can use the HikageViewDeclaration annotation to complete it.

Parameter NameDescription
viewClass object of layout component that needs to be declared
lparamsLayoutParams Class object, if your custom View is a subclass of ViewGroup, you can declare or leave it blank to use the default value
aliasThe alias of the layout component, that is, the name of the function to be generated, obtains the name of the view Class by default
requireInitWhether to fill in the initialization method block of the layout, the default is the omitted parameters
requirePerformerWhether to fill in the performer method block of the layout, the default is an omitted parameter, which only takes effect when your custom View is a subclass of ViewGroup

The following example

@HikageViewDeclaration(ThirdPartyView::class)
+object ThirdPartyViewDeclaration
+

This annotation can be declared on any object class and is only used as a class that needs to be automatically included by the annotation scanner. You can set visibility to private, but make sure that the annotated class must be modified with object.

Similarly, after compilation, you can use ThirdPartyView as the layout component in the Hikage layout.

The following example

Hikageable {
+    ThirdPartyView {
+        // ...
+    }
+}
+

Tips

Hikage The function package name path for generating layout components is com.highcapable.hikage.widget + the full package name of your View or third-party View component.

+ + + diff --git a/en/library/hikage-core.html b/en/library/hikage-core.html new file mode 100644 index 0000000..6fbb6d8 --- /dev/null +++ b/en/library/hikage-core.html @@ -0,0 +1,318 @@ + + + + + + + + + hikage-core | Hikage + + + + + +

hikage-core

Maven CentralMaven metadata URLAndroid Min SDK

This is the core dependency of Hikage, and you need to introduce this module to use the basic features of Hikage.

Configure Dependency

You can add this module to your project using the following method.

Add dependency in your project's SweetDependency configuration file.

libraries:
+  com.highcapable.hikage:
+    hikage-core:
+      version: +
+

Configure dependency in your project's build.gradle.kts.

implementation(com.highcapable.hikage.hikage.core)
+

Version Catalog

Add dependency in your project's gradle/libs.versions.toml.

[versions]
+hikage-core = "<version>"
+
+[libraries]
+hikage-core = { module = "com.highcapable.hikage:hikage-core", version.ref = "hikage-core" }
+

Configure dependency in your project's build.gradle.kts.

implementation(libs.hikage.core)
+

Please change <version> to the version displayed at the top of this document.

Traditional Method

Configure dependency in your project's build.gradle.kts.

implementation("com.highcapable.hikage:hikage-core:<version>")
+

Please change <version> to the version displayed at the top of this document.

Function Introduction

You can view the KDoc click hereopen in new window.

Basic Usage

Use the code below to create your first Hikage layout.

First, use Hikageable to create a Hikage.Delegate object.

The following example

val myLayout = Hikageable {
+    LinearLayout {
+        TextView {
+            text = "Hello, World!"
+        }
+    }
+}
+

Then, set it to the parent or root layout you want to display.

The following example

// Assume that's your Activity.
+val activity: Activity
+// Instantiate the Hikage object.
+val hikage = myLayout.create(activity)
+// Get the root layout.
+val root = hikage.root
+// Content view set to Activity.
+activity.setContentView(root)
+

In this way, we can complete a simple layout creation and configuration.

Layout Agreement

The basic layout elements of Hikage are based on the Android native View component.

All layout elements can be created directly using the Android native View component.

The creation process of all layouts will be limited to the specified scope Hikage.Performer, which is called the "player" of the layout, that is, the role object that plays the layout.

This object can be created and maintained in the following ways.

Hikageable

As shown in Basic Usage, Hikageable can directly create a Hikage.Delegate or Hikage object.

In DSL, you can get the Hikage.Performer object to create the layout content.

The first solution is created anywhere.

The following example

// myLayout is a Hikage.Delegate object.
+val myLayout = Hikageable {
+    // ...
+}
+// Assume that's your Context.
+val context: Context
+// Instantiate the Hikage object where the Context is needed.
+val hikage = myLayout.create(context)
+

The second solution is created directly where Context exists.

The following example

// Assume that's your Context.
+val context: Context
+// Create a layout, myLayout is a Hikage object.
+val myLayout = Hikageable(context) {
+    // ...
+}
+

HikageBuilder

In addition to the above methods, you can also maintain a HikageBuilder object to pre-create the layout.

First, we need to create a HikageBuilder object and define it as a singleton.

The following example

object MyLayout : HikageBuilder {
+
+    override fun build() = Hikageable {
+        // ...
+    }
+}
+

Then, use it where needed, there are two options as follows.

The first solution is to create a Hikage.Delegate object directly using build.

The following example

// myLayout is a Hikage.Delegate object.
+val myLayout = MyLayout.build()
+// Assume that's your Context.
+val context: Context
+// Instantiate the Hikage object where the Context is needed.
+val hikage = myLayout.create(context)
+

The second solution is to create the Hikage delegate object using Context.lazyHikage.

For example, we can use it like ViewBinding in Activity.

The following example

class MyActivity: AppCompatActivity() {
+
+    private val myLayout by lazyHikage(MyLayout)
+
+    override fun onCreate(savedInstanceState: Bundle?) {
+        super.onCreate(savedInstanceState)
+        // Get the root layout.
+        val root = myLayout.root
+        // Content view set to Activity.
+        setContentView(root)
+    }
+}
+

Basic Layout Components

Hikage uses a functional component creation scheme consistent with Jetpack Compose.

Its layout is done using two basic components, the View and ViewGroup functions. They correspond to Android native components based on View and ViewGroup, respectively.

View

The basic parameters of the View function are the following three, and the View object type created using generic definitions.

If the generic type is not declared, the default is to use android.view.View as the object type created.

Parameter NameDescription
lparamsLayout parameter, i.e. ViewGroup.LayoutParams, created using LayoutParams
idUsed to find the ID of the created object, defined using a string
initThe initialization method body of View, passed as the last DSL parameter

The following example

View<TextView>(
+    lparams = LayoutParams(),
+    id = "my_text_view"
+) {
+    text = "Hello, World!"
+    textSize = 16f
+    gravity = Gravity.CENTER
+}
+

ViewGroup

The basic parameters of the ViewGroup function are four, and compared with the View function, there is one more performer parameter.

It must declare a generic type because ViewGroup is an abstract class and requires a concrete implementation class.

ViewGroup provides an additional generic parameter based on ViewGroup.LayoutParams to provide layout parameters for sub-layouts.

ViewGroup.LayoutParams is used by default when not declared.

Parameter NameDescription
lparamsLayout parameter, i.e. ViewGroup.LayoutParams, created using LayoutParams
idUsed to find the ID of the created object, defined using a string
initThe initialization method body of ViewGroup, passed in as DSL parameter
performerHikage.Performer object, passed as the last DSL parameter

The function of the performer parameter is to pass a new Hikage.Performer object downward as the creator of the sub-layout.

The following example

ViewGroup<LinearLayout, LinearLayout.LayoutParams>(
+    lparams = LayoutParams(),
+    id = "my_linear_layout",
+    // Initialization method body will be reflected here using `init`.
+    init = {
+        orientation = LinearLayout.VERTICAL
+        gravity = Gravity.CENTER
+    }
+) {
+    // You can continue to create sub-layouts here.
+    View()
+}
+

LayoutParams

Layouts in Hikage can be set using the LayoutParams function, you can create it using the following parameters.

Parameter NameDescription
widthManually specify layout width
heightManually specify layout height
matchParentWhether to use MATCH_PARENT as layout width and height
wrapContentWhether to use WRAP_CONTENT as layout width and height
widthMatchParentSet width to MATCH_PARENT only
heightMatchParentSet the height to MATCH_PARENT only
bodyThe initialization method body of the layout parameter, passed into as the last DSL parameter

When you do not set the LayoutParams object or specify width and height, Hikage will automatically use WRAP_CONTENT as layout parameters.

The type of the body method body comes from the second generic parameter provided by the upper layer ViewGroup.

The following example

View(
+    // Assume that the layout parameter type provided by the upper layer is LinearLayout.LayoutParams.
+    lparams = LayoutParams(width = 100.dp) {
+        topMargin = 20.dp
+    }
+)
+

If you only need a horizontally filled layout, you can use widthMatchParent = true directly.

The following example

View(
+    lparams = LayoutParams(widthMatchParent = true)
+)
+

Layout

Hikage supports references to third-party layouts, you can pass in XML layout resource IDs, other Hikage objects, and View objects, and even ViewBinding.

The following example

ViewGroup<...> {
+    // Quote XML layout resource ID.
+    Layout(R.layout.my_layout)
+    // Quote ViewBinding.
+    Layout<MyLayoutBinding>()
+    // Reference another Hikage or Hikage.Delegate object.
+    Layout(myLayout)
+}
+

Positioning Layout Components

Hikage supports locating components using id. In the example above, we used the id parameter to set the component's ID.

After setting the ID, you can use the Hikage.get method to get them.

The following example

val myLayout = Hikageable {
+    View<TextView>(id = "my_text_view") {
+        text = "Hello, World!"
+    }
+}
+// Assume that's your Context.
+val context: Context
+// Instantiate the Hikage object where the Context is needed.
+val hikage = myLayout.create(context)
+// Get the specified component and return the View type.
+val textView = hikage["my_text_view"]
+// Get the specified component and declare the component type.
+val textView = hikage.get<TextView>("my_text_view")
+// If you are not sure whether the ID exists, you can use the `getOrNull` method.
+val textView = hikage.getOrNull<TextView>("my_text_view")
+

Custom Layout Components

Hikage provides functions corresponding to component class names for Android basic layout components.

You can directly use these functions to create components without using generics to declare them. If you need components provided by Jetpack or Material, the hikage-widget-androidx or hikage-widget-material modules can be introduced.

The following example

LinearLayout(
+    lparams = LayoutParams(),
+    id = "my_linear_layout",
+    init = {
+        orientation = LinearLayout.VERTICAL
+        gravity = Gravity.CENTER
+    }
+) {
+    TextView(
+        lparams = LayoutParams(),
+        id = "my_text_view"
+    ) {
+        text = "Hello, World!"
+        textSize = 16f
+        gravity = Gravity.CENTER
+    }
+}
+

The initialized View or ViewGroup objects return instances of their own object type, which you can use in the following layout.

The following example

val textView = TextView {
+    text = "Hello, World!"
+    textSize = 16f
+    gravity = Gravity.CENTER
+}
+Button {
+    text = "Click Me!"
+    setOnClickListener {
+        // Use the textView object directly.
+        textView.text = "Clicked!"
+    }
+}
+

If the provided components do not meet your needs, you can create your own components manually.

The following example

// Suppose you have defined your custom components.
+class MyCustomView(context: Context, attrs: AttributeSet? = null) : View(context, attrs) {
+    // ...
+}
+
+// Below, create the function corresponding to the component.
+// Custom components must declare this annotation.
+// Declaring the annotation of the component is contagious,
+// and this annotation is required in every scope used to build the layout.
+@Hikageable
+// The naming of functions can be done at will, but it is recommended to use a big camel name.
+// The signature part of the function needs to be fixedly
+// declared as `inline fun <reified LP : ViewGroup.LayoutParams> Hikage.Performer<LP>`.
+inline fun <reified LP : ViewGroup.LayoutParams> Hikage.Performer<LP>.MyCustomView(
+    lparams: Hikage.LayoutParams? = null,
+    id: String? = null,
+    init: HikageView<MyCustomView> = {},
+    // If this component is a container, you can declare a `performer` parameter.
+    // performer: HikagePerformer<LP> = {}
+) = View<MyCustomView>(lparams, id, init)
+

It would seem tedious to implement such complex functions manually every time. If you want to be able to automatically generate component functions, you can introduce and refer to the hikage-compiler module.

Combination and Disassembly Layout

When building a UI, we usually use reusable layouts as components.

If you don't want each part to be customized separately using a native custom View, you can split the layout logic parts directly.

Hikage supports splitting layouts into multiple parts and combining them, you can use the Hikageable function anywhere to create a new Hikage.Delegate object.

The following example

// Assume this is your main layout.
+val mainLayout = Hikageable {
+    LinearLayout(
+        lparams = LayoutParams(matchParent = true),
+        init = {
+            orientation = LinearLayout.VERTICAL
+        }
+    ) {
+        TextView {
+            text = "Hello, World!"
+        }
+        // Combination sublayout.
+        Layout(subLayout)
+    }
+}
+// Assume this is your layout submodule.
+// Since the upper layout uses LinearLayout,
+// you can declare LinearLayout.LayoutParams for the sublayout.
+val subLayout = Hikageable<LinearLayout.LayoutParams> {
+    TextView(
+        lparams = LayoutParams {
+            topMargin = 16.dp
+        }
+    ) {
+        text = "Hello, Sub World!"
+    }
+}
+

State Management

Hikage has a similar state management workaround to Jetpack Compose, which makes it easy to set up state listening for layout components.

Hikage provides two states, NonNullState and NullableState, which are divided into two states: holding non-null and nullable.

Unlike the recompose of Jetpack Compose, Hikage will not be recomposed, and the states takes effect through listening and callbacks.

You can use both states in the following scenarios.

The following example

val myLayout = Hikageable {
+    // Declare a non-null variable state.
+    val mTextState = mutableStateOf("Hello, World!")
+    // Declare a nullable and variable state.
+    val mDrawState = mutableStateOfNull<Drawable>()
+    // You can delegate the state to a variable.
+    var mText by mTextState
+    var mDraw by mDrawState
+    LinearLayout(
+        lparams = LayoutParams(matchParent = true),
+        init = {
+            orientation = LinearLayout.VERTICAL
+        }
+    ) {
+        TextView {
+            textSize = 16f
+            gravity = Gravity.CENTER
+            // Set (binding) state to text.
+            setState(mTextState) {
+                text = it
+            }
+        }
+        ImageView {
+            // Set (binding) state to Drawable.
+            setState(mDrawState) {
+                setImageDrawable(it)
+            }
+        }
+        Button {
+            text = "Click Me!"
+            setOnClickListener {
+                // Modify the value of non-null state.
+                mText = "Hello, Hikage!"
+                // Modify the value of the nullable state.
+                mDraw = drawableResource(R.drawable.ic_my_drawable)
+            }
+        }
+    }
+}
+

In the example above, we declare a non-null state mTextState with "Hello, World!" with mutableStateOf Then continue to declare a nullable state mDrawState with null using mutableStateOfNull.

When clicking the button, we modify the value of mTextState to "Hello, Hikage!" and the value of mDrawState is the property resource R.drawable.ic_my_drawable. At this time, the text and images of TextView and ImageView will be automatically updated.

Custom Layout Factory

Hikage supports custom layout factories and is compatible with LayoutInflater.Factory2. You can customize events and listening during the Hikage layout inflating process in the following ways.

The following example

val factory = HikageFactory { parent, base, context, params ->
+    // You can customize the behavior of the layout factory here.
+    // For example, create a new View object in your own way.
+    // `parent` is the ViewGroup object to which the current component is to be added,
+    // and if not, it is `null`.
+    // `base` is the View object created for the previous HikageFactory, if not, it is `null`.
+    // `params` object contains the component ID, AttributeSet and Class objects of View.
+    val view = MyLayoutFactory.createView(context, params)
+    // You can also initialize and set the created View object here.
+    view.setBackgroundColor(Color.RED)
+    // Return the created View object.
+    // Return `null` will use the default component inflating method.
+    view
+}
+

You can also pass in the LayoutInflater object directly to automatically inflate and use the LayoutInflater.Factory2 in it.

The following example

// Assume that this is your LayoutInflater object.
+val layoutInflater: LayoutInflater
+// Create HikageFactory object through LayoutInflater.
+val factory = HikageFactory(layoutInflater)
+

Then set it to the Hikage layout you need to inflate.

The following example

// Assume that's your Context.
+val context: Context
+// Create Hikage object.
+val hikage = Hikageable(
+    context = context,
+    factory = {
+        // Add a custom HikageFactory object.
+        add(factory)
+        // Add directly.
+        add { parent, base, context, params ->
+            // ...
+            null
+        }
+        // Add multiple consecutively.
+        addAll(factories)
+    }
+) {
+    LinearLayout {
+        TextView {
+            text = "Hello, World!"
+        }
+    }
+}
+

Tips

Hikage will inflate the layout according to the LayoutInflater.Factory2 of the Context object, if you are using AppCompatActivity, Components in the layout will be automatically replaced with the corresponding Compat component or Material component, which is consistent with the characteristics of the XML layout.

If you do not need this feature to be effective by default, you can turn it off globally using the following method.

The following example

Hikage.isAutoProcessWithFactory2 = false
+

Preview Layout

Hikage supports previewing layouts in Android Studio.

With the help of the custom View preview plugin that comes with Android Studio, you can preview the layout using the following methods.

You just need to define a custom View for the preview layout and inherit from HikagePreview.

The following example

class MyLayoutPreview(context: Context, attrs: AttributeSet?) : HikagePreview(context, attrs) {
+
+    override fun build() = Hikageable {
+        LinearLayout {
+            TextView {
+                text = "Hello, World!"
+            }
+        }
+    }
+}
+

Then the preview pane should appear on the right side of your current window. After opening, click "Build & Refresh". The preview will be automatically displayed after the compilation is completed.

Tips

HikagePreview implements the HikageBuilder interface, you can return any Hikage layout in the build method for preview.

Pay Attention

HikagePreview supports previewing layouts in Android Studio only, do not use it at runtime or add it to any XML layout.

+ + + diff --git a/en/library/hikage-extension-betterandroid.html b/en/library/hikage-extension-betterandroid.html new file mode 100644 index 0000000..7d02cff --- /dev/null +++ b/en/library/hikage-extension-betterandroid.html @@ -0,0 +1,62 @@ + + + + + + + + + hikage-extension-betterandroid | Hikage + + + + + +

hikage-extension-betterandroid

Maven CentralMaven metadata URLAndroid Min SDK

This is a Hikage extension dependency for BetterAndroidopen in new window UI component-related features.

Configure Dependency

You can add this module to your project using the following method.

Add dependency in your project's SweetDependency configuration file.

libraries:
+  com.highcapable.hikage:
+    hikage-extension-betterandroid:
+      version: +
+

Configure dependency in your project's build.gradle.kts.

implementation(com.highcapable.hikage.hikage.extension.betterandroid)
+

Version Catalog

Add dependency in your project's gradle/libs.versions.toml.

[versions]
+hikage-extension-betterandroid = "<version>"
+
+[libraries]
+hikage-extension-betterandroid = { module = "com.highcapable.hikage:hikage-extension-betterandroid", version.ref = "hikage-extension-betterandroid" }
+

Configure dependency in your project's build.gradle.kts.

implementation(libs.hikage.extension.betterandroid)
+

Please change <version> to the version displayed at the top of this document.

Traditional Method

Configure dependency in your project's build.gradle.kts.

implementation("com.highcapable.hikage:hikage-extension-betterandroid:<version>")
+

Please change <version> to the version displayed at the top of this document.

Function Introduction

You can view the KDoc click hereopen in new window.

Adapter Extension

Hikage provides layout extension function for BetterAndroid's Adapteropen in new window, you can use the Hikage layout directly on the original extension method of the adapter.

It uses the ViewHolderDelegate provided by BetterAndroid to create extension methods.

Here is a simple example based on RecyclerView.

The following example

// Assume this is the dataset you need to bind to.
+val listData = ArrayList<CustomBean>()
+// Create and bind to a custom RecyclerView.Adapter.
+val adapter = recyclerView.bindAdapter<CustomBean> {
+    onBindData { listData }
+    onBindItemView(
+        Hikageable = {
+            TextView(id = "text_view") {
+                text = "Hello, World!"
+                textSize = 16f
+            }
+        }
+    ) { hikage, bean, position ->
+        hikage.get<TextView>("text_view").text = bean.name
+    }
+}
+
+ + + diff --git a/en/library/hikage-extension-compose.html b/en/library/hikage-extension-compose.html new file mode 100644 index 0000000..1823d0b --- /dev/null +++ b/en/library/hikage-extension-compose.html @@ -0,0 +1,65 @@ + + + + + + + + + hikage-extension-compose | Hikage + + + + + +

hikage-extension-compose

Maven CentralMaven metadata URLAndroid Min SDK

This is a Hikage extension dependency for Jetpack Compose component-related features.

Configure Dependency

You can add this module to your project using the following method.

Notice

This module relies on the Jetpack Compose compiler plugin. Please make sure that your project has integrated Jetpack Compose-related dependencies. Please refer to hereopen in new window for details.

Add dependency in your project's SweetDependency configuration file.

libraries:
+  com.highcapable.hikage:
+    hikage-extension-compose:
+      version: +
+

Configure dependency in your project's build.gradle.kts.

implementation(com.highcapable.hikage.hikage.extension.compose)
+

Version Catalog

Add dependency in your project's gradle/libs.versions.toml.

[versions]
+hikage-extension-compose = "<version>"
+
+[libraries]
+hikage-extension-compose = { module = "com.highcapable.hikage:hikage-extension-compose", version.ref = "hikage-extension-compose" }
+

Configure dependency in your project's build.gradle.kts.

implementation(libs.hikage.extension.compose)
+

Please change <version> to the version displayed at the top of this document.

Traditional Method

Configure dependency in your project's build.gradle.kts.

implementation("com.highcapable.hikage:hikage-extension-compose:<version>")
+

Please change <version> to the version displayed at the top of this document.

Function Introduction

You can view the KDoc click hereopen in new window.

Use Jetpack Compose in Hikage

You can use the following methods to embed Jetpack Compose components in a Hikage layout.

The following example

Hikageable {
+   ComposeView(
+       lparams = LayoutParams(matchParent = true)
+   ) {
+       Text("Hello, World!")
+   }
+}
+

Use Hikage in Jetpack Compose

You can use the following methods to embed Hikage components in a Jetpack Compose layout.

The following example

Column(
+   modifier = Modifier.fillMaxSize()
+) {
+    HikageView {
+        TextView(
+            lparams = LayoutParams(matchParent = true)
+        ) {
+            text = "Hello, World!"
+            textSize = 20f
+        }
+    }
+}
+
+ + + diff --git a/en/library/hikage-extension.html b/en/library/hikage-extension.html new file mode 100644 index 0000000..1145bac --- /dev/null +++ b/en/library/hikage-extension.html @@ -0,0 +1,146 @@ + + + + + + + + + hikage-extension | Hikage + + + + + +

hikage-extension

Maven CentralMaven metadata URLAndroid Min SDK

This is a Hikage extension dependency for UI component-related features.

Configure Dependency

You can add this module to your project using the following method.

Add dependency in your project's SweetDependency configuration file.

libraries:
+  com.highcapable.hikage:
+    hikage-extension:
+      version: +
+

Configure dependency in your project's build.gradle.kts.

implementation(com.highcapable.hikage.hikage.extension)
+

Version Catalog

Add dependency in your project's gradle/libs.versions.toml.

[versions]
+hikage-extension = "<version>"
+
+[libraries]
+hikage-extension = { module = "com.highcapable.hikage:hikage-extension", version.ref = "hikage-extension" }
+

Configure dependency in your project's build.gradle.kts.

implementation(libs.hikage.extension)
+

Please change <version> to the version displayed at the top of this document.

Traditional Method

Configure dependency in your project's build.gradle.kts.

implementation("com.highcapable.hikage:hikage-extension:<version>")
+

Please change <version> to the version displayed at the top of this document.

Function Introduction

You can view the KDoc click hereopen in new window.

Activity

Hikage provides better extensions for Activity, and creating a Hikage in Activity will be easier.

The following example

class MainActivity : AppCompatActivity() {
+
+    override fun onCreate(savedInstanceState: Bundle?) {
+        super.onCreate(savedInstanceState)
+        setContentView {
+            LinearLayout(
+                lparams = LayoutParams(matchParent = true) {
+                    topMargin = 16.dp
+                },
+                init = {
+                    orientation = LinearLayout.VERTICAL
+                    gravity = Gravity.CENTER
+                }
+            ) {
+                TextView {
+                    text = "Hello, World!"
+                    textSize = 16f
+                    gravity = Gravity.CENTER
+                }
+            }
+        }
+    }
+}
+

With the setContentView extension method of Hikage, you can set the layout using the setContent method like Jetpack Compose.

Window

Using Hikage to create a layout in Window is consistent with Activity, you just need to use the setContentView method to pass in a Hikage layout.

Dialog

If you want to create a layout using Hikage directly in AlertDialog, you can now do it more simply using the following scheme.

The following example

// Assume this is your Context.
+val context: Context
+// Create a dialog box and display it.
+AlertDialog.Builder(context)
+    .setTitle("Hello, World!")
+    .setView {
+        TextView {
+            text = "Hello, World!"
+            textSize = 16f
+        }
+    }
+    .show()
+

To create a layout using Hikage in AlertDialog, you just need to use the setView method to pass in a Hikage layout.

If you inherited from Dialog for customization, you can use the setContentView method as in Activity.

The following example

class CustomDialog(context: Context) : Dialog(context) {
+
+    override fun onCreate(savedInstanceState: Bundle?) {
+        super.onCreate(savedInstanceState)
+        setContentView {
+            LinearLayout(
+                lparams = LayoutParams(matchParent = true) {
+                    topMargin = 16.dp
+                },
+                init = {
+                    orientation = LinearLayout.VERTICAL
+                    gravity = Gravity.CENTER
+                }
+            ) {
+                TextView {
+                    text = "Hello, World!"
+                    textSize = 16f
+                    gravity = Gravity.CENTER
+                }
+            }
+        }
+    }
+}
+

You can inherit from PopupWindow for customization and then use Hikage to create the layout, and you can use the setContentView method like in Activity.

The following example

class CustomPopupWindow(context: Context) : PopupWindow(context) {
+
+    init {
+        setContentView(context) {
+            LinearLayout(
+                lparams = LayoutParams(matchParent = true) {
+                    topMargin = 16.dp
+                },
+                init = {
+                    orientation = LinearLayout.VERTICAL
+                    gravity = Gravity.CENTER
+                }
+            ) {
+                TextView {
+                    text = "Hello, World!"
+                    textSize = 16f
+                    gravity = Gravity.CENTER
+                }
+            }
+        }
+    }
+}
+

Pay Attention

To create a PopupWindow for Hikage layout, you need to use the Context constructor method to initialize it. If the Context cannot be obtained immediately, please pass the Context instance to the setContentView method.

ViewGroup

Hikage extends the addView method of ViewGroup, and you can use the Hikage layout directly to quickly add new layouts to the current ViewGroup.

The following example

// Assume this is your ViewGroup.
+val root: FrameLayout
+// Add Hikage layout.
+root.addView {
+    TextView {
+        text = "Hello, World!"
+        textSize = 16f
+    }
+}
+

Or, use in a custom View.

The following example

class CustomView(context: Context, attrs: AttributeSet? = null) : FrameLayout(context, attrs) {
+
+    init {
+        addView {
+            TextView {
+                text = "Hello, World!"
+                textSize = 16f
+            }
+        }
+    }
+}
+
+ + + diff --git a/en/library/hikage-widget-androidx.html b/en/library/hikage-widget-androidx.html new file mode 100644 index 0000000..e0c1ae5 --- /dev/null +++ b/en/library/hikage-widget-androidx.html @@ -0,0 +1,61 @@ + + + + + + + + + hikage-widget-androidx | Hikage + + + + + +

hikage-widget-androidx

Maven CentralMaven metadata URLAndroid Min SDK

This is a Hikage extension dependency for Jetpack Compact component-related features.

Configure Dependency

You can add this module to your project using the following method.

Add dependency in your project's SweetDependency configuration file.

libraries:
+  com.highcapable.hikage:
+    hikage-widget-androidx:
+      version: +
+

Configure dependency in your project's build.gradle.kts.

implementation(com.highcapable.hikage.hikage.widget.androidx)
+

Version Catalog

Add dependency in your project's gradle/libs.versions.toml.

[versions]
+hikage-widget-androidx = "<version>"
+
+[libraries]
+hikage-widget-androidx = { module = "com.highcapable.hikage:hikage-widget-androidx", version.ref = "hikage-widget-androidx" }
+

Configure dependency in your project's build.gradle.kts.

implementation(libs.hikage.widget.androidx)
+

Please change <version> to the version displayed at the top of this document.

Traditional Method

Configure dependency in your project's build.gradle.kts.

implementation("com.highcapable.hikage:hikage-widget-androidx:<version>")
+

Please change <version> to the version displayed at the top of this document.

Function Introduction

This dependency inherits the available components from Jetpack Compact, which you can directly reference to use in Hikage.

The following example

LinearLayoutCompact(
+    lparams = LayoutParams(matchParent = true) {
+        topMargin = 16.dp
+    },
+    init = {
+        orientation = LinearLayoutCompat.VERTICAL
+        gravity = Gravity.CENTER
+    }
+) {
+    AppCompatTextView {
+        text = "Hello, World!"
+        textSize = 16f
+        gravity = Gravity.CENTER
+    }
+}
+
+ + + diff --git a/en/library/hikage-widget-material.html b/en/library/hikage-widget-material.html new file mode 100644 index 0000000..f183541 --- /dev/null +++ b/en/library/hikage-widget-material.html @@ -0,0 +1,77 @@ + + + + + + + + + hikage-widget-material | Hikage + + + + + +

hikage-widget-material

Maven CentralMaven metadata URLAndroid Min SDK

This is a Hikage extension dependency for Google Material (MDC) component-related features.

Configure Dependency

You can add this module to your project using the following method.

Add dependency in your project's SweetDependency configuration file.

libraries:
+  com.highcapable.hikage:
+    hikage-widget-material:
+      version: +
+

Configure dependency in your project's build.gradle.kts.

implementation(com.highcapable.hikage.hikage.widget.material)
+

Version Catalog

Add dependency in your project's gradle/libs.versions.toml.

[versions]
+hikage-widget-material = "<version>"
+
+[libraries]
+hikage-widget-material = { module = "com.highcapable.hikage:hikage-widget-material", version.ref = "hikage-widget-material" }
+

Configure dependency in your project's build.gradle.kts.

implementation(libs.hikage.widget.material)
+

Please change <version> to the version displayed at the top of this document.

Traditional Method

Configure dependency in your project's build.gradle.kts.

implementation("com.highcapable.hikage:hikage-widget-material:<version>")
+

Please change <version> to the version displayed at the top of this document.

Function Introduction

This dependency inherits the available components from Google Material (MDC), which you can directly reference to use in Hikage.

The following example

LinearLayout(
+    lparams = LayoutParams(matchParent = true) {
+        topMargin = 16.dp
+    },
+    init = {
+        orientation = LinearLayout.VERTICAL
+        gravity = Gravity.CENTER
+    }
+) {
+    MaterialTextView {
+        text = "Hello, World!"
+        textSize = 16f
+        gravity = Gravity.CENTER
+    }
+    MaterialButton {
+        text = "Hello, World!"
+        textSize = 16f
+        gravity = Gravity.CENTER
+    }
+    TextInputLayout(
+        lparams = LayoutParams {
+            topMargin = 16.dp
+        },
+        init = {
+            minWidth = 200.dp
+            hint = "Enter your text"
+        }
+    ) {
+        TextInputEditText()
+    }
+}
+
+ + + diff --git a/images/logo.svg b/images/logo.svg new file mode 100644 index 0000000..df15380 --- /dev/null +++ b/images/logo.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/images/nagasaki_soyo.png b/images/nagasaki_soyo.png new file mode 100644 index 0000000000000000000000000000000000000000..03a75acff266c0bf49f4bd88743729a15a5cca44 GIT binary patch literal 45194 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%0A&*~;<+q{MiU#H+9Wv8egMrCos%-A_t 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 literal 0 HcmV?d00001 diff --git a/index.html b/index.html new file mode 100644 index 0000000..b6bf034 --- /dev/null +++ b/index.html @@ -0,0 +1,34 @@ + + + + + + + + + Hikage + + + + + +

Select a language

English 简体中文

+ + + diff --git a/zh-cn/about/about.html b/zh-cn/about/about.html new file mode 100644 index 0000000..ed27d94 --- /dev/null +++ b/zh-cn/about/about.html @@ -0,0 +1,49 @@ + + + + + + + + + 关于此文档 | Hikage + + + + + +

关于此文档

此文档由 VuePress在新窗口中打开 强力驱动。

许可证

Apache-2.0在新窗口中打开

Apache License Version 2.0
+
+Copyright (C) 2019 HighCapable
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+    https://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+

版权所有 © 2019 HighCapable

+ + + diff --git a/zh-cn/about/changelog.html b/zh-cn/about/changelog.html new file mode 100644 index 0000000..19bb2ff --- /dev/null +++ b/zh-cn/about/changelog.html @@ -0,0 +1,34 @@ + + + + + + + + + 更新日志 | Hikage + + + + + +

更新日志

这里记录了 Hikage 的版本更新历史。

特别注意

我们只会对最新的 API 版本进行维护,若你正在使用过时的 API 版本则代表你自愿放弃一切维护的可能性。

hikage-core

1.0.1 | 2025.05.06  最新

  • 修复 KSP 源码没有成功发布的问题
  • 新增状态管理功能

1.0.0 | 2025.04.20  过旧

  • 首个版本提交至 Maven

hikage-compiler

1.0.0 | 2025.04.20  最新

  • 首个版本提交至 Maven

hikage-extension

1.0.0 | 2025.04.20  最新

  • 首个版本提交至 Maven

hikage-extension-betterandroid

1.0.0 | 2025.04.20  最新

  • 首个版本提交至 Maven

hikage-extension-compose

1.0.0 | 2025.04.20  最新

  • 首个版本提交至 Maven

hikage-widget-androidx

1.0.0 | 2025.04.20  最新

  • 首个版本提交至 Maven

hikage-widget-material

1.0.0 | 2025.04.20  最新

  • 首个版本提交至 Maven
+ + + diff --git a/zh-cn/about/contacts.html b/zh-cn/about/contacts.html new file mode 100644 index 0000000..05de107 --- /dev/null +++ b/zh-cn/about/contacts.html @@ -0,0 +1,34 @@ + + + + + + + + + 联系我们 | Hikage + + + + + +

联系我们

如在使用中有任何问题,或有任何建设性的建议,都可以联系我们。

加入我们的开发者群组。

酷安 找到我 @星夜不荟在新窗口中打开

助力维护

感谢您选择并使用 Hikage,如有代码相关的建议和请求,可在 GitHub 提交 Pull Request。

+ + + diff --git a/zh-cn/about/future.html b/zh-cn/about/future.html new file mode 100644 index 0000000..2c7d08f --- /dev/null +++ b/zh-cn/about/future.html @@ -0,0 +1,80 @@ + + + + + + + + + 展望未来 | Hikage + + + + + +

展望未来

未来是美好的,也是不确定的,让我们共同期待 Hikage 在未来的发展空间。

未来的计划

这里收录了 Hikage 可能会在后期添加的功能。

处理 AttrtibuteSet

Hikage 未来将会支持处理 AttributeSet 来对接 XML 原始的属性以实现接管一些并未在代码中对布局属性开放自定义的第三方组件。

Hikage 目前已经支持自动化创建 XmlBlock,但尚未支持直接处理自定义的 AttributeSet,因为其历史遗留问题和处理难度较高,可能会折中考虑后期是否要继续完善此功能。

示例如下

TextView(
+    id = "text_view",
+    // 通过 AttributeSet 传入的属性
+    attrs = {
+        namespace("android") {
+            set("text", "Hello, World!")
+            set("textSize", "16sp")
+            set("gravity", "center")
+        }
+    }
+) {
+    // 通过代码传入的属性
+    text = "Hello, World!"
+    textSize = 16f
+    gravity = Gravity.CENTER
+}
+

生成组件 ID

Hikage 未来可能会根据需求支持生成使用字符串自定义的组件 ID 的直接调用功能。

示例如下

object MyLayout : HikageBuilder {
+
+    override fun build() = Hikageable(context) {
+        LinearLayout(
+            id = "lin_layout",
+            lparams = LayoutParams(matchParent = true),
+            init = {
+                orientation = LinearLayout.VERTICAL
+                gravity = Gravity.CENTER
+            }
+        ) {
+            TextView(id = "text_view") {
+                text = "Hello, World!"
+                textSize = 16f
+                gravity = Gravity.CENTER
+            }
+        }
+    }
+}
+
+val context: Context
+// 创建 TypedHikage
+val myLayout = MyLayout.asTyped().build().create(context)
+// 或者,使用懒加载
+val myLayout by context.lazyTypedHikage(MyLayout)
+// 直接调用根据字符串生成的 ID
+val linLayout = myLayout.linLayout
+val textView = myLayout.textView
+// 获取根布局,即 LinearLayout
+val root = myLayout.root
+
+ + + diff --git a/zh-cn/config/r8-proguard.html b/zh-cn/config/r8-proguard.html new file mode 100644 index 0000000..780164c --- /dev/null +++ b/zh-cn/config/r8-proguard.html @@ -0,0 +1,36 @@ + + + + + + + + + R8 与 Proguard 混淆 | Hikage + + + + + +

R8 与 Proguard 混淆

大部分场景下应用程序安装包可通过混淆压缩体积,这里介绍了混淆规则的配置方法。

Hikage 不需要额外配置混淆规则,由于 Hikage 装载的 View 不需要在 XML 中被定义,它们也可以同样被混淆。

你可以将你的自定义 View,例如 com.yourpackage.YourView 使用以下规则强制让它们被混淆。

-allowobfuscation class com.yourpackage.YourView
+

如果你一定要防止 Hikage 被混淆或者混淆后发生了问题,那么你可以使用以下规则来防止 Hikage 被混淆。

-keep class com.highcapable.hikage**
+
+ + + diff --git a/zh-cn/guide/home.html b/zh-cn/guide/home.html new file mode 100644 index 0000000..5246669 --- /dev/null +++ b/zh-cn/guide/home.html @@ -0,0 +1,72 @@ + + + + + + + + + 介绍 | Hikage + + + + + +

介绍

Hikage (发音 /ˈhɪkɑːɡeɪ/) 是一个 Android 响应式 UI 构建工具。

背景

这是一个 Android 响应式 UI 构建工具,它的设计聚焦于 实时代码构建 UI

项目图标由 MaiTungTM在新窗口中打开 设计,名称取自 「BanG Dream It's MyGO!!!!!」 中的原创歌曲《春日影》(Haruhikage)。

为什么要...
LOGO

なんで春日影レイアウト使いの?

不同于 Jetpack Compose 的声明式 UI,Hikage 专注于 Android 原生平台,它的设计目标是为了让开发者能够快速构建 UI 并可直接支持 Android 原生组件。

Hikage 只是一个 UI 构建工具,自身并不提供任何 UI 组件

拒绝重复造轮子,我们的方案始终是兼容与高效,现在你可以抛弃 ViewBinding 和 XML 甚至是 findViewById,直接来尝试使用代码布局吧。

Hikage 配合我们的另一个项目 BetterAndroid在新窗口中打开 使用效果更佳,同时 Hikage 自身将自动引用 BetterAndroid 相关依赖作为核心内容。

用途

Hikage 主要适用于专注原生 Android 平台开发的开发者,自从 Kotlin 作为主要开发语言后,依然没有一套比较完美的工具能够使用 DSL 实现动态代码布局, 所以没有使用 Jetpack Compose 的项目依然需要使用原始的 XML,虽然有着 ViewBinding 的支持,但是依然不是很友好。

Hikage 继承了 Anko在新窗口中打开Splitties在新窗口中打开 的设计方案以及借鉴了 Jetpack Compose 的 DSL 函数命名方案, 并且在此基础上进行了大量改进,使得它在使用成本上更贴近原生,写法上更贴近 Jetpack Compose。

各种 DSL 布局方案对比

LinearLayout(
+    lparams = LayoutParams(matchParent = true) {
+        topMargin = 16.dp
+    },
+    init = {
+        orientation = LinearLayout.VERTICAL
+        gravity = Gravity.CENTER
+    }
+) {
+    TextView {
+        text = "Hello, World!"
+        textSize = 16f
+        gravity = Gravity.CENTER
+    }
+}
+
verticalLayout {
+    gravity = Gravity.CENTER
+    textView("Hello, World!") {
+        textSize = 16f
+        gravity = Gravity.CENTER
+    }
+}.lparams(
+    width = matchParent,
+    height = matchParent
+) {
+    topMargin = dip(16)
+}
+
Column(
+    modifier = Modifier.padding(top = 16.dp),
+    verticalArrangement = Arrangement.Center,
+    horizontalAlignment = Alignment.CenterHorizontally
+) {
+    Text(
+        text = "Hello, World!",
+        fontSize = 16.sp,
+        textAlign = TextAlign.Center
+    )
+}
+

Hikage 的基础部分完全不需要借助外部及额外的编译插件,它能即插即用并在任何地方创建一个可被设置到父布局以及 Window 上的 View 对象。

Hikage 全面兼容混合式布局,你可以在 Hikage 中嵌入 XML (使用 R.layout 方案装载布局)、ViewBinding 甚至是 Jetpack Compose。

语言要求

推荐使用 Kotlin 作为首选开发语言,本项目完全使用 Kotlin 编写,且不再有计划兼容 Java。

文档全部的 Demo 示例代码都将使用 Kotlin 进行描述,如果你完全不会使用 Kotlin,那么你将有可能无法正常使用本项目。

功能贡献

本项目的维护离不开各位开发者的支持和贡献,目前这个项目处于初期阶段,可能依然存在一些问题或者缺少你需要的功能, 如果可能,欢迎提交 PR 为此项目贡献你认为需要的功能或前往 GitHub Issues在新窗口中打开 向我们提出建议。

+ + + diff --git a/zh-cn/guide/quick-start.html b/zh-cn/guide/quick-start.html new file mode 100644 index 0000000..d11aac4 --- /dev/null +++ b/zh-cn/guide/quick-start.html @@ -0,0 +1,61 @@ + + + + + + + + + 快速开始 | Hikage + + + + + +

快速开始

集成 Hikage 到你的项目中。

项目要求

项目需要使用 Android StudioIntelliJ IDEA 创建且类型为 Android 或 Kotlin Multiplatform 项目并已集成 Kotlin 环境依赖。

配置存储库

Hikage 的依赖发布在 Maven Central 和我们的公共存储库中,你可以使用如下方式配置存储库。

我们推荐使用 Kotlin DSL 作为 Gradle 构建脚本语言并推荐使用 SweetDependency在新窗口中打开 来管理依赖。

SweetDependency (推荐)

在你的项目 SweetDependency 配置文件中配置存储库。

repositories:
+  google:
+  maven-central:
+  # (可选) 你可以添加此 URL 以使用我们的公共存储库
+  # 当 Sonatype-OSS 发生故障无法发布依赖时,此存储库作为备选进行添加
+  # 详情请前往:https://github.com/HighCapable/maven-repository
+  highcapable-maven-releases:
+    # 中国大陆用户请将下方的 "raw.githubusercontent.com" 修改为 "raw.gitmirror.com"
+    url: https://raw.githubusercontent.com/HighCapable/maven-repository/main/repository/releases
+

传统方式

在你的项目 build.gradle.kts 中配置存储库。

repositories {
+    google()
+    mavenCentral()
+    // (可选) 你可以添加此 URL 以使用我们的公共存储库
+    // 当 Sonatype-OSS 发生故障无法发布依赖时,此存储库作为备选进行添加
+    // 详情请前往:https://github.com/HighCapable/maven-repository
+    // 中国大陆用户请将下方的 "raw.githubusercontent.com" 修改为 "raw.gitmirror.com"
+    maven("https://raw.githubusercontent.com/HighCapable/maven-repository/main/repository/releases")
+}
+

配置 Java 版本

在你的项目 build.gradle.kts 中修改 Kotlin 的 Java 版本为 17 及以上。

android {
+    compileOptions {
+        sourceCompatibility = JavaVersion.VERSION_17
+        targetCompatibility = JavaVersion.VERSION_17
+    }
+    kotlinOptions {
+        jvmTarget = "17"
+    }
+}
+

功能一览

整个项目分为多个模块,你可以选择你希望引入的模块作为依赖应用到你的项目中,但一定要包含 hikage-core 模块。

你可以点击下方对应的模块前往查看详细的功能介绍。

Demo

你可以在 这里在新窗口中打开 找到一些示例,查看对应的演示项目来更好地了解这些功能的运作方式,快速地挑选出你需要的功能。

+ + + diff --git a/zh-cn/index.html b/zh-cn/index.html new file mode 100644 index 0000000..c156862 --- /dev/null +++ b/zh-cn/index.html @@ -0,0 +1,62 @@ + + + + + + + + + 首页 | Hikage + + + + + +
Hikage

Hikage

一个 Android 响应式 UI 构建工具

快速上手 更新日志

原生可控

使用 View 作为基础,Kotlin 作为开发语言,100% 动态代码布局,无需任何额外配置,支持自定义 View。

全面兼容

支持 XML、ViewBinding 以及 Jetpack Compose 嵌入混合使用,并对 Material 组件及 Jetpack 提供支持。

快速上手

简单易用,不需要繁琐的配置,不需要十足的开发经验,搭建环境集成依赖即可立即开始使用。

布局,就是这么灵活。

LinearLayout(
+    lparams = LayoutParams(matchParent = true),
+    init = {
+        orientation = LinearLayout.VERTICAL
+        gravity = Gravity.CENTER
+    }
+) {
+    TextView(id = "text_view") {
+        text = "Hello, World!"
+        textSize = 16f
+        gravity = Gravity.CENTER
+    }
+}
+
<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:orientation="vertical"
+    android:gravity="center">
+
+    <TextView
+        android:id="@+id/text_view"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:text="Hello, World!"
+        android:textSize="16sp"
+        android:gravity="center" />
+</LinearLayout>
+
+ + + diff --git a/zh-cn/library/hikage-compiler.html b/zh-cn/library/hikage-compiler.html new file mode 100644 index 0000000..934f208 --- /dev/null +++ b/zh-cn/library/hikage-compiler.html @@ -0,0 +1,112 @@ + + + + + + + + + hikage-compiler | Hikage + + + + + +

hikage-compiler

Maven CentralMaven metadata URLAndroid Min SDK

这是 Hikage 的自动化编译模块。

配置依赖

你可以使用如下方式将此模块添加到你的项目中。

注意

你需要在你的项目中集成适合于你项目当前 Kotlin 版本的 Google KSP在新窗口中打开 插件。

SweetDependency (推荐)

在你的项目 SweetDependency 配置文件中添加依赖。

plugins:
+  com.google.devtools.ksp:
+    version: +
+
+libraries:
+  com.highcapable.hikage:
+    hikage-compiler:
+      version: +
+

在你的根项目 build.gradle.kts 中配置依赖。

plugins {
+    // ...
+    autowire(libs.plugins.com.google.devtools.ksp) apply false
+}
+

在你的项目 build.gradle.kts 中配置依赖。

plugins {
+    // ...
+    autowire(libs.plugins.com.google.devtools.ksp)
+}
+
+dependencies {
+    // ...
+    ksp(com.highcapable.hikage.hikage.compiler)
+}
+

Version Catalog

在你的项目 gradle/libs.versions.toml 中添加依赖。

[versions]
+ksp = "<ksp-version>"
+hikage-compiler = "<version>"
+
+[plugins]
+ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
+
+[libraries]
+hikage-compiler = { module = "com.highcapable.hikage:hikage-compiler", version.ref = "hikage-compiler" }
+

在你的根项目 build.gradle.kts 中配置依赖。

plugins {
+    // ...
+    alias(libs.plugins.ksp) apply false
+}
+

在你的项目 build.gradle.kts 中配置依赖。

plugins {
+    // ...
+    alias(libs.plugins.ksp)
+}
+
+dependencies {
+    // ...
+    ksp(libs.hikage.compiler)
+}
+

请将 <version> 修改为此文档顶部显示的版本,并将 <ksp-version> 修改为你项目当前使用的 Kotlin 版本对应的 KSP 版本。

传统方式

在你的根项目 build.gradle.kts 中配置依赖。

plugins {
+    // ...
+    id("com.google.devtools.ksp") version "<ksp-version>" apply false
+}
+

在你的项目 build.gradle.kts 中配置依赖。

plugins {
+    // ...
+    id("com.google.devtools.ksp")
+}
+
+dependencies {
+    // ...
+    ksp("com.highcapable.hikage:hikage-compiler:<version>")
+}
+

请将 <version> 修改为此文档顶部显示的版本,并将 <ksp-version> 修改为你项目当前使用的 Kotlin 版本对应的 KSP 版本。

功能介绍

Hikage 的编译模块将在运行时自动生成代码,在更新后,请重新运行 assembleDebugassembleRelease Task 以生成最新的代码。

生成布局组件

Hikage 可以在编译时为指定的布局组件自动生成布局组件对应的 Hikageable 函数。

自定义 View

你可以在你的自定义 View 上加入 HikageView 注解,以标记它生成为 Hikage 布局组件。

参数名称描述
lparams布局参数 ViewGroup.LayoutParams Class 对象,如果你的自定义 ViewViewGroup 的子类,则可以声明或留空使用默认值
alias布局组件的别名,即要生成的函数名称,默认获取当前 Class 的名称
requireInit是否要求填写布局的初始化方法块,默认为可省略的参数
requirePerformer是否要求填写布局的 performer 方法块,默认为可省略的参数,仅在你的自定义 ViewViewGroup 的子类时生效

示例如下

@HikageView(lparams = LinearLayout.LayoutParams::class)
+class MyLayout(context: Context, attrs: AttributeSet? = null) : LinearLayout(context, attrs) {
+    // ...
+}
+

编译后,你就可以在 Hikage 布局中使用 MyLayout 作为布局组件了。

示例如下

Hikageable {
+    MyLayout {
+        TextView(
+            lparams = LayoutParams {
+                topMargin = 16.dp
+            }
+        ) {
+            text = "Hello, World!"
+        }
+    }
+}
+

第三方组件

Hikage 同样可以为第三方提供的 View 组件自动生成布局组件函数,你可以使用 HikageViewDeclaration 注解来完成。

参数名称描述
view需要声明的布局组件的 Class 对象
lparams布局参数 ViewGroup.LayoutParams Class 对象,如果你的自定义 ViewViewGroup 的子类,则可以声明或留空使用默认值
alias布局组件的别名,即要生成的函数名称,默认获取 view Class 的名称
requireInit是否要求填写布局的初始化方法块,默认为可省略的参数
requirePerformer是否要求填写布局的 performer 方法块,默认为可省略的参数,仅在你的自定义 ViewViewGroup 的子类时生效

示例如下

@HikageViewDeclaration(ThirdPartyView::class)
+object ThirdPartyViewDeclaration
+

这个注解可以声明到任意一个 object 类上,仅作为注解扫描器需要自动纳入的类来使用,你可以将可见性设为 private,但要确保被注解的类一定是使用 object 修饰的。

同样地,编译后,你就可以在 Hikage 布局中使用 ThirdPartyView 作为布局组件了。

示例如下

Hikageable {
+    ThirdPartyView {
+        // ...
+    }
+}
+

小提示

Hikage 生成布局组件的函数包名路径为 com.highcapable.hikage.widget + 你的 View 或第三方 View 组件的完整包名。

+ + + diff --git a/zh-cn/library/hikage-core.html b/zh-cn/library/hikage-core.html new file mode 100644 index 0000000..8bf3676 --- /dev/null +++ b/zh-cn/library/hikage-core.html @@ -0,0 +1,314 @@ + + + + + + + + + hikage-core | Hikage + + + + + +

hikage-core

Maven CentralMaven metadata URLAndroid Min SDK

这是 Hikage 的核心依赖,你需要引入此模块才能使用 Hikage 的基本功能。

配置依赖

你可以使用如下方式将此模块添加到你的项目中。

SweetDependency (推荐)

在你的项目 SweetDependency 配置文件中添加依赖。

libraries:
+  com.highcapable.hikage:
+    hikage-core:
+      version: +
+

在你的项目 build.gradle.kts 中配置依赖。

implementation(com.highcapable.hikage.hikage.core)
+

Version Catalog

在你的项目 gradle/libs.versions.toml 中添加依赖。

[versions]
+hikage-core = "<version>"
+
+[libraries]
+hikage-core = { module = "com.highcapable.hikage:hikage-core", version.ref = "hikage-core" }
+

在你的项目 build.gradle.kts 中配置依赖。

implementation(libs.hikage.core)
+

请将 <version> 修改为此文档顶部显示的版本。

传统方式

在你的项目 build.gradle.kts 中配置依赖。

implementation("com.highcapable.hikage:hikage-core:<version>")
+

请将 <version> 修改为此文档顶部显示的版本。

功能介绍

你可以 点击这里在新窗口中打开 查看 KDoc。

基本用法

使用下方的代码创建你的第一个 Hikage 布局。

首先,使用 Hikageable 创建一个 Hikage.Delegate 对象。

示例如下

val myLayout = Hikageable {
+    LinearLayout {
+        TextView {
+            text = "Hello, World!"
+        }
+    }
+}
+

然后,将其设置到你想要显示的父布局或根布局上。

示例如下

// 假设这就是你的 Activity
+val activity: Activity
+// 实例化 Hikage 对象
+val hikage = myLayout.create(activity)
+// 得到根布局
+val root = hikage.root
+// 设置为 Activity 的内容视图
+activity.setContentView(root)
+

这样我们就完成了一个简单的布局创建与设置。

布局约定

Hikage 的布局基本元素基于 Android 原生的 View 组件,所有的布局元素都可以直接使用 Android 原生的 View 组件进行创建。

所有布局的创建过程都会被限定在指定的作用域 Hikage.Performer 中,它被称为布局的 “演奏者”,即饰演布局的角色对象,这个对象可以通过以下几种方式创建并维护。

Hikageable

正如 基本用法 所示,Hikageable 可以直接创建一个 Hikage.DelegateHikage 对象,在 DSL 中,你可以得到 Hikage.Performer 对象对布局内容进行创建。

第一种方案,在任意地方创建。

示例如下

// myLayout 是 Hikage.Delegate 对象
+val myLayout = Hikageable {
+    // ...
+}
+// 假设这就是你的 Context
+val context: Context
+// 在需要 Context 的地方实例化 Hikage 对象
+val hikage = myLayout.create(context)
+

第二种方案,在存在 Context 的地方直接创建。

示例如下

// 假设这就是你的 Context
+val context: Context
+// 创建布局,myLayout 是 Hikage 对象
+val myLayout = Hikageable(context) {
+    // ...
+}
+

HikageBuilder

除了上述的方式以外,你还可以维护一个 HikageBuilder 对象来预创建布局。

首先,我们需要创建一个 HikageBuilder 对象并定义为单例。

示例如下

object MyLayout : HikageBuilder {
+
+    override fun build() = Hikageable {
+        // ...
+    }
+}
+

然后,在需要的地方使用它,可以有如下两种方案。

第一种方案,直接使用 build 创建 Hikage.Delegate 对象。

示例如下

// myLayout 是 Hikage.Delegate 对象
+val myLayout = MyLayout.build()
+// 假设这就是你的 Context
+val context: Context
+// 在需要 Context 的地方实例化 Hikage 对象
+val hikage = myLayout.create(context)
+

第二种方案,使用 Context.lazyHikage 创建 Hikage 委托对象。

例如,我们可以在 Activity 中像 ViewBinding 一样使用它。

示例如下

class MyActivity : AppCompatActivity() {
+
+    private val myLayout by lazyHikage(MyLayout)
+
+    override fun onCreate(savedInstanceState: Bundle?) {
+        super.onCreate(savedInstanceState)
+        // 得到根布局
+        val root = myLayout.root
+        // 设置为 Activity 的内容视图
+        setContentView(root)
+    }
+}
+

基本布局组件

Hikage 采用与 Jetpack Compose 一致的函数式创建组件方案,它的布局使用两种基础组件完成,ViewViewGroup 函数, 它们分别对应于 Android 原生基于 ViewViewGroup 的组件。

View

View 函数的基础参数为以下三个,使用泛型定义创建的 View 对象类型。

如果不声明泛型类型,默认使用 android.view.View 作为创建的对象类型。

参数名称描述
lparams布局参数,即 ViewGroup.LayoutParams,使用 LayoutParams 进行创建
id用于查找已创建对象的 ID,使用字符串定义
initView 的初始化方法体,作为最后一位 DSL 参数传入

示例如下

View<TextView>(
+    lparams = LayoutParams(),
+    id = "my_text_view"
+) {
+    text = "Hello, World!"
+    textSize = 16f
+    gravity = Gravity.CENTER
+}
+

ViewGroup

ViewGroup 函数的基础参数为四个,比较于 View 函数多了一个 performer 参数。

它必须声明一个泛型类型,因为 ViewGroup 是抽象类,需要一个具体的实现类。

ViewGroup 额外提供一个基于 ViewGroup.LayoutParams 的泛型参数,用于为子布局提供布局参数,不声明时默认使用 ViewGroup.LayoutParams

参数名称描述
lparams布局参数,即 ViewGroup.LayoutParams,使用 LayoutParams 进行创建
id用于查找已创建对象的 ID,使用字符串定义
initViewGroup 的初始化方法体,作为 DSL 参数传入
performerHikage.Performer 对象,作为最后一位 DSL 参数传入

performer 参数的作用是向下传递新的 Hikage.Performer 对象,作为子布局的创建者。

示例如下

ViewGroup<LinearLayout, LinearLayout.LayoutParams>(
+    lparams = LayoutParams(),
+    id = "my_linear_layout",
+    // 初始化方法体将在这里使用 `init` 体现
+    init = {
+        orientation = LinearLayout.VERTICAL
+        gravity = Gravity.CENTER
+    }
+) {
+    // 可在这里继续创建子布局
+    View()
+}
+

LayoutParams

Hikage 中的布局均可使用 LayoutParams 函数设置布局参数,你可以使用以下参数创建它。

参数名称描述
width手动指定布局宽度
height手动指定布局高度
matchParent是否使用 MATCH_PARENT 作为布局宽度和高度
wrapContent是否使用 WRAP_CONTENT 作为布局宽度和高度
widthMatchParent仅设置宽度为 MATCH_PARENT
heightMatchParent仅设置高度为 MATCH_PARENT
body布局参数的初始化方法体,作为最后一位 DSL 参数传入

在你不设置 LayoutParams 对象或不指定 widthheight 时,Hikage 会自动使用 WRAP_CONTENT 作为布局参数。

body 方法体的类型来源于上层 ViewGroup 提供的第二位泛型参数。

示例如下

View(
+    // 假设上层提供的布局参数类型为 LinearLayout.LayoutParams
+    lparams = LayoutParams(width = 100.dp) {
+        topMargin = 20.dp
+    }
+)
+

如果你只需要一个横向填充的布局,可以直接使用 widthMatchParent = true

示例如下

View(
+    lparams = LayoutParams(widthMatchParent = true)
+)
+

Layout

Hikage 支持引用第三方布局,你可以传入 XML 布局资源 ID、其它 Hikage 对象以及 View 对象,甚至是 ViewBinding

示例如下

ViewGroup<...> {
+    // 引用 XML 布局资源 ID
+    Layout(R.layout.my_layout)
+    // 引用 ViewBinding
+    Layout<MyLayoutBinding>()
+    // 引用另一个 Hikage 或 Hikage.Delegate 对象
+    Layout(myLayout)
+}
+

定位布局组件

Hikage 支持使用 id 定位组件,在上面的示例中,我们使用了 id 参数设置了组件的 ID。

在设置 ID 后,你可以使用 Hikage.get 方法获取它们。

示例如下

val myLayout = Hikageable {
+    View<TextView>(id = "my_text_view") {
+        text = "Hello, World!"
+    }
+}
+// 假设这就是你的 Context
+val context: Context
+// 在需要 Context 的地方实例化 Hikage 对象
+val hikage = myLayout.create(context)
+// 获取指定的组件,返回 View 类型
+val textView = hikage["my_text_view"]
+// 获取指定的组件并声明组件类型
+val textView = hikage.get<TextView>("my_text_view")
+// 如果不确定 ID 是否存在,可以使用 `getOrNull` 方法
+val textView = hikage.getOrNull<TextView>("my_text_view")
+

自定义布局组件

Hikage 为 Android 基础的布局组件提供了组件类名对应的函数,你可以直接使用这些函数创建组件,而无需再使用泛型声明它们,如果你需要 Jetpack 或者 Material 提供的组件, 可以引入 hikage-widget-androidxhikage-widget-material 模块。

示例如下

LinearLayout(
+    lparams = LayoutParams(),
+    id = "my_linear_layout",
+    init = {
+        orientation = LinearLayout.VERTICAL
+        gravity = Gravity.CENTER
+    }
+) {
+    TextView(
+        lparams = LayoutParams(),
+        id = "my_text_view"
+    ) {
+        text = "Hello, World!"
+        textSize = 16f
+        gravity = Gravity.CENTER
+    }
+}
+

初始化后的 ViewViewGroup 对象会返回其自身对象类型的实例,你可以在接下来的布局中使用它们。

示例如下

val textView = TextView {
+    text = "Hello, World!"
+    textSize = 16f
+    gravity = Gravity.CENTER
+}
+Button {
+    text = "Click Me!"
+    setOnClickListener {
+        // 直接使用 textView 对象
+        textView.text = "Clicked!"
+    }
+}
+

如果提供的组件不满足你的需求,你可以手动创建自己的组件。

示例如下

// 假设你已经定义好了你的自定义组件
+class MyCustomView(context: Context, attrs: AttributeSet? = null) : View(context, attrs) {
+    // ...
+}
+
+// 下面,创建组件对应的函数
+// 自定义组件必须声明此注解
+// 声明组件的注解具有传染性,在每个用于构建布局的作用域中,都需要存在此注解
+@Hikageable
+// 函数的命名可以随意,但是建议使用大驼峰命名
+// 函数的签名部分需要固定声明为 `inline fun <reified LP : ViewGroup.LayoutParams> Hikage.Performer<LP>`
+inline fun <reified LP : ViewGroup.LayoutParams> Hikage.Performer<LP>.MyCustomView(
+    lparams: Hikage.LayoutParams? = null,
+    id: String? = null,
+    init: HikageView<MyCustomView> = {},
+    // 如果此组件是容器,可以声明一个 `performer` 参数
+    // performer: HikagePerformer<LP> = {}
+) = View<MyCustomView>(lparams, id, init)
+

每次都手动实现这样复杂的函数看起来会很繁琐,如果你希望能够自动生成组件函数,可以引入并参考 hikage-compiler 模块。

组合与拆分布局

在搭建 UI 时,我们通常会将可复用的布局作为组件来使用,如果你不想每一个部分都使用原生的自定义 View 将其分别定制,你可以直接将布局逻辑部分进行拆分。

Hikage 支持将布局拆分为多个部分进行组合,你可以在任何地方使用 Hikageable 函数创建一个新的 Hikage.Delegate 对象。

示例如下

// 假设这是你的主布局
+val mainLayout = Hikageable {
+    LinearLayout(
+        lparams = LayoutParams(matchParent = true),
+        init = {
+            orientation = LinearLayout.VERTICAL
+        }
+    ) {
+        TextView {
+            text = "Hello, World!"
+        }
+        // 组合子布局
+        Layout(subLayout)
+    }
+}
+// 假设这是你的布局子模块
+// 由于上层布局使用了 LinearLayout,所以你可以为子布局声明 LinearLayout.LayoutParams
+val subLayout = Hikageable<LinearLayout.LayoutParams> {
+    TextView(
+        lparams = LayoutParams {
+            topMargin = 16.dp
+        }
+    ) {
+        text = "Hello, Sub World!"
+    }
+}
+

状态管理

Hikage 拥有与 Jetpack Compose 类似的状态管理解决方法,它可以轻松地设置布局组件的状态监听。

Hikage 提供了两种状态,NonNullStateNullableState,分为持有非空和可空两种状态。

不同于 Jetpack Compose 的重组 (Recompose),Hikage 不会重组,状态通过监听与回调生效。

你可以在如下场景中使用这两种状态。

示例如下

val myLayout = Hikageable {
+    // 声明一个非空可变状态
+    val mTextState = mutableStateOf("Hello, World!")
+    // 声明一个可空可变状态
+    val mDrawState = mutableStateOfNull<Drawable>()
+    // 你可以将状态委托给一个变量
+    var mText by mTextState
+    var mDraw by mDrawState
+    LinearLayout(
+        lparams = LayoutParams(matchParent = true),
+        init = {
+            orientation = LinearLayout.VERTICAL
+        }
+    ) {
+        TextView {
+            textSize = 16f
+            gravity = Gravity.CENTER
+            // 设置 (绑定) 状态到文本
+            setState(mTextState) {
+                text = it
+            }
+        }
+        ImageView {
+            // 设置 (绑定) 状态到 Drawable
+            setState(mDrawState) {
+                setImageDrawable(it)
+            }
+        }
+        Button {
+            text = "Click Me!"
+            setOnClickListener {
+                // 修改非空状态的值
+                mText = "Hello, Hikage!"
+                // 修改可空状态的值
+                mDraw = drawableResource(R.drawable.ic_my_drawable)
+            }
+        }
+    }
+}
+

在上面的示例中,我们使用 mutableStateOf 声明了一个非空状态 mTextState,它的初始值为 "Hello, World!", 然后继续使用 mutableStateOfNull 声明了一个可空状态 mDrawState,它的初始值为 null

在点击按钮时,我们修改 mTextState 的值为 "Hello, Hikage!"mDrawState 的值为属性资源 R.drawable.ic_my_drawable, 这时 TextViewImageView 的文本和图片将会自动更新。

自定义布局装载器

Hikage 支持自定义布局装载器并同时兼容 LayoutInflater.Factory2,你可以通过以下方式自定义在 Hikage 布局装载过程中的事件和监听。

示例如下

val factory = HikageFactory { parent, base, context, params ->
+    // 你可以在这里自定义布局装载器的行为
+    // 例如,使用你自己的方式创建一个新的 View 对象
+    // `parent` 为当前组件要添加到的 ViewGroup 对象,如果没有则为 `null`
+    // `base` 为上一个 HikageFactory 创建的 View 对象,如果没有则为 `null`
+    // `params` 对象中包含了组件 ID、AttributeSet 以及 View 的 Class 对象
+    val view = MyLayoutFactory.createView(context, params)
+    // 你还可以在这里对创建的 View 对象进行初始化和设置
+    view.setBackgroundColor(Color.RED)
+    // 返回创建的 View 对象
+    // 返回 `null` 将会使用默认的组件装载方式
+    view
+}
+

你还可以直接传入 LayoutInflater 对象以自动装载并使用其中的 LayoutInflater.Factory2

示例如下

// 假设这就是你的 LayoutInflater 对象
+val layoutInflater: LayoutInflater
+// 通过 LayoutInflater 创建 HikageFactory 对象
+val factory = HikageFactory(layoutInflater)
+

然后使用以下方式将其设置到你需要装载的 Hikage 布局上。

示例如下

// 假设这就是你的 Context
+val context: Context
+// 创建 Hikage 对象
+val hikage = Hikageable(
+    context = context,
+    factory = {
+        // 添加自定义的 HikageFactory 对象
+        add(factory)
+        // 直接添加
+        add { parent, base, context, params ->
+            // ...
+            null
+        }
+        // 连续添加多个
+        addAll(factories)
+    }
+) {
+    LinearLayout {
+        TextView {
+            text = "Hello, World!"
+        }
+    }
+}
+

小提示

Hikage 在默认装载时将会根据传入 Context 对象的 LayoutInflater.Factory2 对布局进行装载,如果你正在使用 AppCompatActivity, 布局中的组件将会自动被替换为对应的 Compat 组件或 Material 组件,与 XML 布局的特性保持一致。

如果你不需要默认生效此特性,可以使用以下方式全局关闭。

示例如下

Hikage.isAutoProcessWithFactory2 = false
+

预览布局

Hikage 支持在 Android Studio 中预览布局,借助于 Android Studio 自带的自定义 View 预览插件,你可以使用以下方式预览布局。

你只需要定义一个预览布局的自定义 View 并继承于 HikagePreview

示例如下

class MyLayoutPreview(context: Context, attrs: AttributeSet?) : HikagePreview(context, attrs) {
+
+    override fun build() = Hikageable {
+        LinearLayout {
+            TextView {
+                text = "Hello, World!"
+            }
+        }
+    }
+}
+

然后在你当前的窗口右侧应该会出现预览窗格,打开后点击 “Build & Refresh”,等待编译完成后将会自动显示预览。

小提示

HikagePreview 实现了 HikageBuilder 接口,你可以在 build 方法中返回任意的 Hikage 布局以进行预览。

特别注意

HikagePreview 仅支持在 Android Studio 中预览布局,请勿在运行时使用它或将其添加到任何 XML 布局中。

+ + + diff --git a/zh-cn/library/hikage-extension-betterandroid.html b/zh-cn/library/hikage-extension-betterandroid.html new file mode 100644 index 0000000..04745f2 --- /dev/null +++ b/zh-cn/library/hikage-extension-betterandroid.html @@ -0,0 +1,62 @@ + + + + + + + + + hikage-extension-betterandroid | Hikage + + + + + +

hikage-extension-betterandroid

Maven CentralMaven metadata URLAndroid Min SDK

这是 Hikage 针对 BetterAndroid在新窗口中打开 UI 组件相关功能的扩展依赖。

配置依赖

你可以使用如下方式将此模块添加到你的项目中。

SweetDependency (推荐)

在你的项目 SweetDependency 配置文件中添加依赖。

libraries:
+  com.highcapable.hikage:
+    hikage-extension-betterandroid:
+      version: +
+

在你的项目 build.gradle.kts 中配置依赖。

implementation(com.highcapable.hikage.hikage.extension.betterandroid)
+

Version Catalog

在你的项目 gradle/libs.versions.toml 中添加依赖。

[versions]
+hikage-extension-betterandroid = "<version>"
+
+[libraries]
+hikage-extension-betterandroid = { module = "com.highcapable.hikage:hikage-extension-betterandroid", version.ref = "hikage-extension-betterandroid" }
+

在你的项目 build.gradle.kts 中配置依赖。

implementation(libs.hikage.extension.betterandroid)
+

请将 <version> 修改为此文档顶部显示的版本。

传统方式

在你的项目 build.gradle.kts 中配置依赖。

implementation("com.highcapable.hikage:hikage-extension-betterandroid:<version>")
+

请将 <version> 修改为此文档顶部显示的版本。

功能介绍

你可以 点击这里在新窗口中打开 查看 KDoc。

适配器 (Adapter) 扩展

Hikage 为 BetterAndroid 提供的 适配器在新窗口中打开 提供了布局扩展功能,你可以直接在适配器的原始扩展方法上使用 Hikage 布局。

它使用了 BetterAndroid 提供的 ViewHolderDelegate 来创建扩展方法。

下面提供了一个基于 RecyclerView 的简单示例。

示例如下

// 假设这就是你需要绑定的数据集
+val listData = ArrayList<CustomBean>()
+// 创建并绑定到自定义的 RecyclerView.Adapter
+val adapter = recyclerView.bindAdapter<CustomBean> {
+    onBindData { listData }
+    onBindItemView(
+        Hikageable = {
+            TextView(id = "text_view") {
+                text = "Hello, World!"
+                textSize = 16f
+            }
+        }
+    ) { hikage, bean, position ->
+        hikage.get<TextView>("text_view").text = bean.name
+    }
+}
+
+ + + diff --git a/zh-cn/library/hikage-extension-compose.html b/zh-cn/library/hikage-extension-compose.html new file mode 100644 index 0000000..a712d84 --- /dev/null +++ b/zh-cn/library/hikage-extension-compose.html @@ -0,0 +1,65 @@ + + + + + + + + + hikage-extension-compose | Hikage + + + + + +

hikage-extension-compose

Maven CentralMaven metadata URLAndroid Min SDK

这是 Hikage 针对 Jetpack Compose 组件相关功能的扩展依赖。

配置依赖

你可以使用如下方式将此模块添加到你的项目中。

注意

此模块依赖于 Jetpack Compose 编译插件,请确保你的项目中已经集成了 Jetpack Compose 相关依赖,详情请参考 这里在新窗口中打开

SweetDependency (推荐)

在你的项目 SweetDependency 配置文件中添加依赖。

libraries:
+  com.highcapable.hikage:
+    hikage-extension-compose:
+      version: +
+

在你的项目 build.gradle.kts 中配置依赖。

implementation(com.highcapable.hikage.hikage.extension.compose)
+

Version Catalog

在你的项目 gradle/libs.versions.toml 中添加依赖。

[versions]
+hikage-extension-compose = "<version>"
+
+[libraries]
+hikage-extension-compose = { module = "com.highcapable.hikage:hikage-extension-compose", version.ref = "hikage-extension-compose" }
+

在你的项目 build.gradle.kts 中配置依赖。

implementation(libs.hikage.extension.compose)
+

请将 <version> 修改为此文档顶部显示的版本。

传统方式

在你的项目 build.gradle.kts 中配置依赖。

implementation("com.highcapable.hikage:hikage-extension-compose:<version>")
+

请将 <version> 修改为此文档顶部显示的版本。

功能介绍

你可以 点击这里在新窗口中打开 查看 KDoc。

在 Hikage 中使用 Jetpack Compose

你可以使用以下方式在一个 Hikage 布局中嵌入 Jetpack Compose 组件。

示例如下

Hikageable {
+   ComposeView(
+       lparams = LayoutParams(matchParent = true)
+   ) {
+       Text("Hello, World!")
+   }
+}
+

在 Jetpack Compose 中使用 Hikage

你可以使用以下方式在一个 Jetpack Compose 布局中嵌入 Hikage 组件。

示例如下

Column(
+   modifier = Modifier.fillMaxSize()
+) {
+    HikageView {
+        TextView(
+            lparams = LayoutParams(matchParent = true)
+        ) {
+            text = "Hello, World!"
+            textSize = 20f
+        }
+    }
+}
+
+ + + diff --git a/zh-cn/library/hikage-extension.html b/zh-cn/library/hikage-extension.html new file mode 100644 index 0000000..3b08c98 --- /dev/null +++ b/zh-cn/library/hikage-extension.html @@ -0,0 +1,146 @@ + + + + + + + + + hikage-extension | Hikage + + + + + +

hikage-extension

Maven CentralMaven metadata URLAndroid Min SDK

这是 Hikage 针对 UI 组件相关功能的扩展依赖。

配置依赖

你可以使用如下方式将此模块添加到你的项目中。

SweetDependency (推荐)

在你的项目 SweetDependency 配置文件中添加依赖。

libraries:
+  com.highcapable.hikage:
+    hikage-extension:
+      version: +
+

在你的项目 build.gradle.kts 中配置依赖。

implementation(com.highcapable.hikage.hikage.extension)
+

Version Catalog

在你的项目 gradle/libs.versions.toml 中添加依赖。

[versions]
+hikage-extension = "<version>"
+
+[libraries]
+hikage-extension = { module = "com.highcapable.hikage:hikage-extension", version.ref = "hikage-extension" }
+

在你的项目 build.gradle.kts 中配置依赖。

implementation(libs.hikage.extension)
+

请将 <version> 修改为此文档顶部显示的版本。

传统方式

在你的项目 build.gradle.kts 中配置依赖。

implementation("com.highcapable.hikage:hikage-extension:<version>")
+

请将 <version> 修改为此文档顶部显示的版本。

功能介绍

你可以 点击这里在新窗口中打开 查看 KDoc。

Activity

Hikage 为 Activity 提供了更好用的扩展,在 Activity 中创建 Hikage 将会变得更加简单。

示例如下

class MainActivity : AppCompatActivity() {
+
+    override fun onCreate(savedInstanceState: Bundle?) {
+        super.onCreate(savedInstanceState)
+        setContentView {
+            LinearLayout(
+                lparams = LayoutParams(matchParent = true) {
+                    topMargin = 16.dp
+                },
+                init = {
+                    orientation = LinearLayout.VERTICAL
+                    gravity = Gravity.CENTER
+                }
+            ) {
+                TextView {
+                    text = "Hello, World!"
+                    textSize = 16f
+                    gravity = Gravity.CENTER
+                }
+            }
+        }
+    }
+}
+

借助 HikagesetContentView 扩展方法,你可以像 Jetpack Compose 一样使用 setContent 方法来设置布局。

Window

Window 中使用 Hikage 创建布局与 Activity 保持一致,你只需要使用 setContentView 方法传入一个 Hikage 布局即可。

Dialog

如果你想直接在 AlertDialog 中使用 Hikage 创建布局,现在你可以使用以下方案更加简单地进行。

示例如下

// 假设这就是你的 Context
+val context: Context
+// 创建对话框并显示
+AlertDialog.Builder(context)
+    .setTitle("Hello, World!")
+    .setView {
+        TextView {
+            text = "Hello, World!"
+            textSize = 16f
+        }
+    }
+    .show()
+

AlertDialog 中使用 Hikage 创建布局,你只需要使用 setView 方法传入一个 Hikage 布局即可。

如果你是继承于 Dialog 进行自定义,那么你可以和像在 Activity 一样使用 setContentView 方法。

示例如下

class CustomDialog(context: Context) : Dialog(context) {
+
+    override fun onCreate(savedInstanceState: Bundle?) {
+        super.onCreate(savedInstanceState)
+        setContentView {
+            LinearLayout(
+                lparams = LayoutParams(matchParent = true) {
+                    topMargin = 16.dp
+                },
+                init = {
+                    orientation = LinearLayout.VERTICAL
+                    gravity = Gravity.CENTER
+                }
+            ) {
+                TextView {
+                    text = "Hello, World!"
+                    textSize = 16f
+                    gravity = Gravity.CENTER
+                }
+            }
+        }
+    }
+}
+

你可以继承于 PopupWindow 进行自定义,然后使用 Hikage 创建布局,你可以和像在 Activity 一样使用 setContentView 方法。

示例如下

class CustomPopupWindow(context: Context) : PopupWindow(context) {
+
+    init {
+        setContentView(context) {
+            LinearLayout(
+                lparams = LayoutParams(matchParent = true) {
+                    topMargin = 16.dp
+                },
+                init = {
+                    orientation = LinearLayout.VERTICAL
+                    gravity = Gravity.CENTER
+                }
+            ) {
+                TextView {
+                    text = "Hello, World!"
+                    textSize = 16f
+                    gravity = Gravity.CENTER
+                }
+            }
+        }
+    }
+}
+

特别注意

创建 Hikage 布局的 PopupWindow 需要使用 Context 构造方法进行初始化,如果当前无法立即获取到 Context,请对 setContentView 方法传入 Context 实例。

ViewGroup

Hikage 对 ViewGroupaddView 方法进行了扩展,你可以直接使用 Hikage 布局来为当前 ViewGroup 快速添加新的布局。

示例如下

// 假设这就是你的 ViewGroup
+val root: FrameLayout
+// 添加 Hikage 布局
+root.addView {
+    TextView {
+        text = "Hello, World!"
+        textSize = 16f
+    }
+}
+

或者,在自定义 View 中使用。

示例如下

class CustomView(context: Context, attrs: AttributeSet? = null) : FrameLayout(context, attrs) {
+
+    init {
+        addView {
+            TextView {
+                text = "Hello, World!"
+                textSize = 16f
+            }
+        }
+    }
+}
+
+ + + diff --git a/zh-cn/library/hikage-widget-androidx.html b/zh-cn/library/hikage-widget-androidx.html new file mode 100644 index 0000000..400682c --- /dev/null +++ b/zh-cn/library/hikage-widget-androidx.html @@ -0,0 +1,61 @@ + + + + + + + + + hikage-widget-androidx | Hikage + + + + + +

hikage-widget-androidx

Maven CentralMaven metadata URLAndroid Min SDK

这是 Hikage 针对 Jetpack Compact 组件相关功能的扩展依赖。

配置依赖

你可以使用如下方式将此模块添加到你的项目中。

SweetDependency (推荐)

在你的项目 SweetDependency 配置文件中添加依赖。

libraries:
+  com.highcapable.hikage:
+    hikage-widget-androidx:
+      version: +
+

在你的项目 build.gradle.kts 中配置依赖。

implementation(com.highcapable.hikage.hikage.widget.androidx)
+

Version Catalog

在你的项目 gradle/libs.versions.toml 中添加依赖。

[versions]
+hikage-widget-androidx = "<version>"
+
+[libraries]
+hikage-widget-androidx = { module = "com.highcapable.hikage:hikage-widget-androidx", version.ref = "hikage-widget-androidx" }
+

在你的项目 build.gradle.kts 中配置依赖。

implementation(libs.hikage.widget.androidx)
+

请将 <version> 修改为此文档顶部显示的版本。

传统方式

在你的项目 build.gradle.kts 中配置依赖。

implementation("com.highcapable.hikage:hikage-widget-androidx:<version>")
+

请将 <version> 修改为此文档顶部显示的版本。

功能介绍

这个依赖中继承了来自 Jetpack Compact 中的可用组件,你可以直接引用它们到 Hikage 中使用。

示例如下

LinearLayoutCompact(
+    lparams = LayoutParams(matchParent = true) {
+        topMargin = 16.dp
+    },
+    init = {
+        orientation = LinearLayoutCompat.VERTICAL
+        gravity = Gravity.CENTER
+    }
+) {
+    AppCompatTextView {
+        text = "Hello, World!"
+        textSize = 16f
+        gravity = Gravity.CENTER
+    }
+}
+
+ + + diff --git a/zh-cn/library/hikage-widget-material.html b/zh-cn/library/hikage-widget-material.html new file mode 100644 index 0000000..f01a8a0 --- /dev/null +++ b/zh-cn/library/hikage-widget-material.html @@ -0,0 +1,77 @@ + + + + + + + + + hikage-widget-material | Hikage + + + + + +

hikage-widget-material

Maven CentralMaven metadata URLAndroid Min SDK

这是 Hikage 针对 Google Material (MDC) 组件相关功能的扩展依赖。

配置依赖

你可以使用如下方式将此模块添加到你的项目中。

SweetDependency (推荐)

在你的项目 SweetDependency 配置文件中添加依赖。

libraries:
+  com.highcapable.hikage:
+    hikage-widget-material:
+      version: +
+

在你的项目 build.gradle.kts 中配置依赖。

implementation(com.highcapable.hikage.hikage.widget.material)
+

Version Catalog

在你的项目 gradle/libs.versions.toml 中添加依赖。

[versions]
+hikage-widget-material = "<version>"
+
+[libraries]
+hikage-widget-material = { module = "com.highcapable.hikage:hikage-widget-material", version.ref = "hikage-widget-material" }
+

在你的项目 build.gradle.kts 中配置依赖。

implementation(libs.hikage.widget.material)
+

请将 <version> 修改为此文档顶部显示的版本。

传统方式

在你的项目 build.gradle.kts 中配置依赖。

implementation("com.highcapable.hikage:hikage-widget-material:<version>")
+

请将 <version> 修改为此文档顶部显示的版本。

功能介绍

这个依赖中继承了来自 Google Material (MDC) 中的可用组件,你可以直接引用它们到 Hikage 中使用。

示例如下

LinearLayout(
+    lparams = LayoutParams(matchParent = true) {
+        topMargin = 16.dp
+    },
+    init = {
+        orientation = LinearLayout.VERTICAL
+        gravity = Gravity.CENTER
+    }
+) {
+    MaterialTextView {
+        text = "Hello, World!"
+        textSize = 16f
+        gravity = Gravity.CENTER
+    }
+    MaterialButton {
+        text = "Hello, World!"
+        textSize = 16f
+        gravity = Gravity.CENTER
+    }
+    TextInputLayout(
+        lparams = LayoutParams {
+            topMargin = 16.dp
+        },
+        init = {
+            minWidth = 200.dp
+            hint = "Enter your text"
+        }
+    ) {
+        TextInputEditText()
+    }
+}
+
+ + +