@ovok/native 1.5.5 → 1.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +27 -17
- package/app.plugin.js +104 -0
- package/lib/commonjs/index.js +11 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/modules/auth/delete-account-button/components/delete-account-button.js +2 -0
- package/lib/commonjs/modules/auth/delete-account-button/components/delete-account-button.js.map +1 -1
- package/lib/commonjs/modules/auth/hooks/use-rate-limit-cooldown.js +23 -0
- package/lib/commonjs/modules/auth/hooks/use-rate-limit-cooldown.js.map +1 -0
- package/lib/commonjs/modules/auth/hooks/use-session.js +91 -0
- package/lib/commonjs/modules/auth/hooks/use-session.js.map +1 -0
- package/lib/commonjs/modules/auth/index.js +44 -0
- package/lib/commonjs/modules/auth/index.js.map +1 -1
- package/lib/commonjs/modules/auth/logout-button/components/logout-button.js +3 -1
- package/lib/commonjs/modules/auth/logout-button/components/logout-button.js.map +1 -1
- package/lib/commonjs/modules/auth/register/components/form/inputs.js +48 -1
- package/lib/commonjs/modules/auth/register/components/form/inputs.js.map +1 -1
- package/lib/commonjs/modules/auth/register/components/form/register-button.js +4 -0
- package/lib/commonjs/modules/auth/register/components/form/register-button.js.map +1 -1
- package/lib/commonjs/modules/auth/register/components/form/register-form-provider.js +6 -0
- package/lib/commonjs/modules/auth/register/components/form/register-form-provider.js.map +1 -1
- package/lib/commonjs/modules/auth/reset-password/components/form/inputs.js +12 -0
- package/lib/commonjs/modules/auth/reset-password/components/form/inputs.js.map +1 -1
- package/lib/commonjs/modules/auth/reset-password/components/form/reset-password-button.js +4 -0
- package/lib/commonjs/modules/auth/reset-password/components/form/reset-password-button.js.map +1 -1
- package/lib/commonjs/modules/auth/reset-password/components/form/reset-password-form-provider.js +7 -1
- package/lib/commonjs/modules/auth/reset-password/components/form/reset-password-form-provider.js.map +1 -1
- package/lib/commonjs/modules/auth/session/components/session-list.js +82 -0
- package/lib/commonjs/modules/auth/session/components/session-list.js.map +1 -0
- package/lib/commonjs/modules/auth/session/events.js +19 -0
- package/lib/commonjs/modules/auth/session/events.js.map +1 -0
- package/lib/commonjs/modules/auth/session/index.js +13 -0
- package/lib/commonjs/modules/auth/session/index.js.map +1 -0
- package/lib/commonjs/modules/auth/session/types/session-list-props.js +6 -0
- package/lib/commonjs/modules/auth/session/types/session-list-props.js.map +1 -0
- package/lib/commonjs/modules/auth/sign-in/components/form/inputs.js +25 -0
- package/lib/commonjs/modules/auth/sign-in/components/form/inputs.js.map +1 -1
- package/lib/commonjs/modules/auth/sign-in/components/form/login-form-provider.js +48 -1
- package/lib/commonjs/modules/auth/sign-in/components/form/login-form-provider.js.map +1 -1
- package/lib/commonjs/modules/auth/sign-in/components/form/mfa-code-input.js +58 -0
- package/lib/commonjs/modules/auth/sign-in/components/form/mfa-code-input.js.map +1 -0
- package/lib/commonjs/modules/auth/sign-in/components/form/sign-in-with-email.js +2 -0
- package/lib/commonjs/modules/auth/sign-in/components/form/sign-in-with-email.js.map +1 -1
- package/lib/commonjs/modules/auth/sign-in/components/form/signin-button.js +13 -5
- package/lib/commonjs/modules/auth/sign-in/components/form/signin-button.js.map +1 -1
- package/lib/commonjs/modules/auth/types/session.js +2 -0
- package/lib/commonjs/modules/auth/types/session.js.map +1 -0
- package/lib/commonjs/modules/auth/utils/rate-limit.js +37 -0
- package/lib/commonjs/modules/auth/utils/rate-limit.js.map +1 -0
- package/lib/commonjs/modules/background-sync/android-bluetooth-foreground-service.js +3 -2
- package/lib/commonjs/modules/background-sync/android-bluetooth-foreground-service.js.map +1 -1
- package/lib/commonjs/modules/background-sync/background-safe-storage.js +79 -0
- package/lib/commonjs/modules/background-sync/background-safe-storage.js.map +1 -0
- package/lib/commonjs/modules/background-sync/index.js +11 -0
- package/lib/commonjs/modules/background-sync/index.js.map +1 -1
- package/lib/commonjs/modules/bt-management/components/bt-provider-child-wrapper.js +123 -21
- package/lib/commonjs/modules/bt-management/components/bt-provider-child-wrapper.js.map +1 -1
- package/lib/commonjs/modules/bt-management/hooks/runtime-context.js +91 -0
- package/lib/commonjs/modules/bt-management/hooks/runtime-context.js.map +1 -0
- package/lib/commonjs/modules/bt-management/hooks/use-background-sync.js +47 -0
- package/lib/commonjs/modules/bt-management/hooks/use-background-sync.js.map +1 -0
- package/lib/commonjs/modules/bt-management/hooks/use-bluetooth-state.js +51 -0
- package/lib/commonjs/modules/bt-management/hooks/use-bluetooth-state.js.map +1 -0
- package/lib/commonjs/modules/bt-management/hooks/use-device-connection.js +36 -0
- package/lib/commonjs/modules/bt-management/hooks/use-device-connection.js.map +1 -0
- package/lib/commonjs/modules/bt-management/hooks/use-health-import.js +46 -0
- package/lib/commonjs/modules/bt-management/hooks/use-health-import.js.map +1 -0
- package/lib/commonjs/modules/bt-management/hooks/use-measurements.js +57 -0
- package/lib/commonjs/modules/bt-management/hooks/use-measurements.js.map +1 -0
- package/lib/commonjs/modules/bt-management/hooks/use-nearby-devices.js +26 -0
- package/lib/commonjs/modules/bt-management/hooks/use-nearby-devices.js.map +1 -0
- package/lib/commonjs/modules/bt-management/hooks/use-paired-devices.js +49 -0
- package/lib/commonjs/modules/bt-management/hooks/use-paired-devices.js.map +1 -0
- package/lib/commonjs/modules/bt-management/index.js +143 -0
- package/lib/commonjs/modules/bt-management/index.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/background-sync/background-sync-coordinator.js +41 -4
- package/lib/commonjs/modules/bt-management/services/background-sync/background-sync-coordinator.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/bt-manager.js +75 -4
- package/lib/commonjs/modules/bt-management/services/bt-manager.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-connection-handler.js +57 -0
- package/lib/commonjs/modules/bt-management/services/devices/bt-connection-handler.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js +111 -3
- package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/measurement-state-machine.js +5 -3
- package/lib/commonjs/modules/bt-management/services/devices/measurement-state-machine.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/spo/spo2.main-services.js +12 -0
- package/lib/commonjs/modules/bt-management/services/devices/spo/spo2.main-services.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval-activity-sequencer.js +9 -3
- package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval-activity-sequencer.js.map +1 -1
- package/lib/commonjs/modules/bt-management/testing/fake-ble-manager.js +52 -0
- package/lib/commonjs/modules/bt-management/testing/fake-ble-manager.js.map +1 -0
- package/lib/commonjs/modules/bt-management/testing/index.js +28 -0
- package/lib/commonjs/modules/bt-management/testing/index.js.map +1 -0
- package/lib/commonjs/modules/bt-management/testing/recorded-frames.js +23 -0
- package/lib/commonjs/modules/bt-management/testing/recorded-frames.js.map +1 -0
- package/lib/commonjs/modules/bt-management/types/bluetooth-error.js +80 -0
- package/lib/commonjs/modules/bt-management/types/bluetooth-error.js.map +1 -0
- package/lib/commonjs/modules/bt-management/types/device-connection-event.js +6 -0
- package/lib/commonjs/modules/bt-management/types/device-connection-event.js.map +1 -0
- package/lib/commonjs/modules/bt-management/types/result-policy.js +6 -0
- package/lib/commonjs/modules/bt-management/types/result-policy.js.map +1 -0
- package/lib/commonjs/modules/bt-management/utils/result-identity.js +63 -0
- package/lib/commonjs/modules/bt-management/utils/result-identity.js.map +1 -0
- package/lib/commonjs/modules/data-sync/components/android/android-health-connect-authorization-provider.js +8 -2
- package/lib/commonjs/modules/data-sync/components/android/android-health-connect-authorization-provider.js.map +1 -1
- package/lib/commonjs/modules/data-sync/services/base-health-sync-service.js +23 -4
- package/lib/commonjs/modules/data-sync/services/base-health-sync-service.js.map +1 -1
- package/lib/commonjs/modules/data-sync/services/managers/data-processor.js +2 -2
- package/lib/commonjs/modules/data-sync/services/managers/data-processor.js.map +1 -1
- package/lib/commonjs/modules/data-sync/services/managers/sync-progress-manager.js +1 -1
- package/lib/commonjs/modules/data-sync/services/managers/sync-progress-manager.js.map +1 -1
- package/lib/commonjs/modules/data-sync/utils/retry-save.js +65 -0
- package/lib/commonjs/modules/data-sync/utils/retry-save.js.map +1 -0
- package/lib/commonjs/modules/helpers/form-items/form-field.js +2 -0
- package/lib/commonjs/modules/helpers/form-items/form-field.js.map +1 -1
- package/lib/commonjs/modules/helpers/index.js +12 -0
- package/lib/commonjs/modules/helpers/index.js.map +1 -1
- package/lib/commonjs/modules/helpers/utils/s-log.js +4 -13
- package/lib/commonjs/modules/helpers/utils/s-log.js.map +1 -1
- package/lib/commonjs/modules/helpers/utils/sentry-logger.js +28 -17
- package/lib/commonjs/modules/helpers/utils/sentry-logger.js.map +1 -1
- package/lib/commonjs/modules/helpers/utils/telemetry.js +143 -0
- package/lib/commonjs/modules/helpers/utils/telemetry.js.map +1 -0
- package/lib/commonjs/modules/image/components/optimized-image.js +24 -2
- package/lib/commonjs/modules/image/components/optimized-image.js.map +1 -1
- package/lib/commonjs/modules/questionnaire-response-form/components/content/questionnaire-content-error.js +18 -9
- package/lib/commonjs/modules/questionnaire-response-form/components/content/questionnaire-content-error.js.map +1 -1
- package/lib/commonjs/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-next-button.js +3 -2
- package/lib/commonjs/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-next-button.js.map +1 -1
- package/lib/commonjs/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-submit-button.js +4 -2
- package/lib/commonjs/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-submit-button.js.map +1 -1
- package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-form-provider.js +42 -17
- package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-form-provider.js.map +1 -1
- package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-navigation-provider.js +2 -1
- package/lib/commonjs/modules/questionnaire-response-form/components/questionnaire-navigation-provider.js.map +1 -1
- package/lib/commonjs/modules/questionnaire-response-form/contexts/questionnaire-navigation-context.js.map +1 -1
- package/lib/commonjs/modules/tile/components/task-icon.js +2 -1
- package/lib/commonjs/modules/tile/components/task-icon.js.map +1 -1
- package/lib/commonjs/modules/ui/components/background-sync-setting.js +113 -0
- package/lib/commonjs/modules/ui/components/background-sync-setting.js.map +1 -0
- package/lib/commonjs/modules/ui/components/bluetooth-state-notice.js +105 -0
- package/lib/commonjs/modules/ui/components/bluetooth-state-notice.js.map +1 -0
- package/lib/commonjs/modules/ui/components/ecg-strip-viewer.js +165 -0
- package/lib/commonjs/modules/ui/components/ecg-strip-viewer.js.map +1 -0
- package/lib/commonjs/modules/ui/components/health-import-card.js +130 -0
- package/lib/commonjs/modules/ui/components/health-import-card.js.map +1 -0
- package/lib/commonjs/modules/ui/components/manual-entry-form.js +123 -0
- package/lib/commonjs/modules/ui/components/manual-entry-form.js.map +1 -0
- package/lib/commonjs/modules/ui/components/pairing-flow.js +222 -0
- package/lib/commonjs/modules/ui/components/pairing-flow.js.map +1 -0
- package/lib/commonjs/modules/ui/components/supported-devices-catalog-list.js +99 -0
- package/lib/commonjs/modules/ui/components/supported-devices-catalog-list.js.map +1 -0
- package/lib/commonjs/modules/ui/components/urine-test-result.js +94 -0
- package/lib/commonjs/modules/ui/components/urine-test-result.js.map +1 -0
- package/lib/commonjs/modules/ui/index.js +116 -0
- package/lib/commonjs/modules/ui/index.js.map +1 -0
- package/lib/commonjs/modules/ui/types.js +6 -0
- package/lib/commonjs/modules/ui/types.js.map +1 -0
- package/lib/commonjs/modules/ui/use-ovok-ui.js +51 -0
- package/lib/commonjs/modules/ui/use-ovok-ui.js.map +1 -0
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/modules/auth/delete-account-button/components/delete-account-button.js +2 -0
- package/lib/module/modules/auth/delete-account-button/components/delete-account-button.js.map +1 -1
- package/lib/module/modules/auth/hooks/use-rate-limit-cooldown.js +17 -0
- package/lib/module/modules/auth/hooks/use-rate-limit-cooldown.js.map +1 -0
- package/lib/module/modules/auth/hooks/use-session.js +85 -0
- package/lib/module/modules/auth/hooks/use-session.js.map +1 -0
- package/lib/module/modules/auth/index.js +4 -0
- package/lib/module/modules/auth/index.js.map +1 -1
- package/lib/module/modules/auth/logout-button/components/logout-button.js +3 -1
- package/lib/module/modules/auth/logout-button/components/logout-button.js.map +1 -1
- package/lib/module/modules/auth/register/components/form/inputs.js +48 -1
- package/lib/module/modules/auth/register/components/form/inputs.js.map +1 -1
- package/lib/module/modules/auth/register/components/form/register-button.js +4 -0
- package/lib/module/modules/auth/register/components/form/register-button.js.map +1 -1
- package/lib/module/modules/auth/register/components/form/register-form-provider.js +6 -0
- package/lib/module/modules/auth/register/components/form/register-form-provider.js.map +1 -1
- package/lib/module/modules/auth/reset-password/components/form/inputs.js +12 -0
- package/lib/module/modules/auth/reset-password/components/form/inputs.js.map +1 -1
- package/lib/module/modules/auth/reset-password/components/form/reset-password-button.js +4 -0
- package/lib/module/modules/auth/reset-password/components/form/reset-password-button.js.map +1 -1
- package/lib/module/modules/auth/reset-password/components/form/reset-password-form-provider.js +7 -1
- package/lib/module/modules/auth/reset-password/components/form/reset-password-form-provider.js.map +1 -1
- package/lib/module/modules/auth/session/components/session-list.js +76 -0
- package/lib/module/modules/auth/session/components/session-list.js.map +1 -0
- package/lib/module/modules/auth/session/events.js +13 -0
- package/lib/module/modules/auth/session/events.js.map +1 -0
- package/lib/module/modules/auth/session/index.js +4 -0
- package/lib/module/modules/auth/session/index.js.map +1 -0
- package/lib/module/modules/auth/session/types/session-list-props.js +4 -0
- package/lib/module/modules/auth/session/types/session-list-props.js.map +1 -0
- package/lib/module/modules/auth/sign-in/components/form/inputs.js +25 -0
- package/lib/module/modules/auth/sign-in/components/form/inputs.js.map +1 -1
- package/lib/module/modules/auth/sign-in/components/form/login-form-provider.js +48 -1
- package/lib/module/modules/auth/sign-in/components/form/login-form-provider.js.map +1 -1
- package/lib/module/modules/auth/sign-in/components/form/mfa-code-input.js +52 -0
- package/lib/module/modules/auth/sign-in/components/form/mfa-code-input.js.map +1 -0
- package/lib/module/modules/auth/sign-in/components/form/sign-in-with-email.js +2 -0
- package/lib/module/modules/auth/sign-in/components/form/sign-in-with-email.js.map +1 -1
- package/lib/module/modules/auth/sign-in/components/form/signin-button.js +13 -5
- package/lib/module/modules/auth/sign-in/components/form/signin-button.js.map +1 -1
- package/lib/module/modules/auth/types/session.js +2 -0
- package/lib/module/modules/auth/types/session.js.map +1 -0
- package/lib/module/modules/auth/utils/rate-limit.js +31 -0
- package/lib/module/modules/auth/utils/rate-limit.js.map +1 -0
- package/lib/module/modules/background-sync/android-bluetooth-foreground-service.js +3 -2
- package/lib/module/modules/background-sync/android-bluetooth-foreground-service.js.map +1 -1
- package/lib/module/modules/background-sync/background-safe-storage.js +74 -0
- package/lib/module/modules/background-sync/background-safe-storage.js.map +1 -0
- package/lib/module/modules/background-sync/index.js +1 -0
- package/lib/module/modules/background-sync/index.js.map +1 -1
- package/lib/module/modules/bt-management/components/bt-provider-child-wrapper.js +123 -21
- package/lib/module/modules/bt-management/components/bt-provider-child-wrapper.js.map +1 -1
- package/lib/module/modules/bt-management/hooks/runtime-context.js +82 -0
- package/lib/module/modules/bt-management/hooks/runtime-context.js.map +1 -0
- package/lib/module/modules/bt-management/hooks/use-background-sync.js +41 -0
- package/lib/module/modules/bt-management/hooks/use-background-sync.js.map +1 -0
- package/lib/module/modules/bt-management/hooks/use-bluetooth-state.js +45 -0
- package/lib/module/modules/bt-management/hooks/use-bluetooth-state.js.map +1 -0
- package/lib/module/modules/bt-management/hooks/use-device-connection.js +30 -0
- package/lib/module/modules/bt-management/hooks/use-device-connection.js.map +1 -0
- package/lib/module/modules/bt-management/hooks/use-health-import.js +40 -0
- package/lib/module/modules/bt-management/hooks/use-health-import.js.map +1 -0
- package/lib/module/modules/bt-management/hooks/use-measurements.js +51 -0
- package/lib/module/modules/bt-management/hooks/use-measurements.js.map +1 -0
- package/lib/module/modules/bt-management/hooks/use-nearby-devices.js +20 -0
- package/lib/module/modules/bt-management/hooks/use-nearby-devices.js.map +1 -0
- package/lib/module/modules/bt-management/hooks/use-paired-devices.js +43 -0
- package/lib/module/modules/bt-management/hooks/use-paired-devices.js.map +1 -0
- package/lib/module/modules/bt-management/index.js +13 -0
- package/lib/module/modules/bt-management/index.js.map +1 -1
- package/lib/module/modules/bt-management/services/background-sync/background-sync-coordinator.js +41 -4
- package/lib/module/modules/bt-management/services/background-sync/background-sync-coordinator.js.map +1 -1
- package/lib/module/modules/bt-management/services/bt-manager.js +75 -4
- package/lib/module/modules/bt-management/services/bt-manager.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bt-connection-handler.js +57 -0
- package/lib/module/modules/bt-management/services/devices/bt-connection-handler.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bt-managed-device.js +111 -3
- package/lib/module/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/measurement-state-machine.js +5 -3
- package/lib/module/modules/bt-management/services/devices/measurement-state-machine.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/spo/spo2.main-services.js +12 -0
- package/lib/module/modules/bt-management/services/devices/spo/spo2.main-services.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/veroval/veroval-activity-sequencer.js +9 -3
- package/lib/module/modules/bt-management/services/devices/veroval/veroval-activity-sequencer.js.map +1 -1
- package/lib/module/modules/bt-management/testing/fake-ble-manager.js +48 -0
- package/lib/module/modules/bt-management/testing/fake-ble-manager.js.map +1 -0
- package/lib/module/modules/bt-management/testing/index.js +5 -0
- package/lib/module/modules/bt-management/testing/index.js.map +1 -0
- package/lib/module/modules/bt-management/testing/recorded-frames.js +17 -0
- package/lib/module/modules/bt-management/testing/recorded-frames.js.map +1 -0
- package/lib/module/modules/bt-management/types/bluetooth-error.js +74 -0
- package/lib/module/modules/bt-management/types/bluetooth-error.js.map +1 -0
- package/lib/module/modules/bt-management/types/device-connection-event.js +4 -0
- package/lib/module/modules/bt-management/types/device-connection-event.js.map +1 -0
- package/lib/module/modules/bt-management/types/device-measurement-map.js.map +1 -1
- package/lib/module/modules/bt-management/types/result-policy.js +4 -0
- package/lib/module/modules/bt-management/types/result-policy.js.map +1 -0
- package/lib/module/modules/bt-management/utils/result-identity.js +57 -0
- package/lib/module/modules/bt-management/utils/result-identity.js.map +1 -0
- package/lib/module/modules/data-sync/components/android/android-health-connect-authorization-provider.js +8 -2
- package/lib/module/modules/data-sync/components/android/android-health-connect-authorization-provider.js.map +1 -1
- package/lib/module/modules/data-sync/services/base-health-sync-service.js +23 -4
- package/lib/module/modules/data-sync/services/base-health-sync-service.js.map +1 -1
- package/lib/module/modules/data-sync/services/managers/data-processor.js +2 -2
- package/lib/module/modules/data-sync/services/managers/data-processor.js.map +1 -1
- package/lib/module/modules/data-sync/services/managers/sync-progress-manager.js +1 -1
- package/lib/module/modules/data-sync/services/managers/sync-progress-manager.js.map +1 -1
- package/lib/module/modules/data-sync/utils/retry-save.js +60 -0
- package/lib/module/modules/data-sync/utils/retry-save.js.map +1 -0
- package/lib/module/modules/helpers/form-items/form-field.js +2 -0
- package/lib/module/modules/helpers/form-items/form-field.js.map +1 -1
- package/lib/module/modules/helpers/index.js +1 -0
- package/lib/module/modules/helpers/index.js.map +1 -1
- package/lib/module/modules/helpers/utils/s-log.js +4 -12
- package/lib/module/modules/helpers/utils/s-log.js.map +1 -1
- package/lib/module/modules/helpers/utils/sentry-logger.js +26 -14
- package/lib/module/modules/helpers/utils/sentry-logger.js.map +1 -1
- package/lib/module/modules/helpers/utils/telemetry.js +131 -0
- package/lib/module/modules/helpers/utils/telemetry.js.map +1 -0
- package/lib/module/modules/image/components/optimized-image.js +25 -3
- package/lib/module/modules/image/components/optimized-image.js.map +1 -1
- package/lib/module/modules/questionnaire-response-form/components/content/questionnaire-content-error.js +20 -11
- package/lib/module/modules/questionnaire-response-form/components/content/questionnaire-content-error.js.map +1 -1
- package/lib/module/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-next-button.js +3 -2
- package/lib/module/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-next-button.js.map +1 -1
- package/lib/module/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-submit-button.js +4 -2
- package/lib/module/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-submit-button.js.map +1 -1
- package/lib/module/modules/questionnaire-response-form/components/questionnaire-form-provider.js +42 -17
- package/lib/module/modules/questionnaire-response-form/components/questionnaire-form-provider.js.map +1 -1
- package/lib/module/modules/questionnaire-response-form/components/questionnaire-navigation-provider.js +2 -1
- package/lib/module/modules/questionnaire-response-form/components/questionnaire-navigation-provider.js.map +1 -1
- package/lib/module/modules/questionnaire-response-form/contexts/questionnaire-navigation-context.js.map +1 -1
- package/lib/module/modules/tile/components/task-icon.js +2 -1
- package/lib/module/modules/tile/components/task-icon.js.map +1 -1
- package/lib/module/modules/ui/components/background-sync-setting.js +107 -0
- package/lib/module/modules/ui/components/background-sync-setting.js.map +1 -0
- package/lib/module/modules/ui/components/bluetooth-state-notice.js +99 -0
- package/lib/module/modules/ui/components/bluetooth-state-notice.js.map +1 -0
- package/lib/module/modules/ui/components/ecg-strip-viewer.js +159 -0
- package/lib/module/modules/ui/components/ecg-strip-viewer.js.map +1 -0
- package/lib/module/modules/ui/components/health-import-card.js +124 -0
- package/lib/module/modules/ui/components/health-import-card.js.map +1 -0
- package/lib/module/modules/ui/components/manual-entry-form.js +117 -0
- package/lib/module/modules/ui/components/manual-entry-form.js.map +1 -0
- package/lib/module/modules/ui/components/pairing-flow.js +216 -0
- package/lib/module/modules/ui/components/pairing-flow.js.map +1 -0
- package/lib/module/modules/ui/components/supported-devices-catalog-list.js +93 -0
- package/lib/module/modules/ui/components/supported-devices-catalog-list.js.map +1 -0
- package/lib/module/modules/ui/components/urine-test-result.js +89 -0
- package/lib/module/modules/ui/components/urine-test-result.js.map +1 -0
- package/lib/module/modules/ui/index.js +13 -0
- package/lib/module/modules/ui/index.js.map +1 -0
- package/lib/module/modules/ui/types.js +4 -0
- package/lib/module/modules/ui/types.js.map +1 -0
- package/lib/module/modules/ui/use-ovok-ui.js +45 -0
- package/lib/module/modules/ui/use-ovok-ui.js.map +1 -0
- package/lib/typescript/commonjs/src/index.d.ts +1 -0
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/delete-account-button/components/delete-account-button.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/hooks/use-rate-limit-cooldown.d.ts +2 -0
- package/lib/typescript/commonjs/src/modules/auth/hooks/use-rate-limit-cooldown.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/auth/hooks/use-session.d.ts +16 -0
- package/lib/typescript/commonjs/src/modules/auth/hooks/use-session.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/auth/index.d.ts +4 -0
- package/lib/typescript/commonjs/src/modules/auth/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/logout-button/components/logout-button.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/register/components/form/inputs.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/register/components/form/register-button.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/register/components/form/register-form-provider.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/reset-password/components/form/inputs.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/reset-password/components/form/reset-password-button.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/reset-password/components/form/reset-password-form-provider.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/session/components/session-list.d.ts +4 -0
- package/lib/typescript/commonjs/src/modules/auth/session/components/session-list.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/auth/session/events.d.ts +5 -0
- package/lib/typescript/commonjs/src/modules/auth/session/events.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/auth/session/index.d.ts +3 -0
- package/lib/typescript/commonjs/src/modules/auth/session/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/auth/session/types/session-list-props.d.ts +5 -0
- package/lib/typescript/commonjs/src/modules/auth/session/types/session-list-props.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/auth/sign-in/components/form/inputs.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/sign-in/components/form/login-form-provider.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/sign-in/components/form/mfa-code-input.d.ts +9 -0
- package/lib/typescript/commonjs/src/modules/auth/sign-in/components/form/mfa-code-input.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/auth/sign-in/components/form/sign-in-with-email.d.ts +4 -0
- package/lib/typescript/commonjs/src/modules/auth/sign-in/components/form/sign-in-with-email.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/sign-in/components/form/signin-button.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/sign-in/components/sign-in.d.ts +4 -0
- package/lib/typescript/commonjs/src/modules/auth/sign-in/components/sign-in.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/sign-in/contexts/login-form-context.d.ts +2 -46
- package/lib/typescript/commonjs/src/modules/auth/sign-in/contexts/login-form-context.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/sign-in/hooks/use-login-form.d.ts +1 -47
- package/lib/typescript/commonjs/src/modules/auth/sign-in/hooks/use-login-form.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/sign-in/types/login-form-context-type.d.ts +11 -1
- package/lib/typescript/commonjs/src/modules/auth/sign-in/types/login-form-context-type.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/auth/types/session.d.ts +13 -0
- package/lib/typescript/commonjs/src/modules/auth/types/session.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/auth/utils/rate-limit.d.ts +11 -0
- package/lib/typescript/commonjs/src/modules/auth/utils/rate-limit.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/background-sync/android-bluetooth-foreground-service.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/background-sync/background-safe-storage.d.ts +29 -0
- package/lib/typescript/commonjs/src/modules/background-sync/background-safe-storage.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/background-sync/index.d.ts +1 -0
- package/lib/typescript/commonjs/src/modules/background-sync/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/components/bt-provider-child-wrapper.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/runtime-context.d.ts +46 -0
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/runtime-context.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-background-sync.d.ts +14 -0
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-background-sync.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-bluetooth-state.d.ts +11 -0
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-bluetooth-state.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-device-connection.d.ts +7 -0
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-device-connection.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-health-import.d.ts +16 -0
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-health-import.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-measurements.d.ts +11 -0
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-measurements.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-nearby-devices.d.ts +8 -0
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-nearby-devices.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-paired-devices.d.ts +16 -0
- package/lib/typescript/commonjs/src/modules/bt-management/hooks/use-paired-devices.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/index.d.ts +13 -0
- package/lib/typescript/commonjs/src/modules/bt-management/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/background-sync/background-sync-coordinator.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/bt-manager.d.ts +22 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/bt-manager.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-connection-handler.d.ts +4 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-connection-handler.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-managed-device.d.ts +9 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/measurement-state-machine.d.ts +3 -2
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/measurement-state-machine.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/spo/spo2.main-services.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval-activity-sequencer.d.ts +2 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval-activity-sequencer.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/testing/fake-ble-manager.d.ts +16 -0
- package/lib/typescript/commonjs/src/modules/bt-management/testing/fake-ble-manager.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/testing/index.d.ts +3 -0
- package/lib/typescript/commonjs/src/modules/bt-management/testing/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/testing/recorded-frames.d.ts +12 -0
- package/lib/typescript/commonjs/src/modules/bt-management/testing/recorded-frames.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/background-sync.d.ts +3 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/background-sync.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/bluetooth-error.d.ts +23 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/bluetooth-error.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/btprovider-children-props.d.ts +4 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/btprovider-children-props.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/create-device-params.d.ts +4 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/create-device-params.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/device-connection-event.d.ts +16 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/device-connection-event.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts +2 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/error-callback.d.ts +5 -2
- package/lib/typescript/commonjs/src/modules/bt-management/types/error-callback.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/i-bt-managed-device.d.ts +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/i-bt-managed-device.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/result-callback.d.ts +2 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/result-callback.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/result-policy.d.ts +8 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/result-policy.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/utils/result-identity.d.ts +10 -0
- package/lib/typescript/commonjs/src/modules/bt-management/utils/result-identity.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/data-sync/components/android/android-health-connect-authorization-provider.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/data-sync/services/base-health-sync-service.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/data-sync/services/managers/data-processor.d.ts +4 -0
- package/lib/typescript/commonjs/src/modules/data-sync/services/managers/data-processor.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/data-sync/services/managers/sync-progress-manager.d.ts +1 -1
- package/lib/typescript/commonjs/src/modules/data-sync/types/health-authorization-status.d.ts +2 -0
- package/lib/typescript/commonjs/src/modules/data-sync/types/health-authorization-status.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/data-sync/types/sync-progress.d.ts +1 -1
- package/lib/typescript/commonjs/src/modules/data-sync/types/sync-progress.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/data-sync/utils/retry-save.d.ts +5 -0
- package/lib/typescript/commonjs/src/modules/data-sync/utils/retry-save.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/helpers/form-items/form-field.d.ts +4 -1
- package/lib/typescript/commonjs/src/modules/helpers/form-items/form-field.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/helpers/index.d.ts +1 -0
- package/lib/typescript/commonjs/src/modules/helpers/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/helpers/utils/s-log.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/helpers/utils/sentry-logger.d.ts +7 -1
- package/lib/typescript/commonjs/src/modules/helpers/utils/sentry-logger.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/helpers/utils/telemetry.d.ts +68 -0
- package/lib/typescript/commonjs/src/modules/helpers/utils/telemetry.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/image/components/optimized-image.d.ts +1 -1
- package/lib/typescript/commonjs/src/modules/image/components/optimized-image.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/image/types/optimized-image-props.d.ts +4 -0
- package/lib/typescript/commonjs/src/modules/image/types/optimized-image-props.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/content/questionnaire-content-error.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-next-button.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-submit-button.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/questionnaire-form-provider.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/questionnaire-response-form/components/questionnaire-navigation-provider.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/questionnaire-response-form/contexts/questionnaire-navigation-context.d.ts +1 -0
- package/lib/typescript/commonjs/src/modules/questionnaire-response-form/contexts/questionnaire-navigation-context.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-navigation-handlers.d.ts +1 -0
- package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-navigation-handlers.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-questionnaire-navigation.d.ts +1 -0
- package/lib/typescript/commonjs/src/modules/questionnaire-response-form/hooks/use-questionnaire-navigation.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-context-type.d.ts +2 -0
- package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-form-context-type.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-navigation-provider-props.d.ts +1 -0
- package/lib/typescript/commonjs/src/modules/questionnaire-response-form/types/questionnaire-navigation-provider-props.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/tile/components/task-icon.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/ui/components/background-sync-setting.d.ts +9 -0
- package/lib/typescript/commonjs/src/modules/ui/components/background-sync-setting.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/ui/components/bluetooth-state-notice.d.ts +12 -0
- package/lib/typescript/commonjs/src/modules/ui/components/bluetooth-state-notice.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/ui/components/ecg-strip-viewer.d.ts +17 -0
- package/lib/typescript/commonjs/src/modules/ui/components/ecg-strip-viewer.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/ui/components/health-import-card.d.ts +13 -0
- package/lib/typescript/commonjs/src/modules/ui/components/health-import-card.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/ui/components/manual-entry-form.d.ts +20 -0
- package/lib/typescript/commonjs/src/modules/ui/components/manual-entry-form.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/ui/components/pairing-flow.d.ts +15 -0
- package/lib/typescript/commonjs/src/modules/ui/components/pairing-flow.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/ui/components/supported-devices-catalog-list.d.ts +16 -0
- package/lib/typescript/commonjs/src/modules/ui/components/supported-devices-catalog-list.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/ui/components/urine-test-result.d.ts +10 -0
- package/lib/typescript/commonjs/src/modules/ui/components/urine-test-result.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/ui/index.d.ts +11 -0
- package/lib/typescript/commonjs/src/modules/ui/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/ui/types.d.ts +24 -0
- package/lib/typescript/commonjs/src/modules/ui/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/ui/use-ovok-ui.d.ts +7 -0
- package/lib/typescript/commonjs/src/modules/ui/use-ovok-ui.d.ts.map +1 -0
- package/lib/typescript/module/src/index.d.ts +1 -0
- package/lib/typescript/module/src/index.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/delete-account-button/components/delete-account-button.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/hooks/use-rate-limit-cooldown.d.ts +2 -0
- package/lib/typescript/module/src/modules/auth/hooks/use-rate-limit-cooldown.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/auth/hooks/use-session.d.ts +16 -0
- package/lib/typescript/module/src/modules/auth/hooks/use-session.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/auth/index.d.ts +4 -0
- package/lib/typescript/module/src/modules/auth/index.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/logout-button/components/logout-button.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/register/components/form/inputs.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/register/components/form/register-button.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/register/components/form/register-form-provider.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/reset-password/components/form/inputs.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/reset-password/components/form/reset-password-button.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/reset-password/components/form/reset-password-form-provider.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/session/components/session-list.d.ts +4 -0
- package/lib/typescript/module/src/modules/auth/session/components/session-list.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/auth/session/events.d.ts +5 -0
- package/lib/typescript/module/src/modules/auth/session/events.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/auth/session/index.d.ts +3 -0
- package/lib/typescript/module/src/modules/auth/session/index.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/auth/session/types/session-list-props.d.ts +5 -0
- package/lib/typescript/module/src/modules/auth/session/types/session-list-props.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/auth/sign-in/components/form/inputs.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/sign-in/components/form/login-form-provider.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/sign-in/components/form/mfa-code-input.d.ts +9 -0
- package/lib/typescript/module/src/modules/auth/sign-in/components/form/mfa-code-input.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/auth/sign-in/components/form/sign-in-with-email.d.ts +4 -0
- package/lib/typescript/module/src/modules/auth/sign-in/components/form/sign-in-with-email.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/sign-in/components/form/signin-button.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/sign-in/components/sign-in.d.ts +4 -0
- package/lib/typescript/module/src/modules/auth/sign-in/components/sign-in.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/sign-in/contexts/login-form-context.d.ts +2 -46
- package/lib/typescript/module/src/modules/auth/sign-in/contexts/login-form-context.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/sign-in/hooks/use-login-form.d.ts +1 -47
- package/lib/typescript/module/src/modules/auth/sign-in/hooks/use-login-form.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/sign-in/types/login-form-context-type.d.ts +11 -1
- package/lib/typescript/module/src/modules/auth/sign-in/types/login-form-context-type.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/auth/types/session.d.ts +13 -0
- package/lib/typescript/module/src/modules/auth/types/session.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/auth/utils/rate-limit.d.ts +11 -0
- package/lib/typescript/module/src/modules/auth/utils/rate-limit.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/background-sync/android-bluetooth-foreground-service.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/background-sync/background-safe-storage.d.ts +29 -0
- package/lib/typescript/module/src/modules/background-sync/background-safe-storage.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/background-sync/index.d.ts +1 -0
- package/lib/typescript/module/src/modules/background-sync/index.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/components/bt-provider-child-wrapper.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/hooks/runtime-context.d.ts +46 -0
- package/lib/typescript/module/src/modules/bt-management/hooks/runtime-context.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/hooks/use-background-sync.d.ts +14 -0
- package/lib/typescript/module/src/modules/bt-management/hooks/use-background-sync.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/hooks/use-bluetooth-state.d.ts +11 -0
- package/lib/typescript/module/src/modules/bt-management/hooks/use-bluetooth-state.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/hooks/use-device-connection.d.ts +7 -0
- package/lib/typescript/module/src/modules/bt-management/hooks/use-device-connection.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/hooks/use-health-import.d.ts +16 -0
- package/lib/typescript/module/src/modules/bt-management/hooks/use-health-import.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/hooks/use-measurements.d.ts +11 -0
- package/lib/typescript/module/src/modules/bt-management/hooks/use-measurements.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/hooks/use-nearby-devices.d.ts +8 -0
- package/lib/typescript/module/src/modules/bt-management/hooks/use-nearby-devices.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/hooks/use-paired-devices.d.ts +16 -0
- package/lib/typescript/module/src/modules/bt-management/hooks/use-paired-devices.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/index.d.ts +13 -0
- package/lib/typescript/module/src/modules/bt-management/index.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/background-sync/background-sync-coordinator.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/bt-manager.d.ts +22 -0
- package/lib/typescript/module/src/modules/bt-management/services/bt-manager.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-connection-handler.d.ts +4 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-connection-handler.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts +9 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/measurement-state-machine.d.ts +3 -2
- package/lib/typescript/module/src/modules/bt-management/services/devices/measurement-state-machine.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/spo/spo2.main-services.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval-activity-sequencer.d.ts +2 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval-activity-sequencer.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/testing/fake-ble-manager.d.ts +16 -0
- package/lib/typescript/module/src/modules/bt-management/testing/fake-ble-manager.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/testing/index.d.ts +3 -0
- package/lib/typescript/module/src/modules/bt-management/testing/index.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/testing/recorded-frames.d.ts +12 -0
- package/lib/typescript/module/src/modules/bt-management/testing/recorded-frames.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/types/background-sync.d.ts +3 -1
- package/lib/typescript/module/src/modules/bt-management/types/background-sync.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/bluetooth-error.d.ts +23 -0
- package/lib/typescript/module/src/modules/bt-management/types/bluetooth-error.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/types/btprovider-children-props.d.ts +4 -0
- package/lib/typescript/module/src/modules/bt-management/types/btprovider-children-props.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/create-device-params.d.ts +4 -0
- package/lib/typescript/module/src/modules/bt-management/types/create-device-params.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/device-connection-event.d.ts +16 -0
- package/lib/typescript/module/src/modules/bt-management/types/device-connection-event.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/types/device-measurement-map.d.ts +2 -0
- package/lib/typescript/module/src/modules/bt-management/types/device-measurement-map.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/error-callback.d.ts +5 -2
- package/lib/typescript/module/src/modules/bt-management/types/error-callback.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/i-bt-managed-device.d.ts +1 -0
- package/lib/typescript/module/src/modules/bt-management/types/i-bt-managed-device.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/result-callback.d.ts +2 -0
- package/lib/typescript/module/src/modules/bt-management/types/result-callback.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/result-policy.d.ts +8 -0
- package/lib/typescript/module/src/modules/bt-management/types/result-policy.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/utils/result-identity.d.ts +10 -0
- package/lib/typescript/module/src/modules/bt-management/utils/result-identity.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/data-sync/components/android/android-health-connect-authorization-provider.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/data-sync/services/base-health-sync-service.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/data-sync/services/managers/data-processor.d.ts +4 -0
- package/lib/typescript/module/src/modules/data-sync/services/managers/data-processor.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/data-sync/services/managers/sync-progress-manager.d.ts +1 -1
- package/lib/typescript/module/src/modules/data-sync/types/health-authorization-status.d.ts +2 -0
- package/lib/typescript/module/src/modules/data-sync/types/health-authorization-status.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/data-sync/types/sync-progress.d.ts +1 -1
- package/lib/typescript/module/src/modules/data-sync/types/sync-progress.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/data-sync/utils/retry-save.d.ts +5 -0
- package/lib/typescript/module/src/modules/data-sync/utils/retry-save.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/helpers/form-items/form-field.d.ts +4 -1
- package/lib/typescript/module/src/modules/helpers/form-items/form-field.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/helpers/index.d.ts +1 -0
- package/lib/typescript/module/src/modules/helpers/index.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/helpers/utils/s-log.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/helpers/utils/sentry-logger.d.ts +7 -1
- package/lib/typescript/module/src/modules/helpers/utils/sentry-logger.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/helpers/utils/telemetry.d.ts +68 -0
- package/lib/typescript/module/src/modules/helpers/utils/telemetry.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/image/components/optimized-image.d.ts +1 -1
- package/lib/typescript/module/src/modules/image/components/optimized-image.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/image/types/optimized-image-props.d.ts +4 -0
- package/lib/typescript/module/src/modules/image/types/optimized-image-props.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/questionnaire-response-form/components/content/questionnaire-content-error.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-next-button.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/questionnaire-response-form/components/navigation/questionnaire-navigation-submit-button.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/questionnaire-response-form/components/questionnaire-form-provider.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/questionnaire-response-form/components/questionnaire-navigation-provider.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/questionnaire-response-form/contexts/questionnaire-navigation-context.d.ts +1 -0
- package/lib/typescript/module/src/modules/questionnaire-response-form/contexts/questionnaire-navigation-context.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-navigation-handlers.d.ts +1 -0
- package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-navigation-handlers.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-questionnaire-navigation.d.ts +1 -0
- package/lib/typescript/module/src/modules/questionnaire-response-form/hooks/use-questionnaire-navigation.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-context-type.d.ts +2 -0
- package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-form-context-type.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-navigation-provider-props.d.ts +1 -0
- package/lib/typescript/module/src/modules/questionnaire-response-form/types/questionnaire-navigation-provider-props.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/tile/components/task-icon.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/ui/components/background-sync-setting.d.ts +9 -0
- package/lib/typescript/module/src/modules/ui/components/background-sync-setting.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/ui/components/bluetooth-state-notice.d.ts +12 -0
- package/lib/typescript/module/src/modules/ui/components/bluetooth-state-notice.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/ui/components/ecg-strip-viewer.d.ts +17 -0
- package/lib/typescript/module/src/modules/ui/components/ecg-strip-viewer.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/ui/components/health-import-card.d.ts +13 -0
- package/lib/typescript/module/src/modules/ui/components/health-import-card.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/ui/components/manual-entry-form.d.ts +20 -0
- package/lib/typescript/module/src/modules/ui/components/manual-entry-form.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/ui/components/pairing-flow.d.ts +15 -0
- package/lib/typescript/module/src/modules/ui/components/pairing-flow.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/ui/components/supported-devices-catalog-list.d.ts +16 -0
- package/lib/typescript/module/src/modules/ui/components/supported-devices-catalog-list.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/ui/components/urine-test-result.d.ts +10 -0
- package/lib/typescript/module/src/modules/ui/components/urine-test-result.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/ui/index.d.ts +11 -0
- package/lib/typescript/module/src/modules/ui/index.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/ui/types.d.ts +24 -0
- package/lib/typescript/module/src/modules/ui/types.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/ui/use-ovok-ui.d.ts +7 -0
- package/lib/typescript/module/src/modules/ui/use-ovok-ui.d.ts.map +1 -0
- package/package.json +145 -6
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/* eslint-disable import/group-exports */
|
|
4
|
+
/* eslint-disable max-lines */
|
|
5
|
+
|
|
6
|
+
const INSTRUMENTATION_NAME = "@ovok/native";
|
|
7
|
+
const INSTRUMENTATION_VERSION = "1.6.0";
|
|
8
|
+
let configuredOptions = {};
|
|
9
|
+
let openTelemetryApi;
|
|
10
|
+
let openTelemetryLogsApi;
|
|
11
|
+
const counters = new Map();
|
|
12
|
+
const histograms = new Map();
|
|
13
|
+
const loadOpenTelemetryApi = () => {
|
|
14
|
+
if (openTelemetryApi !== undefined) {
|
|
15
|
+
return openTelemetryApi ?? undefined;
|
|
16
|
+
}
|
|
17
|
+
try {
|
|
18
|
+
// Optional peer: apps without OpenTelemetry must not need to install it.
|
|
19
|
+
openTelemetryApi = require("@opentelemetry/api");
|
|
20
|
+
} catch {
|
|
21
|
+
openTelemetryApi = null;
|
|
22
|
+
}
|
|
23
|
+
return openTelemetryApi ?? undefined;
|
|
24
|
+
};
|
|
25
|
+
const loadOpenTelemetryLogsApi = () => {
|
|
26
|
+
if (openTelemetryLogsApi !== undefined) {
|
|
27
|
+
return openTelemetryLogsApi ?? undefined;
|
|
28
|
+
}
|
|
29
|
+
try {
|
|
30
|
+
// Optional peer: the stable logs API is distributed separately.
|
|
31
|
+
openTelemetryLogsApi = require("@opentelemetry/api-logs");
|
|
32
|
+
} catch {
|
|
33
|
+
openTelemetryLogsApi = null;
|
|
34
|
+
}
|
|
35
|
+
return openTelemetryLogsApi ?? undefined;
|
|
36
|
+
};
|
|
37
|
+
const allowedAttributeKeys = new Set(["deviceId", "deviceName", "model", "manufacturer", "measurementTypeKey", "platform", "status", "reason", "errorCode", "retryCount", "attempt", "queueDepth", "durationMs", "success", "exhausted", "willRetry", "requestedMtu", "provider", "sampleCount"]);
|
|
38
|
+
|
|
39
|
+
/** Keeps identifiers useful for operations while excluding readings and patient data. */
|
|
40
|
+
export const sanitizeOvokTelemetryAttributes = (attributes = {}) => {
|
|
41
|
+
const safe = {};
|
|
42
|
+
for (const [key, value] of Object.entries(attributes)) {
|
|
43
|
+
if (!allowedAttributeKeys.has(key)) {
|
|
44
|
+
continue;
|
|
45
|
+
}
|
|
46
|
+
if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") {
|
|
47
|
+
safe[key] = value;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return safe;
|
|
51
|
+
};
|
|
52
|
+
export const configureOvokTelemetry = (options = {}) => {
|
|
53
|
+
configuredOptions = options;
|
|
54
|
+
counters.clear();
|
|
55
|
+
histograms.clear();
|
|
56
|
+
};
|
|
57
|
+
const getTracer = () => configuredOptions.tracerProvider?.getTracer(INSTRUMENTATION_NAME, INSTRUMENTATION_VERSION) ?? loadOpenTelemetryApi()?.trace?.getTracer(INSTRUMENTATION_NAME, INSTRUMENTATION_VERSION);
|
|
58
|
+
const getMeter = () => configuredOptions.meterProvider?.getMeter(INSTRUMENTATION_NAME, INSTRUMENTATION_VERSION) ?? loadOpenTelemetryApi()?.metrics?.getMeter(INSTRUMENTATION_NAME, INSTRUMENTATION_VERSION);
|
|
59
|
+
const getLogger = () => configuredOptions.loggerProvider?.getLogger(INSTRUMENTATION_NAME, INSTRUMENTATION_VERSION) ?? loadOpenTelemetryLogsApi()?.logs?.getLogger(INSTRUMENTATION_NAME, INSTRUMENTATION_VERSION);
|
|
60
|
+
export const startOvokSpan = (name, attributes = {}) => getTracer()?.startSpan(name, {
|
|
61
|
+
attributes: sanitizeOvokTelemetryAttributes(attributes)
|
|
62
|
+
});
|
|
63
|
+
export const recordOvokMetric = (name, value, attributes = {}) => {
|
|
64
|
+
const meter = getMeter();
|
|
65
|
+
if (!meter) {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
const safeAttributes = sanitizeOvokTelemetryAttributes(attributes);
|
|
69
|
+
const instrument = counters.get(name) ?? meter.createCounter(name);
|
|
70
|
+
counters.set(name, instrument);
|
|
71
|
+
instrument.add(value, safeAttributes);
|
|
72
|
+
};
|
|
73
|
+
export const recordOvokDuration = (name, durationMs, attributes = {}) => {
|
|
74
|
+
const meter = getMeter();
|
|
75
|
+
if (!meter) {
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
const safeAttributes = sanitizeOvokTelemetryAttributes(attributes);
|
|
79
|
+
const instrument = histograms.get(name) ?? meter.createHistogram(name);
|
|
80
|
+
histograms.set(name, instrument);
|
|
81
|
+
instrument.record(durationMs, safeAttributes);
|
|
82
|
+
};
|
|
83
|
+
export const addOvokSpanEvent = (name, attributes = {}) => {
|
|
84
|
+
const span = loadOpenTelemetryApi()?.trace?.getActiveSpan?.();
|
|
85
|
+
span?.addEvent?.(name, sanitizeOvokTelemetryAttributes(attributes));
|
|
86
|
+
};
|
|
87
|
+
export const emitOvokLog = (severityText, body, attributes = {}) => {
|
|
88
|
+
getLogger()?.emit({
|
|
89
|
+
severityText,
|
|
90
|
+
body,
|
|
91
|
+
attributes: sanitizeOvokTelemetryAttributes(attributes)
|
|
92
|
+
});
|
|
93
|
+
};
|
|
94
|
+
export const withOvokSpan = async (name, attributes, operation) => {
|
|
95
|
+
const tracer = getTracer();
|
|
96
|
+
const finishSpan = async span => {
|
|
97
|
+
try {
|
|
98
|
+
const result = await operation();
|
|
99
|
+
span.setStatus?.({
|
|
100
|
+
code: 1
|
|
101
|
+
});
|
|
102
|
+
return result;
|
|
103
|
+
} catch (error) {
|
|
104
|
+
const normalized = error instanceof Error ? error : new Error(String(error));
|
|
105
|
+
span.recordException?.(normalized);
|
|
106
|
+
span.setStatus?.({
|
|
107
|
+
code: 2,
|
|
108
|
+
message: normalized.message
|
|
109
|
+
});
|
|
110
|
+
recordOvokMetric("ovok.errors", 1, {
|
|
111
|
+
errorCode: normalized.name
|
|
112
|
+
});
|
|
113
|
+
throw error;
|
|
114
|
+
} finally {
|
|
115
|
+
span.end();
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
if (tracer?.startActiveSpan) {
|
|
119
|
+
return tracer.startActiveSpan(name, {
|
|
120
|
+
attributes: sanitizeOvokTelemetryAttributes(attributes)
|
|
121
|
+
}, span => finishSpan(span));
|
|
122
|
+
}
|
|
123
|
+
const span = tracer?.startSpan(name, {
|
|
124
|
+
attributes: sanitizeOvokTelemetryAttributes(attributes)
|
|
125
|
+
});
|
|
126
|
+
if (!span) {
|
|
127
|
+
return operation();
|
|
128
|
+
}
|
|
129
|
+
return finishSpan(span);
|
|
130
|
+
};
|
|
131
|
+
//# sourceMappingURL=telemetry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["INSTRUMENTATION_NAME","INSTRUMENTATION_VERSION","configuredOptions","openTelemetryApi","openTelemetryLogsApi","counters","Map","histograms","loadOpenTelemetryApi","undefined","require","loadOpenTelemetryLogsApi","allowedAttributeKeys","Set","sanitizeOvokTelemetryAttributes","attributes","safe","key","value","Object","entries","has","configureOvokTelemetry","options","clear","getTracer","tracerProvider","trace","getMeter","meterProvider","metrics","getLogger","loggerProvider","logs","startOvokSpan","name","startSpan","recordOvokMetric","meter","safeAttributes","instrument","get","createCounter","set","add","recordOvokDuration","durationMs","createHistogram","record","addOvokSpanEvent","span","getActiveSpan","addEvent","emitOvokLog","severityText","body","emit","withOvokSpan","operation","tracer","finishSpan","result","setStatus","code","error","normalized","Error","String","recordException","message","errorCode","end","startActiveSpan"],"sourceRoot":"../../../../../src","sources":["modules/helpers/utils/telemetry.ts"],"mappings":";;AAAA;AACA;;AAqFA,MAAMA,oBAAoB,GAAG,cAAc;AAC3C,MAAMC,uBAAuB,GAAG,OAAO;AAEvC,IAAIC,iBAAuC,GAAG,CAAC,CAAC;AAChD,IAAIC,gBAAqD;AACzD,IAAIC,oBAA6D;AACjE,MAAMC,QAAQ,GAAG,IAAIC,GAAG,CAAiD,CAAC;AAC1E,MAAMC,UAAU,GAAG,IAAID,GAAG,CAAmD,CAAC;AAE9E,MAAME,oBAAoB,GAAGA,CAAA,KAAoC;EAC/D,IAAIL,gBAAgB,KAAKM,SAAS,EAAE;IAClC,OAAON,gBAAgB,IAAIM,SAAS;EACtC;EAEA,IAAI;IACF;IACAN,gBAAgB,GAAGO,OAAO,CAAC,oBAAoB,CAAqB;EACtE,CAAC,CAAC,MAAM;IACNP,gBAAgB,GAAG,IAAI;EACzB;EAEA,OAAOA,gBAAgB,IAAIM,SAAS;AACtC,CAAC;AAED,MAAME,wBAAwB,GAAGA,CAAA,KAAwC;EACvE,IAAIP,oBAAoB,KAAKK,SAAS,EAAE;IACtC,OAAOL,oBAAoB,IAAIK,SAAS;EAC1C;EAEA,IAAI;IACF;IACAL,oBAAoB,GAAGM,OAAO,CAAC,yBAAyB,CAAyB;EACnF,CAAC,CAAC,MAAM;IACNN,oBAAoB,GAAG,IAAI;EAC7B;EAEA,OAAOA,oBAAoB,IAAIK,SAAS;AAC1C,CAAC;AAED,MAAMG,oBAAoB,GAAG,IAAIC,GAAG,CAAC,CACnC,UAAU,EACV,YAAY,EACZ,OAAO,EACP,cAAc,EACd,oBAAoB,EACpB,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,WAAW,EACX,WAAW,EACX,cAAc,EACd,UAAU,EACV,aAAa,CACd,CAAC;;AAEF;AACA,OAAO,MAAMC,+BAA+B,GAAGA,CAC7CC,UAAmC,GAAG,CAAC,CAAC,KACZ;EAC5B,MAAMC,IAA6B,GAAG,CAAC,CAAC;EAExC,KAAK,MAAM,CAACC,GAAG,EAAEC,KAAK,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACL,UAAU,CAAC,EAAE;IACrD,IAAI,CAACH,oBAAoB,CAACS,GAAG,CAACJ,GAAG,CAAC,EAAE;MAClC;IACF;IAEA,IACE,OAAOC,KAAK,KAAK,QAAQ,IACzB,OAAOA,KAAK,KAAK,QAAQ,IACzB,OAAOA,KAAK,KAAK,SAAS,EAC1B;MACAF,IAAI,CAACC,GAAG,CAAC,GAAGC,KAAK;IACnB;EACF;EAEA,OAAOF,IAAI;AACb,CAAC;AAED,OAAO,MAAMM,sBAAsB,GAAGA,CACpCC,OAA6B,GAAG,CAAC,CAAC,KACzB;EACTrB,iBAAiB,GAAGqB,OAAO;EAC3BlB,QAAQ,CAACmB,KAAK,CAAC,CAAC;EAChBjB,UAAU,CAACiB,KAAK,CAAC,CAAC;AACpB,CAAC;AAED,MAAMC,SAAS,GAAGA,CAAA,KAChBvB,iBAAiB,CAACwB,cAAc,EAAED,SAAS,CACzCzB,oBAAoB,EACpBC,uBACF,CAAC,IACDO,oBAAoB,CAAC,CAAC,EAAEmB,KAAK,EAAEF,SAAS,CACtCzB,oBAAoB,EACpBC,uBACF,CAAC;AAEH,MAAM2B,QAAQ,GAAGA,CAAA,KACf1B,iBAAiB,CAAC2B,aAAa,EAAED,QAAQ,CACvC5B,oBAAoB,EACpBC,uBACF,CAAC,IACDO,oBAAoB,CAAC,CAAC,EAAEsB,OAAO,EAAEF,QAAQ,CACvC5B,oBAAoB,EACpBC,uBACF,CAAC;AAEH,MAAM8B,SAAS,GAAGA,CAAA,KAChB7B,iBAAiB,CAAC8B,cAAc,EAAED,SAAS,CACzC/B,oBAAoB,EACpBC,uBACF,CAAC,IACDU,wBAAwB,CAAC,CAAC,EAAEsB,IAAI,EAAEF,SAAS,CACzC/B,oBAAoB,EACpBC,uBACF,CAAC;AAEH,OAAO,MAAMiC,aAAa,GAAGA,CAC3BC,IAAY,EACZpB,UAAmC,GAAG,CAAC,CAAC,KAExCU,SAAS,CAAC,CAAC,EAAEW,SAAS,CAACD,IAAI,EAAE;EAC3BpB,UAAU,EAAED,+BAA+B,CAACC,UAAU;AACxD,CAAC,CAAC;AAEJ,OAAO,MAAMsB,gBAAgB,GAAGA,CAC9BF,IAAY,EACZjB,KAAa,EACbH,UAAmC,GAAG,CAAC,CAAC,KAC/B;EACT,MAAMuB,KAAK,GAAGV,QAAQ,CAAC,CAAC;EAExB,IAAI,CAACU,KAAK,EAAE;IACV;EACF;EAEA,MAAMC,cAAc,GAAGzB,+BAA+B,CAACC,UAAU,CAAC;EAClE,MAAMyB,UAAU,GAAGnC,QAAQ,CAACoC,GAAG,CAACN,IAAI,CAAC,IAAIG,KAAK,CAACI,aAAa,CAACP,IAAI,CAAC;EAElE9B,QAAQ,CAACsC,GAAG,CAACR,IAAI,EAAEK,UAAU,CAAC;EAC9BA,UAAU,CAACI,GAAG,CAAC1B,KAAK,EAAEqB,cAAc,CAAC;AACvC,CAAC;AAED,OAAO,MAAMM,kBAAkB,GAAGA,CAChCV,IAAY,EACZW,UAAkB,EAClB/B,UAAmC,GAAG,CAAC,CAAC,KAC/B;EACT,MAAMuB,KAAK,GAAGV,QAAQ,CAAC,CAAC;EAExB,IAAI,CAACU,KAAK,EAAE;IACV;EACF;EAEA,MAAMC,cAAc,GAAGzB,+BAA+B,CAACC,UAAU,CAAC;EAClE,MAAMyB,UAAU,GAAGjC,UAAU,CAACkC,GAAG,CAACN,IAAI,CAAC,IAAIG,KAAK,CAACS,eAAe,CAACZ,IAAI,CAAC;EAEtE5B,UAAU,CAACoC,GAAG,CAACR,IAAI,EAAEK,UAAU,CAAC;EAChCA,UAAU,CAACQ,MAAM,CAACF,UAAU,EAAEP,cAAc,CAAC;AAC/C,CAAC;AAED,OAAO,MAAMU,gBAAgB,GAAGA,CAC9Bd,IAAY,EACZpB,UAAmC,GAAG,CAAC,CAAC,KAC/B;EACT,MAAMmC,IAAI,GAAG1C,oBAAoB,CAAC,CAAC,EAAEmB,KAAK,EAAEwB,aAAa,GAAG,CAAC;EAE7DD,IAAI,EAAEE,QAAQ,GAAGjB,IAAI,EAAErB,+BAA+B,CAACC,UAAU,CAAC,CAAC;AACrE,CAAC;AAED,OAAO,MAAMsC,WAAW,GAAGA,CACzBC,YAAoB,EACpBC,IAAY,EACZxC,UAAmC,GAAG,CAAC,CAAC,KAC/B;EACTgB,SAAS,CAAC,CAAC,EAAEyB,IAAI,CAAC;IAChBF,YAAY;IACZC,IAAI;IACJxC,UAAU,EAAED,+BAA+B,CAACC,UAAU;EACxD,CAAC,CAAC;AACJ,CAAC;AAED,OAAO,MAAM0C,YAAY,GAAG,MAAAA,CAC1BtB,IAAY,EACZpB,UAAmC,EACnC2C,SAA+B,KAChB;EACf,MAAMC,MAAM,GAAGlC,SAAS,CAAC,CAAC;EAE1B,MAAMmC,UAAU,GAAG,MAAOV,IAAc,IAAiB;IACvD,IAAI;MACF,MAAMW,MAAM,GAAG,MAAMH,SAAS,CAAC,CAAC;MAEhCR,IAAI,CAACY,SAAS,GAAG;QAAEC,IAAI,EAAE;MAAE,CAAC,CAAC;MAE7B,OAAOF,MAAM;IACf,CAAC,CAAC,OAAOG,KAAK,EAAE;MACd,MAAMC,UAAU,GAAGD,KAAK,YAAYE,KAAK,GAAGF,KAAK,GAAG,IAAIE,KAAK,CAACC,MAAM,CAACH,KAAK,CAAC,CAAC;MAE5Ed,IAAI,CAACkB,eAAe,GAAGH,UAAU,CAAC;MAClCf,IAAI,CAACY,SAAS,GAAG;QAAEC,IAAI,EAAE,CAAC;QAAEM,OAAO,EAAEJ,UAAU,CAACI;MAAQ,CAAC,CAAC;MAC1DhC,gBAAgB,CAAC,aAAa,EAAE,CAAC,EAAE;QAAEiC,SAAS,EAAEL,UAAU,CAAC9B;MAAK,CAAC,CAAC;MAClE,MAAM6B,KAAK;IACb,CAAC,SAAS;MACRd,IAAI,CAACqB,GAAG,CAAC,CAAC;IACZ;EACF,CAAC;EAED,IAAIZ,MAAM,EAAEa,eAAe,EAAE;IAC3B,OAAOb,MAAM,CAACa,eAAe,CAC3BrC,IAAI,EACJ;MAAEpB,UAAU,EAAED,+BAA+B,CAACC,UAAU;IAAE,CAAC,EAC1DmC,IAAI,IAAKU,UAAU,CAACV,IAAI,CAC3B,CAAC;EACH;EAEA,MAAMA,IAAI,GAAGS,MAAM,EAAEvB,SAAS,CAACD,IAAI,EAAE;IACnCpB,UAAU,EAAED,+BAA+B,CAACC,UAAU;EACxD,CAAC,CAAC;EAEF,IAAI,CAACmC,IAAI,EAAE;IACT,OAAOQ,SAAS,CAAC,CAAC;EACpB;EAEA,OAAOE,UAAU,CAACV,IAAI,CAAC;AACzB,CAAC","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { useClient } from "@ovok/core";
|
|
4
|
-
import { Image as ExpoImage } from "expo-image";
|
|
4
|
+
import { Image as ExpoImage, useImage } from "expo-image";
|
|
5
5
|
import * as React from "react";
|
|
6
6
|
import { StyleSheet, View } from "react-native";
|
|
7
7
|
import { calculateDimension } from "../utils/calculate-dimension.js";
|
|
@@ -14,11 +14,17 @@ export const OptimizedImage = /*#__PURE__*/React.memo(({
|
|
|
14
14
|
fit = "contain",
|
|
15
15
|
style,
|
|
16
16
|
onLoad,
|
|
17
|
+
onError,
|
|
18
|
+
placeholder,
|
|
19
|
+
fallback,
|
|
20
|
+
maxRetries = 3,
|
|
17
21
|
containerStyle,
|
|
18
22
|
aspectRatio: providedAspectRatio,
|
|
19
23
|
...rest
|
|
20
24
|
}) => {
|
|
21
25
|
const client = useClient();
|
|
26
|
+
const retryCount = React.useRef(0);
|
|
27
|
+
const [failedUri, setFailedUri] = React.useState(null);
|
|
22
28
|
const [containerSize, setContainerSize] = React.useState({
|
|
23
29
|
width: 0,
|
|
24
30
|
height: 0
|
|
@@ -34,6 +40,20 @@ export const OptimizedImage = /*#__PURE__*/React.memo(({
|
|
|
34
40
|
fit,
|
|
35
41
|
baseUrl: client.getBaseUrl()
|
|
36
42
|
}), [uri, calculatedWidth, calculatedHeight, fit, client]);
|
|
43
|
+
React.useEffect(() => {
|
|
44
|
+
retryCount.current = 0;
|
|
45
|
+
setFailedUri(null);
|
|
46
|
+
}, [optimizedUri]);
|
|
47
|
+
const image = useImage(optimizedUri, {
|
|
48
|
+
onError: (_error, retry) => {
|
|
49
|
+
if (retryCount.current >= maxRetries) {
|
|
50
|
+
setFailedUri(optimizedUri);
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
retryCount.current += 1;
|
|
54
|
+
retry();
|
|
55
|
+
}
|
|
56
|
+
}, [optimizedUri]);
|
|
37
57
|
const imageStyle = React.useMemo(() => [styles.base, {
|
|
38
58
|
width: calculatedWidth,
|
|
39
59
|
height: calculatedHeight,
|
|
@@ -56,14 +76,16 @@ export const OptimizedImage = /*#__PURE__*/React.memo(({
|
|
|
56
76
|
style: [styles.container, containerStyle],
|
|
57
77
|
onLayout: handleLayout,
|
|
58
78
|
children: /*#__PURE__*/_jsx(ExpoImage, {
|
|
59
|
-
source: {
|
|
79
|
+
source: failedUri === optimizedUri ? fallback ?? placeholder ?? null : image ?? {
|
|
60
80
|
uri: optimizedUri
|
|
61
81
|
},
|
|
62
82
|
style: imageStyle,
|
|
83
|
+
placeholder: placeholder,
|
|
63
84
|
onLoad: handleLoad,
|
|
85
|
+
onError: onError,
|
|
64
86
|
...rest,
|
|
65
87
|
contentFit: fit
|
|
66
|
-
})
|
|
88
|
+
}, `${optimizedUri}:${retryCount.current}`)
|
|
67
89
|
});
|
|
68
90
|
});
|
|
69
91
|
const styles = StyleSheet.create({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useClient","Image","ExpoImage","React","StyleSheet","View","calculateDimension","getOptimizedImageUrl","jsx","_jsx","OptimizedImage","memo","uri","width","height","fit","style","onLoad","containerStyle","aspectRatio","providedAspectRatio","rest","client","
|
|
1
|
+
{"version":3,"names":["useClient","Image","ExpoImage","useImage","React","StyleSheet","View","calculateDimension","getOptimizedImageUrl","jsx","_jsx","OptimizedImage","memo","uri","width","height","fit","style","onLoad","onError","placeholder","fallback","maxRetries","containerStyle","aspectRatio","providedAspectRatio","rest","client","retryCount","useRef","failedUri","setFailedUri","useState","containerSize","setContainerSize","calculatedAspectRatio","setCalculatedAspectRatio","useMemo","calculatedWidth","calculatedHeight","undefined","optimizedUri","baseUrl","getBaseUrl","useEffect","current","image","_error","retry","imageStyle","styles","base","contentFit","handleLayout","useCallback","event","nativeEvent","layout","handleLoad","imageWidth","imageHeight","source","container","onLayout","children","create","overflow"],"sourceRoot":"../../../../../src","sources":["modules/image/components/optimized-image.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
import * as React from "react";
|
|
4
4
|
import { useTranslation } from "react-i18next";
|
|
5
|
-
import { Text } from "react-native-paper";
|
|
5
|
+
import { Button, Text } from "react-native-paper";
|
|
6
6
|
import { useAppTheme } from "../../../theme/index.js";
|
|
7
7
|
import { useQuestionnaireForm } from "../../hooks/use-questionnaire-form.js";
|
|
8
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
9
|
export const QuestionnaireContentError = /*#__PURE__*/React.memo(({
|
|
10
10
|
style,
|
|
11
11
|
children,
|
|
@@ -16,18 +16,27 @@ export const QuestionnaireContentError = /*#__PURE__*/React.memo(({
|
|
|
16
16
|
t
|
|
17
17
|
} = useTranslation();
|
|
18
18
|
const {
|
|
19
|
-
errorMessage
|
|
19
|
+
errorMessage,
|
|
20
|
+
submissionError,
|
|
21
|
+
retrySubmit
|
|
20
22
|
} = useQuestionnaireForm();
|
|
21
|
-
if (!errorMessage && !children) {
|
|
23
|
+
if (!errorMessage && !submissionError && !children) {
|
|
22
24
|
return null;
|
|
23
25
|
}
|
|
24
|
-
return /*#__PURE__*/
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
26
|
+
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
27
|
+
children: [/*#__PURE__*/_jsx(Text, {
|
|
28
|
+
variant: "bodySmall",
|
|
29
|
+
...props,
|
|
30
|
+
style: [{
|
|
31
|
+
color: theme.colors.error
|
|
32
|
+
}, style],
|
|
33
|
+
children: children || t(errorMessage || submissionError || "")
|
|
34
|
+
}), submissionError ? /*#__PURE__*/_jsx(Button, {
|
|
35
|
+
mode: "text",
|
|
36
|
+
compact: true,
|
|
37
|
+
onPress: retrySubmit,
|
|
38
|
+
children: t("common.try-again")
|
|
39
|
+
}) : null]
|
|
31
40
|
});
|
|
32
41
|
});
|
|
33
42
|
//# sourceMappingURL=questionnaire-content-error.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useTranslation","Text","useAppTheme","useQuestionnaireForm","jsx","_jsx","QuestionnaireContentError","memo","style","children","props","theme","t","errorMessage","variant","color","colors","error"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/components/content/questionnaire-content-error.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,cAAc,QAAQ,eAAe;AAC9C,
|
|
1
|
+
{"version":3,"names":["React","useTranslation","Button","Text","useAppTheme","useQuestionnaireForm","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","QuestionnaireContentError","memo","style","children","props","theme","t","errorMessage","submissionError","retrySubmit","variant","color","colors","error","mode","compact","onPress"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/components/content/questionnaire-content-error.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,cAAc,QAAQ,eAAe;AAC9C,SAASC,MAAM,EAAmBC,IAAI,QAAQ,oBAAoB;AAElE,SAASC,WAAW,QAAQ,yBAAgB;AAC5C,SAASC,oBAAoB,QAAQ,uCAAoC;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAG1E,OAAO,MAAMC,yBAAyB,gBAAGZ,KAAK,CAACa,IAAI,CACjD,CAAmC;EACjCC,KAAK;EACLC,QAAQ;EACR,GAAGC;AACqC,CAAC,KAAK;EAC9C,MAAMC,KAAK,GAAGb,WAAW,CAAC,CAAC;EAC3B,MAAM;IAAEc;EAAE,CAAC,GAAGjB,cAAc,CAAC,CAAC;EAE9B,MAAM;IAAEkB,YAAY;IAAEC,eAAe;IAAEC;EAAY,CAAC,GAAGhB,oBAAoB,CAAC,CAAC;EAE7E,IAAI,CAACc,YAAY,IAAI,CAACC,eAAe,IAAI,CAACL,QAAQ,EAAE;IAClD,OAAO,IAAI;EACb;EAEA,oBACEJ,KAAA,CAAAF,SAAA;IAAAM,QAAA,gBACER,IAAA,CAACJ,IAAI;MACHmB,OAAO,EAAC,WAAW;MAAA,GACfN,KAAK;MACTF,KAAK,EAAE,CAAC;QAAES,KAAK,EAAEN,KAAK,CAACO,MAAM,CAACC;MAAM,CAAC,EAAEX,KAAK,CAAE;MAAAC,QAAA,EAE7CA,QAAQ,IAAIG,CAAC,CAACC,YAAY,IAAIC,eAAe,IAAI,EAAE;IAAC,CACjD,CAAC,EACNA,eAAe,gBACdb,IAAA,CAACL,MAAM;MAACwB,IAAI,EAAC,MAAM;MAACC,OAAO;MAACC,OAAO,EAAEP,WAAY;MAAAN,QAAA,EAC9CG,CAAC,CAAC,kBAAkB;IAAC,CAChB,CAAC,GACP,IAAI;EAAA,CACR,CAAC;AAEP,CACF,CAAC","ignoreList":[]}
|
|
@@ -16,7 +16,8 @@ export const QuestionnaireNavigationNextButton = /*#__PURE__*/React.memo(({
|
|
|
16
16
|
handleNext,
|
|
17
17
|
isLastItem,
|
|
18
18
|
isCurrentItemRequired,
|
|
19
|
-
isCurrentItemAnswered
|
|
19
|
+
isCurrentItemAnswered,
|
|
20
|
+
isSubmitting
|
|
20
21
|
} = useQuestionnaireNavigation();
|
|
21
22
|
if (isLastItem) {
|
|
22
23
|
return null;
|
|
@@ -25,7 +26,7 @@ export const QuestionnaireNavigationNextButton = /*#__PURE__*/React.memo(({
|
|
|
25
26
|
return /*#__PURE__*/_jsx(Button, {
|
|
26
27
|
mode: "contained",
|
|
27
28
|
...buttonProps,
|
|
28
|
-
disabled: buttonProps.disabled || isNextDisabled,
|
|
29
|
+
disabled: buttonProps.disabled || isNextDisabled || isSubmitting,
|
|
29
30
|
onPress: handleNext,
|
|
30
31
|
children: children || t("common.next")
|
|
31
32
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useTranslation","Button","useQuestionnaireNavigation","jsx","_jsx","QuestionnaireNavigationNextButton","memo","children","buttonProps","t","handleNext","isLastItem","isCurrentItemRequired","isCurrentItemAnswered","isNextDisabled","mode","disabled","onPress"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/components/navigation/questionnaire-navigation-next-button.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,cAAc,QAAQ,eAAe;AAC9C,SAASC,MAAM,QAAQ,oBAAoB;AAE3C,SAASC,0BAA0B,QAAQ,6CAA0C;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAGtF,OAAO,MAAMC,iCAAiC,gBAAGN,KAAK,CAACO,IAAI,CACzD,CAAC;EAAEC,QAAQ;EAAE,GAAGC;AAAgD,CAAC,KAAK;EACpE,MAAM;IAAEC;EAAE,CAAC,GAAGT,cAAc,CAAC,CAAC;EAE9B,MAAM;IACJU,UAAU;IACVC,UAAU;IACVC,qBAAqB;IACrBC;EACF,CAAC,
|
|
1
|
+
{"version":3,"names":["React","useTranslation","Button","useQuestionnaireNavigation","jsx","_jsx","QuestionnaireNavigationNextButton","memo","children","buttonProps","t","handleNext","isLastItem","isCurrentItemRequired","isCurrentItemAnswered","isSubmitting","isNextDisabled","mode","disabled","onPress"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/components/navigation/questionnaire-navigation-next-button.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,cAAc,QAAQ,eAAe;AAC9C,SAASC,MAAM,QAAQ,oBAAoB;AAE3C,SAASC,0BAA0B,QAAQ,6CAA0C;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAGtF,OAAO,MAAMC,iCAAiC,gBAAGN,KAAK,CAACO,IAAI,CACzD,CAAC;EAAEC,QAAQ;EAAE,GAAGC;AAAgD,CAAC,KAAK;EACpE,MAAM;IAAEC;EAAE,CAAC,GAAGT,cAAc,CAAC,CAAC;EAE9B,MAAM;IACJU,UAAU;IACVC,UAAU;IACVC,qBAAqB;IACrBC,qBAAqB;IACrBC;EACF,CAAC,GAAGZ,0BAA0B,CAAC,CAAC;EAEhC,IAAIS,UAAU,EAAE;IACd,OAAO,IAAI;EACb;EAEA,MAAMI,cAAc,GAAGH,qBAAqB,IAAI,CAACC,qBAAqB;EAEtE,oBACET,IAAA,CAACH,MAAM;IACLe,IAAI,EAAC,WAAW;IAAA,GACZR,WAAW;IACfS,QAAQ,EAAET,WAAW,CAACS,QAAQ,IAAIF,cAAc,IAAID,YAAa;IACjEI,OAAO,EAAER,UAAW;IAAAH,QAAA,EAEnBA,QAAQ,IAAIE,CAAC,CAAC,aAAa;EAAC,CACvB,CAAC;AAEb,CACF,CAAC","ignoreList":[]}
|
|
@@ -15,7 +15,8 @@ export const QuestionnaireNavigationSubmitButton = /*#__PURE__*/React.memo(({
|
|
|
15
15
|
} = useTranslation();
|
|
16
16
|
const {
|
|
17
17
|
paged,
|
|
18
|
-
submitForm
|
|
18
|
+
submitForm,
|
|
19
|
+
isSubmitting
|
|
19
20
|
} = useQuestionnaireForm();
|
|
20
21
|
const {
|
|
21
22
|
isLastItem
|
|
@@ -27,7 +28,8 @@ export const QuestionnaireNavigationSubmitButton = /*#__PURE__*/React.memo(({
|
|
|
27
28
|
mode: "contained",
|
|
28
29
|
...buttonProps,
|
|
29
30
|
onPress: submitForm,
|
|
30
|
-
disabled: buttonProps.disabled,
|
|
31
|
+
disabled: buttonProps.disabled || isSubmitting,
|
|
32
|
+
loading: isSubmitting,
|
|
31
33
|
children: children || t("common.submit")
|
|
32
34
|
});
|
|
33
35
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useTranslation","Button","useQuestionnaireForm","useQuestionnaireNavigation","jsx","_jsx","QuestionnaireNavigationSubmitButton","memo","children","buttonProps","t","paged","submitForm","isLastItem","mode","onPress","disabled"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/components/navigation/questionnaire-navigation-submit-button.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,cAAc,QAAQ,eAAe;AAC9C,SAASC,MAAM,QAAQ,oBAAoB;AAE3C,SAASC,oBAAoB,QAAQ,uCAAoC;AACzE,SAASC,0BAA0B,QAAQ,6CAA0C;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAGtF,OAAO,MAAMC,mCAAmC,gBAAGP,KAAK,CAACQ,IAAI,CAC3D,CAAC;EAAEC,QAAQ;EAAE,GAAGC;AAAgD,CAAC,KAAK;EACpE,MAAM;IAAEC;EAAE,CAAC,GAAGV,cAAc,CAAC,CAAC;EAE9B,MAAM;IAAEW,KAAK;IAAEC;
|
|
1
|
+
{"version":3,"names":["React","useTranslation","Button","useQuestionnaireForm","useQuestionnaireNavigation","jsx","_jsx","QuestionnaireNavigationSubmitButton","memo","children","buttonProps","t","paged","submitForm","isSubmitting","isLastItem","mode","onPress","disabled","loading"],"sourceRoot":"../../../../../../src","sources":["modules/questionnaire-response-form/components/navigation/questionnaire-navigation-submit-button.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,cAAc,QAAQ,eAAe;AAC9C,SAASC,MAAM,QAAQ,oBAAoB;AAE3C,SAASC,oBAAoB,QAAQ,uCAAoC;AACzE,SAASC,0BAA0B,QAAQ,6CAA0C;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAGtF,OAAO,MAAMC,mCAAmC,gBAAGP,KAAK,CAACQ,IAAI,CAC3D,CAAC;EAAEC,QAAQ;EAAE,GAAGC;AAAgD,CAAC,KAAK;EACpE,MAAM;IAAEC;EAAE,CAAC,GAAGV,cAAc,CAAC,CAAC;EAE9B,MAAM;IAAEW,KAAK;IAAEC,UAAU;IAAEC;EAAa,CAAC,GAAGX,oBAAoB,CAAC,CAAC;EAClE,MAAM;IAAEY;EAAW,CAAC,GAAGX,0BAA0B,CAAC,CAAC;EAEnD,IAAI,CAACW,UAAU,IAAIH,KAAK,EAAE;IACxB,OAAO,IAAI;EACb;EAEA,oBACEN,IAAA,CAACJ,MAAM;IACLc,IAAI,EAAC,WAAW;IAAA,GACZN,WAAW;IACfO,OAAO,EAAEJ,UAAW;IACpBK,QAAQ,EAAER,WAAW,CAACQ,QAAQ,IAAIJ,YAAa;IAC/CK,OAAO,EAAEL,YAAa;IAAAL,QAAA,EAErBA,QAAQ,IAAIE,CAAC,CAAC,eAAe;EAAC,CACzB,CAAC;AAEb,CACF,CAAC","ignoreList":[]}
|
package/lib/module/modules/questionnaire-response-form/components/questionnaire-form-provider.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
/* eslint-disable max-lines */
|
|
4
|
+
|
|
3
5
|
import { getReferenceString, useClient } from "@ovok/core";
|
|
4
6
|
import { useFormik } from "formik";
|
|
5
7
|
import React from "react";
|
|
@@ -24,26 +26,34 @@ export const QuestionnaireFormProvider = /*#__PURE__*/React.memo(({
|
|
|
24
26
|
const [currentPageIndex, setCurrentPageIndex] = React.useState(0);
|
|
25
27
|
const [currentItemIndex, setCurrentItemIndex] = React.useState(0);
|
|
26
28
|
const [errorMessage, setErrorMessage] = React.useState(null);
|
|
29
|
+
const [submissionError, setSubmissionError] = React.useState(null);
|
|
30
|
+
const submissionInFlight = React.useRef(false);
|
|
31
|
+
const submissionIdentifier = React.useRef(null);
|
|
27
32
|
const pages = React.useMemo(() => FormUtils.extractPagesFromQuestionnaire(questionnaire), [questionnaire]);
|
|
28
33
|
const initialValues = React.useMemo(() => _initialValues || FormUtils.initializeDefaultValues(pages), [_initialValues, pages]);
|
|
29
34
|
const handleSubmit = React.useCallback(async (values, formikHelpers) => {
|
|
30
|
-
|
|
31
|
-
if (!validationResult.isValid) {
|
|
32
|
-
const {
|
|
33
|
-
pageIndex,
|
|
34
|
-
itemIndex
|
|
35
|
-
} = validationResult.firstUnansweredLocation;
|
|
36
|
-
setCurrentPageIndex(pageIndex);
|
|
37
|
-
setCurrentItemIndex(itemIndex);
|
|
38
|
-
setErrorMessage("questionnaire-form.error.required-fields");
|
|
39
|
-
return;
|
|
40
|
-
}
|
|
41
|
-
delete values.currentLinkId;
|
|
42
|
-
if (onSubmit) {
|
|
43
|
-
onSubmit(values, formikHelpers);
|
|
35
|
+
if (submissionInFlight.current) {
|
|
44
36
|
return;
|
|
45
37
|
}
|
|
38
|
+
submissionInFlight.current = true;
|
|
39
|
+
setSubmissionError(null);
|
|
46
40
|
try {
|
|
41
|
+
const validationResult = FormValidation.validateRequiredFields(pages, values);
|
|
42
|
+
if (!validationResult.isValid) {
|
|
43
|
+
const {
|
|
44
|
+
pageIndex,
|
|
45
|
+
itemIndex
|
|
46
|
+
} = validationResult.firstUnansweredLocation;
|
|
47
|
+
setCurrentPageIndex(pageIndex);
|
|
48
|
+
setCurrentItemIndex(itemIndex);
|
|
49
|
+
setErrorMessage("questionnaire-form.error.required-fields");
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
delete values.currentLinkId;
|
|
53
|
+
if (onSubmit) {
|
|
54
|
+
await onSubmit(values, formikHelpers);
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
47
57
|
const activeProfile = await client.getProfileAsync();
|
|
48
58
|
if (!activeProfile) {
|
|
49
59
|
throw new Error("questionnaire-form.error.profile-not-found");
|
|
@@ -52,12 +62,21 @@ export const QuestionnaireFormProvider = /*#__PURE__*/React.memo(({
|
|
|
52
62
|
response.subject = {
|
|
53
63
|
reference: getReferenceString(activeProfile)
|
|
54
64
|
};
|
|
55
|
-
|
|
65
|
+
submissionIdentifier.current ??= `${questionnaire.id ?? "unknown"}-${Date.now()}-${Math.random().toString(36).slice(2)}`;
|
|
66
|
+
const identifierValue = submissionIdentifier.current;
|
|
67
|
+
const identifierSystem = "https://sdk.ovok.com/questionnaire-response";
|
|
68
|
+
response.identifier = {
|
|
69
|
+
system: identifierSystem,
|
|
70
|
+
value: identifierValue
|
|
71
|
+
};
|
|
72
|
+
const createdResponse = await client.createResourceIfNoneExist(response, `identifier=${identifierSystem}|${identifierValue}`);
|
|
56
73
|
onSuccess?.(createdResponse);
|
|
57
74
|
} catch (error) {
|
|
58
75
|
const typedError = error;
|
|
59
76
|
onError?.(error);
|
|
60
|
-
|
|
77
|
+
setSubmissionError(typedError.message || "questionnaire-form.error.submit-failed");
|
|
78
|
+
} finally {
|
|
79
|
+
submissionInFlight.current = false;
|
|
61
80
|
}
|
|
62
81
|
}, [onSubmit, onSuccess, onError, pages, questionnaire, client]);
|
|
63
82
|
const allItems = React.useMemo(() => pages.flatMap(page => page.item ? page.item : []), [pages]);
|
|
@@ -91,6 +110,10 @@ export const QuestionnaireFormProvider = /*#__PURE__*/React.memo(({
|
|
|
91
110
|
values,
|
|
92
111
|
setFieldValue
|
|
93
112
|
} = formik;
|
|
113
|
+
const retrySubmit = React.useCallback(() => {
|
|
114
|
+
setSubmissionError(null);
|
|
115
|
+
void formik.submitForm();
|
|
116
|
+
}, [formik]);
|
|
94
117
|
const currentPage = React.useMemo(() => pages[currentPageIndex], [pages, currentPageIndex]);
|
|
95
118
|
const enabledItems = React.useMemo(() => currentPage ? ConditionUtils.getEnabledItemsForPage(currentPage, values) : [], [currentPage, values]);
|
|
96
119
|
useInitialSelectedValues(pages, values, setFieldValue);
|
|
@@ -108,6 +131,8 @@ export const QuestionnaireFormProvider = /*#__PURE__*/React.memo(({
|
|
|
108
131
|
currentPageIndex,
|
|
109
132
|
currentItemIndex,
|
|
110
133
|
errorMessage,
|
|
134
|
+
submissionError,
|
|
135
|
+
retrySubmit,
|
|
111
136
|
pages,
|
|
112
137
|
allItems,
|
|
113
138
|
setCurrentItemIndex,
|
|
@@ -115,7 +140,7 @@ export const QuestionnaireFormProvider = /*#__PURE__*/React.memo(({
|
|
|
115
140
|
setErrorMessage,
|
|
116
141
|
paged,
|
|
117
142
|
...formik
|
|
118
|
-
}), [questionnaire, currentItem, currentPage, currentPageIndex, currentItemIndex, errorMessage, pages, allItems, setCurrentItemIndex, setCurrentPageIndex, setErrorMessage, paged, formik]);
|
|
143
|
+
}), [questionnaire, currentItem, currentPage, currentPageIndex, currentItemIndex, errorMessage, submissionError, retrySubmit, pages, allItems, setCurrentItemIndex, setCurrentPageIndex, setErrorMessage, paged, formik]);
|
|
119
144
|
return /*#__PURE__*/_jsx(QuestionnaireFormContext.Provider, {
|
|
120
145
|
value: contextValue,
|
|
121
146
|
children: /*#__PURE__*/_jsx(QuestionnaireNavigationProvider, {
|
package/lib/module/modules/questionnaire-response-form/components/questionnaire-form-provider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getReferenceString","useClient","useFormik","React","QuestionnaireFormContext","useInitialSelectedValues","ConditionUtils","FormUtils","FormValidation","QuestionnaireSubmitUtils","QuestionnaireNavigationProvider","jsx","_jsx","QuestionnaireFormProvider","memo","children","questionnaire","initialValues","_initialValues","onSubmit","onSuccess","onError","paged","client","currentPageIndex","setCurrentPageIndex","useState","currentItemIndex","setCurrentItemIndex","errorMessage","setErrorMessage","pages","useMemo","extractPagesFromQuestionnaire","initializeDefaultValues","handleSubmit","useCallback","values","formikHelpers","validationResult","validateRequiredFields","isValid","pageIndex","itemIndex","firstUnansweredLocation","currentLinkId","activeProfile","getProfileAsync","Error","response","createQuestionnaireResponse","subject","reference","createdResponse","
|
|
1
|
+
{"version":3,"names":["getReferenceString","useClient","useFormik","React","QuestionnaireFormContext","useInitialSelectedValues","ConditionUtils","FormUtils","FormValidation","QuestionnaireSubmitUtils","QuestionnaireNavigationProvider","jsx","_jsx","QuestionnaireFormProvider","memo","children","questionnaire","initialValues","_initialValues","onSubmit","onSuccess","onError","paged","client","currentPageIndex","setCurrentPageIndex","useState","currentItemIndex","setCurrentItemIndex","errorMessage","setErrorMessage","submissionError","setSubmissionError","submissionInFlight","useRef","submissionIdentifier","pages","useMemo","extractPagesFromQuestionnaire","initializeDefaultValues","handleSubmit","useCallback","values","formikHelpers","current","validationResult","validateRequiredFields","isValid","pageIndex","itemIndex","firstUnansweredLocation","currentLinkId","activeProfile","getProfileAsync","Error","response","createQuestionnaireResponse","subject","reference","id","Date","now","Math","random","toString","slice","identifierValue","identifierSystem","identifier","system","value","createdResponse","createResourceIfNoneExist","error","typedError","message","allItems","flatMap","page","item","formik","validateOnBlur","enableReinitialize","validate","cleanedValues","hasChanges","forEach","linkId","enableWhen","length","undefined","isItemEnabled","setValues","Object","some","setFieldError","setFieldValue","retrySubmit","submitForm","currentPage","enabledItems","getEnabledItemsForPage","currentItem","allEnabledItems","useEffect","contextValue","Provider"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/components/questionnaire-form-provider.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -38,9 +38,10 @@ export const QuestionnaireNavigationProvider = ({
|
|
|
38
38
|
});
|
|
39
39
|
const contextValue = React.useMemo(() => ({
|
|
40
40
|
...navigationState,
|
|
41
|
+
isSubmitting: formik.isSubmitting,
|
|
41
42
|
handleNext,
|
|
42
43
|
handlePrevious
|
|
43
|
-
}), [navigationState, handleNext, handlePrevious]);
|
|
44
|
+
}), [navigationState, formik.isSubmitting, handleNext, handlePrevious]);
|
|
44
45
|
return /*#__PURE__*/_jsx(QuestionnaireNavigationContext.Provider, {
|
|
45
46
|
value: contextValue,
|
|
46
47
|
children: children
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","QuestionnaireNavigationContext","useNavigationHandlers","useQuestionnaireNavigationState","jsx","_jsx","QuestionnaireNavigationProvider","children","currentItem","currentPage","enabledItems","allEnabledItems","pages","values","currentItemIndex","currentPageIndex","setCurrentItemIndex","setCurrentPageIndex","setErrorMessage","formik","navigationState","handleNext","handlePrevious","contextValue","useMemo","Provider","value"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/components/questionnaire-navigation-provider.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,8BAA8B,QAAQ,iDAA8C;AAC7F,SAASC,qBAAqB,QAAQ,qCAAkC;AACxE,SAASC,+BAA+B,QAAQ,gDAA6C;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAG9F,OAAO,MAAMC,+BAEZ,GAAGA,CAAC;EACHC,QAAQ;EACRC,WAAW;EACXC,WAAW;EACXC,YAAY;EACZC,eAAe;EACfC,KAAK;EACLC,MAAM;EACNC,gBAAgB;EAChBC,gBAAgB;EAChBC,mBAAmB;EACnBC,mBAAmB;EACnBC,eAAe;EACfC;AACF,CAAC,KAAK;EACJ,MAAMC,eAAe,GAAGjB,+BAA+B,CACrDK,WAAW,EACXO,gBAAgB,EAChBD,gBAAgB,EAChBJ,YAAY,EACZE,KAAK,EACLC,MAAM,EACNF,eACF,CAAC;EAED,MAAM;IAAEU,UAAU;IAAEC;EAAe,CAAC,GAAGpB,qBAAqB,CAAC;IAC3DM,WAAW;IACXC,WAAW;IACXC,YAAY;IACZS,MAAM;IACNL,gBAAgB;IAChBC,gBAAgB;IAChBH,KAAK;IACLI,mBAAmB;IACnBC,mBAAmB;IACnBC;EACF,CAAC,CAAC;EAEF,MAAMK,YAAY,GAAGvB,KAAK,CAACwB,OAAO,CAChC,OAAO;IACL,GAAGJ,eAAe;
|
|
1
|
+
{"version":3,"names":["React","QuestionnaireNavigationContext","useNavigationHandlers","useQuestionnaireNavigationState","jsx","_jsx","QuestionnaireNavigationProvider","children","currentItem","currentPage","enabledItems","allEnabledItems","pages","values","currentItemIndex","currentPageIndex","setCurrentItemIndex","setCurrentPageIndex","setErrorMessage","formik","navigationState","handleNext","handlePrevious","contextValue","useMemo","isSubmitting","Provider","value"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/components/questionnaire-navigation-provider.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,8BAA8B,QAAQ,iDAA8C;AAC7F,SAASC,qBAAqB,QAAQ,qCAAkC;AACxE,SAASC,+BAA+B,QAAQ,gDAA6C;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAG9F,OAAO,MAAMC,+BAEZ,GAAGA,CAAC;EACHC,QAAQ;EACRC,WAAW;EACXC,WAAW;EACXC,YAAY;EACZC,eAAe;EACfC,KAAK;EACLC,MAAM;EACNC,gBAAgB;EAChBC,gBAAgB;EAChBC,mBAAmB;EACnBC,mBAAmB;EACnBC,eAAe;EACfC;AACF,CAAC,KAAK;EACJ,MAAMC,eAAe,GAAGjB,+BAA+B,CACrDK,WAAW,EACXO,gBAAgB,EAChBD,gBAAgB,EAChBJ,YAAY,EACZE,KAAK,EACLC,MAAM,EACNF,eACF,CAAC;EAED,MAAM;IAAEU,UAAU;IAAEC;EAAe,CAAC,GAAGpB,qBAAqB,CAAC;IAC3DM,WAAW;IACXC,WAAW;IACXC,YAAY;IACZS,MAAM;IACNL,gBAAgB;IAChBC,gBAAgB;IAChBH,KAAK;IACLI,mBAAmB;IACnBC,mBAAmB;IACnBC;EACF,CAAC,CAAC;EAEF,MAAMK,YAAY,GAAGvB,KAAK,CAACwB,OAAO,CAChC,OAAO;IACL,GAAGJ,eAAe;IAClBK,YAAY,EAAEN,MAAM,CAACM,YAAY;IACjCJ,UAAU;IACVC;EACF,CAAC,CAAC,EACF,CAACF,eAAe,EAAED,MAAM,CAACM,YAAY,EAAEJ,UAAU,EAAEC,cAAc,CACnE,CAAC;EAED,oBACEjB,IAAA,CAACJ,8BAA8B,CAACyB,QAAQ;IAACC,KAAK,EAAEJ,YAAa;IAAAhB,QAAA,EAC1DA;EAAQ,CAC8B,CAAC;AAE9C,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","QuestionnaireNavigationContext","createContext","undefined"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/contexts/questionnaire-navigation-context.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;
|
|
1
|
+
{"version":3,"names":["React","QuestionnaireNavigationContext","createContext","undefined"],"sourceRoot":"../../../../../src","sources":["modules/questionnaire-response-form/contexts/questionnaire-navigation-context.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AAczB,OAAO,MAAMC,8BAA8B,gBAAGD,KAAK,CAACE,aAAa,CAE/DC,SAAS,CAAC","ignoreList":[]}
|
|
@@ -11,7 +11,8 @@ export const TaskIcon = ({
|
|
|
11
11
|
}) => {
|
|
12
12
|
const theme = useAppTheme();
|
|
13
13
|
const iconXML = React.useMemo(() => {
|
|
14
|
-
|
|
14
|
+
const iconRenderer = measurementIconSvg[props.measurementTypeKey];
|
|
15
|
+
return iconRenderer?.(props.color || theme.colors.primary) ?? null;
|
|
15
16
|
}, [props.measurementTypeKey, props.color, theme.colors.primary]);
|
|
16
17
|
if (!iconXML) {
|
|
17
18
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","SvgXml","useAppTheme","measurementIconSvg","jsx","_jsx","TaskIcon","size","props","theme","iconXML","useMemo","measurementTypeKey","color","colors","primary","testID","xml","width","height"],"sourceRoot":"../../../../../src","sources":["modules/tile/components/task-icon.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,MAAM,QAAQ,kBAAkB;AAEzC,SAASC,WAAW,QAAQ,sBAAa;AACzC,SAASC,kBAAkB,QAAQ,sCAAmC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAGvE,OAAO,MAAMC,QAAQ,GAAGA,CAAC;EAAEC,IAAI,GAAG,EAAE;EAAE,GAAGC;AAAqB,CAAC,KAAK;EAClE,MAAMC,KAAK,GAAGP,WAAW,CAAC,CAAC;EAE3B,MAAMQ,OAAO,GAAGV,KAAK,CAACW,OAAO,CAAC,MAAM;IAClC,
|
|
1
|
+
{"version":3,"names":["React","SvgXml","useAppTheme","measurementIconSvg","jsx","_jsx","TaskIcon","size","props","theme","iconXML","useMemo","iconRenderer","measurementTypeKey","color","colors","primary","testID","xml","width","height"],"sourceRoot":"../../../../../src","sources":["modules/tile/components/task-icon.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,MAAM,QAAQ,kBAAkB;AAEzC,SAASC,WAAW,QAAQ,sBAAa;AACzC,SAASC,kBAAkB,QAAQ,sCAAmC;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAGvE,OAAO,MAAMC,QAAQ,GAAGA,CAAC;EAAEC,IAAI,GAAG,EAAE;EAAE,GAAGC;AAAqB,CAAC,KAAK;EAClE,MAAMC,KAAK,GAAGP,WAAW,CAAC,CAAC;EAE3B,MAAMQ,OAAO,GAAGV,KAAK,CAACW,OAAO,CAAC,MAAM;IAClC,MAAMC,YAAY,GAChBT,kBAAkB,CAChBK,KAAK,CAACK,kBAAkB,CACzB;IAEH,OAAOD,YAAY,GAAGJ,KAAK,CAACM,KAAK,IAAIL,KAAK,CAACM,MAAM,CAACC,OAAO,CAAC,IAAI,IAAI;EACpE,CAAC,EAAE,CAACR,KAAK,CAACK,kBAAkB,EAAEL,KAAK,CAACM,KAAK,EAAEL,KAAK,CAACM,MAAM,CAACC,OAAO,CAAC,CAAC;EAEjE,IAAI,CAACN,OAAO,EAAE;IACZ,OAAO,IAAI;EACb;EAEA,oBACEL,IAAA,CAACJ,MAAM;IAACgB,MAAM,EAAET,KAAK,CAACS,MAAO;IAACC,GAAG,EAAER,OAAQ;IAACS,KAAK,EAAEZ,IAAK;IAACa,MAAM,EAAEb;EAAK,CAAE,CAAC;AAE7E,CAAC","ignoreList":[]}
|