From 6c8be028daa715035f2f41862d4d4a5e67564dce Mon Sep 17 00:00:00 2001 From: skydoves Date: Sun, 5 Mar 2023 17:12:26 +0900 Subject: [PATCH 1/4] Migrate to maven publish --- .DS_Store | Bin 0 -> 10244 bytes .editorconfig | 5 + CODE_OF_CONDUCT.md | 128 ++++++++++++++++++ CONTRIBUTING.md | 20 +++ app/build.gradle | 50 ------- app/build.gradle.kts | 56 ++++++++ app/src/main/AndroidManifest.xml | 22 ++- .../drawable-v24/ic_launcher_foreground.xml | 16 +++ .../res/drawable/ic_launcher_background.xml | 15 ++ app/src/main/res/layout/activity_detail.xml | 17 ++- app/src/main/res/layout/activity_main.xml | 17 ++- .../main/res/layout/activity_single_main.xml | 17 ++- app/src/main/res/layout/content_detail.xml | 17 ++- app/src/main/res/layout/fragment_home.xml | 15 ++ app/src/main/res/layout/fragment_library.xml | 15 ++ app/src/main/res/layout/fragment_radio.xml | 15 ++ app/src/main/res/layout/item_poster.xml | 17 ++- .../main/res/layout/item_poster_circle.xml | 17 ++- app/src/main/res/layout/item_poster_line.xml | 17 ++- app/src/main/res/layout/item_poster_menu.xml | 17 ++- app/src/main/res/layout/toolbar_home.xml | 17 ++- app/src/main/res/menu/menus.xml | 17 ++- .../res/mipmap-anydpi-v26/ic_launcher.xml | 17 ++- .../mipmap-anydpi-v26/ic_launcher_round.xml | 17 ++- app/src/main/res/values/colors.xml | 17 ++- app/src/main/res/values/strings.xml | 16 +++ app/src/main/res/values/styles.xml | 16 +++ build.gradle | 40 ------ build.gradle.kts | 59 ++++++++ buildSrc/.DS_Store | Bin 0 -> 6148 bytes buildSrc/build.gradle.kts | 7 + buildSrc/src/.DS_Store | Bin 0 -> 6148 bytes buildSrc/src/main/.DS_Store | Bin 0 -> 6148 bytes buildSrc/src/main/kotlin/.DS_Store | Bin 0 -> 6148 bytes buildSrc/src/main/kotlin/com/.DS_Store | Bin 0 -> 6148 bytes .../src/main/kotlin/com/skydoves/.DS_Store | Bin 0 -> 6148 bytes .../skydoves/tranformationlayout/.DS_Store | Bin 0 -> 6148 bytes .../tranformationlayout/Configuration.kt | 30 ++++ dependencies.gradle | 32 ----- gradle.properties | 54 ++++---- gradle/libs.versions.toml | 31 +++++ scripts/publish-module.gradle | 87 ++++++++++++ scripts/publish-root.gradle | 45 ++++++ settings.gradle | 16 --- spotless.gradle => settings.gradle.kts | 30 ++-- spotless/.DS_Store | Bin 0 -> 6148 bytes .../spotless.license.kt | 0 spotless/spotless.license.xml | 16 +++ transformationlayout/build.gradle | 51 ------- transformationlayout/build.gradle.kts | 69 ++++++++++ .../src/main/AndroidManifest.xml | 16 +++ .../res/values/attrs_transformationlayout.xml | 25 ++-- 52 files changed, 958 insertions(+), 260 deletions(-) create mode 100644 .DS_Store create mode 100644 .editorconfig create mode 100644 CODE_OF_CONDUCT.md create mode 100644 CONTRIBUTING.md delete mode 100644 app/build.gradle create mode 100644 app/build.gradle.kts delete mode 100644 build.gradle create mode 100644 build.gradle.kts create mode 100644 buildSrc/.DS_Store create mode 100644 buildSrc/build.gradle.kts create mode 100644 buildSrc/src/.DS_Store create mode 100644 buildSrc/src/main/.DS_Store create mode 100644 buildSrc/src/main/kotlin/.DS_Store create mode 100644 buildSrc/src/main/kotlin/com/.DS_Store create mode 100644 buildSrc/src/main/kotlin/com/skydoves/.DS_Store create mode 100644 buildSrc/src/main/kotlin/com/skydoves/tranformationlayout/.DS_Store create mode 100644 buildSrc/src/main/kotlin/com/skydoves/tranformationlayout/Configuration.kt delete mode 100644 dependencies.gradle create mode 100644 gradle/libs.versions.toml create mode 100644 scripts/publish-module.gradle create mode 100644 scripts/publish-root.gradle delete mode 100644 settings.gradle rename spotless.gradle => settings.gradle.kts (62%) create mode 100644 spotless/.DS_Store rename spotless.license.kt => spotless/spotless.license.kt (100%) create mode 100644 spotless/spotless.license.xml delete mode 100644 transformationlayout/build.gradle create mode 100644 transformationlayout/build.gradle.kts diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..eaad44049fbee816f02863568170d82fb5f3f7de GIT binary patch literal 10244 zcmeHMT~E|N6upIoE#k*2nD}B+C+L4MG0}6Ub?HotVn|fTOwzg2_S~7ynKO5GW{JoswQG|^77>}a*cJ{V z%Sim5uT<)bpPYp?;7`<|fEu)f+)ttP1I>VDKr^5j&{s#uIW^*!!Bdc@GfM!55 z&|`q(gN2K2F}B^viqL^fYyn_%cq|gi*arw7E4Ibhb|WiXQD?M!Fk)9D-eMS$JKkFi zhb_jo8`;R6jL4mgxMd^Wp%|id_*nu@MlrHF*9>R|(hTt4{Sb|lLp5@x{rfWRSLVE6 z$@T&pC`_!r&zM+;zl$WQ%E5Dm{bU?n#oO@&F8>optJEf2LBCVb2YP6H0ZtP5Ou>2p{i2vR|VOR8bb~2-jUn^+>2p`^EI#wEwgZ)LKw6x726G=-@L<#OD2^YPO+xli9duu?N{wH@KY)!(Zc~|NX%Y4sa=xF(le;J_Km~PGL#zR5OpnAq3v`F(s07ai*m=61<;`=^ zc#)WkBSQBfwC{_OkMlYgcTHK3vaZC8ex0ag5Hqu;ud;LlMSH}2g zk{hrZf~f$x1KWzYmKhV#EXi12s-dHxS^r7&u#85FHlmgilMRk+Nv}NJglcA>#CfXF ztlWl(a7lClu`Pg7s<1og5w8?VYs`W}Yoh;3k3^J9wl)N1&q8x$x&@mtCxoh#D^VW$ zT|x^kcuqx8f+D3kprHS~COIZf?=~hXy;4*;0)`xL!wU4F7-hbL<&5=5Fqh=ngkK0H zw0M<8Sy``G$r95k{6672)vwI;N8u{D{yg1$d*l77kJ0**!fmZTzrtm%KT2JS3Pv$< z9JhUp-Lm*)Rp(d%P4Is<9?H*AYG*|cX$`{k)=4v<8PE)92KFce{n2+@eEvVX{r~@a zw0HWmH3OP~oiJeJ%9U~nNIsy*N_^IC;d+9L6XUv(6)wocaXhRzj>ioj$DhH)*a^0r hP%g%{8(BO-`s;rN=>0#D-v9Sb3--yL^pE!cKLE)ZZ=(PJ literal 0 HcmV?d00001 diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..376f7bb --- /dev/null +++ b/.editorconfig @@ -0,0 +1,5 @@ +root = true +[*] +# Most of the standard properties are supported +indent_size=2 +max_line_length=100 \ No newline at end of file diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..1c1cab1 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,128 @@ +# Contributor Covenant Code of Conduct + +## Our Pledge + +We as members, contributors, and leaders pledge to make participation in our +community a harassment-free experience for everyone, regardless of age, body +size, visible or invisible disability, ethnicity, sex characteristics, gender +identity and expression, level of experience, education, socio-economic status, +nationality, personal appearance, race, religion, or sexual identity +and orientation. + +We pledge to act and interact in ways that contribute to an open, welcoming, +diverse, inclusive, and healthy community. + +## Our Standards + +Examples of behavior that contributes to a positive environment for our +community include: + +* Demonstrating empathy and kindness toward other people +* Being respectful of differing opinions, viewpoints, and experiences +* Giving and gracefully accepting constructive feedback +* Accepting responsibility and apologizing to those affected by our mistakes, + and learning from the experience +* Focusing on what is best not just for us as individuals, but for the + overall community + +Examples of unacceptable behavior include: + +* The use of sexualized language or imagery, and sexual attention or + advances of any kind +* Trolling, insulting or derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or email + address, without their explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Enforcement Responsibilities + +Community leaders are responsible for clarifying and enforcing our standards of +acceptable behavior and will take appropriate and fair corrective action in +response to any behavior that they deem inappropriate, threatening, offensive, +or harmful. + +Community leaders have the right and responsibility to remove, edit, or reject +comments, commits, code, wiki edits, issues, and other contributions that are +not aligned to this Code of Conduct, and will communicate reasons for moderation +decisions when appropriate. + +## Scope + +This Code of Conduct applies within all community spaces, and also applies when +an individual is officially representing the community in public spaces. +Examples of representing our community include using an official e-mail address, +posting via an official social media account, or acting as an appointed +representative at an online or offline event. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported to the community leaders responsible for enforcement at +skydoves2@gmail.com. +All complaints will be reviewed and investigated promptly and fairly. + +All community leaders are obligated to respect the privacy and security of the +reporter of any incident. + +## Enforcement Guidelines + +Community leaders will follow these Community Impact Guidelines in determining +the consequences for any action they deem in violation of this Code of Conduct: + +### 1. Correction + +**Community Impact**: Use of inappropriate language or other behavior deemed +unprofessional or unwelcome in the community. + +**Consequence**: A private, written warning from community leaders, providing +clarity around the nature of the violation and an explanation of why the +behavior was inappropriate. A public apology may be requested. + +### 2. Warning + +**Community Impact**: A violation through a single incident or series +of actions. + +**Consequence**: A warning with consequences for continued behavior. No +interaction with the people involved, including unsolicited interaction with +those enforcing the Code of Conduct, for a specified period of time. This +includes avoiding interactions in community spaces as well as external channels +like social media. Violating these terms may lead to a temporary or +permanent ban. + +### 3. Temporary Ban + +**Community Impact**: A serious violation of community standards, including +sustained inappropriate behavior. + +**Consequence**: A temporary ban from any sort of interaction or public +communication with the community for a specified period of time. No public or +private interaction with the people involved, including unsolicited interaction +with those enforcing the Code of Conduct, is allowed during this period. +Violating these terms may lead to a permanent ban. + +### 4. Permanent Ban + +**Community Impact**: Demonstrating a pattern of violation of community +standards, including sustained inappropriate behavior, harassment of an +individual, or aggression toward or disparagement of classes of individuals. + +**Consequence**: A permanent ban from any sort of public interaction within +the community. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], +version 2.0, available at +https://www.contributor-covenant.org/version/2/0/code_of_conduct.html. + +Community Impact Guidelines were inspired by [Mozilla's code of conduct +enforcement ladder](https://github.com/mozilla/diversity). + +[homepage]: https://www.contributor-covenant.org + +For answers to common questions about this code of conduct, see the FAQ at +https://www.contributor-covenant.org/faq. Translations are available at +https://www.contributor-covenant.org/translations. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..91a3b23 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,20 @@ +## How to contribute +We'd love to accept your patches and contributions to this project. There are just a few small guidelines you need to follow. + +## Preparing a pull request for review +Ensure your change is properly formatted by running: + +```gradle +./gradlew spotlessApply +``` + +Then dump binary API of this library that is public in sense of Kotlin visibilities and ensures that the public binary API wasn't changed in a way that make this change binary incompatible. + +```gradle +./gradlew apiDump +``` + +Please correct any failures before requesting a review. + +## Code reviews +All submissions, including submissions by project members, require review. We use GitHub pull requests for this purpose. Consult [GitHub Help](https://docs.github.com/en/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests) for more information on using pull requests. diff --git a/app/build.gradle b/app/build.gradle deleted file mode 100644 index 2725459..0000000 --- a/app/build.gradle +++ /dev/null @@ -1,50 +0,0 @@ -// Designed and developed by 2020 skydoves (Jaewoong Eum) -// -// 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 -// -// http://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. - -apply plugin: 'com.android.application' -apply plugin: 'kotlin-android' -apply plugin: 'kotlin-parcelize' -apply plugin: 'kotlin-kapt' -apply from: "$rootDir/dependencies.gradle" - -android { - compileSdkVersion versions.compileSdk - defaultConfig { - applicationId "com.skydoves.transformationlayoutdemo" - minSdkVersion versions.minSdk - targetSdkVersion versions.compileSdk - versionCode versions.versionCode - versionName versions.versionName - } - buildFeatures { - viewBinding true - } - compileOptions { - sourceCompatibility JavaVersion.VERSION_11 - targetCompatibility JavaVersion.VERSION_11 - } - kotlinOptions { - jvmTarget = "11" - } -} - -dependencies { - implementation "com.google.android.material:material:$versions.googleMaterial" - implementation "androidx.constraintlayout:constraintlayout:$versions.constraintVersion" - implementation "com.github.bumptech.glide:glide:$versions.glideVersion" - kapt "com.github.bumptech.glide:compiler:$versions.glideVersion" - implementation project(":transformationlayout") -} - -apply from: "$rootDir/spotless.gradle" diff --git a/app/build.gradle.kts b/app/build.gradle.kts new file mode 100644 index 0000000..eda8fc2 --- /dev/null +++ b/app/build.gradle.kts @@ -0,0 +1,56 @@ +// Designed and developed by 2020 skydoves (Jaewoong Eum) +// +// 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 +// +// http://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. + +@file:Suppress("UnstableApiUsage") + +import com.skydoves.tranformationlayout.Configuration + +@Suppress("DSL_SCOPE_VIOLATION") +plugins { + id(libs.plugins.android.application.get().pluginId) + id(libs.plugins.kotlin.android.get().pluginId) + id(libs.plugins.kotlin.parcelize.get().pluginId) +} + +android { + compileSdk = Configuration.compileSdk + defaultConfig { + applicationId = "com.skydoves.transformationlayoutdemo" + minSdk = Configuration.minSdk + targetSdk = Configuration.targetSdk + versionCode = Configuration.versionCode + versionName = Configuration.versionName + } + + buildFeatures { + viewBinding = true + } + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + + kotlinOptions { + jvmTarget = libs.versions.jvmTarget.get() + } +} + +dependencies { + implementation(project(":transformationlayout")) + + implementation(libs.androidx.material) + implementation(libs.androidx.constraint) + implementation(libs.glide) +} diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index cf8237f..191dce7 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,6 +1,20 @@ + @@ -11,8 +25,7 @@ android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" - android:theme="@style/AppTheme" - tools:ignore="AllowBackup,GoogleAppIndexingWarning"> + android:theme="@style/AppTheme"> @@ -25,10 +38,9 @@ android:launchMode="singleTop"> - - \ No newline at end of file + diff --git a/app/src/main/res/drawable-v24/ic_launcher_foreground.xml b/app/src/main/res/drawable-v24/ic_launcher_foreground.xml index 1f6bb29..1dc712d 100644 --- a/app/src/main/res/drawable-v24/ic_launcher_foreground.xml +++ b/app/src/main/res/drawable-v24/ic_launcher_foreground.xml @@ -1,3 +1,19 @@ + + + + - \ No newline at end of file + diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index ce84439..d4485e7 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -1,4 +1,19 @@ + - \ No newline at end of file + diff --git a/app/src/main/res/layout/activity_single_main.xml b/app/src/main/res/layout/activity_single_main.xml index e765a53..2af2943 100644 --- a/app/src/main/res/layout/activity_single_main.xml +++ b/app/src/main/res/layout/activity_single_main.xml @@ -1,4 +1,19 @@ + - \ No newline at end of file + diff --git a/app/src/main/res/layout/content_detail.xml b/app/src/main/res/layout/content_detail.xml index e1ac9cc..06f6f31 100644 --- a/app/src/main/res/layout/content_detail.xml +++ b/app/src/main/res/layout/content_detail.xml @@ -1,6 +1,21 @@ + - \ No newline at end of file + diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragment_home.xml index a21c0a4..8c672a4 100644 --- a/app/src/main/res/layout/fragment_home.xml +++ b/app/src/main/res/layout/fragment_home.xml @@ -1,4 +1,19 @@ + + + + - \ No newline at end of file + diff --git a/app/src/main/res/layout/item_poster_circle.xml b/app/src/main/res/layout/item_poster_circle.xml index dbb0339..646af88 100644 --- a/app/src/main/res/layout/item_poster_circle.xml +++ b/app/src/main/res/layout/item_poster_circle.xml @@ -1,4 +1,19 @@ + - \ No newline at end of file + diff --git a/app/src/main/res/layout/item_poster_line.xml b/app/src/main/res/layout/item_poster_line.xml index 8efa224..a2c8761 100644 --- a/app/src/main/res/layout/item_poster_line.xml +++ b/app/src/main/res/layout/item_poster_line.xml @@ -1,4 +1,19 @@ + - \ No newline at end of file + diff --git a/app/src/main/res/layout/item_poster_menu.xml b/app/src/main/res/layout/item_poster_menu.xml index d9ca78e..1e3bbb8 100644 --- a/app/src/main/res/layout/item_poster_menu.xml +++ b/app/src/main/res/layout/item_poster_menu.xml @@ -1,4 +1,19 @@ + - \ No newline at end of file + diff --git a/app/src/main/res/layout/toolbar_home.xml b/app/src/main/res/layout/toolbar_home.xml index 4989697..8c6014e 100644 --- a/app/src/main/res/layout/toolbar_home.xml +++ b/app/src/main/res/layout/toolbar_home.xml @@ -1,4 +1,19 @@ + - \ No newline at end of file + diff --git a/app/src/main/res/menu/menus.xml b/app/src/main/res/menu/menus.xml index da5d081..156b621 100644 --- a/app/src/main/res/menu/menus.xml +++ b/app/src/main/res/menu/menus.xml @@ -1,4 +1,19 @@ + - \ No newline at end of file + diff --git a/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml index eca70cf..090e907 100644 --- a/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml +++ b/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml @@ -1,5 +1,20 @@ + - \ No newline at end of file + diff --git a/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml index eca70cf..090e907 100644 --- a/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml +++ b/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml @@ -1,5 +1,20 @@ + - \ No newline at end of file + diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index c7ffd53..a10f3cc 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -1,4 +1,19 @@ + #652AE7 #6200EA @@ -23,4 +38,4 @@ #388E3C #81D4fA #0091EA - \ No newline at end of file + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 780b727..6c78f6c 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1,3 +1,19 @@ + + TransformationLayoutDemo Home diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index 05f3c01..1863a9f 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -1,3 +1,19 @@ + +