@jjlmoya/utils-health 1.9.0 → 1.10.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.
Files changed (36) hide show
  1. package/package.json +3 -2
  2. package/src/category/index.ts +11 -11
  3. package/src/entries.ts +34 -0
  4. package/src/tool/binauralTuner/entry.ts +27 -0
  5. package/src/tool/binauralTuner/index.ts +2 -29
  6. package/src/tool/bloodUnitConverter/entry.ts +27 -0
  7. package/src/tool/bloodUnitConverter/index.ts +2 -29
  8. package/src/tool/bmiCalculator/entry.ts +27 -0
  9. package/src/tool/bmiCalculator/index.ts +2 -29
  10. package/src/tool/breathingVisualizer/entry.ts +27 -0
  11. package/src/tool/breathingVisualizer/index.ts +2 -29
  12. package/src/tool/caffeineTracker/entry.ts +27 -0
  13. package/src/tool/caffeineTracker/index.ts +2 -29
  14. package/src/tool/daltonismSimulator/entry.ts +27 -0
  15. package/src/tool/daltonismSimulator/index.ts +2 -29
  16. package/src/tool/digestionStopwatch/entry.ts +27 -0
  17. package/src/tool/digestionStopwatch/index.ts +2 -29
  18. package/src/tool/epworthSleepinessScale/entry.ts +27 -0
  19. package/src/tool/epworthSleepinessScale/index.ts +2 -29
  20. package/src/tool/hydrationCalculator/entry.ts +27 -0
  21. package/src/tool/hydrationCalculator/index.ts +2 -29
  22. package/src/tool/pelliRobsonTest/entry.ts +27 -0
  23. package/src/tool/pelliRobsonTest/index.ts +2 -29
  24. package/src/tool/peripheralVisionTrainer/entry.ts +27 -0
  25. package/src/tool/peripheralVisionTrainer/index.ts +2 -29
  26. package/src/tool/readingDistanceCalculator/entry.ts +27 -0
  27. package/src/tool/readingDistanceCalculator/index.ts +2 -29
  28. package/src/tool/screenDecompressionTime/entry.ts +27 -0
  29. package/src/tool/screenDecompressionTime/index.ts +2 -29
  30. package/src/tool/tinnitusReliever/entry.ts +27 -0
  31. package/src/tool/tinnitusReliever/index.ts +2 -29
  32. package/src/tool/ubeCalculator/entry.ts +27 -0
  33. package/src/tool/ubeCalculator/index.ts +2 -29
  34. package/src/tool/waterPurifier/entry.ts +27 -0
  35. package/src/tool/waterPurifier/index.ts +2 -29
  36. package/src/tools.ts +1 -1
