ingeniuscliq-core 0.1.1 → 0.1.3

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 (84) hide show
  1. package/core/commands/create-template.js +95 -0
  2. package/dist/components/index.d.ts +1 -1
  3. package/dist/components/templates/partials/CoreHeader.d.ts +3 -3
  4. package/dist/components/templates/partials/CoreMainSearch.d.ts +3 -3
  5. package/dist/components/templates/partials/CoreNavbar.d.ts +2 -2
  6. package/dist/components/templates/partials/CoreSubMenu.d.ts +4 -1
  7. package/dist/index.css +1 -1
  8. package/dist/index.d.ts +1 -0
  9. package/dist/index.js +10670 -6460
  10. package/dist/modules/CoreAuth/components/index.d.ts +1 -0
  11. package/dist/modules/CoreAuth/components/layouts/index.d.ts +1 -0
  12. package/dist/modules/CoreAuth/components/layouts/partials/CoreAuthDecorator.d.ts +1 -0
  13. package/dist/modules/CoreAuth/components/layouts/partials/CoreAuthProfileDeleteAccountForm.d.ts +1 -0
  14. package/dist/modules/CoreAuth/components/layouts/partials/CoreAuthProfileForm.d.ts +1 -0
  15. package/dist/modules/CoreAuth/components/layouts/partials/CoreAuthProfileUpdatePassForm.d.ts +1 -0
  16. package/dist/modules/CoreAuth/components/layouts/partials/CoreAuthUserMenu.d.ts +1 -0
  17. package/dist/modules/CoreAuth/components/layouts/partials/index.d.ts +5 -0
  18. package/dist/modules/CoreAuth/constants/index.d.ts +1 -0
  19. package/dist/modules/CoreAuth/hooks/index.d.ts +1 -0
  20. package/dist/modules/CoreAuth/registry.d.ts +6 -0
  21. package/dist/modules/CoreAuth/services/index.d.ts +1 -0
  22. package/dist/modules/CoreAuth/stores/index.d.ts +1 -0
  23. package/dist/modules/CoreAuth/types/index.d.ts +1 -0
  24. package/dist/modules/CoreCustomization/classes/index.d.ts +1 -0
  25. package/dist/modules/CoreCustomization/registry.d.ts +3 -0
  26. package/dist/modules/CoreCustomization/services/index.d.ts +1 -0
  27. package/dist/modules/CoreCustomization/types/index.d.ts +1 -0
  28. package/dist/modules/CoreOrder/classes/index.d.ts +1 -0
  29. package/dist/modules/CoreOrder/registry.d.ts +3 -0
  30. package/dist/modules/CoreOrder/services/index.d.ts +1 -0
  31. package/dist/modules/CoreOrder/types/index.d.ts +2 -0
  32. package/dist/modules/CoreOrder/types/interfaces/index.d.ts +1 -0
  33. package/dist/modules/CorePayForm/classes/index.d.ts +1 -0
  34. package/dist/modules/CorePayForm/registry.d.ts +3 -0
  35. package/dist/modules/CorePayForm/services/index.d.ts +1 -0
  36. package/dist/modules/CorePayForm/types/index.d.ts +1 -0
  37. package/dist/modules/CoreProduct/classes/index.d.ts +1 -0
  38. package/dist/modules/CoreProduct/components/index.d.ts +2 -0
  39. package/dist/modules/CoreProduct/components/layouts/index.d.ts +1 -0
  40. package/dist/modules/CoreProduct/components/layouts/partials/index.d.ts +1 -0
  41. package/dist/modules/CoreProduct/components/ui/cards/addons/index.d.ts +1 -0
  42. package/dist/modules/CoreProduct/components/ui/cards/index.d.ts +7 -0
  43. package/dist/modules/CoreProduct/components/ui/carousels/index.d.ts +1 -0
  44. package/dist/modules/CoreProduct/components/ui/containers/index.d.ts +1 -0
  45. package/dist/modules/CoreProduct/components/ui/index.d.ts +3 -0
  46. package/dist/modules/CoreProduct/registry.d.ts +4 -0
  47. package/dist/modules/CoreProduct/services/index.d.ts +1 -0
  48. package/dist/modules/CoreProduct/types/index.d.ts +2 -0
  49. package/dist/modules/CoreShopCart/classes/CoreShopCartBuilder.d.ts +4 -4
  50. package/dist/modules/CoreShopCart/classes/index.d.ts +1 -0
  51. package/dist/modules/CoreShopCart/components/index.d.ts +2 -0
  52. package/dist/modules/CoreShopCart/components/layouts/index.d.ts +1 -0
  53. package/dist/modules/CoreShopCart/components/layouts/partials/index.d.ts +2 -0
  54. package/dist/modules/CoreShopCart/components/ui/cards/index.d.ts +2 -0
  55. package/dist/modules/CoreShopCart/components/ui/cards/skeletons/index.d.ts +1 -0
  56. package/dist/modules/CoreShopCart/components/ui/empty/index.d.ts +1 -0
  57. package/dist/modules/CoreShopCart/components/ui/index.d.ts +3 -0
  58. package/dist/modules/CoreShopCart/components/ui/texts/index.d.ts +4 -0
  59. package/dist/modules/CoreShopCart/constants/index.d.ts +1 -0
  60. package/dist/modules/CoreShopCart/registry.d.ts +5 -0
  61. package/dist/modules/CoreShopCart/services/index.d.ts +1 -0
  62. package/dist/modules/CoreShopCart/types/index.d.ts +2 -0
  63. package/dist/modules/CoreShopCart/types/interfaces/index.d.ts +1 -0
  64. package/dist/modules/registry.d.ts +6 -0
  65. package/dist/stores/customizationStore.d.ts +5 -5
  66. package/package.json +3 -1
  67. package/dist/modules/CoreAuth/components/layouts/partials/AuthDecorator.d.ts +0 -1
  68. package/dist/modules/CoreAuth/components/layouts/partials/AuthProfileDeleteAccountForm.d.ts +0 -1
  69. package/dist/modules/CoreAuth/components/layouts/partials/AuthProfileForm.d.ts +0 -1
  70. package/dist/modules/CoreAuth/components/layouts/partials/AuthProfileUpdatePassForm.d.ts +0 -1
  71. package/dist/modules/CoreAuth/components/layouts/partials/AuthUserMenu.d.ts +0 -1
  72. /package/dist/components/{customs → common}/carousel/CustomCarousel.d.ts +0 -0
  73. /package/dist/components/{customs → common}/carousel/CustomCarouselSection.d.ts +0 -0
  74. /package/dist/components/{customs → common}/carousel/index.d.ts +0 -0
  75. /package/dist/components/{customs → common}/form/CustomFormField.d.ts +0 -0
  76. /package/dist/components/{customs → common}/form/FormInput.d.ts +0 -0
  77. /package/dist/components/{customs → common}/form/FormTextArea.d.ts +0 -0
  78. /package/dist/components/{customs → common}/form/FormWrapper.d.ts +0 -0
  79. /package/dist/components/{customs → common}/form/index.d.ts +0 -0
  80. /package/dist/components/{customs → common}/index.d.ts +0 -0
  81. /package/dist/components/{customs → common}/logo/Logo.d.ts +0 -0
  82. /package/dist/components/{customs → common}/pagination/CustomPagination.d.ts +0 -0
  83. /package/dist/components/{customs → common}/select/CustomSelect.d.ts +0 -0
  84. /package/dist/components/{customs → common}/spinner/Spinner.d.ts +0 -0
