@mandolop97/constructor-nexora 1.0.9 → 1.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 (33) hide show
  1. package/dist/NexoraBuilderApp.d.ts +9 -1
  2. package/dist/components/builder/BuilderCanvas.d.ts +8 -1
  3. package/dist/components/builder/BuilderEditorShell.d.ts +5 -1
  4. package/dist/components/builder/CustomStylesInjector.d.ts +12 -0
  5. package/dist/components/builder/GradientEditor.d.ts +6 -0
  6. package/dist/components/builder/ImageUploadField.d.ts +7 -0
  7. package/dist/components/builder/Inspector.d.ts +3 -1
  8. package/dist/components/builder/LayersPanel.d.ts +2 -1
  9. package/dist/components/builder/MediaGallery.d.ts +7 -0
  10. package/dist/components/builder/ProductPicker.d.ts +19 -0
  11. package/dist/components/schema/PageRenderer.d.ts +6 -2
  12. package/dist/components/schema/SortableNodeWrapper.d.ts +6 -1
  13. package/dist/components/schema/nodes/ContentNodes.d.ts +3 -0
  14. package/dist/components/ui/badge.d.ts +1 -1
  15. package/dist/components/ui/button.d.ts +2 -2
  16. package/dist/components/ui/command.d.ts +1 -1
  17. package/dist/components/ui/input-otp.d.ts +2 -2
  18. package/dist/components/ui/resizable.d.ts +1 -1
  19. package/dist/components/ui/sheet.d.ts +1 -1
  20. package/dist/components/ui/sidebar.d.ts +1 -1
  21. package/dist/components/ui/toggle-group.d.ts +2 -2
  22. package/dist/components/ui/toggle.d.ts +2 -2
  23. package/dist/index-CnxzP-Eg.js +18350 -0
  24. package/dist/index.css +1 -1
  25. package/dist/index.d.ts +6 -1
  26. package/dist/index.js +40 -15726
  27. package/dist/integrations/supabase/client.d.ts +78 -0
  28. package/dist/integrations/supabase/types.d.ts +78 -0
  29. package/dist/lib/block-registry.d.ts +18 -34
  30. package/dist/lib/style-utils.d.ts +16 -0
  31. package/dist/lucide-react-Bp2-WcqC.js +19114 -0
  32. package/dist/types/schema.d.ts +102 -39
  33. package/package.json +4 -2
@@ -1,42 +1,117 @@
1
1
  import React from 'react';
2
- export type BuiltInNodeType = 'Section' | 'Container' | 'Grid' | 'Stack' | 'Text' | 'Image' | 'Divider' | 'Badge' | 'Button' | 'Card' | 'Input' | 'ProductCard' | 'Navbar' | 'Footer' | 'AnnouncementBar' | 'FeatureBar' | 'TestimonialCard' | 'NewsletterSection' | 'HeroSection' | 'Accordion' | 'TabsBlock' | 'VideoEmbed';
2
+ export type BuiltInNodeType = 'Section' | 'Container' | 'Grid' | 'Stack' | 'Text' | 'Image' | 'Divider' | 'Badge' | 'Button' | 'Card' | 'Input' | 'ProductCard' | 'Navbar' | 'Footer' | 'AnnouncementBar' | 'FeatureBar' | 'TestimonialCard' | 'NewsletterSection' | 'HeroSection' | 'Accordion' | 'TabsBlock' | 'VideoEmbed' | 'Spacer' | 'Icon' | 'SocialIcons';
3
3
  /** Extensible node type — accepts all built-in types plus any custom string. */
4
4
  export type NodeType = BuiltInNodeType | (string & {});
