@tamagui/web 1.129.19 → 1.130.0
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/cjs/createComponent.cjs +43 -32
- package/dist/cjs/createComponent.js +36 -23
- package/dist/cjs/createComponent.js.map +1 -1
- package/dist/cjs/createComponent.native.js +30 -21
- package/dist/cjs/createComponent.native.js.map +2 -2
- package/dist/cjs/helpers/getSplitStyles.cjs +3 -2
- package/dist/cjs/helpers/getSplitStyles.js +4 -2
- package/dist/cjs/helpers/getSplitStyles.js.map +1 -1
- package/dist/cjs/helpers/getSplitStyles.native.js +2 -0
- package/dist/cjs/helpers/getSplitStyles.native.js.map +2 -2
- package/dist/cjs/helpers/mergeProps.cjs +13 -9
- package/dist/cjs/helpers/mergeProps.js +17 -9
- package/dist/cjs/helpers/mergeProps.js.map +1 -1
- package/dist/cjs/helpers/mergeProps.native.js +20 -9
- package/dist/cjs/helpers/mergeProps.native.js.map +2 -2
- package/dist/cjs/hooks/useComponentState.cjs +1 -1
- package/dist/cjs/hooks/useComponentState.js +1 -1
- package/dist/cjs/hooks/useComponentState.js.map +1 -1
- package/dist/cjs/hooks/useComponentState.native.js +1 -1
- package/dist/cjs/hooks/useComponentState.native.js.map +2 -2
- package/dist/cjs/hooks/useProps.cjs +2 -2
- package/dist/cjs/hooks/useProps.js +7 -2
- package/dist/cjs/hooks/useProps.js.map +1 -1
- package/dist/cjs/hooks/useProps.native.js +3 -3
- package/dist/cjs/hooks/useProps.native.js.map +1 -1
- package/dist/cjs/hooks/useThemeState.cjs +2 -1
- package/dist/cjs/hooks/useThemeState.js +3 -1
- package/dist/cjs/hooks/useThemeState.js.map +1 -1
- package/dist/cjs/hooks/useThemeState.native.js +6 -1
- package/dist/cjs/hooks/useThemeState.native.js.map +2 -2
- package/dist/cjs/views/Theme.cjs +10 -7
- package/dist/cjs/views/Theme.js +21 -7
- package/dist/cjs/views/Theme.js.map +1 -1
- package/dist/cjs/views/Theme.native.js +7 -7
- package/dist/cjs/views/Theme.native.js.map +2 -2
- package/dist/esm/createComponent.js +36 -23
- package/dist/esm/createComponent.js.map +1 -1
- package/dist/esm/createComponent.mjs +43 -32
- package/dist/esm/createComponent.mjs.map +1 -1
- package/dist/esm/createComponent.native.js +42 -32
- package/dist/esm/createComponent.native.js.map +1 -1
- package/dist/esm/helpers/getSplitStyles.js +4 -2
- package/dist/esm/helpers/getSplitStyles.js.map +1 -1
- package/dist/esm/helpers/getSplitStyles.mjs +3 -2
- package/dist/esm/helpers/getSplitStyles.mjs.map +1 -1
- package/dist/esm/helpers/getSplitStyles.native.js +1 -0
- package/dist/esm/helpers/getSplitStyles.native.js.map +1 -1
- package/dist/esm/helpers/mergeProps.js +17 -9
- package/dist/esm/helpers/mergeProps.js.map +1 -1
- package/dist/esm/helpers/mergeProps.mjs +13 -9
- package/dist/esm/helpers/mergeProps.mjs.map +1 -1
- package/dist/esm/helpers/mergeProps.native.js +18 -9
- package/dist/esm/helpers/mergeProps.native.js.map +1 -1
- package/dist/esm/hooks/useComponentState.js +1 -1
- package/dist/esm/hooks/useComponentState.js.map +1 -1
- package/dist/esm/hooks/useComponentState.mjs +1 -1
- package/dist/esm/hooks/useComponentState.mjs.map +1 -1
- package/dist/esm/hooks/useComponentState.native.js +1 -1
- package/dist/esm/hooks/useProps.js +7 -2
- package/dist/esm/hooks/useProps.js.map +1 -1
- package/dist/esm/hooks/useProps.mjs +2 -2
- package/dist/esm/hooks/useProps.mjs.map +1 -1
- package/dist/esm/hooks/useProps.native.js +2 -2
- package/dist/esm/hooks/useProps.native.js.map +1 -1
- package/dist/esm/hooks/useThemeState.js +3 -1
- package/dist/esm/hooks/useThemeState.js.map +1 -1
- package/dist/esm/hooks/useThemeState.mjs +2 -1
- package/dist/esm/hooks/useThemeState.mjs.map +1 -1
- package/dist/esm/hooks/useThemeState.native.js +2 -1
- package/dist/esm/hooks/useThemeState.native.js.map +1 -1
- package/dist/esm/views/Theme.js +21 -7
- package/dist/esm/views/Theme.js.map +1 -1
- package/dist/esm/views/Theme.mjs +10 -7
- package/dist/esm/views/Theme.mjs.map +1 -1
- package/dist/esm/views/Theme.native.js +10 -6
- package/dist/esm/views/Theme.native.js.map +1 -1
- package/package.json +12 -12
- package/src/createComponent.tsx +135 -106
- package/src/helpers/getSplitStyles.tsx +9 -3
- package/src/helpers/mergeProps.ts +53 -4
- package/src/hooks/useComponentState.ts +1 -0
- package/src/hooks/useProps.tsx +7 -2
- package/src/hooks/useThemeState.ts +7 -2
- package/src/setupHooks.ts +1 -1
- package/src/types.tsx +10 -1
- package/src/views/Theme.tsx +40 -21
- package/types/createComponent.d.ts.map +1 -1
- package/types/helpers/getSplitStyles.d.ts +1 -1
- package/types/helpers/getSplitStyles.d.ts.map +1 -1
- package/types/helpers/mergeProps.d.ts +19 -0
- package/types/helpers/mergeProps.d.ts.map +1 -1
- package/types/hooks/useProps.d.ts.map +1 -1
- package/types/hooks/useThemeState.d.ts.map +1 -1
- package/types/setupHooks.d.ts +1 -1
- package/types/setupHooks.d.ts.map +1 -1
- package/types/types.d.ts +7 -1
- package/types/types.d.ts.map +1 -1
- package/types/views/Theme.d.ts +4 -2
- package/types/views/Theme.d.ts.map +1 -1
|
@@ -177,7 +177,7 @@ function createComponent(staticConfig) {
|
|
|
177
177
|
pendingState && (setStateShallow(pendingState), NextState.set(stateRef, void 0));
|
|
178
178
|
});
|
|
179
179
|
const allGroupContexts = useMemo(() => {
|
|
180
|
-
if (!groupName)
|
|
180
|
+
if (!groupName || props.passThrough)
|
|
181
181
|
return groupContextParent;
|
|
182
182
|
stateRef.current.group?.listeners.clear();
|
|
183
183
|
const listeners = /* @__PURE__ */ new Set();
|
|
@@ -273,15 +273,15 @@ function createComponent(staticConfig) {
|
|
|
273
273
|
startedUnhydrated,
|
|
274
274
|
debugProp
|
|
275
275
|
), groupContext = groupName && allGroupContexts?.[groupName] || null;
|
|
276
|
-
if (groupContext) {
|
|
276
|
+
if (splitStyles && groupContext) {
|
|
277
277
|
const groupState = groupContext?.state;
|
|
278
278
|
groupState && groupState.layout === void 0 && (splitStyles.style?.width || splitStyles.style?.height) && (groupState.layout = {
|
|
279
279
|
width: fromPx(splitStyles.style.width),
|
|
280
280
|
height: fromPx(splitStyles.style.height)
|
|
281
281
|
});
|
|
282
282
|
}
|
|
283
|
-
if ((hasAnimationProp || groupName) && animationDriver?.avoidReRenders) {
|
|
284
|
-
const
|
|
283
|
+
if (splitStyles && (!hasAnimationProp || groupName) && animationDriver?.avoidReRenders) {
|
|
284
|
+
const useStyleListener = stateRef.current.useStyleListener, ogSetStateShallow = setStateShallow;
|
|
285
285
|
stateRef.current.setStateShallow = (nextOrGetNext) => {
|
|
286
286
|
const prev = NextState.get(stateRef) || state, next = typeof nextOrGetNext == "function" ? nextOrGetNext(prev) : nextOrGetNext;
|
|
287
287
|
if (next === prev || isEqualShallow(prev, next))
|
|
@@ -306,7 +306,7 @@ function createComponent(staticConfig) {
|
|
|
306
306
|
groupContext,
|
|
307
307
|
stateRef.current.group || null,
|
|
308
308
|
childrenGroupState
|
|
309
|
-
), !hasAnimationProp || !
|
|
309
|
+
), !hasAnimationProp || !useStyleListener)
|
|
310
310
|
return;
|
|
311
311
|
const nextStyles = getSplitStyles(
|
|
312
312
|
props,
|
|
@@ -322,23 +322,25 @@ function createComponent(staticConfig) {
|
|
|
322
322
|
startedUnhydrated,
|
|
323
323
|
debugProp
|
|
324
324
|
);
|
|
325
|
-
|
|
325
|
+
useStyleListener(nextStyles?.style || {});
|
|
326
326
|
} else
|
|
327
327
|
process.env.NODE_ENV === "development" && debugProp && debugProp !== "profile" && console.info("[\u{1F40C}] re-render", { canAvoidReRender, next }), ogSetStateShallow(next);
|
|
328
328
|
}, setStateShallow = (state2) => {
|
|
329
329
|
stateRef.current.setStateShallow?.(state2);
|
|
330
330
|
};
|
|
331
331
|
}
|
|
332
|
-
process.env.NODE_ENV === "development" && time && time`split-styles`, props.group && props.untilMeasured === "hide" && !stateRef.current.hasMeasured && (splitStyles.style ||= {}, splitStyles.style.opacity = 0), splitStyles.dynamicThemeAccess != null && (stateRef.current.isListeningToTheme = splitStyles.dynamicThemeAccess);
|
|
333
|
-
const hasRuntimeMediaKeys = splitStyles
|
|
332
|
+
process.env.NODE_ENV === "development" && time && time`split-styles`, splitStyles && (props.group && props.untilMeasured === "hide" && !stateRef.current.hasMeasured && (splitStyles.style ||= {}, splitStyles.style.opacity = 0), splitStyles.dynamicThemeAccess != null && (stateRef.current.isListeningToTheme = splitStyles.dynamicThemeAccess));
|
|
333
|
+
const hasRuntimeMediaKeys = splitStyles?.hasMedia && splitStyles.hasMedia !== !0, shouldListenForMedia = didGetVariableValue() || hasRuntimeMediaKeys || noClass && splitStyles?.hasMedia === !0, mediaListeningKeys = hasRuntimeMediaKeys ? splitStyles.hasMedia : null;
|
|
334
334
|
process.env.NODE_ENV === "development" && debugProp === "verbose" && console.info("useMedia() createComponent", shouldListenForMedia, mediaListeningKeys), setMediaShouldUpdate(componentContext, shouldListenForMedia, mediaListeningKeys);
|
|
335
335
|
const {
|
|
336
336
|
viewProps: viewPropsIn,
|
|
337
337
|
pseudos,
|
|
338
338
|
style: splitStylesStyle,
|
|
339
339
|
classNames,
|
|
340
|
-
space
|
|
341
|
-
|
|
340
|
+
space,
|
|
341
|
+
pseudoGroups,
|
|
342
|
+
mediaGroups
|
|
343
|
+
} = splitStyles || {}, propsWithAnimation = props, {
|
|
342
344
|
asChild,
|
|
343
345
|
children,
|
|
344
346
|
themeShallow,
|
|
@@ -362,7 +364,7 @@ function createComponent(staticConfig) {
|
|
|
362
364
|
onClick,
|
|
363
365
|
theme: _themeProp,
|
|
364
366
|
...nonTamaguiProps
|
|
365
|
-
} = viewPropsIn;
|
|
367
|
+
} = viewPropsIn || {};
|
|
366
368
|
let viewProps = nonTamaguiProps;
|
|
367
369
|
!isTaggable && props.forceStyle && (viewProps.forceStyle = props.forceStyle), isHOC && _themeProp && (viewProps.theme = _themeProp), tagProp && elementType.acceptTagProp && (viewProps.tag = tagProp);
|
|
368
370
|
let animationStyles;
|
|
@@ -395,7 +397,7 @@ function createComponent(staticConfig) {
|
|
|
395
397
|
`You set the untilMeasured prop without setting group. This doesn't work, be sure to set untilMeasured on the parent that sets group, not the children that use the $group- prop.
|
|
396
398
|
|
|
397
399
|
If you meant to do this, you can disable this warning - either change untilMeasured and group at the same time, or do group={conditional ? 'name' : undefined}`
|
|
398
|
-
), process.env.NODE_ENV === "development" && time && time`destructure`, groupContext && (nonTamaguiProps.onLayout = composeEventHandlers(
|
|
400
|
+
), process.env.NODE_ENV === "development" && time && time`destructure`, splitStyles && groupContext && (nonTamaguiProps.onLayout = composeEventHandlers(
|
|
399
401
|
nonTamaguiProps.onLayout,
|
|
400
402
|
(e) => {
|
|
401
403
|
const layout = e.nativeEvent.layout;
|
|
@@ -420,21 +422,22 @@ If you meant to do this, you can disable this warning - either change untilMeasu
|
|
|
420
422
|
props
|
|
421
423
|
);
|
|
422
424
|
}), process.env.NODE_ENV === "development" && time && time`events-hooks`;
|
|
423
|
-
const
|
|
425
|
+
const unPress = () => {
|
|
424
426
|
setStateShallow({ press: !1, pressIn: !1 });
|
|
425
427
|
};
|
|
426
428
|
process.env.NODE_ENV === "development" && isWeb && useIsomorphicLayoutEffect(() => {
|
|
427
429
|
if (debugProp === "verbose") {
|
|
428
|
-
|
|
430
|
+
let cssStyleDeclarationToObject = function(style) {
|
|
429
431
|
const styleObject = {};
|
|
430
432
|
for (let i = 0; i < style.length; i++) {
|
|
431
433
|
let prop = style[i];
|
|
432
434
|
styleObject[prop] = style.getPropertyValue(prop);
|
|
433
435
|
}
|
|
434
436
|
return styleObject;
|
|
435
|
-
}
|
|
437
|
+
};
|
|
438
|
+
const computed = stateRef.current.host ? cssStyleDeclarationToObject(
|
|
436
439
|
getComputedStyle(stateRef.current.host)
|
|
437
|
-
);
|
|
440
|
+
) : {};
|
|
438
441
|
console.groupCollapsed(`Rendered > (opacity: ${computed.opacity})`), console.warn(stateRef.current.host), console.warn(computed), console.groupEnd();
|
|
439
442
|
}
|
|
440
443
|
}), useIsomorphicLayoutEffect(() => {
|
|
@@ -525,7 +528,7 @@ If you meant to do this, you can disable this warning - either change untilMeasu
|
|
|
525
528
|
events && !isReactNative && Object.assign(viewProps, getWebEvents(events)), process.env.NODE_ENV === "development" && time && time`events`, process.env.NODE_ENV === "development" && debugProp === "verbose" && log("events", { events, attachHover, attachPress }), hooks.useEvents?.(viewProps, events, splitStyles, setStateShallow, staticConfig);
|
|
526
529
|
const direction = props.spaceDirection || "both";
|
|
527
530
|
process.env.NODE_ENV === "development" && time && time`hooks`;
|
|
528
|
-
let content = !children || asChild ? children : spacedChildren({
|
|
531
|
+
let content = !children || asChild || !splitStyles ? children : spacedChildren({
|
|
529
532
|
separator,
|
|
530
533
|
children,
|
|
531
534
|
space,
|
|
@@ -554,8 +557,15 @@ If you meant to do this, you can disable this warning - either change untilMeasu
|
|
|
554
557
|
}
|
|
555
558
|
process.env.NODE_ENV === "development" && time && time`spaced-as-child`;
|
|
556
559
|
let useChildrenResult;
|
|
557
|
-
hooks.useChildren && (useChildrenResult = hooks.useChildren(elementType, content, viewProps)), process.env.NODE_ENV === "development" && time && time`use-children`,
|
|
558
|
-
|
|
560
|
+
hooks.useChildren && (useChildrenResult = hooks.useChildren(elementType, content, viewProps)), process.env.NODE_ENV === "development" && time && time`use-children`, splitStyles || (elementType = "span", content = propsIn.children, viewProps = {
|
|
561
|
+
style: {
|
|
562
|
+
display: "contents"
|
|
563
|
+
}
|
|
564
|
+
}), useChildrenResult ? content = useChildrenResult : content = React.createElement(elementType, viewProps, content);
|
|
565
|
+
const ResetPresence = config?.animations?.ResetPresence, needsReset = !!// not when passing down to child
|
|
566
|
+
(!asChild && // not when passThrough
|
|
567
|
+
splitStyles && // not when HOC
|
|
568
|
+
!isHOC && ResetPresence && willBeAnimated && (hasEnterStyle || presenceState)), hasEverReset = stateRef.current.hasEverResetPresence;
|
|
559
569
|
if (needsReset && !hasEverReset && (stateRef.current.hasEverResetPresence = !0), (needsReset || hasEverReset) && ResetPresence && (content = /* @__PURE__ */ jsx(ResetPresence, { disabled: !needsReset, children: content })), process.env.NODE_ENV === "development" && time && time`create-element`, "focusWithinStyle" in propsIn && (content = /* @__PURE__ */ jsx(
|
|
560
570
|
ComponentContext.Provider,
|
|
561
571
|
{
|
|
@@ -563,11 +573,11 @@ If you meant to do this, you can disable this warning - either change untilMeasu
|
|
|
563
573
|
setParentFocusState: setStateShallow,
|
|
564
574
|
children: content
|
|
565
575
|
}
|
|
566
|
-
)), "group" in props && (content = /* @__PURE__ */ jsx(GroupContext.Provider, { value: allGroupContexts, children: content })), process.env.NODE_ENV === "development" && time && time`group-context`, content = disableTheme ? content : getThemedChildren(themeState, content, themeStateProps, !1, stateRef), process.env.NODE_ENV === "development" && time && time`themed-children`, isReactNative && !asChild && (content = /* @__PURE__ */ jsx(
|
|
576
|
+
)), "group" in props && (content = /* @__PURE__ */ jsx(GroupContext.Provider, { value: allGroupContexts, children: content })), process.env.NODE_ENV === "development" && time && time`group-context`, content = disableTheme || !splitStyles ? content : getThemedChildren(themeState, content, themeStateProps, !1, stateRef), process.env.NODE_ENV === "development" && time && time`themed-children`, isReactNative && !asChild && (content = /* @__PURE__ */ jsx(
|
|
567
577
|
"span",
|
|
568
578
|
{
|
|
569
579
|
className: "_dsp_contents",
|
|
570
|
-
...isHydrated && events && getWebEvents(events),
|
|
580
|
+
...splitStyles && isHydrated && events && getWebEvents(events),
|
|
571
581
|
children: content
|
|
572
582
|
}
|
|
573
583
|
)), staticConfig.context) {
|
|
@@ -580,7 +590,10 @@ If you meant to do this, you can disable this warning - either change untilMeasu
|
|
|
580
590
|
content = /* @__PURE__ */ jsx(Provider, { ...contextValue, ...overriddenContextProps, children: content });
|
|
581
591
|
}
|
|
582
592
|
if (process.env.NODE_ENV === "development" && time && time`context-override`, startedUnhydrated) {
|
|
583
|
-
const styleTags = useMemo(() =>
|
|
593
|
+
const styleTags = useMemo(() => {
|
|
594
|
+
if (splitStyles)
|
|
595
|
+
return getStyleTags(Object.values(splitStyles.rulesToInsert));
|
|
596
|
+
}, []);
|
|
584
597
|
content = /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
585
598
|
content,
|
|
586
599
|
styleTags
|
|
@@ -659,7 +672,7 @@ If you meant to do this, you can disable this warning - either change untilMeasu
|
|
|
659
672
|
function styleable(Component2, options) {
|
|
660
673
|
let out = IS_REACT_19 && typeof Component2 == "function" && Component2.length === 1 || Component2.render?.length === 2 ? Component2 : React.forwardRef(Component2);
|
|
661
674
|
const extendedConfig = extendStyledConfig(options?.staticConfig);
|
|
662
|
-
return out = options?.disableTheme ? out : themeable(out, extendedConfig, !0), process.env.TAMAGUI_MEMOIZE_STYLEABLE && (out = React.memo(out)), out.staticConfig = extendedConfig, out.styleable = styleable, out;
|
|
675
|
+
return out = options?.disableTheme ? out : themeable(out, extendedConfig, !0), (extendedConfig.memo || process.env.TAMAGUI_MEMOIZE_STYLEABLE) && (out = React.memo(out)), out.staticConfig = extendedConfig, out.styleable = styleable, out;
|
|
663
676
|
}
|
|
664
677
|
return res.extractable = extractable, res.styleable = styleable, res;
|
|
665
678
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/createComponent.tsx"],
|
|
4
|
-
"mappings": "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",
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["componentName", "state", "Component"]
|
|
6
6
|
}
|
|
@@ -186,7 +186,7 @@ function createComponent(staticConfig) {
|
|
|
186
186
|
pendingState && (setStateShallow(pendingState), NextState.set(stateRef, void 0));
|
|
187
187
|
});
|
|
188
188
|
const allGroupContexts = useMemo(() => {
|
|
189
|
-
if (!groupName) return groupContextParent;
|
|
189
|
+
if (!groupName || props.passThrough) return groupContextParent;
|
|
190
190
|
stateRef.current.group?.listeners.clear();
|
|
191
191
|
const listeners = /* @__PURE__ */new Set();
|
|
192
192
|
return stateRef.current.group = {
|
|
@@ -293,15 +293,15 @@ function createComponent(staticConfig) {
|
|
|
293
293
|
process.env.NODE_ENV === "development" && time && time`split-styles-prepare`;
|
|
294
294
|
const splitStyles = useSplitStyles(props, staticConfig, theme, themeName, state, styleProps, null, componentContext, allGroupContexts, elementType, startedUnhydrated, debugProp),
|
|
295
295
|
groupContext = groupName && allGroupContexts?.[groupName] || null;
|
|
296
|
-
if (groupContext) {
|
|
296
|
+
if (splitStyles && groupContext) {
|
|
297
297
|
const groupState = groupContext?.state;
|
|
298
298
|
groupState && groupState.layout === void 0 && (splitStyles.style?.width || splitStyles.style?.height) && (groupState.layout = {
|
|
299
299
|
width: fromPx(splitStyles.style.width),
|
|
300
300
|
height: fromPx(splitStyles.style.height)
|
|
301
301
|
});
|
|
302
302
|
}
|
|
303
|
-
if ((hasAnimationProp || groupName) && animationDriver?.avoidReRenders) {
|
|
304
|
-
const
|
|
303
|
+
if (splitStyles && (!hasAnimationProp || groupName) && animationDriver?.avoidReRenders) {
|
|
304
|
+
const useStyleListener = stateRef.current.useStyleListener,
|
|
305
305
|
ogSetStateShallow = setStateShallow;
|
|
306
306
|
stateRef.current.setStateShallow = nextOrGetNext => {
|
|
307
307
|
const prev = NextState.get(stateRef) || state,
|
|
@@ -324,9 +324,9 @@ function createComponent(staticConfig) {
|
|
|
324
324
|
animation,
|
|
325
325
|
...childrenGroupState
|
|
326
326
|
} = updatedState;
|
|
327
|
-
if (groupContext && notifyGroupSubscribers(groupContext, stateRef.current.group || null, childrenGroupState), !hasAnimationProp || !
|
|
327
|
+
if (groupContext && notifyGroupSubscribers(groupContext, stateRef.current.group || null, childrenGroupState), !hasAnimationProp || !useStyleListener) return;
|
|
328
328
|
const nextStyles = getSplitStyles(props, staticConfig, theme, themeName, updatedState, styleProps, null, componentContext, allGroupContexts, elementType, startedUnhydrated, debugProp);
|
|
329
|
-
|
|
329
|
+
useStyleListener(nextStyles?.style || {});
|
|
330
330
|
} else process.env.NODE_ENV === "development" && debugProp && debugProp !== "profile" && console.info("[\u{1F40C}] re-render", {
|
|
331
331
|
canAvoidReRender,
|
|
332
332
|
next
|
|
@@ -335,9 +335,9 @@ function createComponent(staticConfig) {
|
|
|
335
335
|
stateRef.current.setStateShallow?.(state2);
|
|
336
336
|
};
|
|
337
337
|
}
|
|
338
|
-
process.env.NODE_ENV === "development" && time && time`split-styles`, props.group && props.untilMeasured === "hide" && !stateRef.current.hasMeasured && (splitStyles.style ||= {}, splitStyles.style.opacity = 0), splitStyles.dynamicThemeAccess != null && (stateRef.current.isListeningToTheme = splitStyles.dynamicThemeAccess);
|
|
339
|
-
const hasRuntimeMediaKeys = splitStyles
|
|
340
|
-
shouldListenForMedia = didGetVariableValue() || hasRuntimeMediaKeys || noClass && splitStyles
|
|
338
|
+
process.env.NODE_ENV === "development" && time && time`split-styles`, splitStyles && (props.group && props.untilMeasured === "hide" && !stateRef.current.hasMeasured && (splitStyles.style ||= {}, splitStyles.style.opacity = 0), splitStyles.dynamicThemeAccess != null && (stateRef.current.isListeningToTheme = splitStyles.dynamicThemeAccess));
|
|
339
|
+
const hasRuntimeMediaKeys = splitStyles?.hasMedia && splitStyles.hasMedia !== !0,
|
|
340
|
+
shouldListenForMedia = didGetVariableValue() || hasRuntimeMediaKeys || noClass && splitStyles?.hasMedia === !0,
|
|
341
341
|
mediaListeningKeys = hasRuntimeMediaKeys ? splitStyles.hasMedia : null;
|
|
342
342
|
process.env.NODE_ENV === "development" && debugProp === "verbose" && console.info("useMedia() createComponent", shouldListenForMedia, mediaListeningKeys), setMediaShouldUpdate(componentContext, shouldListenForMedia, mediaListeningKeys);
|
|
343
343
|
const {
|
|
@@ -345,8 +345,10 @@ function createComponent(staticConfig) {
|
|
|
345
345
|
pseudos,
|
|
346
346
|
style: splitStylesStyle,
|
|
347
347
|
classNames,
|
|
348
|
-
space
|
|
349
|
-
|
|
348
|
+
space,
|
|
349
|
+
pseudoGroups,
|
|
350
|
+
mediaGroups
|
|
351
|
+
} = splitStyles || {},
|
|
350
352
|
propsWithAnimation = props,
|
|
351
353
|
{
|
|
352
354
|
asChild,
|
|
@@ -372,7 +374,7 @@ function createComponent(staticConfig) {
|
|
|
372
374
|
onClick,
|
|
373
375
|
theme: _themeProp,
|
|
374
376
|
...nonTamaguiProps
|
|
375
|
-
} = viewPropsIn;
|
|
377
|
+
} = viewPropsIn || {};
|
|
376
378
|
let viewProps = nonTamaguiProps;
|
|
377
379
|
!isTaggable && props.forceStyle && (viewProps.forceStyle = props.forceStyle), isHOC && _themeProp && (viewProps.theme = _themeProp), tagProp && elementType.acceptTagProp && (viewProps.tag = tagProp);
|
|
378
380
|
let animationStyles;
|
|
@@ -403,7 +405,7 @@ function createComponent(staticConfig) {
|
|
|
403
405
|
}
|
|
404
406
|
process.env.NODE_ENV === "development" && props.untilMeasured && !props.group && console.warn(`You set the untilMeasured prop without setting group. This doesn't work, be sure to set untilMeasured on the parent that sets group, not the children that use the $group- prop.
|
|
405
407
|
|
|
406
|
-
If you meant to do this, you can disable this warning - either change untilMeasured and group at the same time, or do group={conditional ? 'name' : undefined}`), process.env.NODE_ENV === "development" && time && time`destructure`, groupContext && (nonTamaguiProps.onLayout = composeEventHandlers(nonTamaguiProps.onLayout, e => {
|
|
408
|
+
If you meant to do this, you can disable this warning - either change untilMeasured and group at the same time, or do group={conditional ? 'name' : undefined}`), process.env.NODE_ENV === "development" && time && time`destructure`, splitStyles && groupContext && (nonTamaguiProps.onLayout = composeEventHandlers(nonTamaguiProps.onLayout, e => {
|
|
407
409
|
const layout = e.nativeEvent.layout;
|
|
408
410
|
groupContext.state.layout = layout, stateRef.current.group?.emit({
|
|
409
411
|
layout
|
|
@@ -414,26 +416,23 @@ If you meant to do this, you can disable this warning - either change untilMeasu
|
|
|
414
416
|
typeof item == "string" && item !== `
|
|
415
417
|
` && console.error(`Unexpected text node: ${item}. A text node cannot be a child of a <${staticConfig.componentName || propsIn.tag || "View"}>.`, props);
|
|
416
418
|
}), process.env.NODE_ENV === "development" && time && time`events-hooks`;
|
|
417
|
-
const {
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
press: !1,
|
|
424
|
-
pressIn: !1
|
|
425
|
-
});
|
|
426
|
-
};
|
|
419
|
+
const unPress = () => {
|
|
420
|
+
setStateShallow({
|
|
421
|
+
press: !1,
|
|
422
|
+
pressIn: !1
|
|
423
|
+
});
|
|
424
|
+
};
|
|
427
425
|
process.env.NODE_ENV === "development" && isWeb && useIsomorphicLayoutEffect(() => {
|
|
428
426
|
if (debugProp === "verbose") {
|
|
429
|
-
|
|
427
|
+
let cssStyleDeclarationToObject = function (style) {
|
|
430
428
|
const styleObject = {};
|
|
431
429
|
for (let i = 0; i < style.length; i++) {
|
|
432
430
|
let prop = style[i];
|
|
433
431
|
styleObject[prop] = style.getPropertyValue(prop);
|
|
434
432
|
}
|
|
435
433
|
return styleObject;
|
|
436
|
-
}
|
|
434
|
+
};
|
|
435
|
+
const computed = stateRef.current.host ? cssStyleDeclarationToObject(getComputedStyle(stateRef.current.host)) : {};
|
|
437
436
|
console.groupCollapsed(`Rendered > (opacity: ${computed.opacity})`), console.warn(stateRef.current.host), console.warn(computed), console.groupEnd();
|
|
438
437
|
}
|
|
439
438
|
}), useIsomorphicLayoutEffect(() => {
|
|
@@ -539,7 +538,7 @@ If you meant to do this, you can disable this warning - either change untilMeasu
|
|
|
539
538
|
}), hooks.useEvents?.(viewProps, events, splitStyles, setStateShallow, staticConfig);
|
|
540
539
|
const direction = props.spaceDirection || "both";
|
|
541
540
|
process.env.NODE_ENV === "development" && time && time`hooks`;
|
|
542
|
-
let content = !children || asChild ? children : spacedChildren({
|
|
541
|
+
let content = !children || asChild || !splitStyles ? children : spacedChildren({
|
|
543
542
|
separator,
|
|
544
543
|
children,
|
|
545
544
|
space,
|
|
@@ -565,9 +564,19 @@ If you meant to do this, you can disable this warning - either change untilMeasu
|
|
|
565
564
|
}
|
|
566
565
|
process.env.NODE_ENV === "development" && time && time`spaced-as-child`;
|
|
567
566
|
let useChildrenResult;
|
|
568
|
-
hooks.useChildren && (useChildrenResult = hooks.useChildren(elementType, content, viewProps)), process.env.NODE_ENV === "development" && time && time`use-children`,
|
|
567
|
+
hooks.useChildren && (useChildrenResult = hooks.useChildren(elementType, content, viewProps)), process.env.NODE_ENV === "development" && time && time`use-children`, splitStyles || (elementType = "span", content = propsIn.children, viewProps = {
|
|
568
|
+
style: {
|
|
569
|
+
display: "contents"
|
|
570
|
+
}
|
|
571
|
+
}), useChildrenResult ? content = useChildrenResult : content = React.createElement(elementType, viewProps, content);
|
|
569
572
|
const ResetPresence = config?.animations?.ResetPresence,
|
|
570
|
-
needsReset = !!(
|
|
573
|
+
needsReset = !!(
|
|
574
|
+
// not when passing down to child
|
|
575
|
+
!asChild &&
|
|
576
|
+
// not when passThrough
|
|
577
|
+
splitStyles &&
|
|
578
|
+
// not when HOC
|
|
579
|
+
!isHOC && ResetPresence && willBeAnimated && (hasEnterStyle || presenceState)),
|
|
571
580
|
hasEverReset = stateRef.current.hasEverResetPresence;
|
|
572
581
|
if (needsReset && !hasEverReset && (stateRef.current.hasEverResetPresence = !0), (needsReset || hasEverReset) && ResetPresence && (content = /* @__PURE__ */jsx(ResetPresence, {
|
|
573
582
|
disabled: !needsReset,
|
|
@@ -579,9 +588,9 @@ If you meant to do this, you can disable this warning - either change untilMeasu
|
|
|
579
588
|
})), "group" in props && (content = /* @__PURE__ */jsx(GroupContext.Provider, {
|
|
580
589
|
value: allGroupContexts,
|
|
581
590
|
children: content
|
|
582
|
-
})), process.env.NODE_ENV === "development" && time && time`group-context`, content = disableTheme ? content : getThemedChildren(themeState, content, themeStateProps, !1, stateRef), process.env.NODE_ENV === "development" && time && time`themed-children`, isReactNative && !asChild && (content = /* @__PURE__ */jsx("span", {
|
|
591
|
+
})), process.env.NODE_ENV === "development" && time && time`group-context`, content = disableTheme || !splitStyles ? content : getThemedChildren(themeState, content, themeStateProps, !1, stateRef), process.env.NODE_ENV === "development" && time && time`themed-children`, isReactNative && !asChild && (content = /* @__PURE__ */jsx("span", {
|
|
583
592
|
className: "_dsp_contents",
|
|
584
|
-
...(isHydrated && events && getWebEvents(events)),
|
|
593
|
+
...(splitStyles && isHydrated && events && getWebEvents(events)),
|
|
585
594
|
children: content
|
|
586
595
|
})), staticConfig.context) {
|
|
587
596
|
const contextProps = staticConfig.context.props;
|
|
@@ -596,7 +605,9 @@ If you meant to do this, you can disable this warning - either change untilMeasu
|
|
|
596
605
|
});
|
|
597
606
|
}
|
|
598
607
|
if (process.env.NODE_ENV === "development" && time && time`context-override`, startedUnhydrated) {
|
|
599
|
-
const styleTags = useMemo(() =>
|
|
608
|
+
const styleTags = useMemo(() => {
|
|
609
|
+
if (splitStyles) return getStyleTags(Object.values(splitStyles.rulesToInsert));
|
|
610
|
+
}, []);
|
|
600
611
|
content = /* @__PURE__ */jsxs(Fragment, {
|
|
601
612
|
children: [content, styleTags]
|
|
602
613
|
});
|
|
@@ -673,7 +684,7 @@ If you meant to do this, you can disable this warning - either change untilMeasu
|
|
|
673
684
|
function styleable(Component2, options) {
|
|
674
685
|
let out = IS_REACT_19 && typeof Component2 == "function" && Component2.length === 1 || Component2.render?.length === 2 ? Component2 : React.forwardRef(Component2);
|
|
675
686
|
const extendedConfig = extendStyledConfig(options?.staticConfig);
|
|
676
|
-
return out = options?.disableTheme ? out : themeable(out, extendedConfig, !0), process.env.TAMAGUI_MEMOIZE_STYLEABLE && (out = React.memo(out)), out.staticConfig = extendedConfig, out.styleable = styleable, out;
|
|
687
|
+
return out = options?.disableTheme ? out : themeable(out, extendedConfig, !0), (extendedConfig.memo || process.env.TAMAGUI_MEMOIZE_STYLEABLE) && (out = React.memo(out)), out.staticConfig = extendedConfig, out.styleable = styleable, out;
|
|
677
688
|
}
|
|
678
689
|
return res.extractable = extractable, res.styleable = styleable, res;
|
|
679
690
|
}
|