react-native-divkit 1.2.0 → 1.2.1
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Outer.d.ts","sourceRoot":"","sources":["../../../src/components/utilities/Outer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAW,MAAM,OAAO,CAAC;AAClD,OAAO,EAAmB,SAAS,EAAc,MAAM,cAAc,CAAC;AACtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"Outer.d.ts","sourceRoot":"","sources":["../../../src/components/utilities/Outer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAW,MAAM,OAAO,CAAC;AAClD,OAAO,EAAmB,SAAS,EAAc,MAAM,cAAc,CAAC;AACtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AA+BpD,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW;IAC3D,gBAAgB,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACtC,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;CACrB;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,EAAE,EACvD,gBAAgB,EAChB,QAAQ,EACR,KAAK,EAAE,WAAW,EACrB,EAAE,UAAU,CAAC,CAAC,CAAC,4BAkOf"}
|
|
@@ -5,6 +5,24 @@ import { useActionHandler, useHasActions } from '../../hooks/useAction';
|
|
|
5
5
|
import { useDivKitContext } from '../../context/DivKitContext';
|
|
6
6
|
import { useLayoutParams } from '../../context/LayoutParamsContext';
|
|
7
7
|
import { Background } from './Background';
|
|
8
|
+
function resolveAlignSelf(alignment, dir) {
|
|
9
|
+
if (!alignment)
|
|
10
|
+
return undefined;
|
|
11
|
+
switch (alignment) {
|
|
12
|
+
case 'center':
|
|
13
|
+
return 'center';
|
|
14
|
+
case 'left':
|
|
15
|
+
return dir === 'rtl' ? 'flex-end' : 'flex-start';
|
|
16
|
+
case 'right':
|
|
17
|
+
return dir === 'rtl' ? 'flex-start' : 'flex-end';
|
|
18
|
+
case 'start':
|
|
19
|
+
return 'flex-start';
|
|
20
|
+
case 'end':
|
|
21
|
+
return 'flex-end';
|
|
22
|
+
default:
|
|
23
|
+
return undefined;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
8
26
|
/**
|
|
9
27
|
* Outer component - base wrapper for all DivKit components
|
|
10
28
|
* Handles visibility, sizing, padding, margins, background, borders, and actions
|
|
@@ -26,6 +44,8 @@ export function Outer({ componentContext, children, style: customStyle }) {
|
|
|
26
44
|
const border = useDerivedFromVarsSimple(json.border, variables || new Map());
|
|
27
45
|
const width = useDerivedFromVarsSimple(json.width, variables || new Map());
|
|
28
46
|
const height = useDerivedFromVarsSimple(json.height, variables || new Map());
|
|
47
|
+
const alignmentHorizontal = useDerivedFromVarsSimple(json.alignment_horizontal, variables || new Map());
|
|
48
|
+
const alignmentVertical = useDerivedFromVarsSimple(json.alignment_vertical, variables || new Map());
|
|
29
49
|
// Actions - use type assertion for now (will be refined in component implementations)
|
|
30
50
|
const jsonAny = json;
|
|
31
51
|
const actions = jsonAny.actions || (jsonAny.action ? [jsonAny.action] : []);
|
|
@@ -61,7 +81,8 @@ export function Outer({ componentContext, children, style: customStyle }) {
|
|
|
61
81
|
}
|
|
62
82
|
}
|
|
63
83
|
else if (widthVal.type === 'wrap_content') {
|
|
64
|
-
|
|
84
|
+
const hAlign = resolveAlignSelf(alignmentHorizontal, direction);
|
|
85
|
+
styles.alignSelf = hAlign || 'flex-start';
|
|
65
86
|
}
|
|
66
87
|
}
|
|
67
88
|
else {
|
|
@@ -203,7 +224,7 @@ export function Outer({ componentContext, children, style: customStyle }) {
|
|
|
203
224
|
}
|
|
204
225
|
}
|
|
205
226
|
return styles;
|
|
206
|
-
}, [visibility, alpha, width, height, paddings, margins, background, border, direction, layoutParams]);
|
|
227
|
+
}, [visibility, alpha, width, height, paddings, margins, background, border, direction, layoutParams, alignmentHorizontal, alignmentVertical]);
|
|
207
228
|
const finalStyle = useMemo(() => {
|
|
208
229
|
return StyleSheet.flatten([containerStyle, customStyle]);
|
|
209
230
|
}, [containerStyle, customStyle]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Outer.js","sourceRoot":"","sources":["../../../src/components/utilities/Outer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAa,OAAO,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAa,UAAU,EAAE,MAAM,cAAc,CAAC;AAMtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Outer.js","sourceRoot":"","sources":["../../../src/components/utilities/Outer.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -11,6 +11,27 @@ import { useDivKitContext } from '../../context/DivKitContext';
|
|
|
11
11
|
import { useLayoutParams } from '../../context/LayoutParamsContext';
|
|
12
12
|
import { Background } from './Background';
|
|
13
13
|
|
|
14
|
+
function resolveAlignSelf(
|
|
15
|
+
alignment: string | undefined,
|
|
16
|
+
dir: string
|
|
17
|
+
): 'flex-start' | 'center' | 'flex-end' | undefined {
|
|
18
|
+
if (!alignment) return undefined;
|
|
19
|
+
switch (alignment) {
|
|
20
|
+
case 'center':
|
|
21
|
+
return 'center';
|
|
22
|
+
case 'left':
|
|
23
|
+
return dir === 'rtl' ? 'flex-end' : 'flex-start';
|
|
24
|
+
case 'right':
|
|
25
|
+
return dir === 'rtl' ? 'flex-start' : 'flex-end';
|
|
26
|
+
case 'start':
|
|
27
|
+
return 'flex-start';
|
|
28
|
+
case 'end':
|
|
29
|
+
return 'flex-end';
|
|
30
|
+
default:
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
14
35
|
export interface OuterProps<T extends DivBaseData = DivBaseData> {
|
|
15
36
|
componentContext: ComponentContext<T>;
|
|
16
37
|
children: ReactNode;
|
|
@@ -44,6 +65,8 @@ export function Outer<T extends DivBaseData = DivBaseData>({
|
|
|
44
65
|
const border = useDerivedFromVarsSimple(json.border, variables || new Map());
|
|
45
66
|
const width = useDerivedFromVarsSimple(json.width, variables || new Map());
|
|
46
67
|
const height = useDerivedFromVarsSimple(json.height, variables || new Map());
|
|
68
|
+
const alignmentHorizontal = useDerivedFromVarsSimple(json.alignment_horizontal, variables || new Map());
|
|
69
|
+
const alignmentVertical = useDerivedFromVarsSimple(json.alignment_vertical, variables || new Map());
|
|
47
70
|
|
|
48
71
|
// Actions - use type assertion for now (will be refined in component implementations)
|
|
49
72
|
const jsonAny = json as any;
|
|
@@ -82,7 +105,8 @@ export function Outer<T extends DivBaseData = DivBaseData>({
|
|
|
82
105
|
styles.flexShrink = 1;
|
|
83
106
|
}
|
|
84
107
|
} else if (widthVal.type === 'wrap_content') {
|
|
85
|
-
|
|
108
|
+
const hAlign = resolveAlignSelf(alignmentHorizontal as string | undefined, direction);
|
|
109
|
+
styles.alignSelf = hAlign || 'flex-start';
|
|
86
110
|
}
|
|
87
111
|
} else {
|
|
88
112
|
// Default: match_parent
|
|
@@ -217,7 +241,7 @@ export function Outer<T extends DivBaseData = DivBaseData>({
|
|
|
217
241
|
}
|
|
218
242
|
|
|
219
243
|
return styles;
|
|
220
|
-
}, [visibility, alpha, width, height, paddings, margins, background, border, direction, layoutParams]);
|
|
244
|
+
}, [visibility, alpha, width, height, paddings, margins, background, border, direction, layoutParams, alignmentHorizontal, alignmentVertical]);
|
|
221
245
|
|
|
222
246
|
const finalStyle = useMemo(() => {
|
|
223
247
|
return StyleSheet.flatten([containerStyle, customStyle]);
|