@@ -0,0 +1,95 @@
1
+ #!/usr/bin/env node
2
+
3
+ import { createBaseDir, joinPaths } from './helpers/index.js';
4
+ import chalk from 'chalk';
5
+ import enquirer from 'enquirer';
6
+ import fs from 'fs';
7
+
8
+ const { prompt } = enquirer;
9
+
10
+ function sanitizeTemplateName(input) {
11
+ return input
12
+ .trim()
13
+ .toLowerCase()
14
+ .replace(/\s+/g, '-') // espacios -> guiones
15
+ .replace(/[^a-z0-9-]/g, '') // solo [a-z0-9-]
16
+ .replace(/-+/g, '-'); // colapsar guiones
17
+ }
18
+
19
+ function ensureDir(dirPath) {
20
+ fs.mkdirSync(dirPath, { recursive: true });
21
+ }
22
+
23
+ function createTemplate(templateNameRaw) {
24
+ const templateName = sanitizeTemplateName(templateNameRaw);
25
+
26
+ if (!templateName) {
27
+ console.error(chalk.red.bold('❌ Error: El nombre de la plantilla es requerido.'));
28
+ process.exit(1);
29
+ }
30
+
31
+ // Base: <cwd>/components/templates/<templateName>
32
+ const baseDir = createBaseDir(templateName, ['src', 'components', 'templates']);
33
+
34
+ if (fs.existsSync(baseDir)) {
35
+ console.error(chalk.red.bold(`❌ Error: La plantilla '${templateName}' ya existe en components/templates.`));
36
+ process.exit(1);
37
+ }
38
+
39
+ try {
40
+ // Asegurar carpetas padre
41
+ ensureDir(createBaseDir('', ['src', 'components'])); // <cwd>/components
42
+ ensureDir(createBaseDir('', ['src', 'components', 'templates'])); // <cwd>/components/templates
43
+
44
+ // Crear carpeta de la plantilla
45
+ ensureDir(baseDir);
46
+ console.log(chalk.green(`✓ Creado directorio: ${chalk.bold(`src/components/templates/${templateName}`)}`));
47
+
48
+ // Subcarpetas requeridas
49
+ const subdirs = ['components', 'pages', 'styles'];
50
+ subdirs.forEach((dir) => {
51
+ ensureDir(joinPaths(baseDir, dir));
52
+ console.log(chalk.green(`✓ Creado directorio: ${chalk.bold(`src/components/templates/${templateName}/${dir}`)}`));
53
+ });
54
+
55
+ console.log(chalk.green.bold(`\n✨ Plantilla '${templateName}' creada correctamente.`));
56
+ } catch (error) {
57
+ console.error(chalk.red.bold(`❌ Error creando la plantilla: ${error.message}`));
58
+ process.exit(1);
59
+ }
60
+ }
61
+
62
+ async function promptTemplateName() {
63
+ console.log(chalk.cyan.bold('\n==================================='));
64
+ console.log(chalk.cyan.bold(' Create Template'));
65
+ console.log(chalk.cyan.bold('===================================\n'));
66
+
67
+ const { templateName } = await prompt({
68
+ type: 'input',
69
+ name: 'templateName',
70
+ message: 'Ingresa el nombre de la plantilla:',
71
+ validate: (input) => {
72
+ const val = sanitizeTemplateName(input);
73
+ if (!val) return 'El nombre es requerido.';
74
+ const target = createBaseDir(val, ['src', 'components', 'templates']);
75
+ if (fs.existsSync(target)) return `La plantilla '${val}' ya existe.`;
76
+ return true;
77
+ },
78
+ });
79
+
80
+ return templateName;
81
+ }
82
+
83
+ // CLI
84
+ const templateNameArg = process.argv[2];
85
+
86
+ (async function main() {
87
+ let name = templateNameArg;
88
+ if (!name) {
89
+ name = await promptTemplateName();
90
+ }
91
+ createTemplate(name);
92
+ })().catch((err) => {
93
+ console.error(chalk.red.bold(`❌ Error inesperado: ${err.message}`));
94
+ process.exit(1);
95
+ });
@@ -1,3 +1,3 @@
1
- export * from './customs/index';
1
+ export * from './common/index';
2
2
  export * from './layouts/CoreBaseLayout';
