refactor: Format code with spotless

This commit applies automated code formatting using Spotless across multiple modules. The changes primarily involve adjustments to trailing commas, spacing, and import statements to ensure consistency with the project's coding style.

Key changes include:

- **Kotlin Files:**
    - Added trailing commas to multi-line parameter lists, argument lists, and collection literals in various Kotlin files across `app`, `core:designsystem`, `core:network`, `domain`, and `model:data` modules.
    - Standardized spacing around operators and keywords.
    - Optimized import statements in test files (`ExampleUnitTest.kt`, `ExampleInstrumentedTest.kt`).
- **XML Files:**
    - Reformatted XML attributes in drawable vector files (`ic_*.xml`) within the `core:designsystem` module for better readability.
- **JSON Files:**
    - Reformatted `sample_quiz.json` in `core:network` test resources for consistent structure.
- **Detekt Configuration:**
    - Updated `detekt.yml` files in `app` and `core:designsystem` to adjust ignored annotations lists, ensuring proper spacing (e.g., `['Composable']` to `[ 'Composable' ]`).
This commit is contained in:
2025-09-03 23:46:09 +02:00
parent 7568abb775
commit 710dedb0cc
45 changed files with 842 additions and 286 deletions

View File

@@ -8,18 +8,18 @@ naming:
complexity:
LongParameterList:
ignoreAnnotated: ['Composable']
ignoreAnnotated: [ 'Composable' ]
TooManyFunctions:
ignoreAnnotatedFunctions: ['Preview']
ignoreAnnotatedFunctions: [ 'Preview' ]
style:
MagicNumber:
ignorePropertyDeclaration: true
ignoreCompanionObjectPropertyDeclaration: true
ignoreAnnotated: ['Composable']
ignoreAnnotated: [ 'Composable' ]
UnusedPrivateMember:
ignoreAnnotated: ['Composable']
ignoreAnnotated: [ 'Composable' ]
# Deviations from defaults
formatting:

View File

