@jjlmoya/utils-diy 1.5.0 → 1.8.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,6 +1,6 @@
1
1
  {
2
2
  "name": "@jjlmoya/utils-diy",
3
- "version": "1.5.0",
3
+ "version": "1.8.0",
4
4
  "type": "module",
5
5
  "main": "./src/index.ts",
6
6
  "types": "./src/index.ts",
package/src/index.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { diyCategory } from './category';
2
- export { default as diyCategorySEO } from './category/seo.astro';
2
+ export const diyCategorySEO = () => import('./category/seo.astro').then((m) => m.default);
3
3
 
4
4
  export type {
5
5
  KnownLocale,
@@ -17,41 +17,28 @@ export type {
17
17
 
18
18
  export { ALL_ENTRIES, ALL_TOOLS } from './tools';
19
19
 
20
- export { ClayCalculatorComponent, ClayCalculatorSEO, ClayCalculatorBibliography } from './tool/clayCalculator';
21
20
  export { CLAY_CALCULATOR_TOOL } from './tool/clayCalculator/index';
22
21
 
23
- export { EpoxyCalculatorComponent, EpoxyCalculatorSEO, EpoxyCalculatorBibliography } from './tool/epoxyCalculator';
24
22
  export { EPOXY_CALCULATOR_TOOL } from './tool/epoxyCalculator/index';
25
23
 
26
- export { BalusterCalculatorComponent, BalusterCalculatorSEO, BalusterCalculatorBibliography } from './tool/balusterCalculator';
27
24
  export { BALUSTER_CALCULATOR_TOOL } from './tool/balusterCalculator/index';
28
25
 
29
- export { MortarCalculatorComponent, MortarCalculatorSEO, MortarCalculatorBibliography } from './tool/mortarCalculator';
30
26
  export { MORTAR_CALCULATOR_TOOL } from './tool/mortarCalculator/index';
31
27
 
32
- export { PassepartoutCalculatorComponent, PassepartoutCalculatorSEO, PassepartoutCalculatorBibliography } from './tool/passepartoutCalculator';
33
28
  export { PASSEPARTOUT_CALCULATOR_TOOL } from './tool/passepartoutCalculator/index';
34
29
 
35
- export { ConcreteCalculatorComponent, ConcreteCalculatorSEO, ConcreteCalculatorBibliography } from './tool/concreteCalculator';
36
30
  export { CONCRETE_CALCULATOR_TOOL } from './tool/concreteCalculator/index';
37
31
 
38
- export { CutOptimizerComponent, CutOptimizerSEO, CutOptimizerBibliography } from './tool/cutOptimizer';
39
32
  export { CUT_OPTIMIZER_TOOL } from './tool/cutOptimizer/index';
40
33
 
41
- export { VoltageDropCalculatorComponent, VoltageDropCalculatorSEO, VoltageDropCalculatorBibliography } from './tool/voltageDropCalculator';
42
34
  export { VOLTAGE_DROP_CALCULATOR_TOOL } from './tool/voltageDropCalculator/index';
43
35
 
44
- export { FurnitureFitComponent, FurnitureFitSEO, FurnitureFitBibliography } from './tool/furnitureFit';
45
36
  export { FURNITURE_FIT_TOOL } from './tool/furnitureFit/index';
46
37
 
47
- export { ThermalExpansionCalculatorComponent, ThermalExpansionCalculatorSEO, ThermalExpansionCalculatorBibliography } from './tool/thermalExpansionCalculator';
48
38
  export { THERMAL_EXPANSION_CALCULATOR_TOOL } from './tool/thermalExpansionCalculator/index';
49
39
 
50
- export { DrillCalculatorComponent, DrillCalculatorSEO, DrillCalculatorBibliography } from './tool/drillCalculator';
51
40
  export { DRILL_CALCULATOR_TOOL } from './tool/drillCalculator/index';
52
41
 
53
- export { StairCalculatorComponent, StairCalculatorSEO, StairCalculatorBibliography } from './tool/stairCalculator';
54
42
  export { STAIR_CALCULATOR_TOOL } from './tool/stairCalculator/index';
55
43
 
56
- export { DrillSharpenerComponent, DrillSharpenerSEO, DrillSharpenerBibliography } from './tool/drillSharpener';
57
44
  export { DRILL_SHARPENER_TOOL } from './tool/drillSharpener/index';
@@ -14,7 +14,8 @@ import type { UtilitySEOContent } from "@jjlmoya/utils-shared";
14
14
  export async function getStaticPaths() {
15
15
  const paths = [];
16
16
 
17
- for (const { entry, Component } of ALL_TOOLS) {
17
+ for (const { entry, Component: lazyComp } of ALL_TOOLS) {
18
+ const { default: Component } = await lazyComp();
18
19
  const localeEntries = Object.entries(entry.i18n) as [
19
20
  KnownLocale,
20
21
  () => Promise<ToolLocaleContent>,
@@ -52,8 +53,6 @@ export async function getStaticPaths() {
52
53
  return paths;
53
54
  }
54
55
 
55
- type ToolComponent = (props: { ui: Record<string, string> }) => unknown;
56
-
57
56
  interface NavItem {
58
57
  id: string;
59
58
  title: string;
@@ -62,7 +61,7 @@ interface NavItem {
62
61
  }
63
62
 
64
63
  interface Props {
65
- Component: ToolComponent;
64
+ Component: unknown;
66
65
  locale: KnownLocale;
67
66
  content: ToolLocaleContent;
68
67
  localeUrls: Partial<Record<KnownLocale, string>>;
@@ -1,7 +1,4 @@
1
1
  import type { DiyToolEntry, ToolLocaleContent, ToolDefinition } from '../../types';
2
- import BalusterCalculatorComponent from './component.astro';
3
- import BalusterCalculatorSEO from './seo.astro';
4
- import BalusterCalculatorBibliography from './bibliography.astro';
5
2
  import type { BalusterCalculatorUI } from './ui';
6
3
 
7
4
  export type BalusterCalculatorLocaleContent = ToolLocaleContent<BalusterCalculatorUI>;
@@ -31,11 +28,10 @@ export const balusterCalculator: DiyToolEntry<BalusterCalculatorUI> = {
31
28
  },
32
29
  };
33
30
 
34
- export { BalusterCalculatorComponent, BalusterCalculatorSEO, BalusterCalculatorBibliography };
35
31
 
36
32
  export const BALUSTER_CALCULATOR_TOOL: ToolDefinition = {
37
33
  entry: balusterCalculator,
38
- Component: BalusterCalculatorComponent,
39
- SEOComponent: BalusterCalculatorSEO,
40
- BibliographyComponent: BalusterCalculatorBibliography,
34
+ Component: () => import('./component.astro'),
35
+ SEOComponent: () => import('./seo.astro'),
36
+ BibliographyComponent: () => import('./bibliography.astro'),
41
37
  };
@@ -1,7 +1,4 @@
1
1
  import type { DiyToolEntry, ToolLocaleContent, ToolDefinition } from '../../types';
2
- import ClayCalculatorComponent from './component.astro';
3
- import ClayCalculatorSEO from './seo.astro';
4
- import ClayCalculatorBibliography from './bibliography.astro';
5
2
  import type { ClayCalculatorUI } from './ui';
6
3
 
7
4
  export type ClayCalculatorLocaleContent = ToolLocaleContent<ClayCalculatorUI>;
@@ -31,11 +28,10 @@ export const clayCalculator: DiyToolEntry<ClayCalculatorUI> = {
31
28
  },
32
29
  };
33
30
 
34
- export { ClayCalculatorComponent, ClayCalculatorSEO, ClayCalculatorBibliography };
35
31
 
36
32
  export const CLAY_CALCULATOR_TOOL: ToolDefinition = {
37
33
  entry: clayCalculator,
38
- Component: ClayCalculatorComponent,
39
- SEOComponent: ClayCalculatorSEO,
40
- BibliographyComponent: ClayCalculatorBibliography,
34
+ Component: () => import('./component.astro'),
35
+ SEOComponent: () => import('./seo.astro'),
36
+ BibliographyComponent: () => import('./bibliography.astro'),
41
37
  };
@@ -1,14 +1,6 @@
1
- import ConcreteCalculatorComponent from './component.astro';
2
- import ConcreteCalculatorSEO from './seo.astro';
3
- import ConcreteCalculatorBibliography from './bibliography.astro';
4
1
  import type { DiyToolEntry, ToolDefinition } from '../../types';
5
2
  import type { ConcreteCalculatorUI } from './ui';
6
3
 
7
- export {
8
- ConcreteCalculatorComponent,
9
- ConcreteCalculatorSEO,
10
- ConcreteCalculatorBibliography,
11
- };
12
4
 
13
5
  export const concreteCalculator: DiyToolEntry<ConcreteCalculatorUI> = {
14
6
  id: 'concrete-calculator',
@@ -34,7 +26,7 @@ export const concreteCalculator: DiyToolEntry<ConcreteCalculatorUI> = {
34
26
 
35
27
  export const CONCRETE_CALCULATOR_TOOL: ToolDefinition = {
36
28
  entry: concreteCalculator,
37
- Component: ConcreteCalculatorComponent,
38
- SEOComponent: ConcreteCalculatorSEO,
39
- BibliographyComponent: ConcreteCalculatorBibliography,
29
+ Component: () => import('./component.astro'),
30
+ SEOComponent: () => import('./seo.astro'),
31
+ BibliographyComponent: () => import('./bibliography.astro'),
40
32
  };
@@ -1,14 +1,6 @@
1
- import CutOptimizerComponent from './component.astro';
2
- import CutOptimizerSEO from './seo.astro';
3
- import CutOptimizerBibliography from './bibliography.astro';
4
1
  import type { DiyToolEntry, ToolDefinition } from '../../types';
5
2
  import type { CutOptimizerUI } from './ui';
6
3
 
7
- export {
8
- CutOptimizerComponent,
9
- CutOptimizerSEO,
10
- CutOptimizerBibliography,
11
- };
12
4
 
13
5
  export const cutOptimizer: DiyToolEntry<CutOptimizerUI> = {
14
6
  id: 'cut-optimizer',
@@ -34,7 +26,7 @@ export const cutOptimizer: DiyToolEntry<CutOptimizerUI> = {
34
26
 
35
27
  export const CUT_OPTIMIZER_TOOL: ToolDefinition = {
36
28
  entry: cutOptimizer,
37
- Component: CutOptimizerComponent,
38
- SEOComponent: CutOptimizerSEO,
39
- BibliographyComponent: CutOptimizerBibliography,
29
+ Component: () => import('./component.astro'),
30
+ SEOComponent: () => import('./seo.astro'),
31
+ BibliographyComponent: () => import('./bibliography.astro'),
40
32
  };
@@ -1,14 +1,6 @@
1
- import DrillCalculatorComponent from './component.astro';
2
- import DrillCalculatorSEO from './seo.astro';
3
- import DrillCalculatorBibliography from './bibliography.astro';
4
1
  import type { DiyToolEntry, ToolDefinition } from '../../types';
5
2
  import type { DrillCalculatorUI } from './ui';
6
3
 
7
- export {
8
- DrillCalculatorComponent,
9
- DrillCalculatorSEO,
10
- DrillCalculatorBibliography,
11
- };
12
4
 
13
5
  export const drillCalculator: DiyToolEntry<DrillCalculatorUI> = {
14
6
  id: 'drill-rpm-calculator',
@@ -34,7 +26,7 @@ export const drillCalculator: DiyToolEntry<DrillCalculatorUI> = {
34
26
 
35
27
  export const DRILL_CALCULATOR_TOOL: ToolDefinition = {
36
28
  entry: drillCalculator,
37
- Component: DrillCalculatorComponent,
38
- SEOComponent: DrillCalculatorSEO,
39
- BibliographyComponent: DrillCalculatorBibliography,
29
+ Component: () => import('./component.astro'),
30
+ SEOComponent: () => import('./seo.astro'),
31
+ BibliographyComponent: () => import('./bibliography.astro'),
40
32
  };
@@ -1,15 +1,7 @@
1
- import DrillSharpenerComponent from './component.astro';
2
- import DrillSharpenerSEO from './seo.astro';
3
- import DrillSharpenerBibliography from './bibliography.astro';
4
1
  import type { DiyToolEntry, ToolDefinition } from '../../types';
5
2
  import type { DrillSharpenerUI } from './ui';
6
3
  import { drillSharpenerUI } from './ui';
7
4
 
8
- export {
9
- DrillSharpenerComponent,
10
- DrillSharpenerSEO,
11
- DrillSharpenerBibliography,
12
- };
13
5
 
14
6
  export const drillSharpener: DiyToolEntry<DrillSharpenerUI> = {
15
7
  id: 'drill-sharpener',
@@ -35,9 +27,9 @@ export const drillSharpener: DiyToolEntry<DrillSharpenerUI> = {
35
27
 
36
28
  export const DRILL_SHARPENER_TOOL: ToolDefinition = {
37
29
  entry: drillSharpener,
38
- Component: DrillSharpenerComponent,
39
- SEOComponent: DrillSharpenerSEO,
40
- BibliographyComponent: DrillSharpenerBibliography,
30
+ Component: () => import('./component.astro'),
31
+ SEOComponent: () => import('./seo.astro'),
32
+ BibliographyComponent: () => import('./bibliography.astro'),
41
33
  };
42
34
 
43
35
  export { drillSharpenerUI };
@@ -1,7 +1,4 @@
1
1
  import type { DiyToolEntry, ToolLocaleContent, ToolDefinition } from '../../types';
2
- import EpoxyCalculatorComponent from './component.astro';
3
- import EpoxyCalculatorSEO from './seo.astro';
4
- import EpoxyCalculatorBibliography from './bibliography.astro';
5
2
  import type { EpoxyCalculatorUI } from './ui';
6
3
 
7
4
  export type EpoxyCalculatorLocaleContent = ToolLocaleContent<EpoxyCalculatorUI>;
@@ -31,11 +28,10 @@ export const epoxyCalculator: DiyToolEntry<EpoxyCalculatorUI> = {
31
28
  },
32
29
  };
33
30
 
34
- export { EpoxyCalculatorComponent, EpoxyCalculatorSEO, EpoxyCalculatorBibliography };
35
31
 
36
32
  export const EPOXY_CALCULATOR_TOOL: ToolDefinition = {
37
33
  entry: epoxyCalculator,
38
- Component: EpoxyCalculatorComponent,
39
- SEOComponent: EpoxyCalculatorSEO,
40
- BibliographyComponent: EpoxyCalculatorBibliography,
34
+ Component: () => import('./component.astro'),
35
+ SEOComponent: () => import('./seo.astro'),
36
+ BibliographyComponent: () => import('./bibliography.astro'),
41
37
  };
@@ -1,14 +1,6 @@
1
- import FurnitureFitComponent from './component.astro';
2
- import FurnitureFitSEO from './seo.astro';
3
- import FurnitureFitBibliography from './bibliography.astro';
4
1
  import type { DiyToolEntry, ToolDefinition } from '../../types';
5
2
  import type { FurnitureFitUI } from './ui';
6
3
 
7
- export {
8
- FurnitureFitComponent,
9
- FurnitureFitSEO,
10
- FurnitureFitBibliography,
11
- };
12
4
 
13
5
  export const furnitureFit: DiyToolEntry<FurnitureFitUI> = {
14
6
  id: 'furniture-fit-calculator',
@@ -34,7 +26,7 @@ export const furnitureFit: DiyToolEntry<FurnitureFitUI> = {
34
26
 
35
27
  export const FURNITURE_FIT_TOOL: ToolDefinition = {
36
28
  entry: furnitureFit,
37
- Component: FurnitureFitComponent,
38
- SEOComponent: FurnitureFitSEO,
39
- BibliographyComponent: FurnitureFitBibliography,
29
+ Component: () => import('./component.astro'),
30
+ SEOComponent: () => import('./seo.astro'),
31
+ BibliographyComponent: () => import('./bibliography.astro'),
40
32
  };
@@ -1,10 +1,6 @@
1
- import MortarCalculatorComponent from './component.astro';
2
- import MortarCalculatorSEO from './seo.astro';
3
- import MortarCalculatorBibliography from './bibliography.astro';
4
1
  import type { DiyToolEntry, ToolDefinition } from '../../types';
5
2
  import type { MortarCalculatorUI } from './ui';
6
3
 
7
- export { MortarCalculatorComponent, MortarCalculatorSEO, MortarCalculatorBibliography };
8
4
 
9
5
  export const mortarCalculator: DiyToolEntry<MortarCalculatorUI> = {
10
6
  id: 'mortar-calculator',
@@ -30,7 +26,7 @@ export const mortarCalculator: DiyToolEntry<MortarCalculatorUI> = {
30
26
 
31
27
  export const MORTAR_CALCULATOR_TOOL: ToolDefinition = {
32
28
  entry: mortarCalculator,
33
- Component: MortarCalculatorComponent,
34
- SEOComponent: MortarCalculatorSEO,
35
- BibliographyComponent: MortarCalculatorBibliography,
29
+ Component: () => import('./component.astro'),
30
+ SEOComponent: () => import('./seo.astro'),
31
+ BibliographyComponent: () => import('./bibliography.astro'),
36
32
  };
@@ -1,14 +1,6 @@
1
- import PassepartoutCalculatorComponent from './component.astro';
2
- import PassepartoutCalculatorSEO from './seo.astro';
3
- import PassepartoutCalculatorBibliography from './bibliography.astro';
4
1
  import type { DiyToolEntry, ToolDefinition } from '../../types';
5
2
  import type { PassepartoutCalculatorUI } from './ui';
6
3
 
7
- export {
8
- PassepartoutCalculatorComponent,
9
- PassepartoutCalculatorSEO,
10
- PassepartoutCalculatorBibliography,
11
- };
12
4
 
13
5
  export const passepartoutCalculator: DiyToolEntry<PassepartoutCalculatorUI> = {
14
6
  id: 'passepartout-calculator',
@@ -34,7 +26,7 @@ export const passepartoutCalculator: DiyToolEntry<PassepartoutCalculatorUI> = {
34
26
 
35
27
  export const PASSEPARTOUT_CALCULATOR_TOOL: ToolDefinition = {
36
28
  entry: passepartoutCalculator,
37
- Component: PassepartoutCalculatorComponent,
38
- SEOComponent: PassepartoutCalculatorSEO,
39
- BibliographyComponent: PassepartoutCalculatorBibliography,
29
+ Component: () => import('./component.astro'),
30
+ SEOComponent: () => import('./seo.astro'),
31
+ BibliographyComponent: () => import('./bibliography.astro'),
40
32
  };
@@ -1,15 +1,7 @@
1
- import StairCalculatorComponent from './component.astro';
2
- import StairCalculatorSEO from './seo.astro';
3
- import StairCalculatorBibliography from './bibliography.astro';
4
1
  import type { DiyToolEntry, ToolDefinition } from '../../types';
5
2
  import type { StairCalculatorUI } from './ui';
6
3
  import { stairCalculatorUI } from './ui';
7
4
 
8
- export {
9
- StairCalculatorComponent,
10
- StairCalculatorSEO,
11
- StairCalculatorBibliography,
12
- };
13
5
 
14
6
  export const stairCalculator: DiyToolEntry<StairCalculatorUI> = {
15
7
  id: 'stair-calculator',
@@ -35,9 +27,9 @@ export const stairCalculator: DiyToolEntry<StairCalculatorUI> = {
35
27
 
36
28
  export const STAIR_CALCULATOR_TOOL: ToolDefinition = {
37
29
  entry: stairCalculator,
38
- Component: StairCalculatorComponent,
39
- SEOComponent: StairCalculatorSEO,
40
- BibliographyComponent: StairCalculatorBibliography,
30
+ Component: () => import('./component.astro'),
31
+ SEOComponent: () => import('./seo.astro'),
32
+ BibliographyComponent: () => import('./bibliography.astro'),
41
33
  };
42
34
 
43
35
  export { stairCalculatorUI };
@@ -1,14 +1,6 @@
1
- import ThermalExpansionCalculatorComponent from './component.astro';
2
- import ThermalExpansionCalculatorSEO from './seo.astro';
3
- import ThermalExpansionCalculatorBibliography from './bibliography.astro';
4
1
  import type { DiyToolEntry, ToolDefinition } from '../../types';
5
2
  import type { ThermalExpansionCalculatorUI } from './ui';
6
3
 
7
- export {
8
- ThermalExpansionCalculatorComponent,
9
- ThermalExpansionCalculatorSEO,
10
- ThermalExpansionCalculatorBibliography,
11
- };
12
4
 
13
5
  export const thermalExpansionCalculator: DiyToolEntry<ThermalExpansionCalculatorUI> = {
14
6
  id: 'thermal-expansion-calculator',
@@ -34,7 +26,7 @@ export const thermalExpansionCalculator: DiyToolEntry<ThermalExpansionCalculator
34
26
 
35
27
  export const THERMAL_EXPANSION_CALCULATOR_TOOL: ToolDefinition = {
36
28
  entry: thermalExpansionCalculator,
37
- Component: ThermalExpansionCalculatorComponent,
38
- SEOComponent: ThermalExpansionCalculatorSEO,
39
- BibliographyComponent: ThermalExpansionCalculatorBibliography,
29
+ Component: () => import('./component.astro'),
30
+ SEOComponent: () => import('./seo.astro'),
31
+ BibliographyComponent: () => import('./bibliography.astro'),
40
32
  };
@@ -1,14 +1,6 @@
1
- import VoltageDropCalculatorComponent from './component.astro';
2
- import VoltageDropCalculatorSEO from './seo.astro';
3
- import VoltageDropCalculatorBibliography from './bibliography.astro';
4
1
  import type { DiyToolEntry, ToolDefinition } from '../../types';
5
2
  import type { VoltageDropCalculatorUI } from './ui';
6
3
 
7
- export {
8
- VoltageDropCalculatorComponent,
9
- VoltageDropCalculatorSEO,
10
- VoltageDropCalculatorBibliography,
11
- };
12
4
 
13
5
  export const voltageDropCalculator: DiyToolEntry<VoltageDropCalculatorUI> = {
14
6
  id: 'voltage-drop-calculator',
@@ -34,7 +26,7 @@ export const voltageDropCalculator: DiyToolEntry<VoltageDropCalculatorUI> = {
34
26
 
35
27
  export const VOLTAGE_DROP_CALCULATOR_TOOL: ToolDefinition = {
36
28
  entry: voltageDropCalculator,
37
- Component: VoltageDropCalculatorComponent,
38
- SEOComponent: VoltageDropCalculatorSEO,
39
- BibliographyComponent: VoltageDropCalculatorBibliography,
29
+ Component: () => import('./component.astro'),
30
+ SEOComponent: () => import('./seo.astro'),
31
+ BibliographyComponent: () => import('./bibliography.astro'),
40
32
  };