3
3
  export * from './ui/index';
@@ -1,6 +1,6 @@
1
1
  interface CoreHeaderProps {
2
- readonly renderNavbar?: React.ReactNode;
3
- readonly renderSubMenuHeader?: React.ReactNode;
2
+ readonly navbar?: React.ReactNode;
3
+ readonly subMenuHeader?: React.ReactNode;
4
4
  }
5
- export declare function CoreHeader({ renderNavbar, renderSubMenuHeader }: CoreHeaderProps): import("react/jsx-runtime").JSX.Element;
5
+ export declare function CoreHeader({ navbar, subMenuHeader }: CoreHeaderProps): import("react/jsx-runtime").JSX.Element;
6
6
  export {};
@@ -1,8 +1,8 @@
1
1
  interface CoreMainSearchProps {
2
2
  readonly left?: React.ReactNode;
3
3
  readonly right?: React.ReactNode;
4
- readonly renderInput?: React.ReactNode;
5
- readonly renderSearchButton?: React.ReactNode;
4
+ readonly input?: React.ReactNode;
5
+ readonly searchButton?: React.ReactNode;
6
6
  }
7
- export declare function CoreMainSearch({ left, right, renderInput, renderSearchButton }: CoreMainSearchProps): import("react/jsx-runtime").JSX.Element;
7
+ export declare function CoreMainSearch({ left, right, input, searchButton }: CoreMainSearchProps): import("react/jsx-runtime").JSX.Element;
8
8
  export {};
@@ -2,7 +2,7 @@ import { BaseStyleProps } from '../../../types/ui/main';
2
2
  interface CoreNavbarProps extends BaseStyleProps {
3
3
  readonly center?: React.ReactNode;
4
4
  readonly right?: React.ReactNode;
5
- readonly renderLogo?: React.ReactNode;
5
+ readonly logo?: React.ReactNode;
6
6
  }
7
- export declare function CoreNavbar({ className, renderLogo, center, right }: CoreNavbarProps): import("react/jsx-runtime").JSX.Element;
7
+ export declare function CoreNavbar({ className, logo, center, right }: CoreNavbarProps): import("react/jsx-runtime").JSX.Element;
8
8
  export {};
@@ -1,6 +1,9 @@
1
1
  import { BaseStyleProps } from '../../../types/ui/main';
2
+ import { CoreMenuItem } from '../../../types';
2
3
  interface CoreSubMenuProps extends BaseStyleProps {
3
4
  classNameItems?: string;
5
+ items?: CoreMenuItem[];
6
+ itemComponent?: (item: CoreMenuItem) => React.ReactNode;
4
7
  }
5
- export declare function CoreSubMenu({ className, classNameItems }: CoreSubMenuProps): import("react/jsx-runtime").JSX.Element;
8
+ export declare function CoreSubMenu({ className, classNameItems, items, itemComponent }: CoreSubMenuProps): import("react/jsx-runtime").JSX.Element;
6
9
  export {};
