From 076928f95f8b937e0582ceb968682f7eb8d6d3d7 Mon Sep 17 00:00:00 2001 From: Oleg Smirnov Date: Wed, 19 Jun 2024 17:47:15 +0400 Subject: [PATCH 1/3] Extract properties configuration into different script --- build.gradle.kts | 1 + .../kotlin/convention.properties.gradle.kts | 27 +++++++++++++ .../kotlin/convention.publication.gradle.kts | 40 +++++-------------- 3 files changed, 37 insertions(+), 31 deletions(-) create mode 100644 buildSrc/src/main/kotlin/convention.properties.gradle.kts diff --git a/build.gradle.kts b/build.gradle.kts index 0b338c4a..e27622f0 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -15,6 +15,7 @@ plugins { alias(libs.plugins.kotlin.binaryCompatibility) alias(libs.plugins.kotlin.dokka) alias(libs.plugins.nexus.publish) + id("convention.properties") id("convention.publication") } diff --git a/buildSrc/src/main/kotlin/convention.properties.gradle.kts b/buildSrc/src/main/kotlin/convention.properties.gradle.kts new file mode 100644 index 00000000..3b5f6799 --- /dev/null +++ b/buildSrc/src/main/kotlin/convention.properties.gradle.kts @@ -0,0 +1,27 @@ +import java.util.Properties + +ext["signing.keyId"] = "" +ext["signing.password"] = "" +ext["signing.key"] = "" +ext["ossrhUsername"] = "" +ext["ossrhPassword"] = "" + +val secretPropsFile: File = project.rootProject.file("local.properties") +@Suppress("IMPLICIT_CAST_TO_ANY") +if (secretPropsFile.exists()) { + secretPropsFile + .reader() + .use { + Properties().apply { + load(it) + } + }.onEach { (name, value) -> + ext[name.toString()] = value + } +} else { + ext["signing.keyId"] = System.getenv("SIGNING_KEY_ID") ?: "" + ext["signing.password"] = System.getenv("SIGNING_PASSWORD") ?: "" + ext["signing.keys"] = System.getenv("SIGNING_SECRET_KEY") ?: "" + ext["ossrhUsername"] = System.getenv("OSSRH_USERNAME") ?: "" + ext["ossrhPassword"] = System.getenv("OSSRH_PASSWORD") ?: "" +} \ No newline at end of file diff --git a/buildSrc/src/main/kotlin/convention.publication.gradle.kts b/buildSrc/src/main/kotlin/convention.publication.gradle.kts index e13f490f..e9305080 100644 --- a/buildSrc/src/main/kotlin/convention.publication.gradle.kts +++ b/buildSrc/src/main/kotlin/convention.publication.gradle.kts @@ -1,33 +1,8 @@ -import java.util.Properties - plugins { `maven-publish` signing } -ext["signing.keyId"] = "" -ext["signing.password"] = "" -ext["signing.key"] = "" -ext["ossrhUsername"] = "" -ext["ossrhPassword"] = "" - -val secretPropsFile: File = project.rootProject.file("local.properties") -if (secretPropsFile.exists()) { - secretPropsFile.reader().use { - Properties().apply { - load(it) - } - }.onEach { (name, value) -> - ext[name.toString()] = value - } -} else { - ext["signing.keyId"] = System.getenv("SIGNING_KEY_ID") ?: "" - ext["signing.password"] = System.getenv("SIGNING_PASSWORD") ?: "" - ext["signing.keys"] = System.getenv("SIGNING_SECRET_KEY") ?: "" - ext["ossrhUsername"] = System.getenv("OSSRH_USERNAME") ?: "" - ext["ossrhPassword"] = System.getenv("OSSRH_PASSWORD") ?: "" -} - val javadocJar by tasks.registering(Jar::class) { archiveClassifier.set("javadoc") } @@ -74,13 +49,16 @@ afterEvaluate { // Call toList to prevent concurrent modification exception signTasks.toList().forEach { - val platform = it.name.substring( - "sign".length, - it.name.length - "Publication".length - ) - tasks.findByName("linkDebugTest$platform") + val platform = + it.name.substring( + "sign".length, + it.name.length - "Publication".length, + ) + tasks + .findByName("linkDebugTest$platform") ?.mustRunAfter(it) - tasks.findByName("compileTestKotlin$platform") + tasks + .findByName("compileTestKotlin$platform") ?.mustRunAfter(it) } } From d0b8b646fd991f1464700939ef1e742904f80694 Mon Sep 17 00:00:00 2001 From: Oleg Smirnov Date: Wed, 19 Jun 2024 18:10:12 +0400 Subject: [PATCH 2/3] Move validator project from root to sub-project --- benchmark/build.gradle.kts | 6 +- build.gradle.kts | 322 +----------------- .../kotlin/convention.properties.gradle.kts | 46 +-- generator/build.gradle.kts | 10 +- .../api}/json-schema-validator.api | 0 json-schema-validator/build.gradle.kts | 320 +++++++++++++++++ .../optimumcode/json/pointer/JsonPointer.kt | 0 .../json/pointer/JsonPointerSerializer.kt | 0 .../optimumcode/json/pointer/extensions.kt | 0 .../json/pointer/internal/extensions.kt | 0 .../json/schema/AbsoluteLocation.kt | 0 .../optimumcode/json/schema/AnnotationKey.kt | 0 .../optimumcode/json/schema/Annotations.kt | 0 .../optimumcode/json/schema/ErrorCollector.kt | 0 .../json/schema/ExperimentalApi.kt | 0 .../json/schema/FormatValidator.kt | 0 .../optimumcode/json/schema/JsonSchema.kt | 0 .../json/schema/JsonSchemaLoader.kt | 0 .../json/schema/OutputCollector.kt | 0 .../optimumcode/json/schema/SchemaOption.kt | 0 .../optimumcode/json/schema/SchemaType.kt | 0 .../json/schema/ValidationError.kt | 0 .../json/schema/ValidationOutput.kt | 0 .../extension/ExternalAnnotationCollector.kt | 0 .../schema/extension/ExternalAssertion.kt | 0 .../extension/ExternalAssertionContext.kt | 0 .../extension/ExternalAssertionFactory.kt | 0 .../extension/ExternalLoadingContext.kt | 0 .../schema/internal/AnnotationCollector.kt | 0 .../json/schema/internal/AssertionContext.kt | 0 .../json/schema/internal/AssertionFactory.kt | 0 .../schema/internal/BooleanSchemaAssertion.kt | 0 .../schema/internal/JsonSchemaAssertion.kt | 0 .../json/schema/internal/JsonSchemaRoot.kt | 0 .../json/schema/internal/KeyWord.kt | 0 .../json/schema/internal/LoadingContext.kt | 0 .../internal/RecursiveRefSchemaAssertion.kt | 0 .../optimumcode/json/schema/internal/RefId.kt | 0 .../schema/internal/RefSchemaAssertion.kt | 0 .../json/schema/internal/ReferenceResolver.kt | 0 .../schema/internal/ReferenceValidator.kt | 0 .../json/schema/internal/SchemaLoader.kt | 0 .../schema/internal/SchemaLoaderConfig.kt | 0 .../schema/internal/SchemaLoaderContext.kt | 0 .../config/Draft201909SchemaLoaderConfig.kt | 0 .../config/Draft202012SchemaLoaderConfig.kt | 0 .../config/Draft4SchemaLoaderConfig.kt | 0 .../config/Draft6SchemaLoaderConfig.kt | 0 .../config/Draft7SchemaLoaderConfig.kt | 0 .../factories/AbstractAssertionFactory.kt | 0 .../ExternalAssertionFactoryAdapter.kt | 0 .../array/AdditionalItemsAssertion.kt | 0 .../array/AdditionalItemsAssertionFactory.kt | 0 .../factories/array/AllItemsAssertion.kt | 0 .../factories/array/ArrayLengthAssertion.kt | 0 .../array/ContainsAssertionFactory.kt | 0 .../ContainsAssertionFactoryDraft202012.kt | 0 .../factories/array/CountContainsAssertion.kt | 0 .../factories/array/ItemsAssertionFactory.kt | 0 .../array/ItemsAssertionFactoryDraft202012.kt | 0 .../array/MaxContainsAssertionFactory.kt | 0 .../MaxContainsAssertionFactoryDraft202012.kt | 0 .../array/MaxItemsAssertionFactory.kt | 0 .../array/MinContainsAssertionFactory.kt | 0 .../MinContainsAssertionFactoryDraft202012.kt | 0 .../array/MinItemsAssertionFactory.kt | 0 .../factories/array/PrefixItemsAssertion.kt | 0 .../array/PrefixItemsAssertionFactory.kt | 0 .../array/UnevaluatedItemsAssertion.kt | 0 .../array/UnevaluatedItemsAssertionFactory.kt | 0 ...aluatedItemsAssertionFactoryDraft202012.kt | 0 .../array/UniqueItemsAssertionFactory.kt | 0 .../AbstractAssertionsCollectionFactory.kt | 0 .../condition/AllOfAssertionFactory.kt | 0 .../condition/AnyOfAssertionFactory.kt | 0 .../condition/ElseAssertionFactory.kt | 0 .../factories/condition/IfAssertionFactory.kt | 0 .../condition/NotAssertionFactory.kt | 0 .../condition/OneOfAssertionFactory.kt | 0 .../condition/ThenAssertionFactory.kt | 0 .../general/ConstAssertionFactory.kt | 0 .../factories/general/EnumAssertionFactory.kt | 0 .../general/FormatAssertionFactory.kt | 0 .../factories/general/TypeAssertionFactory.kt | 0 .../number/Draft4MaximumAssertionFactory.kt | 0 .../number/Draft4MinimumAssertionFactory.kt | 0 .../ExclusiveMaximumAssertionFactory.kt | 0 .../ExclusiveMinimumAssertionFactory.kt | 0 .../number/MaximumAssertionFactory.kt | 0 .../number/MinimumAssertionFactory.kt | 0 .../number/MultipleOfAssertionFactory.kt | 0 .../factories/number/util/NumberUtil.kt | 0 .../AdditionalPropertiesAssertionFactory.kt | 0 .../ConditionalRequiredPropertiesAssertion.kt | 0 .../factories/object/DependenciesAssertion.kt | 0 .../object/DependenciesAssertionFactory.kt | 0 .../DependentRequiredAssertionFactory.kt | 0 .../DependentSchemasAssertionFactory.kt | 0 .../object/MaxPropertiesAssertionFactory.kt | 0 .../object/MinPropertiesAssertionFactory.kt | 0 .../PatternPropertiesAssertionFactory.kt | 0 .../object/PropertiesAssertionFactory.kt | 0 .../object/PropertiesNumberAssertion.kt | 0 .../object/PropertyNamesAssertionFactory.kt | 0 .../object/RequiredAssertionFactory.kt | 0 .../UnevaluatedPropertiesAssertionFactory.kt | 0 .../factories/string/LengthAssertion.kt | 0 .../string/MaxLengthAssertionFactory.kt | 0 .../string/MinLengthAssertionFactory.kt | 0 .../string/PatternAssertionFactory.kt | 0 .../formats/AbstractEmailFormatValidator.kt | 0 .../formats/AbstractStringFormatValidator.kt | 0 .../internal/formats/DateFormatValidator.kt | 0 .../formats/DateTimeFormatValidator.kt | 0 .../formats/DurationFormatValidator.kt | 0 .../internal/formats/EmailFormatValidator.kt | 0 .../formats/HostnameFormatValidator.kt | 0 .../formats/IdnEmailFormatValidator.kt | 0 .../formats/IdnHostnameFormatValidator.kt | 0 .../internal/formats/IpV4FormatValidator.kt | 0 .../internal/formats/IpV6FormatValidator.kt | 0 .../internal/formats/IriFormatValidator.kt | 0 .../formats/IriReferenceFormatValidator.kt | 0 .../json/schema/internal/formats/IriSpec.kt | 0 .../formats/JsonPointerFormatValidator.kt | 0 .../internal/formats/RegexFormatValidator.kt | 0 .../RelativeJsonPointerFormatValidator.kt | 0 .../internal/formats/TimeFormatValidator.kt | 0 .../internal/formats/UriFormatValidator.kt | 0 .../formats/UriReferenceFormatValidator.kt | 0 .../json/schema/internal/formats/UriSpec.kt | 0 .../formats/UriTemplateFormatValidator.kt | 0 .../internal/formats/UuidFormatValidator.kt | 0 .../schema/internal/formats/Validation.kt | 0 .../schema/internal/hostname/Normalizer.kt | 0 .../json/schema/internal/hostname/Punycode.kt | 0 .../internal/util/ElementEqualityUtil.kt | 0 .../json/schema/internal/util/NumberParts.kt | 0 .../json/schema/internal/util/SchemaUtil.kt | 0 .../json/schema/internal/util/UnicodeUtil.kt | 0 .../schema/internal/wellknown/Draft201909.kt | 0 .../schema/internal/wellknown/Draft202012.kt | 0 .../json/schema/internal/wellknown/Draft4.kt | 0 .../json/schema/internal/wellknown/Draft6.kt | 0 .../json/schema/internal/wellknown/Draft7.kt | 0 .../json/pointer/JsonPointerExtensionsTest.kt | 0 .../pointer/JsonPointerSerializationTest.kt | 0 .../json/pointer/JsonPointerTest.kt | 0 .../json/pointer/JsonPointerWorkTest.kt | 0 .../array/JsonSchemaContainsValidationTest.kt | 0 .../array/JsonSchemaItemsValidationTest.kt | 0 .../JsonSchemaMaxContainsValidationTest.kt | 0 .../array/JsonSchemaMaxItemsValidationTest.kt | 0 .../JsonSchemaMinContainsValidationTest.kt | 0 .../array/JsonSchemaMinItemsValidationTest.kt | 0 .../JsonSchemaUniqueItemsValidationTest.kt | 0 .../condition/CollectionSchemaTest.kt | 0 .../JsonSchemaAllOfValidationTest.kt | 0 .../JsonSchemaAnyOfValidationTest.kt | 0 .../JsonSchemaIfThenElseValidationTest.kt | 0 .../condition/JsonSchemaNotValidationTest.kt | 0 .../JsonSchemaOneOfValidationTest.kt | 0 .../general/JsonSchemaConstValidationTest.kt | 0 .../general/JsonSchemaEnumValidationTest.kt | 0 .../general/JsonSchemaTypeValidationTest.kt | 0 .../format/FormatValidationTestSuite.kt | 0 .../JsonSchemaDateFormatValidationTest.kt | 0 .../JsonSchemaDateTimeFormatValidationTest.kt | 0 .../JsonSchemaDurationFormatValidationTest.kt | 0 .../JsonSchemaEmailFormatValidationTest.kt | 0 .../JsonSchemaHostnameFormatValidatorTest.kt | 0 .../JsonSchemaIdnEmailFormatValidationTest.kt | 0 ...onSchemaIdnHostnameFormatValidationTest.kt | 0 .../JsonSchemaIpV4FormatValidationTest.kt | 0 .../JsonSchemaIpV6FormatValidationTest.kt | 0 .../JsonSchemaIriFormatValidationTest.kt | 0 ...nSchemaIriReferenceFormatValidationTest.kt | 0 ...onSchemaJsonPointerFormatValidationTest.kt | 0 .../JsonSchemaRegexFormatValidationTest.kt | 0 ...RelativeJsonPointerFormatValidationTest.kt | 0 .../JsonSchemaTimeFormatValidationTest.kt | 0 .../JsonSchemaUriFormatValidationTest.kt | 0 ...nSchemaUriReferenceFormatValidationTest.kt | 0 ...onSchemaUriTemplateFormatValidationTest.kt | 0 .../JsonSchemaUuidFormatValidationTest.kt | 0 ...sonSchemaExclusiveMaximumValidationTest.kt | 0 ...sonSchemaExclusiveMinimumValidationTest.kt | 0 .../number/JsonSchemaMaximumValidationTest.kt | 0 .../number/JsonSchemaMinimumValidationTest.kt | 0 .../JsonSchemaMultipleOfValidationTest.kt | 0 .../JsonSchemaDependenciesValidationTest.kt | 0 ...onSchemaDependentRequiredValidationTest.kt | 0 ...sonSchemaDependentSchemasValidationTest.kt | 0 .../JsonSchemaMaxPropertiesValidationTest.kt | 0 .../JsonSchemaMinPropertiesValidationTest.kt | 0 .../JsonSchemaPropertiesValidationsTest.kt | 0 .../JsonSchemaPropertyNamesValidationTest.kt | 0 .../JsonSchemaRequiredValidationTest.kt | 0 ...hemaUnevaluatedPropertiesValidationTest.kt | 0 .../assertions/object/ObjectCommonTests.kt | 0 .../ref/JsonSchemaRefValidationTest.kt | 0 .../JsonSchemaMaxLengthValidationTest.kt | 0 .../JsonSchemaMinLengthValidationTest.kt | 0 .../string/JsonSchemaPatternValidationTest.kt | 0 .../base/JsonSchemaCircledReferencesTest.kt | 0 .../schema/base/JsonSchemaDraft201909Test.kt | 0 .../schema/base/JsonSchemaDraft202012Test.kt | 0 .../json/schema/base/JsonSchemaLoaderTest.kt | 0 .../json/schema/base/JsonSchemaTest.kt | 0 .../json/schema/base/OutputCollectorsTest.kt | 0 .../JsonSchemaExtensionAnnotationTest.kt | 0 .../extension/JsonSchemaExtensionTest.kt | 0 .../schema/internal/hostname/PunycodeTest.kt | 0 .../internal/util/ElementEqualityUtilTest.kt | 0 .../AbsoluteLocationSerializationTest.kt | 0 .../json/schema/JsonSchemaStream.kt | 0 .../json/schema/JsonSchemaStreamTest.kt | 0 settings.gradle.kts | 5 +- test-suites/build.gradle.kts | 14 +- 219 files changed, 365 insertions(+), 358 deletions(-) rename {api => json-schema-validator/api}/json-schema-validator.api (100%) create mode 100644 json-schema-validator/build.gradle.kts rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/pointer/JsonPointer.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/pointer/JsonPointerSerializer.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/pointer/extensions.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/pointer/internal/extensions.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/AbsoluteLocation.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/AnnotationKey.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/Annotations.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/ErrorCollector.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/ExperimentalApi.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/FormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/JsonSchema.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/JsonSchemaLoader.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/OutputCollector.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/SchemaOption.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/SchemaType.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/ValidationError.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/ValidationOutput.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAnnotationCollector.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAssertion.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAssertionContext.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalLoadingContext.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/AnnotationCollector.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/AssertionContext.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/AssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/BooleanSchemaAssertion.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/JsonSchemaAssertion.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/JsonSchemaRoot.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/KeyWord.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/LoadingContext.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/RecursiveRefSchemaAssertion.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/RefId.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/RefSchemaAssertion.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/ReferenceResolver.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/ReferenceValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/SchemaLoader.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/SchemaLoaderConfig.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/SchemaLoaderContext.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft201909SchemaLoaderConfig.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft202012SchemaLoaderConfig.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft4SchemaLoaderConfig.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft6SchemaLoaderConfig.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft7SchemaLoaderConfig.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/AbstractAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/ExternalAssertionFactoryAdapter.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/AdditionalItemsAssertion.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/AdditionalItemsAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/AllItemsAssertion.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ArrayLengthAssertion.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ContainsAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ContainsAssertionFactoryDraft202012.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/CountContainsAssertion.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ItemsAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ItemsAssertionFactoryDraft202012.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MaxContainsAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MaxContainsAssertionFactoryDraft202012.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MaxItemsAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MinContainsAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MinContainsAssertionFactoryDraft202012.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MinItemsAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/PrefixItemsAssertion.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/PrefixItemsAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UnevaluatedItemsAssertion.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UnevaluatedItemsAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UnevaluatedItemsAssertionFactoryDraft202012.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UniqueItemsAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/AbstractAssertionsCollectionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/AllOfAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/AnyOfAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/ElseAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/IfAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/NotAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/OneOfAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/ThenAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/ConstAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/EnumAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/FormatAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/TypeAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/Draft4MaximumAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/Draft4MinimumAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/ExclusiveMaximumAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/ExclusiveMinimumAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/MaximumAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/MinimumAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/MultipleOfAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/util/NumberUtil.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/AdditionalPropertiesAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/ConditionalRequiredPropertiesAssertion.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependenciesAssertion.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependenciesAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependentRequiredAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependentSchemasAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/MaxPropertiesAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/MinPropertiesAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PatternPropertiesAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PropertiesAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PropertiesNumberAssertion.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PropertyNamesAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/RequiredAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/UnevaluatedPropertiesAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/LengthAssertion.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/MaxLengthAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/MinLengthAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/PatternAssertionFactory.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/AbstractEmailFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/AbstractStringFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/DateFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/DateTimeFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/DurationFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/EmailFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/HostnameFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IdnEmailFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IdnHostnameFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IpV4FormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IpV6FormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IriFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IriReferenceFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IriSpec.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/JsonPointerFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/RegexFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/RelativeJsonPointerFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/TimeFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriReferenceFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriSpec.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriTemplateFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UuidFormatValidator.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/Validation.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/hostname/Normalizer.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/hostname/Punycode.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/ElementEqualityUtil.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/NumberParts.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/SchemaUtil.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/UnicodeUtil.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft201909.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft202012.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft4.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft6.kt (100%) rename {src => json-schema-validator/src}/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft7.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerExtensionsTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerSerializationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerWorkTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaContainsValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaItemsValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMaxContainsValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMaxItemsValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMinContainsValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMinItemsValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaUniqueItemsValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/CollectionSchemaTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaAllOfValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaAnyOfValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaIfThenElseValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaNotValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaOneOfValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/JsonSchemaConstValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/JsonSchemaEnumValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/JsonSchemaTypeValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/FormatValidationTestSuite.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaDateFormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaDateTimeFormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaDurationFormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaEmailFormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaHostnameFormatValidatorTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIdnEmailFormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIdnHostnameFormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIpV4FormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIpV6FormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIriFormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIriReferenceFormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaJsonPointerFormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaRegexFormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaRelativeJsonPointerFormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaTimeFormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUriFormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUriReferenceFormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUriTemplateFormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUuidFormatValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaExclusiveMaximumValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaExclusiveMinimumValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaMaximumValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaMinimumValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaMultipleOfValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaDependenciesValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaDependentRequiredValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaDependentSchemasValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaMaxPropertiesValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaMinPropertiesValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaPropertiesValidationsTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaPropertyNamesValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaRequiredValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaUnevaluatedPropertiesValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/ObjectCommonTests.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/ref/JsonSchemaRefValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/string/JsonSchemaMaxLengthValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/string/JsonSchemaMinLengthValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/string/JsonSchemaPatternValidationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaCircledReferencesTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaDraft201909Test.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaDraft202012Test.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaLoaderTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/base/OutputCollectorsTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/extension/JsonSchemaExtensionAnnotationTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/extension/JsonSchemaExtensionTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/internal/hostname/PunycodeTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/internal/util/ElementEqualityUtilTest.kt (100%) rename {src => json-schema-validator/src}/commonTest/kotlin/io/github/optimumcode/json/schema/serialization/AbsoluteLocationSerializationTest.kt (100%) rename {src => json-schema-validator/src}/jvmMain/kotlin/io/github/optimumcode/json/schema/JsonSchemaStream.kt (100%) rename {src => json-schema-validator/src}/jvmTest/kotlin/io/github/optimumcode/json/schema/JsonSchemaStreamTest.kt (100%) diff --git a/benchmark/build.gradle.kts b/benchmark/build.gradle.kts index fd22b1c7..1b9f04aa 100644 --- a/benchmark/build.gradle.kts +++ b/benchmark/build.gradle.kts @@ -4,10 +4,6 @@ plugins { alias(libs.plugins.kotlin.allopen) } -repositories { - mavenCentral() -} - allOpen { annotation("org.openjdk.jmh.annotations.State") } @@ -30,7 +26,7 @@ kotlin { sourceSets { commonMain { dependencies { - implementation(project(":")) + implementation(project(":json-schema-validator")) implementation(libs.kotlin.benchmark) implementation(libs.okio.common) implementation(libs.kotlin.serialization.json.okio) diff --git a/build.gradle.kts b/build.gradle.kts index e27622f0..7ef518d6 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,332 +1,20 @@ -import io.gitlab.arturbosch.detekt.Detekt -import org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi -import org.jetbrains.kotlin.gradle.plugin.KotlinTarget -import org.jetbrains.kotlin.gradle.plugin.KotlinTargetWithTests -import org.jlleitschuh.gradle.ktlint.reporter.ReporterType -import java.util.Locale - plugins { - alias(libs.plugins.kotlin.mutliplatform) - alias(libs.plugins.kotlin.serialization) - alias(libs.plugins.kotest.multiplatform) - alias(libs.plugins.kover) - alias(libs.plugins.detekt) - alias(libs.plugins.ktlint) + alias(libs.plugins.kotlin.mutliplatform) apply false alias(libs.plugins.kotlin.binaryCompatibility) - alias(libs.plugins.kotlin.dokka) alias(libs.plugins.nexus.publish) id("convention.properties") - id("convention.publication") } -repositories { - mavenCentral() +allprojects { + repositories { + mavenCentral() + } } apiValidation { ignoredProjects += listOf("benchmark", "test-suites", "generator") } -val generatedSourceDirectory: Provider = layout.buildDirectory.dir("generated/source/unicode") - -//region Generation tasks block -val generatorConfiguration: Configuration by configurations.creating - -dependencies { - generatorConfiguration(project(":generator")) -} - -val dumpDir: File = layout.projectDirectory.dir("unicode_dump").asFile - -val dumpCharacterData by tasks.register("dumpCharacterData") { - onlyIf { - dumpDir.run { !exists() || listFiles().isNullOrEmpty() } - } - outputs.dir(dumpDir) - classpath(generatorConfiguration) - mainClass.set("io.github.optimumcode.unocode.generator.Main") - args( - "dump", - "-o", - dumpDir, - ) -} - -val generateCharacterDirectionData by tasks.register("generateCharacterDirectionData") { - inputs.dir(dumpDir) - outputs.dir(generatedSourceDirectory) - - dependsOn(dumpCharacterData) - - classpath(generatorConfiguration) - mainClass.set("io.github.optimumcode.unocode.generator.Main") - args( - "character-direction", - "-p", - "io.github.optimumcode.json.schema.internal.unicode", - "-o", - generatedSourceDirectory.get(), - "-d", - dumpDir, - ) -} - -val generateCharacterCategoryData by tasks.register("generateCharacterCategoryData") { - inputs.dir(dumpDir) - outputs.dir(generatedSourceDirectory) - - dependsOn(dumpCharacterData) - - classpath(generatorConfiguration) - mainClass.set("io.github.optimumcode.unocode.generator.Main") - args( - "character-category", - "-p", - "io.github.optimumcode.json.schema.internal.unicode", - "-o", - generatedSourceDirectory.get(), - "-d", - dumpDir, - ) -} - -val generateDerivedProperties by tasks.register("generateDerivedProperties") { - val dataFile = - layout.projectDirectory - .dir("generator") - .dir("data") - .file("rfc5895_appendix_b_1.txt") - inputs.file(dataFile) - outputs.dir(generatedSourceDirectory) - - classpath(generatorConfiguration) - mainClass.set("io.github.optimumcode.unocode.generator.Main") - args( - "derived-properties", - "-p", - "io.github.optimumcode.json.schema.internal.unicode", - "-o", - generatedSourceDirectory.get(), - "-d", - dataFile, - ) -} - -val generateJoiningTypes by tasks.register("generateJoiningTypes") { - val dataFile = - layout.projectDirectory - .dir("generator") - .dir("data") - .file("DerivedJoiningType.txt") - inputs.file(dataFile) - outputs.dir(generatedSourceDirectory) - - classpath(generatorConfiguration) - mainClass.set("io.github.optimumcode.unocode.generator.Main") - args( - "joining-types", - "-p", - "io.github.optimumcode.json.schema.internal.unicode", - "-o", - generatedSourceDirectory.get(), - "-d", - dataFile, - ) -} -//endregion - -kotlin { - explicitApi() - - @OptIn(ExperimentalKotlinGradlePluginApi::class) - compilerOptions { - freeCompilerArgs.add("-opt-in=io.github.optimumcode.json.schema.ExperimentalApi") - } - jvmToolchain(11) - jvm { - testRuns["test"].executionTask.configure { - useJUnitPlatform() - } - } - js(IR) { - browser { - commonWebpackConfig { - cssSupport { - enabled.set(true) - } - } - } - generateTypeScriptDefinitions() - nodejs() - } - applyDefaultHierarchyTemplate() - - val macOsTargets = - listOf( - macosX64(), - macosArm64(), - iosX64(), - iosArm64(), - iosSimulatorArm64(), - ) - - val linuxTargets = - listOf( - linuxX64(), - linuxArm64(), - ) - - val windowsTargets = - listOf( - mingwX64(), - ) - - sourceSets { - commonMain { - kotlin.srcDirs(generatedSourceDirectory) - - dependencies { - api(libs.kotlin.serialization.json) - api(libs.uri) - // When using approach like above you won't be able to add because block - implementation( - libs.kotlin.codepoints - .get() - .toString(), - ) { - because("simplifies work with unicode codepoints") - } - implementation(libs.normalize.get().toString()) { - because("provides normalization required by IDN-hostname format") - } - } - } - commonTest { - dependencies { - implementation(libs.kotest.assertions.core) - implementation(libs.kotest.framework.engine) - implementation(kotlin("test-common")) - implementation(kotlin("test-annotations-common")) - } - } - jvmTest { - dependencies { - implementation(libs.kotest.runner.junit5) - } - } - } - - fun Task.addGeneratedTasks() { - dependsOn( - generateCharacterDirectionData, - generateCharacterCategoryData, - generateDerivedProperties, - generateJoiningTypes, - ) - } - - targets.configureEach { - val capitalizedTargetName = - name.replaceFirstChar { if (it.isLowerCase()) it.titlecase(Locale.getDefault()) else it.toString() } - tasks.named("compileKotlin$capitalizedTargetName") { - addGeneratedTasks() - } - } - afterEvaluate { - targets.configureEach { - tasks.named("${name}SourcesJar") { - addGeneratedTasks() - } - } - tasks.named("sourcesJar") { - addGeneratedTasks() - } - } - - afterEvaluate { - fun Task.dependsOnTargetTests(targets: List) { - targets.forEach { - if (it is KotlinTargetWithTests<*, *>) { - dependsOn(tasks.getByName("${it.name}Test")) - } - } - } - tasks.register("macOsAllTest") { - group = "verification" - description = "runs all tests for MacOS and IOS targets" - dependsOnTargetTests(macOsTargets) - } - tasks.register("windowsAllTest") { - group = "verification" - description = "runs all tests for Windows targets" - dependsOnTargetTests(windowsTargets) - } - tasks.register("linuxAllTest") { - group = "verification" - description = "runs all tests for Linux targets" - dependsOnTargetTests(linuxTargets) - dependsOn(tasks.getByName("jvmTest")) - dependsOn(tasks.getByName("jsTest")) - } - } -} - -afterEvaluate { - val taskNames = setOf("compile", "detekt", "runKtlint") - tasks.configureEach { - // There is something wrong with compileCommonMainKotlinMetadata task - // Gradle cannot find it, but this task uses the generated source directory - // and Gradle reports implicit dependency. - // As a workaround I do this - seems like it is working. - // However, I might be missing something. Need to revisit this later. - - if (taskNames.any { name.startsWith(it) }) { - mustRunAfter( - generateCharacterDirectionData, - generateCharacterCategoryData, - generateDerivedProperties, - generateJoiningTypes, - ) - } - } -} - -kover { - reports { - filters { - excludes { - packages( - "io.github.optimumcode.json.schema.internal.unicode.*", - "io.github.optimumcode.json.schema.internal.unicode", - ) - } - } - } -} - -ktlint { - version.set(libs.versions.ktlint) - reporters { - reporter(ReporterType.HTML) - } - filter { - exclude { el -> - val absolutePath = el.file.absolutePath - absolutePath.contains("generated").and(!el.isDirectory) - } - } -} - -afterEvaluate { - val detektAllTask by tasks.register("detektAll") { - dependsOn(tasks.withType()) - } - - tasks.named("check").configure { - dependsOn(detektAllTask) - } -} - val ossrhUsername: String by project.ext val ossrhPassword: String by project.ext diff --git a/buildSrc/src/main/kotlin/convention.properties.gradle.kts b/buildSrc/src/main/kotlin/convention.properties.gradle.kts index 3b5f6799..8e8b0a63 100644 --- a/buildSrc/src/main/kotlin/convention.properties.gradle.kts +++ b/buildSrc/src/main/kotlin/convention.properties.gradle.kts @@ -1,27 +1,29 @@ import java.util.Properties -ext["signing.keyId"] = "" -ext["signing.password"] = "" -ext["signing.key"] = "" -ext["ossrhUsername"] = "" -ext["ossrhPassword"] = "" +allprojects { + ext["signing.keyId"] = "" + ext["signing.password"] = "" + ext["signing.key"] = "" + ext["ossrhUsername"] = "" + ext["ossrhPassword"] = "" -val secretPropsFile: File = project.rootProject.file("local.properties") -@Suppress("IMPLICIT_CAST_TO_ANY") -if (secretPropsFile.exists()) { - secretPropsFile - .reader() - .use { - Properties().apply { - load(it) + val secretPropsFile: File = project.rootProject.file("local.properties") + @Suppress("IMPLICIT_CAST_TO_ANY") + if (secretPropsFile.exists()) { + secretPropsFile + .reader() + .use { + Properties().apply { + load(it) + } + }.onEach { (name, value) -> + ext[name.toString()] = value } - }.onEach { (name, value) -> - ext[name.toString()] = value - } -} else { - ext["signing.keyId"] = System.getenv("SIGNING_KEY_ID") ?: "" - ext["signing.password"] = System.getenv("SIGNING_PASSWORD") ?: "" - ext["signing.keys"] = System.getenv("SIGNING_SECRET_KEY") ?: "" - ext["ossrhUsername"] = System.getenv("OSSRH_USERNAME") ?: "" - ext["ossrhPassword"] = System.getenv("OSSRH_PASSWORD") ?: "" + } else { + ext["signing.keyId"] = System.getenv("SIGNING_KEY_ID") ?: "" + ext["signing.password"] = System.getenv("SIGNING_PASSWORD") ?: "" + ext["signing.keys"] = System.getenv("SIGNING_SECRET_KEY") ?: "" + ext["ossrhUsername"] = System.getenv("OSSRH_USERNAME") ?: "" + ext["ossrhPassword"] = System.getenv("OSSRH_PASSWORD") ?: "" + } } \ No newline at end of file diff --git a/generator/build.gradle.kts b/generator/build.gradle.kts index ad23c4fb..b09171e7 100644 --- a/generator/build.gradle.kts +++ b/generator/build.gradle.kts @@ -5,7 +5,11 @@ import org.jlleitschuh.gradle.ktlint.reporter.ReporterType plugins { // otherwise there is Gradle exception // https://github.com/gradle/gradle/issues/20084 - id(libs.plugins.kotlin.jvm.get().pluginId) + id( + libs.plugins.kotlin.jvm + .get() + .pluginId, + ) alias(libs.plugins.kotlin.serialization) alias(libs.plugins.expediagroup.graphql) @@ -13,10 +17,6 @@ plugins { alias(libs.plugins.ktlint) } -repositories { - mavenCentral() -} - kotlin { jvmToolchain(11) } diff --git a/api/json-schema-validator.api b/json-schema-validator/api/json-schema-validator.api similarity index 100% rename from api/json-schema-validator.api rename to json-schema-validator/api/json-schema-validator.api diff --git a/json-schema-validator/build.gradle.kts b/json-schema-validator/build.gradle.kts new file mode 100644 index 00000000..d61ea18f --- /dev/null +++ b/json-schema-validator/build.gradle.kts @@ -0,0 +1,320 @@ +import io.gitlab.arturbosch.detekt.Detekt +import org.jetbrains.kotlin.gradle.ExperimentalKotlinGradlePluginApi +import org.jetbrains.kotlin.gradle.plugin.KotlinTarget +import org.jetbrains.kotlin.gradle.plugin.KotlinTargetWithTests +import org.jlleitschuh.gradle.ktlint.reporter.ReporterType +import java.util.Locale + +plugins { + alias(libs.plugins.kotlin.mutliplatform) + alias(libs.plugins.kotlin.serialization) + alias(libs.plugins.kotest.multiplatform) + alias(libs.plugins.kover) + alias(libs.plugins.detekt) + alias(libs.plugins.ktlint) + alias(libs.plugins.kotlin.dokka) + id("convention.publication") +} + +val generatedSourceDirectory: Provider = layout.buildDirectory.dir("generated/source/unicode") + +//region Generation tasks block +val generatorConfiguration: Configuration by configurations.creating + +dependencies { + generatorConfiguration(project(":generator")) +} + +val dumpDir: File = + rootProject.layout.projectDirectory + .dir("unicode_dump") + .asFile + +val dumpCharacterData by tasks.register("dumpCharacterData") { + onlyIf { + dumpDir.run { !exists() || listFiles().isNullOrEmpty() } + } + outputs.dir(dumpDir) + classpath(generatorConfiguration) + mainClass.set("io.github.optimumcode.unocode.generator.Main") + args( + "dump", + "-o", + dumpDir, + ) +} + +val generateCharacterDirectionData by tasks.register("generateCharacterDirectionData") { + inputs.dir(dumpDir) + outputs.dir(generatedSourceDirectory) + + dependsOn(dumpCharacterData) + + classpath(generatorConfiguration) + mainClass.set("io.github.optimumcode.unocode.generator.Main") + args( + "character-direction", + "-p", + "io.github.optimumcode.json.schema.internal.unicode", + "-o", + generatedSourceDirectory.get(), + "-d", + dumpDir, + ) +} + +val generateCharacterCategoryData by tasks.register("generateCharacterCategoryData") { + inputs.dir(dumpDir) + outputs.dir(generatedSourceDirectory) + + dependsOn(dumpCharacterData) + + classpath(generatorConfiguration) + mainClass.set("io.github.optimumcode.unocode.generator.Main") + args( + "character-category", + "-p", + "io.github.optimumcode.json.schema.internal.unicode", + "-o", + generatedSourceDirectory.get(), + "-d", + dumpDir, + ) +} + +val generateDerivedProperties by tasks.register("generateDerivedProperties") { + val dataFile = + rootProject.layout.projectDirectory + .dir("generator") + .dir("data") + .file("rfc5895_appendix_b_1.txt") + inputs.file(dataFile) + outputs.dir(generatedSourceDirectory) + + classpath(generatorConfiguration) + mainClass.set("io.github.optimumcode.unocode.generator.Main") + args( + "derived-properties", + "-p", + "io.github.optimumcode.json.schema.internal.unicode", + "-o", + generatedSourceDirectory.get(), + "-d", + dataFile, + ) +} + +val generateJoiningTypes by tasks.register("generateJoiningTypes") { + val dataFile = + rootProject.layout.projectDirectory + .dir("generator") + .dir("data") + .file("DerivedJoiningType.txt") + inputs.file(dataFile) + outputs.dir(generatedSourceDirectory) + + classpath(generatorConfiguration) + mainClass.set("io.github.optimumcode.unocode.generator.Main") + args( + "joining-types", + "-p", + "io.github.optimumcode.json.schema.internal.unicode", + "-o", + generatedSourceDirectory.get(), + "-d", + dataFile, + ) +} +//endregion + +kotlin { + explicitApi() + + @OptIn(ExperimentalKotlinGradlePluginApi::class) + compilerOptions { + freeCompilerArgs.add("-opt-in=io.github.optimumcode.json.schema.ExperimentalApi") + } + jvmToolchain(11) + jvm { + testRuns["test"].executionTask.configure { + useJUnitPlatform() + } + } + js(IR) { + browser { + commonWebpackConfig { + cssSupport { + enabled.set(true) + } + } + } + generateTypeScriptDefinitions() + nodejs() + } + applyDefaultHierarchyTemplate() + + val macOsTargets = + listOf( + macosX64(), + macosArm64(), + iosX64(), + iosArm64(), + iosSimulatorArm64(), + ) + + val linuxTargets = + listOf( + linuxX64(), + linuxArm64(), + ) + + val windowsTargets = + listOf( + mingwX64(), + ) + + sourceSets { + commonMain { + kotlin.srcDirs(generatedSourceDirectory) + + dependencies { + api(libs.kotlin.serialization.json) + api(libs.uri) + // When using approach like above you won't be able to add because block + implementation( + libs.kotlin.codepoints + .get() + .toString(), + ) { + because("simplifies work with unicode codepoints") + } + implementation(libs.normalize.get().toString()) { + because("provides normalization required by IDN-hostname format") + } + } + } + commonTest { + dependencies { + implementation(libs.kotest.assertions.core) + implementation(libs.kotest.framework.engine) + implementation(kotlin("test-common")) + implementation(kotlin("test-annotations-common")) + } + } + jvmTest { + dependencies { + implementation(libs.kotest.runner.junit5) + } + } + } + + fun Task.addGeneratedTasks() { + dependsOn( + generateCharacterDirectionData, + generateCharacterCategoryData, + generateDerivedProperties, + generateJoiningTypes, + ) + } + + targets.configureEach { + val capitalizedTargetName = + name.replaceFirstChar { if (it.isLowerCase()) it.titlecase(Locale.getDefault()) else it.toString() } + tasks.named("compileKotlin$capitalizedTargetName") { + addGeneratedTasks() + } + } + afterEvaluate { + targets.configureEach { + tasks.named("${name}SourcesJar") { + addGeneratedTasks() + } + } + tasks.named("sourcesJar") { + addGeneratedTasks() + } + } + + afterEvaluate { + fun Task.dependsOnTargetTests(targets: List) { + targets.forEach { + if (it is KotlinTargetWithTests<*, *>) { + dependsOn(tasks.getByName("${it.name}Test")) + } + } + } + tasks.register("macOsAllTest") { + group = "verification" + description = "runs all tests for MacOS and IOS targets" + dependsOnTargetTests(macOsTargets) + } + tasks.register("windowsAllTest") { + group = "verification" + description = "runs all tests for Windows targets" + dependsOnTargetTests(windowsTargets) + } + tasks.register("linuxAllTest") { + group = "verification" + description = "runs all tests for Linux targets" + dependsOnTargetTests(linuxTargets) + dependsOn(tasks.getByName("jvmTest")) + dependsOn(tasks.getByName("jsTest")) + } + } +} + +afterEvaluate { + val taskNames = setOf("compile", "detekt", "runKtlint") + tasks.configureEach { + // There is something wrong with compileCommonMainKotlinMetadata task + // Gradle cannot find it, but this task uses the generated source directory + // and Gradle reports implicit dependency. + // As a workaround I do this - seems like it is working. + // However, I might be missing something. Need to revisit this later. + + if (taskNames.any { name.startsWith(it) }) { + mustRunAfter( + generateCharacterDirectionData, + generateCharacterCategoryData, + generateDerivedProperties, + generateJoiningTypes, + ) + } + } +} + +kover { + reports { + filters { + excludes { + packages( + "io.github.optimumcode.json.schema.internal.unicode.*", + "io.github.optimumcode.json.schema.internal.unicode", + ) + } + } + } +} + +ktlint { + version.set(libs.versions.ktlint) + reporters { + reporter(ReporterType.HTML) + } + filter { + exclude { el -> + val absolutePath = el.file.absolutePath + absolutePath.contains("generated").and(!el.isDirectory) + } + } +} + +afterEvaluate { + val detektAllTask by tasks.register("detektAll") { + dependsOn(tasks.withType()) + } + + tasks.named("check").configure { + dependsOn(detektAllTask) + } +} \ No newline at end of file diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/pointer/JsonPointer.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/pointer/JsonPointer.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/pointer/JsonPointer.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/pointer/JsonPointer.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/pointer/JsonPointerSerializer.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/pointer/JsonPointerSerializer.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/pointer/JsonPointerSerializer.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/pointer/JsonPointerSerializer.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/pointer/extensions.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/pointer/extensions.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/pointer/extensions.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/pointer/extensions.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/pointer/internal/extensions.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/pointer/internal/extensions.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/pointer/internal/extensions.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/pointer/internal/extensions.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/AbsoluteLocation.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/AbsoluteLocation.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/AbsoluteLocation.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/AbsoluteLocation.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/AnnotationKey.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/AnnotationKey.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/AnnotationKey.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/AnnotationKey.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/Annotations.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/Annotations.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/Annotations.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/Annotations.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/ErrorCollector.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/ErrorCollector.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/ErrorCollector.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/ErrorCollector.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/ExperimentalApi.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/ExperimentalApi.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/ExperimentalApi.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/ExperimentalApi.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/FormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/FormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/FormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/FormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/JsonSchema.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/JsonSchema.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/JsonSchema.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/JsonSchema.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/JsonSchemaLoader.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/JsonSchemaLoader.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/JsonSchemaLoader.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/JsonSchemaLoader.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/OutputCollector.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/OutputCollector.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/OutputCollector.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/OutputCollector.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/SchemaOption.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/SchemaOption.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/SchemaOption.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/SchemaOption.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/SchemaType.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/SchemaType.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/SchemaType.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/SchemaType.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/ValidationError.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/ValidationError.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/ValidationError.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/ValidationError.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/ValidationOutput.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/ValidationOutput.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/ValidationOutput.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/ValidationOutput.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAnnotationCollector.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAnnotationCollector.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAnnotationCollector.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAnnotationCollector.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAssertion.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAssertion.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAssertion.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAssertion.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAssertionContext.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAssertionContext.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAssertionContext.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAssertionContext.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalLoadingContext.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalLoadingContext.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalLoadingContext.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/extension/ExternalLoadingContext.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/AnnotationCollector.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/AnnotationCollector.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/AnnotationCollector.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/AnnotationCollector.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/AssertionContext.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/AssertionContext.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/AssertionContext.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/AssertionContext.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/AssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/AssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/AssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/AssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/BooleanSchemaAssertion.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/BooleanSchemaAssertion.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/BooleanSchemaAssertion.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/BooleanSchemaAssertion.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/JsonSchemaAssertion.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/JsonSchemaAssertion.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/JsonSchemaAssertion.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/JsonSchemaAssertion.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/JsonSchemaRoot.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/JsonSchemaRoot.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/JsonSchemaRoot.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/JsonSchemaRoot.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/KeyWord.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/KeyWord.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/KeyWord.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/KeyWord.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/LoadingContext.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/LoadingContext.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/LoadingContext.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/LoadingContext.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/RecursiveRefSchemaAssertion.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/RecursiveRefSchemaAssertion.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/RecursiveRefSchemaAssertion.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/RecursiveRefSchemaAssertion.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/RefId.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/RefId.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/RefId.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/RefId.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/RefSchemaAssertion.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/RefSchemaAssertion.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/RefSchemaAssertion.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/RefSchemaAssertion.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/ReferenceResolver.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/ReferenceResolver.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/ReferenceResolver.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/ReferenceResolver.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/ReferenceValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/ReferenceValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/ReferenceValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/ReferenceValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/SchemaLoader.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/SchemaLoader.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/SchemaLoader.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/SchemaLoader.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/SchemaLoaderConfig.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/SchemaLoaderConfig.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/SchemaLoaderConfig.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/SchemaLoaderConfig.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/SchemaLoaderContext.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/SchemaLoaderContext.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/SchemaLoaderContext.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/SchemaLoaderContext.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft201909SchemaLoaderConfig.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft201909SchemaLoaderConfig.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft201909SchemaLoaderConfig.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft201909SchemaLoaderConfig.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft202012SchemaLoaderConfig.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft202012SchemaLoaderConfig.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft202012SchemaLoaderConfig.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft202012SchemaLoaderConfig.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft4SchemaLoaderConfig.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft4SchemaLoaderConfig.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft4SchemaLoaderConfig.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft4SchemaLoaderConfig.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft6SchemaLoaderConfig.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft6SchemaLoaderConfig.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft6SchemaLoaderConfig.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft6SchemaLoaderConfig.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft7SchemaLoaderConfig.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft7SchemaLoaderConfig.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft7SchemaLoaderConfig.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/config/Draft7SchemaLoaderConfig.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/AbstractAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/AbstractAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/AbstractAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/AbstractAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/ExternalAssertionFactoryAdapter.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/ExternalAssertionFactoryAdapter.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/ExternalAssertionFactoryAdapter.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/ExternalAssertionFactoryAdapter.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/AdditionalItemsAssertion.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/AdditionalItemsAssertion.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/AdditionalItemsAssertion.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/AdditionalItemsAssertion.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/AdditionalItemsAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/AdditionalItemsAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/AdditionalItemsAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/AdditionalItemsAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/AllItemsAssertion.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/AllItemsAssertion.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/AllItemsAssertion.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/AllItemsAssertion.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ArrayLengthAssertion.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ArrayLengthAssertion.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ArrayLengthAssertion.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ArrayLengthAssertion.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ContainsAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ContainsAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ContainsAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ContainsAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ContainsAssertionFactoryDraft202012.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ContainsAssertionFactoryDraft202012.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ContainsAssertionFactoryDraft202012.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ContainsAssertionFactoryDraft202012.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/CountContainsAssertion.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/CountContainsAssertion.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/CountContainsAssertion.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/CountContainsAssertion.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ItemsAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ItemsAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ItemsAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ItemsAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ItemsAssertionFactoryDraft202012.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ItemsAssertionFactoryDraft202012.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ItemsAssertionFactoryDraft202012.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/ItemsAssertionFactoryDraft202012.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MaxContainsAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MaxContainsAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MaxContainsAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MaxContainsAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MaxContainsAssertionFactoryDraft202012.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MaxContainsAssertionFactoryDraft202012.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MaxContainsAssertionFactoryDraft202012.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MaxContainsAssertionFactoryDraft202012.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MaxItemsAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MaxItemsAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MaxItemsAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MaxItemsAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MinContainsAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MinContainsAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MinContainsAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MinContainsAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MinContainsAssertionFactoryDraft202012.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MinContainsAssertionFactoryDraft202012.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MinContainsAssertionFactoryDraft202012.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MinContainsAssertionFactoryDraft202012.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MinItemsAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MinItemsAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MinItemsAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/MinItemsAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/PrefixItemsAssertion.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/PrefixItemsAssertion.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/PrefixItemsAssertion.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/PrefixItemsAssertion.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/PrefixItemsAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/PrefixItemsAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/PrefixItemsAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/PrefixItemsAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UnevaluatedItemsAssertion.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UnevaluatedItemsAssertion.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UnevaluatedItemsAssertion.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UnevaluatedItemsAssertion.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UnevaluatedItemsAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UnevaluatedItemsAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UnevaluatedItemsAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UnevaluatedItemsAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UnevaluatedItemsAssertionFactoryDraft202012.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UnevaluatedItemsAssertionFactoryDraft202012.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UnevaluatedItemsAssertionFactoryDraft202012.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UnevaluatedItemsAssertionFactoryDraft202012.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UniqueItemsAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UniqueItemsAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UniqueItemsAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/array/UniqueItemsAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/AbstractAssertionsCollectionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/AbstractAssertionsCollectionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/AbstractAssertionsCollectionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/AbstractAssertionsCollectionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/AllOfAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/AllOfAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/AllOfAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/AllOfAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/AnyOfAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/AnyOfAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/AnyOfAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/AnyOfAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/ElseAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/ElseAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/ElseAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/ElseAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/IfAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/IfAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/IfAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/IfAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/NotAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/NotAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/NotAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/NotAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/OneOfAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/OneOfAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/OneOfAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/OneOfAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/ThenAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/ThenAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/ThenAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/condition/ThenAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/ConstAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/ConstAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/ConstAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/ConstAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/EnumAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/EnumAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/EnumAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/EnumAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/FormatAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/FormatAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/FormatAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/FormatAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/TypeAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/TypeAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/TypeAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/general/TypeAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/Draft4MaximumAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/Draft4MaximumAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/Draft4MaximumAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/Draft4MaximumAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/Draft4MinimumAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/Draft4MinimumAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/Draft4MinimumAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/Draft4MinimumAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/ExclusiveMaximumAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/ExclusiveMaximumAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/ExclusiveMaximumAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/ExclusiveMaximumAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/ExclusiveMinimumAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/ExclusiveMinimumAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/ExclusiveMinimumAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/ExclusiveMinimumAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/MaximumAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/MaximumAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/MaximumAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/MaximumAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/MinimumAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/MinimumAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/MinimumAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/MinimumAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/MultipleOfAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/MultipleOfAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/MultipleOfAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/MultipleOfAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/util/NumberUtil.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/util/NumberUtil.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/util/NumberUtil.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/number/util/NumberUtil.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/AdditionalPropertiesAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/AdditionalPropertiesAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/AdditionalPropertiesAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/AdditionalPropertiesAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/ConditionalRequiredPropertiesAssertion.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/ConditionalRequiredPropertiesAssertion.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/ConditionalRequiredPropertiesAssertion.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/ConditionalRequiredPropertiesAssertion.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependenciesAssertion.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependenciesAssertion.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependenciesAssertion.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependenciesAssertion.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependenciesAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependenciesAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependenciesAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependenciesAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependentRequiredAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependentRequiredAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependentRequiredAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependentRequiredAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependentSchemasAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependentSchemasAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependentSchemasAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/DependentSchemasAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/MaxPropertiesAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/MaxPropertiesAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/MaxPropertiesAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/MaxPropertiesAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/MinPropertiesAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/MinPropertiesAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/MinPropertiesAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/MinPropertiesAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PatternPropertiesAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PatternPropertiesAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PatternPropertiesAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PatternPropertiesAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PropertiesAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PropertiesAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PropertiesAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PropertiesAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PropertiesNumberAssertion.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PropertiesNumberAssertion.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PropertiesNumberAssertion.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PropertiesNumberAssertion.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PropertyNamesAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PropertyNamesAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PropertyNamesAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/PropertyNamesAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/RequiredAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/RequiredAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/RequiredAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/RequiredAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/UnevaluatedPropertiesAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/UnevaluatedPropertiesAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/UnevaluatedPropertiesAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/object/UnevaluatedPropertiesAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/LengthAssertion.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/LengthAssertion.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/LengthAssertion.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/LengthAssertion.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/MaxLengthAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/MaxLengthAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/MaxLengthAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/MaxLengthAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/MinLengthAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/MinLengthAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/MinLengthAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/MinLengthAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/PatternAssertionFactory.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/PatternAssertionFactory.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/PatternAssertionFactory.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/factories/string/PatternAssertionFactory.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/AbstractEmailFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/AbstractEmailFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/AbstractEmailFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/AbstractEmailFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/AbstractStringFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/AbstractStringFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/AbstractStringFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/AbstractStringFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/DateFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/DateFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/DateFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/DateFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/DateTimeFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/DateTimeFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/DateTimeFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/DateTimeFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/DurationFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/DurationFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/DurationFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/DurationFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/EmailFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/EmailFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/EmailFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/EmailFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/HostnameFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/HostnameFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/HostnameFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/HostnameFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IdnEmailFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IdnEmailFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IdnEmailFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IdnEmailFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IdnHostnameFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IdnHostnameFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IdnHostnameFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IdnHostnameFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IpV4FormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IpV4FormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IpV4FormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IpV4FormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IpV6FormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IpV6FormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IpV6FormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IpV6FormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IriFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IriFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IriFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IriFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IriReferenceFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IriReferenceFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IriReferenceFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IriReferenceFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IriSpec.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IriSpec.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IriSpec.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/IriSpec.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/JsonPointerFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/JsonPointerFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/JsonPointerFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/JsonPointerFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/RegexFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/RegexFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/RegexFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/RegexFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/RelativeJsonPointerFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/RelativeJsonPointerFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/RelativeJsonPointerFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/RelativeJsonPointerFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/TimeFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/TimeFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/TimeFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/TimeFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriReferenceFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriReferenceFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriReferenceFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriReferenceFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriSpec.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriSpec.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriSpec.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriSpec.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriTemplateFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriTemplateFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriTemplateFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UriTemplateFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UuidFormatValidator.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UuidFormatValidator.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UuidFormatValidator.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/UuidFormatValidator.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/Validation.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/Validation.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/Validation.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/formats/Validation.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/hostname/Normalizer.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/hostname/Normalizer.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/hostname/Normalizer.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/hostname/Normalizer.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/hostname/Punycode.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/hostname/Punycode.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/hostname/Punycode.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/hostname/Punycode.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/ElementEqualityUtil.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/ElementEqualityUtil.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/ElementEqualityUtil.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/ElementEqualityUtil.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/NumberParts.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/NumberParts.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/NumberParts.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/NumberParts.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/SchemaUtil.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/SchemaUtil.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/SchemaUtil.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/SchemaUtil.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/UnicodeUtil.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/UnicodeUtil.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/UnicodeUtil.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/util/UnicodeUtil.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft201909.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft201909.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft201909.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft201909.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft202012.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft202012.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft202012.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft202012.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft4.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft4.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft4.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft4.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft6.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft6.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft6.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft6.kt diff --git a/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft7.kt b/json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft7.kt similarity index 100% rename from src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft7.kt rename to json-schema-validator/src/commonMain/kotlin/io/github/optimumcode/json/schema/internal/wellknown/Draft7.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerExtensionsTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerExtensionsTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerExtensionsTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerExtensionsTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerSerializationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerSerializationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerSerializationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerSerializationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerWorkTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerWorkTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerWorkTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/pointer/JsonPointerWorkTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaContainsValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaContainsValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaContainsValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaContainsValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaItemsValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaItemsValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaItemsValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaItemsValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMaxContainsValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMaxContainsValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMaxContainsValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMaxContainsValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMaxItemsValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMaxItemsValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMaxItemsValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMaxItemsValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMinContainsValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMinContainsValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMinContainsValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMinContainsValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMinItemsValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMinItemsValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMinItemsValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaMinItemsValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaUniqueItemsValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaUniqueItemsValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaUniqueItemsValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/array/JsonSchemaUniqueItemsValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/CollectionSchemaTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/CollectionSchemaTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/CollectionSchemaTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/CollectionSchemaTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaAllOfValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaAllOfValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaAllOfValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaAllOfValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaAnyOfValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaAnyOfValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaAnyOfValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaAnyOfValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaIfThenElseValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaIfThenElseValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaIfThenElseValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaIfThenElseValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaNotValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaNotValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaNotValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaNotValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaOneOfValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaOneOfValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaOneOfValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/condition/JsonSchemaOneOfValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/JsonSchemaConstValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/JsonSchemaConstValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/JsonSchemaConstValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/JsonSchemaConstValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/JsonSchemaEnumValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/JsonSchemaEnumValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/JsonSchemaEnumValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/JsonSchemaEnumValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/JsonSchemaTypeValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/JsonSchemaTypeValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/JsonSchemaTypeValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/JsonSchemaTypeValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/FormatValidationTestSuite.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/FormatValidationTestSuite.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/FormatValidationTestSuite.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/FormatValidationTestSuite.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaDateFormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaDateFormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaDateFormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaDateFormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaDateTimeFormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaDateTimeFormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaDateTimeFormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaDateTimeFormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaDurationFormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaDurationFormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaDurationFormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaDurationFormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaEmailFormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaEmailFormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaEmailFormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaEmailFormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaHostnameFormatValidatorTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaHostnameFormatValidatorTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaHostnameFormatValidatorTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaHostnameFormatValidatorTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIdnEmailFormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIdnEmailFormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIdnEmailFormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIdnEmailFormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIdnHostnameFormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIdnHostnameFormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIdnHostnameFormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIdnHostnameFormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIpV4FormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIpV4FormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIpV4FormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIpV4FormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIpV6FormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIpV6FormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIpV6FormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIpV6FormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIriFormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIriFormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIriFormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIriFormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIriReferenceFormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIriReferenceFormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIriReferenceFormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaIriReferenceFormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaJsonPointerFormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaJsonPointerFormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaJsonPointerFormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaJsonPointerFormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaRegexFormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaRegexFormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaRegexFormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaRegexFormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaRelativeJsonPointerFormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaRelativeJsonPointerFormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaRelativeJsonPointerFormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaRelativeJsonPointerFormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaTimeFormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaTimeFormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaTimeFormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaTimeFormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUriFormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUriFormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUriFormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUriFormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUriReferenceFormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUriReferenceFormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUriReferenceFormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUriReferenceFormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUriTemplateFormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUriTemplateFormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUriTemplateFormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUriTemplateFormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUuidFormatValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUuidFormatValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUuidFormatValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/general/format/JsonSchemaUuidFormatValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaExclusiveMaximumValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaExclusiveMaximumValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaExclusiveMaximumValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaExclusiveMaximumValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaExclusiveMinimumValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaExclusiveMinimumValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaExclusiveMinimumValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaExclusiveMinimumValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaMaximumValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaMaximumValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaMaximumValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaMaximumValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaMinimumValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaMinimumValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaMinimumValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaMinimumValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaMultipleOfValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaMultipleOfValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaMultipleOfValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/number/JsonSchemaMultipleOfValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaDependenciesValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaDependenciesValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaDependenciesValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaDependenciesValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaDependentRequiredValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaDependentRequiredValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaDependentRequiredValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaDependentRequiredValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaDependentSchemasValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaDependentSchemasValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaDependentSchemasValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaDependentSchemasValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaMaxPropertiesValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaMaxPropertiesValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaMaxPropertiesValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaMaxPropertiesValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaMinPropertiesValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaMinPropertiesValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaMinPropertiesValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaMinPropertiesValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaPropertiesValidationsTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaPropertiesValidationsTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaPropertiesValidationsTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaPropertiesValidationsTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaPropertyNamesValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaPropertyNamesValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaPropertyNamesValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaPropertyNamesValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaRequiredValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaRequiredValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaRequiredValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaRequiredValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaUnevaluatedPropertiesValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaUnevaluatedPropertiesValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaUnevaluatedPropertiesValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/JsonSchemaUnevaluatedPropertiesValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/ObjectCommonTests.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/ObjectCommonTests.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/ObjectCommonTests.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/object/ObjectCommonTests.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/ref/JsonSchemaRefValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/ref/JsonSchemaRefValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/ref/JsonSchemaRefValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/ref/JsonSchemaRefValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/string/JsonSchemaMaxLengthValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/string/JsonSchemaMaxLengthValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/string/JsonSchemaMaxLengthValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/string/JsonSchemaMaxLengthValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/string/JsonSchemaMinLengthValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/string/JsonSchemaMinLengthValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/string/JsonSchemaMinLengthValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/string/JsonSchemaMinLengthValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/string/JsonSchemaPatternValidationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/string/JsonSchemaPatternValidationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/string/JsonSchemaPatternValidationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/assertions/string/JsonSchemaPatternValidationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaCircledReferencesTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaCircledReferencesTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaCircledReferencesTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaCircledReferencesTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaDraft201909Test.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaDraft201909Test.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaDraft201909Test.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaDraft201909Test.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaDraft202012Test.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaDraft202012Test.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaDraft202012Test.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaDraft202012Test.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaLoaderTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaLoaderTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaLoaderTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaLoaderTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/JsonSchemaTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/OutputCollectorsTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/OutputCollectorsTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/base/OutputCollectorsTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/base/OutputCollectorsTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/extension/JsonSchemaExtensionAnnotationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/extension/JsonSchemaExtensionAnnotationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/extension/JsonSchemaExtensionAnnotationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/extension/JsonSchemaExtensionAnnotationTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/extension/JsonSchemaExtensionTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/extension/JsonSchemaExtensionTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/extension/JsonSchemaExtensionTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/extension/JsonSchemaExtensionTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/internal/hostname/PunycodeTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/internal/hostname/PunycodeTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/internal/hostname/PunycodeTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/internal/hostname/PunycodeTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/internal/util/ElementEqualityUtilTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/internal/util/ElementEqualityUtilTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/internal/util/ElementEqualityUtilTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/internal/util/ElementEqualityUtilTest.kt diff --git a/src/commonTest/kotlin/io/github/optimumcode/json/schema/serialization/AbsoluteLocationSerializationTest.kt b/json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/serialization/AbsoluteLocationSerializationTest.kt similarity index 100% rename from src/commonTest/kotlin/io/github/optimumcode/json/schema/serialization/AbsoluteLocationSerializationTest.kt rename to json-schema-validator/src/commonTest/kotlin/io/github/optimumcode/json/schema/serialization/AbsoluteLocationSerializationTest.kt diff --git a/src/jvmMain/kotlin/io/github/optimumcode/json/schema/JsonSchemaStream.kt b/json-schema-validator/src/jvmMain/kotlin/io/github/optimumcode/json/schema/JsonSchemaStream.kt similarity index 100% rename from src/jvmMain/kotlin/io/github/optimumcode/json/schema/JsonSchemaStream.kt rename to json-schema-validator/src/jvmMain/kotlin/io/github/optimumcode/json/schema/JsonSchemaStream.kt diff --git a/src/jvmTest/kotlin/io/github/optimumcode/json/schema/JsonSchemaStreamTest.kt b/json-schema-validator/src/jvmTest/kotlin/io/github/optimumcode/json/schema/JsonSchemaStreamTest.kt similarity index 100% rename from src/jvmTest/kotlin/io/github/optimumcode/json/schema/JsonSchemaStreamTest.kt rename to json-schema-validator/src/jvmTest/kotlin/io/github/optimumcode/json/schema/JsonSchemaStreamTest.kt diff --git a/settings.gradle.kts b/settings.gradle.kts index 4165ef57..d2e700c6 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -1,5 +1,6 @@ -rootProject.name = "json-schema-validator" +rootProject.name = "json-schema-validator-root" include(":test-suites") include(":benchmark") -include(":generator") \ No newline at end of file +include(":generator") +include(":json-schema-validator") \ No newline at end of file diff --git a/test-suites/build.gradle.kts b/test-suites/build.gradle.kts index c1722a3e..238f7f98 100644 --- a/test-suites/build.gradle.kts +++ b/test-suites/build.gradle.kts @@ -15,10 +15,6 @@ plugins { alias(libs.plugins.ktlint) } -repositories { - mavenCentral() -} - kotlin { explicitApi() jvmToolchain(11) @@ -56,7 +52,7 @@ kotlin { sourceSets { commonTest { dependencies { - implementation(project(":")) + implementation(project(":json-schema-validator")) implementation(libs.kotest.assertions.core) implementation(libs.kotest.framework.engine) implementation(kotlin("test-common")) @@ -122,10 +118,14 @@ kotlin { } dependencies { - kover(project(":")) + kover(project(":json-schema-validator")) } -private val remotesFile = layout.buildDirectory.file("remotes.json").get().asFile +private val remotesFile = + layout.buildDirectory + .file("remotes.json") + .get() + .asFile val generateRemoteSchemas = tasks.register("generateRemoteSchemas") { From a871cb0d5bb41e7fdb0dce69cb78347a3820a582 Mon Sep 17 00:00:00 2001 From: Oleg Smirnov Date: Wed, 19 Jun 2024 18:13:17 +0400 Subject: [PATCH 3/3] Update workflows --- .github/workflows/release.yml | 6 +++++- .github/workflows/snapshot_release.yml | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7a5d9ce5..71257c6e 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -64,7 +64,11 @@ jobs: with: gradle-version: wrapper - name: Build and publish release - run: ./gradlew --no-daemon --info :assemble publish closeAndReleaseStagingRepositories -Pversion=${{ needs.version.outputs.RELEASE_VERSION }} -x :benchmark:benchmark + run: > + ./gradlew --no-daemon --info :json-schema-validator:assemble + publish closeAndReleaseStagingRepositories + -Pversion=${{ needs.version.outputs.RELEASE_VERSION }} + -x :benchmark:benchmark env: SIGNING_KEY_ID: ${{ secrets.SIGNING_KEY_ID }} SIGNING_PASSWORD: ${{ secrets.SIGNING_PASSWORD }} diff --git a/.github/workflows/snapshot_release.yml b/.github/workflows/snapshot_release.yml index 43b0c328..6ef9a573 100644 --- a/.github/workflows/snapshot_release.yml +++ b/.github/workflows/snapshot_release.yml @@ -59,7 +59,7 @@ jobs: ./gradlew --no-daemon --info - :assemble + :json-schema-validator:assemble publish -x :benchmark:benchmark env: