@tamagui/web 3.0.6 → 3.0.7

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":"nativeStyleEngine.native.js","names":[],"sources":["esm/helpers/nativeStyleEngine.native.js"],"sourcesContent":["import { getVariableValue } from \"../createVariable\";\nvar nativeTextInputColorProps = {\n placeholderTextColor: \"placeholderTextColor\",\n selectionColor: \"selectionColor\",\n cursorColor: \"cursorColor\",\n selectionHandleColor: \"selectionHandleColor\"\n};\nvar nativeOutlineProps = [\n \"outlineStyle\",\n \"outlineWidth\",\n \"outlineColor\",\n \"outlineOffset\"\n];\nvar nativeIntrinsicSizeProps = [\n \"width\",\n \"height\",\n \"minWidth\",\n \"minHeight\",\n \"maxWidth\",\n \"maxHeight\"\n];\nfunction normalizeNativeStyle(style) {\n var reset = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;\n var next;\n if (style.outlineStyle === \"none\") {\n next = {\n ...style\n };\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = nativeOutlineProps[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var key = _step.value;\n if (reset) {\n next[key] = null;\n } else {\n delete next[key];\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = nativeIntrinsicSizeProps[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var key1 = _step1.value;\n var value = style[key1];\n if (value === \"max-content\" || value === \"min-content\" || value === \"fit-content\") {\n next || (next = {\n ...style\n });\n if (reset) {\n next[key1] = null;\n } else {\n delete next[key1];\n }\n }\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n return next !== null && next !== void 0 ? next : style;\n}\nvar engine = null;\nvar scopeStates = /* @__PURE__ */ new Map();\nvar mappingKeys = /* @__PURE__ */ new WeakMap();\nvar compiledMappings = /* @__PURE__ */ new Map();\nvar scopeMappings = /* @__PURE__ */ new Map();\nvar nextTableId = 1;\nfunction getCompiledMapping(mapping) {\n var key = mappingKeys.get(mapping);\n if (!key) {\n key = JSON.stringify(Object.keys(mapping).sort().map(function(styleKey) {\n return [\n styleKey,\n mapping[styleKey]\n ];\n }));\n mappingKeys.set(mapping, key);\n }\n var compiled = compiledMappings.get(key);\n if (!compiled) {\n compiled = {\n mapping,\n states: /* @__PURE__ */ new Map(),\n tableId: nextTableId++,\n sent: /* @__PURE__ */ new Map()\n };\n if (compiledMappings.size >= 1e4) {\n compiledMappings.clear();\n }\n compiledMappings.set(key, compiled);\n }\n return compiled;\n}\nfunction resolveCompiledMapping(compiled, stateName, theme) {\n var cached = compiled.states.get(stateName);\n if ((cached === null || cached === void 0 ? void 0 : cached.theme) === theme) return cached;\n var renderProps = {};\n for (var styleKey in compiled.mapping) {\n var value = theme[compiled.mapping[styleKey]];\n renderProps[styleKey] = value === void 0 ? null : getVariableValue(value);\n }\n renderProps = normalizeNativeStyle(renderProps, true);\n var _engine_processStyleColors;\n var nativeProps = (_engine_processStyleColors = engine === null || engine === void 0 ? void 0 : engine.processStyleColors(renderProps)) !== null && _engine_processStyleColors !== void 0 ? _engine_processStyleColors : renderProps;\n if (compiled.states.size >= 1e4) {\n compiled.states.clear();\n }\n var resolved = {\n theme,\n renderProps,\n nativeProps\n };\n compiled.states.set(stateName, resolved);\n return resolved;\n}\nfunction syncTableState(compiled, stateName, theme) {\n var resolved = resolveCompiledMapping(compiled, stateName, theme);\n if (compiled.sent.get(stateName) === resolved) return;\n compiled.sent.set(stateName, resolved);\n engine.setTableState(compiled.tableId, stateName, resolved.nativeProps);\n}\nfunction setNativeStyleEngine(next) {\n if (engine !== next) {\n compiledMappings.clear();\n scopeMappings.clear();\n pendingHosts = [];\n pendingStates = [];\n }\n engine = next;\n if (next) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = scopeStates[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [scopeId, state] = _step.value;\n next.setStateName(state.name, scopeId);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n}\nfunction getNativeStyleEngine() {\n return engine;\n}\nfunction updateNativeStyleScope(scopeId, stateName, theme) {\n var previous = scopeStates.get(scopeId);\n if ((previous === null || previous === void 0 ? void 0 : previous.name) === stateName && previous.theme === theme) return;\n flushNativeStyleLinks();\n scopeStates.set(scopeId, {\n name: stateName,\n theme\n });\n if (engine) {\n var linked = scopeMappings.get(scopeId);\n if (linked) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = linked[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var compiled = _step.value;\n syncTableState(compiled, stateName, theme);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n }\n engine === null || engine === void 0 ? void 0 : engine.setStateName(stateName, scopeId);\n}\nfunction removeNativeStyleScope(scopeId) {\n if (!scopeStates.delete(scopeId)) return;\n queueMicrotask(function() {\n if (!scopeStates.has(scopeId)) scopeMappings.delete(scopeId);\n });\n engine === null || engine === void 0 ? void 0 : engine.removeScope(scopeId);\n}\nfunction resolveNativeStyleMapping(mapping, stateName, theme) {\n return resolveCompiledMapping(getCompiledMapping(mapping), stateName, theme).renderProps;\n}\nfunction createNativeStyleLinkState(mapping, scopeId, stateName, theme) {\n return {\n mapping,\n scopeId,\n stateName,\n theme\n };\n}\nvar pendingHosts = [];\nvar pendingStates = [];\nvar maxPendingHosts = 4096;\nvar idleFlushQueued = false;\nfunction idleFlush() {\n idleFlushQueued = false;\n flushNativeStyleLinks();\n}\nfunction addScopeMapping(scopeId, compiled) {\n var linked = scopeMappings.get(scopeId);\n if (!linked) scopeMappings.set(scopeId, linked = /* @__PURE__ */ new Set());\n linked.add(compiled);\n}\nfunction flushNativeStyleLinks() {\n if (!pendingHosts.length) return;\n var hosts = pendingHosts;\n var states = pendingStates;\n pendingHosts = [];\n pendingStates = [];\n if (!engine) return;\n var tableIds = new Array(hosts.length);\n var scopeIndexes = new Array(hosts.length);\n var scopes = [];\n var last;\n var tableId = 0;\n var scopeIndex = 0;\n for (var i = 0; i < hosts.length; i++) {\n var state = states[i];\n if (state !== last) {\n last = state;\n var compiled = getCompiledMapping(state.mapping);\n syncTableState(compiled, state.stateName, state.theme);\n addScopeMapping(state.scopeId, compiled);\n tableId = compiled.tableId;\n scopeIndex = scopes.indexOf(state.scopeId);\n if (scopeIndex === -1) scopeIndex = scopes.push(state.scopeId) - 1;\n }\n tableIds[i] = tableId;\n scopeIndexes[i] = scopeIndex;\n }\n engine.linkTables(hosts, tableIds, scopeIndexes, scopes);\n}\nfunction linkNativeStyleHost(host, state) {\n if (!engine) return;\n var live = scopeStates.get(state.scopeId);\n if (live && (live.name !== state.stateName || live.theme !== state.theme)) {\n var compiled = getCompiledMapping(state.mapping);\n syncTableState(compiled, live.name, live.theme);\n addScopeMapping(state.scopeId, compiled);\n engine.link(host, compiled.tableId, state.scopeId, true);\n return;\n }\n pendingHosts.push(host);\n pendingStates.push(state);\n if (pendingHosts.length >= maxPendingHosts && !idleFlushQueued) {\n idleFlushQueued = true;\n requestIdleCallback(idleFlush);\n }\n}\nvar getNativeStyleEngineCacheStats = function() {\n var active = new Set([\n ...scopeMappings.values()\n ].flatMap(function(linked) {\n return [\n ...linked\n ];\n }));\n return {\n mappings: compiledMappings.size,\n activeMappings: active.size,\n states: [\n .../* @__PURE__ */ new Set([\n ...compiledMappings.values(),\n ...active\n ])\n ].reduce(function(total, compiled) {\n return total + compiled.states.size;\n }, 0)\n };\n};\nvar pending = null;\nvar flushListener = null;\nfunction setNativeStyleEngineFlushListener(cb) {\n flushListener = cb;\n}\nfunction updateNativeStyleLink(ref, host) {\n if (ref.nativeLink) {\n ref.nativeLink.unlink();\n ref.nativeLink = null;\n }\n ref.nativePushedKeys = void 0;\n if (host && engine && ref.nativeStyleUpdate) {\n ref.nativeLink = engine.link(host, {});\n }\n}\nfunction queueNativeViewState(entry) {\n if (!engine) return;\n if (!pending) {\n pending = [];\n queueMicrotask(function() {\n var entries = pending;\n pending = null;\n engine === null || engine === void 0 ? void 0 : engine.applyViewStates(entries);\n flushListener === null || flushListener === void 0 ? void 0 : flushListener(entries);\n });\n }\n pending.push(entry);\n}\nexport {\n createNativeStyleLinkState,\n flushNativeStyleLinks,\n getNativeStyleEngine,\n getNativeStyleEngineCacheStats,\n linkNativeStyleHost,\n nativeTextInputColorProps,\n normalizeNativeStyle,\n queueNativeViewState,\n removeNativeStyleScope,\n resolveNativeStyleMapping,\n setNativeStyleEngine,\n setNativeStyleEngineFlushListener,\n updateNativeStyleLink,\n updateNativeStyleScope\n};\n//# sourceMappingURL=nativeStyleEngine.js.map\n"],"mappings":"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"}
1
+ {"version":3,"file":"nativeStyleEngine.native.js","names":[],"sources":["esm/helpers/nativeStyleEngine.native.js"],"sourcesContent":["import { getVariableValue } from \"../createVariable\";\nvar nativeTextInputColorProps = {\n placeholderTextColor: \"placeholderTextColor\",\n selectionColor: \"selectionColor\",\n cursorColor: \"cursorColor\",\n selectionHandleColor: \"selectionHandleColor\"\n};\nvar nativeOutlineProps = [\n \"outlineStyle\",\n \"outlineWidth\",\n \"outlineColor\",\n \"outlineOffset\"\n];\nvar nativeIntrinsicSizeProps = [\n \"width\",\n \"height\",\n \"minWidth\",\n \"minHeight\",\n \"maxWidth\",\n \"maxHeight\"\n];\nfunction normalizeNativeStyle(style) {\n var reset = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;\n var next;\n if (style.outlineStyle === \"none\") {\n next = {\n ...style\n };\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = nativeOutlineProps[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var key = _step.value;\n if (reset) {\n next[key] = null;\n } else {\n delete next[key];\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = nativeIntrinsicSizeProps[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var key1 = _step1.value;\n var value = style[key1];\n if (value === \"max-content\" || value === \"min-content\" || value === \"fit-content\") {\n next || (next = {\n ...style\n });\n if (reset) {\n next[key1] = null;\n } else {\n delete next[key1];\n }\n }\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n return next !== null && next !== void 0 ? next : style;\n}\nvar engine = null;\nvar scopeStates = /* @__PURE__ */ new Map();\nvar mappingKeys = /* @__PURE__ */ new WeakMap();\nvar compiledMappings = /* @__PURE__ */ new Map();\nvar scopeMappings = /* @__PURE__ */ new Map();\nvar nextTableId = 1;\nfunction getCompiledMapping(mapping) {\n var key = mappingKeys.get(mapping);\n if (!key) {\n key = JSON.stringify(Object.keys(mapping).sort().map(function(styleKey) {\n return [\n styleKey,\n mapping[styleKey]\n ];\n }));\n mappingKeys.set(mapping, key);\n }\n var compiled = compiledMappings.get(key);\n if (!compiled) {\n compiled = {\n mapping,\n states: /* @__PURE__ */ new Map(),\n tableId: nextTableId++,\n sent: /* @__PURE__ */ new Map()\n };\n if (compiledMappings.size >= 1e4) {\n compiledMappings.clear();\n }\n compiledMappings.set(key, compiled);\n }\n return compiled;\n}\nfunction resolveCompiledMapping(compiled, stateName, theme) {\n var cached = compiled.states.get(stateName);\n if ((cached === null || cached === void 0 ? void 0 : cached.theme) === theme) return cached;\n var renderProps = {};\n for (var styleKey in compiled.mapping) {\n var value = theme[compiled.mapping[styleKey]];\n renderProps[styleKey] = value === void 0 ? null : getVariableValue(value);\n }\n renderProps = normalizeNativeStyle(renderProps, true);\n var _engine_processStyleColors;\n var nativeProps = (_engine_processStyleColors = engine === null || engine === void 0 ? void 0 : engine.processStyleColors(renderProps)) !== null && _engine_processStyleColors !== void 0 ? _engine_processStyleColors : renderProps;\n if (compiled.states.size >= 1e4) {\n compiled.states.clear();\n }\n var resolved = {\n theme,\n renderProps,\n nativeProps\n };\n compiled.states.set(stateName, resolved);\n return resolved;\n}\nfunction syncTableState(compiled, stateName, theme) {\n var resolved = resolveCompiledMapping(compiled, stateName, theme);\n if (compiled.sent.get(stateName) === resolved) return;\n compiled.sent.set(stateName, resolved);\n engine.setTableState(compiled.tableId, stateName, resolved.nativeProps);\n}\nfunction setNativeStyleEngine(next) {\n if (engine !== next) {\n compiledMappings.clear();\n scopeMappings.clear();\n pendingHosts = [];\n pendingStates = [];\n }\n engine = next;\n if (next) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = scopeStates[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [scopeId, state] = _step.value;\n next.setStateName(state.name, scopeId);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n}\nfunction getNativeStyleEngine() {\n return engine;\n}\nfunction updateNativeStyleScope(scopeId, stateName, theme) {\n var previous = scopeStates.get(scopeId);\n if ((previous === null || previous === void 0 ? void 0 : previous.name) === stateName && previous.theme === theme) return;\n flushNativeStyleLinks();\n scopeStates.set(scopeId, {\n name: stateName,\n theme\n });\n if (engine) {\n var linked = scopeMappings.get(scopeId);\n if (linked) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = linked[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var compiled = _step.value;\n syncTableState(compiled, stateName, theme);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n }\n engine === null || engine === void 0 ? void 0 : engine.setStateName(stateName, scopeId);\n}\nfunction removeNativeStyleScope(scopeId) {\n if (!scopeStates.delete(scopeId)) return;\n queueMicrotask(function() {\n if (!scopeStates.has(scopeId)) scopeMappings.delete(scopeId);\n });\n engine === null || engine === void 0 ? void 0 : engine.removeScope(scopeId);\n}\nfunction resolveNativeStyleMapping(mapping, stateName, theme) {\n return resolveCompiledMapping(getCompiledMapping(mapping), stateName, theme).renderProps;\n}\nfunction createNativeStyleLinkState(mapping, scopeId, stateName, theme) {\n return {\n mapping,\n scopeId,\n stateName,\n theme\n };\n}\nvar pendingHosts = [];\nvar pendingStates = [];\nvar maxPendingHosts = 4096;\nvar idleFlushQueued = false;\nfunction idleFlush() {\n idleFlushQueued = false;\n flushNativeStyleLinks();\n}\nfunction addScopeMapping(scopeId, compiled) {\n var linked = scopeMappings.get(scopeId);\n if (!linked) scopeMappings.set(scopeId, linked = /* @__PURE__ */ new Set());\n linked.add(compiled);\n}\nfunction flushNativeStyleLinks() {\n if (!pendingHosts.length) return;\n var hosts = pendingHosts;\n var states = pendingStates;\n pendingHosts = [];\n pendingStates = [];\n if (!engine) return;\n var tableIds = new Array(hosts.length);\n var scopeIndexes = new Array(hosts.length);\n var scopes = [];\n var last;\n var tableId = 0;\n var scopeIndex = 0;\n for (var i = 0; i < hosts.length; i++) {\n var state = states[i];\n if (state !== last) {\n last = state;\n var compiled = getCompiledMapping(state.mapping);\n syncTableState(compiled, state.stateName, state.theme);\n addScopeMapping(state.scopeId, compiled);\n tableId = compiled.tableId;\n scopeIndex = scopes.indexOf(state.scopeId);\n if (scopeIndex === -1) scopeIndex = scopes.push(state.scopeId) - 1;\n }\n tableIds[i] = tableId;\n scopeIndexes[i] = scopeIndex;\n }\n engine.linkTables(hosts, tableIds, scopeIndexes, scopes);\n}\nfunction linkNativeStyleHost(host, state) {\n if (!engine) return;\n var live = scopeStates.get(state.scopeId);\n if (live && (live.name !== state.stateName || live.theme !== state.theme)) {\n var compiled = getCompiledMapping(state.mapping);\n syncTableState(compiled, live.name, live.theme);\n addScopeMapping(state.scopeId, compiled);\n engine.link(host, compiled.tableId, state.scopeId, true);\n return;\n }\n pendingHosts.push(host);\n pendingStates.push(state);\n if (pendingHosts.length >= maxPendingHosts && !idleFlushQueued) {\n idleFlushQueued = true;\n requestIdleCallback(idleFlush);\n }\n}\nvar getNativeStyleEngineCacheStats = function() {\n var active = new Set([\n ...scopeMappings.values()\n ].flatMap(function(linked) {\n return [\n ...linked\n ];\n }));\n return {\n mappings: compiledMappings.size,\n activeMappings: active.size,\n states: [\n .../* @__PURE__ */ new Set([\n ...compiledMappings.values(),\n ...active\n ])\n ].reduce(function(total, compiled) {\n return total + compiled.states.size;\n }, 0)\n };\n};\nvar pending = null;\nvar flushListener = null;\nfunction setNativeStyleEngineFlushListener(cb) {\n flushListener = cb;\n}\nfunction updateNativeStyleLink(ref, host) {\n if (ref.nativeLink) {\n ref.nativeLink.unlink();\n ref.nativeLink = null;\n }\n ref.nativePushedKeys = void 0;\n if (host && engine && ref.nativeStyleUpdate) {\n ref.nativeLink = engine.link(host, {});\n }\n}\nvar superseded = null;\nfunction queueNativeViewState(entry) {\n if (!engine) return;\n if (!pending) {\n pending = [];\n queueMicrotask(function() {\n var entries = pending;\n var dropped = superseded;\n pending = null;\n superseded = null;\n if (dropped) {\n entries = entries.filter(function(queued, index) {\n var _dropped_get;\n return index >= ((_dropped_get = dropped.get(queued.id)) !== null && _dropped_get !== void 0 ? _dropped_get : 0);\n });\n }\n if (!entries.length) return;\n engine === null || engine === void 0 ? void 0 : engine.applyViewStates(entries);\n flushListener === null || flushListener === void 0 ? void 0 : flushListener(entries);\n });\n }\n pending.push(entry);\n}\nfunction supersedeNativeViewStates(id) {\n if (!pending) return;\n (superseded || (superseded = /* @__PURE__ */ new Map())).set(id, pending.length);\n}\nexport {\n createNativeStyleLinkState,\n flushNativeStyleLinks,\n getNativeStyleEngine,\n getNativeStyleEngineCacheStats,\n linkNativeStyleHost,\n nativeTextInputColorProps,\n normalizeNativeStyle,\n queueNativeViewState,\n removeNativeStyleScope,\n resolveNativeStyleMapping,\n setNativeStyleEngine,\n setNativeStyleEngineFlushListener,\n supersedeNativeViewStates,\n updateNativeStyleLink,\n updateNativeStyleScope\n};\n//# sourceMappingURL=nativeStyleEngine.js.map\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/web",
3
- "version": "3.0.6",
3
+ "version": "3.0.7",
4
4
  "license": "MIT",
5
5
  "author": {
6
6
  "name": "Nate Wienert"
@@ -100,23 +100,23 @@
100
100
  "test:web": "vitest --typecheck --run"
101
101
  },
102
102
  "dependencies": {
103
- "@tamagui/animation-helpers": "3.0.6",
104
- "@tamagui/compose-refs": "3.0.6",
105
- "@tamagui/constants": "3.0.6",
106
- "@tamagui/dom": "3.0.6",
107
- "@tamagui/helpers": "3.0.6",
108
- "@tamagui/is-equal-shallow": "3.0.6",
109
- "@tamagui/native": "3.0.6",
110
- "@tamagui/normalize-css-color": "3.0.6",
111
- "@tamagui/react-native-types": "3.0.6",
112
- "@tamagui/style-grammar": "3.0.6",
113
- "@tamagui/types": "3.0.6",
114
- "@tamagui/use-did-finish-ssr": "3.0.6",
115
- "@tamagui/use-event": "3.0.6",
116
- "@tamagui/use-force-update": "3.0.6"
103
+ "@tamagui/animation-helpers": "3.0.7",
104
+ "@tamagui/compose-refs": "3.0.7",
105
+ "@tamagui/constants": "3.0.7",
106
+ "@tamagui/dom": "3.0.7",
107
+ "@tamagui/helpers": "3.0.7",
108
+ "@tamagui/is-equal-shallow": "3.0.7",
109
+ "@tamagui/native": "3.0.7",
110
+ "@tamagui/normalize-css-color": "3.0.7",
111
+ "@tamagui/react-native-types": "3.0.7",
112
+ "@tamagui/style-grammar": "3.0.7",
113
+ "@tamagui/types": "3.0.7",
114
+ "@tamagui/use-did-finish-ssr": "3.0.7",
115
+ "@tamagui/use-event": "3.0.7",
116
+ "@tamagui/use-force-update": "3.0.7"
117
117
  },
118
118
  "devDependencies": {
119
- "@tamagui/build": "3.0.6",
119
+ "@tamagui/build": "3.0.7",
120
120
  "@testing-library/react": "^16.1.0",
121
121
  "csstype": "^3.0.10",
122
122
  "react": "19.2.3",
@@ -133,5 +133,5 @@
133
133
  "./dist/cjs": "./dist/esm/index.native.js",
134
134
  "./theme-update": "./dist/esm/theme-update.native.js"
135
135
  },
136
- "releaseSourceCommit": "ee01c1a5d113f9d0f4e9e26c35154165ce25add6"
136
+ "releaseSourceCommit": "96f8bc1f222af0381729a2e2202370aa4a9808ef"
137
137
  }
@@ -28,6 +28,7 @@ import { getStyleStaticConfig, type StyleStaticConfig } from './helpers/styleSta
28
28
  import {
29
29
  getNativeStyleEngine,
30
30
  queueNativeViewState,
31
+ supersedeNativeViewStates,
31
32
  updateNativeStyleLink,
32
33
  } from './helpers/nativeStyleEngine'
33
34
  import { getThemeProxied } from './hooks/getThemeProxied'
@@ -904,7 +905,11 @@ export function createComponent<
904
905
  !props.disableNativeStyle
905
906
  stateRef.current.nativePushedStates = canNativeUpdate ? new Set() : undefined
906
907
  // fresh render: the themeState captured below is current again, and the
907
- // render itself commits this state's styles
908
+ // render itself commits this state's styles, so pushes queued from the
909
+ // previous render's props are dropped
910
+ if (stateRef.current.nativeLink) {
911
+ supersedeNativeViewStates(stateRef.current.nativeLink.id)
912
+ }
908
913
  stateRef.current.nativeThemeState = undefined
909
914
  stateRef.current.nativeActiveState = canNativeUpdate ? themeState?.name : undefined
910
915
 
@@ -432,16 +432,38 @@ export function updateNativeStyleLink(
432
432
  }
433
433
  }