package/package.json CHANGED
@@ -1,12 +1,13 @@
1
1
  {
2
2
  "name": "@jjlmoya/utils-health",
3
- "version": "1.9.0",
3
+ "version": "1.10.0",
4
4
  "type": "module",
5
5
  "main": "./src/index.ts",
6
6
  "types": "./src/index.ts",
7
7
  "exports": {
8
8
  ".": "./src/index.ts",
9
- "./data": "./src/data.ts"
9
+ "./data": "./src/data.ts",
10
+ "./entries": "./src/entries.ts"
10
11
  },
11
12
  "files": [
12
13
  "src"
@@ -1,15 +1,15 @@
1
1
  import type { HealthCategoryEntry } from '../types';
2
- import { bmiCalculator } from '../tool/bmiCalculator';
3
- import { daltonismSimulator } from '../tool/daltonismSimulator';
4
- import { tinnitusReliever } from '../tool/tinnitusReliever';
5
- import { breathingVisualizer } from '../tool/breathingVisualizer';
6
- import { caffeineTracker } from '../tool/caffeineTracker';
7
- import { waterPurifier } from '../tool/waterPurifier';
8
- import { digestionStopwatch } from '../tool/digestionStopwatch';
9
- import { binauralTuner } from '../tool/binauralTuner';
10
- import { pelliRobsonTest } from '../tool/pelliRobsonTest';
11
- import { peripheralVisionTrainer } from '../tool/peripheralVisionTrainer';
12
- import { epworthSleepinessScale } from '../tool/epworthSleepinessScale';
2
+ import { bmiCalculator } from '../tool/bmiCalculator/entry';
3
+ import { daltonismSimulator } from '../tool/daltonismSimulator/entry';
4
+ import { tinnitusReliever } from '../tool/tinnitusReliever/entry';
5
+ import { breathingVisualizer } from '../tool/breathingVisualizer/entry';
6
+ import { caffeineTracker } from '../tool/caffeineTracker/entry';
7
+ import { waterPurifier } from '../tool/waterPurifier/entry';
8
+ import { digestionStopwatch } from '../tool/digestionStopwatch/entry';
9
+ import { binauralTuner } from '../tool/binauralTuner/entry';
10
+ import { pelliRobsonTest } from '../tool/pelliRobsonTest/entry';
11
+ import { peripheralVisionTrainer } from '../tool/peripheralVisionTrainer/entry';
12
+ import { epworthSleepinessScale } from '../tool/epworthSleepinessScale/entry';
13
13
 
14
14
  export const healthCategory: HealthCategoryEntry = {
15
15
  icon: 'mdi:heart-pulse',
package/src/entries.ts ADDED
@@ -0,0 +1,34 @@
1
+ export { binauralTuner } from './tool/binauralTuner/entry';
2
+ export { bloodUnitConverter } from './tool/bloodUnitConverter/entry';
3
+ export { bmiCalculator } from './tool/bmiCalculator/entry';
4
+ export { breathingVisualizer } from './tool/breathingVisualizer/entry';
5
+ export { caffeineTracker } from './tool/caffeineTracker/entry';
6
+ export { daltonismSimulator } from './tool/daltonismSimulator/entry';
7
+ export { digestionStopwatch } from './tool/digestionStopwatch/entry';
8
+ export { epworthSleepinessScale } from './tool/epworthSleepinessScale/entry';
9
+ export { hydrationCalculator } from './tool/hydrationCalculator/entry';
10
+ export { pelliRobsonTest } from './tool/pelliRobsonTest/entry';
11
+ export { peripheralVisionTrainer } from './tool/peripheralVisionTrainer/entry';
12
+ export { readingDistanceCalculator } from './tool/readingDistanceCalculator/entry';
13
+ export { screenDecompressionTime } from './tool/screenDecompressionTime/entry';
14
+ export { tinnitusReliever } from './tool/tinnitusReliever/entry';
15
+ export { ubeCalculator } from './tool/ubeCalculator/entry';
16
+ export { waterPurifier } from './tool/waterPurifier/entry';
17
+ export { healthCategory } from './category';
18
+ import { binauralTuner } from './tool/binauralTuner/entry';
19
+ import { bloodUnitConverter } from './tool/bloodUnitConverter/entry';
20
+ import { bmiCalculator } from './tool/bmiCalculator/entry';
21
+ import { breathingVisualizer } from './tool/breathingVisualizer/entry';
22
+ import { caffeineTracker } from './tool/caffeineTracker/entry';
23
+ import { daltonismSimulator } from './tool/daltonismSimulator/entry';
24
+ import { digestionStopwatch } from './tool/digestionStopwatch/entry';
25
+ import { epworthSleepinessScale } from './tool/epworthSleepinessScale/entry';
26
+ import { hydrationCalculator } from './tool/hydrationCalculator/entry';
27
+ import { pelliRobsonTest } from './tool/pelliRobsonTest/entry';
28
+ import { peripheralVisionTrainer } from './tool/peripheralVisionTrainer/entry';
29
+ import { readingDistanceCalculator } from './tool/readingDistanceCalculator/entry';
30
+ import { screenDecompressionTime } from './tool/screenDecompressionTime/entry';
31
+ import { tinnitusReliever } from './tool/tinnitusReliever/entry';
32
+ import { ubeCalculator } from './tool/ubeCalculator/entry';
33
+ import { waterPurifier } from './tool/waterPurifier/entry';
34
+ export const ALL_ENTRIES = [binauralTuner, bloodUnitConverter, bmiCalculator, breathingVisualizer, caffeineTracker, daltonismSimulator, digestionStopwatch, epworthSleepinessScale, hydrationCalculator, pelliRobsonTest, peripheralVisionTrainer, readingDistanceCalculator, screenDecompressionTime, tinnitusReliever, ubeCalculator, waterPurifier];
@@ -0,0 +1,27 @@
1
+ import type { HealthToolEntry } from '../../types';
2
+ import type { BinauralTunerUI } from './ui';
3
+
4
+ export const binauralTuner: HealthToolEntry<BinauralTunerUI> = {
5
+ id: 'binauralTuner',
6
+ icons: {
7
+ bg: 'mdi:headphones',
8
+ fg: 'mdi:sine-wave',
9
+ },
10
+ i18n: {
11
+ de: () => import('./i18n/de').then((m) => m.content),
12
+ en: () => import('./i18n/en').then((m) => m.content),
13
+ es: () => import('./i18n/es').then((m) => m.content),
14
+ fr: () => import('./i18n/fr').then((m) => m.content),
15
+ id: () => import('./i18n/id').then((m) => m.content),
16
+ it: () => import('./i18n/it').then((m) => m.content),
17
+ ja: () => import('./i18n/ja').then((m) => m.content),
18
+ ko: () => import('./i18n/ko').then((m) => m.content),
19
+ nl: () => import('./i18n/nl').then((m) => m.content),
20
+ pl: () => import('./i18n/pl').then((m) => m.content),
21
+ pt: () => import('./i18n/pt').then((m) => m.content),
22
+ ru: () => import('./i18n/ru').then((m) => m.content),
23
+ sv: () => import('./i18n/sv').then((m) => m.content),
24
+ tr: () => import('./i18n/tr').then((m) => m.content),
25
+ zh: () => import('./i18n/zh').then((m) => m.content),
26
+ },
27
+ };
@@ -1,32 +1,5 @@
1
- import type { HealthToolEntry, ToolDefinition } from '../../types';
2
- import type { BinauralTunerUI } from './ui';
3
-
4
- export const binauralTuner: HealthToolEntry<BinauralTunerUI> = {
5
- id: 'binauralTuner',
6
- icons: {
7
- bg: 'mdi:headphones',
8
- fg: 'mdi:sine-wave',
9
- },
10
- i18n: {
11
- de: () => import('./i18n/de').then((m) => m.content),
12
- en: () => import('./i18n/en').then((m) => m.content),
13
- es: () => import('./i18n/es').then((m) => m.content),
14
- fr: () => import('./i18n/fr').then((m) => m.content),
15
- id: () => import('./i18n/id').then((m) => m.content),
16
- it: () => import('./i18n/it').then((m) => m.content),
17
- ja: () => import('./i18n/ja').then((m) => m.content),
18
- ko: () => import('./i18n/ko').then((m) => m.content),
19
- nl: () => import('./i18n/nl').then((m) => m.content),
20
- pl: () => import('./i18n/pl').then((m) => m.content),
21
- pt: () => import('./i18n/pt').then((m) => m.content),
22
- ru: () => import('./i18n/ru').then((m) => m.content),
23
- sv: () => import('./i18n/sv').then((m) => m.content),
24
- tr: () => import('./i18n/tr').then((m) => m.content),
25
- zh: () => import('./i18n/zh').then((m) => m.content),
26
- },
27
- };
28
-
29
-
1
+ import { binauralTuner } from './entry';
2
+ export * from './entry';
30
3
  export const BINAURAL_TUNER_TOOL: ToolDefinition = {
31
4
  entry: binauralTuner,
32
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,27 @@
1
+ import type { HealthToolEntry } from '../../types';
2
+ import type { BloodUnitConverterUI } from './ui';
3
+
4
+ export const bloodUnitConverter: HealthToolEntry<BloodUnitConverterUI> = {
5
+ id: 'bloodUnitConverter',
6
+ icons: {
7
+ bg: 'mdi:test-tube',
8
+ fg: 'mdi:water-percent',
9
+ },
10
+ i18n: {
11
+ de: () => import('./i18n/de').then((m) => m.content),
12
+ en: () => import('./i18n/en').then((m) => m.content),
13
+ es: () => import('./i18n/es').then((m) => m.content),
14
+ fr: () => import('./i18n/fr').then((m) => m.content),
15
+ id: () => import('./i18n/id').then((m) => m.content),
16
+ it: () => import('./i18n/it').then((m) => m.content),
17
+ ja: () => import('./i18n/ja').then((m) => m.content),
18
+ ko: () => import('./i18n/ko').then((m) => m.content),
19
+ nl: () => import('./i18n/nl').then((m) => m.content),
20
+ pl: () => import('./i18n/pl').then((m) => m.content),
21
+ pt: () => import('./i18n/pt').then((m) => m.content),
22
+ ru: () => import('./i18n/ru').then((m) => m.content),
23
+ sv: () => import('./i18n/sv').then((m) => m.content),
24
+ tr: () => import('./i18n/tr').then((m) => m.content),
25
+ zh: () => import('./i18n/zh').then((m) => m.content),
26
+ },
27
+ };
@@ -1,32 +1,5 @@
1
- import type { HealthToolEntry, ToolDefinition } from '../../types';
2
- import type { BloodUnitConverterUI } from './ui';
3
-
4
- export const bloodUnitConverter: HealthToolEntry<BloodUnitConverterUI> = {
5
- id: 'bloodUnitConverter',
6
- icons: {
7
- bg: 'mdi:test-tube',
8
- fg: 'mdi:water-percent',
9
- },
10
- i18n: {
11
- de: () => import('./i18n/de').then((m) => m.content),
12
- en: () => import('./i18n/en').then((m) => m.content),
13
- es: () => import('./i18n/es').then((m) => m.content),
14
- fr: () => import('./i18n/fr').then((m) => m.content),
15
- id: () => import('./i18n/id').then((m) => m.content),
16
- it: () => import('./i18n/it').then((m) => m.content),
17
- ja: () => import('./i18n/ja').then((m) => m.content),
18
- ko: () => import('./i18n/ko').then((m) => m.content),
19
- nl: () => import('./i18n/nl').then((m) => m.content),
20
- pl: () => import('./i18n/pl').then((m) => m.content),
21
- pt: () => import('./i18n/pt').then((m) => m.content),
22
- ru: () => import('./i18n/ru').then((m) => m.content),
23
- sv: () => import('./i18n/sv').then((m) => m.content),
24
- tr: () => import('./i18n/tr').then((m) => m.content),
25
- zh: () => import('./i18n/zh').then((m) => m.content),
26
- },
27
- };
28
-
29
-
1
+ import { bloodUnitConverter } from './entry';
2
+ export * from './entry';
30
3
  export const BLOOD_UNIT_CONVERTER_TOOL: ToolDefinition = {
31
4
  entry: bloodUnitConverter,
32
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,27 @@
1
+ import type { HealthToolEntry } from '../../types';
2
+ import type { BMICalculatorUI } from './ui';
3
+
4
+ export const bmiCalculator: HealthToolEntry<BMICalculatorUI> = {
5
+ id: 'bmiCalculator',
6
+ icons: {
7
+ bg: 'mdi:scale-bathroom',
8
+ fg: 'mdi:human',
9
+ },
10
+ i18n: {
11
+ de: () => import('./i18n/de').then((m) => m.content),
12
+ en: () => import('./i18n/en').then((m) => m.content),
13
+ es: () => import('./i18n/es').then((m) => m.content),
14
+ fr: () => import('./i18n/fr').then((m) => m.content),
15
+ id: () => import('./i18n/id').then((m) => m.content),
16
+ it: () => import('./i18n/it').then((m) => m.content),
17
+ ja: () => import('./i18n/ja').then((m) => m.content),
18
+ ko: () => import('./i18n/ko').then((m) => m.content),
19
+ nl: () => import('./i18n/nl').then((m) => m.content),
20
+ pl: () => import('./i18n/pl').then((m) => m.content),
21
+ pt: () => import('./i18n/pt').then((m) => m.content),
22
+ ru: () => import('./i18n/ru').then((m) => m.content),
23
+ sv: () => import('./i18n/sv').then((m) => m.content),
24
+ tr: () => import('./i18n/tr').then((m) => m.content),
25
+ zh: () => import('./i18n/zh').then((m) => m.content),
26
+ },
27
+ };
@@ -1,32 +1,5 @@
1
- import type { HealthToolEntry, ToolDefinition } from '../../types';
2
- import type { BMICalculatorUI } from './ui';
3
-
4
- export const bmiCalculator: HealthToolEntry<BMICalculatorUI> = {
5
- id: 'bmiCalculator',
6
- icons: {
7
- bg: 'mdi:scale-bathroom',
8
- fg: 'mdi:human',
9
- },
10
- i18n: {
11
- de: () => import('./i18n/de').then((m) => m.content),
12
- en: () => import('./i18n/en').then((m) => m.content),
13
- es: () => import('./i18n/es').then((m) => m.content),
14
- fr: () => import('./i18n/fr').then((m) => m.content),
15
- id: () => import('./i18n/id').then((m) => m.content),
16
- it: () => import('./i18n/it').then((m) => m.content),
17
- ja: () => import('./i18n/ja').then((m) => m.content),
18
- ko: () => import('./i18n/ko').then((m) => m.content),
19
- nl: () => import('./i18n/nl').then((m) => m.content),
20
- pl: () => import('./i18n/pl').then((m) => m.content),
21
- pt: () => import('./i18n/pt').then((m) => m.content),
22
- ru: () => import('./i18n/ru').then((m) => m.content),
23
- sv: () => import('./i18n/sv').then((m) => m.content),
24
- tr: () => import('./i18n/tr').then((m) => m.content),
25
- zh: () => import('./i18n/zh').then((m) => m.content),
26
- },
27
- };
28
-
29
-
1
+ import { bmiCalculator } from './entry';
2
+ export * from './entry';
30
3
  export const BMI_CALCULATOR_TOOL: ToolDefinition = {
31
4
  entry: bmiCalculator,
32
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,27 @@
1
+ import type { HealthToolEntry } from '../../types';
2
+ import type { BreathingVisualizerUI } from './ui';
3
+
4
+ export const breathingVisualizer: HealthToolEntry<BreathingVisualizerUI> = {
5
+ id: 'breathingVisualizer',
6
+ icons: {
7
+ bg: 'mdi:lungs',
8
+ fg: 'mdi:timer-outline',
9
+ },
10
+ i18n: {
11
+ de: () => import('./i18n/de').then((m) => m.content),
12
+ en: () => import('./i18n/en').then((m) => m.content),
13
+ es: () => import('./i18n/es').then((m) => m.content),
14
+ fr: () => import('./i18n/fr').then((m) => m.content),
15
+ id: () => import('./i18n/id').then((m) => m.content),
16
+ it: () => import('./i18n/it').then((m) => m.content),
17
+ ja: () => import('./i18n/ja').then((m) => m.content),
18
+ ko: () => import('./i18n/ko').then((m) => m.content),
19
+ nl: () => import('./i18n/nl').then((m) => m.content),
20
+ pl: () => import('./i18n/pl').then((m) => m.content),
21
+ pt: () => import('./i18n/pt').then((m) => m.content),
22
+ ru: () => import('./i18n/ru').then((m) => m.content),
23
+ sv: () => import('./i18n/sv').then((m) => m.content),
24
+ tr: () => import('./i18n/tr').then((m) => m.content),
25
+ zh: () => import('./i18n/zh').then((m) => m.content),
26
+ },
27
+ };
@@ -1,32 +1,5 @@
1
- import type { HealthToolEntry, ToolDefinition } from '../../types';
2
- import type { BreathingVisualizerUI } from './ui';
3
-
4
- export const breathingVisualizer: HealthToolEntry<BreathingVisualizerUI> = {
5
- id: 'breathingVisualizer',
6
- icons: {
7
- bg: 'mdi:lungs',
8
- fg: 'mdi:timer-outline',
9
- },
10
- i18n: {
11
- de: () => import('./i18n/de').then((m) => m.content),
12
- en: () => import('./i18n/en').then((m) => m.content),
13
- es: () => import('./i18n/es').then((m) => m.content),
14
- fr: () => import('./i18n/fr').then((m) => m.content),
15
- id: () => import('./i18n/id').then((m) => m.content),
16
- it: () => import('./i18n/it').then((m) => m.content),
17
- ja: () => import('./i18n/ja').then((m) => m.content),
18
- ko: () => import('./i18n/ko').then((m) => m.content),
19
- nl: () => import('./i18n/nl').then((m) => m.content),
20
- pl: () => import('./i18n/pl').then((m) => m.content),
21
- pt: () => import('./i18n/pt').then((m) => m.content),
22
- ru: () => import('./i18n/ru').then((m) => m.content),
23
- sv: () => import('./i18n/sv').then((m) => m.content),
24
- tr: () => import('./i18n/tr').then((m) => m.content),
25
- zh: () => import('./i18n/zh').then((m) => m.content),
26
- },
27
- };
28
-
29
-
1
+ import { breathingVisualizer } from './entry';
2
+ export * from './entry';
30
3
  export const BREATHING_VISUALIZER_TOOL: ToolDefinition = {
31
4
  entry: breathingVisualizer,
32
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,27 @@
1
+ import type { HealthToolEntry } from '../../types';
2
+ import type { CaffeineTrackerUI } from './ui';
3
+
4
+ export const caffeineTracker: HealthToolEntry<CaffeineTrackerUI> = {
5
+ id: 'caffeineTracker',
6
+ icons: {
7
+ bg: 'mdi:coffee',
8
+ fg: 'mdi:sleep',
9
+ },
10
+ i18n: {
11
+ de: () => import('./i18n/de').then((m) => m.content),
12
+ en: () => import('./i18n/en').then((m) => m.content),
13
+ es: () => import('./i18n/es').then((m) => m.content),
14
+ fr: () => import('./i18n/fr').then((m) => m.content),
15
+ id: () => import('./i18n/id').then((m) => m.content),
16
+ it: () => import('./i18n/it').then((m) => m.content),
17
+ ja: () => import('./i18n/ja').then((m) => m.content),
18
+ ko: () => import('./i18n/ko').then((m) => m.content),
19
+ nl: () => import('./i18n/nl').then((m) => m.content),
20
+ pl: () => import('./i18n/pl').then((m) => m.content),
21
+ pt: () => import('./i18n/pt').then((m) => m.content),
22
+ ru: () => import('./i18n/ru').then((m) => m.content),
23
+ sv: () => import('./i18n/sv').then((m) => m.content),
24
+ tr: () => import('./i18n/tr').then((m) => m.content),
25
+ zh: () => import('./i18n/zh').then((m) => m.content),
26
+ },
27
+ };
@@ -1,32 +1,5 @@
1
- import type { HealthToolEntry, ToolDefinition } from '../../types';
2
- import type { CaffeineTrackerUI } from './ui';
3
-
4
- export const caffeineTracker: HealthToolEntry<CaffeineTrackerUI> = {
5
- id: 'caffeineTracker',
6
- icons: {
7
- bg: 'mdi:coffee',
8
- fg: 'mdi:sleep',
9
- },
10
- i18n: {
11
- de: () => import('./i18n/de').then((m) => m.content),
12
- en: () => import('./i18n/en').then((m) => m.content),
13
- es: () => import('./i18n/es').then((m) => m.content),
14
- fr: () => import('./i18n/fr').then((m) => m.content),
15
- id: () => import('./i18n/id').then((m) => m.content),
16
- it: () => import('./i18n/it').then((m) => m.content),
17
- ja: () => import('./i18n/ja').then((m) => m.content),
18
- ko: () => import('./i18n/ko').then((m) => m.content),
19
- nl: () => import('./i18n/nl').then((m) => m.content),
20
- pl: () => import('./i18n/pl').then((m) => m.content),
21
- pt: () => import('./i18n/pt').then((m) => m.content),
22
- ru: () => import('./i18n/ru').then((m) => m.content),
23
- sv: () => import('./i18n/sv').then((m) => m.content),
24
- tr: () => import('./i18n/tr').then((m) => m.content),
25
- zh: () => import('./i18n/zh').then((m) => m.content),
26
- },
27
- };
28
-
29
-
1
+ import { caffeineTracker } from './entry';
2
+ export * from './entry';
30
3
  export const CAFFEINE_TRACKER_TOOL: ToolDefinition = {
31
4
  entry: caffeineTracker,
32
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,27 @@
1
+ import type { HealthToolEntry } from '../../types';
2
+ import type { DaltonismSimulatorUI } from './ui';
3
+
4
+ export const daltonismSimulator: HealthToolEntry<DaltonismSimulatorUI> = {
5
+ id: 'daltonismSimulator',
6
+ icons: {
7
+ bg: 'mdi:eye',
8
+ fg: 'mdi:palette',
9
+ },
10
+ i18n: {
11
+ de: () => import('./i18n/de').then((m) => m.content),
12
+ en: () => import('./i18n/en').then((m) => m.content),
13
+ es: () => import('./i18n/es').then((m) => m.content),
14
+ fr: () => import('./i18n/fr').then((m) => m.content),
15
+ id: () => import('./i18n/id').then((m) => m.content),
16
+ it: () => import('./i18n/it').then((m) => m.content),
17
+ ja: () => import('./i18n/ja').then((m) => m.content),
18
+ ko: () => import('./i18n/ko').then((m) => m.content),
19
+ nl: () => import('./i18n/nl').then((m) => m.content),
20
+ pl: () => import('./i18n/pl').then((m) => m.content),
21
+ pt: () => import('./i18n/pt').then((m) => m.content),
22
+ ru: () => import('./i18n/ru').then((m) => m.content),
23
+ sv: () => import('./i18n/sv').then((m) => m.content),
24
+ tr: () => import('./i18n/tr').then((m) => m.content),
25
+ zh: () => import('./i18n/zh').then((m) => m.content),
26
+ },
27
+ };
@@ -1,32 +1,5 @@
1
- import type { HealthToolEntry, ToolDefinition } from '../../types';
2
- import type { DaltonismSimulatorUI } from './ui';
3
-
4
- export const daltonismSimulator: HealthToolEntry<DaltonismSimulatorUI> = {
5
- id: 'daltonismSimulator',
6
- icons: {
7
- bg: 'mdi:eye',
8
- fg: 'mdi:palette',
9
- },
10
- i18n: {
11
- de: () => import('./i18n/de').then((m) => m.content),
12
- en: () => import('./i18n/en').then((m) => m.content),
13
- es: () => import('./i18n/es').then((m) => m.content),
14
- fr: () => import('./i18n/fr').then((m) => m.content),
15
- id: () => import('./i18n/id').then((m) => m.content),
16
- it: () => import('./i18n/it').then((m) => m.content),
17
- ja: () => import('./i18n/ja').then((m) => m.content),
18
- ko: () => import('./i18n/ko').then((m) => m.content),
19
- nl: () => import('./i18n/nl').then((m) => m.content),
20
- pl: () => import('./i18n/pl').then((m) => m.content),
21
- pt: () => import('./i18n/pt').then((m) => m.content),
22
- ru: () => import('./i18n/ru').then((m) => m.content),
23
- sv: () => import('./i18n/sv').then((m) => m.content),
24
- tr: () => import('./i18n/tr').then((m) => m.content),
25
- zh: () => import('./i18n/zh').then((m) => m.content),
26
- },
27
- };
28
-
29
-
1
+ import { daltonismSimulator } from './entry';
2
+ export * from './entry';
30
3
  export const DALTONISM_SIMULATOR_TOOL: ToolDefinition = {
31
4
  entry: daltonismSimulator,
32
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,27 @@
1
+ import type { HealthToolEntry } from '../../types';
2
+ import type { DigestionStopwatchUI } from './ui';
3
+
4
+ export const digestionStopwatch: HealthToolEntry<DigestionStopwatchUI> = {
5
+ id: 'digestionStopwatch',
6
+ icons: {
7
+ bg: 'mdi:stomach',
8
+ fg: 'mdi:timer-outline',
9
+ },
10
+ i18n: {
11
+ de: () => import('./i18n/de').then((m) => m.content),
12
+ en: () => import('./i18n/en').then((m) => m.content),
13
+ es: () => import('./i18n/es').then((m) => m.content),
14
+ fr: () => import('./i18n/fr').then((m) => m.content),
15
+ id: () => import('./i18n/id').then((m) => m.content),
16
+ it: () => import('./i18n/it').then((m) => m.content),
17
+ ja: () => import('./i18n/ja').then((m) => m.content),
18
+ ko: () => import('./i18n/ko').then((m) => m.content),
19
+ nl: () => import('./i18n/nl').then((m) => m.content),
20
+ pl: () => import('./i18n/pl').then((m) => m.content),
21
+ pt: () => import('./i18n/pt').then((m) => m.content),
22
+ ru: () => import('./i18n/ru').then((m) => m.content),
23
+ sv: () => import('./i18n/sv').then((m) => m.content),
24
+ tr: () => import('./i18n/tr').then((m) => m.content),
25
+ zh: () => import('./i18n/zh').then((m) => m.content),
26
+ },
27
+ };
@@ -1,32 +1,5 @@
1
- import type { HealthToolEntry, ToolDefinition } from '../../types';
2
- import type { DigestionStopwatchUI } from './ui';
3
-
4
- export const digestionStopwatch: HealthToolEntry<DigestionStopwatchUI> = {
5
- id: 'digestionStopwatch',
6
- icons: {
7
- bg: 'mdi:stomach',
8
- fg: 'mdi:timer-outline',
9
- },
10
- i18n: {
11
- de: () => import('./i18n/de').then((m) => m.content),
12
- en: () => import('./i18n/en').then((m) => m.content),
13
- es: () => import('./i18n/es').then((m) => m.content),
14
- fr: () => import('./i18n/fr').then((m) => m.content),
15
- id: () => import('./i18n/id').then((m) => m.content),
16
- it: () => import('./i18n/it').then((m) => m.content),
17
- ja: () => import('./i18n/ja').then((m) => m.content),
18
- ko: () => import('./i18n/ko').then((m) => m.content),
19
- nl: () => import('./i18n/nl').then((m) => m.content),
20
- pl: () => import('./i18n/pl').then((m) => m.content),
21
- pt: () => import('./i18n/pt').then((m) => m.content),
22
- ru: () => import('./i18n/ru').then((m) => m.content),
23
- sv: () => import('./i18n/sv').then((m) => m.content),
24
- tr: () => import('./i18n/tr').then((m) => m.content),
25
- zh: () => import('./i18n/zh').then((m) => m.content),
26
- },
27
- };
28
-
29
-
1
+ import { digestionStopwatch } from './entry';
2
+ export * from './entry';
30
3
  export const DIGESTION_STOPWATCH_TOOL: ToolDefinition = {
31
4
  entry: digestionStopwatch,
32
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,27 @@
1
+ import type { HealthToolEntry } from '../../types';
2
+ import type { EpworthSleepinessScaleUI } from './ui';
3
+
4
+ export const epworthSleepinessScale: HealthToolEntry<EpworthSleepinessScaleUI> = {
5
+ id: 'epworthSleepinessScale',
6
+ icons: {
7
+ bg: 'mdi:sleep',
8
+ fg: 'mdi:moon-waning-crescent',
9
+ },
10
+ i18n: {
11
+ de: () => import('./i18n/de').then((m) => m.content),
12
+ en: () => import('./i18n/en').then((m) => m.content),
13
+ es: () => import('./i18n/es').then((m) => m.content),
14
+ fr: () => import('./i18n/fr').then((m) => m.content),
15
+ id: () => import('./i18n/id').then((m) => m.content),
16
+ it: () => import('./i18n/it').then((m) => m.content),
17
+ ja: () => import('./i18n/ja').then((m) => m.content),
18
+ ko: () => import('./i18n/ko').then((m) => m.content),
19
+ nl: () => import('./i18n/nl').then((m) => m.content),
20
+ pl: () => import('./i18n/pl').then((m) => m.content),
21
+ pt: () => import('./i18n/pt').then((m) => m.content),
22
+ ru: () => import('./i18n/ru').then((m) => m.content),
23
+ sv: () => import('./i18n/sv').then((m) => m.content),
24
+ tr: () => import('./i18n/tr').then((m) => m.content),
25
+ zh: () => import('./i18n/zh').then((m) => m.content),
26
+ },
27
+ };
@@ -1,32 +1,5 @@
1
- import type { HealthToolEntry, ToolDefinition } from '../../types';
2
- import type { EpworthSleepinessScaleUI } from './ui';
3
-
4
- export const epworthSleepinessScale: HealthToolEntry<EpworthSleepinessScaleUI> = {
5
- id: 'epworthSleepinessScale',
6
- icons: {
7
- bg: 'mdi:sleep',
8
- fg: 'mdi:moon-waning-crescent',
9
- },
10
- i18n: {
11
- de: () => import('./i18n/de').then((m) => m.content),
12
- en: () => import('./i18n/en').then((m) => m.content),
13
- es: () => import('./i18n/es').then((m) => m.content),
14
- fr: () => import('./i18n/fr').then((m) => m.content),
15
- id: () => import('./i18n/id').then((m) => m.content),
16
- it: () => import('./i18n/it').then((m) => m.content),
17
- ja: () => import('./i18n/ja').then((m) => m.content),
18
- ko: () => import('./i18n/ko').then((m) => m.content),
19
- nl: () => import('./i18n/nl').then((m) => m.content),
20
- pl: () => import('./i18n/pl').then((m) => m.content),
21
- pt: () => import('./i18n/pt').then((m) => m.content),
22
- ru: () => import('./i18n/ru').then((m) => m.content),
23
- sv: () => import('./i18n/sv').then((m) => m.content),
24
- tr: () => import('./i18n/tr').then((m) => m.content),
25
- zh: () => import('./i18n/zh').then((m) => m.content),
26
- },
27
- };
28
-
29
-
1
+ import { epworthSleepinessScale } from './entry';
2
+ export * from './entry';
30
3
  export const EPWORTH_SLEEPINESS_SCALE_TOOL: ToolDefinition = {
31
4
  entry: epworthSleepinessScale,
32
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,27 @@
1
+ import type { HealthToolEntry } from '../../types';
2
+ import type { HydrationCalculatorUI } from './ui';
3
+
4
+ export const hydrationCalculator: HealthToolEntry<HydrationCalculatorUI> = {
5
+ id: 'hydrationCalculator',
6
+ icons: {
7
+ bg: 'mdi:water',
8
+ fg: 'mdi:thermometer',
9
+ },
10
+ i18n: {
11
+ de: () => import('./i18n/de').then((m) => m.content),
12
+ en: () => import('./i18n/en').then((m) => m.content),
13
+ es: () => import('./i18n/es').then((m) => m.content),
14
+ fr: () => import('./i18n/fr').then((m) => m.content),
15
+ id: () => import('./i18n/id').then((m) => m.content),
16
+ it: () => import('./i18n/it').then((m) => m.content),
17
+ ja: () => import('./i18n/ja').then((m) => m.content),
18
+ ko: () => import('./i18n/ko').then((m) => m.content),
19
+ nl: () => import('./i18n/nl').then((m) => m.content),
20
+ pl: () => import('./i18n/pl').then((m) => m.content),
21
+ pt: () => import('./i18n/pt').then((m) => m.content),
22
+ ru: () => import('./i18n/ru').then((m) => m.content),
23
+ sv: () => import('./i18n/sv').then((m) => m.content),
24
+ tr: () => import('./i18n/tr').then((m) => m.content),
25
+ zh: () => import('./i18n/zh').then((m) => m.content),
26
+ },
27
+ };
@@ -1,32 +1,5 @@
1
- import type { HealthToolEntry, ToolDefinition } from '../../types';
2
- import type { HydrationCalculatorUI } from './ui';
3
-
4
- export const hydrationCalculator: HealthToolEntry<HydrationCalculatorUI> = {
5
- id: 'hydrationCalculator',
6
- icons: {
7
- bg: 'mdi:water',
8
- fg: 'mdi:thermometer',
9
- },
10
- i18n: {
11
- de: () => import('./i18n/de').then((m) => m.content),
12
- en: () => import('./i18n/en').then((m) => m.content),
13
- es: () => import('./i18n/es').then((m) => m.content),
14
- fr: () => import('./i18n/fr').then((m) => m.content),
15
- id: () => import('./i18n/id').then((m) => m.content),
16
- it: () => import('./i18n/it').then((m) => m.content),
17
- ja: () => import('./i18n/ja').then((m) => m.content),
18
- ko: () => import('./i18n/ko').then((m) => m.content),
19
- nl: () => import('./i18n/nl').then((m) => m.content),
20
- pl: () => import('./i18n/pl').then((m) => m.content),
21
- pt: () => import('./i18n/pt').then((m) => m.content),
22
- ru: () => import('./i18n/ru').then((m) => m.content),
23
- sv: () => import('./i18n/sv').then((m) => m.content),
24
- tr: () => import('./i18n/tr').then((m) => m.content),
25
- zh: () => import('./i18n/zh').then((m) => m.content),
26
- },
27
- };
28
-
29
-
1
+ import { hydrationCalculator } from './entry';
2
+ export * from './entry';
30
3
  export const HYDRATION_CALCULATOR_TOOL: ToolDefinition = {
31
4
  entry: hydrationCalculator,
32
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,27 @@
1
+ import type { HealthToolEntry } from '../../types';
2
+ import type { PelliRobsonTestUI } from './ui';
3
+
4
+ export const pelliRobsonTest: HealthToolEntry<PelliRobsonTestUI> = {
5
+ id: 'pelliRobsonTest',
6
+ icons: {
7
+ bg: 'mdi:eye-outline',
8
+ fg: 'mdi:contrast-circle',
9
+ },
10
+ i18n: {
11
+ de: () => import('./i18n/de').then((m) => m.content),
12
+ en: () => import('./i18n/en').then((m) => m.content),
13
+ es: () => import('./i18n/es').then((m) => m.content),
14
+ fr: () => import('./i18n/fr').then((m) => m.content),
15
+ id: () => import('./i18n/id').then((m) => m.content),
16
+ it: () => import('./i18n/it').then((m) => m.content),
17
+ ja: () => import('./i18n/ja').then((m) => m.content),
18
+ ko: () => import('./i18n/ko').then((m) => m.content),
19
+ nl: () => import('./i18n/nl').then((m) => m.content),
20
+ pl: () => import('./i18n/pl').then((m) => m.content),
21
+ pt: () => import('./i18n/pt').then((m) => m.content),
22
+ ru: () => import('./i18n/ru').then((m) => m.content),
23
+ sv: () => import('./i18n/sv').then((m) => m.content),
24
+ tr: () => import('./i18n/tr').then((m) => m.content),
25
+ zh: () => import('./i18n/zh').then((m) => m.content),
26
+ },
27
+ };
@@ -1,32 +1,5 @@
1
- import type { HealthToolEntry, ToolDefinition } from '../../types';
2
- import type { PelliRobsonTestUI } from './ui';
3
-
4
- export const pelliRobsonTest: HealthToolEntry<PelliRobsonTestUI> = {
5
- id: 'pelliRobsonTest',
6
- icons: {
7
- bg: 'mdi:eye-outline',
8
- fg: 'mdi:contrast-circle',
9
- },
10
- i18n: {
11
- de: () => import('./i18n/de').then((m) => m.content),
12
- en: () => import('./i18n/en').then((m) => m.content),
13
- es: () => import('./i18n/es').then((m) => m.content),
14
- fr: () => import('./i18n/fr').then((m) => m.content),
15
- id: () => import('./i18n/id').then((m) => m.content),
16
- it: () => import('./i18n/it').then((m) => m.content),
17
- ja: () => import('./i18n/ja').then((m) => m.content),
18
- ko: () => import('./i18n/ko').then((m) => m.content),
19
- nl: () => import('./i18n/nl').then((m) => m.content),
20
- pl: () => import('./i18n/pl').then((m) => m.content),
21
- pt: () => import('./i18n/pt').then((m) => m.content),
22
- ru: () => import('./i18n/ru').then((m) => m.content),
23
- sv: () => import('./i18n/sv').then((m) => m.content),
24
- tr: () => import('./i18n/tr').then((m) => m.content),
25
- zh: () => import('./i18n/zh').then((m) => m.content),
26
- },
27
- };
28
-
29
-
1
+ import { pelliRobsonTest } from './entry';
2
+ export * from './entry';
30
3
  export const PELLI_ROBSON_TEST_TOOL: ToolDefinition = {
31
4
  entry: pelliRobsonTest,
32
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,27 @@
1
+ import type { HealthToolEntry } from '../../types';
2
+ import type { PeripheralVisionTrainerUI } from './ui';
3
+
4
+ export const peripheralVisionTrainer: HealthToolEntry<PeripheralVisionTrainerUI> = {
5
+ id: 'peripheralVisionTrainer',
6
+ icons: {
7
+ bg: 'mdi:eye-circle-outline',
8
+ fg: 'mdi:arrow-expand-all',
9
+ },
10
+ i18n: {
11
+ de: () => import('./i18n/de').then((m) => m.content),
12
+ en: () => import('./i18n/en').then((m) => m.content),
13
+ es: () => import('./i18n/es').then((m) => m.content),
14
+ fr: () => import('./i18n/fr').then((m) => m.content),
15
+ id: () => import('./i18n/id').then((m) => m.content),
16
+ it: () => import('./i18n/it').then((m) => m.content),
17
+ ja: () => import('./i18n/ja').then((m) => m.content),
18
+ ko: () => import('./i18n/ko').then((m) => m.content),
19
+ nl: () => import('./i18n/nl').then((m) => m.content),
20
+ pl: () => import('./i18n/pl').then((m) => m.content),
21
+ pt: () => import('./i18n/pt').then((m) => m.content),
22
+ ru: () => import('./i18n/ru').then((m) => m.content),
23
+ sv: () => import('./i18n/sv').then((m) => m.content),
24
+ tr: () => import('./i18n/tr').then((m) => m.content),
25
+ zh: () => import('./i18n/zh').then((m) => m.content),
26
+ },
27
+ };
@@ -1,32 +1,5 @@
1
- import type { HealthToolEntry, ToolDefinition } from '../../types';
2
- import type { PeripheralVisionTrainerUI } from './ui';
3
-
4
- export const peripheralVisionTrainer: HealthToolEntry<PeripheralVisionTrainerUI> = {
5
- id: 'peripheralVisionTrainer',
6
- icons: {
7
- bg: 'mdi:eye-circle-outline',
8
- fg: 'mdi:arrow-expand-all',
9
- },
10
- i18n: {
11
- de: () => import('./i18n/de').then((m) => m.content),
12
- en: () => import('./i18n/en').then((m) => m.content),
13
- es: () => import('./i18n/es').then((m) => m.content),
14
- fr: () => import('./i18n/fr').then((m) => m.content),
15
- id: () => import('./i18n/id').then((m) => m.content),
16
- it: () => import('./i18n/it').then((m) => m.content),
17
- ja: () => import('./i18n/ja').then((m) => m.content),
18
- ko: () => import('./i18n/ko').then((m) => m.content),
19
- nl: () => import('./i18n/nl').then((m) => m.content),
20
- pl: () => import('./i18n/pl').then((m) => m.content),
21
- pt: () => import('./i18n/pt').then((m) => m.content),
22
- ru: () => import('./i18n/ru').then((m) => m.content),
23
- sv: () => import('./i18n/sv').then((m) => m.content),
24
- tr: () => import('./i18n/tr').then((m) => m.content),
25
- zh: () => import('./i18n/zh').then((m) => m.content),
26
- },
27
- };
28
-
29
-
1
+ import { peripheralVisionTrainer } from './entry';
2
+ export * from './entry';
30
3
  export const PERIPHERAL_VISION_TRAINER_TOOL: ToolDefinition = {
31
4
  entry: peripheralVisionTrainer,
32
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,27 @@
1
+ import type { HealthToolEntry } from '../../types';
2
+ import type { ReadingDistanceCalculatorUI } from './ui';
3
+
4
+ export const readingDistanceCalculator: HealthToolEntry<ReadingDistanceCalculatorUI> = {
5
+ id: 'readingDistanceCalculator',
6
+ icons: {
7
+ bg: 'mdi:monitor-eye',
8
+ fg: 'mdi:eye-outline',
9
+ },
10
+ i18n: {
11
+ de: () => import('./i18n/de').then((m) => m.content),
12
+ en: () => import('./i18n/en').then((m) => m.content),
13
+ es: () => import('./i18n/es').then((m) => m.content),
14
+ fr: () => import('./i18n/fr').then((m) => m.content),
15
+ id: () => import('./i18n/id').then((m) => m.content),
16
+ it: () => import('./i18n/it').then((m) => m.content),
17
+ ja: () => import('./i18n/ja').then((m) => m.content),
18
+ ko: () => import('./i18n/ko').then((m) => m.content),
19
+ nl: () => import('./i18n/nl').then((m) => m.content),
20
+ pl: () => import('./i18n/pl').then((m) => m.content),
21
+ pt: () => import('./i18n/pt').then((m) => m.content),
22
+ ru: () => import('./i18n/ru').then((m) => m.content),
23
+ sv: () => import('./i18n/sv').then((m) => m.content),
24
+ tr: () => import('./i18n/tr').then((m) => m.content),
25
+ zh: () => import('./i18n/zh').then((m) => m.content),
26
+ },
27
+ };
@@ -1,32 +1,5 @@
1
- import type { HealthToolEntry, ToolDefinition } from '../../types';
2
- import type { ReadingDistanceCalculatorUI } from './ui';
3
-
4
- export const readingDistanceCalculator: HealthToolEntry<ReadingDistanceCalculatorUI> = {
5
- id: 'readingDistanceCalculator',
6
- icons: {
7
- bg: 'mdi:monitor-eye',
8
- fg: 'mdi:eye-outline',
9
- },
10
- i18n: {
11
- de: () => import('./i18n/de').then((m) => m.content),
12
- en: () => import('./i18n/en').then((m) => m.content),
13
- es: () => import('./i18n/es').then((m) => m.content),
14
- fr: () => import('./i18n/fr').then((m) => m.content),
15
- id: () => import('./i18n/id').then((m) => m.content),
16
- it: () => import('./i18n/it').then((m) => m.content),
17
- ja: () => import('./i18n/ja').then((m) => m.content),
18
- ko: () => import('./i18n/ko').then((m) => m.content),
19
- nl: () => import('./i18n/nl').then((m) => m.content),
20
- pl: () => import('./i18n/pl').then((m) => m.content),
21
- pt: () => import('./i18n/pt').then((m) => m.content),
22
- ru: () => import('./i18n/ru').then((m) => m.content),
23
- sv: () => import('./i18n/sv').then((m) => m.content),
24
- tr: () => import('./i18n/tr').then((m) => m.content),
25
- zh: () => import('./i18n/zh').then((m) => m.content),
26
- },
27
- };
28
-
29
-
1
+ import { readingDistanceCalculator } from './entry';
2
+ export * from './entry';
30
3
  export const READING_DISTANCE_CALCULATOR_TOOL: ToolDefinition = {
31
4
  entry: readingDistanceCalculator,
32
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,27 @@
1
+ import type { HealthToolEntry } from '../../types';
2
+ import type { ScreenDecompressionTimeUI } from './ui';
3
+
4
+ export const screenDecompressionTime: HealthToolEntry<ScreenDecompressionTimeUI> = {
5
+ id: 'screenDecompressionTime',
6
+ icons: {
7
+ bg: 'mdi:eye-outline',
8
+ fg: 'mdi:monitor',
9
+ },
10
+ i18n: {
11
+ de: () => import('./i18n/de').then((m) => m.content),
12
+ en: () => import('./i18n/en').then((m) => m.content),
13
+ es: () => import('./i18n/es').then((m) => m.content),
14
+ fr: () => import('./i18n/fr').then((m) => m.content),
15
+ id: () => import('./i18n/id').then((m) => m.content),
16
+ it: () => import('./i18n/it').then((m) => m.content),
17
+ ja: () => import('./i18n/ja').then((m) => m.content),
18
+ ko: () => import('./i18n/ko').then((m) => m.content),
19
+ nl: () => import('./i18n/nl').then((m) => m.content),
20
+ pl: () => import('./i18n/pl').then((m) => m.content),
21
+ pt: () => import('./i18n/pt').then((m) => m.content),
22
+ ru: () => import('./i18n/ru').then((m) => m.content),
23
+ sv: () => import('./i18n/sv').then((m) => m.content),
24
+ tr: () => import('./i18n/tr').then((m) => m.content),
25
+ zh: () => import('./i18n/zh').then((m) => m.content),
26
+ },
27
+ };
@@ -1,32 +1,5 @@
1
- import type { HealthToolEntry, ToolDefinition } from '../../types';
2
- import type { ScreenDecompressionTimeUI } from './ui';
3
-
4
- export const screenDecompressionTime: HealthToolEntry<ScreenDecompressionTimeUI> = {
5
- id: 'screenDecompressionTime',
6
- icons: {
7
- bg: 'mdi:eye-outline',
8
- fg: 'mdi:monitor',
9
- },
10
- i18n: {
11
- de: () => import('./i18n/de').then((m) => m.content),
12
- en: () => import('./i18n/en').then((m) => m.content),
13
- es: () => import('./i18n/es').then((m) => m.content),
14
- fr: () => import('./i18n/fr').then((m) => m.content),
15
- id: () => import('./i18n/id').then((m) => m.content),
16
- it: () => import('./i18n/it').then((m) => m.content),
17
- ja: () => import('./i18n/ja').then((m) => m.content),
18
- ko: () => import('./i18n/ko').then((m) => m.content),
19
- nl: () => import('./i18n/nl').then((m) => m.content),
20
- pl: () => import('./i18n/pl').then((m) => m.content),
21
- pt: () => import('./i18n/pt').then((m) => m.content),
22
- ru: () => import('./i18n/ru').then((m) => m.content),
23
- sv: () => import('./i18n/sv').then((m) => m.content),
24
- tr: () => import('./i18n/tr').then((m) => m.content),
25
- zh: () => import('./i18n/zh').then((m) => m.content),
26
- },
27
- };
28
-
29
-
1
+ import { screenDecompressionTime } from './entry';
2
+ export * from './entry';
30
3
  export const SCREEN_DECOMPRESSION_TIME_TOOL: ToolDefinition = {
31
4
  entry: screenDecompressionTime,
32
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,27 @@
1
+ import type { HealthToolEntry } from '../../types';
2
+ import type { TinnitusRelieverUI } from './ui';
3
+
4
+ export const tinnitusReliever: HealthToolEntry<TinnitusRelieverUI> = {
5
+ id: 'tinnitusReliever',
6
+ icons: {
7
+ bg: 'mdi:ear-hearing',
8
+ fg: 'mdi:waveform',
9
+ },
10
+ i18n: {
11
+ de: () => import('./i18n/de').then((m) => m.content),
12
+ en: () => import('./i18n/en').then((m) => m.content),
13
+ es: () => import('./i18n/es').then((m) => m.content),
14
+ fr: () => import('./i18n/fr').then((m) => m.content),
15
+ id: () => import('./i18n/id').then((m) => m.content),
16
+ it: () => import('./i18n/it').then((m) => m.content),
17
+ ja: () => import('./i18n/ja').then((m) => m.content),
18
+ ko: () => import('./i18n/ko').then((m) => m.content),
19
+ nl: () => import('./i18n/nl').then((m) => m.content),
20
+ pl: () => import('./i18n/pl').then((m) => m.content),
21
+ pt: () => import('./i18n/pt').then((m) => m.content),
22
+ ru: () => import('./i18n/ru').then((m) => m.content),
23
+ sv: () => import('./i18n/sv').then((m) => m.content),
24
+ tr: () => import('./i18n/tr').then((m) => m.content),
25
+ zh: () => import('./i18n/zh').then((m) => m.content),
26
+ },
27
+ };
@@ -1,32 +1,5 @@
1
- import type { HealthToolEntry, ToolDefinition } from '../../types';
2
- import type { TinnitusRelieverUI } from './ui';
3
-
4
- export const tinnitusReliever: HealthToolEntry<TinnitusRelieverUI> = {
5
- id: 'tinnitusReliever',
6
- icons: {
7
- bg: 'mdi:ear-hearing',
8
- fg: 'mdi:waveform',
9
- },
10
- i18n: {
11
- de: () => import('./i18n/de').then((m) => m.content),
12
- en: () => import('./i18n/en').then((m) => m.content),
13
- es: () => import('./i18n/es').then((m) => m.content),
14
- fr: () => import('./i18n/fr').then((m) => m.content),
15
- id: () => import('./i18n/id').then((m) => m.content),
16
- it: () => import('./i18n/it').then((m) => m.content),
17
- ja: () => import('./i18n/ja').then((m) => m.content),
18
- ko: () => import('./i18n/ko').then((m) => m.content),
19
- nl: () => import('./i18n/nl').then((m) => m.content),
20
- pl: () => import('./i18n/pl').then((m) => m.content),
21
- pt: () => import('./i18n/pt').then((m) => m.content),
22
- ru: () => import('./i18n/ru').then((m) => m.content),
23
- sv: () => import('./i18n/sv').then((m) => m.content),
24
- tr: () => import('./i18n/tr').then((m) => m.content),
25
- zh: () => import('./i18n/zh').then((m) => m.content),
26
- },
27
- };
28
-
29
-
1
+ import { tinnitusReliever } from './entry';
2
+ export * from './entry';
30
3
  export const TINNITUS_RELIEVER_TOOL: ToolDefinition = {
31
4
  entry: tinnitusReliever,
32
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,27 @@
1
+ import type { HealthToolEntry } from '../../types';
2
+ import type { UbeCalculatorUI } from './ui';
3
+
4
+ export const ubeCalculator: HealthToolEntry<UbeCalculatorUI> = {
5
+ id: 'ubeCalculator',
6
+ icons: {
7
+ bg: 'mdi:cup-outline',
8
+ fg: 'mdi:beer-outline',
9
+ },
10
+ i18n: {
11
+ de: () => import('./i18n/de').then((m) => m.content),
12
+ en: () => import('./i18n/en').then((m) => m.content),
13
+ es: () => import('./i18n/es').then((m) => m.content),
14
+ fr: () => import('./i18n/fr').then((m) => m.content),
15
+ id: () => import('./i18n/id').then((m) => m.content),
16
+ it: () => import('./i18n/it').then((m) => m.content),
17
+ ja: () => import('./i18n/ja').then((m) => m.content),
18
+ ko: () => import('./i18n/ko').then((m) => m.content),
19
+ nl: () => import('./i18n/nl').then((m) => m.content),
20
+ pl: () => import('./i18n/pl').then((m) => m.content),
21
+ pt: () => import('./i18n/pt').then((m) => m.content),
22
+ ru: () => import('./i18n/ru').then((m) => m.content),
23
+ sv: () => import('./i18n/sv').then((m) => m.content),
24
+ tr: () => import('./i18n/tr').then((m) => m.content),
25
+ zh: () => import('./i18n/zh').then((m) => m.content),
26
+ },
27
+ };
@@ -1,32 +1,5 @@
1
- import type { HealthToolEntry, ToolDefinition } from '../../types';
2
- import type { UbeCalculatorUI } from './ui';
3
-
4
- export const ubeCalculator: HealthToolEntry<UbeCalculatorUI> = {
5
- id: 'ubeCalculator',
6
- icons: {
7
- bg: 'mdi:cup-outline',
8
- fg: 'mdi:beer-outline',
9
- },
10
- i18n: {
11
- de: () => import('./i18n/de').then((m) => m.content),
12
- en: () => import('./i18n/en').then((m) => m.content),
13
- es: () => import('./i18n/es').then((m) => m.content),
14
- fr: () => import('./i18n/fr').then((m) => m.content),
15
- id: () => import('./i18n/id').then((m) => m.content),
16
- it: () => import('./i18n/it').then((m) => m.content),
17
- ja: () => import('./i18n/ja').then((m) => m.content),
18
- ko: () => import('./i18n/ko').then((m) => m.content),
19
- nl: () => import('./i18n/nl').then((m) => m.content),
20
- pl: () => import('./i18n/pl').then((m) => m.content),
21
- pt: () => import('./i18n/pt').then((m) => m.content),
22
- ru: () => import('./i18n/ru').then((m) => m.content),
23
- sv: () => import('./i18n/sv').then((m) => m.content),
24
- tr: () => import('./i18n/tr').then((m) => m.content),
25
- zh: () => import('./i18n/zh').then((m) => m.content),
26
- },
27
- };
28
-
29
-
1
+ import { ubeCalculator } from './entry';
2
+ export * from './entry';
30
3
  export const UBE_CALCULATOR_TOOL: ToolDefinition = {
31
4
  entry: ubeCalculator,
32
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,27 @@
1
+ import type { HealthToolEntry } from '../../types';
2
+ import type { WaterPurifierUI } from './ui';
3
+
4
+ export const waterPurifier: HealthToolEntry<WaterPurifierUI> = {
5
+ id: 'waterPurifier',
6
+ icons: {
7
+ bg: 'mdi:water-plus',
8
+ fg: 'mdi:eyedropper',
9
+ },
10
+ i18n: {
11
+ de: () => import('./i18n/de').then((m) => m.content),
12
+ en: () => import('./i18n/en').then((m) => m.content),
13
+ es: () => import('./i18n/es').then((m) => m.content),
14
+ fr: () => import('./i18n/fr').then((m) => m.content),
15
+ id: () => import('./i18n/id').then((m) => m.content),
16
+ it: () => import('./i18n/it').then((m) => m.content),
17
+ ja: () => import('./i18n/ja').then((m) => m.content),
18
+ ko: () => import('./i18n/ko').then((m) => m.content),
19
+ nl: () => import('./i18n/nl').then((m) => m.content),
20
+ pl: () => import('./i18n/pl').then((m) => m.content),
21
+ pt: () => import('./i18n/pt').then((m) => m.content),
22
+ ru: () => import('./i18n/ru').then((m) => m.content),
23
+ sv: () => import('./i18n/sv').then((m) => m.content),
24
+ tr: () => import('./i18n/tr').then((m) => m.content),
25
+ zh: () => import('./i18n/zh').then((m) => m.content),
26
+ },
27
+ };
@@ -1,32 +1,5 @@
1
- import type { HealthToolEntry, ToolDefinition } from '../../types';
2
- import type { WaterPurifierUI } from './ui';
3
-
4
- export const waterPurifier: HealthToolEntry<WaterPurifierUI> = {
5
- id: 'waterPurifier',
6
- icons: {
7
- bg: 'mdi:water-plus',
8
- fg: 'mdi:eyedropper',
9
- },
10
- i18n: {
11
- de: () => import('./i18n/de').then((m) => m.content),
12
- en: () => import('./i18n/en').then((m) => m.content),
13
- es: () => import('./i18n/es').then((m) => m.content),
14
- fr: () => import('./i18n/fr').then((m) => m.content),
15
- id: () => import('./i18n/id').then((m) => m.content),
16
- it: () => import('./i18n/it').then((m) => m.content),
17
- ja: () => import('./i18n/ja').then((m) => m.content),
18
- ko: () => import('./i18n/ko').then((m) => m.content),
19
- nl: () => import('./i18n/nl').then((m) => m.content),
20
- pl: () => import('./i18n/pl').then((m) => m.content),
21
- pt: () => import('./i18n/pt').then((m) => m.content),
22
- ru: () => import('./i18n/ru').then((m) => m.content),
23
- sv: () => import('./i18n/sv').then((m) => m.content),
24
- tr: () => import('./i18n/tr').then((m) => m.content),
25
- zh: () => import('./i18n/zh').then((m) => m.content),
26
- },
27
- };
28
-
29
-
1
+ import { waterPurifier } from './entry';
2
+ export * from './entry';
30
3
  export const WATER_PURIFIER_TOOL: ToolDefinition = {
31
4
  entry: waterPurifier,
32
5
  Component: () => import('./component.astro'),
package/src/tools.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export { ALL_ENTRIES } from './entries';
1
2
  import type { ToolDefinition } from './types';
2
3
  import { BMI_CALCULATOR_TOOL } from './tool/bmiCalculator';
3
4
  import { DALTONISM_SIMULATOR_TOOL } from './tool/daltonismSimulator';
@@ -18,4 +19,3 @@ import { HYDRATION_CALCULATOR_TOOL } from './tool/hydrationCalculator';
18
19
 
19
20
  export const ALL_TOOLS: ToolDefinition[] = [BMI_CALCULATOR_TOOL, DALTONISM_SIMULATOR_TOOL, TINNITUS_RELIEVER_TOOL, BREATHING_VISUALIZER_TOOL, CAFFEINE_TRACKER_TOOL, WATER_PURIFIER_TOOL, DIGESTION_STOPWATCH_TOOL, BINAURAL_TUNER_TOOL, PELLI_ROBSON_TEST_TOOL, PERIPHERAL_VISION_TRAINER_TOOL, EPWORTH_SLEEPINESS_SCALE_TOOL, UBE_CALCULATOR_TOOL, SCREEN_DECOMPRESSION_TIME_TOOL, BLOOD_UNIT_CONVERTER_TOOL, READING_DISTANCE_CALCULATOR_TOOL, HYDRATION_CALCULATOR_TOOL];
20
21
 
21
- export const ALL_ENTRIES = ALL_TOOLS.map(t => t.entry);