5
5
  export interface NodeStyle {
6
6
  padding?: string;
7
7
  margin?: string;
8
8
  gap?: string;
9
- color?: string;
10
- backgroundColor?: string;
11
- borderColor?: string;
12
- borderWidth?: string;
13
- borderRadius?: string;
14
- boxShadow?: string;
15
9
  width?: string;
16
10
  height?: string;
17
11
  minHeight?: string;
18
12
  maxWidth?: string;
19
- alignItems?: string;
20
- justifyContent?: string;
21
- textAlign?: string;
22
- fontSize?: string;
23
- fontWeight?: string;
24
- lineHeight?: string;
25
- letterSpacing?: string;
13
+ minWidth?: string;
14
+ maxHeight?: string;
26
15
  display?: string;
27
16
  flexDirection?: string;
17
+ flexWrap?: string;
18
+ flexGrow?: string;
19
+ flexShrink?: string;
20
+ alignItems?: string;
21
+ justifyContent?: string;
22
+ alignSelf?: string;
28
23
  gridTemplateColumns?: string;
29
- backgroundImage?: string;
30
- backgroundSize?: string;
31
- backgroundPosition?: string;
32
- opacity?: string;
24
+ gridTemplateRows?: string;
25
+ gridColumn?: string;
26
+ gridRow?: string;
33
27
  overflow?: string;
28
+ overflowX?: string;
29
+ overflowY?: string;
34
30
  position?: string;
35
31
  top?: string;
36
32
  left?: string;
37
33
  right?: string;
38
34
  bottom?: string;
39
35
  zIndex?: string;
36
+ float?: string;
37
+ clear?: string;
38
+ color?: string;
39
+ fontSize?: string;
40
+ fontWeight?: string;
41
+ fontFamily?: string;
42
+ fontStyle?: string;
43
+ lineHeight?: string;
44
+ letterSpacing?: string;
45
+ textAlign?: string;
46
+ textTransform?: string;
47
+ textDecoration?: string;
48
+ textShadow?: string;
49
+ wordSpacing?: string;
50
+ whiteSpace?: string;
51
+ textOverflow?: string;
52
+ backgroundColor?: string;
53
+ backgroundImage?: string;
54
+ backgroundSize?: string;
55
+ backgroundPosition?: string;
56
+ backgroundRepeat?: string;
57
+ backgroundAttachment?: string;
58
+ backgroundBlendMode?: string;
59
+ backgroundGradient?: string;
60
+ backgroundClip?: string;
61
+ borderColor?: string;
62
+ borderWidth?: string;
63
+ borderRadius?: string;
64
+ borderStyle?: string;
65
+ borderTop?: string;
66
+ borderBottom?: string;
67
+ borderLeft?: string;
68
+ borderRight?: string;
69
+ borderTopLeftRadius?: string;
70
+ borderTopRightRadius?: string;
71
+ borderBottomLeftRadius?: string;
72
+ borderBottomRightRadius?: string;
73
+ outline?: string;
74
+ outlineOffset?: string;
75
+ outlineColor?: string;
76
+ outlineStyle?: string;
77
+ outlineWidth?: string;
78
+ boxShadow?: string;
79
+ opacity?: string;
80
+ filter?: string;
81
+ backdropFilter?: string;
82
+ mixBlendMode?: string;
83
+ clipPath?: string;
84
+ cursor?: string;
85
+ pointerEvents?: string;
86
+ userSelect?: string;
87
+ visibility?: string;
88
+ transform?: string;
89
+ transformOrigin?: string;
90
+ perspective?: string;
91
+ perspectiveOrigin?: string;
92
+ transition?: string;
93
+ transitionProperty?: string;
94
+ transitionDuration?: string;
95
+ transitionTimingFunction?: string;
96
+ transitionDelay?: string;
97
+ animation?: string;
98
+ animationName?: string;
99
+ animationDuration?: string;
100
+ animationDelay?: string;
101
+ animationTimingFunction?: string;
102
+ animationIterationCount?: string;
103
+ animationFillMode?: string;
104
+ animationDirection?: string;
105
+ animationPlayState?: string;
106
+ hover?: Partial<Omit<NodeStyle, 'hover' | 'focus' | 'active' | 'responsive'>>;
107
+ focus?: Partial<Omit<NodeStyle, 'hover' | 'focus' | 'active' | 'responsive'>>;
108
+ active?: Partial<Omit<NodeStyle, 'hover' | 'focus' | 'active' | 'responsive'>>;
109
+ responsive?: {
110
+ sm?: Partial<Omit<NodeStyle, 'hover' | 'focus' | 'active' | 'responsive'>>;
111
+ md?: Partial<Omit<NodeStyle, 'hover' | 'focus' | 'active' | 'responsive'>>;
112
+ lg?: Partial<Omit<NodeStyle, 'hover' | 'focus' | 'active' | 'responsive'>>;
113
+ xl?: Partial<Omit<NodeStyle, 'hover' | 'focus' | 'active' | 'responsive'>>;
114
+ };
40
115
  }
