diff --git a/.editorconfig b/.editorconfig
index 6612cab..072ce38 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -8,62 +8,92 @@ indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true
max_line_length = 120
-ij_visual_guides = 100
+# Uncomment if you want to show non-strict recommended guideline
+#ij_visual_guides = 100
-## General
+# General
ij_continuation_indent_size = 8
ij_smart_tabs = false
ij_wrap_on_typing = false
ij_any_keep_indents_on_empty_lines = false
-## Formatter Control
+# Formatter
ij_formatter_tags_enabled = true
ij_formatter_on_tag = @formatter:on
ij_formatter_off_tag = @formatter:off
-[{*.kt, *.kts}]
-ij_kotlin_code_style_defaults = KOTLIN_OFFICIAL
-ij_continuation_indent_size = 4 # To match ktlint settings
-ij_kotlin_keep_indents_on_empty_lines = false
+[{*.kt,*.kts}]
+# Tabs and Indents
+# continuation_indent_size = 4 to match ktlint settings
+ij_kotlin_continuation_indent_size = 4
+ij_kotlin_keep_indents_on_empty_lines = unset
+
+# Spaces
+## Before parentheses
+ij_kotlin_space_before_if_parentheses = true
+ij_kotlin_space_before_for_parentheses = true
+ij_kotlin_space_before_while_parentheses = true
+ij_kotlin_space_before_catch_parentheses = true
+ij_kotlin_space_before_when_parentheses = true
+## Around operators
+ij_kotlin_spaces_around_assignment_operators = true
+ij_kotlin_spaces_around_logical_operators = true
+ij_kotlin_spaces_around_equality_operators = true
+ij_kotlin_spaces_around_relational_operators = true
+ij_kotlin_spaces_around_additive_operators = true
+ij_kotlin_spaces_around_multiplicative_operators = true
+ij_kotlin_spaces_around_unary_operator = false
+ij_kotlin_spaces_around_range = false
+## Other
+ij_kotlin_space_before_comma = false
+ij_kotlin_space_after_comma = true
+ij_kotlin_space_before_type_colon = false
+ij_kotlin_space_after_type_colon = true
+ij_kotlin_space_before_extend_colon = true
+ij_kotlin_space_after_extend_colon = true
+ij_kotlin_insert_whitespaces_in_simple_one_line_method = true
+ij_kotlin_spaces_around_function_type_arrow = true
+ij_kotlin_spaces_around_when_arrow = true
+ij_kotlin_space_before_lambda_arrow = true
-## Wrapping and Braces
-# Keep when reformatting
+# Wrapping and Braces
+## Keep when reformatting
ij_kotlin_keep_line_breaks = true
ij_kotlin_keep_first_column_comment = true
-# Extends/implements list
+## Extends/implements list
ij_kotlin_extends_list_wrap = normal
ij_kotlin_align_multiline_extends_list = false
ij_kotlin_continuation_indent_in_supertype_lists = false
-# Function declaration parameters
+## Function declaration parameters
ij_kotlin_method_parameters_wrap = on_every_item
ij_kotlin_align_multiline_parameters = true
ij_kotlin_method_parameters_new_line_after_left_paren = true
ij_kotlin_method_parameters_right_paren_on_new_line = true
ij_kotlin_continuation_indent_in_parameter_lists = false
-# Function call arguments
+## Function call arguments
ij_kotlin_call_parameters_wrap = on_every_item
ij_kotlin_align_multiline_parameters_in_calls = false
ij_kotlin_call_parameters_new_line_after_left_paren = true
ij_kotlin_call_parameters_right_paren_on_new_line = true
ij_kotlin_continuation_indent_in_argument_lists = false
-# Function parentheses
+## Function parentheses
ij_kotlin_align_multiline_method_parentheses = false
-# Chained function calls
+## Chained function calls
ij_kotlin_method_call_chain_wrap = normal
ij_kotlin_wrap_first_method_in_call_chain = false
ij_kotlin_continuation_indent_for_chained_calls = false
-# 'if()' statement
+## 'if()' statement
ij_kotlin_else_on_new_line = false
ij_kotlin_if_rparen_on_new_line = true
ij_kotlin_continuation_indent_in_if_conditions = false
-# 'do ... while()' statement
+## 'do ... while()' statement
ij_kotlin_while_on_new_line = false
-# 'try' statement
+## 'try' statement
ij_kotlin_catch_on_new_line = false
ij_kotlin_finally_on_new_line = false
-# Binary expressions
+## Binary expressions
ij_kotlin_align_multiline_binary_operation = false
-# Wraps
+## Wraps
ij_kotlin_assignment_wrap = normal
ij_kotlin_enum_constants_wrap = off
ij_kotlin_class_annotation_wrap = split_into_lines
@@ -71,75 +101,66 @@ ij_kotlin_method_annotation_wrap = split_into_lines
ij_kotlin_field_annotation_wrap = split_into_lines
ij_kotlin_parameter_annotation_wrap = off
ij_kotlin_variable_annotation_wrap = off
-# 'when' statements
+## 'when' statements
ij_kotlin_align_in_columns_case_branch = false
-# Braces placement
+ij_kotlin_line_break_after_multiline_when_entry = true
+## Braces placement
ij_kotlin_lbrace_on_next_line = false
-# Expression body functions
+## Expression body functions
ij_kotlin_wrap_expression_body_functions = 1
ij_kotlin_continuation_indent_for_expression_bodies = false
-# Elvis expressions
+## Elvis expressions
ij_kotlin_wrap_elvis_expressions = 1
ij_kotlin_continuation_indent_in_elvis = false
-## Spaces
-# Before Parentheses
-ij_kotlin_space_before_if_parentheses = true
-ij_kotlin_space_before_for_parentheses = true
-ij_kotlin_space_before_while_parentheses = true
-ij_kotlin_space_before_catch_parentheses = true
-ij_kotlin_space_before_when_parentheses = true
-# Around Operators
-ij_kotlin_spaces_around_assignment_operators = true
-ij_kotlin_spaces_around_logical_operators = true
-ij_kotlin_spaces_around_equality_operators = true
-ij_kotlin_spaces_around_relational_operators = true
-ij_kotlin_spaces_around_additive_operators = true
-ij_kotlin_spaces_around_multiplicative_operators = true
-ij_kotlin_spaces_around_unary_operator = false
-ij_kotlin_spaces_around_range = false
-# Other
-ij_kotlin_space_before_comma = false
-ij_kotlin_space_after_comma = true
-ij_kotlin_space_before_type_colon = false
-ij_kotlin_space_after_type_colon = true
-ij_kotlin_space_after_extend_colon = true
-ij_kotlin_space_before_extend_colon = true
-ij_kotlin_insert_whitespaces_in_simple_one_line_method = true
-ij_kotlin_spaces_around_function_type_arrow = true
-ij_kotlin_spaces_around_when_arrow = true
-ij_kotlin_space_before_lambda_arrow = true
-
-## Blank Lines
-# Keep Maximum Blank Lines
+# Blank Lines
+## Keep maximum blank lines
ij_kotlin_keep_blank_lines_in_declarations = 1
ij_kotlin_keep_blank_lines_in_code = 1
ij_kotlin_keep_blank_lines_before_right_brace = 0
-# Minimum Blank Lines
+## Minimum blank lines
ij_kotlin_blank_lines_after_class_header = 0
ij_kotlin_blank_lines_around_block_when_branches = 1
ij_kotlin_blank_lines_before_declaration_with_comment_or_annotation_on_separate_line = 1
-## Imports
+# Imports
ij_kotlin_name_count_to_use_star_import = 5
ij_kotlin_name_count_to_use_star_import_for_members = 3
ij_kotlin_import_nested_classes = false
-ij_kotlin_packages_to_use_import_on_demand = java.util.*, kotlinx.android.synthetic.**, io.ktor.**
-ij_kotlin_imports_layout = *, java.**, javax.**, kotlin.**, ^
+ij_kotlin_packages_to_use_import_on_demand = java.util.*,kotlinx.android.synthetic.**,io.ktor.**
+ij_kotlin_imports_layout = *,java.**,javax.**,kotlin.**,^
-## Other
+# Other
+## Trailing comma
ij_kotlin_allow_trailing_comma = true
-ij_kotlin_allow_trailing_comma_on_call_site = true
+ij_kotlin_allow_trailing_comma_on_call_site = false
-## Code generation
+# Code generation
+## Comment code
ij_kotlin_line_comment_at_first_column = true
ij_kotlin_line_comment_add_space = false
+ij_kotlin_line_comment_add_space_on_reformat = false
ij_kotlin_block_comment_at_first_column = true
+ij_kotlin_block_comment_add_space = false
-[**/res/**.xml]
-ij_continuation_indent_size = 4
+# Compose
+ij_kotlin_use_custom_formatting_for_modifiers = true
-## Other
+# Load/Save
+ij_kotlin_code_style_defaults = KOTLIN_OFFICIAL
+
+[*.kts]
+# Always use wildcard imports in scripts
+ij_kotlin_name_count_to_use_star_import = 2
+
+# EditorConfig can not set some of XML code style options.
+# Remember to set default Android XML code style: Editor > Code Style > XML > Set from... -> Android
+[{**/res/**.xml,**/AndroidManifest.xml}]
+# Tabs and Indents
+ij_xml_continuation_indent_size = 4
+ij_xml_keep_indents_on_empty_lines = unset
+
+# Other
ij_xml_keep_line_breaks = false
ij_xml_keep_line_breaks_in_text = true
ij_xml_keep_blank_lines = 2
@@ -148,31 +169,60 @@ ij_xml_text_wrap = normal
ij_xml_align_text = false
ij_xml_align_attributes = false
ij_xml_keep_whitespaces = false
-# Spaces
+## Spaces
ij_xml_space_around_equals_in_attribute = false
ij_xml_space_after_tag_name = false
ij_xml_space_inside_empty_tag = true
-# CDATA
+## CDATA
ij_xml_keep_whitespaces_around_cdata = preserve
ij_xml_keep_whitespaces_inside_cdata = false
-## Code Generation
+# Code Generation
ij_xml_line_comment_at_first_column = true
ij_xml_block_comment_at_first_column = true
+ij_xml_block_comment_add_space = false
-## Android
+# Android
ij_xml_use_custom_settings = true
[*.md]
trim_trailing_whitespace = false
-[{*.yaml, *.yml}]
+# Wrapping and Braces
+ij_markdown_wrap_text_if_long = false
+ij_markdown_wrap_text_inside_blockquotes = false
+## When reformatting
+ij_markdown_keep_line_breaks_inside_text_blocks = true
+ij_markdown_insert_quote_arrows_on_wrap = true
+ij_markdown_format_tables = true
+
+# Tabs and Indents
+ij_markdown_keep_indents_on_empty_lines = unset
+
+# Blank Lines
+## Keep maximum blank lines
+ij_markdown_max_lines_around_header = 1
+ij_markdown_max_lines_around_block_elements = 1
+ij_markdown_max_lines_between_paragraphs = 1
+## Minimum blank lines
+ij_markdown_min_lines_around_header = 1
+ij_markdown_min_lines_around_block_elements = 1
+ij_markdown_min_lines_between_paragraphs = 1
+
+# Spaces
+## Force one space
+ij_markdown_force_one_space_between_words = true
+ij_markdown_force_one_space_after_header_symbol = true
+ij_markdown_force_one_space_after_list_bullet = true
+ij_markdown_force_one_space_after_blockquote_symbol = true
+
+[{*.yaml,*.yml}]
indent_size = 2
-ij_yaml_spaces_within_brackets = false
-ij_yaml_keep_indents_on_empty_lines = false
+ij_yaml_keep_indents_on_empty_lines = unset
ij_yaml_keep_line_breaks = true
+ij_yaml_spaces_within_brackets = false
-[{*.bash, *.sh, *.zsh}]
+[{*.bash,*.sh,*.zsh}]
indent_size = 2
tab_width = 2
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 3ac81a9..6ffbeb8 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -16,52 +16,50 @@ jobs:
steps:
- name: Checkout sources
- uses: actions/checkout@v2
+ uses: actions/checkout@v4
- name: Setup Java
- uses: actions/setup-java@v1
+ uses: actions/setup-java@v4
with:
- java-version: 11
+ distribution: 'temurin'
+ java-version: 17
+
+ - name: Setup Gradle
+ uses: gradle/actions/setup-gradle@v3
- name: Run Check
- uses: eskatos/gradle-command-action@v1
- with:
- arguments: check -xlint
- distributions-cache-enabled: true
- dependencies-cache-enabled: true
+ run: ./gradlew check -xlint
- name: Run Detekt
- uses: eskatos/gradle-command-action@v1
- with:
- arguments: detektAll detektReleaseAll
+ run: ./gradlew detektAll detektReleaseAll
publish:
- name: Publish
+ name: Publish KTX
needs: check
runs-on: ubuntu-latest
if: ${{ startsWith(github.ref, 'refs/tags/') }}
steps:
- name: Checkout sources
- uses: actions/checkout@v2
+ uses: actions/checkout@v4
- name: Setup Java
- uses: actions/setup-java@v1
+ uses: actions/setup-java@v4
with:
- java-version: 11
+ distribution: 'temurin'
+ java-version: 17
- name: Get module name from tag
id: get-module-name
run: |
tag=${GITHUB_REF#refs/tags/}
- echo "::set-output name=result::${tag/-v*}"
+ echo "result=${tag/-v*}" >> "$GITHUB_OUTPUT"
+
+ - name: Setup Gradle
+ uses: gradle/actions/setup-gradle@v3
- name: Run Publish
- uses: eskatos/gradle-command-action@v1
- with:
- arguments: :${{ steps.get-module-name.outputs.result }}:publish
- distributions-cache-enabled: true
- dependencies-cache-enabled: true
+ run: ./gradlew :ktx:${{ steps.get-module-name.outputs.result }}:publish
env:
ORG_GRADLE_PROJECT_githubPackagesUsername: ${{ github.actor }}
ORG_GRADLE_PROJECT_githubPackagesPassword: ${{ secrets.GITHUB_TOKEN }}
diff --git a/README.md b/README.md
index 23d7cad..c57c82e 100644
--- a/README.md
+++ b/README.md
@@ -1,25 +1,25 @@
-# Redmadrobot Android KTX
- [![Build Status](https://img.shields.io/github/workflow/status/RedMadRobot/redmadrobot-android-ktx/CI/main?style=flat-square)][ci] [![License](https://img.shields.io/github/license/RedMadRobot/redmadrobot-android-ktx?style=flat-square)][license]
+# Gears :gear:
-Missing Android KTX extensions.
+[![Build Status](https://img.shields.io/github/actions/workflow/status/RedMadRobot/gears-android/main.yml?branch=main&style=flat-square)][ci]
+[![License](https://img.shields.io/github/license/RedMadRobot/gears-android?style=flat-square)][license]
-> :exclamation: It is not replacement of [Android KTX][ktx], it is just additional extensions and delegates that we found useful.
+**Gears** — small libraries used in red_mad_robot to build awesome Android applications.
+Gears could be used together or alone.
---
-
-- [Modules](#modules)
-- [Versioning](#versioning)
+- [Libraries](#libraries)
+- [Why Gears?](#why-gears)
- [Contribution](#contribution)
- [License](#license)
-## Modules
+## Libraries
-Module's pages contain README with detailed description of module.
+### :hammer_and_wrench: **[red_mad_robot Android KTX](ktx/)**
- [![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/core-ktx?style=flat-square&label=core-ktx)][core-ktx] - Extensions in addition to androidx core-ktx
- [![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/fragment-ktx?style=flat-square&label=fragment-ktx)][fragment-ktx] - A set of extensions in addition to androidx fragment-ktx
@@ -28,17 +28,13 @@ Module's pages contain README with detailed description of module.
- [![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/resources-ktx?style=flat-square&label=resources-ktx)][resources-ktx] - A set of extensions for accessing resources
- [![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/viewbinding-ktx?style=flat-square&label=viewbinding-ktx)][viewbinding-ktx] - A set of extensions for dealing with ViewBinding
-## Versioning
+## Why Gears?
-Versions of modules contains two parts separated with `-` (dash).
-First part is version of androidx library, and second - version of module starting from 0.
-When first part of version increased, second part should be set to 0.
+The goal of this monorepository is to simplify creation and publication of libraries.
+These libraries, which we are calling "gears," are small but important parts of our tech stack that we want to share between our projects.
-```
-com.redmadrobot.extensions:fragment-args-ktx:2.2.0-0
-```
-- `2.2.0` - version of `androidx.fragment:fragment`
-- `0` - version of extensions. First version of extensions for `fragment:2.2.0`
+Libraries may be initially developed here and then moved out from this repository as part of their lifecycle.
+Large libraries or those with unique build infrastructure should be moved into a separate repository.
## Contribution
@@ -49,14 +45,13 @@ For major changes, please open a [discussion][discussions] first to discuss what
[MIT][license]
-[ktx]: https://developer.android.com/kotlin/ktx
-
-[core-ktx]: core-ktx
-[fragment-ktx]: fragment-ktx
-[fragment-args-ktx]: fragment-args-ktx
-[lifecycle-livedata-ktx]: lifecycle-livedata-ktx
-[resources-ktx]: resources-ktx
-[viewbinding-ktx]: viewbinding-ktx
-[ci]: https://github.com/RedMadRobot/redmadrobot-android-ktx/actions
-[discussions]: https://github.com/RedMadRobot/redmadrobot-android-ktx/discussions
+[core-ktx]: ktx/core-ktx/
+[fragment-ktx]: ktx/fragment-ktx/
+[fragment-args-ktx]: ktx/fragment-args-ktx/
+[lifecycle-livedata-ktx]: ktx/lifecycle-livedata-ktx/
+[resources-ktx]: ktx/resources-ktx/
+[viewbinding-ktx]: ktx/viewbinding-ktx/
[license]: LICENSE
+
+[ci]: https://github.com/RedMadRobot/gears-android/actions?query=branch%3Amain++
+[discussions]: https://github.com/RedMadRobot/gears-android/discussions
diff --git a/buildSrc/src/main/kotlin/convention.library.ktx.gradle.kts b/buildSrc/src/main/kotlin/convention.library.ktx.gradle.kts
new file mode 100644
index 0000000..b99182f
--- /dev/null
+++ b/buildSrc/src/main/kotlin/convention.library.ktx.gradle.kts
@@ -0,0 +1,11 @@
+import com.redmadrobot.build.dsl.kotlinCompile
+
+plugins {
+ id("convention.library.android")
+}
+
+kotlinCompile {
+ kotlinOptions {
+ moduleName = "redmadrobot.${project.name}"
+ }
+}
diff --git a/buildSrc/src/main/kotlin/convention.publishing.gradle.kts b/buildSrc/src/main/kotlin/convention.publishing.gradle.kts
index edfdcc4..5c0bcd6 100644
--- a/buildSrc/src/main/kotlin/convention.publishing.gradle.kts
+++ b/buildSrc/src/main/kotlin/convention.publishing.gradle.kts
@@ -5,13 +5,11 @@ plugins {
id("com.redmadrobot.publish")
}
-group = "com.redmadrobot.extensions"
-
redmadrobot {
publishing {
signArtifacts = !isRunningOnCi
pom {
- setGitHubProject("RedMadRobot/redmadrobot-android-ktx")
+ setGitHubProject("RedMadRobot/gears-android")
licenses {
mit()
@@ -19,7 +17,7 @@ redmadrobot {
developers {
developer(id = "osipxd", name = "Osip Fatkullin", email = "o.fatkullin@redmadrobot.com")
- developer(id = "sonulen", name = "Andrey Tolmachev", email = "sonulen@gmail.com")
+ developer(id = "sonulen", name = "Andrey Tolmachev", email = "a.tolmachev@redmadrobot.com")
}
}
}
@@ -27,13 +25,7 @@ redmadrobot {
publishing {
repositories {
- if (isRunningOnCi) githubPackages("RedMadRobot/redmadrobot-android-ktx")
+ if (isRunningOnCi) githubPackages("RedMadRobot/gears-android")
if (isReleaseVersion && credentialsExist("ossrh")) ossrh()
}
}
-
-kotlinCompile {
- kotlinOptions {
- moduleName = "redmadrobot.${project.name}"
- }
-}
diff --git a/core-ktx/src/main/AndroidManifest.xml b/core-ktx/src/main/AndroidManifest.xml
deleted file mode 100644
index e23a623..0000000
--- a/core-ktx/src/main/AndroidManifest.xml
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/fragment-args-ktx/src/main/AndroidManifest.xml b/fragment-args-ktx/src/main/AndroidManifest.xml
deleted file mode 100644
index a98195a..0000000
--- a/fragment-args-ktx/src/main/AndroidManifest.xml
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/fragment-ktx/CHANGELOG.md b/fragment-ktx/CHANGELOG.md
deleted file mode 100644
index e4c1405..0000000
--- a/fragment-ktx/CHANGELOG.md
+++ /dev/null
@@ -1,17 +0,0 @@
-## Unreleased
-
-## [1.3.6-0] (2021-10-02)
-
-### Dependencies
-
-- androidx.fragment 1.3.5 -> 1.3.6
-- androidx.activity 1.2.3 -> 1.3.1
-- kotlin-stdlib 1.5.20 -> 1.5.31
-
-## [1.3.5-0] (2021-06-26)
-
-First release
-
-
-[1.3.6-0]: https://github.com/RedMadRobot/redmadrobot-android-ktx/compare/fragment-args-ktx-v1.3.6-0...fragment-ktx-v1.3.6-0
-[1.3.5-0]: https://github.com/RedMadRobot/redmadrobot-android-ktx/compare/fragment-args-ktx-v1.3.5-0...fragment-ktx-v1.3.5-0
diff --git a/fragment-ktx/src/main/AndroidManifest.xml b/fragment-ktx/src/main/AndroidManifest.xml
deleted file mode 100644
index dc00170..0000000
--- a/fragment-ktx/src/main/AndroidManifest.xml
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index b65e4e1..b23be7a 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -1,8 +1,8 @@
[versions]
-androidGradlePlugin = "7.4.2"
+androidGradlePlugin = "8.4.0"
assertj-core = "3.25.1"
androidx-arch-core = "2.2.0"
-viewbinding = "8.3.2"
+viewbinding = "8.4.0"
[libraries]
androidx-viewbinding = { module = "androidx.databinding:viewbinding", version.ref = "viewbinding" }
diff --git a/ktx/README.md b/ktx/README.md
new file mode 100644
index 0000000..70700ef
--- /dev/null
+++ b/ktx/README.md
@@ -0,0 +1,51 @@
+# red_mad_robot Android KTX
+
+[![License](https://img.shields.io/github/license/RedMadRobot/gears-android?style=flat-square)][license]
+
+Missing Android KTX extensions.
+
+> [!IMPORTANT]
+> It is not a replacement of [Android KTX][ktx], it is just additional extensions and delegates that we found useful.
+
+---
+
+
+
+- [Modules](#modules)
+- [Versioning](#versioning)
+
+
+
+## Modules
+
+> [!TIP]
+> Click on a badge to open library documentation.
+
+- [![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/core-ktx?style=flat-square&label=core-ktx)][core-ktx] - Extensions in addition to androidx core-ktx
+- [![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/fragment-ktx?style=flat-square&label=fragment-ktx)][fragment-ktx] - A set of extensions in addition to androidx fragment-ktx
+- [![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/fragment-args-ktx?style=flat-square&label=fragment-args-ktx)][fragment-args-ktx] - Delegates for safe dealing with fragments' arguments
+- [![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/lifecycle-livedata-ktx?style=flat-square&label=lifecycle-livedata-ktx)][lifecycle-livedata-ktx] - Extended set of extensions for dealing with `LiveData`
+- [![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/resources-ktx?style=flat-square&label=resources-ktx)][resources-ktx] - A set of extensions for accessing resources
+- [![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/viewbinding-ktx?style=flat-square&label=viewbinding-ktx)][viewbinding-ktx] - A set of extensions for dealing with ViewBinding
+
+## Versioning
+
+Versions of modules contains two parts separated with `-` (dash).
+First part is version of androidx library, and second - version of module starting from 0.
+When first part of version increased, second part should be set to 0.
+
+```
+com.redmadrobot.extensions:fragment-args-ktx:2.2.0-0
+```
+- `2.2.0` - version of `androidx.fragment:fragment`
+- `0` - version of extensions. First version of extensions for `fragment:2.2.0`
+
+[ktx]: https://developer.android.com/kotlin/ktx
+
+[core-ktx]: core-ktx
+[fragment-ktx]: fragment-ktx
+[fragment-args-ktx]: fragment-args-ktx
+[lifecycle-livedata-ktx]: lifecycle-livedata-ktx
+[resources-ktx]: resources-ktx
+[viewbinding-ktx]: viewbinding-ktx
+[license]: ../LICENSE
diff --git a/ktx/build.gradle.kts b/ktx/build.gradle.kts
new file mode 100644
index 0000000..182e20b
--- /dev/null
+++ b/ktx/build.gradle.kts
@@ -0,0 +1,3 @@
+// For some reason gradle.properties in this project doesn't affect its subprojects
+val ktxGroup = group
+subprojects { group = ktxGroup }
diff --git a/core-ktx/CHANGELOG.md b/ktx/core-ktx/CHANGELOG.md
similarity index 72%
rename from core-ktx/CHANGELOG.md
rename to ktx/core-ktx/CHANGELOG.md
index 6221b8c..7042078 100644
--- a/core-ktx/CHANGELOG.md
+++ b/ktx/core-ktx/CHANGELOG.md
@@ -53,7 +53,7 @@
First release
-[1.6.0-2]: https://github.com/RedMadRobot/redmadrobot-android-ktx/compare/core-ktx-v1.6.0-1...ec4d0fb8
-[1.6.0-1]: https://github.com/RedMadRobot/redmadrobot-android-ktx/compare/resources-ktx-v1.3.1-0...core-ktx-v1.6.0-1
-[1.6.0-0]: https://github.com/RedMadRobot/redmadrobot-android-ktx/compare/viewbinding-ktx-v4.2.1-0...core-ktx-v1.6.0-0
-[1.5.0-0]: https://github.com/RedMadRobot/redmadrobot-android-ktx/compare/e6b11af4...core-ktx-v1.5.0-0
+[1.6.0-2]: https://github.com/RedMadRobot/gears-android/compare/core-ktx-v1.6.0-1...ec4d0fb8
+[1.6.0-1]: https://github.com/RedMadRobot/gears-android/compare/resources-ktx-v1.3.1-0...core-ktx-v1.6.0-1
+[1.6.0-0]: https://github.com/RedMadRobot/gears-android/compare/viewbinding-ktx-v4.2.1-0...core-ktx-v1.6.0-0
+[1.5.0-0]: https://github.com/RedMadRobot/gears-android/compare/e6b11af4...core-ktx-v1.5.0-0
diff --git a/core-ktx/README.md b/ktx/core-ktx/README.md
similarity index 92%
rename from core-ktx/README.md
rename to ktx/core-ktx/README.md
index a91a274..ac65eaa 100644
--- a/core-ktx/README.md
+++ b/ktx/core-ktx/README.md
@@ -1,5 +1,6 @@
-# core-ktx
-[![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/core-ktx?style=flat-square)][mavenCentral] [![License](https://img.shields.io/github/license/RedMadRobot/redmadrobot-android-ktx?style=flat-square)][license]
+# core-ktx
+[![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/core-ktx?style=flat-square)][mavenCentral]
+[![License](https://img.shields.io/github/license/RedMadRobot/gears-android?style=flat-square)][license]
Kotlin extensions in addition to androidx core-ktx.
@@ -117,4 +118,4 @@ Merge requests are welcome.
For major changes, please open an issue first to discuss what you would like to change.
[mavenCentral]: https://search.maven.org/artifact/com.redmadrobot.extensions/core-ktx
-[license]: ../LICENSE
+[license]: ../../LICENSE
diff --git a/core-ktx/build.gradle.kts b/ktx/core-ktx/build.gradle.kts
similarity index 70%
rename from core-ktx/build.gradle.kts
rename to ktx/core-ktx/build.gradle.kts
index 0092bb9..7c24023 100644
--- a/core-ktx/build.gradle.kts
+++ b/ktx/core-ktx/build.gradle.kts
@@ -1,10 +1,14 @@
plugins {
- convention.library.android
+ convention.library.ktx
}
version = "1.6.0-2"
description = "Kotlin extensions in addition to androidx core-ktx"
+android {
+ namespace = "$group.core"
+}
+
dependencies {
api(kotlin("stdlib"))
api(androidx.core)
diff --git a/core-ktx/src/main/kotlin/Context.kt b/ktx/core-ktx/src/main/kotlin/Context.kt
similarity index 100%
rename from core-ktx/src/main/kotlin/Context.kt
rename to ktx/core-ktx/src/main/kotlin/Context.kt
diff --git a/core-ktx/src/main/kotlin/content/SharedPreferences.kt b/ktx/core-ktx/src/main/kotlin/content/SharedPreferences.kt
similarity index 100%
rename from core-ktx/src/main/kotlin/content/SharedPreferences.kt
rename to ktx/core-ktx/src/main/kotlin/content/SharedPreferences.kt
diff --git a/core-ktx/src/main/kotlin/content/SharedPreferencesDelegates.kt b/ktx/core-ktx/src/main/kotlin/content/SharedPreferencesDelegates.kt
similarity index 100%
rename from core-ktx/src/main/kotlin/content/SharedPreferencesDelegates.kt
rename to ktx/core-ktx/src/main/kotlin/content/SharedPreferencesDelegates.kt
diff --git a/core-ktx/src/main/kotlin/graphics/Canvas.kt b/ktx/core-ktx/src/main/kotlin/graphics/Canvas.kt
similarity index 100%
rename from core-ktx/src/main/kotlin/graphics/Canvas.kt
rename to ktx/core-ktx/src/main/kotlin/graphics/Canvas.kt
diff --git a/core-ktx/src/main/kotlin/view/Keyboard.kt b/ktx/core-ktx/src/main/kotlin/view/Keyboard.kt
similarity index 100%
rename from core-ktx/src/main/kotlin/view/Keyboard.kt
rename to ktx/core-ktx/src/main/kotlin/view/Keyboard.kt
diff --git a/fragment-args-ktx/CHANGELOG.md b/ktx/fragment-args-ktx/CHANGELOG.md
similarity index 82%
rename from fragment-args-ktx/CHANGELOG.md
rename to ktx/fragment-args-ktx/CHANGELOG.md
index 940692c..3dc0052 100644
--- a/fragment-args-ktx/CHANGELOG.md
+++ b/ktx/fragment-args-ktx/CHANGELOG.md
@@ -50,6 +50,6 @@
First release
-[1.3.6-1]: https://github.com/RedMadRobot/redmadrobot-android-ktx/compare/ec4d0fb8...fragment-args-ktx-v1.3.6-1
-[1.3.6-0]: https://github.com/RedMadRobot/redmadrobot-android-ktx/compare/fe55b501...fragment-args-ktx-v1.3.6-0
-[1.3.5-0]: https://github.com/RedMadRobot/redmadrobot-android-ktx/compare/core-ktx-v1.5.0-0...fragment-args-ktx-v1.3.5-0
+[1.3.6-1]: https://github.com/RedMadRobot/gears-android/compare/ec4d0fb8...fragment-args-ktx-v1.3.6-1
+[1.3.6-0]: https://github.com/RedMadRobot/gears-android/compare/fe55b501...fragment-args-ktx-v1.3.6-0
+[1.3.5-0]: https://github.com/RedMadRobot/gears-android/compare/core-ktx-v1.5.0-0...fragment-args-ktx-v1.3.5-0
diff --git a/fragment-args-ktx/README.md b/ktx/fragment-args-ktx/README.md
similarity index 91%
rename from fragment-args-ktx/README.md
rename to ktx/fragment-args-ktx/README.md
index cc5090c..2c92858 100644
--- a/fragment-args-ktx/README.md
+++ b/ktx/fragment-args-ktx/README.md
@@ -1,5 +1,6 @@
-# fragment-args-ktx
-[![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/fragment-args-ktx?style=flat-square)][mavenCentral] [![License](https://img.shields.io/github/license/RedMadRobot/redmadrobot-android-ktx?style=flat-square)][license]
+# fragment-args-ktx
+[![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/fragment-args-ktx?style=flat-square)][mavenCentral]
+[![License](https://img.shields.io/github/license/RedMadRobot/gears-android?style=flat-square)][license]
Delegates for safe dealing with fragments' arguments.
@@ -94,4 +95,4 @@ Merge requests are welcome.
For major changes, please open an issue first to discuss what you would like to change.
[mavenCentral]: https://search.maven.org/artifact/com.redmadrobot.extensions/fragment-args-ktx
-[license]: ../LICENSE
+[license]: ../../LICENSE
diff --git a/fragment-args-ktx/build.gradle.kts b/ktx/fragment-args-ktx/build.gradle.kts
similarity index 68%
rename from fragment-args-ktx/build.gradle.kts
rename to ktx/fragment-args-ktx/build.gradle.kts
index 3f2ef24..81b29d7 100644
--- a/fragment-args-ktx/build.gradle.kts
+++ b/ktx/fragment-args-ktx/build.gradle.kts
@@ -1,10 +1,14 @@
plugins {
- convention.library.android
+ convention.library.ktx
}
version = "1.3.6-1"
description = "Delegates for safe dealing with fragments' arguments"
+android {
+ namespace = "$group.fragment.args"
+}
+
dependencies {
api(kotlin("stdlib"))
api(androidx.fragment)
diff --git a/fragment-args-ktx/src/main/kotlin/FragmentArgsDelegates.kt b/ktx/fragment-args-ktx/src/main/kotlin/FragmentArgsDelegates.kt
similarity index 100%
rename from fragment-args-ktx/src/main/kotlin/FragmentArgsDelegates.kt
rename to ktx/fragment-args-ktx/src/main/kotlin/FragmentArgsDelegates.kt
diff --git a/fragment-args-ktx/src/main/kotlin/internal/Delegate.kt b/ktx/fragment-args-ktx/src/main/kotlin/internal/Delegate.kt
similarity index 100%
rename from fragment-args-ktx/src/main/kotlin/internal/Delegate.kt
rename to ktx/fragment-args-ktx/src/main/kotlin/internal/Delegate.kt
diff --git a/ktx/fragment-ktx/CHANGELOG.md b/ktx/fragment-ktx/CHANGELOG.md
new file mode 100644
index 0000000..50a7ac0
--- /dev/null
+++ b/ktx/fragment-ktx/CHANGELOG.md
@@ -0,0 +1,17 @@
+## Unreleased
+
+## [1.3.6-0] (2021-10-02)
+
+### Dependencies
+
+- androidx.fragment 1.3.5 -> 1.3.6
+- androidx.activity 1.2.3 -> 1.3.1
+- kotlin-stdlib 1.5.20 -> 1.5.31
+
+## [1.3.5-0] (2021-06-26)
+
+First release
+
+
+[1.3.6-0]: https://github.com/RedMadRobot/gears-android/compare/fragment-args-ktx-v1.3.6-0...fragment-ktx-v1.3.6-0
+[1.3.5-0]: https://github.com/RedMadRobot/gears-android/compare/fragment-args-ktx-v1.3.5-0...fragment-ktx-v1.3.5-0
diff --git a/fragment-ktx/README.md b/ktx/fragment-ktx/README.md
similarity index 80%
rename from fragment-ktx/README.md
rename to ktx/fragment-ktx/README.md
index 3374c66..e8e0996 100644
--- a/fragment-ktx/README.md
+++ b/ktx/fragment-ktx/README.md
@@ -1,5 +1,6 @@
-# fragment-ktx
-[![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/fragment-ktx?style=flat-square)][mavenCentral] [![License](https://img.shields.io/github/license/RedMadRobot/redmadrobot-android-ktx?style=flat-square)][license]
+# fragment-ktx
+[![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/fragment-ktx?style=flat-square)][mavenCentral]
+[![License](https://img.shields.io/github/license/RedMadRobot/gears-android?style=flat-square)][license]
A set of extensions in addition to androidx fragment-ktx.
@@ -43,4 +44,4 @@ Merge requests are welcome.
For major changes, please open an issue first to discuss what you would like to change.
[mavenCentral]: https://search.maven.org/artifact/com.redmadrobot.extensions/fragment-ktx
-[license]: ../LICENSE
+[license]: ../../LICENSE
diff --git a/fragment-ktx/build.gradle.kts b/ktx/fragment-ktx/build.gradle.kts
similarity index 73%
rename from fragment-ktx/build.gradle.kts
rename to ktx/fragment-ktx/build.gradle.kts
index 42a61f8..659b6a6 100644
--- a/fragment-ktx/build.gradle.kts
+++ b/ktx/fragment-ktx/build.gradle.kts
@@ -1,10 +1,14 @@
plugins {
- convention.library.android
+ convention.library.ktx
}
version = "1.3.6-0"
description = "A set of extensions in addition to androidx fragment-ktx"
+android {
+ namespace = "$group.lifecycle.livedata"
+}
+
dependencies {
api(kotlin("stdlib"))
api(androidx.fragment)
diff --git a/fragment-ktx/src/main/kotlin/OnBackPressedCallback.kt b/ktx/fragment-ktx/src/main/kotlin/OnBackPressedCallback.kt
similarity index 100%
rename from fragment-ktx/src/main/kotlin/OnBackPressedCallback.kt
rename to ktx/fragment-ktx/src/main/kotlin/OnBackPressedCallback.kt
diff --git a/ktx/gradle.properties b/ktx/gradle.properties
new file mode 100644
index 0000000..baf39c3
--- /dev/null
+++ b/ktx/gradle.properties
@@ -0,0 +1 @@
+group=com.redmadrobot.extensions
diff --git a/lifecycle-livedata-ktx/CHANGELOG.md b/ktx/lifecycle-livedata-ktx/CHANGELOG.md
similarity index 86%
rename from lifecycle-livedata-ktx/CHANGELOG.md
rename to ktx/lifecycle-livedata-ktx/CHANGELOG.md
index 0b20470..e58aeb9 100644
--- a/lifecycle-livedata-ktx/CHANGELOG.md
+++ b/ktx/lifecycle-livedata-ktx/CHANGELOG.md
@@ -38,4 +38,4 @@
First release
-[2.3.1-0]: https://github.com/RedMadRobot/redmadrobot-android-ktx/compare/fragment-ktx-v1.3.5-0...lifecycle-livedata-ktx-v2.3.1-0
+[2.3.1-0]: https://github.com/RedMadRobot/gears-android/compare/fragment-ktx-v1.3.5-0...lifecycle-livedata-ktx-v2.3.1-0
diff --git a/lifecycle-livedata-ktx/README.md b/ktx/lifecycle-livedata-ktx/README.md
similarity index 93%
rename from lifecycle-livedata-ktx/README.md
rename to ktx/lifecycle-livedata-ktx/README.md
index e54081f..37df189 100644
--- a/lifecycle-livedata-ktx/README.md
+++ b/ktx/lifecycle-livedata-ktx/README.md
@@ -1,5 +1,6 @@
-# lifecycle-livedata-ktx
-[![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/lifecycle-livedata-ktx?style=flat-square)][mavenCentral] [![License](https://img.shields.io/github/license/RedMadRobot/redmadrobot-android-ktx?style=flat-square)][license]
+# lifecycle-livedata-ktx
+[![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/lifecycle-livedata-ktx?style=flat-square)][mavenCentral]
+[![License](https://img.shields.io/github/license/RedMadRobot/gears-android?style=flat-square)][license]
Extended set of extensions for dealing with `LiveData`.
@@ -94,4 +95,4 @@ Merge requests are welcome.
For major changes, please open an issue first to discuss what you would like to change.
[mavenCentral]: https://search.maven.org/artifact/com.redmadrobot.extensions/lifecycle-livedata-ktx
-[license]: ../LICENSE
+[license]: ../../LICENSE
diff --git a/lifecycle-livedata-ktx/build.gradle.kts b/ktx/lifecycle-livedata-ktx/build.gradle.kts
similarity index 86%
rename from lifecycle-livedata-ktx/build.gradle.kts
rename to ktx/lifecycle-livedata-ktx/build.gradle.kts
index cf9f374..75ddf13 100644
--- a/lifecycle-livedata-ktx/build.gradle.kts
+++ b/ktx/lifecycle-livedata-ktx/build.gradle.kts
@@ -1,10 +1,14 @@
plugins {
- convention.library.android
+ convention.library.ktx
}
version = "2.3.1-0"
description = "Extended set of extensions for dealing with LiveData"
+android {
+ namespace = "$group.lifecycle.livedata"
+}
+
dependencies {
api(kotlin("stdlib"))
api(androidx.lifecycle.common)
diff --git a/lifecycle-livedata-ktx/src/main/kotlin/EventQueue.kt b/ktx/lifecycle-livedata-ktx/src/main/kotlin/EventQueue.kt
similarity index 100%
rename from lifecycle-livedata-ktx/src/main/kotlin/EventQueue.kt
rename to ktx/lifecycle-livedata-ktx/src/main/kotlin/EventQueue.kt
diff --git a/lifecycle-livedata-ktx/src/main/kotlin/LiveData.kt b/ktx/lifecycle-livedata-ktx/src/main/kotlin/LiveData.kt
similarity index 100%
rename from lifecycle-livedata-ktx/src/main/kotlin/LiveData.kt
rename to ktx/lifecycle-livedata-ktx/src/main/kotlin/LiveData.kt
diff --git a/lifecycle-livedata-ktx/src/main/kotlin/LiveDataAccessors.kt b/ktx/lifecycle-livedata-ktx/src/main/kotlin/LiveDataAccessors.kt
similarity index 100%
rename from lifecycle-livedata-ktx/src/main/kotlin/LiveDataAccessors.kt
rename to ktx/lifecycle-livedata-ktx/src/main/kotlin/LiveDataAccessors.kt
diff --git a/lifecycle-livedata-ktx/src/main/kotlin/Transformations.kt b/ktx/lifecycle-livedata-ktx/src/main/kotlin/Transformations.kt
similarity index 100%
rename from lifecycle-livedata-ktx/src/main/kotlin/Transformations.kt
rename to ktx/lifecycle-livedata-ktx/src/main/kotlin/Transformations.kt
diff --git a/lifecycle-livedata-ktx/src/test/kotlin/EventQueueTest.kt b/ktx/lifecycle-livedata-ktx/src/test/kotlin/EventQueueTest.kt
similarity index 100%
rename from lifecycle-livedata-ktx/src/test/kotlin/EventQueueTest.kt
rename to ktx/lifecycle-livedata-ktx/src/test/kotlin/EventQueueTest.kt
diff --git a/lifecycle-livedata-ktx/src/test/kotlin/InstantExecutorExtension.kt b/ktx/lifecycle-livedata-ktx/src/test/kotlin/InstantExecutorExtension.kt
similarity index 100%
rename from lifecycle-livedata-ktx/src/test/kotlin/InstantExecutorExtension.kt
rename to ktx/lifecycle-livedata-ktx/src/test/kotlin/InstantExecutorExtension.kt
diff --git a/lifecycle-livedata-ktx/src/test/kotlin/LiveDataAccessorsTest.kt b/ktx/lifecycle-livedata-ktx/src/test/kotlin/LiveDataAccessorsTest.kt
similarity index 100%
rename from lifecycle-livedata-ktx/src/test/kotlin/LiveDataAccessorsTest.kt
rename to ktx/lifecycle-livedata-ktx/src/test/kotlin/LiveDataAccessorsTest.kt
diff --git a/lifecycle-livedata-ktx/src/test/kotlin/LiveDataTest.kt b/ktx/lifecycle-livedata-ktx/src/test/kotlin/LiveDataTest.kt
similarity index 100%
rename from lifecycle-livedata-ktx/src/test/kotlin/LiveDataTest.kt
rename to ktx/lifecycle-livedata-ktx/src/test/kotlin/LiveDataTest.kt
diff --git a/lifecycle-livedata-ktx/src/test/kotlin/TransformationsTest.kt b/ktx/lifecycle-livedata-ktx/src/test/kotlin/TransformationsTest.kt
similarity index 100%
rename from lifecycle-livedata-ktx/src/test/kotlin/TransformationsTest.kt
rename to ktx/lifecycle-livedata-ktx/src/test/kotlin/TransformationsTest.kt
diff --git a/resources-ktx/CHANGELOG.md b/ktx/resources-ktx/CHANGELOG.md
similarity index 85%
rename from resources-ktx/CHANGELOG.md
rename to ktx/resources-ktx/CHANGELOG.md
index 4bb1864..9dd5601 100644
--- a/resources-ktx/CHANGELOG.md
+++ b/ktx/resources-ktx/CHANGELOG.md
@@ -53,5 +53,5 @@
First release
-[1.3.1-0]: https://github.com/RedMadRobot/redmadrobot-android-ktx/compare/fragment-ktx-v1.3.6-0...resources-ktx-v1.3.1-0
-[1.3.0-0]: https://github.com/RedMadRobot/redmadrobot-android-ktx/compare/lifecycle-livedata-ktx-v2.3.1-0...resources-ktx-v1.3.0-0
+[1.3.1-0]: https://github.com/RedMadRobot/gears-android/compare/fragment-ktx-v1.3.6-0...resources-ktx-v1.3.1-0
+[1.3.0-0]: https://github.com/RedMadRobot/gears-android/compare/lifecycle-livedata-ktx-v2.3.1-0...resources-ktx-v1.3.0-0
diff --git a/resources-ktx/README.md b/ktx/resources-ktx/README.md
similarity index 92%
rename from resources-ktx/README.md
rename to ktx/resources-ktx/README.md
index a2cee67..3a2286e 100644
--- a/resources-ktx/README.md
+++ b/ktx/resources-ktx/README.md
@@ -1,5 +1,6 @@
-# resources-ktx
-[![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/resources-ktx?style=flat-square)][mavenCentral] [![License](https://img.shields.io/github/license/RedMadRobot/redmadrobot-android-ktx?style=flat-square)][license]
+# resources-ktx
+[![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/resources-ktx?style=flat-square)][mavenCentral]
+[![License](https://img.shields.io/github/license/RedMadRobot/gears-android?style=flat-square)][license]
A set of Kotlin extensions for accessing resources.
@@ -86,4 +87,4 @@ Merge requests are welcome.
For major changes, please open an issue first to discuss what you would like to change.
[mavenCentral]: https://search.maven.org/artifact/com.redmadrobot.extensions/resources-ktx
-[license]: ../LICENSE
+[license]: ../../LICENSE
diff --git a/resources-ktx/build.gradle.kts b/ktx/resources-ktx/build.gradle.kts
similarity index 74%
rename from resources-ktx/build.gradle.kts
rename to ktx/resources-ktx/build.gradle.kts
index d9df9ad..7d0bcfa 100644
--- a/resources-ktx/build.gradle.kts
+++ b/ktx/resources-ktx/build.gradle.kts
@@ -1,5 +1,5 @@
plugins {
- convention.library.android
+ convention.library.ktx
id("kotlin-parcelize")
}
@@ -7,7 +7,7 @@ version = "1.3.1-0"
description = "A set of Kotlin extensions for accessing resources"
android {
- namespace = "com.redmadrobot.extensions.resources-ktx"
+ namespace = "$group.resources"
}
dependencies {
diff --git a/resources-ktx/src/main/kotlin/Attributes.kt b/ktx/resources-ktx/src/main/kotlin/Attributes.kt
similarity index 100%
rename from resources-ktx/src/main/kotlin/Attributes.kt
rename to ktx/resources-ktx/src/main/kotlin/Attributes.kt
diff --git a/resources-ktx/src/main/kotlin/DimensionConverters.kt b/ktx/resources-ktx/src/main/kotlin/DimensionConverters.kt
similarity index 100%
rename from resources-ktx/src/main/kotlin/DimensionConverters.kt
rename to ktx/resources-ktx/src/main/kotlin/DimensionConverters.kt
diff --git a/resources-ktx/src/main/kotlin/DrawableWithTint.kt b/ktx/resources-ktx/src/main/kotlin/DrawableWithTint.kt
similarity index 100%
rename from resources-ktx/src/main/kotlin/DrawableWithTint.kt
rename to ktx/resources-ktx/src/main/kotlin/DrawableWithTint.kt
diff --git a/resources-ktx/src/main/kotlin/FragmentResourcesAccessors.kt b/ktx/resources-ktx/src/main/kotlin/FragmentResourcesAccessors.kt
similarity index 100%
rename from resources-ktx/src/main/kotlin/FragmentResourcesAccessors.kt
rename to ktx/resources-ktx/src/main/kotlin/FragmentResourcesAccessors.kt
diff --git a/resources-ktx/src/main/kotlin/ViewResourcesAccessors.kt b/ktx/resources-ktx/src/main/kotlin/ViewResourcesAccessors.kt
similarity index 100%
rename from resources-ktx/src/main/kotlin/ViewResourcesAccessors.kt
rename to ktx/resources-ktx/src/main/kotlin/ViewResourcesAccessors.kt
diff --git a/viewbinding-ktx/CHANGELOG.md b/ktx/viewbinding-ktx/CHANGELOG.md
similarity index 85%
rename from viewbinding-ktx/CHANGELOG.md
rename to ktx/viewbinding-ktx/CHANGELOG.md
index 4ae4217..b0609f9 100644
--- a/viewbinding-ktx/CHANGELOG.md
+++ b/ktx/viewbinding-ktx/CHANGELOG.md
@@ -39,4 +39,4 @@
First release
-[4.2.1-0]: https://github.com/RedMadRobot/redmadrobot-android-ktx/compare/resources-ktx-v1.3.0-0...viewbinding-ktx-v4.2.1-0
+[4.2.1-0]: https://github.com/RedMadRobot/gears-android/compare/resources-ktx-v1.3.0-0...viewbinding-ktx-v4.2.1-0
diff --git a/viewbinding-ktx/README.md b/ktx/viewbinding-ktx/README.md
similarity index 91%
rename from viewbinding-ktx/README.md
rename to ktx/viewbinding-ktx/README.md
index 27b82d8..743e51f 100644
--- a/viewbinding-ktx/README.md
+++ b/ktx/viewbinding-ktx/README.md
@@ -1,5 +1,6 @@
-# viewbinding-ktx
-[![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/viewbinding-ktx?style=flat-square)][mavenCentral] [![License](https://img.shields.io/github/license/RedMadRobot/redmadrobot-android-ktx?style=flat-square)][license]
+# viewbinding-ktx
+[![Version](https://img.shields.io/maven-central/v/com.redmadrobot.extensions/viewbinding-ktx?style=flat-square)][mavenCentral]
+[![License](https://img.shields.io/github/license/RedMadRobot/gears-android?style=flat-square)][license]
A set of Kotlin extensions for dealing with ViewBinding.
@@ -133,4 +134,4 @@ Merge requests are welcome.
For major changes, please open an issue first to discuss what you would like to change.
[mavenCentral]: https://search.maven.org/artifact/com.redmadrobot.extensions/viewbinding-ktx
-[license]: ../LICENSE
+[license]: ../../LICENSE
diff --git a/viewbinding-ktx/build.gradle.kts b/ktx/viewbinding-ktx/build.gradle.kts
similarity index 85%
rename from viewbinding-ktx/build.gradle.kts
rename to ktx/viewbinding-ktx/build.gradle.kts
index 4cf521d..c110657 100644
--- a/viewbinding-ktx/build.gradle.kts
+++ b/ktx/viewbinding-ktx/build.gradle.kts
@@ -1,11 +1,12 @@
plugins {
- convention.library.android
+ convention.library.ktx
}
version = "4.2.1-0"
description = "A set of Kotlin extensions for dealing with ViewBinding"
android {
+ namespace = "$group.viewbinding"
defaultConfig.consumerProguardFile("viewbinding.pro")
}
diff --git a/viewbinding-ktx/src/main/kotlin/ViewBinding.kt b/ktx/viewbinding-ktx/src/main/kotlin/ViewBinding.kt
similarity index 100%
rename from viewbinding-ktx/src/main/kotlin/ViewBinding.kt
rename to ktx/viewbinding-ktx/src/main/kotlin/ViewBinding.kt
diff --git a/viewbinding-ktx/src/main/kotlin/ViewBindingDelegate.kt b/ktx/viewbinding-ktx/src/main/kotlin/ViewBindingDelegate.kt
similarity index 100%
rename from viewbinding-ktx/src/main/kotlin/ViewBindingDelegate.kt
rename to ktx/viewbinding-ktx/src/main/kotlin/ViewBindingDelegate.kt
diff --git a/viewbinding-ktx/viewbinding.pro b/ktx/viewbinding-ktx/viewbinding.pro
similarity index 100%
rename from viewbinding-ktx/viewbinding.pro
rename to ktx/viewbinding-ktx/viewbinding.pro
diff --git a/lifecycle-livedata-ktx/src/main/AndroidManifest.xml b/lifecycle-livedata-ktx/src/main/AndroidManifest.xml
deleted file mode 100644
index 5da67ba..0000000
--- a/lifecycle-livedata-ktx/src/main/AndroidManifest.xml
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/resources-ktx/src/main/AndroidManifest.xml b/resources-ktx/src/main/AndroidManifest.xml
deleted file mode 100644
index 238a801..0000000
--- a/resources-ktx/src/main/AndroidManifest.xml
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/settings.gradle.kts b/settings.gradle.kts
index fe8f7ec..ea870e8 100644
--- a/settings.gradle.kts
+++ b/settings.gradle.kts
@@ -25,13 +25,13 @@ dependencyResolutionManagement {
}
}
-rootProject.name = "ktx"
+rootProject.name = "gears"
include(
- "core-ktx",
- "fragment-ktx",
- "fragment-args-ktx",
- "lifecycle-livedata-ktx",
- "resources-ktx",
- "viewbinding-ktx",
+ ":ktx:core-ktx",
+ ":ktx:fragment-ktx",
+ ":ktx:fragment-args-ktx",
+ ":ktx:lifecycle-livedata-ktx",
+ ":ktx:resources-ktx",
+ ":ktx:viewbinding-ktx",
)
diff --git a/viewbinding-ktx/src/main/AndroidManifest.xml b/viewbinding-ktx/src/main/AndroidManifest.xml
deleted file mode 100644
index a5fa7a6..0000000
--- a/viewbinding-ktx/src/main/AndroidManifest.xml
+++ /dev/null
@@ -1 +0,0 @@
-