Browse Source

update questions - v 2017

master
Dslak 6 years ago
parent
commit
d9735f94cf
  1. 2
      data/JSON/aerodynamics.json
  2. 2
      data/JSON/firstAid.json
  3. 2
      data/JSON/flightSafety.json
  4. 2
      data/JSON/instruments.json
  5. 2
      data/JSON/legislation.json
  6. 2
      data/JSON/materials.json
  7. 2
      data/JSON/meteorology.json
  8. 2
      data/JSON/physiopathology.json
  9. 2
      data/JSON/pilotingTechniques.json
  10. BIN
      data/quiz_VDS-VL_2017.pdf
  11. BIN
      data/quizi-esami-vds-vm.rar
  12. 205
      ejected/android/app/build.gradle
  13. 68
      ejected/android/app/expo.gradle
  14. 3
      ejected/android/app/fabric.properties
  15. 50
      ejected/android/app/google-services.json
  16. 152
      ejected/android/app/proguard-rules.pro
  17. 369
      ejected/android/app/src/main/AndroidManifest.xml
  18. 1
      ejected/android/app/src/main/assets/kernel-manifest.json
  19. 46
      ejected/android/app/src/main/java/host/exp/exponent/MainActivity.java
  20. 48
      ejected/android/app/src/main/java/host/exp/exponent/MainApplication.java
  21. 46
      ejected/android/app/src/main/java/host/exp/exponent/generated/AppConstants.java
  22. 8
      ejected/android/app/src/main/java/host/exp/exponent/generated/DetachBuildConstants.java
  23. BIN
      ejected/android/app/src/main/res/drawable-hdpi/ic_arrow_back_white_36dp.png
  24. BIN
      ejected/android/app/src/main/res/drawable-hdpi/ic_home_white_36dp.png
  25. BIN
      ejected/android/app/src/main/res/drawable-hdpi/ic_logo_white_32dp.png
  26. BIN
      ejected/android/app/src/main/res/drawable-hdpi/ic_refresh_white_36dp.png
  27. BIN
      ejected/android/app/src/main/res/drawable-hdpi/ic_share_white_36dp.png
  28. BIN
      ejected/android/app/src/main/res/drawable-mdpi/ic_arrow_back_white_36dp.png
  29. BIN
      ejected/android/app/src/main/res/drawable-mdpi/ic_home_white_36dp.png
  30. BIN
      ejected/android/app/src/main/res/drawable-mdpi/ic_logo_white_32dp.png
  31. BIN
      ejected/android/app/src/main/res/drawable-mdpi/ic_refresh_white_36dp.png
  32. BIN
      ejected/android/app/src/main/res/drawable-mdpi/ic_share_white_36dp.png
  33. BIN
      ejected/android/app/src/main/res/drawable-xhdpi/ic_arrow_back_white_36dp.png
  34. BIN
      ejected/android/app/src/main/res/drawable-xhdpi/ic_home_white_36dp.png
  35. BIN
      ejected/android/app/src/main/res/drawable-xhdpi/ic_logo_white_32dp.png
  36. BIN
      ejected/android/app/src/main/res/drawable-xhdpi/ic_refresh_white_36dp.png
  37. BIN
      ejected/android/app/src/main/res/drawable-xhdpi/ic_share_white_36dp.png
  38. BIN
      ejected/android/app/src/main/res/drawable-xxhdpi/ic_arrow_back_white_36dp.png
  39. BIN
      ejected/android/app/src/main/res/drawable-xxhdpi/ic_home_white_36dp.png
  40. BIN
      ejected/android/app/src/main/res/drawable-xxhdpi/ic_logo_white_32dp.png
  41. BIN
      ejected/android/app/src/main/res/drawable-xxhdpi/ic_refresh_white_36dp.png
  42. BIN
      ejected/android/app/src/main/res/drawable-xxhdpi/ic_share_white_36dp.png
  43. BIN
      ejected/android/app/src/main/res/drawable-xxxhdpi/big_logo_dark.png
  44. BIN
      ejected/android/app/src/main/res/drawable-xxxhdpi/big_logo_dark_filled.png
  45. BIN
      ejected/android/app/src/main/res/drawable-xxxhdpi/big_logo_filled.png
  46. BIN
      ejected/android/app/src/main/res/drawable-xxxhdpi/big_logo_new_filled.png
  47. BIN
      ejected/android/app/src/main/res/drawable-xxxhdpi/ic_arrow_back_white_36dp.png
  48. BIN
      ejected/android/app/src/main/res/drawable-xxxhdpi/ic_home_white_36dp.png
  49. BIN
      ejected/android/app/src/main/res/drawable-xxxhdpi/ic_logo_white_32dp.png
  50. BIN
      ejected/android/app/src/main/res/drawable-xxxhdpi/ic_refresh_white_36dp.png
  51. BIN
      ejected/android/app/src/main/res/drawable-xxxhdpi/ic_share_white_36dp.png
  52. BIN
      ejected/android/app/src/main/res/drawable-xxxhdpi/notification_icon.png
  53. BIN
      ejected/android/app/src/main/res/drawable-xxxhdpi/pin_white.png
  54. BIN
      ejected/android/app/src/main/res/drawable-xxxhdpi/pin_white_fade.png
  55. BIN
      ejected/android/app/src/main/res/drawable-xxxhdpi/shell_launch_background_image.png
  56. BIN
      ejected/android/app/src/main/res/drawable-xxxhdpi/shell_notification_icon.png
  57. 8
      ejected/android/app/src/main/res/drawable/splash_background.xml
  58. 9
      ejected/android/app/src/main/res/layout/error_activity_new.xml
  59. 56
      ejected/android/app/src/main/res/layout/error_console_fragment.xml
  60. 31
      ejected/android/app/src/main/res/layout/error_console_list_item.xml
  61. 96
      ejected/android/app/src/main/res/layout/error_fragment.xml
  62. 8
      ejected/android/app/src/main/res/layout/exponent_button.xml
  63. 8
      ejected/android/app/src/main/res/layout/exponent_check_box.xml
  64. 31
      ejected/android/app/src/main/res/layout/exponent_dev_activity.xml
  65. 67
      ejected/android/app/src/main/res/layout/notification.xml
  66. 47
      ejected/android/app/src/main/res/layout/notification_shell_app.xml
  67. BIN
      ejected/android/app/src/main/res/mipmap-hdpi/dev_icon.png
  68. BIN
      ejected/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
  69. BIN
      ejected/android/app/src/main/res/mipmap-mdpi/dev_icon.png
  70. BIN
      ejected/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
  71. BIN
      ejected/android/app/src/main/res/mipmap-xhdpi/dev_icon.png
  72. BIN
      ejected/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
  73. BIN
      ejected/android/app/src/main/res/mipmap-xxhdpi/dev_icon.png
  74. BIN
      ejected/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
  75. BIN
      ejected/android/app/src/main/res/mipmap-xxxhdpi/dev_icon.png
  76. BIN
      ejected/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
  77. 6
      ejected/android/app/src/main/res/values-w820dp/dimens.xml
  78. 14
      ejected/android/app/src/main/res/values/colors.xml
  79. 6
      ejected/android/app/src/main/res/values/dimens.xml
  80. 14
      ejected/android/app/src/main/res/values/strings.xml
  81. 47
      ejected/android/app/src/main/res/values/styles.xml
  82. 79
      ejected/android/build.gradle
  83. BIN
      ejected/android/debug.keystore
  84. 6
      ejected/android/gradle.properties
  85. BIN
      ejected/android/gradle/wrapper/gradle-wrapper.jar
  86. 6
      ejected/android/gradle/wrapper/gradle-wrapper.properties
  87. 160
      ejected/android/gradlew
  88. 9
      ejected/android/settings.gradle
  89. 3
      scripts/export.php
  90. 40
      scripts/import.php
  91. 2
      scripts/replace.sh
  92. 232
      vds-app/App/data/aerodynamics.js
  93. 152
      vds-app/App/data/firstAid.js
  94. 271
      vds-app/App/data/flightSafety.js
  95. 96
      vds-app/App/data/instruments.js
  96. 320
      vds-app/App/data/legislation.js
  97. 105
      vds-app/App/data/materials.js
  98. 669
      vds-app/App/data/meteorology.js
  99. 57
      vds-app/App/data/physiopathology.js
  100. 379
      vds-app/App/data/pilotingTechniques.js

2
data/JSON/aerodynamics.json

File diff suppressed because one or more lines are too long

2
data/JSON/firstAid.json

File diff suppressed because one or more lines are too long

2
data/JSON/flightSafety.json

File diff suppressed because one or more lines are too long

2
data/JSON/instruments.json

File diff suppressed because one or more lines are too long

2
data/JSON/legislation.json

File diff suppressed because one or more lines are too long

2
data/JSON/materials.json

File diff suppressed because one or more lines are too long

2
data/JSON/meteorology.json

File diff suppressed because one or more lines are too long

2
data/JSON/physiopathology.json

@ -1 +1 @@
[{"id":"4001","question":"Come varia la pressione parziale dell\u2019ossigeno a livello polmonare, al variare dell\u2019altitudine?","answers":[{"id":"1","text":"diminuisce all\u2019aumentare dell\u2019altitudine.","correct":true},{"id":"2","text":"diminuisce all\u2019aumentare dell\u2019altitudine, ma non scende mai sotto valori di guardia."},{"id":"3","text":"aumenta all\u2019aumentare dell\u2019altitudine."}]},{"id":"4002","question":"Ad elevate altitudini nell\u2019organismo umano si instaura una situazione alterata, prodotta dalla ridotta pressione di ossigeno. Essa prende il nome di:","answers":[{"id":"1","text":"ipotermia."},{"id":"2","text":"ipossia.","correct":true},{"id":"3","text":"ipotensione."}]},{"id":"4003","question":"Che cosa \u00e8 l\u2019ipossia?","answers":[{"id":"1","text":"\u00e8 lo stato in cui l\u2019organismo viene a trovarsi a causa dell\u2019insufficiente pressione sanguigna dovuta alla quota."},{"id":"2","text":"\u00e8 lo stato in cui l\u2019organismo viene a trovarsi a causa dell\u2019insufficiente temperatura corporea dovuta alla quota."},{"id":"3","text":"\u00e8 lo stato in cui l\u2019organismo viene a trovarsi a causa dell\u2019insufficiente pressione dell\u2019ossigeno a livello degli alveoli polmonari dovuta alla quota.","correct":true}]},{"id":"4004","question":"Quali sono gli effetti dell\u2019ipossia?","answers":[{"id":"1","text":"diminuzione dell\u2019efficienza mentale, nausea, euforia, aumento del ritmo di ventilazione polmonare.","correct":true},{"id":"2","text":"vasodilatazione periferica, secchezza delle fauci, rigidit\u00e0 muscolare, diminuzione del ritmo di ventilazione polmonare."},{"id":"3","text":"diminuzione della pressione arteriosa, ischemia periferica, paralisi dei centri respiratori."}]},{"id":"4005","question":"La decompressione da alta quota pu\u00f2 dar luogo a liberazione di bolle gassose nel sangue, detti emboli. Qual \u00e8 la condizione in cui questo pericoloso fenomeno pu\u00f2 verificarsi con maggiore facilit\u00e0?","answers":[{"id":"1","text":"lenta ascensione oltre i 7000 metri."},{"id":"2","text":"rapida ascensione a 7000 metri ed oltre.","correct":true},{"id":"3","text":"permanenza ad alta quota dopo lungo periodo di ambientamento. DEL VOLO"}]},{"id":"4006","question":"Durante il volo il corpo umano \u00e8 sottoposto a vari tipi di accelerazione. Quali sono meglio sopportate tra quelle positive (testa-piedi) e quelle negative (piedi-testa)?","answers":[{"id":"1","text":"entrambe in uguale misura."},{"id":"2","text":"quelle negative."},{"id":"3","text":"quelle positive.","correct":true}]},{"id":"4007","question":"Le accelerazioni positive (testa-piedi) corrispondono a un aumento dei \u201cG\u201d o meglio a un aumento fittizio dell\u2019accelerazione di gravit\u00e0. Quando si possono manifestare in volo?","answers":[{"id":"1","text":"durante virate corrette.","correct":true},{"id":"2","text":"durante il volo su traiettoria rettilinea con forte pendenza."},{"id":"3","text":"durante brusche manovre di picchiata."}]},{"id":"4008","question":"Le accelerazioni negative (piedi-testa) corrispondono a una diminuzione dei \u201cG\u201d o meglio a una diminuzione fittizia della accelerazione di gravit\u00e0. Quando si possono manifestare in volo?","answers":[{"id":"1","text":"durante una brusca richiamata."},{"id":"2","text":"durante brusche manovre di picchiata.","correct":true},{"id":"3","text":"durante il volo su traiettoria rettilinea con forte pendenza."}]},{"id":"4009","question":"Quando sussiste in volo il rischio che il pilota soffra di un oscuramento della vista a seguito di manovre che inducono forti accelerazioni?","answers":[{"id":"1","text":"quando le accelerazioni indotte sono del tipo positivo (testa-piedi) e superano i 4 \u201cG\u201d per un tempo superiore a 4 secondi.","correct":true},{"id":"2","text":"quando comunque sono del tipo negativo (piedi-testa)."},{"id":"3","text":"quando si passa da accelerazioni positive ad accelerazioni negative senza soluzione di continuit\u00e0 in meno di 4 secondi."}]}]
[{"id":"4001","question":"Come varia la pressione parziale dell\u2019ossigeno a livello polmonare, al variare dell\u2019altitudine?","points":"2","answers":[{"id":"1","text":"Diminuisce all\u2019aumentare dell\u2019altitudine.","correct":true},{"id":"2","text":"Diminuisce all\u2019aumentare dell\u2019altitudine, ma non scende mai sotto valori di guardia."},{"id":"3","text":"Aumenta all\u2019aumentare dell\u2019altitudine."}]},{"id":"4002","question":"Ad elevate altitudini nell\u2019organismo umano si instaura una situazione alterata, prodotta dalla ridotta pressione di ossigeno. Essa prende il nome di:","points":"2","answers":[{"id":"1","text":"ipotermia."},{"id":"2","text":"ipossia.","correct":true},{"id":"3","text":"ipotensione."}]},{"id":"4003","question":"Che cosa \u00e8 l\u2019ipossia?","points":"2","answers":[{"id":"1","text":"\u00c8 lo stato in cui l\u2019organismo viene a trovarsi a causa dell\u2019insufficiente pressione sanguigna dovuta alla quota."},{"id":"2","text":"\u00c8 lo stato in cui l\u2019organismo viene a trovarsi a causa dell\u2019insufficiente temperatura corporea dovuta alla quota."},{"id":"3","text":"\u00c8 lo stato in cui l\u2019organismo viene a trovarsi a causa dell\u2019insufficiente pressione dell\u2019ossigeno a livello degli alveoli polmonari dovuta alla quota.","correct":true}]},{"id":"4004","question":"Quali sono gli effetti dell\u2019ipossia?","points":"2","answers":[{"id":"1","text":"Diminuzione dell\u2019efficienza mentale, nausea, euforia, aumento del ritmo di ventilazione polmonare.","correct":true},{"id":"2","text":"Vasodilatazione periferica, secchezza delle fauci, rigidit\u00e0 muscolare, diminuzione del ritmo di ventilazione polmonare."},{"id":"3","text":"Diminuzione della pressione arteriosa, ischemia periferica, paralisi dei centri respiratori."}]},{"id":"4005","question":"La decompressione da alta quota pu\u00f2 dar luogo a liberazione di bolle gassose nel sangue, detti emboli. Qual \u00e8 la condizione in cui questo pericoloso fenomeno pu\u00f2 verificarsi con maggiore facilit\u00e0?","points":"2","answers":[{"id":"1","text":"Lenta ascensione oltre i 7000 metri."},{"id":"2","text":"Rapida ascensione a 7000 metri ed oltre.","correct":true},{"id":"3","text":"Permanenza ad alta quota dopo lungo periodo di ambientamento. DEL VOLO"}]},{"id":"4006","question":"Durante il volo il corpo umano \u00e8 sottoposto a vari tipi di accelerazione. Quali sono meglio sopportate tra quelle positive (testa-piedi) e quelle negative (piedi-testa)?","points":"2","answers":[{"id":"1","text":"Entrambe in uguale misura."},{"id":"2","text":"Quelle negative."},{"id":"3","text":"Quelle positive.","correct":true}]},{"id":"4007","question":"Le accelerazioni positive (testa-piedi) corrispondono a un aumento dei \u201cG\u201d o meglio a un aumento fittizio dell\u2019accelerazione di gravit\u00e0. Quando si possono manifestare in volo?","points":"2","answers":[{"id":"1","text":"Durante virate corrette.","correct":true},{"id":"2","text":"Durante il volo su traiettoria rettilinea con forte pendenza."},{"id":"3","text":"Durante brusche manovre di picchiata."}]},{"id":"4008","question":"Le accelerazioni negative (piedi-testa) corrispondono a una diminuzione dei \u201cG\u201d o meglio a una diminuzione fittizia della accelerazione di gravit\u00e0. Quando si possono manifestare in volo?","points":"2","answers":[{"id":"1","text":"Durante una brusca richiamata."},{"id":"2","text":"Durante brusche manovre di picchiata.","correct":true},{"id":"3","text":"Durante il volo su traiettoria rettilinea con forte pendenza."}]},{"id":"4009","question":"Quando sussiste in volo il rischio che il pilota soffra di un oscuramento della vista a seguito di manovre che inducono forti accelerazioni?","points":"2","answers":[{"id":"1","text":"Quando le accelerazioni indotte sono del tipo positivo (testa-piedi) e superano i 4 \u201cG\u201d per un tempo superiore a 4 secondi.","correct":true},{"id":"2","text":"Quando comunque sono del tipo negativo (piedi-testa)."},{"id":"3","text":"Quando si passa da accelerazioni positive ad accelerazioni negative senza soluzione di continuit\u00e0 in meno di 4 secondi."}]}]

2
data/JSON/pilotingTechniques.json

File diff suppressed because one or more lines are too long

BIN
data/quiz_VDS-VL_2017.pdf

Binary file not shown.

BIN
data/quizi-esami-vds-vm.rar

Binary file not shown.

205
ejected/android/app/build.gradle

@ -1,205 +0,0 @@
buildscript {
repositories {
google()
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
classpath 'io.fabric.tools:gradle:1.26.1'
}
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
apply plugin: 'devicefarm'
repositories {
maven { url 'https://maven.fabric.io/public' }
}
def safeExtGet(prop, fallback) {
rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback
}
android {
compileSdkVersion safeExtGet("compileSdkVersion", 28)
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
defaultConfig {
applicationId 'com.dslak.vdsquiz'
minSdkVersion safeExtGet("minSdkVersion", 21)
targetSdkVersion safeExtGet("targetSdkVersion", 28)
versionCode 1
versionName '1.0.0'
multiDexEnabled true
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
// Deprecated. Used by net.openid:appauth
manifestPlaceholders = [
'appAuthRedirectScheme': 'host.exp.exponent'
]
}
dexOptions {
javaMaxHeapSize System.getenv("DISABLE_DEX_MAX_HEAP") ? null : "8g"
}
signingConfigs {
debug {
storeFile file('../debug.keystore')
}
release {
storeFile file(System.getenv("ANDROID_KEYSTORE_PATH") ?: "release-key.jks")
storePassword System.getenv("ANDROID_KEYSTORE_PASSWORD")
keyAlias System.getenv("ANDROID_KEY_ALIAS")
keyPassword System.getenv("ANDROID_KEY_PASSWORD")
}
}
buildTypes {
debug {
debuggable true
ext.enableCrashlytics = false
}
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
consumerProguardFiles 'proguard-rules.pro'
signingConfig signingConfigs.release
}
}
lintOptions {
abortOnError false
}
packagingOptions {
pickFirst "**"
}
}
devicefarm {
projectName System.getenv("DEVICEFARM_PROJECT_NAME")
devicePool System.getenv("DEVICEFARM_DEVICE_POOL")
executionTimeoutMinutes 40
authentication {
accessKey System.getenv("AWS_ACCESS_KEY_ID")
secretKey System.getenv("AWS_SECRET_ACCESS_KEY")
}
}
configurations.all {
resolutionStrategy {
force 'org.webkit:android-jsc:r245459'
}
}
// WHEN_PREPARING_SHELL_REMOVE_FROM_HERE
apply from: 'expo.gradle'
// WHEN_PREPARING_SHELL_REMOVE_TO_HERE
apply from: "../../node_modules/react-native-unimodules/gradle.groovy"
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:multidex:1.0.1'
// Our dependencies
implementation "com.android.support:appcompat-v7:$supportLibVersion"
// Our dependencies from ExpoView
// DON'T ADD ANYTHING HERE THAT ISN'T IN EXPOVIEW. ONLY COPY THINGS FROM EXPOVIEW TO HERE.
implementation "com.android.support:appcompat-v7:$supportLibVersion"
implementation 'com.facebook.android:facebook-android-sdk:5.0.1'
implementation('com.facebook.android:audience-network-sdk:5.1.1') {
exclude module: 'play-services-ads'
}
compileOnly 'org.glassfish:javax.annotation:3.1.1'
implementation 'com.jakewharton:butterknife:9.0.0'
implementation 'de.greenrobot:eventbus:2.4.0'
implementation 'com.squareup.picasso:picasso:2.5.2'
implementation 'com.google.android.gms:play-services-gcm:15.0.1'
implementation 'com.google.android.gms:play-services-analytics:16.0.1'
implementation 'com.google.android.gms:play-services-maps:15.0.1'
implementation 'com.google.android.gms:play-services-auth:15.0.1'
implementation 'com.google.android.gms:play-services-location:15.0.1'
implementation "com.madgag.spongycastle:core:1.53.0.0"
implementation "com.madgag.spongycastle:prov:1.53.0.0"
debugImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.4-beta1'
// debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.4-beta1'
releaseImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.4-beta1'
implementation 'com.facebook.device.yearclass:yearclass:2.1.0'
implementation 'commons-io:commons-io:1.4'
implementation 'me.leolin:ShortcutBadger:1.1.4@aar'
implementation 'com.theartofdev.edmodo:android-image-cropper:2.7.0'
implementation 'commons-codec:commons-codec:1.10'
implementation 'com.segment.analytics.android:analytics:4.3.0'
implementation 'com.google.zxing:core:3.3.3'
implementation 'net.openid:appauth:0.4.1'
implementation 'com.airbnb.android:lottie:2.5.6'
implementation('io.nlopez.smartlocation:library:3.2.11') {
transitive = false
}
implementation "com.android.support:exifinterface:${safeExtGet("supportLibVersion", "28.0.0")}"
implementation 'com.squareup.okio:okio:1.9.0'
implementation 'com.facebook.soloader:soloader:0.6.0'
// expo-file-system
implementation 'com.squareup.okhttp3:okhttp:3.10.0'
implementation 'com.squareup.okhttp3:okhttp-urlconnection:3.10.0'
// Testing
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
// We use a modified build of com.android.support.test:runner:1.0.1. Explanation in maven-test/README
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation "com.android.support:support-annotations:${safeExtGet("supportLibVersion", "28.0.0")}"
androidTestImplementation 'com.google.code.findbugs:jsr305:3.0.0'
androidTestImplementation 'com.android.support.test.uiautomator:uiautomator-v18:2.1.1'
androidTestImplementation 'com.azimolabs.conditionwatcher:conditionwatcher:0.2'
testImplementation 'junit:junit:4.12'
testImplementation 'org.mockito:mockito-core:1.10.19'
testImplementation 'org.robolectric:robolectric:3.8'
testImplementation 'com.android.support.test:runner:1.0.2-alpha1'
testImplementation 'com.android.support.test:rules:1.0.2-alpha1'
implementation('host.exp.exponent:expoview:35.0.0@aar') {
transitive = true
exclude group: 'com.squareup.okhttp3', module: 'okhttp'
exclude group: 'com.squareup.okhttp3', module: 'okhttp-urlconnection'
}
api 'org.webkit:android-jsc:r245459' // needs to be before react-native
api 'com.facebook.react:react-native:33.0.0'
addUnimodulesDependencies([
modulesPaths : [
'../../node_modules'
],
configuration: 'api',
target : 'react-native',
exclude : [
// You can exclude unneeded modules here, eg.
// 'unimodules-face-detector-interface',
// 'expo-face-detector'
// Adding a name here will also remove the package
// from auto-generated BasePackageList.java
]
])
}
// This has to be down here for some reason
apply plugin: 'com.google.gms.google-services'