41
116
  export interface NodeProps {
42
117
  text?: string;
@@ -67,39 +142,26 @@ export interface NodeProps {
67
142
  ctaText?: string;
68
143
  ctaHref?: string;
69
144
  overlayOpacity?: string;
70
- /** Alias for `text` in HeroSection/Newsletter */
71
145
  heading?: string;
72
- /** Alias for `ctaHref` in HeroSection */
73
146
  ctaLink?: string;
74
- /** Secondary CTA button text */
75
147
  secondaryCtaText?: string;
76
- /** Secondary CTA button link */
77
148
  secondaryCtaLink?: string;
78
- /** Overlay label text in HeroSection */
79
149
  overlayText?: string;
80
- /** Alias for `text` in ProductCard */
81
150
  name?: string;
82
- /** Alias for `src` in ProductCard */
83
151
  image?: string;
84
- /** Alias for `text` in TestimonialCard */
85
152
  quote?: string;
86
- /** Alias for `label` in TestimonialCard */
87
153
  author?: string;
88
- /** Alias for `variant` (stars) in TestimonialCard */
89
154
  stars?: number;
90
- /** Alias for `href` in Button */
91
155
  link?: string;
92
- /** Accordion/Tabs panels: array of { title, description } */
93
156
  panels?: {
94
157
  title: string;
95
158
  description: string;
96
159
  }[];
97
- /** Video embed URL */
98
160
  videoUrl?: string;
99
- /** Autoplay flag */
100
161
  autoplay?: boolean;
101
- /** Muted flag */
102
162
  muted?: boolean;
163
+ /** Allow arbitrary extra props from custom blocks */
164
+ [key: string]: any;
103
165
  }
104
166
  export interface SchemaNode {
105
167
  id: string;
@@ -109,8 +171,9 @@ export interface SchemaNode {
109
171
  children: string[];
110
172
  locked?: boolean;
111
173
  hidden?: boolean;
112
- /** User-defined custom name for this node (shown in Layers panel) */
113
174
  customName?: string;
175
+ /** Raw CSS applied to this specific widget */
176
+ customCSS?: string;
114
177
  }
115
178
  export interface ThemeTokens {
116
179
  colors: {
@@ -139,6 +202,7 @@ export interface ThemeTokens {
139
202
  lg: string;
140
203
  xl: string;
141
204
  };
205
+ gradient?: string;
142
206
  }
143
207
  export interface Schema {
144
208
  id: string;
@@ -159,19 +223,18 @@ export interface PageDefinition {
159
223
  title: string;
160
224
  schema: Schema;
161
225
  status?: 'published' | 'draft';
162
- /** Type of template being edited. Determines canvas behavior. */
163
226
  templateType?: TemplateType;
164
- /** Category for grouping in the sidebar (e.g. "Páginas", "Elementos Globales", "Templates") */
165
227
  category?: string;
166
- /** Optional icon component for the page list */
167
228
  icon?: React.ComponentType;
168
- /** Custom canvas dimensions. Overrides templateType defaults. */
169
229
  canvasSize?: {
170
230
  width: number;
171
231
  height: number;
172
232
  };
173
- /** Mock data injected into custom components in edit/preview mode */
174
233
  mockData?: Record<string, any>;
175
234
  }
176
235
  export type RenderMode = 'public' | 'preview' | 'edit';
177
236
  export type TemplateType = 'page' | 'header' | 'footer' | 'component' | 'single';
237
+ /** Predefined animation presets available in the Inspector */
238
+ export type AnimationPreset = 'fadeIn' | 'fadeOut' | 'slideUp' | 'slideDown' | 'slideLeft' | 'slideRight' | 'scaleIn' | 'scaleOut' | 'bounceIn' | 'pulse' | 'shake' | 'none';
239
+ /** Maps animation preset names to CSS animation values */
240
+ export declare const ANIMATION_PRESETS: Record<AnimationPreset, string>;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mandolop97/constructor-nexora",
3
3
  "private": false,
4
- "version": "1.0.9",
4
+ "version": "1.1.3",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "module": "dist/index.js",
@@ -17,7 +17,9 @@
17
17
  "react": "^18.0.0",
18
18
  "react-dom": "^18.0.0"
19
19
  },
20
- "files": ["dist"],
20
+ "files": [
21
+ "dist"
22
+ ],
21
23
  "scripts": {
22
24
  "dev": "vite",
23
25
  "build": "vite build",