@developer_tribe/react-builder 1.2.41 → 1.2.43
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/dist/build-components/BIcon/BIconProps.generated.d.ts +1 -1
- package/dist/build-components/CountDown/CountDownProps.generated.d.ts +1 -1
- package/dist/build-components/OnboardFooter/OnboardFooterProps.generated.d.ts +1 -1
- package/dist/build-components/OnboardSubtitle/OnboardSubtitleProps.generated.d.ts +1 -1
- package/dist/build-components/OnboardTitle/OnboardTitleProps.generated.d.ts +1 -1
- package/dist/build-components/PaywallCloseButton/PaywallCloseButtonProps.generated.d.ts +1 -1
- package/dist/build-components/PaywallFooter/PaywallFooter.d.ts +5 -0
- package/dist/build-components/PaywallFooter/PaywallFooterProps.generated.d.ts +68 -0
- package/dist/build-components/PriceTag/PriceTagProps.generated.d.ts +1 -1
- package/dist/build-components/Pricing/PricingProps.generated.d.ts +1 -1
- package/dist/build-components/Promo/PromoProps.generated.d.ts +1 -1
- package/dist/build-components/Text/TextProps.generated.d.ts +1 -1
- package/dist/build-components/index.d.ts +2 -1
- package/dist/build-components/patterns.generated.d.ts +516 -13
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.esm.js.map +1 -1
- package/dist/index.web.cjs.js +4 -4
- package/dist/index.web.cjs.js.map +1 -1
- package/dist/index.web.esm.js +4 -4
- package/dist/index.web.esm.js.map +1 -1
- package/dist/modals/IconPickerModal.d.ts +1 -1
- package/dist/styles.css +1 -1
- package/dist/types/PreviewConfig.d.ts +1 -1
- package/package.json +2 -2
- package/src/RenderPage.tsx +5 -2
- package/src/assets/meta.json +1 -1
- package/src/assets/prompt-scheme-onboard.generated.ts +1 -1
- package/src/assets/prompt-scheme-paywall.generated.ts +1 -1
- package/src/assets/samples/paywall-1.json +19 -2
- package/src/assets/samples/vpn-onboard-1.json +3 -3
- package/src/assets/samples/vpn-onboard-2.json +3 -3
- package/src/assets/samples/vpn-onboard-3.json +3 -3
- package/src/assets/samples/vpn-onboard-4.json +3 -3
- package/src/assets/samples/vpn-onboard-5.json +3 -3
- package/src/assets/samples/vpn-onboard-6.json +3 -3
- package/src/assets/samples/vpn-onboard-7.json +3 -3
- package/src/attributes-editor/AttributesEditorFields.tsx +1 -1
- package/src/attributes-editor/FallbackLocalizationField.tsx +725 -250
- package/src/build-components/BIcon/BIcon.tsx +1 -1
- package/src/build-components/BIcon/BIconProps.generated.ts +1 -1
- package/src/build-components/CountDown/CountDownProps.generated.ts +1 -1
- package/src/build-components/OnboardButton/OnboardButton.tsx +1 -1
- package/src/build-components/OnboardButton/pattern.json +1 -1
- package/src/build-components/OnboardFooter/OnboardFooter.tsx +29 -20
- package/src/build-components/OnboardFooter/OnboardFooterProps.generated.ts +1 -1
- package/src/build-components/OnboardFooter/pattern.json +2 -1
- package/src/build-components/OnboardProvider/pattern.json +1 -1
- package/src/build-components/OnboardSubtitle/OnboardSubtitleProps.generated.ts +1 -1
- package/src/build-components/OnboardTitle/OnboardTitleProps.generated.ts +1 -1
- package/src/build-components/PaywallCloseButton/PaywallCloseButton.tsx +1 -1
- package/src/build-components/PaywallCloseButton/PaywallCloseButtonProps.generated.ts +1 -1
- package/src/build-components/PaywallFooter/PaywallFooter.tsx +242 -0
- package/src/build-components/PaywallFooter/PaywallFooterProps.generated.ts +85 -0
- package/src/build-components/PaywallFooter/pattern.json +86 -0
- package/src/build-components/PriceTag/PriceTagProps.generated.ts +1 -1
- package/src/build-components/Pricing/PricingProps.generated.ts +1 -1
- package/src/build-components/Promo/PromoProps.generated.ts +1 -1
- package/src/build-components/RenderNode.generated.tsx +5 -0
- package/src/build-components/Text/Text.tsx +5 -4
- package/src/build-components/Text/TextProps.generated.ts +1 -1
- package/src/build-components/Text/pattern.json +2 -1
- package/src/build-components/index.ts +5 -0
- package/src/build-components/patterns.generated.ts +532 -13
- package/src/components/BottomBar.tsx +1 -1
- package/src/components/DeviceNavigationBar.tsx +2 -2
- package/src/hooks/useLocalize.ts +11 -1
- package/src/hooks/useSafeAreaViewStyle.ts +1 -11
- package/src/mockOS/managers/mockPermissionManager.ts +5 -3
- package/src/mockOS/managers/navigationManager.ts +6 -4
- package/src/modals/IconPickerModal.tsx +1 -1
- package/src/modals/InspectModal.tsx +22 -24
- package/src/styles/base/_global.scss +1 -1
- package/src/types/PreviewConfig.ts +24 -6
- package/src/utils/extractViewStyle/extractViewStyle.ts +0 -1
- package/src/utils/useMergedStyle.ts +1 -1
- package/dist/build-components/index.generated.d.ts +0 -38
- package/dist/types/Icons.generated.d.ts +0 -2
- package/src/build-components/index.generated.ts +0 -184
- package/src/types/Icons.generated.ts +0 -244
|
@@ -37,6 +37,7 @@ import type { OnboardSubtitleComponentProps } from './OnboardSubtitle/OnboardSub
|
|
|
37
37
|
import type { OnboardTitleComponentProps } from './OnboardTitle/OnboardTitleProps.generated';
|
|
38
38
|
import type { PaywallBackgroundComponentProps } from './PaywallBackground/PaywallBackgroundProps.generated';
|
|
39
39
|
import type { PaywallCloseButtonComponentProps } from './PaywallCloseButton/PaywallCloseButtonProps.generated';
|
|
40
|
+
import type { PaywallFooterComponentProps } from './PaywallFooter/PaywallFooterProps.generated';
|
|
40
41
|
import type { PaywallOptionsComponentProps } from './PaywallOptions/PaywallOptionsProps.generated';
|
|
41
42
|
import type { PaywallProviderComponentProps } from './PaywallProvider/PaywallProviderProps.generated';
|
|
42
43
|
import type { PaywallSubscribeButtonComponentProps } from './PaywallSubscribeButton/PaywallSubscribeButtonProps.generated';
|
|
@@ -72,6 +73,7 @@ import OnboardSubtitle from './OnboardSubtitle/OnboardSubtitle';
|
|
|
72
73
|
import OnboardTitle from './OnboardTitle/OnboardTitle';
|
|
73
74
|
import PaywallBackground from './PaywallBackground/PaywallBackground';
|
|
74
75
|
import { PaywallCloseButton } from './PaywallCloseButton/PaywallCloseButton';
|
|
76
|
+
import PaywallFooter from './PaywallFooter/PaywallFooter';
|
|
75
77
|
import PaywallOptions from './PaywallOptions/PaywallOptions';
|
|
76
78
|
import PaywallProvider from './PaywallProvider/PaywallProvider';
|
|
77
79
|
import PaywallSubscribeButton from './PaywallSubscribeButton/PaywallSubscribeButton';
|
|
@@ -109,6 +111,7 @@ type BuilderNode =
|
|
|
109
111
|
| (OnboardTitleComponentProps['node'] & { type: 'OnboardTitle' })
|
|
110
112
|
| (PaywallBackgroundComponentProps['node'] & { type: 'PaywallBackground' })
|
|
111
113
|
| (PaywallCloseButtonComponentProps['node'] & { type: 'PaywallCloseButton' })
|
|
114
|
+
| (PaywallFooterComponentProps['node'] & { type: 'PaywallFooter' })
|
|
112
115
|
| (PaywallOptionsComponentProps['node'] & { type: 'PaywallOptions' })
|
|
113
116
|
| (PaywallProviderComponentProps['node'] & { type: 'PaywallProvider' })
|
|
114
117
|
| (PaywallSubscribeButtonComponentProps['node'] & {
|
|
@@ -201,6 +204,8 @@ function RenderNode({ node }: { node: Node }) {
|
|
|
201
204
|
return <PaywallBackground node={normalizedNode} />;
|
|
202
205
|
case 'PaywallCloseButton':
|
|
203
206
|
return <PaywallCloseButton node={normalizedNode} />;
|
|
207
|
+
case 'PaywallFooter':
|
|
208
|
+
return <PaywallFooter node={normalizedNode} />;
|
|
204
209
|
case 'PaywallOptions':
|
|
205
210
|
return <PaywallOptions node={normalizedNode} />;
|
|
206
211
|
case 'PaywallProvider':
|
|
@@ -44,9 +44,10 @@ export function Text({ node }: TextComponentProps) {
|
|
|
44
44
|
| undefined;
|
|
45
45
|
const adjustsFontSizeToFit = styleBag?.adjustsFontSizeToFit ?? false;
|
|
46
46
|
const showEllipsis = styleBag?.showEllipsis ?? false;
|
|
47
|
+
const numberOfLines = (node.attributes as any)?.numberOfLines;
|
|
47
48
|
|
|
48
49
|
useLayoutEffect(() => {
|
|
49
|
-
if (!adjustsFontSizeToFit) {
|
|
50
|
+
if (numberOfLines !== 1 || !adjustsFontSizeToFit) {
|
|
50
51
|
setAutoFontSizePx(null);
|
|
51
52
|
return;
|
|
52
53
|
}
|
|
@@ -95,12 +96,12 @@ export function Text({ node }: TextComponentProps) {
|
|
|
95
96
|
ro?.disconnect();
|
|
96
97
|
window.removeEventListener('resize', compute);
|
|
97
98
|
};
|
|
98
|
-
}, [adjustsFontSizeToFit, localizedText]);
|
|
99
|
+
}, [adjustsFontSizeToFit, localizedText, numberOfLines]);
|
|
99
100
|
|
|
100
101
|
const extraStyle = useMemo((): React.CSSProperties | undefined => {
|
|
101
102
|
let next: React.CSSProperties | undefined;
|
|
102
103
|
|
|
103
|
-
if (
|
|
104
|
+
if (numberOfLines == 1 && adjustsFontSizeToFit) {
|
|
104
105
|
next = {
|
|
105
106
|
...(next ?? {}),
|
|
106
107
|
overflow: 'hidden',
|
|
@@ -117,7 +118,7 @@ export function Text({ node }: TextComponentProps) {
|
|
|
117
118
|
}
|
|
118
119
|
|
|
119
120
|
return next;
|
|
120
|
-
}, [showEllipsis, autoFontSizePx]);
|
|
121
|
+
}, [showEllipsis, autoFontSizePx, numberOfLines, adjustsFontSizeToFit]);
|
|
121
122
|
|
|
122
123
|
const style = useMergedStyle(
|
|
123
124
|
useMergedStyle(textStyle, extraStyle),
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"extends": "View",
|
|
9
9
|
"attributes": {
|
|
10
10
|
"adjustsFontSizeToFit": "boolean",
|
|
11
|
-
"
|
|
11
|
+
"numberOfLines": "number",
|
|
12
12
|
"translateCounter": "number",
|
|
13
13
|
"styles": {
|
|
14
14
|
"color": "color",
|
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
},
|
|
21
21
|
"defaults": {
|
|
22
22
|
"translateCounter": 1,
|
|
23
|
+
"numberOfLines": 1,
|
|
23
24
|
"styles": {
|
|
24
25
|
"color": "THEME_COLORS.TEXT",
|
|
25
26
|
"fontSize": "16@fs",
|
|
@@ -29,6 +29,7 @@ export const allcomponentNames = [
|
|
|
29
29
|
'OnboardTitle',
|
|
30
30
|
'PaywallBackground',
|
|
31
31
|
'PaywallCloseButton',
|
|
32
|
+
'PaywallFooter',
|
|
32
33
|
'PaywallOptions',
|
|
33
34
|
'PaywallProvider',
|
|
34
35
|
'PaywallSubscribeButton',
|
|
@@ -138,6 +139,10 @@ export type {
|
|
|
138
139
|
PaywallCloseButtonPropsGenerated,
|
|
139
140
|
PaywallCloseButtonComponentProps,
|
|
140
141
|
} from './PaywallCloseButton/PaywallCloseButtonProps.generated';
|
|
142
|
+
export type {
|
|
143
|
+
PaywallFooterPropsGenerated,
|
|
144
|
+
PaywallFooterComponentProps,
|
|
145
|
+
} from './PaywallFooter/PaywallFooterProps.generated';
|
|
141
146
|
export type {
|
|
142
147
|
PaywallOptionsPropsGenerated,
|
|
143
148
|
PaywallOptionsComponentProps,
|