68
ejected/android/app/expo.gradle

@ -1,68 +0,0 @@
// Gradle script for detached apps.
import org.apache.tools.ant.taskdefs.condition.Os
void runBefore(String dependentTaskName, Task task) {
Task dependentTask = tasks.findByPath(dependentTaskName);
if (dependentTask != null) {
dependentTask.dependsOn task
}
}
afterEvaluate {
def expoRoot = file("../../")
def inputExcludes = ["android/**", "ios/**"]
task exponentPrebuildStep(type: Exec) {
workingDir expoRoot
if (Os.isFamily(Os.FAMILY_WINDOWS)) {
commandLine "cmd", "/c", ".\\node_modules\\expokit\\detach-scripts\\run-exp.bat"
} else {
commandLine "./node_modules/expokit/detach-scripts/run-exp.sh", "prepare-detached-build", "--platform", "android", expoRoot
}
}
runBefore("preBuild", exponentPrebuildStep)
// Based on https://github.com/facebook/react-native/blob/master/react.gradle
android.applicationVariants.each { variant ->
def folderName = variant.name
def targetName = folderName.capitalize()
def assetsDir = file("$buildDir/intermediates/merged_assets/${folderName}/merge${targetName}Assets/out")
// Bundle task name for variant
def bundleExpoAssetsTaskName = "bundle${targetName}ExpoAssets"
def currentBundleTask = tasks.create(
name: bundleExpoAssetsTaskName,
type: Exec) {
description = "Expo bundle assets for ${targetName}."
// Create dirs if they are not there (e.g. the "clean" task just ran)
doFirst {
assetsDir.mkdirs()
}
// Set up inputs and outputs so gradle can cache the result
inputs.files fileTree(dir: expoRoot, excludes: inputExcludes)
outputs.dir assetsDir
// Set up the call to exp
workingDir expoRoot
if (Os.isFamily(Os.FAMILY_WINDOWS)) {
commandLine("cmd", "/c", ".\\node_modules\\expokit\\detach-scripts\\run-exp.bat", "bundle-assets", expoRoot, "--platform", "android", "--dest", assetsDir)
} else {
commandLine("./node_modules/expokit/detach-scripts/run-exp.sh", "bundle-assets", expoRoot, "--platform", "android", "--dest", assetsDir)
}
enabled targetName.toLowerCase().contains("release") || targetName.toLowerCase().contains("prod")
}
currentBundleTask.dependsOn("merge${targetName}Resources")
currentBundleTask.dependsOn("merge${targetName}Assets")
runBefore("process${targetName}Resources", currentBundleTask)
}
}

3
ejected/android/app/fabric.properties

@ -1,3 +0,0 @@
#Contains API Secret used to validate your application. Commit to internal source control; avoid making secret public.
#Sun Dec 13 13:22:06 PST 2015
apiSecret=83176563693e1eefa1a91359c4151b88c3fd17e52ddf6d64416b7f1e0fa9cede

50
ejected/android/app/google-services.json

@ -1,50 +0,0 @@
{
"project_info": {
"project_id": "exponent-5dd6d",
"project_number": "367315174693",
"name": "Expo Client"
},
"client": [
{
"client_info": {
"mobilesdk_app_id": "1:367315174693:android:f968efbb41d1fa7a",
"client_id": "android:host.exp.exponent",
"client_type": 1,
"android_client_info": {
"package_name": "com.dslak.vdsquiz",
"certificate_hash": ""
}
},
"oauth_client": [],
"api_key": [
{
"current_key": ""
}
],
"services": {
"analytics_service": {
"status": 2,
"analytics_property": {
"tracking_id": "UA-76673608-1"
}
},
"cloud_messaging_service": {
"status": 2,
"apns_config": []
},
"appinvite_service": {
"status": 1,
"other_platform_oauth_client": []
},
"google_signin_service": {
"status": 1
},
"ads_service": {
"status": 1
}
}
}
],
"client_info": [],
"ARTIFACT_VERSION": "1"
}

152
ejected/android/app/proguard-rules.pro

@ -1,152 +0,0 @@
# Add project specific ProGuard rules here.
# By default, the flags in this file are appended to flags specified
# in /Users/ide/Library/Android/sdk/tools/proguard/proguard-android.txt
# You can edit the include path and order by changing the proguardFiles
# directive in build.gradle.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html
# Add any project specific keep options here:
# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}
# THIS IS VERY VERY BAD. REMOVE AS SOON AS VERSIONING IS FIXED
-dontwarn **
-dontnote **
-keep class host.exp.exponent.generated.AppConstants { *; }
##### Crashlytics #####
-keepattributes SourceFile,LineNumberTable
##### Expo Universal Modules #####
-keepclassmembers class * {
@**.expo.core.interfaces.ExpoProp *;
}
-keepclassmembers class * {
@**.expo.core.interfaces.ExpoMethod *;
}
-keep @**.expo.core.interfaces.DoNotStrip class *
-keepclassmembers class * {
@**.expo.core.interfaces.DoNotStrip *;
}
##### React Native #####
-keep,allowobfuscation @interface **.facebook.proguard.annotations.DoNotStrip
-keep,allowobfuscation @interface **.facebook.proguard.annotations.KeepGettersAndSetters
-keep,allowobfuscation @interface **.facebook.react.bridge.ReadableType
# Do not strip any method/class that is annotated with @DoNotStrip
-keep @**.facebook.proguard.annotations.DoNotStrip class *
-keepclassmembers class * {
@**.facebook.proguard.annotations.DoNotStrip *;
}
-keepclassmembers @**.facebook.proguard.annotations.KeepGettersAndSetters class * {
void set*(***);
*** get*();
}
-keep class * extends **.facebook.react.bridge.JavaScriptModule { *; }
-keep class * extends **.facebook.react.bridge.NativeModule { *; }
-keepclassmembers class * { @**.facebook.react.uimanager.UIProp <fields>; }
-keepclassmembers class * { @**.facebook.react.uimanager.ReactProp <methods>; }
-keepclassmembers class * { @**.facebook.react.uimanager.ReactPropGroup <methods>; }
# TODO: shouldn't need these two rules
-keep interface **.facebook.react.bridge.** { *; }
-keep enum **.facebook.react.bridge.** { *; }
##### Versioned React Native #####
-keep class **.facebook.** { *; }
-keep class abi** { *; }
-keep class versioned** { *; }
-keep class expo.modules** { *; }
##### Butterknife #####
-keep class butterknife.** { *; }
-dontwarn butterknife.internal.**
-keep class **$$ViewBinder { *; }
-keepclasseswithmembernames class * {
@butterknife.* <fields>;
}
-keepclasseswithmembernames class * {
@butterknife.* <methods>;
}
##### Stetho #####
-keep class **.facebook.stetho.** { *; }
-dontwarn **.facebook.stetho.**
##### fresco #####
# Keep our interfaces so they can be used by other ProGuard rules.
# See http://sourceforge.net/p/proguard/bugs/466/
-keep,allowobfuscation @interface **.facebook.common.internal.DoNotStrip
# Do not strip any method/class that is annotated with @DoNotStrip
-keep @**.facebook.common.internal.DoNotStrip class *
-keepclassmembers class * {
@**.facebook.common.internal.DoNotStrip *;
}
# Keep native methods
-keepclassmembers class * {
native <methods>;
}
-dontwarn okio.**
-dontwarn javax.annotation.**
-dontwarn com.android.volley.toolbox.**
##### okhttp #####
-keepattributes Signature
-keepattributes *Annotation*
-keep class com.squareup.okhttp.** { *; }
-keep interface com.squareup.okhttp.** { *; }
# This is also needed by Picasso
-dontwarn com.squareup.okhttp.**
-keep class okhttp3.** { *; }
-keep interface okhttp3.** { *; }
# This is also needed by Picasso
-dontwarn okhttp3.**
##### okio #####
-keep class sun.misc.Unsafe { *; }
-dontwarn java.nio.file.*
-dontwarn org.codehaus.mojo.animal_sniffer.IgnoreJRERequirement
-dontwarn okio.**
##### EventBus #####
-keepclassmembers class ** {
public void onEvent*(***);
}
# Only required if you use AsyncExecutor
-keepclassmembers class * extends de.greenrobot.event.util.ThrowableFailureEvent {
<init>(java.lang.Throwable);
}
##### Amplitude #####
-keep class com.amplitude.api.** {*;}
##### DBFlow #####
-keep class com.raizlabs.android.dbflow.config.GeneratedDatabaseHolder
##### SpongyCastle #####
-keep class org.spongycastle.**
-dontwarn org.spongycastle.jce.provider.X509LDAPCertStoreSpi
-dontwarn org.spongycastle.x509.util.LDAPStoreHelper

369
ejected/android/app/src/main/AndroidManifest.xml

@ -1,369 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest
package="host.exp.exponent"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<permission
android:name="com.dslak.vdsquiz.permission.C2D_MESSAGE"
android:protectionLevel="signature"/>
<!-- These are required permissions to make the app run -->
<uses-permission android:name="com.dslak.vdsquiz.permission.C2D_MESSAGE" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" tools:node="remove" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" tools:node="remove" />
<uses-permission android:name="android.permission.CAMERA" tools:node="remove" />
<uses-permission android:name="android.permission.MANAGE_DOCUMENTS" tools:node="remove" />
<uses-permission android:name="android.permission.READ_CONTACTS" tools:node="remove" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" tools:node="remove" />
<uses-permission android:name="android.permission.READ_CALENDAR" tools:node="remove" />
<uses-permission android:name="android.permission.WRITE_CALENDAR" tools:node="remove" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" tools:node="remove" />
<uses-permission android:name="android.permission.READ_INTERNAL_STORAGE" tools:node="remove" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" tools:node="remove" />
<uses-permission android:name="android.permission.RECORD_AUDIO" tools:node="remove" />
<uses-permission android:name="android.permission.USE_FINGERPRINT" tools:node="remove" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" tools:node="remove" />
<uses-permission android:name="android.permission.READ_SMS" tools:node="remove" />
<uses-permission android:name="com.anddoes.launcher.permission.UPDATE_COUNT" tools:node="remove" />
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" tools:node="remove" />
<uses-permission android:name="com.google.android.gms.permission.ACTIVITY_RECOGNITION" tools:node="remove" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" tools:node="remove" />
<uses-permission android:name="com.htc.launcher.permission.READ_SETTINGS" tools:node="remove" />
<uses-permission android:name="com.htc.launcher.permission.UPDATE_SHORTCUT" tools:node="remove" />
<uses-permission android:name="com.majeur.launcher.permission.UPDATE_BADGE" tools:node="remove" />
<uses-permission android:name="com.sec.android.provider.badge.permission.READ" tools:node="remove" />
<uses-permission android:name="com.sec.android.provider.badge.permission.WRITE" tools:node="remove" />
<uses-permission android:name="com.sonyericsson.home.permission.BROADCAST_BADGE" tools:node="remove" />
<!-- ADD TEST PERMISSIONS HERE -->
<uses-feature android:glEsVersion="0x00020000" android:required="false" />
<uses-feature android:name="android.software.leanback" android:required="false" />
<uses-feature android:name="android.hardware.touchscreen" android:required="false" />
<application
android:name=".MainApplication"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:largeHeap="true"
android:usesCleartextTraffic="true">
<activity
android:name=".LauncherActivity"
android:exported="true"
android:launchMode="singleTask"
android:theme="@android:style/Theme.Translucent.NoTitleBar">
</activity>
<activity
android:name=".experience.ExperienceActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
android:theme="@style/Theme.Exponent.Light"
android:windowSoftInputMode="adjustResize">
</activity>
<activity
android:name=".MainActivity"
android:launchMode="singleTask"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
android:theme="@style/Theme.Exponent.Splash"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<data android:scheme="expc1313981c09d48258582690c225378d8"/>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
<!-- ADD DETACH APP SPECIFIC INTENT FILTERS -->
</activity>
<activity
android:name=".experience.HomeActivity"
android:label="@string/app_name"
android:launchMode="singleTask"
android:screenOrientation="portrait"
android:theme="@style/Theme.Exponent.Light">
</activity>
<activity
android:name=".experience.TvActivity"
android:label="@string/app_name"
android:theme="@style/Theme.Exponent.Light"
android:screenOrientation="landscape">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LEANBACK_LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="com.facebook.react.devsupport.DevSettingsActivity"/>
<!-- WHEN_PREPARING_SHELL_REMOVE_FROM_HERE -->
<!-- ADD DEV SETTINGS HERE -->
<!-- BEGIN_SDK_35 -->
<activity android:name="abi35_0_0.com.facebook.react.devsupport.DevSettingsActivity"/>
<!-- END_SDK_35 -->
<!-- BEGIN_SDK_34 -->
<activity android:name="abi34_0_0.com.facebook.react.devsupport.DevSettingsActivity"/>
<!-- END_SDK_34 -->
<!-- BEGIN_SDK_33 -->
<activity android:name="abi33_0_0.com.facebook.react.devsupport.DevSettingsActivity"/>
<!-- END_SDK_33 -->
<!-- WHEN_PREPARING_SHELL_REMOVE_TO_HERE -->
<activity
android:name=".ExponentDevActivity"
android:exported="true"
android:label="@string/dev_activity_name"
android:screenOrientation="portrait"
android:theme="@style/Theme.Exponent.Dark"
android:windowSoftInputMode="adjustPan">
</activity>
<activity
android:name=".oauth.OAuthWebViewActivity"
android:screenOrientation="portrait"
android:theme="@style/Theme.Exponent.Light">
</activity>
<activity
android:name="net.openid.appauth.RedirectUriReceiverActivity"
tools:node="replace">
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="com.dslak.vdsquiz" android:path="oauthredirect"/>
</intent-filter>
</activity>
<activity
android:name=".oauth.OAuthResultActivity">
</activity>
<!-- START OF STRIPE SCHEMES -->
<activity
android:exported="true"
android:launchMode="singleTask"
android:name="expo.modules.payments.stripe.RedirectUriReceiver"
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="expo.modules.payments.stripe.85c6cb4a-a530-402e-a683-229b365707be" />
</intent-filter>
</activity>
<!-- Versioned Activity for Stripe -->
<!-- BEGIN_SDK_abi35_0_0 -->
<activity
android:exported="true"
android:launchMode="singleTask"
android:name="abiabi35_0_0.expo.modules.payments.stripe.RedirectUriReceiver"
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="abiabi35_0_0.expo.modules.payments.stripe" />
</intent-filter>
</activity>
<!-- END_SDK_abi35_0_0 -->
<!-- BEGIN_SDK_34 -->
<activity
android:exported="true"
android:launchMode="singleTask"
android:name="abi34_0_0.expo.modules.payments.stripe.RedirectUriReceiver"
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="abi34_0_0.expo.modules.payments.stripe" />
</intent-filter>
</activity>
<!-- END_SDK_34 -->
<!-- BEGIN_SDK_33 -->
<activity
android:exported="true"
android:launchMode="singleTask"
android:name="abi33_0_0.expo.modules.payments.stripe.RedirectUriReceiver"
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="abi33_0_0.expo.modules.payments.stripe" />
</intent-filter>
</activity>
<!-- END_SDK_33 -->
<!-- END OF STRIPE SCHEMES -->
<activity
android:name=".chrometabs.ChromeTabsManagerActivity">
</activity>
<activity
android:name=".experience.ErrorActivity"
android:theme="@style/Theme.Exponent.Dark"
android:screenOrientation="portrait">
</activity>
<activity
android:name=".experience.InfoActivity"
android:screenOrientation="portrait"
android:theme="@style/Theme.Exponent.Light">
</activity>
<activity
android:name="com.facebook.FacebookActivity"
android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
android:label="@string/app_name"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
tools:replace="android:theme" />
<activity
android:name="com.facebook.ads.InterstitialAdActivity"
android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
android:label="@string/app_name"
android:theme="@android:style/Theme.Translucent.NoTitleBar" />
<service
android:name=".ExponentIntentService"
android:exported="false" />
<!-- Analytics -->
<receiver
android:name="host.exp.exponent.referrer.InstallReferrerReceiver"
android:exported="true">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
<!--
This crashes: https://code.google.com/p/analytics-issues/issues/detail?id=667
TODO: turn it back on when it's fixed
<service
android:name="com.google.android.gms.analytics.CampaignTrackingService"
android:enabled="true"
android:exported="false" />-->
<receiver android:name="com.google.android.gms.analytics.AnalyticsReceiver"
android:enabled="true">
<intent-filter>
<action android:name="com.google.android.gms.analytics.ANALYTICS_DISPATCH" />
</intent-filter>
</receiver>
<service android:name="com.google.android.gms.analytics.AnalyticsService"
android:enabled="true"
android:exported="false"/>
<!-- GCM -->
<receiver
android:name="com.google.android.gms.gcm.GcmReceiver"
android:exported="true"
android:permission="com.google.android.c2dm.permission.SEND">
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE"/>
<action android:name="com.google.android.c2dm.intent.REGISTRATION"/>
<category android:name="com.dslak.vdsquiz"/>
</intent-filter>
</receiver>
<service
android:name=".gcm.ExponentGcmListenerService"
android:exported="false">
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE"/>
</intent-filter>
</service>
<service
android:name=".gcm.ExponentInstanceIDListenerService"
android:exported="false">
<intent-filter>
<action android:name="com.google.android.gms.iid.InstanceID"/>
</intent-filter>
</service>
<service
android:name=".gcm.GcmRegistrationIntentService"
android:exported="false">
</service>
<!-- FCM -->
<service
android:name=".fcm.ExpoFcmMessagingService">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT"/>
</intent-filter>
</service>
<meta-data
android:name="com.google.firebase.messaging.default_notification_icon"
android:resource="@drawable/shell_notification_icon" />
<meta-data
android:name="com.google.firebase.messaging.default_notification_color"
android:resource="@color/colorAccent" />
<service
android:name=".fcm.FcmRegistrationIntentService"
android:exported="false">
</service>
<!-- ImagePicker native module -->
<activity
android:name="com.theartofdev.edmodo.cropper.CropImageActivity"
android:theme="@style/Base.Theme.AppCompat">
</activity>
<!-- ADD FABRIC CONFIG HERE -->
<!-- BEGIN FABRIC CONFIG -->
<meta-data
android:name="io.fabric.ApiKey"
android:value="a25fafe9f9edee11a9882b32e0cd7a26df6e2c42"/>
<!-- END FABRIC CONFIG -->
<!-- ADD GOOGLE MAPS CONFIG HERE -->
<!-- BEGIN GOOGLE MAPS CONFIG -->
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="AIzaSyDh7eDB9snEFSYtf-k0gfxA45HFoR0L--I"/>
<!-- END GOOGLE MAPS CONFIG -->
<!-- ADD GOOGLE MOBILE ADS CONFIG HERE -->
<!-- BEGIN GOOGLE MOBILE ADS CONFIG -->
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-3940256099942544~3347511713"/>
<!-- END GOOGLE MOBILE ADS CONFIG -->
<!-- ADD BRANCH CONFIG HERE -->
<!-- The Facebook SDK runs FacebookInitProvider on startup and crashes if there isn't an ID here -->
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="fb0"/>
<meta-data android:name="standaloneStripeScheme" android:value="85c6cb4a-a530-402e-a683-229b365707be" />
</application>
</manifest>

1
ejected/android/app/src/main/assets/kernel-manifest.json

@ -1 +0,0 @@
{"android":{"package":"host.exp.exponent","publishBundlePath":"../android/app/src/main/assets/kernel.android.bundle"},"dependencies":["@expo/react-native-action-sheet","@expo/react-native-touchable-native-feedback-safe","@react-navigation/web","apollo-boost","apollo-cache-inmemory","dedent","es6-error","expo","expo-analytics-amplitude","expo-asset","expo-barcode-scanner","expo-blur","expo-camera","expo-constants","expo-font","expo-linear-gradient","expo-location","expo-permissions","expo-task-manager","expo-web-browser","graphql","graphql-tag","immutable","lodash","prop-types","querystring","react","react-apollo","react-native","react-native-appearance","react-native-fade-in-image","react-native-gesture-handler","react-native-infinite-scroll-view","react-native-maps","react-navigation","react-navigation-material-bottom-tabs","react-navigation-stack","react-navigation-tabs","react-redux","redux","redux-thunk","semver","sha1","url"],"description":"","extra":{"amplitudeApiKey":"081e5ec53f869b440b225d5e40ec73f9"},"icon":"https://s3.amazonaws.com/exp-brand-assets/ExponentEmptyManifest_192.png","iconUrl":"https://s3.amazonaws.com/exp-brand-assets/ExponentEmptyManifest_192.png","ios":{"bundleIdentifier":"host.exp.exponent","publishBundlePath":"../ios/Exponent/Supporting/kernel.ios.bundle","supportsTablet":true},"isKernel":true,"kernel":{"androidManifestPath":"../android/app/src/main/assets/kernel-manifest.json","iosManifestPath":"../ios/Exponent/Supporting/kernel-manifest.json"},"locales":{},"name":"expo-home","orientation":"portrait","packagerOpts":{"config":"metro.config.js"},"platforms":["ios","android"],"primaryColor":"#cccccc","privacy":"unlisted","scheme":"exp","sdkVersion":"UNVERSIONED","slug":"home","updates":{"checkAutomatically":"ON_LOAD","fallbackToCacheTimeout":0},"version":"35.0.0","id":"@exponent/home","revisionId":"35.0.0-r.j5K6M6VmKq","publishedTime":"2019-09-16T21:21:42.975Z","commitTime":"2019-09-16T21:21:43.016Z","bundleUrl":"https://exp.host/@exponent/home/bundle","releaseChannel":"default","hostUri":"exp.host/@exponent/home"}

46
ejected/android/app/src/main/java/host/exp/exponent/MainActivity.java

@ -1,46 +0,0 @@
package host.exp.exponent;
import android.os.Bundle;
import com.facebook.react.ReactPackage;
import org.unimodules.core.interfaces.Package;
import java.util.List;
import host.exp.exponent.experience.DetachActivity;
import host.exp.exponent.generated.DetachBuildConstants;
public class MainActivity extends DetachActivity {
@Override
public String publishedUrl() {
return "exp://exp.host/@dslaky/VDS-Quiz";
}
@Override
public String developmentUrl() {
return DetachBuildConstants.DEVELOPMENT_URL;
}
@Override
public List<ReactPackage> reactPackages() {
return ((MainApplication) getApplication()).getPackages();
}
@Override
public List<Package> expoPackages() {
return ((MainApplication) getApplication()).getExpoPackages();
}
@Override
public boolean isDebug() {
return BuildConfig.DEBUG;
}
@Override
public Bundle initialProps(Bundle expBundle) {
// Add extra initialProps here
return expBundle;
}
}

48
ejected/android/app/src/main/java/host/exp/exponent/MainApplication.java

@ -1,48 +0,0 @@
package host.exp.exponent;
import com.facebook.react.ReactPackage;
import org.unimodules.core.interfaces.Package;
import java.util.Arrays;
import java.util.List;
import expo.loaders.provider.interfaces.AppLoaderPackagesProviderInterface;
import host.exp.exponent.generated.BasePackageList;
import okhttp3.OkHttpClient;
// Needed for `react-native link`
// import com.facebook.react.ReactApplication;
public class MainApplication extends ExpoApplication implements AppLoaderPackagesProviderInterface<ReactPackage> {
@Override
public boolean isDebug() {
return BuildConfig.DEBUG;
}
// Needed for `react-native link`
public List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
// Add your own packages here!
// TODO: add native modules!
// Needed for `react-native link`
// new MainReactPackage()
);
}
public List<Package> getExpoPackages() {
return new BasePackageList().getPackageList();
}
@Override
public String gcmSenderId() {
return getString(R.string.gcm_defaultSenderId);
}
public static OkHttpClient.Builder okHttpClientBuilder(OkHttpClient.Builder builder) {
// Customize/override OkHttp client here
return builder;
}
}

46
ejected/android/app/src/main/java/host/exp/exponent/generated/AppConstants.java