@@ -13,13 +13,13 @@ import androidx.compose.ui.platform.LocalContext
private val DarkColorScheme = darkColorScheme(
primary = Purple80,
secondary = PurpleGrey80,
tertiary = Pink80
tertiary = Pink80,
)
private val LightColorScheme = lightColorScheme(
primary = Purple40,
secondary = PurpleGrey40,
tertiary = Pink40
tertiary = Pink40,
/* Other default colors to override
background = Color(0xFFFFFBFE),
@@ -37,7 +37,7 @@ fun KahootQuizTheme(
darkTheme: Boolean = isSystemInDarkTheme(),
// Dynamic color is available on Android 12+
dynamicColor: Boolean = true,
content: @Composable () -> Unit
content: @Composable () -> Unit,
) {
val colorScheme = when {
dynamicColor && Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -> {
@@ -52,6 +52,6 @@ fun KahootQuizTheme(
MaterialTheme(
colorScheme = colorScheme,
typography = Typography,
content = content
content = content,
)
}

View File

@@ -13,8 +13,8 @@ val Typography = Typography(
fontWeight = FontWeight.Normal,
fontSize = 16.sp,
lineHeight = 24.sp,
letterSpacing = 0.5.sp
)
letterSpacing = 0.5.sp,
),
/* Other default text styles to override
titleLarge = TextStyle(
fontFamily = FontFamily.Default,

View File

@@ -3,13 +3,13 @@
android:height="40dp"
android:viewportWidth="40"
android:viewportHeight="40">
<path
android:pathData="M20,10C14.477,10 10,14.477 10,20C10,25.523 14.477,30 20,30C25.523,30 30,25.523 30,20C30,14.477 25.523,10 20,10Z"
android:fillColor="#ffffff"/>
<path
android:strokeWidth="1"
android:pathData="M20,9.5C25.799,9.5 30.5,14.201 30.5,20C30.5,25.799 25.799,30.5 20,30.5C14.201,30.5 9.5,25.799 9.5,20C9.5,14.201 14.201,9.5 20,9.5Z"
android:strokeAlpha="0.15"
android:fillColor="#00000000"
android:strokeColor="#000000"/>
<path
android:fillColor="#ffffff"
android:pathData="M20,10C14.477,10 10,14.477 10,20C10,25.523 14.477,30 20,30C25.523,30 30,25.523 30,20C30,14.477 25.523,10 20,10Z" />
<path
android:fillColor="#00000000"
android:pathData="M20,9.5C25.799,9.5 30.5,14.201 30.5,20C30.5,25.799 25.799,30.5 20,30.5C14.201,30.5 9.5,25.799 9.5,20C9.5,14.201 14.201,9.5 20,9.5Z"
android:strokeWidth="1"
android:strokeAlpha="0.15"
android:strokeColor="#000000" />
</vector>

View File

@@ -3,22 +3,21 @@
android:height="40dp"
android:viewportWidth="40"
android:viewportHeight="40">
<path
android:pathData="M20,20m-16,0a16,16 0,1 1,32 0a16,16 0,1 1,-32 0"
android:strokeWidth="2"
android:fillColor="#67BF38"
android:strokeColor="#26890C"/>
<path
android:pathData="M25.237,12.219L28.298,14.723L18.157,27.123L11.651,21.662L14.296,18.722L17.722,21.409L25.237,12.219Z"
android:fillColor="#ffffff"/>
<path
android:strokeWidth="1"
android:pathData="M25.554,11.831L28.615,14.336L29.001,14.653L28.685,15.039L18.545,27.44L18.224,27.832L17.836,27.507L11.33,22.045L10.933,21.713L11.279,21.328L13.925,18.388L14.237,18.041L14.604,18.329L17.645,20.713L24.85,11.902L25.167,11.515L25.554,11.831Z"
android:strokeAlpha="0.15"
android:fillColor="#00000000"
android:strokeColor="#000000"/>
<group>
<clip-path
android:pathData="M25.237,12.219L28.298,14.723L18.157,27.123L11.651,21.662L14.296,18.722L17.722,21.409L25.237,12.219ZM25.554,11.831L28.615,14.336L29.001,14.653L28.685,15.039L18.545,27.44L18.224,27.832L17.836,27.507L11.33,22.045L10.933,21.713L11.279,21.328L13.925,18.388L14.237,18.041L14.604,18.329L17.645,20.713L24.85,11.902L25.167,11.515L25.554,11.831Z"/>
</group>
<path
android:fillColor="#67BF38"
android:pathData="M20,20m-16,0a16,16 0,1 1,32 0a16,16 0,1 1,-32 0"
android:strokeWidth="2"
android:strokeColor="#26890C" />
<path
android:fillColor="#ffffff"
android:pathData="M25.237,12.219L28.298,14.723L18.157,27.123L11.651,21.662L14.296,18.722L17.722,21.409L25.237,12.219Z" />
<path
android:fillColor="#00000000"
android:pathData="M25.554,11.831L28.615,14.336L29.001,14.653L28.685,15.039L18.545,27.44L18.224,27.832L17.836,27.507L11.33,22.045L10.933,21.713L11.279,21.328L13.925,18.388L14.237,18.041L14.604,18.329L17.645,20.713L24.85,11.902L25.167,11.515L25.554,11.831Z"
android:strokeWidth="1"
android:strokeAlpha="0.15"
android:strokeColor="#000000" />
<group>
<clip-path android:pathData="M25.237,12.219L28.298,14.723L18.157,27.123L11.651,21.662L14.296,18.722L17.722,21.409L25.237,12.219ZM25.554,11.831L28.615,14.336L29.001,14.653L28.685,15.039L18.545,27.44L18.224,27.832L17.836,27.507L11.33,22.045L10.933,21.713L11.279,21.328L13.925,18.388L14.237,18.041L14.604,18.329L17.645,20.713L24.85,11.902L25.167,11.515L25.554,11.831Z" />
</group>
</vector>

View File

@@ -3,13 +3,13 @@
android:height="40dp"
android:viewportWidth="40"
android:viewportHeight="40">
<path
android:pathData="M20,8.75L8.75,20.004L20,31.25L31.25,20.001L20,8.75Z"
android:fillColor="#ffffff"/>
<path
android:strokeWidth="1"
android:pathData="M20.354,8.396L31.604,19.647L31.957,20.001L31.604,20.354L20.354,31.604L20,31.957L19.646,31.604L8.396,20.357L8.043,20.004L8.396,19.65L19.646,8.396L20,8.043L20.354,8.396Z"
android:strokeAlpha="0.15"
android:fillColor="#00000000"
android:strokeColor="#000000"/>
<path
android:fillColor="#ffffff"
android:pathData="M20,8.75L8.75,20.004L20,31.25L31.25,20.001L20,8.75Z" />
<path
android:fillColor="#00000000"
android:pathData="M20.354,8.396L31.604,19.647L31.957,20.001L31.604,20.354L20.354,31.604L20,31.957L19.646,31.604L8.396,20.357L8.043,20.004L8.396,19.65L19.646,8.396L20,8.043L20.354,8.396Z"
android:strokeWidth="1"
android:strokeAlpha="0.15"
android:strokeColor="#000000" />
</vector>

View File

@@ -3,13 +3,13 @@
android:height="41dp"
android:viewportWidth="40"
android:viewportHeight="41">
<path
android:pathData="M28.75,11.476H11.25V28.976H28.75V11.476Z"
android:fillColor="#ffffff"/>
<path
android:strokeWidth="1"
android:pathData="M29.25,10.976V29.476H10.75V10.976H29.25Z"
android:strokeAlpha="0.15"
android:fillColor="#00000000"
android:strokeColor="#000000"/>
<path
android:fillColor="#ffffff"
android:pathData="M28.75,11.476H11.25V28.976H28.75V11.476Z" />
<path
android:fillColor="#00000000"
android:pathData="M29.25,10.976V29.476H10.75V10.976H29.25Z"
android:strokeWidth="1"
android:strokeAlpha="0.15"
android:strokeColor="#000000" />
</vector>

View File

@@ -3,13 +3,13 @@
android:height="40dp"
android:viewportWidth="40"
android:viewportHeight="40">
<path
android:pathData="M20,11.25L8.75,28.75H31.25L20,11.25Z"
android:fillColor="#ffffff"/>
<path
android:strokeWidth="1"
android:pathData="M20.421,10.979L31.671,28.479L32.166,29.25H7.834L8.329,28.479L19.579,10.979L20,10.325L20.421,10.979Z"
android:strokeAlpha="0.15"
android:fillColor="#00000000"
android:strokeColor="#000000"/>
<path
android:fillColor="#ffffff"
android:pathData="M20,11.25L8.75,28.75H31.25L20,11.25Z" />
<path
android:fillColor="#00000000"
android:pathData="M20.421,10.979L31.671,28.479L32.166,29.25H7.834L8.329,28.479L19.579,10.979L20,10.325L20.421,10.979Z"
android:strokeWidth="1"
android:strokeAlpha="0.15"
android:strokeColor="#000000" />
</vector>

View File

@@ -3,48 +3,48 @@
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:pathData="M12,22C6.477,22 2,17.523 2,12C2,6.477 6.477,2 12,2C17.523,2 22,6.477 22,12C22,17.523 17.523,22 12,22Z"
android:fillColor="#F2F2F2"
android:fillType="evenOdd"/>
<path
android:pathData="M19.802,21.989L7.899,23.992C7.584,24.045 7.285,23.833 7.232,23.517L3.724,2.678C3.671,2.363 3.883,2.064 4.198,2.011L16.101,0.008C16.416,-0.045 16.715,0.168 16.768,0.483L20.276,21.322C20.33,21.637 20.117,21.936 19.802,21.989Z"
android:fillColor="#333333"
android:fillType="evenOdd"/>
<path
android:pathData="M19.083,20.611L8.127,22.455C7.951,22.485 7.784,22.366 7.754,22.189L4.538,3.09C4.509,2.913 4.627,2.746 4.804,2.716L15.759,0.872C15.936,0.843 16.103,0.962 16.133,1.139L19.349,20.238C19.378,20.414 19.259,20.582 19.083,20.611Z"
android:fillColor="#FAFAFA"
android:fillType="evenOdd"/>
<path
android:pathData="M18.499,20.05L13.849,20.833C13.79,20.843 13.733,20.803 13.724,20.744L12.306,12.325C12.296,12.266 12.336,12.209 12.395,12.199L17.045,11.417C17.104,11.407 17.16,11.447 17.17,11.506L18.587,19.925C18.597,19.984 18.558,20.04 18.499,20.05Z"
android:fillColor="#26890C"
android:fillType="evenOdd"/>
<path
android:pathData="M12.967,20.981L8.317,21.764C8.258,21.774 8.202,21.733 8.192,21.674L6.775,13.255C6.765,13.196 6.805,13.14 6.864,13.13L11.514,12.347C11.573,12.337 11.629,12.377 11.639,12.437L13.057,20.856C13.066,20.915 13.026,20.971 12.967,20.981Z"
android:fillColor="#FFA602"
android:fillType="evenOdd"/>
<path
android:pathData="M16.947,10.835L12.297,11.618C12.238,11.628 12.182,11.588 12.172,11.529L10.64,2.434C10.631,2.374 10.67,2.318 10.73,2.308L15.379,1.526C15.439,1.516 15.495,1.556 15.505,1.615L17.036,10.71C17.046,10.769 17.006,10.825 16.947,10.835Z"
android:fillColor="#1368CE"
android:fillType="evenOdd"/>
<path
android:pathData="M11.416,11.766L6.766,12.548C6.707,12.558 6.651,12.518 6.641,12.459L5.109,3.364C5.099,3.305 5.139,3.249 5.199,3.239L9.848,2.456C9.907,2.446 9.964,2.486 9.974,2.546L11.505,11.641C11.515,11.7 11.475,11.756 11.416,11.766Z"
android:fillColor="#E11C3C"
android:fillType="evenOdd"/>
<path
android:pathData="M7.317,8.677L8.107,6.504L9.544,8.316L7.317,8.677Z"
android:fillColor="#FAFAFA"
android:fillType="evenOdd"/>
<path
android:pathData="M13.596,5.437L15.014,6.416L14.017,7.822L12.598,6.842L13.596,5.437Z"
android:fillColor="#FAFAFA"
android:fillType="evenOdd"/>
<path
android:pathData="M10.79,16.727C10.704,16.175 10.188,15.796 9.637,15.881C9.086,15.967 8.709,16.484 8.795,17.037C8.881,17.59 9.397,17.968 9.948,17.883C10.498,17.798 10.875,17.28 10.79,16.727Z"
android:fillColor="#FAFAFA"
android:fillType="evenOdd"/>
<path
android:pathData="M16.618,16.843L14.628,17.181L14.288,15.184L16.278,14.846L16.618,16.843Z"
android:fillColor="#FAFAFA"
android:fillType="evenOdd"/>
<path
android:fillColor="#F2F2F2"
android:fillType="evenOdd"
android:pathData="M12,22C6.477,22 2,17.523 2,12C2,6.477 6.477,2 12,2C17.523,2 22,6.477 22,12C22,17.523 17.523,22 12,22Z" />
<path
android:fillColor="#333333"
android:fillType="evenOdd"
android:pathData="M19.802,21.989L7.899,23.992C7.584,24.045 7.285,23.833 7.232,23.517L3.724,2.678C3.671,2.363 3.883,2.064 4.198,2.011L16.101,0.008C16.416,-0.045 16.715,0.168 16.768,0.483L20.276,21.322C20.33,21.637 20.117,21.936 19.802,21.989Z" />
<path
android:fillColor="#FAFAFA"
android:fillType="evenOdd"
android:pathData="M19.083,20.611L8.127,22.455C7.951,22.485 7.784,22.366 7.754,22.189L4.538,3.09C4.509,2.913 4.627,2.746 4.804,2.716L15.759,0.872C15.936,0.843 16.103,0.962 16.133,1.139L19.349,20.238C19.378,20.414 19.259,20.582 19.083,20.611Z" />
<path
android:fillColor="#26890C"
android:fillType="evenOdd"
android:pathData="M18.499,20.05L13.849,20.833C13.79,20.843 13.733,20.803 13.724,20.744L12.306,12.325C12.296,12.266 12.336,12.209 12.395,12.199L17.045,11.417C17.104,11.407 17.16,11.447 17.17,11.506L18.587,19.925C18.597,19.984 18.558,20.04 18.499,20.05Z" />
<path
android:fillColor="#FFA602"
android:fillType="evenOdd"
android:pathData="M12.967,20.981L8.317,21.764C8.258,21.774 8.202,21.733 8.192,21.674L6.775,13.255C6.765,13.196 6.805,13.14 6.864,13.13L11.514,12.347C11.573,12.337 11.629,12.377 11.639,12.437L13.057,20.856C13.066,20.915 13.026,20.971 12.967,20.981Z" />
<path
android:fillColor="#1368CE"
android:fillType="evenOdd"
android:pathData="M16.947,10.835L12.297,11.618C12.238,11.628 12.182,11.588 12.172,11.529L10.64,2.434C10.631,2.374 10.67,2.318 10.73,2.308L15.379,1.526C15.439,1.516 15.495,1.556 15.505,1.615L17.036,10.71C17.046,10.769 17.006,10.825 16.947,10.835Z" />
<path
android:fillColor="#E11C3C"
android:fillType="evenOdd"
android:pathData="M11.416,11.766L6.766,12.548C6.707,12.558 6.651,12.518 6.641,12.459L5.109,3.364C5.099,3.305 5.139,3.249 5.199,3.239L9.848,2.456C9.907,2.446 9.964,2.486 9.974,2.546L11.505,11.641C11.515,11.7 11.475,11.756 11.416,11.766Z" />
<path
android:fillColor="#FAFAFA"
android:fillType="evenOdd"
android:pathData="M7.317,8.677L8.107,6.504L9.544,8.316L7.317,8.677Z" />
<path
android:fillColor="#FAFAFA"
android:fillType="evenOdd"
android:pathData="M13.596,5.437L15.014,6.416L14.017,7.822L12.598,6.842L13.596,5.437Z" />
<path
android:fillColor="#FAFAFA"
android:fillType="evenOdd"
android:pathData="M10.79,16.727C10.704,16.175 10.188,15.796 9.637,15.881C9.086,15.967 8.709,16.484 8.795,17.037C8.881,17.59 9.397,17.968 9.948,17.883C10.498,17.798 10.875,17.28 10.79,16.727Z" />
<path
android:fillColor="#FAFAFA"
android:fillType="evenOdd"
android:pathData="M16.618,16.843L14.628,17.181L14.288,15.184L16.278,14.846L16.618,16.843Z" />
</vector>

View File

@@ -3,33 +3,32 @@
android:height="40dp"
android:viewportWidth="40"
android:viewportHeight="40">
<path
android:pathData="M20,20m-16,0a16,16 0,1 1,32 0a16,16 0,1 1,-32 0"
android:fillColor="#FF3355"/>
<path
android:pathData="M20,20m-16,0a16,16 0,1 1,32 0a16,16 0,1 1,-32 0"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#FF3355"/>
<path
android:pathData="M20,20m-16,0a16,16 0,1 1,32 0a16,16 0,1 1,-32 0"
android:strokeAlpha="0.15"
android:strokeWidth="2"
android:fillColor="#00000000"
android:strokeColor="#000000"/>
<path
android:pathData="M12.04,24.636L15.355,27.95L19.995,23.31L24.636,27.95L27.95,24.636L23.31,19.995L27.95,15.355L24.636,12.04L19.995,16.681L15.355,12.04L12.04,15.355L16.681,19.995L12.04,24.636Z"
android:fillColor="#ffffff"
android:fillType="evenOdd"/>
<group>
<clip-path
android:pathData="M5.853,5.721h28.284v28.284h-28.284z"/>
<clip-path
android:pathData="M12.04,24.636L15.355,27.95L19.995,23.31L24.636,27.95L27.95,24.636L23.31,19.995L27.95,15.355L24.636,12.04L19.995,16.681L15.355,12.04L12.04,15.355L16.681,19.995L12.04,24.636Z"
android:fillType="evenOdd"/>
<path
android:pathData="M15.355,27.95L14.648,28.657L15.355,29.365L16.062,28.657L15.355,27.95ZM12.04,24.636L11.333,23.929L10.626,24.636L11.333,25.343L12.04,24.636ZM19.995,23.31L20.702,22.603L19.995,21.896L19.288,22.603L19.995,23.31ZM24.636,27.95L23.929,28.657L24.636,29.365L25.343,28.657L24.636,27.95ZM27.95,24.636L28.657,25.343L29.365,24.636L28.657,23.929L27.95,24.636ZM23.31,19.995L22.603,19.288L21.896,19.995L22.603,20.702L23.31,19.995ZM27.95,15.355L28.657,16.062L29.365,15.355L28.657,14.648L27.95,15.355ZM24.636,12.04L25.343,11.333L24.636,10.626L23.929,11.333L24.636,12.04ZM19.995,16.681L19.288,17.388L19.995,18.095L20.702,17.388L19.995,16.681ZM15.355,12.04L16.062,11.333L15.355,10.626L14.648,11.333L15.355,12.04ZM12.04,15.355L11.333,14.648L10.626,15.355L11.333,16.062L12.04,15.355ZM16.681,19.995L17.388,20.702L18.095,19.995L17.388,19.288L16.681,19.995ZM16.062,27.243L12.748,23.929L11.333,25.343L14.648,28.657L16.062,27.243ZM19.288,22.603L14.648,27.243L16.062,28.657L20.702,24.017L19.288,22.603ZM25.343,27.243L20.702,22.603L19.288,24.017L23.929,28.657L25.343,27.243ZM27.243,23.929L23.929,27.243L25.343,28.657L28.657,25.343L27.243,23.929ZM22.603,20.702L27.243,25.343L28.657,23.929L24.017,19.288L22.603,20.702ZM27.243,14.648L22.603,19.288L24.017,20.702L28.657,16.062L27.243,14.648ZM23.929,12.748L27.243,16.062L28.657,14.648L25.343,11.333L23.929,12.748ZM20.702,17.388L25.343,12.748L23.929,11.333L19.288,15.974L20.702,17.388ZM14.648,12.748L19.288,17.388L20.702,15.974L16.062,11.333L14.648,12.748ZM12.748,16.062L16.062,12.748L14.648,11.333L11.333,14.648L12.748,16.062ZM17.388,19.288L12.748,14.648L11.333,16.062L15.974,20.702L17.388,19.288ZM12.748,25.343L17.388,20.702L15.974,19.288L11.333,23.929L12.748,25.343Z"
android:fillColor="#000000"
android:fillAlpha="0.15"/>
</group>
android:fillColor="#FF3355"
android:pathData="M20,20m-16,0a16,16 0,1 1,32 0a16,16 0,1 1,-32 0" />
<path
android:fillColor="#00000000"
android:pathData="M20,20m-16,0a16,16 0,1 1,32 0a16,16 0,1 1,-32 0"
android:strokeWidth="2"
android:strokeColor="#FF3355" />
<path
android:fillColor="#00000000"
android:pathData="M20,20m-16,0a16,16 0,1 1,32 0a16,16 0,1 1,-32 0"
android:strokeWidth="2"
android:strokeAlpha="0.15"
android:strokeColor="#000000" />
<path
android:fillColor="#ffffff"
android:fillType="evenOdd"
android:pathData="M12.04,24.636L15.355,27.95L19.995,23.31L24.636,27.95L27.95,24.636L23.31,19.995L27.95,15.355L24.636,12.04L19.995,16.681L15.355,12.04L12.04,15.355L16.681,19.995L12.04,24.636Z" />
<group>
<clip-path android:pathData="M5.853,5.721h28.284v28.284h-28.284z" />
<clip-path
android:fillType="evenOdd"
android:pathData="M12.04,24.636L15.355,27.95L19.995,23.31L24.636,27.95L27.95,24.636L23.31,19.995L27.95,15.355L24.636,12.04L19.995,16.681L15.355,12.04L12.04,15.355L16.681,19.995L12.04,24.636Z" />
<path
android:fillAlpha="0.15"
android:fillColor="#000000"
android:pathData="M15.355,27.95L14.648,28.657L15.355,29.365L16.062,28.657L15.355,27.95ZM12.04,24.636L11.333,23.929L10.626,24.636L11.333,25.343L12.04,24.636ZM19.995,23.31L20.702,22.603L19.995,21.896L19.288,22.603L19.995,23.31ZM24.636,27.95L23.929,28.657L24.636,29.365L25.343,28.657L24.636,27.95ZM27.95,24.636L28.657,25.343L29.365,24.636L28.657,23.929L27.95,24.636ZM23.31,19.995L22.603,19.288L21.896,19.995L22.603,20.702L23.31,19.995ZM27.95,15.355L28.657,16.062L29.365,15.355L28.657,14.648L27.95,15.355ZM24.636,12.04L25.343,11.333L24.636,10.626L23.929,11.333L24.636,12.04ZM19.995,16.681L19.288,17.388L19.995,18.095L20.702,17.388L19.995,16.681ZM15.355,12.04L16.062,11.333L15.355,10.626L14.648,11.333L15.355,12.04ZM12.04,15.355L11.333,14.648L10.626,15.355L11.333,16.062L12.04,15.355ZM16.681,19.995L17.388,20.702L18.095,19.995L17.388,19.288L16.681,19.995ZM16.062,27.243L12.748,23.929L11.333,25.343L14.648,28.657L16.062,27.243ZM19.288,22.603L14.648,27.243L16.062,28.657L20.702,24.017L19.288,22.603ZM25.343,27.243L20.702,22.603L19.288,24.017L23.929,28.657L25.343,27.243ZM27.243,23.929L23.929,27.243L25.343,28.657L28.657,25.343L27.243,23.929ZM22.603,20.702L27.243,25.343L28.657,23.929L24.017,19.288L22.603,20.702ZM27.243,14.648L22.603,19.288L24.017,20.702L28.657,16.062L27.243,14.648ZM23.929,12.748L27.243,16.062L28.657,14.648L25.343,11.333L23.929,12.748ZM20.702,17.388L25.343,12.748L23.929,11.333L19.288,15.974L20.702,17.388ZM14.648,12.748L19.288,17.388L20.702,15.974L16.062,11.333L14.648,12.748ZM12.748,16.062L16.062,12.748L14.648,11.333L11.333,14.648L12.748,16.062ZM17.388,19.288L12.748,14.648L11.333,16.062L15.974,20.702L17.388,19.288ZM12.748,25.343L17.388,20.702L15.974,19.288L11.333,23.929L12.748,25.343Z" />
</group>
</vector>

View File

@@ -5,7 +5,7 @@ package dev.adriankuta.kahootquiz.core.network.models
data class LanguageInfoDto(
val language: String?,
val lastUpdatedOn: Long?,
val readAloudSupported: Boolean?
val readAloudSupported: Boolean?,
)
// Minimal channel info
@@ -16,5 +16,5 @@ data class ChannelDto(val id: String?)
data class PointDto(
val x: Int?,
val y: Int?
val y: Int?,
)

View File

@@ -4,5 +4,5 @@ package dev.adriankuta.kahootquiz.core.network.models
data class ContentTagsDto(
val curriculumCodes: List<String>?,
val generatedCurriculumCodes: List<String>?
val generatedCurriculumCodes: List<String>?,
)

View File

@@ -13,14 +13,14 @@ data class CoverMetadataDto(
val height: Int?,
val extractedColors: List<ExtractedColorDto>?,
val blurhash: String?,
val crop: CropDto?
val crop: CropDto?,
)
// Color extracted from cover image
data class ExtractedColorDto(
val swatch: String?,
val rgbHex: String?
val rgbHex: String?,
)
// Crop descriptor
@@ -28,5 +28,5 @@ data class ExtractedColorDto(
data class CropDto(
val origin: PointDto?,
val target: PointDto?,
val circular: Boolean?
val circular: Boolean?,
)

View File

@@ -7,7 +7,7 @@ data class MetadataDto(
val duplicationProtection: Boolean?,
val featuredListMemberships: List<FeaturedListMembershipDto>?,
val lastEdit: LastEditDto?,
val versionMetadata: VersionMetadataDto?
val versionMetadata: VersionMetadataDto?,
)
// Access settings
@@ -15,14 +15,14 @@ data class MetadataDto(
data class AccessDto(
val groupRead: List<String>?,
val folderGroupIds: List<String>?,
val features: List<String>?
val features: List<String>?,
)
// Featured list membership
data class FeaturedListMembershipDto(
val list: String?,
val addedAt: Long?
val addedAt: Long?,
)
// Last edit information
@@ -30,7 +30,7 @@ data class FeaturedListMembershipDto(
data class LastEditDto(
val editorUserId: String?,
val editorUsername: String?,
val editTimestamp: Long?
val editTimestamp: Long?,
)
// Version metadata
@@ -38,5 +38,5 @@ data class LastEditDto(
data class VersionMetadataDto(
val version: Int?,
val created: Long?,
val creator: String?
val creator: String?,
)

View File

@@ -17,7 +17,7 @@ data class QuestionDto(
val questionFormat: Int?,
val languageInfo: LanguageInfoDto?,
val media: List<MediaItemDto>?,
val choiceRange: ChoiceRangeDto?
val choiceRange: ChoiceRangeDto?,
)
// Choice option
@@ -25,7 +25,7 @@ data class QuestionDto(
data class ChoiceDto(
val answer: String?,
val correct: Boolean,
val languageInfo: LanguageInfoDto?
val languageInfo: LanguageInfoDto?,
)
// Optional video attachment
@@ -35,7 +35,7 @@ data class VideoDto(
val startTime: Int?,
val endTime: Int?,
val service: String?,
val fullUrl: String?
val fullUrl: String?,
)
// Image metadata appearing in multiple places
@@ -50,7 +50,7 @@ data class ImageMetadataDto(
val width: Int? = null,
val height: Int? = null,
val effects: List<String>? = null,
val crop: CropDto? = null
val crop: CropDto? = null,
)
// Generic media item on question
@@ -67,7 +67,7 @@ data class MediaItemDto(
val resources: String? = null,
val width: Int? = null,
val height: Int? = null,
val crop: CropDto? = null
val crop: CropDto? = null,
)
// Slider range for "slider" question type
@@ -77,5 +77,5 @@ data class ChoiceRangeDto(
val end: Int?,
val step: Int?,
val correct: Int?,
val tolerance: Int?
val tolerance: Int?,
)

View File

@@ -32,5 +32,5 @@ data class QuizResponseDto(
val hasRestrictedContent: Boolean?,
val type: String?,
val created: Long?,
val modified: Long?
val modified: Long?,
)

View File

@@ -42,8 +42,14 @@
],
"blurhash": "UuJ*#Qxtx]xaCAj[W=WqEma}M{R*M|WVn#j?",
"crop": {
"origin": {"x": 227, "y": 0},
"target": {"x": 1948, "y": 1299},
"origin": {
"x": 227,
"y": 0
},
"target": {
"x": 1948,
"y": 1299
},
"circular": false
}
},
@@ -55,8 +61,24 @@
"points": true,
"pointsMultiplier": 1,
"choices": [
{"answer": "True", "correct": true, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "False", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}}
{
"answer": "True",
"correct": true,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "False",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
}
],
"layout": "TRUE_FALSE",
"image": "https://media.kahoot.it/b2709905-1c6e-45a0-9cc1-34c6580495e5",
@@ -71,9 +93,18 @@
"height": 1406
},
"resources": "mikroman6/Moment/Getty Images",
"video": {"startTime": 0, "endTime": 0, "service": "youtube", "fullUrl": ""},
"video": {
"startTime": 0,
"endTime": 0,
"service": "youtube",
"fullUrl": ""
},
"questionFormat": 0,
"languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true},
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
},
"media": []
},
{
@@ -83,15 +114,56 @@
"points": true,
"pointsMultiplier": 1,
"choices": [
{"answer": "A monument to the god Ra", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "A tomb", "correct": true, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "A momument to a great war victory", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "A temple", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}}
{
"answer": "A monument to the god Ra",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "A tomb",
"correct": true,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "A momument to a great war victory",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "A temple",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
}
],
"resources": "",
"video": {"startTime": 0, "endTime": 0, "service": "youtube", "fullUrl": ""},
"video": {
"startTime": 0,
"endTime": 0,
"service": "youtube",
"fullUrl": ""
},
"questionFormat": 0,
"languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true},
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
},
"media": [
{
"type": "background_image",
@@ -105,7 +177,17 @@
"resources": "Nick Brundle Photography/Moment/Getty Images",
"width": 2309,
"height": 1299,
"crop": {"origin": {"x": 227, "y": 0}, "target": {"x": 1948, "y": 1299}, "circular": false}
"crop": {
"origin": {
"x": 227,
"y": 0
},
"target": {
"x": 1948,
"y": 1299
},
"circular": false
}
}
]
},
@@ -116,10 +198,42 @@
"points": true,
"pointsMultiplier": 1,
"choices": [
{"answer": "As a tourist destination", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "A monument to Ninurta, the god of farmers", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "An engagement gift from a king to his future queen", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "A gift for the king's wife", "correct": true, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}}
{
"answer": "As a tourist destination",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "A monument to Ninurta, the god of farmers",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "An engagement gift from a king to his future queen",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "A gift for the king's wife",
"correct": true,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
}
],
"image": "https://media.kahoot.it/7bce7efb-3d94-495c-905f-9c14190b7910",
"imageMetadata": {
@@ -129,9 +243,18 @@
"effects": []
},
"resources": "https://upload.wikimedia.org/wikipedia/commons/a/ae/Hanging_Gardens_of_Babylon.jpg CC0",
"video": {"startTime": 0, "endTime": 0, "service": "youtube", "fullUrl": ""},
"video": {
"startTime": 0,
"endTime": 0,
"service": "youtube",
"fullUrl": ""
},
"questionFormat": 0,
"languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true},
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
},
"media": []
},
{
@@ -141,10 +264,42 @@
"points": true,
"pointsMultiplier": 1,
"choices": [
{"answer": "Greece", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "Turkey", "correct": true, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "Syria", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "Iran", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}}
{
"answer": "Greece",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "Turkey",
"correct": true,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "Syria",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "Iran",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
}
],
"image": "https://media.kahoot.it/f999f2a2-5450-4821-a3c8-94288720bd46",
"imageMetadata": {
@@ -154,9 +309,18 @@
"effects": []
},
"resources": "Zee Prime at cs.wikipedia [GFDL (http://www.gnu.org/copyleft/fdl.html), CC-BY-SA-3.0 (http://creativecommons.org/licenses/by-sa/3.0/) or CC BY-SA 2.5 (https://creativecommons.org/licenses/by-sa/2.5)], from Wikimedia Commons\nhttps://upload.wikimedia.org/wikipedia/commons/1/1d/Miniaturk_009.jpg",
"video": {"startTime": 0, "endTime": 0, "service": "youtube", "fullUrl": ""},
"video": {
"startTime": 0,
"endTime": 0,
"service": "youtube",
"fullUrl": ""
},
"questionFormat": 0,
"languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true},
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
},
"media": []
},
{
@@ -166,10 +330,42 @@
"points": true,
"pointsMultiplier": 1,
"choices": [
{"answer": "To become famous", "correct": true, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "It was an accident", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "He was angry at the gods", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "Because of a bet", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}}
{
"answer": "To become famous",
"correct": true,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "It was an accident",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "He was angry at the gods",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "Because of a bet",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
}
],
"image": "https://media.kahoot.it/fe2c5c06-6d2e-4a5a-9441-a9c77391130e_opt",
"imageMetadata": {
@@ -179,9 +375,19 @@
"effects": []
},
"resources": " [Public domain], via Wikimedia Commons\nhttps://upload.wikimedia.org/wikipedia/commons/a/a9/Temple_of_Artemis.jpg",
"video": {"id": "", "startTime": 0, "endTime": 0, "service": "youtube", "fullUrl": ""},
"video": {
"id": "",
"startTime": 0,
"endTime": 0,
"service": "youtube",
"fullUrl": ""
},
"questionFormat": 0,
"languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true},
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
},
"media": []
},
{
@@ -191,10 +397,42 @@
"points": true,
"pointsMultiplier": 1,
"choices": [
{"answer": "Sparta", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "Athens", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "Olympia", "correct": true, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "Delphi", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}}
{
"answer": "Sparta",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "Athens",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "Olympia",
"correct": true,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "Delphi",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
}
],
"image": "https://media.kahoot.it/9074a275-1874-4cb9-9c9f-248173ceae9d",
"imageMetadata": {
@@ -202,12 +440,31 @@
"contentType": "image/*",
"resources": " [Public domain or Public domain], via Wikimedia Commons\nhttps://upload.wikimedia.org/wikipedia/commons/6/66/Le_Jupiter_Olympien_ou_l%27art_de_la_sculpture_antique.jpg",
"effects": [],
"crop": {"origin": {"x": 53, "y": 0}, "target": {"x": 577, "y": 866}, "circular": false}
"crop": {
"origin": {
"x": 53,
"y": 0
},
"target": {
"x": 577,
"y": 866
},
"circular": false
}
},
"resources": " [Public domain or Public domain], via Wikimedia Commons\nhttps://upload.wikimedia.org/wikipedia/commons/6/66/Le_Jupiter_Olympien_ou_l%27art_de_la_sculpture_antique.jpg",
"video": {"startTime": 0, "endTime": 0, "service": "youtube", "fullUrl": ""},
"video": {
"startTime": 0,
"endTime": 0,
"service": "youtube",
"fullUrl": ""
},
"questionFormat": 0,
"languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true},
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
},
"media": []
},
{
@@ -217,10 +474,42 @@
"points": true,
"pointsMultiplier": 1,
"choices": [
{"answer": "Darius", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "Xerxes", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "Cyrus", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "Mausoleus", "correct": true, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}}
{
"answer": "Darius",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "Xerxes",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "Cyrus",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "Mausoleus",
"correct": true,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
}
],
"image": "https://media.kahoot.it/38f43ef3-4507-4f11-ae33-f3e833a47d19",
"imageMetadata": {
@@ -234,9 +523,18 @@
"height": 1414
},
"resources": "MirageC/Moment/Getty Images",
"video": {"startTime": 0, "endTime": 0, "service": "youtube", "fullUrl": ""},
"video": {
"startTime": 0,
"endTime": 0,
"service": "youtube",
"fullUrl": ""
},
"questionFormat": 0,
"languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true},
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
},
"media": []
},
{
@@ -245,8 +543,24 @@
"time": 60000,
"pointsMultiplier": 2,
"choices": [
{"answer": "Helios", "correct": true, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "helios", "correct": true, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}}
{
"answer": "Helios",
"correct": true,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "helios",
"correct": true,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
}
],
"image": "https://media.kahoot.it/d4ccbf4e-1026-46ad-ab35-84dc17c4d3a0_opt",
"imageMetadata": {
@@ -254,12 +568,32 @@
"contentType": "image/*",
"resources": "By gravure sur bois de Sidney Barclay numérisée Google [Public domain], via Wikimedia Commons\nhttps://upload.wikimedia.org/wikipedia/commons/5/5f/Colosse_de_Rhodes_%28Barclay%29.jpg",
"effects": [],
"crop": {"origin": {"x": 49, "y": 83}, "target": {"x": 531, "y": 796}, "circular": false}
"crop": {
"origin": {
"x": 49,
"y": 83
},
"target": {
"x": 531,
"y": 796
},
"circular": false
}
},
"resources": "By gravure sur bois de Sidney Barclay numérisée Google [Public domain], via Wikimedia Commons\nhttps://upload.wikimedia.org/wikipedia/commons/5/5f/Colosse_de_Rhodes_%28Barclay%29.jpg",
"video": {"id": "", "startTime": 0, "endTime": 0, "service": "youtube", "fullUrl": ""},
"video": {
"id": "",
"startTime": 0,
"endTime": 0,
"service": "youtube",
"fullUrl": ""
},
"questionFormat": 0,
"languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true},
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
},
"media": []
},
{
@@ -269,10 +603,42 @@
"points": true,
"pointsMultiplier": 1,
"choices": [
{"answer": "Fire", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "Earthquake", "correct": true, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "Tidal Wave", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "Storm", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}}
{
"answer": "Fire",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "Earthquake",
"correct": true,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "Tidal Wave",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "Storm",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
}
],
"image": "https://media.kahoot.it/e2d22765-942b-4dbd-9fd6-d71142d775c3",
"imageMetadata": {
@@ -280,12 +646,31 @@
"contentType": "image/*",
"resources": "Emad Victor SHENOUDA [Attribution], from Wikimedia Commons\nhttps://upload.wikimedia.org/wikipedia/commons/3/33/PHAROS2013-3000x2250.jpg",
"effects": [],
"crop": {"origin": {"x": 0, "y": 10}, "target": {"x": 1024, "y": 683}, "circular": false}
"crop": {
"origin": {
"x": 0,
"y": 10
},
"target": {
"x": 1024,
"y": 683
},
"circular": false
}
},
"resources": "Emad Victor SHENOUDA [Attribution], from Wikimedia Commons\nhttps://upload.wikimedia.org/wikipedia/commons/3/33/PHAROS2013-3000x2250.jpg",
"video": {"startTime": 0, "endTime": 0, "service": "youtube", "fullUrl": ""},
"video": {
"startTime": 0,
"endTime": 0,
"service": "youtube",
"fullUrl": ""
},
"questionFormat": 0,
"languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true},
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
},
"media": []
},
{
@@ -295,10 +680,42 @@
"points": true,
"pointsMultiplier": 1,
"choices": [
{"answer": "The Colossus of Rhodes", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "The Lighthouse of Alexandria", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "The Mausoleum at Halicarnassus", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "The Great Pyramid of Giza", "correct": true, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}}
{
"answer": "The Colossus of Rhodes",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "The Lighthouse of Alexandria",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "The Mausoleum at Halicarnassus",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "The Great Pyramid of Giza",
"correct": true,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
}
],
"image": "https://media.kahoot.it/19382163-196f-495d-9a84-c2d8c3fd716c",
"imageMetadata": {
@@ -306,12 +723,32 @@
"contentType": "image/*",
"resources": "By The original uploader was Mark22 at English Wikipedia (Transferred from en.wikipedia to Commons.) [Public domain], via Wikimedia Commons\nhttps://upload.wikimedia.org/wikipedia/commons/b/b7/SevenWondersOfTheWorld.png",
"effects": [],
"crop": {"origin": {"x": 19, "y": 0}, "target": {"x": 491, "y": 736}, "circular": false}
"crop": {
"origin": {
"x": 19,
"y": 0
},
"target": {
"x": 491,
"y": 736
},
"circular": false
}
},
"resources": "By The original uploader was Mark22 at English Wikipedia (Transferred from en.wikipedia to Commons.) [Public domain], via Wikimedia Commons\nhttps://upload.wikimedia.org/wikipedia/commons/b/b7/SevenWondersOfTheWorld.png",
"video": {"id": "", "startTime": 0, "endTime": 0, "service": "youtube", "fullUrl": ""},
"video": {
"id": "",
"startTime": 0,
"endTime": 0,
"service": "youtube",
"fullUrl": ""
},
"questionFormat": 0,
"languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true},
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
},
"media": []
},
{
@@ -319,7 +756,13 @@
"question": "How many of the Seven Wonders still exist?",
"time": 20000,
"pointsMultiplier": 2,
"choiceRange": {"start": 0, "end": 7, "step": 1, "correct": 1, "tolerance": 0},
"choiceRange": {
"start": 0,
"end": 7,
"step": 1,
"correct": 1,
"tolerance": 0
},
"image": "https://media.kahoot.it/b431b3aa-4a46-49c9-b4ac-aa1dde40333f",
"imageMetadata": {
"id": "b431b3aa-4a46-49c9-b4ac-aa1dde40333f",
@@ -328,9 +771,19 @@
"effects": []
},
"resources": "By Kandi [GFDL (http://www.gnu.org/copyleft/fdl.html) or CC BY-SA 3.0 (https://creativecommons.org/licenses/by-sa/3.0)], from Wikimedia Commons\nhttps://upload.wikimedia.org/wikipedia/commons/a/a4/Seven_Wonders_of_the_Ancient_World.png",
"video": {"id": "", "startTime": 0, "endTime": 0, "service": "youtube", "fullUrl": ""},
"video": {
"id": "",
"startTime": 0,
"endTime": 0,
"service": "youtube",
"fullUrl": ""
},
"questionFormat": 0,
"languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true},
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
},
"media": []
},
{
@@ -340,10 +793,42 @@
"points": true,
"pointsMultiplier": 1,
"choices": [
{"answer": "The Great Pyramid of Giza", "correct": true, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "The Temple of Artemis", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "The Mausoleum at Halicarnassus", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}},
{"answer": "The Colossus of Rhodes", "correct": false, "languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true}}
{
"answer": "The Great Pyramid of Giza",
"correct": true,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "The Temple of Artemis",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "The Mausoleum at Halicarnassus",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
},
{
"answer": "The Colossus of Rhodes",
"correct": false,
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
}
}
],
"image": "https://media.kahoot.it/34b01038-031c-4d23-b8a0-55402916586f_opt",
"imageMetadata": {
@@ -351,16 +836,39 @@
"contentType": "image/*",
"resources": "By Varios [CC BY-SA 3.0 (https://creativecommons.org/licenses/by-sa/3.0)], via Wikimedia Commons\nhttps://upload.wikimedia.org/wikipedia/commons/d/d6/Siete_maravillas_antiguas.jpg",
"effects": [],
"crop": {"origin": {"x": 19, "y": 0}, "target": {"x": 491, "y": 736}, "circular": false}
"crop": {
"origin": {
"x": 19,
"y": 0
},
"target": {
"x": 491,
"y": 736
},
"circular": false
}
},
"resources": "By Varios [CC BY-SA 3.0 (https://creativecommons.org/licenses/by-sa/3.0)], via Wikimedia Commons\nhttps://upload.wikimedia.org/wikipedia/commons/d/d6/Siete_maravillas_antiguas.jpg",
"video": {"id": "", "startTime": 0, "endTime": 0, "service": "youtube", "fullUrl": ""},
"video": {
"id": "",
"startTime": 0,
"endTime": 0,
"service": "youtube",
"fullUrl": ""
},
"questionFormat": 0,
"languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true},
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
},
"media": []
}
],
"contentTags": {"curriculumCodes": [], "generatedCurriculumCodes": []},
"contentTags": {
"curriculumCodes": [],
"generatedCurriculumCodes": []
},
"metadata": {
"access": {
"groupRead": [
@@ -372,12 +880,20 @@
"36022fd9-43e1-4b36-9c98-a6a3b2b53038"
],
"folderGroupIds": [],
"features": ["PremiumEduContent"]
"features": [
"PremiumEduContent"
]
},
"duplicationProtection": true,
"featuredListMemberships": [
{"list": "youngfeatured", "addedAt": 1682336780289},
{"list": "featured", "addedAt": 1682336738189}
{
"list": "youngfeatured",
"addedAt": 1682336780289
},
{
"list": "featured",
"addedAt": 1682336738189
}
],
"lastEdit": {
"editorUserId": "4c1574ee-de54-40a2-be15-8d72b333afad",
@@ -392,9 +908,17 @@
},
"resources": "Nick Brundle Photography/Moment/Getty Images",
"slug": "seven-wonders-of-the-ancient-world",
"languageInfo": {"language": "en-US", "lastUpdatedOn": 1741920189202, "readAloudSupported": true},
"languageInfo": {
"language": "en-US",
"lastUpdatedOn": 1741920189202,
"readAloudSupported": true
},
"inventoryItemIds": [],
"channels": [{"id": "247c3eb4-af80-4c1f-b006-558682c7bd2f"}],
"channels": [
{
"id": "247c3eb4-af80-4c1f-b006-558682c7bd2f"
}
],
"isValid": true,
"playAsGuest": true,
"hasRestrictedContent": false,