@developer_tribe/react-builder 0.1.25 → 0.1.26

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 (92) hide show
  1. package/dist/DeviceMockFrame.d.ts +22 -0
  2. package/dist/RenderPage.d.ts +6 -3
  3. package/dist/build-components/OnboardProvider/OnboardProviderProps.generated.d.ts +4 -1
  4. package/dist/build-components/index.d.ts +0 -1
  5. package/dist/build-components/useNode.d.ts +2 -0
  6. package/dist/index.cjs.js +1 -1
  7. package/dist/index.d.ts +2 -0
  8. package/dist/index.esm.js +1 -1
  9. package/dist/types/Device.d.ts +16 -0
  10. package/dist/types/Node.d.ts +2 -1
  11. package/dist/utils/patterns.d.ts +4 -0
  12. package/package.json +1 -1
  13. package/scripts/prebuild/build-components.js +4 -4
  14. package/scripts/prebuild/utils/createBuildComponentsIndex.js +1 -4
  15. package/scripts/prebuild/utils/createBuildComponentsRootGetDefaults.js +2 -55
  16. package/scripts/prebuild/utils/createGetDefaultsPerComponent.js +2 -19
  17. package/scripts/prebuild/utils/createRootGetDefaults.js +2 -44
  18. package/scripts/prebuild/utils/validateAllComponentsOrThrow.js +3 -1
  19. package/src/AttributesEditor.tsx +19 -15
  20. package/src/DeviceMockFrame.tsx +119 -0
  21. package/src/RenderPage.tsx +19 -27
  22. package/src/assets/devices.json +364 -91
  23. package/src/build-components/Button/Button.tsx +2 -0
  24. package/src/build-components/Carousel/Carousel.tsx +2 -0
  25. package/src/build-components/CarouselButtons/CarouselButtons.tsx +2 -0
  26. package/src/build-components/CarouselDots/CarouselDots.tsx +2 -0
  27. package/src/build-components/CarouselItem/CarouselItem.tsx +2 -0
  28. package/src/build-components/CarouselProvider/CarouselProvider.tsx +2 -0
  29. package/src/build-components/Image/Image.tsx +2 -0
  30. package/src/build-components/Onboard/Onboard.tsx +2 -0
  31. package/src/build-components/OnboardButton/OnboardButton.tsx +2 -0
  32. package/src/build-components/OnboardButtons/OnboardButtons.tsx +2 -0
  33. package/src/build-components/OnboardDot/OnboardDot.tsx +2 -0
  34. package/src/build-components/OnboardFooter/OnboardFooter.tsx +2 -0
  35. package/src/build-components/OnboardImage/OnboardImage.tsx +2 -0
  36. package/src/build-components/OnboardItem/OnboardItem.tsx +2 -0
  37. package/src/build-components/OnboardProvider/OnboardProvider.tsx +13 -1
  38. package/src/build-components/OnboardProvider/OnboardProviderProps.generated.ts +4 -1
  39. package/src/build-components/OnboardProvider/pattern.json +4 -1
  40. package/src/build-components/OnboardSubtitle/OnboardSubtitle.tsx +2 -0
  41. package/src/build-components/OnboardSubtitle/pattern.json +1 -1
  42. package/src/build-components/OnboardTitle/OnboardTitle.tsx +2 -0
  43. package/src/build-components/OnboardTitle/pattern.json +1 -1
  44. package/src/build-components/Text/Text.tsx +2 -0
  45. package/src/build-components/View/View.tsx +2 -0
  46. package/src/build-components/index.ts +0 -2
  47. package/src/build-components/useNode.ts +15 -0
  48. package/src/index.ts +2 -0
  49. package/src/types/Device.ts +21 -0
  50. package/src/types/Node.ts +2 -11
  51. package/src/utils/novaToJson.ts +7 -0
  52. package/src/utils/patterns.ts +11 -0
  53. package/dist/build-components/Button/getDefaults.d.ts +0 -3
  54. package/dist/build-components/Carousel/getDefaults.d.ts +0 -3
  55. package/dist/build-components/CarouselButtons/getDefaults.d.ts +0 -3
  56. package/dist/build-components/CarouselDots/getDefaults.d.ts +0 -3
  57. package/dist/build-components/CarouselItem/getDefaults.d.ts +0 -3
  58. package/dist/build-components/CarouselProvider/getDefaults.d.ts +0 -3
  59. package/dist/build-components/Image/getDefaults.d.ts +0 -3
  60. package/dist/build-components/Onboard/getDefaults.d.ts +0 -3
  61. package/dist/build-components/OnboardButton/getDefaults.d.ts +0 -3
  62. package/dist/build-components/OnboardButtons/getDefaults.d.ts +0 -3
  63. package/dist/build-components/OnboardDot/getDefaults.d.ts +0 -3
  64. package/dist/build-components/OnboardFooter/getDefaults.d.ts +0 -3
  65. package/dist/build-components/OnboardImage/getDefaults.d.ts +0 -3
  66. package/dist/build-components/OnboardItem/getDefaults.d.ts +0 -3
  67. package/dist/build-components/OnboardProvider/getDefaults.d.ts +0 -3
  68. package/dist/build-components/OnboardSubtitle/getDefaults.d.ts +0 -3
  69. package/dist/build-components/OnboardTitle/getDefaults.d.ts +0 -3
  70. package/dist/build-components/Text/getDefaults.d.ts +0 -3
  71. package/dist/build-components/View/getDefaults.d.ts +0 -3
  72. package/dist/build-components/getDefaults.d.ts +0 -25
  73. package/src/build-components/Button/getDefaults.ts +0 -11
  74. package/src/build-components/Carousel/getDefaults.ts +0 -11
  75. package/src/build-components/CarouselButtons/getDefaults.ts +0 -13
  76. package/src/build-components/CarouselDots/getDefaults.ts +0 -13
  77. package/src/build-components/CarouselItem/getDefaults.ts +0 -13
  78. package/src/build-components/CarouselProvider/getDefaults.ts +0 -13
  79. package/src/build-components/Image/getDefaults.ts +0 -11
  80. package/src/build-components/Onboard/getDefaults.ts +0 -11
  81. package/src/build-components/OnboardButton/getDefaults.ts +0 -13
  82. package/src/build-components/OnboardButtons/getDefaults.ts +0 -13
  83. package/src/build-components/OnboardDot/getDefaults.ts +0 -13
  84. package/src/build-components/OnboardFooter/getDefaults.ts +0 -13
  85. package/src/build-components/OnboardImage/getDefaults.ts +0 -13
  86. package/src/build-components/OnboardItem/getDefaults.ts +0 -13
  87. package/src/build-components/OnboardProvider/getDefaults.ts +0 -13
  88. package/src/build-components/OnboardSubtitle/getDefaults.ts +0 -13
  89. package/src/build-components/OnboardTitle/getDefaults.ts +0 -13
  90. package/src/build-components/Text/getDefaults.ts +0 -11
  91. package/src/build-components/View/getDefaults.ts +0 -11
  92. package/src/build-components/getDefaults.ts +0 -149