@ -1,46 +0,0 @@
package host.exp.exponent.generated;
import com.facebook.common.internal.DoNotStrip;
import java.util.ArrayList;
import java.util.List;
import host.exp.exponent.BuildConfig;
import host.exp.exponent.Constants;
@DoNotStrip
public class AppConstants {
public static final String VERSION_NAME = "1.0.0";
public static String INITIAL_URL = "exp://exp.host/@dslaky/VDS-Quiz";
public static final String SHELL_APP_SCHEME = "expc1313981c09d48258582690c225378d8";
public static final String RELEASE_CHANNEL = "default";
public static boolean SHOW_LOADING_VIEW_IN_SHELL_APP = true;
public static boolean ARE_REMOTE_UPDATES_ENABLED = true;
public static final List<Constants.EmbeddedResponse> EMBEDDED_RESPONSES;
public static boolean FCM_ENABLED = false;
static {
List<Constants.EmbeddedResponse> embeddedResponses = new ArrayList<>();
// ADD EMBEDDED RESPONSES HERE
// START EMBEDDED RESPONSES
// END EMBEDDED RESPONSES
EMBEDDED_RESPONSES = embeddedResponses;
}
// Called from expoview/Constants
public static Constants.ExpoViewAppConstants get() {
Constants.ExpoViewAppConstants constants = new Constants.ExpoViewAppConstants();
constants.VERSION_NAME = VERSION_NAME;
constants.INITIAL_URL = INITIAL_URL;
constants.SHELL_APP_SCHEME = SHELL_APP_SCHEME;
constants.RELEASE_CHANNEL = RELEASE_CHANNEL;
constants.SHOW_LOADING_VIEW_IN_SHELL_APP = SHOW_LOADING_VIEW_IN_SHELL_APP;
constants.ARE_REMOTE_UPDATES_ENABLED = ARE_REMOTE_UPDATES_ENABLED;
constants.EMBEDDED_RESPONSES = EMBEDDED_RESPONSES;
constants.ANDROID_VERSION_CODE = BuildConfig.VERSION_CODE;
constants.FCM_ENABLED = FCM_ENABLED;
return constants;
}
}

8
ejected/android/app/src/main/java/host/exp/exponent/generated/DetachBuildConstants.java

@ -1,8 +0,0 @@
package host.exp.exponent.generated;
// This file is auto-generated. Please don't rename!
public class DetachBuildConstants {
public static final String DEVELOPMENT_URL = "";
}

BIN
ejected/android/app/src/main/res/drawable-hdpi/ic_arrow_back_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 367 B

BIN
ejected/android/app/src/main/res/drawable-hdpi/ic_home_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 403 B

BIN
ejected/android/app/src/main/res/drawable-hdpi/ic_logo_white_32dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

BIN
ejected/android/app/src/main/res/drawable-hdpi/ic_refresh_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 693 B

BIN
ejected/android/app/src/main/res/drawable-hdpi/ic_share_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 711 B

BIN
ejected/android/app/src/main/res/drawable-mdpi/ic_arrow_back_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 287 B

BIN
ejected/android/app/src/main/res/drawable-mdpi/ic_home_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 320 B

BIN
ejected/android/app/src/main/res/drawable-mdpi/ic_logo_white_32dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

BIN
ejected/android/app/src/main/res/drawable-mdpi/ic_refresh_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 531 B

BIN
ejected/android/app/src/main/res/drawable-mdpi/ic_share_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 506 B

BIN
ejected/android/app/src/main/res/drawable-xhdpi/ic_arrow_back_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 410 B

BIN
ejected/android/app/src/main/res/drawable-xhdpi/ic_home_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 423 B

BIN
ejected/android/app/src/main/res/drawable-xhdpi/ic_logo_white_32dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

BIN
ejected/android/app/src/main/res/drawable-xhdpi/ic_refresh_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 875 B

BIN
ejected/android/app/src/main/res/drawable-xhdpi/ic_share_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 857 B

BIN
ejected/android/app/src/main/res/drawable-xxhdpi/ic_arrow_back_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 563 B

BIN
ejected/android/app/src/main/res/drawable-xxhdpi/ic_home_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 625 B

BIN
ejected/android/app/src/main/res/drawable-xxhdpi/ic_logo_white_32dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

BIN
ejected/android/app/src/main/res/drawable-xxhdpi/ic_refresh_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

BIN
ejected/android/app/src/main/res/drawable-xxhdpi/ic_share_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

BIN
ejected/android/app/src/main/res/drawable-xxxhdpi/big_logo_dark.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

BIN
ejected/android/app/src/main/res/drawable-xxxhdpi/big_logo_dark_filled.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

BIN
ejected/android/app/src/main/res/drawable-xxxhdpi/big_logo_filled.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

BIN
ejected/android/app/src/main/res/drawable-xxxhdpi/big_logo_new_filled.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

BIN
ejected/android/app/src/main/res/drawable-xxxhdpi/ic_arrow_back_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 720 B

BIN
ejected/android/app/src/main/res/drawable-xxxhdpi/ic_home_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 798 B

BIN
ejected/android/app/src/main/res/drawable-xxxhdpi/ic_logo_white_32dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

BIN
ejected/android/app/src/main/res/drawable-xxxhdpi/ic_refresh_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

BIN
ejected/android/app/src/main/res/drawable-xxxhdpi/ic_share_white_36dp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

BIN
ejected/android/app/src/main/res/drawable-xxxhdpi/notification_icon.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

BIN
ejected/android/app/src/main/res/drawable-xxxhdpi/pin_white.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

BIN
ejected/android/app/src/main/res/drawable-xxxhdpi/pin_white_fade.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

BIN
ejected/android/app/src/main/res/drawable-xxxhdpi/shell_launch_background_image.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 208 KiB

BIN
ejected/android/app/src/main/res/drawable-xxxhdpi/shell_notification_icon.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

8
ejected/android/app/src/main/res/drawable/splash_background.xml

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/splashBackground"/>
</layer-list>

9
ejected/android/app/src/main/res/layout/error_activity_new.xml

@ -1,9 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.view.ViewPager
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/error_viewPager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
/>

56
ejected/android/app/src/main/res/layout/error_console_fragment.xml

@ -1,56 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="top"
android:gravity="top"
android:orientation="vertical"
tools:context="host.exp.exponent.experience.ErrorActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/console_editText"
android:layout_centerHorizontal="true"
android:layout_marginLeft="40dp"
android:layout_marginRight="40dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:weightSum="2"
android:gravity="center_horizontal"
android:orientation="horizontal">
<host.exp.exponent.views.ExponentImageButton
android:id="@+id/console_home_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@android:color/transparent"
android:src="@drawable/ic_home_white_36dp"
android:textColor="@color/colorPrimaryDark"
android:textSize="15sp"/>
<host.exp.exponent.views.ExponentImageButton
android:id="@+id/console_reload_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@android:color/transparent"
android:src="@drawable/ic_refresh_white_36dp"
android:textColor="@color/colorPrimaryDark"
android:textSize="15sp"/>
</LinearLayout>
<ListView
android:id="@+id/list_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="10dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:background="@color/white" />
</LinearLayout>

31
ejected/android/app/src/main/res/layout/error_console_list_item.xml

@ -1,31 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="top"
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:gravity="top"
android:orientation="vertical">
<TextView
android:id="@+id/error_console_item_message"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/error_header"
android:textColor="@color/errorMessage"
android:textSize="14sp"/>
<TextView
android:id="@+id/error_console_item_stack_preview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="14sp"/>
<TextView
android:id="@+id/error_console_item_timestamp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="12sp"/>
</LinearLayout>

96
ejected/android/app/src/main/res/layout/error_fragment.xml

@ -1,96 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="host.exp.exponent.experience.ErrorActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:layout_above="@+id/view_error_log"
android:gravity="center"
android:orientation="vertical">
<TextView
android:id="@+id/error_header"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="30dp"
android:text="@string/error_header"
android:textColor="@color/white"
android:textSize="24sp"/>
<TextView
android:id="@+id/error_message"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="20dp"
android:layout_marginLeft="40dp"
android:layout_marginRight="40dp"
android:gravity="center"
android:text="@string/error_default_client"
android:textColor="@color/white"
android:textSize="16sp"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/editText"
android:layout_centerHorizontal="true"
android:layout_marginTop="140dp"
android:layout_marginLeft="40dp"
android:layout_marginRight="40dp"
android:weightSum="2"
android:gravity="center_horizontal"
android:orientation="horizontal">
<host.exp.exponent.views.ExponentImageButton
android:id="@+id/home_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@android:color/transparent"
android:src="@drawable/ic_home_white_36dp"
android:textColor="@color/colorPrimaryDark"
android:textSize="15sp"/>
<host.exp.exponent.views.ExponentImageButton
android:id="@+id/reload_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@android:color/transparent"
android:src="@drawable/ic_refresh_white_36dp"
android:textColor="@color/colorPrimaryDark"
android:textSize="15sp"/>
</LinearLayout>
</LinearLayout>
<TextView
android:id="@id/view_error_log"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
android:paddingBottom="20dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingTop="20dp"
android:gravity="center"
android:clickable="true"
android:text="@string/view_error_log"
android:textColor="@color/errorLogButton"
android:textSize="13sp"/>
</RelativeLayout>

8
ejected/android/app/src/main/res/layout/exponent_button.xml

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Button
style="@style/ExponentButton"
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
</Button>

8
ejected/android/app/src/main/res/layout/exponent_check_box.xml

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<CheckBox
style="@style/ExponentCheckBox"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
</CheckBox>

31
ejected/android/app/src/main/res/layout/exponent_dev_activity.xml

@ -1,31 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:context="host.exp.exponent.ExponentDevActivity">
<LinearLayout
android:id="@+id/linearLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/textView"
android:layout_marginTop="30dp"
android:focusable="true"
android:orientation="vertical"
android:padding="20dp">
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="20dp"
android:layout_marginTop="15dp"
android:text="Dev Menu"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="@color/colorText"/>
</LinearLayout>
</ScrollView>

67
ejected/android/app/src/main/res/layout/notification.xml

@ -1,67 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/colorPrimary">
<ImageButton
android:id="@+id/home_image_button"
android:layout_width="42dp"
android:layout_height="42dp"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:layout_marginLeft="11dp"
android:layout_marginTop="11dp"
android:layout_marginBottom="11dp"
android:background="@android:color/transparent"
android:scaleType="fitCenter"
android:src="@mipmap/ic_launcher"/>
<Button
android:id="@+id/home_text_button"
style="?android:attr/borderlessButtonStyle"
android:singleLine="true"
android:ellipsize="end"
android:gravity="left|center_vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="10dp"
android:layout_toEndOf="@+id/home_image_button"
android:layout_marginRight="12dp"
android:background="@android:color/transparent"
android:text="Expo"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="@color/white"/>
<ImageButton
android:id="@+id/reload_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:layout_marginRight="12dp"
android:background="@android:color/transparent"
android:src="@drawable/ic_refresh_white_36dp"/>
<ImageButton
android:id="@+id/share_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginRight="12dp"
android:layout_toLeftOf="@+id/reload_button"
android:background="@android:color/transparent"
android:src="@drawable/ic_share_white_36dp"/>
<ImageButton
android:id="@+id/save_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginRight="12dp"
android:layout_toLeftOf="@+id/share_button"
android:background="@android:color/transparent"
android:src="@drawable/pin_white"/>
</RelativeLayout>

47
ejected/android/app/src/main/res/layout/notification_shell_app.xml

@ -1,47 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/colorPrimary">
<ImageButton
android:id="@+id/home_image_button"
android:layout_width="42dp"
android:layout_height="42dp"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:layout_marginLeft="11dp"
android:background="@android:color/transparent"
android:scaleType="fitCenter"
android:src="@mipmap/ic_launcher"/>
<Button
android:id="@+id/home_text_button"
style="?android:attr/borderlessButtonStyle"
android:singleLine="true"
android:ellipsize="end"
android:gravity="left|center_vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="10dp"
android:layout_toEndOf="@+id/home_image_button"
android:layout_toLeftOf="@+id/reload_button"
android:layout_marginRight="12dp"
android:background="@android:color/transparent"
android:text="Exponent"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="@color/white"/>
<ImageButton
android:id="@+id/reload_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:layout_marginRight="12dp"
android:background="@android:color/transparent"
android:src="@drawable/ic_refresh_white_36dp"/>
</RelativeLayout>

BIN
ejected/android/app/src/main/res/mipmap-hdpi/dev_icon.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

BIN
ejected/android/app/src/main/res/mipmap-hdpi/ic_launcher.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

BIN
ejected/android/app/src/main/res/mipmap-mdpi/dev_icon.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

BIN
ejected/android/app/src/main/res/mipmap-mdpi/ic_launcher.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

BIN
ejected/android/app/src/main/res/mipmap-xhdpi/dev_icon.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.3 KiB

BIN
ejected/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

BIN
ejected/android/app/src/main/res/mipmap-xxhdpi/dev_icon.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.9 KiB

BIN
ejected/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

BIN
ejected/android/app/src/main/res/mipmap-xxxhdpi/dev_icon.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

BIN
ejected/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

6
ejected/android/app/src/main/res/values-w820dp/dimens.xml

@ -1,6 +0,0 @@
<resources>
<!-- Example customization of dimensions originally defined in res/values/dimens.xml
(such as screen margins) for screens with more than 820dp of available width. This
would include 7" and 10" devices in landscape (~960dp and ~1280dp respectively). -->
<dimen name="activity_horizontal_margin">64dp</dimen>
</resources>

14
ejected/android/app/src/main/res/values/colors.xml

@ -1,14 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary">#1b73b4</color>
<color name="colorPrimaryDark">#011A2D</color>
<color name="colorAccentLight">#1b73b4</color>
<color name="colorAccentDark">#FFFFFF</color>
<color name="colorText">#FFFFFF</color>
<color name="white">#FFFFFF</color>
<color name="errorMessage">#FF0000</color>
<color name="errorLogButton">#66FFFFFF</color>
<color name="colorLight">#F6F6F7</color>
<color name="splashBackground">#8c0072</color>
<color name="iconBackground">#FFFFFF</color>
</resources>

6
ejected/android/app/src/main/res/values/dimens.xml

@ -1,6 +0,0 @@
<resources>
<!-- Default screen margins, per the Android Design guidelines. -->
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
<dimen name="fab_margin">16dp</dimen>
</resources>

14
ejected/android/app/src/main/res/values/strings.xml

@ -1,14 +0,0 @@
<resources>
<string name="app_name">VDS Quiz</string>
<string name="dev_activity_name">Exponent Dev</string>
<string name="preference_file_key">host.exp.exponent.SharedPreferences</string>
<string name="error_header">Something went wrong.</string>
<string name="error_default_client">Sorry about that. You can go back to Expo home or try to reload the project.</string>
<string name="error_default_shell">Sorry about that. Press the reload button to try again.</string>
<string name="error_unable_to_load_experience">Unable to load Experience.</string>
<string name="error_uncaught">Uncaught Error: %s</string>
<string name="view_error_log">View error log</string>
<string name="default_notification_channel_group">Default</string>
<string name="persistent_notification_channel_name">Experience notifications</string>
<string name="persistent_notification_channel_desc">Persistent notifications that provide debug info about open experiences</string>
</resources>

47
ejected/android/app/src/main/res/values/styles.xml

@ -1,47 +0,0 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<style name="Theme.Exponent.Light" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowTranslucentStatus" tools:targetApi="19">true</item>
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccentLight</item>
<item name="android:windowBackground">@color/white</item>
</style>
<style name="Theme.Exponent.Dark" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowTranslucentStatus" tools:targetApi="19">true</item>
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccentDark</item>
<item name="android:windowBackground">@color/colorPrimary</item>
</style>
<style name="ExponentCheckBox">
<item name="android:theme">@style/DevAppTheme</item>
</style>
<style name="ExponentButton">
<item name="android:theme">@style/DevAppTheme</item>
<item name="android:textColor">
@color/colorPrimaryDark
</item>
</style>
<style name="ExponentEditText" parent="@android:style/Widget.EditText">
<item name="android:padding">0dp</item>
<item name="android:textColorHint">#c8c8c8</item>
<item name="android:textColor">#000000</item>
</style>
<style name="DevAppTheme">
<item name="android:colorAccent">
@color/white
</item>
<item name="android:colorControlNormal">
@color/white
</item>
<item name="android:colorControlHighlight">
@color/white
</item>
</style>
</resources>

79
ejected/android/build.gradle

@ -1,79 +0,0 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
ext {
minSdkVersion = 21
targetSdkVersion = 28
compileSdkVersion = 28
buildToolsVersion = '28.0.0'
supportLibVersion = '28.0.0'
kotlinVersion = '1.3.21'
repositoryUrl = "file:${System.env.HOME}/.m2/repository/"
}
repositories {
google()
jcenter()
maven { url 'https://dl.bintray.com/android/android-tools/' }
}
dependencies {
classpath 'com.android.tools.build:gradle:3.3.2'
classpath 'com.google.gms:google-services:3.2.1'
classpath 'de.undercouch:gradle-download-task:2.0.0'
// https://github.com/awslabs/aws-device-farm-gradle-plugin/releases
classpath 'com.amazonaws:aws-devicefarm-gradle-plugin:1.3'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion"
}
}
allprojects {
repositories {
// For non-detach
maven {
url "$rootDir/maven"
}
// For old expoviews to work
maven {
url "$rootDir/versioned-abis/expoview-abi33_0_0/maven"
}
maven {
url "$rootDir/versioned-abis/expoview-abi34_0_0/maven"
}
maven {
url "$rootDir/versioned-abis/expoview-abi35_0_0/maven"
}
maven {
url "$rootDir/versioned-abis/maven"
}
// For detach
maven {
url "$rootDir/../node_modules/expokit/maven"
}
maven {
// We use a modified build of com.android.support.test:runner:1.0.1. Explanation in maven-test/README
url "$rootDir/maven-test"
}
google()
jcenter()
maven {
// Local Maven repo containing AARs with JSC built for Android
url "$rootDir/../node_modules/jsc-android/dist"
}
flatDir {
dirs 'libs'
// dirs project(':expoview').file('libs')
}
// https://github.com/google/ExoPlayer/issues/5225#issuecomment-445739013
maven { url 'https://google.bintray.com/exoplayer' }
maven { url "https://jitpack.io" }
// Want this last so that we never end up with a stale cache
mavenLocal()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}

BIN
ejected/android/debug.keystore

Binary file not shown.

6
ejected/android/gradle.properties

@ -1,6 +0,0 @@
android.useDeprecatedNdk=true
org.gradle.parallel=true
org.gradle.daemon=true
org.gradle.jvmargs=-Xmx9216M -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
org.gradle.configureondemand=true
org.gradle.internal.repository.initial.backoff=1000

BIN
ejected/android/gradle/wrapper/gradle-wrapper.jar

Binary file not shown.

6
ejected/android/gradle/wrapper/gradle-wrapper.properties

@ -1,6 +0,0 @@
#Thu Nov 15 09:24:08 CET 2018
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-all.zip

160
ejected/android/gradlew

@ -1,160 +0,0 @@
#!/usr/bin/env bash
##############################################################################
##
## Gradle start up script for UN*X
##
##############################################################################
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS=""
APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"`
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
warn ( ) {
echo "$*"
}
die ( ) {
echo
echo "$*"
echo
exit 1
}
# OS specific support (must be 'true' or 'false').
cygwin=false
msys=false
darwin=false
case "`uname`" in
CYGWIN* )
cygwin=true
;;
Darwin* )
darwin=true
;;
MINGW* )
msys=true
;;
esac
# Attempt to set APP_HOME
# Resolve links: $0 may be a link
PRG="$0"
# Need this for relative symlinks.
while [ -h "$PRG" ] ; do
ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
else
PRG=`dirname "$PRG"`"/$link"
fi
done
SAVED="`pwd`"
cd "`dirname \"$PRG\"`/" >/dev/null
APP_HOME="`pwd -P`"
cd "$SAVED" >/dev/null
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
# Determine the Java command to use to start the JVM.
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD="$JAVA_HOME/jre/sh/java"
else
JAVACMD="$JAVA_HOME/bin/java"
fi
if [ ! -x "$JAVACMD" ] ; then
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
else
JAVACMD="java"
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
# Increase the maximum file descriptors if we can.
if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
MAX_FD_LIMIT=`ulimit -H -n`
if [ $? -eq 0 ] ; then
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
MAX_FD="$MAX_FD_LIMIT"
fi
ulimit -n $MAX_FD
if [ $? -ne 0 ] ; then
warn "Could not set maximum file descriptor limit: $MAX_FD"
fi
else
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
fi
fi
# For Darwin, add options to specify how the application appears in the dock
if $darwin; then
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
fi
# For Cygwin, switch paths to Windows format before running java
if $cygwin ; then
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
JAVACMD=`cygpath --unix "$JAVACMD"`
# We build the pattern for arguments to be converted via cygpath
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
SEP=""
for dir in $ROOTDIRSRAW ; do
ROOTDIRS="$ROOTDIRS$SEP$dir"
SEP="|"
done
OURCYGPATTERN="(^($ROOTDIRS))"
# Add a user-defined pattern to the cygpath arguments
if [ "$GRADLE_CYGPATTERN" != "" ] ; then
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
fi
# Now convert the arguments - kludge to limit ourselves to /bin/sh
i=0
for arg in "$@" ; do
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
else
eval `echo args$i`="\"$arg\""
fi
i=$((i+1))
done
case $i in
(0) set -- ;;
(1) set -- "$args0" ;;
(2) set -- "$args0" "$args1" ;;
(3) set -- "$args0" "$args1" "$args2" ;;
(4) set -- "$args0" "$args1" "$args2" "$args3" ;;
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
esac
fi
# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
function splitJvmOpts() {
JVM_OPTS=("$@")
}
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"

9
ejected/android/settings.gradle

@ -1,9 +0,0 @@
include ':app'
// Import gradle helpers for unimodules.
apply from: '../node_modules/react-native-unimodules/gradle.groovy'
// Include unimodules.
includeUnimodulesProjects(
)

3
scripts/export.php

@ -23,13 +23,14 @@ while($r=mysqli_fetch_array($q)) {
$answer = new Answer();
$answer->id = trim($key);
$answer->text = trim($value);
if($key == $r['correct']){$answer->correct = true;}
if($key == intval($r['correct'])){$answer->correct = true;}
$answers[] = $answer;
}
$data[] = array(
"id" => trim($r['id']),
"question" => trim($r['question']),
"points" => trim($r['points']),
"answers" => $answers
);

40
scripts/import.php

