@jjlmoya/utils-diy 1.8.0 → 1.9.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/package.json CHANGED
@@ -1,12 +1,13 @@
1
1
  {
2
2
  "name": "@jjlmoya/utils-diy",
3
- "version": "1.8.0",
3
+ "version": "1.9.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"
package/src/entries.ts ADDED
@@ -0,0 +1,31 @@
1
+ export { balusterCalculator } from './tool/balusterCalculator/entry';
2
+ export type { BalusterCalculatorLocaleContent } from './tool/balusterCalculator/entry';
3
+ export { clayCalculator } from './tool/clayCalculator/entry';
4
+ export type { ClayCalculatorLocaleContent } from './tool/clayCalculator/entry';
5
+ export { concreteCalculator } from './tool/concreteCalculator/entry';
6
+ export { cutOptimizer } from './tool/cutOptimizer/entry';
7
+ export { drillCalculator } from './tool/drillCalculator/entry';
8
+ export { drillSharpener } from './tool/drillSharpener/entry';
9
+ export { epoxyCalculator } from './tool/epoxyCalculator/entry';
10
+ export type { EpoxyCalculatorLocaleContent } from './tool/epoxyCalculator/entry';
11
+ export { furnitureFit } from './tool/furnitureFit/entry';
12
+ export { mortarCalculator } from './tool/mortarCalculator/entry';
13
+ export { passepartoutCalculator } from './tool/passepartoutCalculator/entry';
14
+ export { stairCalculator } from './tool/stairCalculator/entry';
15
+ export { thermalExpansionCalculator } from './tool/thermalExpansionCalculator/entry';
16
+ export { voltageDropCalculator } from './tool/voltageDropCalculator/entry';
17
+ export { diyCategory } from './category';
18
+ import { balusterCalculator } from './tool/balusterCalculator/entry';
19
+ import { clayCalculator } from './tool/clayCalculator/entry';
20
+ import { concreteCalculator } from './tool/concreteCalculator/entry';
21
+ import { cutOptimizer } from './tool/cutOptimizer/entry';
22
+ import { drillCalculator } from './tool/drillCalculator/entry';
23
+ import { drillSharpener } from './tool/drillSharpener/entry';
24
+ import { epoxyCalculator } from './tool/epoxyCalculator/entry';
25
+ import { furnitureFit } from './tool/furnitureFit/entry';
26
+ import { mortarCalculator } from './tool/mortarCalculator/entry';
27
+ import { passepartoutCalculator } from './tool/passepartoutCalculator/entry';
28
+ import { stairCalculator } from './tool/stairCalculator/entry';
29
+ import { thermalExpansionCalculator } from './tool/thermalExpansionCalculator/entry';
30
+ import { voltageDropCalculator } from './tool/voltageDropCalculator/entry';
31
+ export const ALL_ENTRIES = [balusterCalculator, clayCalculator, concreteCalculator, cutOptimizer, drillCalculator, drillSharpener, epoxyCalculator, furnitureFit, mortarCalculator, passepartoutCalculator, stairCalculator, thermalExpansionCalculator, voltageDropCalculator];
@@ -0,0 +1,29 @@
1
+ import type { DiyToolEntry, ToolLocaleContent } from '../../types';
2
+ import type { BalusterCalculatorUI } from './ui';
3
+
4
+ export type BalusterCalculatorLocaleContent = ToolLocaleContent<BalusterCalculatorUI>;
5
+
6
+ export const balusterCalculator: DiyToolEntry<BalusterCalculatorUI> = {
7
+ id: 'baluster-calculator',
8
+ icons: {
9
+ bg: 'mdi:ruler',
10
+ fg: 'mdi:view-week',
11
+ },
12
+ i18n: {
13
+ de: () => import('./i18n/de').then((m) => m.content),
14
+ en: () => import('./i18n/en').then((m) => m.content),
15
+ es: () => import('./i18n/es').then((m) => m.content),
16
+ fr: () => import('./i18n/fr').then((m) => m.content),
17
+ id: () => import('./i18n/id').then((m) => m.content),
18
+ it: () => import('./i18n/it').then((m) => m.content),
19
+ ja: () => import('./i18n/ja').then((m) => m.content),
20
+ ko: () => import('./i18n/ko').then((m) => m.content),
21
+ nl: () => import('./i18n/nl').then((m) => m.content),
22
+ pl: () => import('./i18n/pl').then((m) => m.content),
23
+ pt: () => import('./i18n/pt').then((m) => m.content),
24
+ ru: () => import('./i18n/ru').then((m) => m.content),
25
+ sv: () => import('./i18n/sv').then((m) => m.content),
26
+ tr: () => import('./i18n/tr').then((m) => m.content),
27
+ zh: () => import('./i18n/zh').then((m) => m.content),
28
+ },
29
+ };
@@ -1,34 +1,5 @@
1
- import type { DiyToolEntry, ToolLocaleContent, ToolDefinition } from '../../types';
2
- import type { BalusterCalculatorUI } from './ui';
3
-
4
- export type BalusterCalculatorLocaleContent = ToolLocaleContent<BalusterCalculatorUI>;
5
-
6
- export const balusterCalculator: DiyToolEntry<BalusterCalculatorUI> = {
7
- id: 'baluster-calculator',
8
- icons: {
9
- bg: 'mdi:ruler',
10
- fg: 'mdi:view-week',
11
- },
12
- i18n: {
13
- de: () => import('./i18n/de').then((m) => m.content),
14
- en: () => import('./i18n/en').then((m) => m.content),
15
- es: () => import('./i18n/es').then((m) => m.content),
16
- fr: () => import('./i18n/fr').then((m) => m.content),
17
- id: () => import('./i18n/id').then((m) => m.content),
18
- it: () => import('./i18n/it').then((m) => m.content),
19
- ja: () => import('./i18n/ja').then((m) => m.content),
20
- ko: () => import('./i18n/ko').then((m) => m.content),
21
- nl: () => import('./i18n/nl').then((m) => m.content),
22
- pl: () => import('./i18n/pl').then((m) => m.content),
23
- pt: () => import('./i18n/pt').then((m) => m.content),
24
- ru: () => import('./i18n/ru').then((m) => m.content),
25
- sv: () => import('./i18n/sv').then((m) => m.content),
26
- tr: () => import('./i18n/tr').then((m) => m.content),
27
- zh: () => import('./i18n/zh').then((m) => m.content),
28
- },
29
- };
30
-
31
-
1
+ import { balusterCalculator } from './entry';
2
+ export * from './entry';
32
3
  export const BALUSTER_CALCULATOR_TOOL: ToolDefinition = {
33
4
  entry: balusterCalculator,
34
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,29 @@
1
+ import type { DiyToolEntry, ToolLocaleContent } from '../../types';
2
+ import type { ClayCalculatorUI } from './ui';
3
+
4
+ export type ClayCalculatorLocaleContent = ToolLocaleContent<ClayCalculatorUI>;
5
+
6
+ export const clayCalculator: DiyToolEntry<ClayCalculatorUI> = {
7
+ id: 'clay-calculator',
8
+ icons: {
9
+ bg: 'mdi:pot',
10
+ fg: 'mdi:resize',
11
+ },
12
+ i18n: {
13
+ de: () => import('./i18n/de').then((m) => m.content),
14
+ en: () => import('./i18n/en').then((m) => m.content),
15
+ es: () => import('./i18n/es').then((m) => m.content),
16
+ fr: () => import('./i18n/fr').then((m) => m.content),
17
+ id: () => import('./i18n/id').then((m) => m.content),
18
+ it: () => import('./i18n/it').then((m) => m.content),
19
+ ja: () => import('./i18n/ja').then((m) => m.content),
20
+ ko: () => import('./i18n/ko').then((m) => m.content),
21
+ nl: () => import('./i18n/nl').then((m) => m.content),
22
+ pl: () => import('./i18n/pl').then((m) => m.content),
23
+ pt: () => import('./i18n/pt').then((m) => m.content),
24
+ ru: () => import('./i18n/ru').then((m) => m.content),
25
+ sv: () => import('./i18n/sv').then((m) => m.content),
26
+ tr: () => import('./i18n/tr').then((m) => m.content),
27
+ zh: () => import('./i18n/zh').then((m) => m.content),
28
+ },
29
+ };
@@ -1,34 +1,5 @@
1
- import type { DiyToolEntry, ToolLocaleContent, ToolDefinition } from '../../types';
2
- import type { ClayCalculatorUI } from './ui';
3
-
4
- export type ClayCalculatorLocaleContent = ToolLocaleContent<ClayCalculatorUI>;
5
-
6
- export const clayCalculator: DiyToolEntry<ClayCalculatorUI> = {
7
- id: 'clay-calculator',
8
- icons: {
9
- bg: 'mdi:pot',
10
- fg: 'mdi:resize',
11
- },
12
- i18n: {
13
- de: () => import('./i18n/de').then((m) => m.content),
14
- en: () => import('./i18n/en').then((m) => m.content),
15
- es: () => import('./i18n/es').then((m) => m.content),
16
- fr: () => import('./i18n/fr').then((m) => m.content),
17
- id: () => import('./i18n/id').then((m) => m.content),
18
- it: () => import('./i18n/it').then((m) => m.content),
19
- ja: () => import('./i18n/ja').then((m) => m.content),
20
- ko: () => import('./i18n/ko').then((m) => m.content),
21
- nl: () => import('./i18n/nl').then((m) => m.content),
22
- pl: () => import('./i18n/pl').then((m) => m.content),
23
- pt: () => import('./i18n/pt').then((m) => m.content),
24
- ru: () => import('./i18n/ru').then((m) => m.content),
25
- sv: () => import('./i18n/sv').then((m) => m.content),
26
- tr: () => import('./i18n/tr').then((m) => m.content),
27
- zh: () => import('./i18n/zh').then((m) => m.content),
28
- },
29
- };
30
-
31
-
1
+ import { clayCalculator } from './entry';
2
+ export * from './entry';
32
3
  export const CLAY_CALCULATOR_TOOL: ToolDefinition = {
33
4
  entry: clayCalculator,
34
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,25 @@
1
+ import type { DiyToolEntry } from '../../types';
2
+ import type { ConcreteCalculatorUI } from './ui';
3
+
4
+
5
+ export const concreteCalculator: DiyToolEntry<ConcreteCalculatorUI> = {
6
+ id: 'concrete-calculator',
7
+ icons: { bg: 'mdi:bucket-outline', fg: 'mdi:shovel' },
8
+ i18n: {
9
+ de: () => import('./i18n/de').then((m) => m.content),
10
+ en: () => import('./i18n/en').then((m) => m.content),
11
+ es: () => import('./i18n/es').then((m) => m.content),
12
+ fr: () => import('./i18n/fr').then((m) => m.content),
13
+ id: () => import('./i18n/id').then((m) => m.content),
14
+ it: () => import('./i18n/it').then((m) => m.content),
15
+ ja: () => import('./i18n/ja').then((m) => m.content),
16
+ ko: () => import('./i18n/ko').then((m) => m.content),
17
+ nl: () => import('./i18n/nl').then((m) => m.content),
18
+ pl: () => import('./i18n/pl').then((m) => m.content),
19
+ pt: () => import('./i18n/pt').then((m) => m.content),
20
+ ru: () => import('./i18n/ru').then((m) => m.content),
21
+ sv: () => import('./i18n/sv').then((m) => m.content),
22
+ tr: () => import('./i18n/tr').then((m) => m.content),
23
+ zh: () => import('./i18n/zh').then((m) => m.content),
24
+ },
25
+ };
@@ -1,29 +1,5 @@
1
- import type { DiyToolEntry, ToolDefinition } from '../../types';
2
- import type { ConcreteCalculatorUI } from './ui';
3
-
4
-
5
- export const concreteCalculator: DiyToolEntry<ConcreteCalculatorUI> = {
6
- id: 'concrete-calculator',
7
- icons: { bg: 'mdi:bucket-outline', fg: 'mdi:shovel' },
8
- i18n: {
9
- de: () => import('./i18n/de').then((m) => m.content),
10
- en: () => import('./i18n/en').then((m) => m.content),
11
- es: () => import('./i18n/es').then((m) => m.content),
12
- fr: () => import('./i18n/fr').then((m) => m.content),
13
- id: () => import('./i18n/id').then((m) => m.content),
14
- it: () => import('./i18n/it').then((m) => m.content),
15
- ja: () => import('./i18n/ja').then((m) => m.content),
16
- ko: () => import('./i18n/ko').then((m) => m.content),
17
- nl: () => import('./i18n/nl').then((m) => m.content),
18
- pl: () => import('./i18n/pl').then((m) => m.content),
19
- pt: () => import('./i18n/pt').then((m) => m.content),
20
- ru: () => import('./i18n/ru').then((m) => m.content),
21
- sv: () => import('./i18n/sv').then((m) => m.content),
22
- tr: () => import('./i18n/tr').then((m) => m.content),
23
- zh: () => import('./i18n/zh').then((m) => m.content),
24
- },
25
- };
26
-
1
+ import { concreteCalculator } from './entry';
2
+ export * from './entry';
27
3
  export const CONCRETE_CALCULATOR_TOOL: ToolDefinition = {
28
4
  entry: concreteCalculator,
29
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,25 @@
1
+ import type { DiyToolEntry } from '../../types';
2
+ import type { CutOptimizerUI } from './ui';
3
+
4
+
5
+ export const cutOptimizer: DiyToolEntry<CutOptimizerUI> = {
6
+ id: 'cut-optimizer',
7
+ icons: { bg: 'mdi:saw-blade', fg: 'mdi:ruler' },
8
+ i18n: {
9
+ de: () => import('./i18n/de').then((m) => m.content),
10
+ en: () => import('./i18n/en').then((m) => m.content),
11
+ es: () => import('./i18n/es').then((m) => m.content),
12
+ fr: () => import('./i18n/fr').then((m) => m.content),
13
+ id: () => import('./i18n/id').then((m) => m.content),
14
+ it: () => import('./i18n/it').then((m) => m.content),
15
+ ja: () => import('./i18n/ja').then((m) => m.content),
16
+ ko: () => import('./i18n/ko').then((m) => m.content),
17
+ nl: () => import('./i18n/nl').then((m) => m.content),
18
+ pl: () => import('./i18n/pl').then((m) => m.content),
19
+ pt: () => import('./i18n/pt').then((m) => m.content),
20
+ ru: () => import('./i18n/ru').then((m) => m.content),
21
+ sv: () => import('./i18n/sv').then((m) => m.content),
22
+ tr: () => import('./i18n/tr').then((m) => m.content),
23
+ zh: () => import('./i18n/zh').then((m) => m.content),
24
+ },
25
+ };
@@ -1,29 +1,5 @@
1
- import type { DiyToolEntry, ToolDefinition } from '../../types';
2
- import type { CutOptimizerUI } from './ui';
3
-
4
-
5
- export const cutOptimizer: DiyToolEntry<CutOptimizerUI> = {
6
- id: 'cut-optimizer',
7
- icons: { bg: 'mdi:saw-blade', fg: 'mdi:ruler' },
8
- i18n: {
9
- de: () => import('./i18n/de').then((m) => m.content),
10
- en: () => import('./i18n/en').then((m) => m.content),
11
- es: () => import('./i18n/es').then((m) => m.content),
12
- fr: () => import('./i18n/fr').then((m) => m.content),
13
- id: () => import('./i18n/id').then((m) => m.content),
14
- it: () => import('./i18n/it').then((m) => m.content),
15
- ja: () => import('./i18n/ja').then((m) => m.content),
16
- ko: () => import('./i18n/ko').then((m) => m.content),
17
- nl: () => import('./i18n/nl').then((m) => m.content),
18
- pl: () => import('./i18n/pl').then((m) => m.content),
19
- pt: () => import('./i18n/pt').then((m) => m.content),
20
- ru: () => import('./i18n/ru').then((m) => m.content),
21
- sv: () => import('./i18n/sv').then((m) => m.content),
22
- tr: () => import('./i18n/tr').then((m) => m.content),
23
- zh: () => import('./i18n/zh').then((m) => m.content),
24
- },
25
- };
26
-
1
+ import { cutOptimizer } from './entry';
2
+ export * from './entry';
27
3
  export const CUT_OPTIMIZER_TOOL: ToolDefinition = {
28
4
  entry: cutOptimizer,
29
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,25 @@
1
+ import type { DiyToolEntry } from '../../types';
2
+ import type { DrillCalculatorUI } from './ui';
3
+
4
+
5
+ export const drillCalculator: DiyToolEntry<DrillCalculatorUI> = {
6
+ id: 'drill-rpm-calculator',
7
+ icons: { bg: 'mdi:tools', fg: 'mdi:speedometer' },
8
+ i18n: {
9
+ de: () => import('./i18n/de').then((m) => m.content),
10
+ en: () => import('./i18n/en').then((m) => m.content),
11
+ es: () => import('./i18n/es').then((m) => m.content),
12
+ fr: () => import('./i18n/fr').then((m) => m.content),
13
+ id: () => import('./i18n/id').then((m) => m.content),
14
+ it: () => import('./i18n/it').then((m) => m.content),
15
+ ja: () => import('./i18n/ja').then((m) => m.content),
16
+ ko: () => import('./i18n/ko').then((m) => m.content),
17
+ nl: () => import('./i18n/nl').then((m) => m.content),
18
+ pl: () => import('./i18n/pl').then((m) => m.content),
19
+ pt: () => import('./i18n/pt').then((m) => m.content),
20
+ ru: () => import('./i18n/ru').then((m) => m.content),
21
+ sv: () => import('./i18n/sv').then((m) => m.content),
22
+ tr: () => import('./i18n/tr').then((m) => m.content),
23
+ zh: () => import('./i18n/zh').then((m) => m.content),
24
+ },
25
+ };
@@ -1,29 +1,5 @@
1
- import type { DiyToolEntry, ToolDefinition } from '../../types';
2
- import type { DrillCalculatorUI } from './ui';
3
-
4
-
5
- export const drillCalculator: DiyToolEntry<DrillCalculatorUI> = {
6
- id: 'drill-rpm-calculator',
7
- icons: { bg: 'mdi:tools', fg: 'mdi:speedometer' },
8
- i18n: {
9
- de: () => import('./i18n/de').then((m) => m.content),
10
- en: () => import('./i18n/en').then((m) => m.content),
11
- es: () => import('./i18n/es').then((m) => m.content),
12
- fr: () => import('./i18n/fr').then((m) => m.content),
13
- id: () => import('./i18n/id').then((m) => m.content),
14
- it: () => import('./i18n/it').then((m) => m.content),
15
- ja: () => import('./i18n/ja').then((m) => m.content),
16
- ko: () => import('./i18n/ko').then((m) => m.content),
17
- nl: () => import('./i18n/nl').then((m) => m.content),
18
- pl: () => import('./i18n/pl').then((m) => m.content),
19
- pt: () => import('./i18n/pt').then((m) => m.content),
20
- ru: () => import('./i18n/ru').then((m) => m.content),
21
- sv: () => import('./i18n/sv').then((m) => m.content),
22
- tr: () => import('./i18n/tr').then((m) => m.content),
23
- zh: () => import('./i18n/zh').then((m) => m.content),
24
- },
25
- };
26
-
1
+ import { drillCalculator } from './entry';
2
+ export * from './entry';
27
3
  export const DRILL_CALCULATOR_TOOL: ToolDefinition = {
28
4
  entry: drillCalculator,
29
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,25 @@
1
+ import type { DiyToolEntry } from '../../types';
2
+ import type { DrillSharpenerUI } from './ui';
3
+
4
+
5
+ export const drillSharpener: DiyToolEntry<DrillSharpenerUI> = {
6
+ id: 'drill-sharpener',
7
+ icons: { bg: 'mdi:tools', fg: 'mdi:speedometer' },
8
+ i18n: {
9
+ de: () => import('./i18n/de').then((m) => m.content),
10
+ en: () => import('./i18n/en').then((m) => m.content),
11
+ es: () => import('./i18n/es').then((m) => m.content),
12
+ fr: () => import('./i18n/fr').then((m) => m.content),
13
+ id: () => import('./i18n/id').then((m) => m.content),
14
+ it: () => import('./i18n/it').then((m) => m.content),
15
+ ja: () => import('./i18n/ja').then((m) => m.content),
16
+ ko: () => import('./i18n/ko').then((m) => m.content),
17
+ nl: () => import('./i18n/nl').then((m) => m.content),
18
+ pl: () => import('./i18n/pl').then((m) => m.content),
19
+ pt: () => import('./i18n/pt').then((m) => m.content),
20
+ ru: () => import('./i18n/ru').then((m) => m.content),
21
+ sv: () => import('./i18n/sv').then((m) => m.content),
22
+ tr: () => import('./i18n/tr').then((m) => m.content),
23
+ zh: () => import('./i18n/zh').then((m) => m.content),
24
+ },
25
+ };
@@ -1,30 +1,5 @@
1
- import type { DiyToolEntry, ToolDefinition } from '../../types';
2
- import type { DrillSharpenerUI } from './ui';
3
- import { drillSharpenerUI } from './ui';
4
-
5
-
6
- export const drillSharpener: DiyToolEntry<DrillSharpenerUI> = {
7
- id: 'drill-sharpener',
8
- icons: { bg: 'mdi:tools', fg: 'mdi:speedometer' },
9
- i18n: {
10
- de: () => import('./i18n/de').then((m) => m.content),
11
- en: () => import('./i18n/en').then((m) => m.content),
12
- es: () => import('./i18n/es').then((m) => m.content),
13
- fr: () => import('./i18n/fr').then((m) => m.content),
14
- id: () => import('./i18n/id').then((m) => m.content),
15
- it: () => import('./i18n/it').then((m) => m.content),
16
- ja: () => import('./i18n/ja').then((m) => m.content),
17
- ko: () => import('./i18n/ko').then((m) => m.content),
18
- nl: () => import('./i18n/nl').then((m) => m.content),
19
- pl: () => import('./i18n/pl').then((m) => m.content),
20
- pt: () => import('./i18n/pt').then((m) => m.content),
21
- ru: () => import('./i18n/ru').then((m) => m.content),
22
- sv: () => import('./i18n/sv').then((m) => m.content),
23
- tr: () => import('./i18n/tr').then((m) => m.content),
24
- zh: () => import('./i18n/zh').then((m) => m.content),
25
- },
26
- };
27
-
1
+ import { drillSharpener } from './entry';
2
+ export * from './entry';
28
3
  export const DRILL_SHARPENER_TOOL: ToolDefinition = {
29
4
  entry: drillSharpener,
30
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,29 @@
1
+ import type { DiyToolEntry, ToolLocaleContent } from '../../types';
2
+ import type { EpoxyCalculatorUI } from './ui';
3
+
4
+ export type EpoxyCalculatorLocaleContent = ToolLocaleContent<EpoxyCalculatorUI>;
5
+
6
+ export const epoxyCalculator: DiyToolEntry<EpoxyCalculatorUI> = {
7
+ id: 'epoxy-calculator',
8
+ icons: {
9
+ bg: 'mdi:flask',
10
+ fg: 'mdi:scale-balance',
11
+ },
12
+ i18n: {
13
+ de: () => import('./i18n/de').then((m) => m.content),
14
+ en: () => import('./i18n/en').then((m) => m.content),
15
+ es: () => import('./i18n/es').then((m) => m.content),
16
+ fr: () => import('./i18n/fr').then((m) => m.content),
17
+ id: () => import('./i18n/id').then((m) => m.content),
18
+ it: () => import('./i18n/it').then((m) => m.content),
19
+ ja: () => import('./i18n/ja').then((m) => m.content),
20
+ ko: () => import('./i18n/ko').then((m) => m.content),
21
+ nl: () => import('./i18n/nl').then((m) => m.content),
22
+ pl: () => import('./i18n/pl').then((m) => m.content),
23
+ pt: () => import('./i18n/pt').then((m) => m.content),
24
+ ru: () => import('./i18n/ru').then((m) => m.content),
25
+ sv: () => import('./i18n/sv').then((m) => m.content),
26
+ tr: () => import('./i18n/tr').then((m) => m.content),
27
+ zh: () => import('./i18n/zh').then((m) => m.content),
28
+ },
29
+ };
@@ -1,34 +1,5 @@
1
- import type { DiyToolEntry, ToolLocaleContent, ToolDefinition } from '../../types';
2
- import type { EpoxyCalculatorUI } from './ui';
3
-
4
- export type EpoxyCalculatorLocaleContent = ToolLocaleContent<EpoxyCalculatorUI>;
5
-
6
- export const epoxyCalculator: DiyToolEntry<EpoxyCalculatorUI> = {
7
- id: 'epoxy-calculator',
8
- icons: {
9
- bg: 'mdi:flask',
10
- fg: 'mdi:scale-balance',
11
- },
12
- i18n: {
13
- de: () => import('./i18n/de').then((m) => m.content),
14
- en: () => import('./i18n/en').then((m) => m.content),
15
- es: () => import('./i18n/es').then((m) => m.content),
16
- fr: () => import('./i18n/fr').then((m) => m.content),
17
- id: () => import('./i18n/id').then((m) => m.content),
18
- it: () => import('./i18n/it').then((m) => m.content),
19
- ja: () => import('./i18n/ja').then((m) => m.content),
20
- ko: () => import('./i18n/ko').then((m) => m.content),
21
- nl: () => import('./i18n/nl').then((m) => m.content),
22
- pl: () => import('./i18n/pl').then((m) => m.content),
23
- pt: () => import('./i18n/pt').then((m) => m.content),
24
- ru: () => import('./i18n/ru').then((m) => m.content),
25
- sv: () => import('./i18n/sv').then((m) => m.content),
26
- tr: () => import('./i18n/tr').then((m) => m.content),
27
- zh: () => import('./i18n/zh').then((m) => m.content),
28
- },
29
- };
30
-
31
-
1
+ import { epoxyCalculator } from './entry';
2
+ export * from './entry';
32
3
  export const EPOXY_CALCULATOR_TOOL: ToolDefinition = {
33
4
  entry: epoxyCalculator,
34
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,25 @@
1
+ import type { DiyToolEntry } from '../../types';
2
+ import type { FurnitureFitUI } from './ui';
3
+
4
+
5
+ export const furnitureFit: DiyToolEntry<FurnitureFitUI> = {
6
+ id: 'furniture-fit-calculator',
7
+ icons: { bg: 'mdi:sofa', fg: 'mdi:ruler-square' },
8
+ i18n: {
9
+ de: () => import('./i18n/de').then((m) => m.content),
10
+ en: () => import('./i18n/en').then((m) => m.content),
11
+ es: () => import('./i18n/es').then((m) => m.content),
12
+ fr: () => import('./i18n/fr').then((m) => m.content),
13
+ id: () => import('./i18n/id').then((m) => m.content),
14
+ it: () => import('./i18n/it').then((m) => m.content),
15
+ ja: () => import('./i18n/ja').then((m) => m.content),
16
+ ko: () => import('./i18n/ko').then((m) => m.content),
17
+ nl: () => import('./i18n/nl').then((m) => m.content),
18
+ pl: () => import('./i18n/pl').then((m) => m.content),
19
+ pt: () => import('./i18n/pt').then((m) => m.content),
20
+ ru: () => import('./i18n/ru').then((m) => m.content),
21
+ sv: () => import('./i18n/sv').then((m) => m.content),
22
+ tr: () => import('./i18n/tr').then((m) => m.content),
23
+ zh: () => import('./i18n/zh').then((m) => m.content),
24
+ },
25
+ };
@@ -1,29 +1,5 @@
1
- import type { DiyToolEntry, ToolDefinition } from '../../types';
2
- import type { FurnitureFitUI } from './ui';
3
-
4
-
5
- export const furnitureFit: DiyToolEntry<FurnitureFitUI> = {
6
- id: 'furniture-fit-calculator',
7
- icons: { bg: 'mdi:sofa', fg: 'mdi:ruler-square' },
8
- i18n: {
9
- de: () => import('./i18n/de').then((m) => m.content),
10
- en: () => import('./i18n/en').then((m) => m.content),
11
- es: () => import('./i18n/es').then((m) => m.content),
12
- fr: () => import('./i18n/fr').then((m) => m.content),
13
- id: () => import('./i18n/id').then((m) => m.content),
14
- it: () => import('./i18n/it').then((m) => m.content),
15
- ja: () => import('./i18n/ja').then((m) => m.content),
16
- ko: () => import('./i18n/ko').then((m) => m.content),
17
- nl: () => import('./i18n/nl').then((m) => m.content),
18
- pl: () => import('./i18n/pl').then((m) => m.content),
19
- pt: () => import('./i18n/pt').then((m) => m.content),
20
- ru: () => import('./i18n/ru').then((m) => m.content),
21
- sv: () => import('./i18n/sv').then((m) => m.content),
22
- tr: () => import('./i18n/tr').then((m) => m.content),
23
- zh: () => import('./i18n/zh').then((m) => m.content),
24
- },
25
- };
26
-
1
+ import { furnitureFit } from './entry';
2
+ export * from './entry';
27
3
  export const FURNITURE_FIT_TOOL: ToolDefinition = {
28
4
  entry: furnitureFit,
29
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,25 @@
1
+ import type { DiyToolEntry } from '../../types';
2
+ import type { MortarCalculatorUI } from './ui';
3
+
4
+
5
+ export const mortarCalculator: DiyToolEntry<MortarCalculatorUI> = {
6
+ id: 'mortar-calculator',
7
+ icons: { bg: 'mdi:wall', fg: 'mdi:bucket-outline' },
8
+ i18n: {
9
+ de: () => import('./i18n/de').then((m) => m.content),
10
+ en: () => import('./i18n/en').then((m) => m.content),
11
+ es: () => import('./i18n/es').then((m) => m.content),
12
+ fr: () => import('./i18n/fr').then((m) => m.content),
13
+ id: () => import('./i18n/id').then((m) => m.content),
14
+ it: () => import('./i18n/it').then((m) => m.content),
15
+ ja: () => import('./i18n/ja').then((m) => m.content),
16
+ ko: () => import('./i18n/ko').then((m) => m.content),
17
+ nl: () => import('./i18n/nl').then((m) => m.content),
18
+ pl: () => import('./i18n/pl').then((m) => m.content),
19
+ pt: () => import('./i18n/pt').then((m) => m.content),
20
+ ru: () => import('./i18n/ru').then((m) => m.content),
21
+ sv: () => import('./i18n/sv').then((m) => m.content),
22
+ tr: () => import('./i18n/tr').then((m) => m.content),
23
+ zh: () => import('./i18n/zh').then((m) => m.content),
24
+ },
25
+ };
@@ -1,29 +1,5 @@
1
- import type { DiyToolEntry, ToolDefinition } from '../../types';
2
- import type { MortarCalculatorUI } from './ui';
3
-
4
-
5
- export const mortarCalculator: DiyToolEntry<MortarCalculatorUI> = {
6
- id: 'mortar-calculator',
7
- icons: { bg: 'mdi:wall', fg: 'mdi:bucket-outline' },
8
- i18n: {
9
- de: () => import('./i18n/de').then((m) => m.content),
10
- en: () => import('./i18n/en').then((m) => m.content),
11
- es: () => import('./i18n/es').then((m) => m.content),
12
- fr: () => import('./i18n/fr').then((m) => m.content),
13
- id: () => import('./i18n/id').then((m) => m.content),
14
- it: () => import('./i18n/it').then((m) => m.content),
15
- ja: () => import('./i18n/ja').then((m) => m.content),
16
- ko: () => import('./i18n/ko').then((m) => m.content),
17
- nl: () => import('./i18n/nl').then((m) => m.content),
18
- pl: () => import('./i18n/pl').then((m) => m.content),
19
- pt: () => import('./i18n/pt').then((m) => m.content),
20
- ru: () => import('./i18n/ru').then((m) => m.content),
21
- sv: () => import('./i18n/sv').then((m) => m.content),
22
- tr: () => import('./i18n/tr').then((m) => m.content),
23
- zh: () => import('./i18n/zh').then((m) => m.content),
24
- },
25
- };
26
-
1
+ import { mortarCalculator } from './entry';
2
+ export * from './entry';
27
3
  export const MORTAR_CALCULATOR_TOOL: ToolDefinition = {
28
4
  entry: mortarCalculator,
29
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,25 @@
1
+ import type { DiyToolEntry } from '../../types';
2
+ import type { PassepartoutCalculatorUI } from './ui';
3
+
4
+
5
+ export const passepartoutCalculator: DiyToolEntry<PassepartoutCalculatorUI> = {
6
+ id: 'passepartout-calculator',
7
+ icons: { bg: 'mdi:image-frame', fg: 'mdi:ruler' },
8
+ i18n: {
9
+ de: () => import('./i18n/de').then((m) => m.content),
10
+ en: () => import('./i18n/en').then((m) => m.content),
11
+ es: () => import('./i18n/es').then((m) => m.content),
12
+ fr: () => import('./i18n/fr').then((m) => m.content),
13
+ id: () => import('./i18n/id').then((m) => m.content),
14
+ it: () => import('./i18n/it').then((m) => m.content),
15
+ ja: () => import('./i18n/ja').then((m) => m.content),
16
+ ko: () => import('./i18n/ko').then((m) => m.content),
17
+ nl: () => import('./i18n/nl').then((m) => m.content),
18
+ pl: () => import('./i18n/pl').then((m) => m.content),
19
+ pt: () => import('./i18n/pt').then((m) => m.content),
20
+ ru: () => import('./i18n/ru').then((m) => m.content),
21
+ sv: () => import('./i18n/sv').then((m) => m.content),
22
+ tr: () => import('./i18n/tr').then((m) => m.content),
23
+ zh: () => import('./i18n/zh').then((m) => m.content),
24
+ },
25
+ };
@@ -1,29 +1,5 @@
1
- import type { DiyToolEntry, ToolDefinition } from '../../types';
2
- import type { PassepartoutCalculatorUI } from './ui';
3
-
4
-
5
- export const passepartoutCalculator: DiyToolEntry<PassepartoutCalculatorUI> = {
6
- id: 'passepartout-calculator',
7
- icons: { bg: 'mdi:image-frame', fg: 'mdi:ruler' },
8
- i18n: {
9
- de: () => import('./i18n/de').then((m) => m.content),
10
- en: () => import('./i18n/en').then((m) => m.content),
11
- es: () => import('./i18n/es').then((m) => m.content),
12
- fr: () => import('./i18n/fr').then((m) => m.content),
13
- id: () => import('./i18n/id').then((m) => m.content),
14
- it: () => import('./i18n/it').then((m) => m.content),
15
- ja: () => import('./i18n/ja').then((m) => m.content),
16
- ko: () => import('./i18n/ko').then((m) => m.content),
17
- nl: () => import('./i18n/nl').then((m) => m.content),
18
- pl: () => import('./i18n/pl').then((m) => m.content),
19
- pt: () => import('./i18n/pt').then((m) => m.content),
20
- ru: () => import('./i18n/ru').then((m) => m.content),
21
- sv: () => import('./i18n/sv').then((m) => m.content),
22
- tr: () => import('./i18n/tr').then((m) => m.content),
23
- zh: () => import('./i18n/zh').then((m) => m.content),
24
- },
25
- };
26
-
1
+ import { passepartoutCalculator } from './entry';
2
+ export * from './entry';
27
3
  export const PASSEPARTOUT_CALCULATOR_TOOL: ToolDefinition = {
28
4
  entry: passepartoutCalculator,
29
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,25 @@
1
+ import type { DiyToolEntry } from '../../types';
2
+ import type { StairCalculatorUI } from './ui';
3
+
4
+
5
+ export const stairCalculator: DiyToolEntry<StairCalculatorUI> = {
6
+ id: 'stair-calculator',
7
+ icons: { bg: 'mdi:stairs', fg: 'mdi:ruler-square' },
8
+ i18n: {
9
+ de: () => import('./i18n/de').then((m) => m.content),
10
+ en: () => import('./i18n/en').then((m) => m.content),
11
+ es: () => import('./i18n/es').then((m) => m.content),
12
+ fr: () => import('./i18n/fr').then((m) => m.content),
13
+ id: () => import('./i18n/id').then((m) => m.content),
14
+ it: () => import('./i18n/it').then((m) => m.content),
15
+ ja: () => import('./i18n/ja').then((m) => m.content),
16
+ ko: () => import('./i18n/ko').then((m) => m.content),
17
+ nl: () => import('./i18n/nl').then((m) => m.content),
18
+ pl: () => import('./i18n/pl').then((m) => m.content),
19
+ pt: () => import('./i18n/pt').then((m) => m.content),
20
+ ru: () => import('./i18n/ru').then((m) => m.content),
21
+ sv: () => import('./i18n/sv').then((m) => m.content),
22
+ tr: () => import('./i18n/tr').then((m) => m.content),
23
+ zh: () => import('./i18n/zh').then((m) => m.content),
24
+ },
25
+ };
@@ -1,30 +1,5 @@
1
- import type { DiyToolEntry, ToolDefinition } from '../../types';
2
- import type { StairCalculatorUI } from './ui';
3
- import { stairCalculatorUI } from './ui';
4
-
5
-
6
- export const stairCalculator: DiyToolEntry<StairCalculatorUI> = {
7
- id: 'stair-calculator',
8
- icons: { bg: 'mdi:stairs', fg: 'mdi:ruler-square' },
9
- i18n: {
10
- de: () => import('./i18n/de').then((m) => m.content),
11
- en: () => import('./i18n/en').then((m) => m.content),
12
- es: () => import('./i18n/es').then((m) => m.content),
13
- fr: () => import('./i18n/fr').then((m) => m.content),
14
- id: () => import('./i18n/id').then((m) => m.content),
15
- it: () => import('./i18n/it').then((m) => m.content),
16
- ja: () => import('./i18n/ja').then((m) => m.content),
17
- ko: () => import('./i18n/ko').then((m) => m.content),
18
- nl: () => import('./i18n/nl').then((m) => m.content),
19
- pl: () => import('./i18n/pl').then((m) => m.content),
20
- pt: () => import('./i18n/pt').then((m) => m.content),
21
- ru: () => import('./i18n/ru').then((m) => m.content),
22
- sv: () => import('./i18n/sv').then((m) => m.content),
23
- tr: () => import('./i18n/tr').then((m) => m.content),
24
- zh: () => import('./i18n/zh').then((m) => m.content),
25
- },
26
- };
27
-
1
+ import { stairCalculator } from './entry';
2
+ export * from './entry';
28
3
  export const STAIR_CALCULATOR_TOOL: ToolDefinition = {
29
4
  entry: stairCalculator,
30
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,25 @@
1
+ import type { DiyToolEntry } from '../../types';
2
+ import type { ThermalExpansionCalculatorUI } from './ui';
3
+
4
+
5
+ export const thermalExpansionCalculator: DiyToolEntry<ThermalExpansionCalculatorUI> = {
6
+ id: 'thermal-expansion-calculator',
7
+ icons: { bg: 'mdi:thermometer-lines', fg: 'mdi:ruler' },
8
+ i18n: {
9
+ de: () => import('./i18n/de').then((m) => m.content),
10
+ en: () => import('./i18n/en').then((m) => m.content),
11
+ es: () => import('./i18n/es').then((m) => m.content),
12
+ fr: () => import('./i18n/fr').then((m) => m.content),
13
+ id: () => import('./i18n/id').then((m) => m.content),
14
+ it: () => import('./i18n/it').then((m) => m.content),
15
+ ja: () => import('./i18n/ja').then((m) => m.content),
16
+ ko: () => import('./i18n/ko').then((m) => m.content),
17
+ nl: () => import('./i18n/nl').then((m) => m.content),
18
+ pl: () => import('./i18n/pl').then((m) => m.content),
19
+ pt: () => import('./i18n/pt').then((m) => m.content),
20
+ ru: () => import('./i18n/ru').then((m) => m.content),
21
+ sv: () => import('./i18n/sv').then((m) => m.content),
22
+ tr: () => import('./i18n/tr').then((m) => m.content),
23
+ zh: () => import('./i18n/zh').then((m) => m.content),
24
+ },
25
+ };
@@ -1,29 +1,5 @@
1
- import type { DiyToolEntry, ToolDefinition } from '../../types';
2
- import type { ThermalExpansionCalculatorUI } from './ui';
3
-
4
-
5
- export const thermalExpansionCalculator: DiyToolEntry<ThermalExpansionCalculatorUI> = {
6
- id: 'thermal-expansion-calculator',
7
- icons: { bg: 'mdi:thermometer-lines', fg: 'mdi:ruler' },
8
- i18n: {
9
- de: () => import('./i18n/de').then((m) => m.content),
10
- en: () => import('./i18n/en').then((m) => m.content),
11
- es: () => import('./i18n/es').then((m) => m.content),
12
- fr: () => import('./i18n/fr').then((m) => m.content),
13
- id: () => import('./i18n/id').then((m) => m.content),
14
- it: () => import('./i18n/it').then((m) => m.content),
15
- ja: () => import('./i18n/ja').then((m) => m.content),
16
- ko: () => import('./i18n/ko').then((m) => m.content),
17
- nl: () => import('./i18n/nl').then((m) => m.content),
18
- pl: () => import('./i18n/pl').then((m) => m.content),
19
- pt: () => import('./i18n/pt').then((m) => m.content),
20
- ru: () => import('./i18n/ru').then((m) => m.content),
21
- sv: () => import('./i18n/sv').then((m) => m.content),
22
- tr: () => import('./i18n/tr').then((m) => m.content),
23
- zh: () => import('./i18n/zh').then((m) => m.content),
24
- },
25
- };
26
-
1
+ import { thermalExpansionCalculator } from './entry';
2
+ export * from './entry';
27
3
  export const THERMAL_EXPANSION_CALCULATOR_TOOL: ToolDefinition = {
28
4
  entry: thermalExpansionCalculator,
29
5
  Component: () => import('./component.astro'),
@@ -0,0 +1,25 @@
1
+ import type { DiyToolEntry } from '../../types';
2
+ import type { VoltageDropCalculatorUI } from './ui';
3
+
4
+
5
+ export const voltageDropCalculator: DiyToolEntry<VoltageDropCalculatorUI> = {
6
+ id: 'voltage-drop-calculator',
7
+ icons: { bg: 'mdi:flash', fg: 'mdi:cable-data' },
8
+ i18n: {
9
+ de: () => import('./i18n/de').then((m) => m.content),
10
+ en: () => import('./i18n/en').then((m) => m.content),
11
+ es: () => import('./i18n/es').then((m) => m.content),
12
+ fr: () => import('./i18n/fr').then((m) => m.content),
13
+ id: () => import('./i18n/id').then((m) => m.content),
14
+ it: () => import('./i18n/it').then((m) => m.content),
15
+ ja: () => import('./i18n/ja').then((m) => m.content),
16
+ ko: () => import('./i18n/ko').then((m) => m.content),
17
+ nl: () => import('./i18n/nl').then((m) => m.content),
18
+ pl: () => import('./i18n/pl').then((m) => m.content),
19
+ pt: () => import('./i18n/pt').then((m) => m.content),
20
+ ru: () => import('./i18n/ru').then((m) => m.content),
21
+ sv: () => import('./i18n/sv').then((m) => m.content),
22
+ tr: () => import('./i18n/tr').then((m) => m.content),
23
+ zh: () => import('./i18n/zh').then((m) => m.content),
24
+ },
25
+ };
@@ -1,29 +1,5 @@
1
- import type { DiyToolEntry, ToolDefinition } from '../../types';
2
- import type { VoltageDropCalculatorUI } from './ui';
3
-
4
-
5
- export const voltageDropCalculator: DiyToolEntry<VoltageDropCalculatorUI> = {
6
- id: 'voltage-drop-calculator',
7
- icons: { bg: 'mdi:flash', fg: 'mdi:cable-data' },
8
- i18n: {
9
- de: () => import('./i18n/de').then((m) => m.content),
10
- en: () => import('./i18n/en').then((m) => m.content),
11
- es: () => import('./i18n/es').then((m) => m.content),
12
- fr: () => import('./i18n/fr').then((m) => m.content),
13
- id: () => import('./i18n/id').then((m) => m.content),
14
- it: () => import('./i18n/it').then((m) => m.content),
15
- ja: () => import('./i18n/ja').then((m) => m.content),
16
- ko: () => import('./i18n/ko').then((m) => m.content),
17
- nl: () => import('./i18n/nl').then((m) => m.content),
18
- pl: () => import('./i18n/pl').then((m) => m.content),
19
- pt: () => import('./i18n/pt').then((m) => m.content),
20
- ru: () => import('./i18n/ru').then((m) => m.content),
21
- sv: () => import('./i18n/sv').then((m) => m.content),
22
- tr: () => import('./i18n/tr').then((m) => m.content),
23
- zh: () => import('./i18n/zh').then((m) => m.content),
24
- },
25
- };
26
-
1
+ import { voltageDropCalculator } from './entry';
2
+ export * from './entry';
27
3
  export const VOLTAGE_DROP_CALCULATOR_TOOL: ToolDefinition = {
28
4
  entry: voltageDropCalculator,
29
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 { CLAY_CALCULATOR_TOOL } from './tool/clayCalculator/index';
3
4
  import { EPOXY_CALCULATOR_TOOL } from './tool/epoxyCalculator/index';
@@ -15,4 +16,3 @@ import { DRILL_SHARPENER_TOOL } from './tool/drillSharpener/index';
15
16
 
16
17
  export const ALL_TOOLS: ToolDefinition[] = [CLAY_CALCULATOR_TOOL, EPOXY_CALCULATOR_TOOL, BALUSTER_CALCULATOR_TOOL, MORTAR_CALCULATOR_TOOL, PASSEPARTOUT_CALCULATOR_TOOL, CONCRETE_CALCULATOR_TOOL, CUT_OPTIMIZER_TOOL, VOLTAGE_DROP_CALCULATOR_TOOL, FURNITURE_FIT_TOOL, THERMAL_EXPANSION_CALCULATOR_TOOL, DRILL_CALCULATOR_TOOL, STAIR_CALCULATOR_TOOL, DRILL_SHARPENER_TOOL];
17
18
 
18
- export const ALL_ENTRIES = ALL_TOOLS.map(t => t.entry);