@@ -1,13 +0,0 @@
1
- /* AUTO-GENERATED FILE - DO NOT EDIT */
2
-
3
- import pattern from './pattern.json';
4
- import type { CarouselItemPropsGenerated } from './CarouselItemProps.generated';
5
-
6
- export type CarouselItemDefaults = Partial<
7
- CarouselItemPropsGenerated['attributes']
8
- >;
9
-
10
- export function getDefaults(): CarouselItemDefaults {
11
- return ((pattern as unknown as { default?: unknown })?.default ??
12
- {}) as CarouselItemDefaults;
13
- }
@@ -1,13 +0,0 @@
1
- /* AUTO-GENERATED FILE - DO NOT EDIT */
2
-
3
- import pattern from './pattern.json';
4
- import type { CarouselProviderPropsGenerated } from './CarouselProviderProps.generated';
5
-
6
- export type CarouselProviderDefaults = Partial<
7
- CarouselProviderPropsGenerated['attributes']
8
- >;
9
-
10
- export function getDefaults(): CarouselProviderDefaults {
11
- return ((pattern as unknown as { default?: unknown })?.default ??
12
- {}) as CarouselProviderDefaults;
13
- }
@@ -1,11 +0,0 @@
1
- /* AUTO-GENERATED FILE - DO NOT EDIT */
2
-
3
- import pattern from './pattern.json';
4
- import type { ImagePropsGenerated } from './ImageProps.generated';
5
-
6
- export type ImageDefaults = Partial<ImagePropsGenerated['attributes']>;
7
-
8
- export function getDefaults(): ImageDefaults {
9
- return ((pattern as unknown as { default?: unknown })?.default ??
10
- {}) as ImageDefaults;
11
- }
@@ -1,11 +0,0 @@
1
- /* AUTO-GENERATED FILE - DO NOT EDIT */
2
-
3
- import pattern from './pattern.json';
4
- import type { OnboardPropsGenerated } from './OnboardProps.generated';
5
-
6
- export type OnboardDefaults = Partial<OnboardPropsGenerated['attributes']>;
7
-
8
- export function getDefaults(): OnboardDefaults {
9
- return ((pattern as unknown as { default?: unknown })?.default ??
10
- {}) as OnboardDefaults;
11
- }
@@ -1,13 +0,0 @@
1
- /* AUTO-GENERATED FILE - DO NOT EDIT */
2
-
3
- import pattern from './pattern.json';
4
- import type { OnboardButtonPropsGenerated } from './OnboardButtonProps.generated';
5
-
6
- export type OnboardButtonDefaults = Partial<
7
- OnboardButtonPropsGenerated['attributes']
8
- >;
9
-
10
- export function getDefaults(): OnboardButtonDefaults {
11
- return ((pattern as unknown as { default?: unknown })?.default ??
12
- {}) as OnboardButtonDefaults;
13
- }
@@ -1,13 +0,0 @@
1
- /* AUTO-GENERATED FILE - DO NOT EDIT */
2
-
3
- import pattern from './pattern.json';
4
- import type { OnboardButtonsPropsGenerated } from './OnboardButtonsProps.generated';
5
-
6
- export type OnboardButtonsDefaults = Partial<
7
- OnboardButtonsPropsGenerated['attributes']
8
- >;
9
-
10
- export function getDefaults(): OnboardButtonsDefaults {
11
- return ((pattern as unknown as { default?: unknown })?.default ??
12
- {}) as OnboardButtonsDefaults;
13
- }
@@ -1,13 +0,0 @@
1
- /* AUTO-GENERATED FILE - DO NOT EDIT */
2
-
3
- import pattern from './pattern.json';
4
- import type { OnboardDotPropsGenerated } from './OnboardDotProps.generated';
5
-
6
- export type OnboardDotDefaults = Partial<
7
- OnboardDotPropsGenerated['attributes']
8
- >;
9
-
10
- export function getDefaults(): OnboardDotDefaults {
11
- return ((pattern as unknown as { default?: unknown })?.default ??
12
- {}) as OnboardDotDefaults;
13
- }
@@ -1,13 +0,0 @@
1
- /* AUTO-GENERATED FILE - DO NOT EDIT */
2
-
3
- import pattern from './pattern.json';
4
- import type { OnboardFooterPropsGenerated } from './OnboardFooterProps.generated';
5
-
6
- export type OnboardFooterDefaults = Partial<
7
- OnboardFooterPropsGenerated['attributes']
8
- >;
9
-
10
- export function getDefaults(): OnboardFooterDefaults {
11
- return ((pattern as unknown as { default?: unknown })?.default ??
12
- {}) as OnboardFooterDefaults;
13
- }
@@ -1,13 +0,0 @@
1
- /* AUTO-GENERATED FILE - DO NOT EDIT */
2
-
3
- import pattern from './pattern.json';
4
- import type { OnboardImagePropsGenerated } from './OnboardImageProps.generated';
5
-
6
- export type OnboardImageDefaults = Partial<
7
- OnboardImagePropsGenerated['attributes']
8
- >;
9
-
10
- export function getDefaults(): OnboardImageDefaults {
11
- return ((pattern as unknown as { default?: unknown })?.default ??
12
- {}) as OnboardImageDefaults;
13
- }
@@ -1,13 +0,0 @@
1
- /* AUTO-GENERATED FILE - DO NOT EDIT */
2
-
3
- import pattern from './pattern.json';
4
- import type { OnboardItemPropsGenerated } from './OnboardItemProps.generated';
5
-
6
- export type OnboardItemDefaults = Partial<
7
- OnboardItemPropsGenerated['attributes']
8
- >;
9
-
10
- export function getDefaults(): OnboardItemDefaults {
11
- return ((pattern as unknown as { default?: unknown })?.default ??
12
- {}) as OnboardItemDefaults;
13
- }
@@ -1,13 +0,0 @@
1
- /* AUTO-GENERATED FILE - DO NOT EDIT */
2
-
3
- import pattern from './pattern.json';
4
- import type { OnboardProviderPropsGenerated } from './OnboardProviderProps.generated';
5
-
6
- export type OnboardProviderDefaults = Partial<
7
- OnboardProviderPropsGenerated['attributes']
8
- >;
9
-
10
- export function getDefaults(): OnboardProviderDefaults {
11
- return ((pattern as unknown as { default?: unknown })?.default ??
12
- {}) as OnboardProviderDefaults;
13
- }
@@ -1,13 +0,0 @@
1
- /* AUTO-GENERATED FILE - DO NOT EDIT */
2
-
3
- import pattern from './pattern.json';
4
- import type { OnboardSubtitlePropsGenerated } from './OnboardSubtitleProps.generated';
5
-
6
- export type OnboardSubtitleDefaults = Partial<
7
- OnboardSubtitlePropsGenerated['attributes']
8
- >;
9
-
10
- export function getDefaults(): OnboardSubtitleDefaults {
11
- return ((pattern as unknown as { default?: unknown })?.default ??
12
- {}) as OnboardSubtitleDefaults;
13
- }
@@ -1,13 +0,0 @@
1
- /* AUTO-GENERATED FILE - DO NOT EDIT */
2
-
3
- import pattern from './pattern.json';
4
- import type { OnboardTitlePropsGenerated } from './OnboardTitleProps.generated';
5
-
6
- export type OnboardTitleDefaults = Partial<
7
- OnboardTitlePropsGenerated['attributes']
8
- >;
9
-
10
- export function getDefaults(): OnboardTitleDefaults {
11
- return ((pattern as unknown as { default?: unknown })?.default ??
12
- {}) as OnboardTitleDefaults;
13
- }
@@ -1,11 +0,0 @@
1
- /* AUTO-GENERATED FILE - DO NOT EDIT */
2
-
3
- import pattern from './pattern.json';
4
- import type { TextPropsGenerated } from './TextProps.generated';
5
-
6
- export type TextDefaults = Partial<TextPropsGenerated['attributes']>;
7
-
8
- export function getDefaults(): TextDefaults {
9
- return ((pattern as unknown as { default?: unknown })?.default ??
10
- {}) as TextDefaults;
11
- }
@@ -1,11 +0,0 @@
1
- /* AUTO-GENERATED FILE - DO NOT EDIT */
2
-
3
- import pattern from './pattern.json';
4
- import type { ViewPropsGenerated } from './ViewProps.generated';
5
-
6
- export type ViewDefaults = Partial<ViewPropsGenerated['attributes']>;
7
-
8
- export function getDefaults(): ViewDefaults {
9
- return ((pattern as unknown as { default?: unknown })?.default ??
10
- {}) as ViewDefaults;
11
- }
@@ -1,149 +0,0 @@
1
- /* AUTO-GENERATED FILE - DO NOT EDIT */
2
-
3
- import { getDefaults as getButtonDefaults } from './Button/getDefaults';
4
- import { getDefaults as getCarouselDefaults } from './Carousel/getDefaults';
5
- import { getDefaults as getCarouselButtonsDefaults } from './CarouselButtons/getDefaults';
6
- import { getDefaults as getCarouselDotsDefaults } from './CarouselDots/getDefaults';
7
- import { getDefaults as getCarouselItemDefaults } from './CarouselItem/getDefaults';
8
- import { getDefaults as getCarouselProviderDefaults } from './CarouselProvider/getDefaults';
9
- import { getDefaults as getImageDefaults } from './Image/getDefaults';
10
- import { getDefaults as getOnboardDefaults } from './Onboard/getDefaults';
11
- import { getDefaults as getOnboardButtonDefaults } from './OnboardButton/getDefaults';
12
- import { getDefaults as getOnboardButtonsDefaults } from './OnboardButtons/getDefaults';
13
- import { getDefaults as getOnboardDotDefaults } from './OnboardDot/getDefaults';
14
- import { getDefaults as getOnboardFooterDefaults } from './OnboardFooter/getDefaults';
15
- import { getDefaults as getOnboardImageDefaults } from './OnboardImage/getDefaults';
16
- import { getDefaults as getOnboardItemDefaults } from './OnboardItem/getDefaults';
17
- import { getDefaults as getOnboardProviderDefaults } from './OnboardProvider/getDefaults';
18
- import { getDefaults as getOnboardSubtitleDefaults } from './OnboardSubtitle/getDefaults';
19
- import { getDefaults as getOnboardTitleDefaults } from './OnboardTitle/getDefaults';
20
- import { getDefaults as getTextDefaults } from './Text/getDefaults';
21
- import { getDefaults as getViewDefaults } from './View/getDefaults';
22
- import type {
23
- ButtonPropsGenerated,
24
- CarouselPropsGenerated,
25
- CarouselButtonsPropsGenerated,
26
- CarouselDotsPropsGenerated,
27
- CarouselItemPropsGenerated,
28
- CarouselProviderPropsGenerated,
29
- ImagePropsGenerated,
30
- OnboardPropsGenerated,
31
- OnboardButtonPropsGenerated,
32
- OnboardButtonsPropsGenerated,
33
- OnboardDotPropsGenerated,
34
- OnboardFooterPropsGenerated,
35
- OnboardImagePropsGenerated,
36
- OnboardItemPropsGenerated,
37
- OnboardProviderPropsGenerated,
38
- OnboardSubtitlePropsGenerated,
39
- OnboardTitlePropsGenerated,
40
- TextPropsGenerated,
41
- ViewPropsGenerated,
42
- } from './index';
43
- import type { NodeData } from '../types/Node';
44
-
45
- export type Types = {
46
- button: ButtonPropsGenerated['attributes'];
47
- carousel: CarouselPropsGenerated['attributes'];
48
- carouselButtons: CarouselButtonsPropsGenerated['attributes'];
49
- carouselDots: CarouselDotsPropsGenerated['attributes'];
50
- carouselItem: CarouselItemPropsGenerated['attributes'];
51
- carouselProvider: CarouselProviderPropsGenerated['attributes'];
52
- image: ImagePropsGenerated['attributes'];
53
- Onboard: OnboardPropsGenerated['attributes'];
54
- OnboardButton: OnboardButtonPropsGenerated['attributes'];
55
- OnboardButtons: OnboardButtonsPropsGenerated['attributes'];
56
- OnboardDot: OnboardDotPropsGenerated['attributes'];
57
- OnboardFooter: OnboardFooterPropsGenerated['attributes'];
58
- OnboardImage: OnboardImagePropsGenerated['attributes'];
59
- OnboardItem: OnboardItemPropsGenerated['attributes'];
60
- OnboardProvider: OnboardProviderPropsGenerated['attributes'];
61
- OnboardSubtitle: OnboardSubtitlePropsGenerated['attributes'];
62
- OnboardTitle: OnboardTitlePropsGenerated['attributes'];
63
- text: TextPropsGenerated['attributes'];
64
- view: ViewPropsGenerated['attributes'];
65
- };
66
-
67
- export type List<T> = T extends keyof Types ? Types[T] : never;
68
-
69
- export function getDefaults<T extends keyof Types>(
70
- type: T,
71
- node: NodeData<List<T>>,
72
- ): Partial<Types[T]> {
73
- let defaults: Partial<Types[T]> = {};
74
-
75
- switch (type as unknown as string) {
76
- case 'button':
77
- defaults = getButtonDefaults() as Partial<Types[T]>;
78
- break;
79
- case 'carousel':
80
- defaults = getCarouselDefaults() as Partial<Types[T]>;
81
- break;
82
- case 'carouselButtons':
83
- defaults = getCarouselButtonsDefaults() as Partial<Types[T]>;
84
- break;
85
- case 'carouselDots':
86
- defaults = getCarouselDotsDefaults() as Partial<Types[T]>;
87
- break;
88
- case 'carouselItem':
89
- defaults = getCarouselItemDefaults() as Partial<Types[T]>;
90
- break;
91
- case 'carouselProvider':
92
- defaults = getCarouselProviderDefaults() as Partial<Types[T]>;
93
- break;
94
- case 'image':
95
- defaults = getImageDefaults() as Partial<Types[T]>;
96
- break;
97
- case 'Onboard':
98
- defaults = getOnboardDefaults() as Partial<Types[T]>;
99
- break;
100
- case 'OnboardButton':
101
- defaults = getOnboardButtonDefaults() as Partial<Types[T]>;
102
- break;
103
- case 'OnboardButtons':
104
- defaults = getOnboardButtonsDefaults() as Partial<Types[T]>;
105
- break;
106
- case 'OnboardDot':
107
- defaults = getOnboardDotDefaults() as Partial<Types[T]>;
108
- break;
109
- case 'OnboardFooter':
110
- defaults = getOnboardFooterDefaults() as Partial<Types[T]>;
111
- break;
112
- case 'OnboardImage':
113
- defaults = getOnboardImageDefaults() as Partial<Types[T]>;
114
- break;
115
- case 'OnboardItem':
116
- defaults = getOnboardItemDefaults() as Partial<Types[T]>;
117
- break;
118
- case 'OnboardProvider':
119
- defaults = getOnboardProviderDefaults() as Partial<Types[T]>;
120
- break;
121
- case 'OnboardSubtitle':
122
- defaults = getOnboardSubtitleDefaults() as Partial<Types[T]>;
123
- break;
124
- case 'OnboardTitle':
125
- defaults = getOnboardTitleDefaults() as Partial<Types[T]>;
126
- break;
127
- case 'text':
128
- defaults = getTextDefaults() as Partial<Types[T]>;
129
- break;
130
- case 'view':
131
- defaults = getViewDefaults() as Partial<Types[T]>;
132
- break;
133
- default:
134
- defaults = {} as Partial<Types[T]>;
135
- }
136
-
137
- if (
138
- (node as unknown as { type?: string })?.type !== (type as unknown as string)
139
- ) {
140
- throw new Error(
141
- `getDefaults: node.type mismatch; expected ${String(type)}, received ${(node as unknown as { type?: string })?.type ?? 'undefined'}`,
142
- );
143
- }
144
-
145
- (node as unknown as { attributes?: unknown }).attributes =
146
- defaults as Types[T];
147
-
148
- return defaults;
149
- }