fix Readme.md

This commit is contained in:
InsanusMokrassar 2022-01-07 20:26:32 +06:00
parent 6c58cd393d
commit 6171eb3c40
2 changed files with 37 additions and 33 deletions

View File

@ -1,33 +0,0 @@
## How to create content?
For example, you want to create content named "MyFormat". To do this, you must perform the following actions:
1. Copy "template" folder from "core/features" in "core/features/content"
2. Rename this folder in "myformat"
3. Inside the "myformat" folder rename all the "template" on "content.myformat"
4. In the "settings.gradle" file in the "includes" array add the following code:
```kotlin
":features:content:myformat:common",
":features:content:myformat:client",
":features:content:myformat:server",
```
5. In the "core/features/content/myformat/common/src" folder create folders with appropriate subfolders "commonMain/kotlin/dev/inmo/postssystem/features/content/myformat/common":
6. In the last folder "сommon", create a data class and the configurator as shown below:
```kotlin
@Serializable
data class MyFormatContent(
// Your code
) : Content
```
```kotlin
object MyFormatContentSerializerModuleConfigurator : ContentSerializersModuleConfigurator.Element {
override fun PolymorphicModuleBuilder<Content>.invoke() {
subclass(MyFormatContent::class, MyFormatContent.serializer())
}
}
```
7. In two "di.kt" file located in "core/client/src/commonMain/kotlin/dev/inmo/postsystem/client" and "core/server/src/main/java/dev/inmo/postsystem/client" respectively add the following string:
```kotlin
singleWithRandomQualifier<ContentSerializersModuleConfigurator.Element> { MyFormatContentSerializerModuleConfigurator }
```

View File

@ -0,0 +1,37 @@
## How to create content?
For example, you want to create content named `MyFormat`. To do this, you must perform the following actions:
1. Copy `template` folder from `core/features` in `core/features/content`
2. Rename this folder in `myformat`
3. Inside the `myformat` folder rename all the `template` on `content.myformat`
4. In the `settings.gradle` file in the `includes` array add the following code:
```groovy
String[] includes = [
...
":features:content:myformat:common",
":features:content:myformat:client",
":features:content:myformat:server",
...
]
```
5. In the `core/features/content/myformat/common/src` folder create folders with appropriate subfolders `commonMain/kotlin/dev/inmo/postssystem/features/content/myformat/common`:
6. In the last folder `сommon`, create a data class and the configurator as shown below:
```kotlin
// MyFormatContent.kt
@Serializable
data class MyFormatContent(
// Your code
) : Content
// MyFormatContentSerializerModuleConfigurator.kt
object MyFormatContentSerializerModuleConfigurator : ContentSerializersModuleConfigurator.Element {
override fun PolymorphicModuleBuilder<Content>.invoke() {
subclass(MyFormatContent::class, MyFormatContent.serializer())
}
}
```
7. In two `di.kt` file located in `core/client/src/commonMain/kotlin/dev/inmo/postsystem/client` and `core/server/src/main/java/dev/inmo/postsystem/client` respectively add the following string:
```kotlin
singleWithRandomQualifier<ContentSerializersModuleConfigurator.Element> { MyFormatContentSerializerModuleConfigurator }
```