@ -5,20 +5,25 @@ $DATAusr="root";
$DATApwd="root";
$DATAdtb="vds";
$file = "1_NormativaELegislazione";
// $file = "2_Aerodinamica";
// $file = "3_ProntoSoccorso";
// $file = "4_FisiopatologiaDelVolo";
// $file = "5_MeteorologiaEAerologia";
// $file = "6_Strumentazione";
// $file = "7_TecnicheDiPilotaggio";
// $file = "8_Materiali";
// $file = "9_SicurezzaDelVolo";
$file=array();
$points=array();
$file[] = "1_NormativaELegislazione"; $points[] = 3;
$file[] = "2_Aerodinamica"; $points[] = 3;
$file[] = "3_ProntoSoccorso"; $points[] = 2;
$file[] = "4_FisiopatologiaDelVolo"; $points[] = 2;
$file[] = "5_MeteorologiaEAerologia"; $points[] = 4;
$file[] = "6_Strumentazione"; $points[] = 2;
$file[] = "7_TecnicheDiPilotaggio"; $points[] = 4;
$file[] = "8_Materiali"; $points[] = 2;
$file[] = "9_SicurezzaDelVolo"; $points[] = 4;
$index = 8;
$conn=@mysqli_connect($DATAhst, $DATAusr, $DATApwd, $DATAdtb)or die("CONNECTION ERROR");
mysqli_set_charset($conn, "utf8");
$myfile = fopen("data/".$file."RES", "r") or die("Unable to open file!");
$myfile = fopen("data/".$file[$index]."RES", "r") or die("Unable to open file!");
$responses=array();
while(!feof($myfile)) {
@ -27,11 +32,9 @@ while(!feof($myfile)) {
}
fclose($myfile);
$myfile = fopen("data/$file", "r") or die("Unable to open file!");
$myfile = fopen("data/".$file[$index], "r") or die("Unable to open file!");
$answers = array();
$query="DELETE FROM questions";
mysqli_query($conn,$query);
@ -41,16 +44,8 @@ while(!feof($myfile)) {
if(substr($row[0], 0, 1) == "#") {
if(count($answers)) {
/*
echo $id."<br>";
echo $title."<br>";
echo $responses[$id]."<br>";
print_r($answers);
echo "<br><br>";
*/
$query="INSERT questions VALUES($id, '$title', '".serialize($answers)."', ".$responses[$id].")";
$query="INSERT questions VALUES($id, '$title', '".serialize($answers)."', ".$responses[$id].", ".$points[$index].")";
mysqli_query($conn,$query);
}
@ -61,7 +56,6 @@ while(!feof($myfile)) {
$answers[$row[0]] = $row[1];
}
}

2
scripts/replace.sh

@ -21,4 +21,4 @@ echo $TMP_ROW >> tmp
sed -i -e 's/- //g' tmp
mv tmp ../data/$1
#mv tmp ../data/$1

232
vds-app/App/data/aerodynamics.js

@ -1,76 +1,100 @@
const questions = [
{
id: "2004",
question: "Quali sono i più comuni tipi di profilo alare utilizzati nel vds/vl?",
question: "Quali sono i più comuni tipi di profilo alare utilizzati nel VDS/VL?",
points: "3",
answers: [
{
id: "1",
text: "piano convesso ed ellittico simmetrico."
text: "Piano convesso ed ellittico simmetrico."
},
{
id: "2",
text: "cavo convesso e biconvesso simmetrico."
text: "Cavo convesso e biconvesso simmetrico."
},
{
id: "3",
text: "concavo convesso, piano convesso e biconvesso.",
text: "Concavo convesso, piano convesso e biconvesso.",
correct: true
}
]
},
{
id: "2020",
question: "Un profilo investito da aria in movimento determina gli stessi effetti aerodinamici di un profilo che si muove nell’aria?",
id: "2018",
question: "Che cosa è un \"tubo di flusso\"?",
points: "3",
answers: [
{
id: "1",
text: "no, indipendentemente dalla velocità e direzione del movimento relativo."
text: "grandezze fisiche rappresentabili con vettori (con direzione, verso, intensità e punto d’applicazione definiti) che si possono comporre o scomporre tra loro.",
correct: true
},
{
id: "2",
text: "sì, ma solo se coincidono velocità e direzione del movimento relativo.",
correct: true
text: "grandezze fisiche che non si possono rappresentare graficamente ma che possono sommarsi e sottrarsi geometricamente."
},
{
id: "3",
text: "dipende solamente dalla forma del corpo solido."
text: "grandezze numeriche semplici con le quali è quindi possibile effettuare qualsiasi operazione."
}
]
},
{
id: "2023",
question: "Quando si parla di pressione di un fluido su una superficie che cosa s’intende?",
points: "3",
answers: [
{
id: "1",
text: "è il prodotto della superficie per la forza che il fluido esercita sulla stessa."
text: "È il prodotto della superficie per la forza che il fluido esercita sulla stessa."
},
{
id: "2",
text: "è il rapporto tra la forza che il fluido esercita sulla superficie e il quadrato della superficie stessa."
text: "È il rapporto tra la forza che il fluido esercita sulla superficie e il quadrato della superficie stessa."
},
{
id: "3",
text: "è la forza che il fluido stesso esercita sull’ unità di superficie.",
text: "È la forza che il fluido stesso esercita sull’ unità di superficie.",
correct: true
}
]
},
{
id: "2020",
question: "Un profilo investito da aria in movimento determina gli stessi effetti aerodinamici di un profilo che si muove nell’aria?",
points: "3",
answers: [
{
id: "1",
text: "No, indipendentemente dalla velocità e direzione del movimento relativo."
},
{
id: "2",
text: "Si, ma solo se coincidono velocità e direzione del movimento relativo.",
correct: true
},
{
id: "3",
text: "Dipende solamente dalla forma del corpo solido."
}
]
},
{
id: "2025",
question: "Che cosa è la pressione statica di un fluido?",
points: "3",
answers: [
{
id: "1",
text: "è il rapporto tra peso e velocità del fluido."
text: "È il rapporto tra peso e velocità del fluido."
},
{
id: "2",
text: "è il rapporto tra peso e densità del fluido."
text: "È il rapporto tra peso e densità del fluido."
},
{
id: "3",
text: "è il peso della colonna di fluido che insiste sull’unità di superficie.",
text: "È il peso della colonna di fluido che insiste sull’unità di superficie.",
correct: true
}
]
@ -78,56 +102,79 @@ const questions = [
{
id: "2026",
question: "Che cosa è la pressione dinamica di un fluido?",
points: "3",
answers: [
{
id: "1",
text: "è il rapporto tra la velocità di un fluido in movimento e la sua densità."
text: "È il rapporto tra la velocità di un fluido in movimento e la sua densità."
},
{
id: "2",
text: "è il rapporto tra la velocità di un fluido in movimento e la superficie del solido immerso in esso."
text: "È il rapporto tra la velocità di un fluido in movimento e la superficie del solido immerso in esso."
},
{
id: "3",
text: "è la pressione che un fluido esercita sulla superficie di un solido immerso in esso per effetto della velocità di scorrimento.",
text: "È la pressione che un fluido esercita sulla superficie di un solido immerso in esso per effetto della velocità di scorrimento.",
correct: true
}
]
},
{
id: "2028",
question: "La portanza e la resistenza sono direttamente proporzionali:",
points: "3",
answers: [
{
id: "1",
text: "alla pressione statica."
},
{
id: "2",
text: "alla pressione dinamica.",
correct: true
},
{
id: "3",
text: "alla pressione totale."
}
]
},
{
id: "2029",
question: "I filetti fluidi che incontrano un profilo alare generando portanza, con quale principale differenza scorrono sulle superfici?",
points: "3",
answers: [
{
id: "1",
text: "differenza di velocità.",
text: "Differenza di velocità.",
correct: true
},
{
id: "2",
text: "differenza di densità."
text: "Differenza di densità."
},
{
id: "3",
text: "differenza molecolare."
text: "Differenza molecolare."
}
]
},
{
id: "2034",
question: "Che cosa mette in evidenza la legge di Bernoully in un tubo di Venturi a portata costante ?",
question: "Che cosa mette in evidenza la legge di Bernoully in un tubo di Venturi a portata costante?",
points: "3",
answers: [
{
id: "1",
text: "che variando la sezione del tubo, pressione e velocità del fluido rimangono invariate."
text: "Che variando la sezione del tubo, pressione e velocità del fluido rimangono invariate."
},
{
id: "2",
text: "che variando la sezione del tubo, varia solo la pressione dinamica del fluido."
text: "Che variando la sezione del tubo, varia solo la pressione dinamica del fluido."
},
{
id: "3",
text: "che variando la sezione del tubo variano velocità, pressione statica e pressione dinamica. La pressione totale non varia.",
text: "Che variando la sezione del tubo variano velocità, pressione statica e pressione dinamica. La pressione totale non varia.",
correct: true
}
]
@ -135,6 +182,7 @@ const questions = [
{
id: "2035",
question: "In un tubo di Venturi avente portata costante, al variare della sezione:",
points: "3",
answers: [
{
id: "1",
@ -154,6 +202,7 @@ const questions = [
{
id: "2036",
question: "In un tubo di Venturi avente portata costante la somma della pressione statica e della pressione dinamica del fluido (pressione totale):",
points: "3",
answers: [
{
id: "1",
@ -173,6 +222,7 @@ const questions = [
{
id: "2040",
question: "I profili del deltaplano e del parapendio sono principalmente di tipo:",
points: "3",
answers: [
{
id: "1",
@ -192,6 +242,7 @@ const questions = [
{
id: "2043",
question: "La risultante aerodinamica si scompone in portanza e resistenza. Esse sono rispettivamente:",
points: "3",
answers: [
{
id: "1",
@ -211,6 +262,7 @@ const questions = [
{
id: "2044",
question: "Se un profilo alare è investito da un vento relativo, si può sempre affermare che:",
points: "3",
answers: [
{
id: "1",
@ -230,6 +282,7 @@ const questions = [
{
id: "2045",
question: "Nel volo del deltaplano e del parapendio:",
points: "3",
answers: [
{
id: "1",
@ -249,6 +302,7 @@ const questions = [
{
id: "2046",
question: "La resistenza è una forza aerodinamica che può essere considerata:",
points: "3",
answers: [
{
id: "1",
@ -268,6 +322,7 @@ const questions = [
{
id: "2049",
question: "Di quanto varia la resistenza aerodinamica di un profilo alare triplicandone la velocità:",
points: "3",
answers: [
{
id: "1",
@ -287,75 +342,59 @@ const questions = [
{
id: "2050",
question: "Che cosa è il Cr?",
points: "3",
answers: [
{
id: "1",
text: "un coefficiente numerico che dipende dal carico alare."
text: "Un coefficiente numerico che dipende dal carico alare."
},
{
id: "2",
text: "un coefficiente numerico che dipende dalla forma del profilo e dalla sua incidenza di volo.",
text: "Un coefficiente numerico che dipende dalla forma del profilo e dalla sua incidenza di volo.",
correct: true
},
{
id: "3",
text: "una forza che dipende dalla forma del profilo e dalla sua incidenza di volo."
text: "Una forza che dipende dalla forma del profilo e dalla sua incidenza di volo."
}
]
},
{
id: "2052",
question: "Che cosa è la resistenza di forma?",
points: "3",
answers: [
{
id: "1",
text: "è la parte di resistenza dovuta alla forma più o meno aerodinamica di un corpo.",
text: "È la parte di resistenza dovuta alla forma più o meno aerodinamica di un corpo.",
correct: true
},
{
id: "2",
text: "è la parte di resistenza dovuta alle dimensioni del corpo indipendentemente dalla forma aerodinamica dello stesso."
text: "È la parte di resistenza dovuta alle dimensioni del corpo indipendentemente dalla forma aerodinamica dello stesso."
},
{
id: "3",
text: "è una forza il cui valore può essere nullo se la forma del corpo è molto aerodinamica."
text: "È una forza il cui valore può essere nullo se la forma del corpo è molto aerodinamica."
}
]
},
{
id: "2053",
question: "Su quale tipo di resistenza influisce principalmente lo spessore del profilo alare?",
points: "3",
answers: [
{
id: "1",
text: "sulla resistenza di attrito."
text: "Sulla resistenza di attrito."
},
{
id: "2",
text: "sulla resistenza indotta."
text: "Sulla resistenza indotta."
},
{
id: "3",
text: "sulla resistenza di forma.",
correct: true
}
]
},
{
id: "2066",
question: "In che modo la resistenza aerodinamica è proporzionale alla velocità?",
answers: [
{
id: "1",
text: "direttamente."
},
{
id: "2",
text: "inversamente."
},
{
id: "3",
text: "direttamente e al quadrato della stessa.",
text: "Sulla resistenza di forma.",
correct: true
}
]
@ -363,6 +402,7 @@ const questions = [
{
id: "2067",
question: "Diminuendo la resistenza aerodinamica di un profilo a parità di altre condizioni si ottiene:",
points: "3",
answers: [
{
id: "1",
@ -382,6 +422,7 @@ const questions = [
{
id: "2070",
question: "Adottando un profilo sottilissimo:",
points: "3",
answers: [
{
id: "1",
@ -399,27 +440,29 @@ const questions = [
]
},
{
id: "2074",
question: "Qual è la formula della portanza?",
id: "2066",
question: "In che modo la resistenza aerodinamica è proporzionale alla velocità?",
points: "3",
answers: [
{
id: "1",
text: "P = 1/2 ro S2 Cp V"
text: "Direttamente."
},
{
id: "2",
text: "P = 1/2 ro S Cp V2",
correct: true
text: "Inversamente."
},
{
id: "3",
text: "P = 1/2 ro S Cp V"
text: "Direttamente e al quadrato della stessa.",
correct: true
}
]
},
{
id: "2081",
question: "In volo incidenza e assetto di un profilo coinciderebbero:",
points: "3",
answers: [
{
id: "1",
@ -439,6 +482,7 @@ const questions = [
{
id: "2087",
question: "Il peso del sistema ala-pilota, cui durante il volo si oppone la risultante aerodinamica, è una forza verticale diretta verso il basso, che si scompone in:",
points: "3",
answers: [
{
id: "1",
@ -458,44 +502,47 @@ const questions = [
{
id: "2090",
question: "Che cosa è la trazione nel volo planato?",
points: "3",
answers: [
{
id: "1",
text: "è una forza ed è la componente del peso orientata nella direzione della traiettoria di volo.",
text: "È una forza ed è la componente del peso orientata nella direzione della traiettoria di volo.",
correct: true
},
{
id: "2",
text: "è una forza ed è la componente del peso orientata perpendicolarmente alla traiettoria di volo."
text: "È una forza ed è la componente del peso orientata perpendicolarmente alla traiettoria di volo."
},
{
id: "3",
text: "è una forza che varia al variare della pendenza della traiettoria, ma è indipendente dal peso."
text: "È una forza che varia al variare della pendenza della traiettoria, ma è indipendente dal peso."
}
]
},
{
id: "2091",
question: "Com’è possibile variare il valore della trazione in volo?",
points: "3",
answers: [
{
id: "1",
text: "non può essere variato."
text: "Non può essere variato."
},
{
id: "2",
text: "variando la pendenza della traiettoria di volo.",
text: "Variando la pendenza della traiettoria di volo.",
correct: true
},
{
id: "3",
text: "variando la sola resistenza aerodinamica."
text: "Variando la sola resistenza aerodinamica."
}
]
},
{
id: "2092",
question: "In volo librato rettilineo uniforme il peso apparente, che costituisce la componente del peso perpendicolare alla traiettoria di volo, è equilibrato dalla:",
points: "3",
answers: [
{
id: "1",
@ -512,9 +559,30 @@ const questions = [
}
]
},
{
id: "2096",
question: "Se il pilota pesa 78 kg, l’attrezzatura di volo, ala compresa, 22 kg e la superficie proiettata è 25 m2, quanto sarà il carico alare?",
points: "3",
answers: [
{
id: "1",
text: "6 kg/m 2."
},
{
id: "2",
text: "9 kg/m 2."
},
{
id: "3",
text: "4 kg/m 2.",
correct: true
}
]
},
{
id: "2097",
question: "Se a seguito di una parziale \"chiusura\" del parapendio la sua superficie alare si riduce:",
points: "3",
answers: [
{
id: "1",
@ -534,6 +602,7 @@ const questions = [
{
id: "2099",
question: "Durante una virata al sistema ala-pilota viene applicata, per effetto della forza centrifuga, un’accelerazione pari a due \"G\". Si può affermare che:",
points: "3",
answers: [
{
id: "1",
@ -553,6 +622,7 @@ const questions = [
{
id: "2100",
question: "Se durante il volo per qualche motivo il fattore di carico raddoppia, il carico alare",
points: "3",
answers: [
{
id: "1",
@ -572,25 +642,27 @@ const questions = [
{
id: "2105",
question: "Dove si trova normalmente il baricentro?",
points: "3",
answers: [
{
id: "1",
text: "coincide con il baricentro del solo pilota."
text: "Coincide con il baricentro del solo pilota."
},
{
id: "2",
text: "si trova tra il baricentro del pilota e quello dell’ala struttura.",
text: "Si trova tra il baricentro del pilota e quello della struttura.",
correct: true
},
{
id: "3",
text: "si trova nel punto d’intersezione degli assi del sistema."
text: "Si trova nel punto d’intersezione degli assi del sistema."
}
]
},
{
id: "2116",
question: "Un’ala in volo, iniziando una virata:",
points: "3",
answers: [
{
id: "1",
@ -610,6 +682,7 @@ const questions = [
{
id: "2131",
question: "A parità di condizioni, di capacità e di ala a disposizione veleggia più a lungo il pilota:",
points: "3",
answers: [
{
id: "1",
@ -629,6 +702,7 @@ const questions = [
{
id: "2134",
question: "In condizioni aerologiche sfavorevoli, quali vento contrario e discendenza, volando con la medesima ala è:",
points: "3",
answers: [
{
id: "1",
@ -648,44 +722,47 @@ const questions = [
{
id: "2137",
question: "In virata la velocità minima di volo e quella di stallo sono identiche a quelle del volo rettilineo?",
points: "3",
answers: [
{
id: "1",
text: "no, sono maggiori.",
text: "No, sono maggiori.",
correct: true
},
{
id: "2",
text: "si."
text: "Si."
},
{
id: "3",
text: "no, sono minori."
text: "No, sono minori."
}
]
},
{
id: "2143",
question: "Che cosa succede al sistema ala pilota se il suo baricentro viene abbassato rispetto al centro di pressione?",
points: "3",
answers: [
{
id: "1",
text: "aumenta la sola stabilità laterale."
text: "Aumenta la sola stabilità laterale."
},
{
id: "2",
text: "aumenta la stabilità in beccheggio e rollio.",
text: "Aumenta la stabilità in beccheggio e rollio.",
correct: true
},
{
id: "3",
text: "varia semplicemente lo sforzo di azionamento dei comandi."
text: "Varia semplicemente lo sforzo di azionamento dei comandi."
}
]
},
{
id: "2144",
question: "la posizione bassa del baricentro del parapendio comporta entro certi limiti:",
question: "La posizione bassa del baricentro del parapendio comporta entro certi limiti:",
points: "3",
answers: [
{
id: "1",
@ -705,6 +782,7 @@ const questions = [
{
id: "2145",
question: "La posizione bassa del baricentro del parapendio comporta:",
points: "3",
answers: [
{
id: "1",
@ -716,7 +794,7 @@ const questions = [
},
{
id: "3",
text: "Una possibilità di avere delle oscillazioni più ampie.",
text: "una possibilità di avere delle oscillazioni più ampie.",
correct: true
}
]

152
vds-app/App/data/firstAid.js

@ -2,37 +2,39 @@ const questions = [
{
id: "3001",
question: "Quale comportamento è auspicabile appena effettuato un soccorso d’emergenza?",
points: "2",
answers: [
{
id: "1",
text: "si trasporta il ferito all’ospedale con qualsiasi mezzo disponibile seguendolo da vicino."
text: "Si trasporta il ferito all’ospedale con qualsiasi mezzo disponibile seguendolo da vicino."
},
{
id: "2",
text: "far trasportare all’ospedale con mezzo idoneo ed abilitato l’infortunato prendendosi cura dei suoi effetti personali ed avvisando al più presto i suoi parenti più prossimi.",
text: "Far trasportare all’ospedale con mezzo idoneo ed abilitato l’infortunato prendendosi cura dei suoi effetti personali ed avvisando al più presto i suoi parenti più prossimi.",
correct: true
},
{
id: "3",
text: "una volta chiamate si attende che giungano le autorità di polizia e si lascia a esse ogni incombenza."
text: "Una volta chiamate si attende che giungano le autorità di polizia e si lascia a esse ogni incombenza."
}
]
},
{
id: "3002",
question: "Qual è, tra questi, il modo migliore per accompagnare un infortunato con una lesione leggera in grado di camminare?",
points: "2",
answers: [
{
id: "1",
text: "procurandogli un paio di stampelle."
text: "Procurandogli un paio di stampelle."
},
{
id: "2",
text: "portandolo a spalle."
text: "Portandolo a spalle."
},
{
id: "3",
text: "mettendosi al suo fianco, dal lato della lesione e cingendogli la vita con il braccio, se possibile.",
text: "Mettendosi al suo fianco, dal lato della lesione e cingendogli la vita con il braccio, se possibile.",
correct: true
}
]
@ -40,132 +42,130 @@ const questions = [
{
id: "3003",
question: "Come comportarsi alla presenza di un infortunato di cui si sospettano lesioni interne di entità sconosciuta?",
points: "2",
answers: [
{
id: "1",
text: "ispezionarlo attentamente, interrogandolo sulle parti dolenti e facendolo muovere se può, indi chiamare i mezzi di soccorso."
text: "Ispezionarlo attentamente, interrogandolo sulle parti dolenti e facendolo muovere se può, indi chiamare i mezzi di soccorso."
},
{
id: "2",
text: "non muoverlo assolutamente e non consentire che egli stesso si muova, provvedere immediatamente a chiamare personale e mezzi di soccorso qualificati e attrezzati (eliambulanza, ambulanza, etc.).",
text: "Interrompere il flusso sanguigno con laccio emostatico posto tra la lesione ed il cuore o con idoneo tampone posto sulla ferita.",
correct: true
},
{
id: "3",
text: "cercare di metterlo in piedi, se la cosa risulta impossibile e se l’infortunato si lamenta chiamare idonei mezzi di soccorso."
text: "Distendere l’infortunato con la ferita posta verso l’alto."
}
]
},
{
id: "3004",
question: "Se, essendo l’unico presente, vi capita di dover soccorrere un traumatizzato, come dovete comportarvi?",
id: "3006",
question: "Come si deve intervenire soccorrendo un infortunato che presenta solo una ferita?",
points: "2",
answers: [
{
id: "1",
text: "cercate subito un medico nel paese più vicino."
text: "Cercare di aiutarlo a mettersi in piedi."
},
{
id: "2",
text: "intervenite soccorrendolo voi stessi secondo i traumi subiti, come meglio potete."
text: "Lasciare la ferita scoperta dopo averla opportunamente tamponata, sino all’arrivo di idoneo soccorso."
},
{
id: "3",
text: "adagiatelo con la massima cautela in una posizione idonea, tenendo presente che in caso di frattura alla colonna vertebrale ogni movimento può causare danni irreparabili e andate immediatamente a cercare soccorsi qualificati.",
text: "Tamponare la ferita con ciò che è possibile, cercando di lasciare coperta la ferita sino all’arrivo d’idoneo soccorso.",
correct: true
}
]
},
{
id: "3005",
question: "Come intervenire su un infortunato che presenta una copiosa perdita di sangue da una ferita? SOCCORSO",
id: "3007",
question: "Come si deve intervenire in caso di forma lieve di fuoriuscita di sangue dal naso (epistassi)?",
points: "2",
answers: [
{
id: "1",
text: "lasciare uscire più sangue possibile onde lavare la ferita."
text: "Far reclinar la testa in avanti favorendo il drenaggio di sangue e muco.",
correct: true
},
{
id: "2",
text: "interrompere il flusso sanguigno con laccio emostatico posto tra la lesione ed il cuore o con idoneo tampone posto sulla ferita.",
correct: true
text: "Far soffiare forte il naso."
},
{
id: "3",
text: "distendere l’infortunato con la ferita posta verso l’alto."
text: "Far tenere le narici serrate con le dita."
}
]
},
{
id: "3006",
question: "Come si deve intervenire soccorrendo un infortunato che presenta solo una ferita?",
id: "3008",
question: "Come si deve intervenire alla presenza di una persona colpita da soffocamento?",
points: "2",
answers: [
{
id: "1",
text: "cercare di aiutarlo a mettersi in piedi."
text: "Lasciare che l’infortunato riprenda a respirare dopo averlo adagiato supino."
},
{
id: "2",
text: "lasciare la ferita scoperta dopo averla opportunamente tamponata, sino all’arrivo di idoneo soccorso."
text: "Rimuovere le più evidenti cause di soffocamento, accertare che il soffocamento non sia dovuto all’ingestione di vomito e che la lingua non sia motivo d’impedimento alla ventilazione.",
correct: true
},
{
id: "3",
text: "tamponare la ferita con ciò che è possibile, cercando di lasciare coperta la ferita sino all’arrivo d’idoneo soccorso.",
correct: true
text: "Tentare la respirazione artificiale prima di tutto, premendo sull’addome dell’infortunato in maniera decisa e ritmica."
}
]
},
{
id: "3007",
question: "Come si deve intervenire in caso di forma lieve di fuoriuscita di sangue dal naso (epistassi)?",
id: "3004",
question: "Se, essendo l’unico presente, vi capita di dover soccorrere un traumatizzato, come dovete comportarvi?",
points: "2",
answers: [
{
id: "1",
text: "far reclinar la testa in avanti favorendo il drenaggio di sangue e muco.",
correct: true
text: "Cercate subito un medico nel paese più vicino."
},
{
id: "2",
text: "far soffiare forte il naso."
text: "Intervenite soccorrendolo voi stessi secondo i traumi subiti, come meglio potete."
},
{
id: "3",
text: "far tenere le narici serrate con le dita."
text: "Non muoverlo assolutamente e non consentire che egli stesso si muova, provvedere immediatamente a chiamare personale e mezzi di soccorso qualificati e attrezzati (eliambulanza, ambulanza, etc.).",
correct: true
}
]
},
{
id: "3008",
question: "Come si deve intervenire alla presenza di una persona colpita da soffocamento?",
id: "3005",
question: "Come intervenire su un infortunato che presenta una copiosa perdita di sangue da una ferita?",
points: "2",
answers: [
{
id: "1",
text: "lasciare che l’infortunato riprenda a respirare dopo averlo adagiato supino."
},
{
id: "2",
text: "rimuovere le più evidenti cause di soffocamento, accertare che il soffocamento non sia dovuto all’ingestione di vomito e che la lingua non sia motivo d’impedimento alla ventilazione.",
correct: true
},
{
id: "3",
text: "tentare la respirazione artificiale prima di tutto, premendo sull’addome dell’infortunato in maniera decisa e ritmica."
text: "Lasciare uscire più sangue possibile onde lavare la ferita."
}
]
},
{
id: "3009",
question: "Come intervenire alla presenza di una persona in stato di shock?",
points: "2",
answers: [
{
id: "1",
text: "lasciarla tranquilla e alleggerirgli l’abbigliamento per evitare che sudi."
text: "Lasciarla tranquilla e alleggerirgli l’abbigliamento per evitare che sudi."
},
{
id: "2",
text: "somministrargli liquori o caffè per farla riprendere."
text: "Somministrargli liquori o caffè per farla riprendere."
},
{
id: "3",
text: "coprirla in posizione supina muovendola meno possibile.",
text: "Coprirla in posizione supina muovendola meno possibile.",
correct: true
}
]
@ -173,63 +173,67 @@ const questions = [
{
id: "3010",
question: "Se in un infortunato si sospetta una frattura, come dobbiamo comportarci?",
points: "2",
answers: [
{
id: "1",
text: "tentare comunque di ridurre subito la frattura stessa ponendo prima in trazione l’arto o la parte interessata in attesa di idonei mezzi di soccorso."
text: "Tentare comunque di ridurre subito la frattura stessa ponendo prima in trazione l’arto o la parte interessata in attesa di idonei mezzi di soccorso."
},
{
id: "2",
text: "immobilizzare il traumatizzato e solo se trattasi di frattura a uno degli arti cercare di steccarlo con una “doccia” più idonea possibile, provvedendo comunque ad allertare al più presto idonei mezzi di soccorso.",
text: "Immobilizzare il traumatizzato e solo se trattasi di frattura a uno degli arti cercare di steccarlo con una “doccia” più idonea possibile, provvedendo comunque ad allertare al più presto idonei mezzi di soccorso.",
correct: true
},
{
id: "3",
text: "fasciare strettamente la parte del corpo in cui si trova la sospetta frattura in attesa di eventuali idonei mezzi di soccorso."
text: "Fasciare strettamente la parte del corpo in cui si trova la sospetta frattura in attesa di eventuali idonei mezzi di soccorso."
}
]
},
{
id: "3011",
question: "Come si deve intervenire in presenza di un infortunato che presenta sospetto trauma cranico con fuoriuscita di sangue dall’orecchio, in attesa di idonei mezzi di soccorso?",
points: "2",
answers: [
{
id: "1",
text: "tamponare la perdita di sangue."
text: "Tamponare la perdita di sangue."
},
{
id: "2",
text: "tenere il soggetto adagiato sul fianco dalla parte da cui perde sangue.",
text: "Tenere il soggetto adagiato sul fianco dalla parte da cui perde sangue.",
correct: true
},
{
id: "3",
text: "porre il soggetto in posizione seduta."
text: "Porre il soggetto in posizione seduta."
}
]
},
{
id: "3012",
question: "Come s’interviene nel caso che una persona presenti un trauma all’addome?",
points: "2",
answers: [
{
id: "1",
text: "si provvede a chiamare idonei mezzi di soccorso, mettendola in piedi per alleviarle il dolore."
text: "Si provvede a chiamare idonei mezzi di soccorso, mettendola in piedi per alleviarle il dolore."
},
{
id: "2",
text: "si provvede a chiamare idonei mezzi di soccorso,evitando di muoverla e di comprimerle l’addome.",
text: "Si provvede a chiamare idonei mezzi di soccorso, evitando di muoverla e di comprimerle l’addome.",
correct: true
},
{
id: "3",
text: "si provvede a chiamare idonei mezzi di soccorso, nel frattempo le si praticano massaggi all’addome."
text: "Si provvede a chiamare idonei mezzi di soccorso, nel frattempo le si praticano massaggi all’addome."
}
]
},
{
id: "3013",
question: "Nel caso una persona sia colpita da scarica elettrica e che rimanga a contatto con il cavo di alta tensione, il soccorritore dovrà:",
points: "2",
answers: [
{
id: "1",
@ -249,6 +253,7 @@ const questions = [
{
id: "3014",
question: "Nel caso che una persona sia colpita da scarica elettrica e che rimanga a contatto con il cavo a bassa tensione, il soccorritore dovrà:",
points: "2",
answers: [
{
id: "1",
@ -268,95 +273,100 @@ const questions = [
{
id: "3015",
question: "Come intervenire in soccorso di un soggetto che presenti una distorsione al piede?",
points: "2",
answers: [
{
id: "1",
text: "farlo camminare subito per ripristinargli la circolazione."
text: "Farlo camminare subito per ripristinargli la circolazione."
},
{
id: "2",
text: "immobilizzare la parte lesa con ovatta ed eventuale fascia elastica.",
text: "Immobilizzare la parte lesa con ovatta ed eventuale fascia elastica.",
correct: true
},
{
id: "3",
text: "trazionare l’arto infortunato cercando di ricomporre la distorsione."
text: "Trazionare l’arto infortunato cercando di ricomporre la distorsione."
}
]
},
{
id: "3016",
question: "Come si riconosce una spalla lussata?",
points: "2",
answers: [
{
id: "1",
text: "da un abbassamento dell’arto con infossamento all’altezza dell’articolazione.",
text: "Da un abbassamento dell’arto con infossamento all’altezza dell’articolazione.",
correct: true
},
{
id: "2",
text: "da un improvviso gonfiore in corrispondenza dell’articolazione."
text: "Da un improvviso gonfiore in corrispondenza dell’articolazione."
},
{
id: "3",
text: "dal fatto che braccio e avambraccio risultano privi di articolazione."
text: "Dal fatto che braccio e avambraccio risultano privi di articolazione."
}
]
},
{
id: "3017",
question: "Come s’interviene provvisoriamente in caso di grave scottatura?",
points: "2",
answers: [
{
id: "1",
text: "si mantiene pulita e detersa la parte ustionata sino al momento in cui sono possibili interventi specialistici qualificati.",
text: "Si mantiene pulita e detersa la parte ustionata sino al momento in cui sono possibili interventi specialistici qualificati.",
correct: true
},
{
id: "2",
text: "non si tocca assolutamente la parte ustionata anche se è sporca trasportando l’infortunato dal medico più vicino."
text: "Non si tocca assolutamente la parte ustionata anche se è sporca trasportando l’infortunato dal medico più vicino."
},
{
id: "3",
text: "si pone sulla parte ustionata un qualsiasi unguento disponibile."
text: "Si pone sulla parte ustionata un qualsiasi unguento disponibile."
}
]
},
{
id: "3018",
question: "Come s’interviene per soccorrere persone che abbiano perso conoscenza?",
points: "2",
answers: [
{
id: "1",
text: "si lasciano o si adagiano semplicemente in posizione prona."
text: "Si lasciano o si adagiano semplicemente in posizione prona."
},
{
id: "2",
text: "si dispongono su un fianco sollevando un braccio e una gamba.",
text: "Si dispongono su un fianco sollevando un braccio e una gamba per evitare che il vomito ostruisca le vie respiratorie.",
correct: true
},
{
id: "3",
text: "si bagna loro la fronte con acqua fredda."
text: "Si bagna loro la fronte con acqua fredda."
}
]
},
{
id: "3019",
question: "Come s’interviene su una persona svenuta a seguito di trauma?",
points: "2",
answers: [
{
id: "1",
text: "si prova a rianimarla energicamente scuotendola dopo aver chiamato idonei mezzi di soccorso."
text: "Si prova a rianimarla energicamente scuotendola dopo aver chiamato idonei mezzi di soccorso."
},
{
id: "2",
text: "le si sollevano le gambe al di sopra del livello del capo, solo se non si sospettano lesioni alla colonna vertebrale, chiamando con urgenza idonei mezzi di soccorso.",
text: "Si tiene sotto monitoraggio il battito cardiaco e la frequenza respiratoria, chiamando con urgenza idonei mezzi di soccorso.",
correct: true
},
{
id: "3",
text: "si adagia in posizione supina, le si pratica la respirazione si chiamano se necessario idonei mezzi di soccorso."
text: "Si adagia in posizione supina, le si pratica la respirazione, si chiamano se necessario idonei mezzi di soccorso."
}
]
}

271
vds-app/App/data/flightSafety.js

@ -1,64 +1,68 @@
const questions = [
{
id: "9001",
question: "La sicurezza del volo in deltaplano e parapendio dipende moltissimo dal rapporto esistente tra esperienza del pilota e caratteristiche del mezzo utilizzato",
question: "La sicurezza del volo in deltaplano e parapendio dipende moltissimo dal rapporto esistente tra esperienza del pilota e caratteristiche del mezzo utilizzato?",
points: "4",
answers: [
{
id: "1",
text: "si.",
text: "Si.",
correct: true
},
{
id: "2",
text: "assolutamente no."
text: "Assolutamente no."
},
{
id: "3",
text: "si, ma solo se si tratta di volo in condizioni forti."
text: "Si, ma solo se si tratta di volo in condizioni forti."
}
]
},
{
id: "9002",
question: "La sicurezza del volo in deltaplano e parapendio dipende tra l’altro anche dal rapporto tra l’esperienza del pilota e le condizioni meteo affrontate:",
question: "La sicurezza del volo in deltaplano e parapendio dipende tra l’altro anche dal rapporto tra l’esperienza del pilota e le condizioni meteo affrontate?",
points: "4",
answers: [
{
id: "1",
text: "assolutamente no."
text: "Assolutamente no."
},
{
id: "2",
text: "si.",
text: "Si.",
correct: true
},
{
id: "3",
text: "si, ma solo se si tratta di un volo di cross."
text: "Si, ma solo se si tratta di un volo di cross."
}
]
},
{
id: "9003",
question: "Ci viene proposto l’acquisto di un’ala omologata alla quale sono state però apportate delle modifiche che ne migliorano le prestazioni. Qual’è l’atteggiamento più conservativo da tenere sotto il profilo della sicurezza?",
question: "Ci viene proposto l’acquisto di un’ala omologata alla quale sono state però apportate delle modifiche che ne migliorano le prestazioni. Qual è l’atteggiamento più conservativo da tenere sotto il profilo della sicurezza?",
points: "4",
answers: [
{
id: "1",
text: "prendere in considerazione il mezzo ma solo dopo averlo personalmente provato al limite delle prestazioni."
text: "Prendere in considerazione il mezzo ma solo dopo averlo personalmente provato al limite delle prestazioni."
},
{
id: "2",
text: "acquistarlo solo se chi ce lo propone è persona esperta e fidata."
text: "Acquistarlo solo se chi ce lo propone è persona esperta e fidata."
},
{
id: "3",
text: "respingere la proposta orientando esclusivamente le proprie scelte su mezzi provvisti di omologazione ed assolutamente conformi al modello originale.",
text: "Respingere la proposta orientando esclusivamente le proprie scelte su mezzi provvisti di omologazione ed assolutamente conformi al modello originale.",
correct: true
}
]
},
{
id: "9005",
question: "Omettere o trascurare i controlli di sicurezza prevolo:",
question: "Omettere o trascurare i controlli di sicurezza pre-volo:",
points: "4",
answers: [
{
id: "1",
@ -71,13 +75,14 @@ const questions = [
},
{
id: "3",
text: "può non essere pericoloso se l’esperienza è molta. DEL VOLO"
text: "può non essere pericoloso se l’esperienza è molta."
}
]
},
{
id: "9006",
question: "Se avete dei dubbi sulle condizioni meteo in rapporto alla vostra attrezzatura e/o esperienza, pur avendo sentito il parere di un pilota più esperto:",
points: "4",
answers: [
{
id: "1",
@ -97,82 +102,87 @@ const questions = [
{
id: "9007",
question: "Per quale motivo un pilota di modesta esperienza non dovrebbe volare con un’ala ad alte prestazioni anche se giudicata facile e sicura da piloti più esperti?",
points: "4",
answers: [
{
id: "1",
text: "perché le ali ad alte prestazioni sono comunque insicure anche se qualcuno non lo ammette."
text: "Perché le ali ad alte prestazioni sono comunque insicure anche se qualcuno non lo ammette."
},
{
id: "2",
text: "perché la sicurezza del volo dipende molto dal rapporto esistente tra esperienza del pilota e prestazioni dell’ala, che deve necessariamente essere equilibrato.",
text: "Perché la sicurezza del volo dipende molto dal rapporto esistente tra esperienza del pilota e prestazioni dell’ala, che deve necessariamente essere equilibrato.",
correct: true
},
{
id: "3",
text: "perché comunque non riuscirebbe a sfruttarne le prestazioni, pur volando in sicurezza."
text: "Perché comunque non riuscirebbe a sfruttarne le prestazioni, pur volando in sicurezza."
}
]
},
{
id: "9008",
question: "Vi trovate al decollo di un volo che non conoscete. Le condizioni sono forti, ma tutti decollano con successo. Tra i seguenti atteggiamenti che potete tenere quale ritenete sia più conservativo sotto il profilo della sicurezza?",
points: "4",
answers: [
{
id: "1",
text: "attendere che le condizioni inizino a ridursi e solo allora intraprendere il volo tenendo presenti i consigli di chi vi è parso più equilibrato ed esperto.",
text: "Attendere che le condizioni inizino a ridursi e solo allora intraprendere il volo tenendo presenti i consigli di chi vi è parso più equilibrato ed esperto.",
correct: true
},
{
id: "2",
text: "predisporsi ad intraprendere il volo non prima di aver preso nota dei consigli forniti dagli esperti del luogo."
text: "Predisporsi ad intraprendere il volo non prima di aver preso nota dei consigli forniti dagli esperti del luogo."
},
{
id: "3",
text: "predisporsi ad intraprendere il volo imitando il piano di volo e le manovre degli esperti del luogo onde migliorare la propria personale esperienza."
text: "Predisporsi ad intraprendere il volo imitando il piano di volo e le manovre degli esperti del luogo onde migliorare la propria personale esperienza."
}
]
},
{
id: "9009",
question: "Per quale motivo si ritiene pericoloso il decollo in discendenza o con vento in coda ?",
question: "Per quale motivo si ritiene pericoloso il decollo in discendenza o con vento in coda?",
points: "4",
answers: [
{
id: "1",
text: "solo perché la pendenza della traiettoria di volo risulterà troppo elevata appena staccati da terra."
text: "Solo perché la pendenza della traiettoria di volo risulterà troppo elevata appena staccati da terra."
},
{
id: "2",
text: "per l’eccessiva velocità che il pilota deve sviluppare correndo e per problemi di traiettoria una volta decollati.",
text: "Per l’eccessiva velocità che il pilota deve sviluppare correndo e per problemi di traiettoria una volta decollati.",
correct: true
},
{
id: "3",
text: "per i problemi di auto stabilità del mezzo che possono insorgere in tali condizioni."
text: "Per i problemi di auto stabilità del mezzo che possono insorgere in tali condizioni."
}
]
},
{
id: "9010",
question: "Come deve essere valutato il decollo da un dirupo a scalino di circa 90° con deltaplano o parapendio?",
points: "4",
answers: [
{
id: "1",
text: "molto pericoloso.",
text: "Molto pericoloso.",
correct: true
},
{
id: "2",
text: "molto tecnico."
text: "Molto tecnico."
},
{
id: "3",
text: "normale se si ha buona esperienza."
text: "Normale se si ha buona esperienza."
}
]
},
{
id: "9011",
question: "La giornata è umida e le termiche generano velocemente nubi cumuliformi. Entrati in termica, è necessario prestare attenzione al fatto che:",
points: "4",
answers: [
{
id: "1",
@ -191,45 +201,48 @@ const questions = [
},
{
id: "9012",
question: "Quale maggior pericolo si corre volando in nube o in un banco di nebbia?",
question: "Quale maggior pericolo si corre volando in nube?",
points: "4",
answers: [
{
id: "1",
text: "avere una collisione con altri apparecchi."
text: "Avere una collisione con altri apparecchi."
},
{
id: "2",
text: "subire un degrado delle prestazioni a causa di eventuali formazioni di ghiaccio sulla struttura dell’apparecchio."
text: "Subire un degrado delle prestazioni a causa di eventuali formazioni di ghiaccio sulla struttura dell’apparecchio."
},
{
id: "3",
text: "perdere il senso dell’orientamento e il controllo dell’apparecchio, poiché gli organi dell’equilibrio funzionano male in mancanza di riferimenti visivi.",
text: "Perdere il senso dell’orientamento e il controllo dell’apparecchio, poiché gli organi dell’equilibrio funzionano male in mancanza di riferimenti visivi.",
correct: true
}
]
},
{
id: "9013",
question: "È dimostrato che il windshear è un fenomeno pericoloso per il volo in generale, ma in particolare per il Volo Libero. Che cosa s’intende per windshear?",
question: "È dimostrato che il wind shear è un fenomeno pericoloso per il volo in generale, ma in particolare per il Volo Libero. Che cosa s’intende per wind shear?",
points: "4",
answers: [
{
id: "1",
text: "solo un improvviso aumento dell’intensità del vento meteorologico."
text: "Solo un improvviso aumento dell’intensità del vento nel tempo e/o nello spazio."
},
{
id: "2",
text: "un’improvvisa variazione di direzione e/o d’intensità del vento meteorologico.",
text: "Un’improvvisa variazione di direzione e/o d’intensità del vento nel tempo e/o nello spazio.",
correct: true
},
{
id: "3",
text: "un improvviso aumento dell’intensità del vento relativo sull’ala."
text: "Un improvviso aumento dell’intensità del vento relativo sull’ala."
}
]
},
{
id: "9014",
question: "Rispetto al suolo non avanziamo. Siamo alla presenza di un vento meteorologico contrario la cui velocità è pari alla nostra velocità all’aria. Se di colpo il vento cessasse l’ala:",
points: "4",
answers: [
{
id: "1",
@ -249,25 +262,27 @@ const questions = [
{
id: "9015",
question: "Che cosa s’intende per configurazione inusuale di un deltaplano e di un parapendio?",
points: "4",
answers: [
{
id: "1",
text: "una configurazione o una situazione di volo normale per l’ala ma alla quale il pilota non è abituato."
text: "Una configurazione o una situazione di volo normale per l’ala ma alla quale il pilota non è abituato."
},
{
id: "2",
text: "una configurazione dell’ala o una situazione di volo anomala e al di fuori dei limiti di prestazioni e di manovrabilità previsti.",
text: "Una configurazione dell’ala o una situazione di volo anomala e al di fuori del normale inviluppo di volo e di manovrabilità previsti.",
correct: true
},
{
id: "3",
text: "una situazione di volo in cui i valori dell’incidenza sono ai limiti dello stallo."
text: "Una situazione di volo in cui i valori dell’incidenza sono ai limiti dello stallo."
}
]
},
{
id: "9017",
question: "Ai fini del volo con deltaplano e parapendio è necessario tenere presenti le difficoltà e i rischi connessi ad attività svolta in una valle lunga e stretta perché:",
points: "4",
answers: [
{
id: "1",
@ -286,19 +301,20 @@ const questions = [
},
{
id: "9018",
question: "Se deltaplano e parapendio sono particolarmente soggetti agli effetti negativi del windshear, come può essere giudicato un atterraggio effettuato sottovento a ostacoli rilevanti in condizione di vento sostenuto?",
question: "Se deltaplano e parapendio sono particolarmente soggetti agli effetti negativi del wind shear, come può essere giudicato un atterraggio effettuato sottovento a ostacoli rilevanti in condizione di vento sostenuto?",
points: "4",
answers: [
{
id: "1",
text: "fattibile, ma con qualche difficoltà da piloti con poca esperienza."
text: "Fattibile, ma con qualche difficoltà da piloti con poca esperienza."
},
{
id: "2",
text: "molto tecnico e quindi fattibile in sicurezza totale solo da piloti esperti."
text: "Molto tecnico e quindi fattibile in sicurezza totale solo da piloti esperti."
},
{
id: "3",
text: "pericoloso in assoluto per qualsiasi pilota per l’imprevedibilità dei fenomeni aerologici associati a questa situazione.",
text: "Pericoloso in assoluto per qualsiasi pilota per l’imprevedibilità dei fenomeni aerologici associati a questa situazione.",
correct: true
}
]
@ -306,101 +322,107 @@ const questions = [
{
id: "9019",
question: "Se in atterraggio il vento è tanto forte da limitare notevolmente la penetrazione, quali soluzioni adottare in avvicinamento?",
points: "4",
answers: [
{
id: "1",
text: "effettuare degli “otto” con la tecnica a “granchio” che ci dota comunque di una certa velocità al suolo permettendoci di affrontare in sicurezza situazioni di forte gradiente in prossimità del terreno.",
text: "Effettuare degli “otto” con la tecnica a “granchio” che ci dota comunque di una certa velocità al suolo permettendoci di affrontare in sicurezza situazioni di forte gradiente in prossimità del terreno.",
correct: true
},
{
id: "2",
text: "eseguire comunque un circuito a “C” che elimina la necessità di fare molte virate, senza quindi doverci porre il problema dell’avanzamento rispetto al terreno."
text: "Eseguire comunque un circuito a “C” che elimina la necessità di fare molte virate, senza quindi doverci porre il problema dell’avanzamento rispetto al terreno."
},
{
id: "3",
text: "tentare un avvicinamento a “otto” normale atterrando all’indietro o su una traiettoria verticale se questo è ciò che si ottiene."
text: "Tentare un avvicinamento a “otto” normale atterrando all’indietro o su una traiettoria verticale se questo è ciò che si ottiene."
}
]
},
{
id: "9020",
question: "Il vento è aumentato tanto da impedirci di atterrare normalmente. Ci vediamo costretti a farlo in un bosco. Quale tecnica è bene adottare?",
points: "4",
answers: [
{
id: "1",
text: "atterrare controvento sulla chioma degli alberi, proteggersi il busto e il capo con braccia e mani nella successiva caduta, appena arrestata quest’ultima afferrare saldamente il ramo più vicino.",
text: "Atterrare controvento sulla chioma degli alberi, proteggersi il busto e il capo con braccia e mani nella successiva caduta, appena arrestata quest’ultima afferrare saldamente il ramo più vicino.",
correct: true
},
{
id: "2",
text: "atterrare controvento scegliendo di farlo in prossimità del suolo quanto possibile e nello spazio compreso tra due tronchi d’albero, iniziare a raccordare solo all’ultimo momento."
text: "Atterrare controvento scegliendo di farlo in prossimità del suolo quanto possibile e nello spazio compreso tra due tronchi d’albero, iniziare a raccordare solo all’ultimo momento."
},
{
id: "3",
text: "spiralare sopra un’eventuale radura sino in prossimità del suolo, cercando di atterrare nel suo interno indipendentemente dalla direzione del vento anche a costo di assumere alti angoli di rollio in prossimità del suolo."
text: "Spiralare sopra un’eventuale radura sino in prossimità del suolo, cercando di atterrare nel suo interno indipendentemente dalla direzione del vento anche a costo di assumere alti angoli di rollio in prossimità del suolo."
}
]
},
{
id: "9021",
question: "Vedendoci costretti a un atterraggio in acqua, quale precauzione è indispensabile adottare?",
points: "4",
answers: [
{
id: "1",
text: "solo dopo il contatto con l’acqua sganciarsi e/o fuoriuscire dall’imbrago."
text: "Solo dopo il contatto con l’acqua sganciarsi e/o fuoriuscire dall’imbrago."
},
{
id: "2",
text: "poco prima dell’impatto predisporre quanto possibile l’imbrago onde ci si possa liberare da esso al più presto a impatto avvenuto.",
text: "Poco prima dell’impatto predisporre quanto possibile l’imbrago onde ci si possa liberare da esso al più presto a impatto avvenuto.",
correct: true
},
{
id: "3",
text: "atterrare in direzione parallela al moto ondoso."
text: "Atterrare in direzione parallela al moto ondoso."
}
]
},
{
id: "9022",
question: "Per quale motivo il pilotaggio in prossimità del suolo deve necessariamente essere più dolce e attento?",
points: "4",
answers: [
{
id: "1",
text: "perché il recupero da configurazioni inusuali in cui ci si venga a trovare intenzionalmente o meno, comporta una perdita di quota che può essere fatale.",
text: "Perché il recupero da configurazioni inusuali in cui ci si venga a trovare intenzionalmente o meno, comporta una perdita di quota che può essere fatale.",
correct: true
},
{
id: "2",
text: "perché vicino al suolo le reazioni dell’ala ai comandi sono più brusche a causa della maggior densità dell’aria."
text: "Perché vicino al suolo le reazioni dell’ala ai comandi sono più brusche a causa della maggior densità dell’aria."
},
{
id: "3",
text: "perché l’effetto suolo si fa sentire alterando l’auto stabilità del mezzo."
text: "Perché l’effetto suolo si fa sentire alterando l’auto stabilità del mezzo."
}
]
},
{
id: "9023",
question: "Quali conseguenze in volo si possono avere per non aver agganciato i cosciali dell’imbrago del parapendio?",
question: "Quali conseguenze in volo si possono avere per non aver agganciato i cosciali della selletta del parapendio?",
points: "4",
answers: [
{
id: "1",
text: "una posizione molto scomoda, ma il rischio è minimo se il pettorale è ben agganciato."
text: "Una posizione molto scomoda, ma il rischio è minimo se il pettorale è ben agganciato."
},
{
id: "2",
text: "una situazione di gravissimo pericolo quale la fuoriuscita dall’imbrago e la caduta.",
text: "Una situazione di gravissimo pericolo quale la fuoriuscita dalla selletta e la caduta.",
correct: true
},
{
id: "3",
text: "una situazione di grave pericolo sempre che non ci si riesca ad aggrappare saldamente al fascio funicolare."
text: "Una situazione di grave pericolo sempre che non ci si riesca ad aggrappare saldamente al fascio funicolare."
}
]
},
{
id: "9024",
question: "Se durante il decollo in parapendio si constata che l’ala non si è gonfiata correttamente è preferibile per motivi di sicurezza:",
points: "4",
answers: [
{
id: "1",
@ -420,18 +442,19 @@ const questions = [
{
id: "9025",
question: "Analizzare in anticipo previsioni meteorologiche specifiche per il volo aumenta la sicurezza?",
points: "4",
answers: [
{
id: "1",
text: "no perché la situazione meteorologica locale può essere valutata solo al momento."
text: "No perché la situazione meteorologica locale può essere valutata solo al momento."
},
{
id: "2",
text: " perché una previsione positiva garantisce un volo sicuro."
text: "Si, perché una previsione positiva garantisce un volo sicuro."
},
{
id: "3",
text: " perché fornisce informazioni utili a valutare meglio la situazione meteorologica e la sua possibile evoluzione.",
text: "Si, perché fornisce informazioni utili a valutare meglio la situazione meteorologica e la sua possibile evoluzione.",
correct: true
}
]
@ -439,44 +462,47 @@ const questions = [
{
id: "9027",
question: "Se durante un volo in parapendio si rompe il cordino di un freno, si è in una situazione di emergenza. Come ci si deve comportare?",
points: "4",
answers: [
{
id: "1",
text: "pilotare con entrambi gli elevatori posteriori trazionandoli con dolcezza e limitatamente allo stretto indispensabile per arrivare in atterraggio.",
text: "Pilotare con entrambi gli elevatori posteriori trazionandoli con dolcezza e limitatamente allo stretto indispensabile per arrivare in atterraggio.",
correct: true
},
{
id: "2",
text: "pilotare solo con il freno restante e manovrando meno possibile atterrare immediatamente sul pendio."
text: "Pilotare solo con il freno restante e manovrando meno possibile atterrare immediatamente sul pendio."
},
{
id: "3",
text: "pilotare con l’elevatore posteriore dalla parte del freno inefficiente e con il freno efficiente dall’altra."
text: "Pilotare con l’elevatore posteriore dalla parte del freno inefficiente e con il freno efficiente dall’altra."
}
]
},
{
id: "9029",
question: "E’ corretto affermare dal punto di vista della sicurezza del volo che un’ala omologata in una classe basica garantisce il pilota anche se inesperto in caso di configurazione inusuale?",
question: "E’ corretto affermare dal punto di vista della sicurezza del volo che un’ala certificata in una classe basica garantisce il pilota anche se inesperto in caso di configurazione inusuale?",
points: "4",
answers: [
{
id: "1",
text: ", indipendentemente da altri fattori."
text: "Si, indipendentemente da altri fattori."
},
{
id: "2",
text: "assolutamente no."
text: "Assolutamente no."
},
{
id: "3",
text: "sì, ma solo se sono state rispettate le norme relative al tipo e alla regolazione dell’imbrago riportate sullo sticker attaccato all’ala.",
text: "Si, ma solo se sono state rispettate le norme relative al tipo e alla regolazione della selletta riportate nella certificazione.",
correct: true
}
]
},
{
id: "9030",
question: "Ai fini della sicurezza del volo, un pilota che si appresta a volare un’ala omologata in una classe non basica deve essere conscio che in caso di configurazione inusuale:",
question: "Ai fini della sicurezza del volo, un pilota che si appresta a volare un’ala certificata in una classe non basica deve essere conscio che in caso di configurazione inusuale:",
points: "4",
answers: [
{
id: "1",
@ -496,18 +522,19 @@ const questions = [
{
id: "9034",
question: "Configurazioni inusuali del parapendio. In che cosa consiste il post-stallo di un parapendio e che cosa può accadere se si verifica?",
points: "4",
answers: [
{
id: "1",
text: "è la situazione prodotta dal permanere in condizioni di stallo, ma non può avere alcuna conseguenza se si verifica."
text: "È la situazione prodotta dal permanere in condizioni di stallo, ma non può avere alcuna conseguenza se si verifica."
},
{
id: "2",
text: "è la condizione in cui si trova l’ala dopo una corretta rimessa dallo stallo, le conseguenze dipendono da come la rimessa si verifica."
text: "È la condizione in cui si trova l’ala dopo una corretta rimessa dallo stallo; le conseguenze dipendono da come la rimessa si verifica."
},
{
id: "3",
text: "è la situazione prodotta dal permanere in condizioni di stallo e può accadere che l’ala collassi completamente e pericolosamente.",
text: "È la situazione prodotta dal permanere in condizioni di stallo e il conseguente collasso totale dell’ala.",
correct: true
}
]
@ -515,170 +542,179 @@ const questions = [
{
id: "9035",
question: "Configurazioni inusuali del parapendio. All’uscita da uno stallo di “B” si constata di avere un tasso di caduta elevatissimo, una velocità di avanzamento quasi nulla con l’ala perfettamente gonfia sulla verticale. Che cosa può essere accaduto?",
points: "4",
answers: [
{
id: "1",
text: "si è finiti in stallo paracadutale per aver probabilmente rilasciato le bretelle “B” troppo lentamente verso l’alto e/o perché si sta volando un’ala dal tessuto divenuto poroso.",
text: "Si è finiti in stallo paracadutale per aver probabilmente rilasciato le bretelle “B” troppo lentamente verso l’alto e/o perché si sta volando un’ala dal tessuto divenuto poroso.",
correct: true
},
{
id: "2",
text: "si è finiti in stallo paracadutale per aver rilasciato troppo bruscamente le bretelle “B” all’uscita dalla manovra, la porosità dell’ala non ha nulla a che vedere con questa situazione."
text: "Si è finiti in stallo paracadutale per aver rilasciato troppo bruscamente le bretelle “B” all’uscita dalla manovra; la porosità dell’ala non ha nulla a che vedere con questa situazione."
},
{
id: "3",
text: "nulla di significativo, il tasso di caduta elevato è normale all’uscita dallo stallo di “B” e per fortuna l’ala è gonfia sulla verticale."
text: "Nulla di significativo, il tasso di caduta elevato è normale all’uscita dallo stallo di “B” e per fortuna l’ala è gonfia sulla verticale."
}
]
},
{
id: "9036",
question: "Configurazioni inusuali del parapendio. Per ottenere al meglio l’uscita da uno stallo paracadutale il pilota dovrà, dopo aver rilasciato prontamente verso l’alto entrambi i freni, agire nell’ordine come segue:",
id: "9039",
question: "Se per avaria strutturale il dispositivo antidrappo non dovesse entrare in funzione quando necessario, una volta innescata la caduta a drappo:",
points: "4",
answers: [
{
id: "1",
text: "trazionare con decisione una sola delle bretelle anteriori oppure, se ciò non ha effetto, trazionare decisamente uno solo dei freni."
text: "è bene cercare prima di uscirne con l’uso dei comandi e del peso, non c’è fretta per l’uso del paracadute di soccorso."
},
{
id: "2",
text: "spingere in avanti le bretelle A, utilizzare a fondo l’accelleratore , successivamente se l’assetto persiste affondare i freni simmetricamente e poi rilasciarli, utilizzare in ultima analisi un freno solo affondandolo e rilasciandolo e aspettandosi di uscire in quest’ultimo caso con una violenta virata o in “vite piatta negativa”.",
text: "è bene fare uso immediato del paracadute di soccorso, prima che la velocità verticale sia troppo elevata.",
correct: true
},
{
id: "3",
text: "affondare con decisione un freno solo, pompare simmetricamente con i freni, spingere in ultima analisi con decisione in avanti le bretelle anteriori."
text: "è bene attendere che la velocità di caduta sia molto elevata prima di aprire il paracadute di soccorso, al fine di ottenerne l’immediata apertura."
}
]
},
{
id: "9037",
question: "Decollo in deltaplano con vento sostenuto. L’utilizzo di un assistente che tocchi il delta all’inizio della rincorsa è rischioso perché:",
id: "9036",
question: "Configurazioni inusuali del parapendio. Per ottenere al meglio l’uscita da uno stallo paracadutale il pilota dovrà, dopo aver rilasciato prontamente verso l’alto entrambi i freni, agire nell’ordine come segue:",
points: "4",
answers: [
{
id: "1",
text: "l’assistente può essere trascinato giù dalla rampa o addirittura essere portato in volo."
text: "trazionare con decisione una sola delle bretelle anteriori oppure, se ciò non ha effetto, trazionare decisamente uno solo dei freni."
},
{
id: "2",
text: "non tutti gli assistenti danno adeguate garanzie di comportamento anche se ben istruiti dal pilota."
text: "spingere in avanti le bretelle A, utilizzare a fondo l’acceleratore , successivamente se l’assetto persiste affondare i freni simmetricamente e poi rilasciarli, utilizzare in ultima analisi un freno solo affondandolo e rilasciandolo e aspettandosi di uscire in quest’ultimo caso con una violenta virata o in “vite piatta negativa”.",
correct: true
},
{
id: "3",
text: "l’assistente, anche se esperto non può avere la sensibilità rispetto al mezzo che invece ha il pilota e quindi può imprimergli un assetto e una posizione non ottimali.",
correct: true
text: "affondare con decisione un freno solo, pompare simmetricamente con i freni, spingere in ultima analisi con decisione in avanti le bretelle anteriori."
}
]
},
{
id: "9038",
question: "Il mancato o non corretto aggancio del pilota al deltaplano comporta:",
id: "9040",
question: "Le sollecitazioni che rendono pericoloso il looping eseguito con il deltaplano sono indotte:",
points: "4",
answers: [
{
id: "1",
text: "gravissime conseguenze sempre.",
correct: true
text: "solo dalla velocità che è necessaria assumere prima di iniziare la manovra di cabrata."
},
{
id: "2",
text: "la necessità di atterrare al più presto."
text: "solo dalle accelerazioni cui è sottoposto il mezzo durante tutta la manovra."
},
{
id: "3",
text: "la necessità di ridurre le manovre allo stretto indispensabile per non precipitare."
text: "dalla velocità elevata che è necessario assumere prima di iniziare la manovra di cabrata e dalle accelerazioni cui è sottoposto il deltaplano durante tutta la manovra.",
correct: true
}
]
},
{
id: "9039",
question: "Se per avaria strutturale il dispositivo antidrappo non dovesse entrare in funzione quando necessario, una volta innescata la caduta a drappo:",
id: "9041",
question: "Che cosa s’intende per tumbling del deltaplano?",
points: "4",
answers: [
{
id: "1",
text: "è bene cercare prima di uscirne con l’uso dei comandi e del peso, non c’è fretta per l’uso del paracadute di soccorso."
text: "Una brusca rotazione incontrollata attorno all’asse d’imbardata."
},
{
id: "2",
text: "è bene fare uso immediato del paracadute di soccorso, prima che la velocità verticale sia troppo elevata.",
text: "Una brusca rotazione incontrollata attorno all’asse trasversale.",
correct: true
},
{
id: "3",
text: "è bene attendere che la velocità di caduta sia molto elevata prima di aprire il paracadute di soccorso, al fine di ottenerne l’immediata apertura."
text: "Una brusca rotazione incontrollata attorno all’asse longitudinale."
}
]
},
{
id: "9040",
question: "Le sollecitazioni che rendono pericoloso il looping eseguito con il deltaplano sono indotte:",
id: "9037",
question: "Decollo in deltaplano con vento sostenuto. L’utilizzo di un assistente che tocchi il delta all’inizio della rincorsa è rischioso perché:",
points: "4",
answers: [
{
id: "1",
text: "solo dalla velocità che è necessaria assumere prima di iniziare la manovra di cabrata."
text: "l’assistente può essere trascinato giù dalla rampa o addirittura essere portato in volo."
},
{
id: "2",
text: "solo dalle accelerazioni cui è sottoposto il mezzo durante tutta la manovra."
text: "non tutti gli assistenti danno adeguate garanzie di comportamento anche se ben istruiti dal pilota."
},
{
id: "3",
text: "dalla velocità elevata che è necessaria assumere prima di iniziare la manovra di cabrata e dalle accelerazioni cui è sottoposto il deltaplano durante tutta la manovra.",
text: "l’assistente, anche se esperto non può avere la sensibilità rispetto al mezzo che invece ha il pilota e quindi può imprimergli un assetto e una posizione non ottimali.",
correct: true
}
]
},
{
id: "9041",
question: "Che cosa s’intende per tumbling del deltaplano?",
id: "9038",
question: "Il mancato o non corretto aggancio del pilota al deltaplano comporta:",
points: "4",
answers: [
{
id: "1",
text: "una brusca rotazione incontrollata attorno all’asse d’imbardata."
text: "gravissime conseguenze sempre.",
correct: true
},
{
id: "2",
text: "una brusca rotazione incontrollata attorno all’asse trasversale.",
correct: true
text: "la necessità di atterrare al più presto."
},
{
id: "3",
text: "una brusca rotazione incontrollata attorno all’asse longitudinale."
text: "la necessità di ridurre le manovre allo stretto indispensabile per non precipitare."
}
]
},
{
id: "9042",
question: "Quali elementi, tra i seguenti, contribuiscono a provocare il tumbling del deltaplano?",
points: "4",
answers: [
{
id: "1",
text: "un angolo d’incidenza troppo elevato associato a condizioni di turbolenza.",
text: "Un angolo d’incidenza troppo elevato associato a condizioni di turbolenza.",
correct: true
},
{
id: "2",
text: "una velocità troppo elevata in condizioni di forte turbolenza."
text: "Una velocità troppo elevata in condizioni di forte turbolenza."
},
{
id: "3",
text: "virate in condizioni di ascendenza."
text: "Virate in condizioni di ascendenza."
}
]
},
{
id: "9043",
question: "E’ vero che praticando il Volo Libero il pilota deve usare il paracadute di soccorso solo in ultima analisi e cioè quando non è possibile ripristinare altrimenti condizioni di volo nelle quali il mezzo risulti pilotabile sino a un atterraggio sicuro?",
points: "4",
answers: [
{
id: "1",
text: "no, questa è una credenza sbagliata perché il paracadute di soccorso va usato sempre e al più presto possibile quando l’ala assume una configurazione inusuale."
text: "No, questa è una credenza sbagliata perché il paracadute di soccorso va usato sempre e al più presto possibile quando l’ala assume una configurazione inusuale."
},
{
id: "2",
text: ", tenendo presente che non c’è alcuna fretta nell’utilizzarlo perché non ha limiti per l’apertura."
text: "Si, tenendo presente che non c’è alcuna fretta nell’utilizzarlo perché non ha limiti per l’apertura."
},
{
id: "3",
text: ", tenendo presente comunque che dal momento in cui si decide di usarlo è bene farlo al più presto per consentirgli di aprirsi in tempo utile ed entro i suoi limiti strutturali.",
text: "Si, tenendo presente comunque che dal momento in cui si decide di usarlo è bene farlo al più presto per consentirgli di aprirsi in tempo utile ed entro i suoi limiti strutturali.",
correct: true
}
]
@ -686,18 +722,19 @@ const questions = [
{
id: "9044",
question: "Oltre al caso di malore del pilota, in quale di queste situazioni è utile l’apertura del paracadute di emergenza e come deve essere fatta?",
points: "4",
answers: [
{
id: "1",
text: "in forte turbolenza qualora risulti difficile il controllo del deltaplano o del parapendio, tirando con decisione la maniglia verso l’alto."
text: "In forte turbolenza qualora risulti difficile il controllo del deltaplano o del parapendio, tirando con decisione la maniglia verso l’alto."
},
{
id: "2",
text: "in caso ci si trovi all’interno di una corrente ascensionale tanto forte da trascinarci in nube, tirando la maniglia con decisione verso il basso in modo che il paracadute si allontani più possibile dall’ala."
text: "In caso ci si trovi all’interno di una corrente ascensionale tanto forte da trascinarci in nube, tirando la maniglia con decisione verso il basso in modo che il paracadute si allontani più possibile dall’ala."
},
{
id: "3",
text: "in caso di rottura strutturale non potendo più controllare l’apparecchio o a seguito di configurazione inusuale che si riveli totalmente irrecuperabile con l’uso dei comandi e del peso, tirando con decisione la maniglia in modo che il paracadute si allontani più possibile dall’ala.",
text: "In caso di rottura strutturale non potendo più controllare l’apparecchio o a seguito di configurazione inusuale che si riveli totalmente irrecuperabile con l’uso dei comandi e del peso, tirando con decisione la maniglia in modo che il paracadute si allontani più possibile dall’ala.",
correct: true
}
]

96
vds-app/App/data/instruments.js

@ -2,18 +2,19 @@ const questions = [
{
id: "6001",
question: "Che cos’è l’altimetro?",
points: "2",
answers: [
{
id: "1",
text: "è lo strumento che misura sempre la distanza di un apparecchio dal suolo."
text: "È lo strumento che misura sempre la distanza di un apparecchio dal suolo."
},
{
id: "2",
text: "è lo strumento che misura la velocità verticale di un apparecchio."
text: "È lo strumento che misura la velocità verticale di un apparecchio."
},
{
id: "3",
text: "è lo strumento che misura l’altitudine di un apparecchio rispetto ad un punto noto come, ad esempio, il livello del mare.",
text: "È lo strumento che misura l’altitudine di un apparecchio rispetto ad un punto noto come, ad esempio, il livello del mare.",
correct: true
}
]
@ -21,63 +22,67 @@ const questions = [
{
id: "6002",
question: "Come funziona normalmente un altimetro?",
points: "2",
answers: [
{
id: "1",
text: "misura la pressione atmosferica e quindi l’altitudine, utilizzando una capsula aneroide o un sensore elettronico.",
text: "Misura la pressione atmosferica e quindi l’altitudine, utilizzando una capsula aneroide o un sensore elettronico.",
correct: true
},
{
id: "2",
text: "misura l’elevazione sul livello del mare utilizzando un sensore elettronico."
text: "Misura l’elevazione sul livello del mare utilizzando un sensore elettronico."
},
{
id: "3",
text: "misura la velocità verticale rispetto all’aria utilizzando un sensore elettronico."
text: "Misura la velocità verticale rispetto all’aria utilizzando un sensore elettronico."
}
]
},
{
id: "6003",
question: "Per quale motivo un altimetro necessita di regolazioni?",
points: "2",
answers: [
{
id: "1",
text: "perché la temperatura dell’aria varia in relazione alle condizioni atmosferiche ed al variare dell’altitudine."
text: "Perché la temperatura dell’aria varia in relazione alle condizioni atmosferiche ed al variare dell’altitudine."
},
{
id: "2",
text: "perché la pressione atmosferica varia in relazione alle condizioni atmosferiche e non solo in relazione all’ altitudine.",
text: "Perché la pressione atmosferica varia in relazione alle condizioni atmosferiche e non solo in relazione all’ altitudine.",
correct: true
},
{
id: "3",
text: "perché la pressione atmosferica varia al variare dell’altitudine."
text: "Perché la pressione atmosferica varia al variare dell’altitudine."
}
]
},
{
id: "6004",
question: "Dopo aver regolato l’altimetro all’altitudine di decollo, effettuiamo il volo. Se all’atterraggio esso ci indica un’altitudine diversa da quella conosciuta, cosa può essere accaduto?",
points: "2",
answers: [
{
id: "1",
text: "la pressione atmosferica è cambiata.",
text: "La pressione atmosferica è cambiata.",
correct: true
},
{
id: "2",
text: "l’altimetro si è sicuramente guastato."
text: "L’altimetro si è sicuramente guastato."
},
{
id: "3",
text: "la temperatura dell’aria è cambiata."
text: "La temperatura dell’aria è cambiata."
}
]
},
{
id: "6005",
question: "Se regoliamo il nostro altimetro in base alla pressione presente al livello del mare (QNH), andando in volo potremo conoscere :",
question: "Se regoliamo il nostro altimetro in base alla pressione presente al livello del mare (QNH), andando in volo potremo conoscere:",
points: "2",
answers: [
{
id: "1",
@ -96,57 +101,60 @@ const questions = [
},
{
id: "6006",
question: "cosa è il variometro?",
question: "Cosa è il variometro?",
points: "2",
answers: [
{
id: "1",
text: "è lo strumento che in volo misura la velocità verticale .",
text: "È lo strumento che in volo misura la velocità verticale.",
correct: true
},
{
id: "2",
text: "è lo strumento che in volo misura le altitudini rispetto al livello del mare."
text: "È lo strumento che in volo misura le altitudini rispetto al livello del mare."
},
{
id: "3",
text: "è lo strumento che in volo misura la velocità all’aria."
text: "È lo strumento che in volo misura la velocità all’aria."
}
]
},
{
id: "6007",
question: "Come funziona un variometro?",
points: "2",
answers: [
{
id: "1",
text: "misura la variazione istantanea della temperatura dell’aria a mezzo di un dispositivo elettronico."
text: "Misura la variazione istantanea della temperatura dell’aria a mezzo di un dispositivo elettronico."
},
{
id: "2",
text: "misura le variazioni anche minime di pressione atmosferica a mezzo di un barometro differenziale o di un sensore elettronico.",
text: "Misura le variazioni anche minime di pressione atmosferica a mezzo di un barometro differenziale o di un sensore elettronico.",
correct: true
},
{
id: "3",
text: "misura le variazioni di pressione atmosfericamezzo di un barometro a colonna."
text: "Misura le variazioni di pressione atmosferica a mezzo di un barometro a colonna."
}
]
},
{
id: "6010",
question: "Come funziona un anemometro?",
points: "2",
answers: [
{
id: "1",
text: "misura la pressione statica di cui è dotato il vento relativo traducendola in indicazione di velocità."
text: "Misura la pressione statica di cui è dotato il vento relativo traducendola in indicazione di velocità."
},
{
id: "2",
text: "misura direttamente l’energia cinetica di cui è dotato il vento relativo traducendola in calore."
text: "Misura direttamente l’energia cinetica di cui è dotato il vento relativo traducendola in calore."
},
{
id: "3",
text: "misura la pressione dinamica di cui è dotato il vento relativo oppure la sua velocità mediante dispositivi meccanici (elichette intubate, etc.).",
text: "Misura la pressione dinamica di cui è dotato il vento relativo oppure la sua velocità mediante dispositivi meccanici (elichette intubate, etc.).",
correct: true
}
]
@ -154,75 +162,79 @@ const questions = [
{
id: "6011",
question: "In quale caso l’anemometro può indicare la velocità al suolo con buona approssimazione?",
points: "2",
answers: [
{
id: "1",
text: "quando il volo è effettuato in aria calma, in assenza di vento e su traiettoria poco inclinata.",
text: "Quando il volo è effettuato in aria calma, in assenza di vento e su traiettoria poco inclinata.",
correct: true
},
{
id: "2",
text: "in tutti i casi, indipendentemente dalla traiettoria."
text: "In tutti i casi, indipendentemente dalla traiettoria."
},
{
id: "3",
text: "in nessun caso."
text: "In nessun caso."
}
]
},
{
id: "6012",
question: "Che cosa è la bussola?",
points: "2",
answers: [
{
id: "1",
text: "è lo strumento che indica la direzione del Nord magnetico.",
text: "È lo strumento che indica la direzione del Nord magnetico.",
correct: true
},
{
id: "2",
text: "è lo strumento che indica la direzione del Nord geografico."
text: "È lo strumento che indica la direzione del Nord geografico."
},
{
id: "3",
text: "è lo strumento che indica la direzione del Sud geografico."
text: "È lo strumento che indica la direzione del Sud geografico."
}
]
},
{
id: "6013",
question: "Come funziona la bussola?",
points: "2",
answers: [
{
id: "1",
text: "rileva mediante una calamita la posizione in cui si trova il Nord geografico."
text: "Rileva mediante una calamita la posizione in cui si trova il Nord geografico."
},
{
id: "2",
text: "rileva mediante una calamita la direzione del campo magnetico terrestre e il Nord magnetico.",
text: "Rileva mediante una calamita la direzione del campo magnetico terrestre e il Nord magnetico.",
correct: true
},
{
id: "3",
text: "rileva mediante un sistema meccanico la direzione dei meridiani terrestri."
text: "Rileva mediante un sistema meccanico la direzione dei meridiani terrestri."
}
]
},
{
id: "6015",
question: "E’ possibile affermare che il Nord geografico coincide con il Nord magnetico?",
points: "2",
answers: [
{
id: "1",
text: "si."
text: "Si."
},
{
id: "2",
text: "dipende dalle stagioni dell’anno."
text: "Dipende dalle stagioni dell’anno."
},
{
id: "3",
text: "no.",
text: "No.",
correct: true
}
]
@ -230,18 +242,19 @@ const questions = [
{
id: "6016",
question: "Con bussola, altimetro, anemometro e variometro è possibile effettuare attività vololiberistica in condizioni di volo strumentale, ad esempio in nube?",
points: "2",
answers: [
{
id: "1",
text: "si, se adeguatamente addestrati."
text: "Si, se adeguatamente addestrati."
},
{
id: "2",
text: "si, ma solo per breve tempo, perché la dotazione di strumenti non risulta completa."
text: "Si, ma solo per breve tempo, perché la dotazione di strumenti non risulta completa."
},
{
id: "3",
text: "no, la dotazione di strumenti non è affatto completa, manca l’informazione di posizione nello spazio.",
text: "No, la dotazione di strumenti non è affatto completa, manca l’informazione di posizione nello spazio.",
correct: true
}
]
@ -249,19 +262,20 @@ const questions = [
{
id: "6018",
question: "Con il GPS è possibile volare con tranquillità nelle nubi?",
points: "2",
answers: [
{
id: "1",
text: "si, in quanto il GPS indica la direzione in cui mi sto muovendo con esattezza."
text: "Si, in quanto il GPS indica la direzione in cui mi sto muovendo con esattezza."
},
{
id: "2",
text: "no, anche perchè nella nube la ricezione del segnale inviato dai satelliti GPS può essere disturbato, rendendo inaffidabile lo strumento.",
text: "No, anche perchè nella nube la ricezione del segnale inviato dai satelliti GPS può essere disturbata, rendendo inaffidabile lo strumento.",
correct: true
},
{
id: "3",
text: "si, ma solo se affianchiamo al GPS una bussola di tipo nautico."
text: "Si, ma solo se affianchiamo al GPS una bussola di tipo nautico."
}
]
}

320
vds-app/App/data/legislation.js

@ -1,45 +1,48 @@
const questions = [
{
id: "1001",
question: "Chi può praticare il volo libero?",
question: "Chi può praticare autonomamente il volo libero?",
points: "3",
answers: [
{
id: "1",
text: "chiunque può praticare quest’ attività sportiva purché abbia frequentato un corso."
text: "Chiunque può praticare quest’attività sportiva purché abbia frequentato un apposito corso."
},
{
id: "2",
text: "chiunque, munito dei requisiti richiesti (Attestato in corso di validità e copertura assicurativa RCT) e nel rispetto delle norme stabilite.",
text: "Chiunque, munito dei requisiti richiesti dalle norme in vigore (Attestato in corso di validità e copertura assicurativa RCT).",
correct: true
},
{
id: "3",
text: "chiunque può praticare quest’attività purché abbia superato un esame dell’AeCI."
text: "Chiunque può praticare quest’attività purché abbia superato un esame Ae.C.I.."
}
]
},
{
id: "1002",
question: "Chi è l’unico responsabile della condotta del deltaplano o del parapendio?",
question: "Chi è l’unico responsabile della condotta del deltaplano e del parapendio?",
points: "3",
answers: [
{
id: "1",
text: "il pilota.",
text: "Il pilota.",
correct: true
},
{
id: "2",
text: "il pilota, ma solo se dotato di sufficiente esperienza."
text: "Il pilota, ma solo se dotato di sufficiente esperienza."
},
{
id: "3",
text: "il pilota istruttore."
text: "L’Ente di Controllo del Traffico Aereo."
}
]
},
{
id: "1003",
question: "Qual è l’età minima, previo consenso dei genitori, per la pratica del Volo Libero",
question: "Qual è l’età minima, previo consenso dei genitori, per la pratica del Volo Libero?",
points: "3",
answers: [
{
id: "1",
@ -59,6 +62,7 @@ const questions = [
{
id: "1004",
question: "Il Certificato Medico ha normalmente validità di",
points: "3",
answers: [
{
id: "1",
@ -77,87 +81,92 @@ const questions = [
},
{
id: "1005",
question: "La copertura assicurativa è obbligatoria per il VDS?",
question: "La copertura assicurativa RCT è obbligatoria per la pratica del VDS/VL?",
points: "3",
answers: [
{
id: "1",
text: "per il pilota .",
text: "Si, il pilota è obbligato ad assicurarsi.",
correct: true
},
{
id: "2",
text: "per il pilota, ma solo se dotato di sufficiente esperienza."
text: "No, il pilota non è obbligato ad assicurarsi."
},
{
id: "3",
text: "per il pilota istruttore."
text: "Si, ma solo per effettuare voli di cross-country."
}
]
},
{
id: "1006",
question: "Nel Volo Libero è obbligatorio portare un paracadute di soccorso?",
question: "Nel Volo Libero qual è il criterio generale di precedenza nell’area di decollo?",
points: "3",
answers: [
{
id: "1",
text: "pur non essendo una norma esplicitamente riportata l’utilizzo del paracadute d’emergenza è da ritenersi indispensabile.",
text: "Ha la precedenza il pilota in fase d’atterraggio (top landing).",
correct: true
},
{
id: "2",
text: "solo nel volo veleggiato."
text: "Ha la precedenza il pilota in fase di decollo."
},
{
id: "3",
text: "è obbligatorio possederlo e ripiegarlo."
text: "Non esiste un criterio specifico."
}
]
},
{
id: "1007",
question: "E’ obbligatorio l’uso del casco per il Volo Libero?",
question: "È obbligatorio l’uso del casco per il Volo Libero?",
points: "3",
answers: [
{
id: "1",
text: "no."
text: "No."
},
{
id: "2",
text: "si.",
text: "Si.",
correct: true
},
{
id: "3",
text: "solo per il volo in deltaplano."
text: "Solo per il volo in deltaplano."
}
]
},
{
id: "1008",
question: "Qual è l’altezza massima dal terreno cui si può praticare il Volo Libero, salvo particolari disposizioni?",
question: "Qual è lo spazio aereo all’interno del quale si può praticare il Volo Libero?",
points: "3",
answers: [
{
id: "1",
text: "500 piedi dal punto più elevato nel raggio di 3 km., nei giorni feriali e festivi."
text: "Qualsiasi spazio aereo purché ad una quota inferiore ai 1000 piedi."
},
{
id: "2",
text: "1.000 piedi dal punto più elevato nel raggio di 3 km., nei giorni feriali e festivi. LEGISLAZIONE"
text: "Lo spazio aereo controllato dalle Autorità Aeronautiche."
},
{
id: "3",
text: "500 piedi dal punto più elevato nel raggio di 3 km., nei giorni feriali e 1.000 piedi nei giorni festivi.",
text: "Lo spazio aereo non controllato, salvo particolari eccezioni o autorizzazioni sancite da un notam.",
correct: true
}
]
},
{
id: "1009",
question: "Il criterio nello stabilire le distanze massime dal terreno per la pratica del Volo Libero è:",
question: "Il criterio nello stabilire la suddivisione degli spazi aerei per la pratica del volo è:",
points: "3",
answers: [
{
id: "1",
text: "quello di limitare lo spazio a disposizione degli sportivi che praticano quest’ attività in quanto ritenuta attività secondaria."
text: "solo quello di limitare lo spazio aereo a disposizione degli sportivi che praticano il Volo Libero, in quanto ritenuta attività secondaria."
},
{
id: "2",
@ -166,70 +175,74 @@ const questions = [
},
{
id: "3",
text: "quello di impedire che l’attività di Volo Libero si svolga al di sopra di certe quote in quanto così in alto gli apparecchi in uso non danno garanzie di sicurezza."
text: "quello di impedire che l’attività di Volo Libero si svolga al di sopra di certe quote in quanto molto in alto gli apparecchi in uso non danno garanzie di sicurezza."
}
]
},
{
id: "1010",
question: "Quale altezza minima si deve mantenere per il sorvolo di centri abitati",
question: "Quale altezza minima si deve mantenere nella pratica del VDS/VL?",
points: "3",
answers: [
{
id: "1",
text: "500 piedi dal punto più elevato nel raggio di 3 km., nei giorni feriali e 1.000 piedi nei giorni festivi."
text: "500 piedi dal punto più elevato nel raggio di 3 km nei giorni feriali e 1000 piedi nei giorni festivi."
},
{
id: "2",
text: "quella che consente, in caso di emergenza, un atterraggio senza porre in pericolo beni e persone al suolo."
text: "Non vi è un’altezza minima, perché è comunque vietato il sorvolo dei centri abitati con deltaplano e parapendio."
},
{
id: "3",
text: "non vi è un’altezza minima perché è comunque vietato il sorvolo di centri abitati con deltaplano e parapendio.",
text: "Quella che consente, in caso d’emergenza, un atterraggio che non comporti pericolo per beni e persone al suolo.",
correct: true
}
]
},
{
id: "1011",
question: "Quali distanze minime occorrono mantenere dalle nubi?",
question: "Quale distanza minima occorre mantenere dalle nubi?",
points: "3",
answers: [
{
id: "1",
text: "500 mt."
text: "1000 m."
},
{
id: "2",
text: "non esiste regola precisa."
text: "Non esiste regola precisa."
},
{
id: "3",
text: "è necessario comunque mantenersi fuori dalle nubi e in contatto con il suolo o con la superficie acquea sottostante.",
text: "È necessario comunque mantenersi fuori dalle nubi e in contatto con il suolo o con la superficie acquea sottostante.",
correct: true
}
]
},
{
id: "1012",
question: "E’ consentito volare in nube con deltaplano e parapendio?",
question: "È consentito volare in nube con deltaplano e parapendio?",
points: "3",
answers: [
{
id: "1",
text: "no, perché non è garantita la separazione da eventuali ostacoli, dal terreno e da altri mezzi e poiché il disorientamento comporta la possibile perdita del controllo di assetto e velocità.",
text: "No, perché non è garantita la separazione da eventuali ostacoli, dal terreno e da altri mezzi e poiché il disorientamento comporta la possibile perdita del controllo di assetto e velocità.",
correct: true
},
{
id: "2",
text: "no, perché non è garantita la separazione da eventuali ostacoli e dal terreno, sebbene sia possibile condurre tali mezzi in condizioni di volo strumentale anche senza l’ausilio di strumenti, data la semplicità di pilotaggio."
text: "No, perché non è garantita la separazione da eventuali ostacoli e dal terreno, sebbene sia possibile condurre tali mezzi in condizioni di volo strumentale anche senza l’ausilio di strumenti, data la semplicità di pilotaggio."
},
{
id: "3",
text: "sì, sempre che la nube in questione non si estenda sino ad aderire al pendio o comunque al terreno, nel qual caso non sarebbe garantita la sicurezza del volo."
text: "Sì, sempre che la nube in questione non si estenda sino ad aderire al pendio o comunque al terreno, nel qual caso non sarebbe garantita la sicurezza del volo."
}
]
},
{
id: "1013",
question: "Le tabelle chiamate effemeridi, sulle quali si possono trovare tutti i dati concernenti le posizioni in cielo delle stelle e dei pianeti durante l’anno, possono essere utili a chi pratica il Volo Libero (VDS con apparecchi privi di motore) perché:",
question: "Le tabelle chiamate effemeridi, sulle quali si possono trovare tutti i dati concernenti le posizioni in cielo delle stelle e dei pianeti durante l’anno, possono essere utili a chi pratica il Volo Libero perché:",
points: "3",
answers: [
{
id: "1",
@ -241,60 +254,63 @@ const questions = [
},
{
id: "3",
text: "è indispensabile sapere l’orario del sorgere e del tramontare del sole in ogni giorno dell’anno poiché il Volo Libero si può praticare solo dall’alba al tramonto.",
text: "è indispensabile sapere l’orario del sorgere e del tramontare del sole in ogni giorno dell’anno poiché il Volo Libero si può praticare solo da 30 minuti prima dell’alba a 30 minuti dopo il tramonto.",
correct: true
}
]
},
{
id: "1014",
question: "E’ possibile svolgere attività di volo libero a meno di 4 km. dai confini di Stato?",
question: "E’ possibile svolgere attività di volo libero a meno di 4 km dai confini di Stato?",
points: "3",
answers: [
{
id: "1",
text: "no."
text: "No."
},
{
id: "2",
text: ".",
text: "Si.",
correct: true
},
{
id: "3",
text: "dipende dalle leggi vigenti nei Paesi confinanti."
text: "Dipende dalle leggi vigenti nei Paesi confinanti."
}
]
},
{
id: "1015",
question: "Deltaplano e parapendio come sono classificati ?",
question: "Deltaplano e parapendio come sono classificati?",
points: "3",
answers: [
{
id: "1",
text: "sono alianti"
text: "Sono alianti."
},
{
id: "2",
text: "sono apparecchi per il volo da diporto e sportivo",
text: "Sono apparecchi per il volo da diporto e sportivo.",
correct: true
},
{
id: "3",
text: "sono aereostati."
text: "Sono aerostati."
}
]
},
{
id: "1016",
question: "Che cosa s’intende per spazio aereo controllato?",
points: "3",
answers: [
{
id: "1",
text: "una porzione di spazio aereo nazionale all’interno della quale tutto il traffico è controllato da apparecchiature radar."
text: "Una porzione di spazio aereo nazionale all’interno della quale tutto il traffico è controllato da apparecchiature radar."
},
{
id: "2",
text: "una porzione di spazio aereo nazionale all’interno della quale tutto il traffico di aeromobili è controllato da apparecchiature radar militari."
text: "Una porzione di spazio aereo nazionale all’interno della quale tutto il traffico di aeromobili è controllato da apparecchiature radar militari."
},
{
id: "3",
@ -306,94 +322,99 @@ const questions = [
{
id: "1017",
question: "La Legge italiana stabilisce che:",
points: "3",
answers: [
{
id: "1",
text: "all’interno degli spazi aerei controllati si svolga normalmente solo attività di volo di aeromobili esclusi gli apparecchi VDS se non preventivamente autorizzati.",
text: "all’interno degli spazi aerei controllati si svolga normalmente solo attività di volo di aeromobili esclusi gli apparecchi VDS/VL se non preventivamente autorizzati.",
correct: true
},
{
id: "2",
text: "all’interno degli spazi aerei controllati si svolga normalmente attività di volo di aeromobili civili e/o militari e di apparecchi VDS."
text: "all’interno degli spazi aerei controllati si svolga normalmente attività di volo di aeromobili civili e/o militari e di apparecchi VDS/VL."
},
{
id: "3",
text: "all’interno degli spazi aerei controllati si svolga sempre attività di volo di aeromobili civili e/o militari e nei giorni festivi anche attività di volo di apparecchi VDS."
text: "all’interno degli spazi aerei controllati si svolga sempre attività di volo di aeromobili civili e/o militari e nei giorni festivi anche attività di volo di apparecchi VDS/VL."
}
]
},
{
id: "1018",
question: "E’ consentito l’impegno degli spazi aerei controllati da parte degli apparecchi vds ?",
question: "È consentito l’impegno degli spazi aerei controllati da parte degli apparecchi VDS/VL?",
points: "3",
answers: [
{
id: "1",
text: "solo se preventivamente autorizzati.",
text: "Solo se preventivamente autorizzati.",
correct: true
},
{
id: "2",
text: " se esistono condizioni di volo a vista (Visual Flight Rules)."
text: "Si, se esistono condizioni di volo a vista (Visual Flight Rules)."
},
{
id: "3",
text: "no, indipendentemente dalle condizioni esistenti."
text: "No, indipendentemente dalle condizioni esistenti."
}
]
},
{
id: "1019",
question: "Praticando il Volo Libero a quale distanza occorre tenersi dagli aeroporti non situati all’interno di un ATZ?",
question: "Praticando il Volo Libero a quale distanza è opportuno tenersi dagli aeroporti non situati all’interno di un ATZ?",
points: "3",
answers: [
{
id: "1",
text: "ad almeno 5 km.",
text: "Ad almeno 5 km.",
correct: true
},
{
id: "2",
text: "ad almeno 1 km."
text: "Ad almeno 1 km."
},
{
id: "3",
text: "ad almeno 5 km. e a una quota non inferiore a 500 mt."
text: "Ad almeno 5 km e a una quota non inferiore a 500 m."
}
]
},
{
id: "1020",
question: "Che cosa è una ATZ?",
points: "3",
answers: [
{
id: "1",
text: "uno spazio aereo controllato situato intorno e sopra ad un aeroporto.",
text: "Uno spazio aereo controllato situato intorno e sopra ad un aeroporto.",
correct: true
},
{
id: "2",
text: "un’area destinata all’attesa degli aeromobili civili e/o militari prima dell’atterraggio sull’aeroporto di destinazione."
text: "Un’area destinata all’attesa degli aeromobili civili e/o militari prima dell’atterraggio sull’aeroporto di destinazione."
},
{
id: "3",
text: "una zona aeroportuale di smistamento a terra del traffico di aeromobili civili e/o militari."
text: "Una zona aeroportuale di smistamento a terra del traffico di aeromobili civili e/o militari."
}
]
},
{
id: "1021",
question: "E’ consentito effettuare attività di volo libero in un’ATZ?",
points: "3",
answers: [
{
id: "1",
text: "si."
text: "Si."
},
{
id: "2",
text: "sì, in assenza di traffico di aeromobili."
text: "Sì, in assenza di traffico di aeromobili."
},
{
id: "3",
text: "no, salvo particolari autorizzazioni rilasciate dal Direttore di Circoscrizione aeroportuale.",
text: "No, salvo particolari autorizzazioni rilasciate dal Direttore di Circoscrizione Aeroportuale.",
correct: true
}
]
@ -401,37 +422,39 @@ const questions = [
{
id: "1022",
question: "Che cosa è un CTR?",
points: "3",
answers: [
{
id: "1",
text: "una porzione di spazio aereo controllato all’interno del quale si svolge attività di volo di aeromobili e i mezzi del VDS devono avere preventiva autorizzazione.",
text: "Una porzione di spazio aereo controllato all’interno del quale si svolge attività di volo di aeromobili e i mezzi del VDS devono avere preventiva autorizzazione.",
correct: true
},
{
id: "2",
text: "una porzione di spazio aereo, non necessariamente controllato, all’interno del quale si svolge attività di aeromobili civili e/o militari in arrivo o partenza su uno o più aeroporti."
text: "Una porzione di spazio aereo, non necessariamente controllato, all’interno del quale si svolge attività di aeromobili civili e/o militari in arrivo o partenza su uno o più aeroporti."
},
{
id: "3",
text: "una porzione di spazio aereo controllato riservata all’arrivo o partenza di aeromobili militari."
text: "Una porzione di spazio aereo controllato riservata all’arrivo o partenza di aeromobili militari."
}
]
},
{
id: "1023",
question: "E’ possibile volare con deltaplano o parapendio all’interno di un CTR?",
points: "3",
answers: [
{
id: "1",
text: "normalmente si."
text: "Normalmente si."
},
{
id: "2",
text: ", nei giorni festivi."
text: "Si, nei giorni festivi."
},
{
id: "3",
text: "no salvo autorizzazione.",
text: "No, salvo autorizzazione.",
correct: true
}
]
@ -439,208 +462,214 @@ const questions = [
{
id: "1024",
question: "Che cosa è una TMA?",
points: "3",
answers: [
{
id: "1",
text: "una porzione di spazio aereo riservata all’ attività di velivoli militari."
text: "Una porzione di spazio aereo riservata all’ attività di velivoli militari."
},
{
id: "2",
text: "una porzione di spazio aereo controllato.",
text: "Una porzione di spazio aereo controllato.",
correct: true
},
{
id: "3",
text: "una porzione di spazio aereo non controllato."
text: "Una porzione di spazio aereo non controllato."
}
]
},
{
id: "1025",
question: "E’ ammesso il VDS all’interno di una TMA?",
question: "E’ ammesso il VDS/VL all’interno di una TMA?",
points: "3",
answers: [
{
id: "1",
text: "solo se autorizzato.",
text: "Solo se autorizzato.",
correct: true
},
{
id: "2",
text: "si."
text: "Si."
},
{
id: "3",
text: "sì, ma in assenza di traffico di aeromobili."
text: "Una porzione di spazio aereo all’interno della quale il VDS deve essere espressamente autorizzato poiché sono svolte specifiche attività di volo civile o militare."
}
]
},
{
id: "1026",
question: "Che cosa è una Aerovia o AWY?",
id: "1031",
question: "È possibile normalmente volare con deltaplano e parapendio all’interno delle zone denominate nelle carte aeronautiche con le lettere P, D (“PAPA“, “DELTA“)?",
points: "3",
answers: [
{
id: "1",
text: "una via di rullaggio a terra su un aeroporto."
text: "No.",
correct: true
},
{
id: "2",
text: "una porzione di spazio aereo controllato che si estende verso l’alto da un livello posto al disopra della superficie terrestre fino ad un determinato livello superiore, a forma di corridoio .",
correct: true
text: "Si, ma solo nei giorni festivi."
},
{
id: "3",
text: "una porzione di spazio aereo, non necessariamente controllato, in cui si svolge attività di aeromobili."
text: "Si."
}
]
},
{
id: "1027",
question: "E’ ammesso volare in deltaplano o parapendio in un’aerovia o AWY?",
id: "1026",
question: "Che cosa è una Aerovia o AWY?",
points: "3",
answers: [
{
id: "1",
text: "no.",
correct: true
text: "Una via di rullaggio a terra su un aeroporto."
},
{
id: "2",
text: "sì, se non c’è traffico."
text: "Una porzione di spazio aereo controllato che si estende verso l’alto da un livello posto al disopra della superficie terrestre fino ad un determinato livello superiore, a forma di corridoio.",
correct: true
},
{
id: "3",
text: "si."
text: "Una porzione di spazio aereo, non necessariamente controllato, in cui si svolge attività di aeromobili."
}
]
},
{
id: "1028",
question: "Che cosa è una zona P “PAPA“?",
id: "1027",
question: "È ammesso volare in deltaplano o parapendio in un’aerovia o AWY?",
points: "3",
answers: [
{
id: "1",
text: "una porzione di spazio aereo all’interno della quale è normalmente proibito il volo a tutti gli aeromobili.",
text: "No.",
correct: true
},
{
id: "2",
text: "una porzione di spazio aereo all’interno della quale è permesso il volo ai soli parapendio."
text: "Si, se non c’è traffico."
},
{
id: "3",
text: "una porzione di spazio aereo all’interno della quale non possono volare i soli velivoli militari."
text: "Si."
}
]
},
{
id: "1029",
question: "Che cosa è una zona D “DELTA“?",
id: "1032",
question: "In termica decide il senso di rotazione:",
points: "3",
answers: [
{
id: "1",
text: "una porzione di spazio aereo all’interno della quale è permesso volare in deltaplano."
text: "il pilota che per primo entra nella corrente ascensionale stabilisce il senso di rotazione.",
correct: true
},
{
id: "2",
text: "una porzione di spazio aereo all’interno della quale è pericoloso volare per tutti i tipi di aeromobile.",
correct: true
text: "il pilota con meno esperienza deve avere la precedenza."
},
{
id: "3",
text: "una porzione di spazio aereo all’interno della quale è pericoloso volare per alcuni tipi di aeromobili civili."
text: "si vira verso destra alla presenza di cumulo e verso sinistra in caso contrario."
}
]
},
{
id: "1030",
question: "1.030 Che cosa è una zona R “ROMEO“?",
id: "1033",
question: "Tra un apparecchio per il volo libero ed un apparecchio a motore, chi ha la precedenza in caso di rotte convergenti?",
points: "3",
answers: [
{
id: "1",
text: "una porzione di spazio aereo all’interno della quale il volo è raccomandato per tutti i tipi di aeromobile."
text: "L’apparecchio a motore, in quanto più veloce."
},
{
id: "2",
text: "una porzione di spazio aereo all’interno della quale il volo è vietato."
text: "L’apparecchio a motore, in quanto meno manovrabile."
},
{
id: "3",
text: "una porzione di spazio aereo all’interno della quale il VDS deve essere espressamente autorizzato poiché sono svolte specifiche attività di volo civile o militare.",
text: "L’apparecchio per il volo libero.",
correct: true
}
]
},
{
id: "1031",
question: "È possibile normalmente volare con deltaplano e parapendio all’interno delle zone denominate nelle carte aeronautiche con le lettere P,D, (“PAPA“, “DELTA“)?",
id: "1028",
question: "Che cosa è una zona P “PAPA“?",
points: "3",
answers: [
{
id: "1",
text: "no.",
text: "Una porzione di spazio aereo all’interno della quale è normalmente proibito il volo a tutti gli aeromobili.",
correct: true
},
{
id: "2",
text: "sì, ma solo nei giorni festivi."
text: "Una porzione di spazio aereo all’interno della quale è permesso il volo ai soli parapendio."
},
{
id: "3",
text: "si."
text: "Una porzione di spazio aereo all’interno della quale non possono volare i soli velivoli militari."
}
]
},
{
id: "1032",
question: "In termica decide il senso di rotazione:",
id: "1029",
question: "Che cosa è una zona D “DELTA“?",
points: "3",
answers: [
{
id: "1",
text: "il pilota che per primo entra nella corrente ascensionale stabilisce il senso di rotazione.",
correct: true
text: "Una porzione di spazio aereo all’interno della quale è permesso volare in deltaplano."
},
{
id: "2",
text: "il pilota con meno esperienza deve avere la precedenza."
text: "Una porzione di spazio aereo all’interno della quale è pericoloso volare per tutti i tipi di aeromobile.",
correct: true
},
{
id: "3",
text: "si vira verso destra alla presenza di cumulo e verso sinistra in caso contrario."
text: "Una porzione di spazio aereo all’interno della quale è pericoloso volare per alcuni tipi di aeromobili civili."
}
]
},
{
id: "1033",
question: "Tra un apparecchio per il volo libero ed un apparecchio a motore, chi ha la precedenza in caso di rotte convergenti?",
id: "1030",
question: "Che cosa è una zona R “ROMEO“?",
points: "3",
answers: [
{
id: "1",
text: "l’apparecchio a motore, in quanto più veloce."
text: "Una porzione di spazio aereo all’interno della quale il volo è raccomandato per tutti i tipi di aeromobile."
},
{
id: "2",
text: "l’apparecchio a motore, in quanto meno manovrabile."
},
{
id: "3",
text: "l’apparecchio per il volo libero.",
correct: true
text: "Una porzione di spazio aereo all’interno della quale il volo è vietato."
}
]
},
{
id: "1034",
question: "Due apparecchi vds si trovano su rotte convergenti alla stessa quota. Come si devono comportare i rispettivi piloti?",
question: "Due apparecchi VDS si trovano su rotte convergenti alla stessa quota. Come si devono comportare i rispettivi piloti?",
points: "3",
answers: [
{
id: "1",
text: "uno mantiene la quota e l’altro la cambia per evitare la collisione."
text: "Uno mantiene la quota e l’altro la cambia per evitare la collisione."
},
{
id: "2",
text: "quello che viene da destra continua diritto, l’altro vira per evitare la collisione."
text: "Quello che viene da destra continua diritto, l’altro vira per evitare la collisione."
},
{
id: "3",
text: "entrambi effettuano una virata a destra mantenendo l’altro in vista per evitare la collisione.",
text: "Entrambi effettuano una virata a destra mantenendo l’altro in vista per evitare la collisione.",
correct: true
}
]
@ -648,25 +677,27 @@ const questions = [
{
id: "1035",
question: "Due apparecchi per il VDS privi di motore compiono un volo di pendio e rischiano la collisione frontale. Come si comportano i rispettivi piloti?",
points: "3",
answers: [
{
id: "1",
text: "quello con il pendio alla propria sinistra prosegue diritto, l’altro vira a sinistra per evitare la collisione."
text: "Quello con il pendio alla propria sinistra prosegue diritto, l’altro vira a sinistra per evitare la collisione."
},
{
id: "2",
text: "quello con il pendio alla propria destra prosegue diritto, l’altro vira a destra allontanandosi dal pendio per evitare la collisione.",
text: "Quello con il pendio alla propria destra prosegue diritto, l’altro vira a destra allontanandosi dal pendio per evitare la collisione.",
correct: true
},
{
id: "3",
text: "entrambi possono proseguire diritto, purché tengano conto di un cambio di quota per evitare la collisione."
text: "Entrambi possono proseguire diritto, purché tengano conto di un cambio di quota per evitare la collisione."
}
]
},
{
id: "1036",
question: "In caso di precedenza tra un parapendio monoposto, un parapendio biposto e un deltaplano biposto:",
points: "3",
answers: [
{
id: "1",
@ -686,10 +717,11 @@ const questions = [
{
id: "1037",
question: "Qual è il criterio generale di precedenza per deltaplani e parapendio in atterraggio?",
points: "3",
answers: [
{
id: "1",
text: "dare la precedenza a tutti i deltaplani o parapendio più lenti indipendentemente dalla quota cui si trovano."
text: "Dare la precedenza a tutti i deltaplani o parapendio più lenti indipendentemente dalla quota cui si trovano."
},
{
id: "2",
@ -698,32 +730,34 @@ const questions = [
},
{
id: "3",
text: "dare la precedenza a tutti i piloti più esperti."
text: "Dare la precedenza a tutti i piloti più esperti."
}
]
},
{
id: "1038",
question: "Nel Volo Libero è obbligatoria l’assicurazione R.C.T. del mezzo?",
question: "Nel Volo Libero è obbligatoria l’assicurazione RCT del mezzo?",
points: "3",
answers: [
{
id: "1",
text: "no.",
text: "No.",
correct: true
},
{
id: "2",
text: "si."
text: "Si."
},
{
id: "3",
text: ", ma solo se si vola in luoghi molto frequentati."
text: "Si, ma solo se si vola in luoghi molto frequentati."
}
]
},
{
id: "1039",
question: "Il riporto di un’infrazione alla vigente legge che regola l’attività di Volo Libero dovrebbe essere fatto in prima istanza alla Competente Autorità che è:",
points: "3",
answers: [
{
id: "1",

105
vds-app/App/data/materials.js

@ -2,6 +2,7 @@ const questions = [
{
id: "8001",
question: "È più preoccupante un taglio sulla superficie del parapendio in corrispondenza:",
points: "2",
answers: [
{
id: "1",
@ -21,6 +22,7 @@ const questions = [
{
id: "8002",
question: "I cordini del parapendio devono essere di materiale:",
points: "2",
answers: [
{
id: "1",
@ -40,6 +42,7 @@ const questions = [
{
id: "8003",
question: "Durante il volo in parapendio sono sottoposti al maggior carico i cordini:",
points: "2",
answers: [
{
id: "1",
@ -48,7 +51,7 @@ const questions = [
},
{
id: "2",
text: "Posteriori."
text: "posteriori."
},
{
id: "3",
@ -59,18 +62,19 @@ const questions = [
{
id: "8004",
question: "Il parapendio è generalmente fabbricato con materiale “rip-stop”. Che cosa significa?",
points: "2",
answers: [
{
id: "1",
text: "che il tessuto stesso non può strapparsi, ma solo tagliarsi."
text: "Che il tessuto stesso non può strapparsi, ma solo tagliarsi."
},
{
id: "2",
text: "che un eventuale taglio o strappo nel tessuto ha molte probabilità di estendersi pericolosamente."
text: "Che un eventuale taglio o strappo nel tessuto ha molte probabilità di estendersi pericolosamente."
},
{
id: "3",
text: "che un eventuale taglio o strappo nel tessuto ha poche probabilità di estendersi pericolosamente.",
text: "Che un eventuale taglio o strappo nel tessuto ha poche probabilità di estendersi pericolosamente.",
correct: true
}
]
@ -78,18 +82,19 @@ const questions = [
{
id: "8005",
question: "Il tessuto con cui è generalmente costruito un parapendio deve essere:",
points: "2",
answers: [
{
id: "1",
text: "resistente all’usura, molto elastico e gaspermeabile."
text: "resistente all’usura, molto elastico e gas permeabile."
},
{
id: "2",
text: "resistente all’usura, anelastico e gaspermeabile."
text: "resistente all’usura, anelastico e gas permeabile."
},
{
id: "3",
text: "resistente all’usura, anelastico e non gaspermeabile.",
text: "resistente all’usura, anelastico e non gas permeabile.",
correct: true
}
]
@ -97,44 +102,27 @@ const questions = [
{
id: "8006",
question: "Quali agenti esterni danneggiano maggiormente il tessuto di un parapendio rendendolo fragile e gas-permeabile?",
points: "2",
answers: [
{
id: "1",
text: "i raggi ultravioletti e l’umidità.",
text: "I raggi ultravioletti e l’umidità.",
correct: true
},
{
id: "2",
text: "i raggi infrarossi e l’umidità."
text: "I raggi infrarossi e l’umidità."
},
{
id: "3",
text: "i raggi infrarossi ed il caldo secco."
}
]
},
{
id: "8007",
question: "Se il tessuto di un parapendio è divenuto poroso:",
answers: [
{
id: "1",
text: "risulta compromesso solo il suo aspetto."
},
{
id: "2",
text: "risultano un poco degradate solo le sue prestazioni."
},
{
id: "3",
text: "risultano degradate le sue prestazioni e compromessa la sua affidabilità.",
correct: true
text: "I raggi infrarossi ed il caldo secco."
}
]
},
{
id: "8008",
question: "Dovendo riporre un parapendio si avrà cura di farlo:",
points: "2",
answers: [
{
id: "1",
@ -153,7 +141,8 @@ const questions = [
},
{
id: "8009",
question: "Il cordino di un parapendio è rimasto impigliato ed il kevlar che ne costituisce l’anima è ora privo di rivestimento , ma integro:",
question: "Il cordino di un parapendio è rimasto impigliato ed il kevlar che ne costituisce l’anima è ora privo di rivestimento, ma integro:",
points: "2",
answers: [
{
id: "1",
@ -173,6 +162,7 @@ const questions = [
{
id: "8010",
question: "Decidiamo di sostituire i maillons dell’imbrago con moschettoni. Avremo cura di:",
points: "2",
answers: [
{
id: "1",
@ -192,18 +182,39 @@ const questions = [
{
id: "8011",
question: "Che cosa è necessario verificare in corrispondenza di piombature di cavi e tiranti del deltaplano?",
points: "2",
answers: [
{
id: "1",
text: "che i cavi ed i tiranti non siano rotti sotto la piombatura."
text: "Che i cavi ed i tiranti non siano rotti sotto la piombatura."
},
{
id: "2",
text: "che le piombature siano semplicemente in buono stato."
text: "Che le piombature siano semplicemente in buono stato."
},
{
id: "3",
text: "che le piombature siano in buono stato ed i cavi o tiranti non presentino segni di logoramento in vicinanza delle piombature stesse.",
text: "Che le piombature siano in buono stato ed i cavi o tiranti non presentino segni di logoramento in vicinanza delle piombature stesse.",
correct: true
}
]
},
{
id: "8007",
question: "Se il tessuto di un parapendio è divenuto poroso:",
points: "2",
answers: [
{
id: "1",
text: "risulta compromesso solo il suo aspetto."
},
{
id: "2",
text: "risultano un poco degradate solo le sue prestazioni."
},
{
id: "3",
text: "risultano degradate le sue prestazioni e compromessa la sua affidabilità.",
correct: true
}
]
@ -211,6 +222,7 @@ const questions = [
{
id: "8012",
question: "Se ci accorgiamo che qualche tirante del deltaplano è sfilacciato o logoro:",
points: "2",
answers: [
{
id: "1",
@ -229,26 +241,28 @@ const questions = [
},
{
id: "8013",
question: "Durante l’ultimo volo in deltaplano abbiamo effettuato un atterraggio pesante. Il crossbar ed un montante si sono piegati:",
question: "Durante l’ultimo volo in deltaplano abbiamo effettuato un atterraggio pesante. Il cross bar ed un montante si sono piegati:",
points: "2",
answers: [
{
id: "1",
text: "riandiamo in volo avendo sostituito il montante e raddrizzato perfettamente il crossbar."
text: "riandiamo in volo avendo sostituito il montante e raddrizzato perfettamente il cross bar."
},
{
id: "2",
text: "riandiamo in volo solo dopo aver sostituito il montante ed il crossbar con ricambi originali.",
text: "riandiamo in volo solo dopo aver sostituito il montante ed il cross bar con ricambi originali.",
correct: true
},
{
id: "3",
text: "riandiamo in volo avendo raddrizzato perfettamente montante e crossbar."
text: "riandiamo in volo avendo raddrizzato perfettamente montante e cross bar."
}
]
},
{
id: "8014",
question: "Il materiale di cui sono rivestite le superfici di un deltaplano si deteriora particolarmente se esposto a lungo a:",
points: "2",
answers: [
{
id: "1",
@ -268,6 +282,7 @@ const questions = [
{
id: "8015",
question: "Se si deve riporre il deltaplano per un lungo periodo dovremo aver cura di:",
points: "2",
answers: [
{
id: "1",
@ -287,6 +302,7 @@ const questions = [
{
id: "8016",
question: "Se in corrispondenza di qualche elemento costituente il corredo di tiranteria o bulloneria del deltaplano si riscontra presenza di ruggine:",
points: "2",
answers: [
{
id: "1",
@ -306,25 +322,27 @@ const questions = [
{
id: "8017",
question: "Quale norma deve essere rispettata nella manutenzione del paracadute di soccorso?",
points: "2",
answers: [
{
id: "1",
text: "mai aprirlo perché si potrebbe commettere un errore nel ripiegarlo."
text: "Mai aprirlo perché si potrebbe commettere un errore nel ripiegarlo."
},
{
id: "2",
text: "aprirlo alle scadenze previste o se bagnato e ripiegarlo sotto la supervisione di persone competenti.",
text: "Aprirlo alle scadenze previste o se bagnato e ripiegarlo sotto la supervisione di persone competenti.",
correct: true
},
{
id: "3",
text: "aprirlo, farlo asciugare in luogo asciutto e ripiegarlo solo se siamo certi che sia bagnato o inumidito."
text: "Aprirlo, farlo asciugare in luogo asciutto e ripiegarlo solo se siamo certi che sia bagnato o inumidito."
}
]
},
{
id: "8018",
question: "Riguardo al paracadute di soccorso è necessario accertare prima di ogni volo che:",
points: "2",
answers: [
{
id: "1",
@ -344,19 +362,20 @@ const questions = [
{
id: "8019",
question: "Per quale motivo un paracadute di soccorso che non sia stato sottoposto a periodica ispezione non garantisce sufficiente affidabilità?",
points: "2",
answers: [
{
id: "1",
text: "perché il materiale con cui è fabbricato si deteriora rapidamente se non gli si fa prendere aria ogni tanto."
text: "Perché il materiale con cui è fabbricato si deteriora rapidamente se non gli si fa prendere aria ogni tanto."
},
{
id: "2",
text: "perché il materiale con cui è fabbricato può “incollarsi” per effetto del ripiegamento nella sacca, non garantendo una corretta e pronta apertura in caso di bisogno.",
text: "Perché il materiale con cui è fabbricato può “incollarsi” per effetto del ripiegamento nella sacca, non garantendo una corretta e pronta apertura in caso di bisogno.",
correct: true
},
{
id: "3",
text: "perché la fune di vincolo deve essere verificata ogni tanto in quanto può deteriorarsi con il ischio che si strappi in caso di utilizzo."
text: "Perché la fune di vincolo deve essere verificata ogni tanto in quanto può deteriorarsi con il rischio che si strappi in caso di utilizzo."
}
]
}

669
vds-app/App/data/meteorology.js

File diff suppressed because it is too large

57
vds-app/App/data/physiopathology.js

@ -2,25 +2,27 @@ const questions = [
{
id: "4001",
question: "Come varia la pressione parziale dell’ossigeno a livello polmonare, al variare dell’altitudine?",
points: "2",
answers: [
{
id: "1",
text: "diminuisce all’aumentare dell’altitudine.",
text: "Diminuisce all’aumentare dell’altitudine.",
correct: true
},
{
id: "2",
text: "diminuisce all’aumentare dell’altitudine, ma non scende mai sotto valori di guardia."
text: "Diminuisce all’aumentare dell’altitudine, ma non scende mai sotto valori di guardia."
},
{
id: "3",
text: "aumenta all’aumentare dell’altitudine."
text: "Aumenta all’aumentare dell’altitudine."
}
]
},
{
id: "4002",
question: "Ad elevate altitudini nell’organismo umano si instaura una situazione alterata, prodotta dalla ridotta pressione di ossigeno. Essa prende il nome di:",
points: "2",
answers: [
{
id: "1",
@ -40,18 +42,19 @@ const questions = [
{
id: "4003",
question: "Che cosa è l’ipossia?",
points: "2",
answers: [
{
id: "1",
text: "è lo stato in cui l’organismo viene a trovarsi a causa dell’insufficiente pressione sanguigna dovuta alla quota."
text: "È lo stato in cui l’organismo viene a trovarsi a causa dell’insufficiente pressione sanguigna dovuta alla quota."
},
{
id: "2",
text: "è lo stato in cui l’organismo viene a trovarsi a causa dell’insufficiente temperatura corporea dovuta alla quota."
text: "È lo stato in cui l’organismo viene a trovarsi a causa dell’insufficiente temperatura corporea dovuta alla quota."
},
{
id: "3",
text: "è lo stato in cui l’organismo viene a trovarsi a causa dell’insufficiente pressione dell’ossigeno a livello degli alveoli polmonari dovuta alla quota.",
text: "È lo stato in cui l’organismo viene a trovarsi a causa dell’insufficiente pressione dell’ossigeno a livello degli alveoli polmonari dovuta alla quota.",
correct: true
}
]
@ -59,56 +62,59 @@ const questions = [
{
id: "4004",
question: "Quali sono gli effetti dell’ipossia?",
points: "2",
answers: [
{
id: "1",
text: "diminuzione dell’efficienza mentale, nausea, euforia, aumento del ritmo di ventilazione polmonare.",
text: "Diminuzione dell’efficienza mentale, nausea, euforia, aumento del ritmo di ventilazione polmonare.",
correct: true
},
{
id: "2",
text: "vasodilatazione periferica, secchezza delle fauci, rigidità muscolare, diminuzione del ritmo di ventilazione polmonare."
text: "Vasodilatazione periferica, secchezza delle fauci, rigidità muscolare, diminuzione del ritmo di ventilazione polmonare."
},
{
id: "3",
text: "diminuzione della pressione arteriosa, ischemia periferica, paralisi dei centri respiratori."
text: "Diminuzione della pressione arteriosa, ischemia periferica, paralisi dei centri respiratori."
}
]
},
{
id: "4005",
question: "La decompressione da alta quota può dar luogo a liberazione di bolle gassose nel sangue, detti emboli. Qual è la condizione in cui questo pericoloso fenomeno può verificarsi con maggiore facilità?",
points: "2",
answers: [
{
id: "1",
text: "lenta ascensione oltre i 7000 metri."
text: "Lenta ascensione oltre i 7000 metri."
},
{
id: "2",
text: "rapida ascensione a 7000 metri ed oltre.",
text: "Rapida ascensione a 7000 metri ed oltre.",
correct: true
},
{
id: "3",
text: "permanenza ad alta quota dopo lungo periodo di ambientamento. DEL VOLO"
text: "Permanenza ad alta quota dopo lungo periodo di ambientamento. DEL VOLO"
}
]
},
{
id: "4006",
question: "Durante il volo il corpo umano è sottoposto a vari tipi di accelerazione. Quali sono meglio sopportate tra quelle positive (testa-piedi) e quelle negative (piedi-testa)?",
points: "2",
answers: [
{
id: "1",
text: "entrambe in uguale misura."
text: "Entrambe in uguale misura."
},
{
id: "2",
text: "quelle negative."
text: "Quelle negative."
},
{
id: "3",
text: "quelle positive.",
text: "Quelle positive.",
correct: true
}
]
@ -116,57 +122,60 @@ const questions = [
{
id: "4007",
question: "Le accelerazioni positive (testa-piedi) corrispondono a un aumento dei “G” o meglio a un aumento fittizio dell’accelerazione di gravità. Quando si possono manifestare in volo?",
points: "2",
answers: [
{
id: "1",
text: "durante virate corrette.",
text: "Durante virate corrette.",
correct: true
},
{
id: "2",
text: "durante il volo su traiettoria rettilinea con forte pendenza."
text: "Durante il volo su traiettoria rettilinea con forte pendenza."
},
{
id: "3",
text: "durante brusche manovre di picchiata."
text: "Durante brusche manovre di picchiata."
}
]
},
{
id: "4008",
question: "Le accelerazioni negative (piedi-testa) corrispondono a una diminuzione dei “G” o meglio a una diminuzione fittizia della accelerazione di gravità. Quando si possono manifestare in volo?",
points: "2",
answers: [
{
id: "1",
text: "durante una brusca richiamata."
text: "Durante una brusca richiamata."
},
{
id: "2",
text: "durante brusche manovre di picchiata.",
text: "Durante brusche manovre di picchiata.",
correct: true
},
{
id: "3",
text: "durante il volo su traiettoria rettilinea con forte pendenza."
text: "Durante il volo su traiettoria rettilinea con forte pendenza."
}
]
},
{
id: "4009",
question: "Quando sussiste in volo il rischio che il pilota soffra di un oscuramento della vista a seguito di manovre che inducono forti accelerazioni?",
points: "2",
answers: [
{
id: "1",
text: "quando le accelerazioni indotte sono del tipo positivo (testa-piedi) e superano i 4 “G” per un tempo superiore a 4 secondi.",
text: "Quando le accelerazioni indotte sono del tipo positivo (testa-piedi) e superano i 4 “G” per un tempo superiore a 4 secondi.",
correct: true
},
{
id: "2",
text: "quando comunque sono del tipo negativo (piedi-testa)."
text: "Quando comunque sono del tipo negativo (piedi-testa)."
},
{
id: "3",
text: "quando si passa da accelerazioni positive ad accelerazioni negative senza soluzione di continuità in meno di 4 secondi."
text: "Quando si passa da accelerazioni positive ad accelerazioni negative senza soluzione di continuità in meno di 4 secondi."
}
]
}

379
vds-app/App/data/pilotingTechniques.js

File diff suppressed because it is too large

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save