434
434
 
435
+ // per view id, how many pending entries a render of that view superseded
436
+ let superseded: Map<number, number> | null = null
437
+
435
438
  export function queueNativeViewState(entry: NativeViewStateUpdate): void {
436
439
  if (!engine) return
437
440
  if (!pending) {
438
441
  pending = []
439
442
  queueMicrotask(() => {
440
- const entries = pending!
443
+ let entries = pending!
444
+ const dropped = superseded
441
445
  pending = null
446
+ superseded = null
447
+ if (dropped) {
448
+ entries = entries.filter(
449
+ (queued, index) => index >= (dropped.get(queued.id) ?? 0)
450
+ )
451
+ }
452
+ if (!entries.length) return
442
453
  engine?.applyViewStates(entries)
443
454
  flushListener?.(entries)
444
455
  })
445
456
  }
446
457
  pending.push(entry)
447
458
  }
459
+
460
+ /**
461
+ * a render of a linked view commits its current styles, so updates it queued
462
+ * before rendering carry older props and must not land after that commit: a
463
+ * parent passing a raw theme value re-renders the view with the new value
464
+ * while the view's own theme listener queued a push of the old one
465
+ */
466
+ export function supersedeNativeViewStates(id: number): void {
467
+ if (!pending) return
468
+ ;(superseded ||= new Map()).set(id, pending.length)
469
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"createComponent.d.ts","sourceRoot":"","sources":["../src/createComponent.tsx"],"names":[],"mappings":"AAaA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAuC/D,OAAO,KAAK,EASV,YAAY,EACZ,gBAAgB,EAChB,qBAAqB,EACrB,cAAc,EAOf,MAAM,SAAS,CAAA;AAahB,KAAK,iBAAiB,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,qBAAqB,CAAC,CAAC,CAAA;AAEpF,eAAO,MAAM,kBAAkB,wBAA+B,CAAA;AAuK9D,wBAAgB,eAAe,CAC7B,kBAAkB,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,EACnD,GAAG,SAAS,cAAc,GAAG,cAAc,EAC3C,SAAS,GAAG,KAAK,EACjB,UAAU,SAAS,MAAM,GAAG,KAAK,EACjC,YAAY,EAAE,YAAY,wEAqkE3B"}
1
+ {"version":3,"file":"createComponent.d.ts","sourceRoot":"","sources":["../src/createComponent.tsx"],"names":[],"mappings":"AAaA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAwC/D,OAAO,KAAK,EASV,YAAY,EACZ,gBAAgB,EAChB,qBAAqB,EACrB,cAAc,EAOf,MAAM,SAAS,CAAA;AAahB,KAAK,iBAAiB,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,qBAAqB,CAAC,CAAC,CAAA;AAEpF,eAAO,MAAM,kBAAkB,wBAA+B,CAAA;AAuK9D,wBAAgB,eAAe,CAC7B,kBAAkB,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,EACnD,GAAG,SAAS,cAAc,GAAG,cAAc,EAC3C,SAAS,GAAG,KAAK,EACjB,UAAU,SAAS,MAAM,GAAG,KAAK,EACjC,YAAY,EAAE,YAAY,wEAykE3B"}
@@ -102,4 +102,11 @@ export declare function updateNativeStyleLink(ref: {
102
102
  nativePushedKeys?: Set<string>;
103
103
  }, host: unknown): void;
104
104
  export declare function queueNativeViewState(entry: NativeViewStateUpdate): void;
105
+ /**
106
+ * a render of a linked view commits its current styles, so updates it queued
107
+ * before rendering carry older props and must not land after that commit: a
108
+ * parent passing a raw theme value re-renders the view with the new value
109
+ * while the view's own theme listener queued a push of the old one
110
+ */
111
+ export declare function supersedeNativeViewStates(id: number): void;
105
112
  //# sourceMappingURL=nativeStyleEngine.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"nativeStyleEngine.d.ts","sourceRoot":"","sources":["../../src/helpers/nativeStyleEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nativeStyleEngine.d.ts","sourceRoot":"","sources":["../../src/helpers/nativeStyleEngine.ts"],"names":[],"mappings":"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"}