package/dist/index.css CHANGED
@@ -1 +1 @@
1
- :root{--color-spinner: white;--size-spinner: 20px}div.spinner{position:relative;width:var(--size-spinner);height:var(--size-spinner);display:inline-block;margin-left:50%;margin-right:50%;padding:10px;border-radius:10px}div.spinner div{width:6%;height:16%;background:var(--color-spinner);position:absolute;left:49%;top:43%;opacity:0;-webkit-border-radius:50px;-webkit-box-shadow:0 0 3px rgba(0,0,0,.2);-webkit-animation:fade 1s linear infinite}@-webkit-keyframes fade{0%{opacity:1}to{opacity:.25}}div.spinner div.bar1{-webkit-transform:rotate(0deg) translate(0,-130%);-webkit-animation-delay:0s}div.spinner div.bar2{-webkit-transform:rotate(30deg) translate(0,-130%);-webkit-animation-delay:-.9167s}div.spinner div.bar3{-webkit-transform:rotate(60deg) translate(0,-130%);-webkit-animation-delay:-.833s}div.spinner div.bar4{-webkit-transform:rotate(90deg) translate(0,-130%);-webkit-animation-delay:-.7497s}div.spinner div.bar5{-webkit-transform:rotate(120deg) translate(0,-130%);-webkit-animation-delay:-.667s}div.spinner div.bar6{-webkit-transform:rotate(150deg) translate(0,-130%);-webkit-animation-delay:-.5837s}div.spinner div.bar7{-webkit-transform:rotate(180deg) translate(0,-130%);-webkit-animation-delay:-.5s}div.spinner div.bar8{-webkit-transform:rotate(210deg) translate(0,-130%);-webkit-animation-delay:-.4167s}div.spinner div.bar9{-webkit-transform:rotate(240deg) translate(0,-130%);-webkit-animation-delay:-.333s}div.spinner div.bar10{-webkit-transform:rotate(270deg) translate(0,-130%);-webkit-animation-delay:-.2497s}div.spinner div.bar11{-webkit-transform:rotate(300deg) translate(0,-130%);-webkit-animation-delay:-.167s}div.spinner div.bar12{-webkit-transform:rotate(330deg) translate(0,-130%);-webkit-animation-delay:-.0833s}
1
+ :root{--color-spinner: white;--size-spinner: 20px}div.spinner{position:relative;width:var(--size-spinner);height:var(--size-spinner);display:inline-block;margin-left:50%;margin-right:50%;padding:10px;border-radius:10px}div.spinner div{width:6%;height:16%;background:var(--color-spinner);position:absolute;left:49%;top:43%;opacity:0;-webkit-border-radius:50px;-webkit-box-shadow:0 0 3px rgba(0,0,0,.2);-webkit-animation:fade 1s linear infinite}@-webkit-keyframes fade{0%{opacity:1}to{opacity:.25}}div.spinner div.bar1{-webkit-transform:rotate(0deg) translate(0,-130%);-webkit-animation-delay:0s}div.spinner div.bar2{-webkit-transform:rotate(30deg) translate(0,-130%);-webkit-animation-delay:-.9167s}div.spinner div.bar3{-webkit-transform:rotate(60deg) translate(0,-130%);-webkit-animation-delay:-.833s}div.spinner div.bar4{-webkit-transform:rotate(90deg) translate(0,-130%);-webkit-animation-delay:-.7497s}div.spinner div.bar5{-webkit-transform:rotate(120deg) translate(0,-130%);-webkit-animation-delay:-.667s}div.spinner div.bar6{-webkit-transform:rotate(150deg) translate(0,-130%);-webkit-animation-delay:-.5837s}div.spinner div.bar7{-webkit-transform:rotate(180deg) translate(0,-130%);-webkit-animation-delay:-.5s}div.spinner div.bar8{-webkit-transform:rotate(210deg) translate(0,-130%);-webkit-animation-delay:-.4167s}div.spinner div.bar9{-webkit-transform:rotate(240deg) translate(0,-130%);-webkit-animation-delay:-.333s}div.spinner div.bar10{-webkit-transform:rotate(270deg) translate(0,-130%);-webkit-animation-delay:-.2497s}div.spinner div.bar11{-webkit-transform:rotate(300deg) translate(0,-130%);-webkit-animation-delay:-.167s}div.spinner div.bar12{-webkit-transform:rotate(330deg) translate(0,-130%);-webkit-animation-delay:-.0833s}.warranty{transform:rotate(-45deg) translate(-28%) translateY(-125%);transition:all .5s ease}.warranty-left,.warranty-right{content:"";width:10px;height:30px;position:absolute;top:0;z-index:-100}.warranty-left{left:0;transform:rotate(45deg) scale(.7) translate(110%)}.warranty-right{right:0;transform:rotate(-45deg) scaleX(.7) translate(-110%) translateY(-15%)}
package/dist/index.d.ts CHANGED
@@ -7,3 +7,4 @@ export * from './i18n/index';
7
7
  export * from './services/index';
8
8
  export * from './stores/index';
9
9
  export * from './types/index';
10
+ export * from './modules/registry';