zyzz 0.0.22 → 0.0.24

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 (96) hide show
  1. package/README.md +6 -6
  2. package/dist/babel/NativeJsx.d.ts.map +1 -1
  3. package/dist/babel/NativeJsx.js +14 -4
  4. package/dist/babel/NativeJsx.js.map +1 -1
  5. package/dist/compiler/Graph.js +78 -35
  6. package/dist/compiler/Graph.js.map +1 -1
  7. package/dist/compiler/internal/Dynamic.d.ts.map +1 -1
  8. package/dist/compiler/internal/Dynamic.js +3 -0
  9. package/dist/compiler/internal/Dynamic.js.map +1 -1
  10. package/dist/compiler/internal/Expression.js +2 -2
  11. package/dist/compiler/internal/Expression.js.map +1 -1
  12. package/dist/compiler/internal/NativeBindings.d.ts.map +1 -1
  13. package/dist/compiler/internal/NativeBindings.js +1 -0
  14. package/dist/compiler/internal/NativeBindings.js.map +1 -1
  15. package/dist/compiler/internal/NativeVars.d.ts.map +1 -1
  16. package/dist/compiler/internal/NativeVars.js +3 -0
  17. package/dist/compiler/internal/NativeVars.js.map +1 -1
  18. package/dist/compiler/internal/Themes.d.ts +2 -0
  19. package/dist/compiler/internal/Themes.d.ts.map +1 -1
  20. package/dist/compiler/internal/Themes.js +24 -22
  21. package/dist/compiler/internal/Themes.js.map +1 -1
  22. package/dist/internal/Configuration.d.ts.map +1 -1
  23. package/dist/internal/Configuration.js +2 -1
  24. package/dist/internal/Configuration.js.map +1 -1
  25. package/dist/metro/Graph.d.ts.map +1 -1
  26. package/dist/metro/Graph.js +11 -2
  27. package/dist/metro/Graph.js.map +1 -1
  28. package/dist/node/Host.d.ts.map +1 -1
  29. package/dist/node/Host.js +40 -12
  30. package/dist/node/Host.js.map +1 -1
  31. package/dist/react-native/StyleSheet.d.ts +7 -3
  32. package/dist/react-native/StyleSheet.d.ts.map +1 -1
  33. package/dist/react-native/StyleSheet.js +8 -0
  34. package/dist/react-native/StyleSheet.js.map +1 -1
  35. package/dist/react-native/internal/Device.js +118 -38
  36. package/dist/react-native/internal/Device.js.map +3 -3
  37. package/dist/react-native/internal/NativeZyzz.js.map +2 -2
  38. package/dist/react-native/internal/Scalar.d.ts +16 -0
  39. package/dist/react-native/internal/Scalar.d.ts.map +1 -1
  40. package/dist/react-native/internal/Scalar.js +53 -2
  41. package/dist/react-native/internal/Scalar.js.map +1 -1
  42. package/dist/react-native/internal/Store.d.ts +4 -0
  43. package/dist/react-native/internal/Store.d.ts.map +1 -1
  44. package/dist/react-native/internal/Store.js.map +1 -1
  45. package/dist/react-native/internal/Styles.d.ts +19 -0
  46. package/dist/react-native/internal/Styles.d.ts.map +1 -0
  47. package/dist/react-native/internal/Styles.js +35 -0
  48. package/dist/react-native/internal/Styles.js.map +1 -0
  49. package/dist/react-native/internal/Viewport.d.ts +6 -0
  50. package/dist/react-native/internal/Viewport.d.ts.map +1 -1
  51. package/dist/react-native/internal/Viewport.js +2 -0
  52. package/dist/react-native/internal/Viewport.js.map +1 -1
  53. package/dist/react-native/react.d.ts +44 -16
  54. package/dist/react-native/react.d.ts.map +1 -1
  55. package/dist/react-native/react.js +68 -47
  56. package/dist/react-native/react.js.map +1 -1
  57. package/dist/runtime/NativeContext.d.ts +6 -0
  58. package/dist/runtime/NativeContext.d.ts.map +1 -1
  59. package/dist/runtime/NativeContext.js +62 -9
  60. package/dist/runtime/NativeContext.js.map +1 -1
  61. package/dist/runtime/NativeDynamic.d.ts.map +1 -1
  62. package/dist/runtime/NativeDynamic.js +5 -0
  63. package/dist/runtime/NativeDynamic.js.map +1 -1
  64. package/dist/unplugin/index.d.ts.map +1 -1
  65. package/dist/unplugin/index.js +4 -1
  66. package/dist/unplugin/index.js.map +1 -1
  67. package/dist/variants.d.ts +3 -2
  68. package/dist/variants.d.ts.map +1 -1
  69. package/dist/variants.js.map +1 -1
  70. package/native/NativeZyzz.cpp +52 -65
  71. package/native/NativeZyzz.h +0 -4
  72. package/native/ZyzzSpecJSI.h +0 -10
  73. package/native/android/ZyzzSpec-generated.cpp +0 -6
  74. package/package.json +1 -1
  75. package/src/babel/NativeJsx.ts +17 -8
  76. package/src/compiler/Graph.ts +89 -38
  77. package/src/compiler/internal/Dynamic.ts +4 -0
  78. package/src/compiler/internal/Expression.ts +2 -2
  79. package/src/compiler/internal/NativeBindings.ts +1 -0
  80. package/src/compiler/internal/NativeVars.ts +3 -0
  81. package/src/compiler/internal/Themes.ts +29 -23
  82. package/src/internal/Configuration.ts +2 -1
  83. package/src/metro/Graph.ts +17 -2
  84. package/src/node/Host.ts +64 -17
  85. package/src/react-native/StyleSheet.ts +32 -9
  86. package/src/react-native/internal/Device.ts +196 -49
  87. package/src/react-native/internal/NativeZyzz.ts +4 -6
  88. package/src/react-native/internal/Scalar.ts +73 -2
  89. package/src/react-native/internal/Store.ts +4 -0
  90. package/src/react-native/internal/Styles.ts +77 -0
  91. package/src/react-native/internal/Viewport.ts +7 -0
  92. package/src/react-native/react.ts +142 -72
  93. package/src/runtime/NativeContext.ts +83 -9
  94. package/src/runtime/NativeDynamic.ts +7 -0
  95. package/src/unplugin/index.ts +4 -1
  96. package/src/variants.ts +3 -2
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/unplugin/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/unplugin/index.ts"],"names":[],"mappings":"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"}
@@ -13,11 +13,12 @@ type Conditions<definition> = definition extends {
13
13
  readonly conditions: infer conditions;
14
14
  } ? conditions : {};
15
15
  type ChoiceName<choices> = keyof choices extends infer key ? key extends 'true' | 'false' ? key extends 'true' ? true : false : key extends string ? key : never : never;
16
+ /** `void` targets skip dynamic choice return types, which resolve through `Checked` and cycle when selections are read first. */
16
17
  type DynamicKeys<choices> = {
17
- [key in keyof choices]: choices[key] extends (...args: never[]) => unknown ? key : never;
18
+ [key in keyof choices]: choices[key] extends (...args: never[]) => void ? key : never;
18
19
  }[keyof choices];
19
20
  type Choice<choices> = ChoiceName<Omit<choices, DynamicKeys<choices>>> | {
20
- [key in DynamicKeys<choices>]: choices[key] extends (values: infer values) => unknown ? {
21
+ [key in DynamicKeys<choices>]: choices[key] extends (values: infer values) => void ? {
21
22
  readonly [name in key]: values;
22
23
  } & {
23
24
  readonly [name in Exclude<keyof choices, key>]?: never;
@@ -1 +1 @@
1
- {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../src/variants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../src/variants.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"variants.js","sourceRoot":"","sources":["../src/variants.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,OAAO,KAAK,SAAS,MAAM,yBAAyB,CAAA;AAuNpD;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CACtB,UAEsC,EACtC,OAAO,GAA4B,EAAE;IAErC,OAAO,SAAS,CAAC,QAAQ,CACvB,UAAU,EACV,OAAO,CAC2B,CAAA;AACtC,CAAC;AAiCD,wDAAwD;AACxD,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,mDAAmD;IACnD;QACE,KAAK,CACH,4FAA4F,CAC7F,CAAA;IACH,CAAC;IACD,qCAAqC;IAC5B,IAAI,GAAG,gCAAgC,CAAA;CACjD"}
1
+ {"version":3,"file":"variants.js","sourceRoot":"","sources":["../src/variants.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,OAAO,KAAK,SAAS,MAAM,yBAAyB,CAAA;AAwNpD;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CACtB,UAEsC,EACtC,OAAO,GAA4B,EAAE;IAErC,OAAO,SAAS,CAAC,QAAQ,CACvB,UAAU,EACV,OAAO,CAC2B,CAAA;AACtC,CAAC;AAiCD,wDAAwD;AACxD,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,mDAAmD;IACnD;QACE,KAAK,CACH,4FAA4F,CAC7F,CAAA;IACH,CAAC;IACD,qCAAqC;IAC5B,IAAI,GAAG,gCAAgC,CAAA;CACjD"}
@@ -1,12 +1,12 @@
1
1
  /** Applies scoped style changes and preserves them through Fabric commits. */
2
2
  #include "NativeZyzz.h"
3
3
  #include <functional>
4
+ #include <optional>
4
5
  #include <unordered_set>
5
6
  #include <jsi/JSIDynamic.h>
6
7
  #include <react/renderer/bridging/bridging.h>
7
8
  #include <react/renderer/core/PropsParserContext.h>
8
9
  #include <react/renderer/mounting/ShadowTree.h>
9
- #include <react/renderer/mounting/ShadowTreeRegistry.h>
10
10
 
11
11
  namespace facebook::react {
12
12
 
@@ -19,53 +19,11 @@ NativeZyzz::~NativeZyzz() {
19
19
  if (manager_) manager_->unregisterCommitHook(*this);
20
20
  }
21
21
 
22
- double NativeZyzz::attach(jsi::Runtime &runtime, jsi::Object node, jsi::Object props) {
23
- auto shadowNode = Bridging<std::shared_ptr<const ShadowNode>>::fromJs(
24
- runtime, jsi::Value(runtime, node));
25
- auto values = jsi::dynamicFromValue(runtime, jsi::Value(runtime, props));
26
- if (!values.isObject()) throw jsi::JSError(runtime, "Native styles must be an object.");
27
-
28
- if (!binding_) {
29
- binding_ = UIManagerBinding::getBinding(runtime);
30
- if (!binding_) throw jsi::JSError(runtime, "Zyzz requires Fabric.");
31
- manager_ = &binding_->getUIManager();
32
- manager_->registerCommitHook(*this);
33
- }
34
-
35
- double id;
36
- {
37
- std::lock_guard<std::mutex> lock(mutex_);
38
- id = ++nextId_;
39
- entries_.emplace(id, Entry{shadowNode->getFamilyShared(), values, values,
40
- folly::dynamic::object(), shadowNode->getProps(), nullptr});
41
- }
42
- // A React commit can restore its earlier rendered props before the ref relinks.
43
- write({{shadowNode->getTag(), std::move(values)}});
44
- return id;
45
- }
46
-
47
22
  void NativeZyzz::detach(jsi::Runtime &, double id) {
48
- std::shared_ptr<ShadowNodeFamily> family;
49
- Props::Shared authored;
50
- {
51
- std::lock_guard<std::mutex> lock(mutex_);
52
- const auto entry = entries_.find(id);
53
- if (entry == entries_.end()) return;
54
- if (!entry->second.overlay.empty()) {
55
- family = entry->second.family.lock();
56
- authored = entry->second.authored;
57
- }
58
- entries_.erase(entry);
59
- }
60
- if (!family || !authored) return;
61
- // The React commit has already passed through the overlay hook when an old
62
- // ref is detached. Restore that commit's authored props, not the old style.
63
- manager_->getShadowTreeRegistry().visit(family->getSurfaceId(), [&](const ShadowTree &tree) {
64
- tree.commit([&](const RootShadowNode &root) {
65
- return std::static_pointer_cast<RootShadowNode>(root.cloneTree(*family,
66
- [&](const ShadowNode &node) { return node.clone({.props = authored}); }));
67
- }, {.mountSynchronously = true});
68
- });
23
+ // React detaches refs before completing the root in the same commit, so its
24
+ // own props replace the overlay without a separate restoring commit.
25
+ std::lock_guard<std::mutex> lock(mutex_);
26
+ entries_.erase(id);
69
27
  }
70
28
 
71
29
  jsi::Object NativeZyzz::inspect(jsi::Runtime &runtime) {
@@ -78,18 +36,55 @@ jsi::Object NativeZyzz::inspect(jsi::Runtime &runtime) {
78
36
  }
79
37
 
80
38
  void NativeZyzz::update(jsi::Runtime &runtime, std::vector<jsi::Object> updates) {
81
- std::vector<std::pair<double, folly::dynamic>> selections;
39
+ struct Selection {
40
+ double id;
41
+ folly::dynamic props;
42
+ ShadowNodeFamily::Shared family;
43
+ folly::dynamic rendered;
44
+ };
45
+ struct Converted {
46
+ std::optional<jsi::Object> source;
47
+ folly::dynamic value;
48
+ };
49
+ // Views sharing a compiled style pass the same object, so reuse its last conversion.
50
+ Converted props, rendered;
51
+ const auto read = [&](const jsi::Object &update, const char *name, Converted &cache) {
52
+ auto value = update.getProperty(runtime, name);
53
+ if (!value.isObject()) throw jsi::JSError(runtime, "Native styles must be an object.");
54
+ auto object = value.asObject(runtime);
55
+ if (!cache.source || !jsi::Object::strictEquals(runtime, *cache.source, object)) {
56
+ cache.value = jsi::dynamicFromValue(runtime, value);
57
+ cache.source = std::move(object);
58
+ }
59
+ return cache.value;
60
+ };
61
+
62
+ std::vector<Selection> selections;
63
+ selections.reserve(updates.size());
82
64
  for (const auto &update : updates) {
83
- auto id = update.getProperty(runtime, "id").asNumber();
84
- auto props = jsi::dynamicFromValue(runtime, update.getProperty(runtime, "props"));
85
- if (!props.isObject()) throw jsi::JSError(runtime, "Native styles must be an object.");
86
- selections.emplace_back(id, std::move(props));
65
+ Selection selection{update.getProperty(runtime, "id").asNumber(),
66
+ read(update, "props", props), nullptr, nullptr};
67
+ // A first update binds its mounted node to the style React rendered.
68
+ if (update.hasProperty(runtime, "node")) {
69
+ if (!binding_) {
70
+ binding_ = UIManagerBinding::getBinding(runtime);
71
+ if (!binding_) throw jsi::JSError(runtime, "Zyzz requires Fabric.");
72
+ manager_ = &binding_->getUIManager();
73
+ manager_->registerCommitHook(*this);
74
+ }
75
+ selection.family = Bridging<std::shared_ptr<const ShadowNode>>::fromJs(
76
+ runtime, update.getProperty(runtime, "node"))->getFamilyShared();
77
+ selection.rendered = read(update, "rendered", rendered);
78
+ }
79
+ selections.push_back(std::move(selection));
87
80
  }
88
81
 
89
82
  std::unordered_map<Tag, folly::dynamic> patches;
90
83
  {
91
84
  std::lock_guard<std::mutex> lock(mutex_);
92
- for (auto &[id, selected] : selections) {
85
+ for (auto &[id, selected, bound, initial] : selections) {
86
+ if (bound)
87
+ entries_.try_emplace(id, Entry{bound, initial, initial, folly::dynamic::object()});
93
88
  auto entry = entries_.find(id);
94
89
  if (entry == entries_.end()) continue;
95
90
  auto family = entry->second.family.lock();
@@ -140,10 +135,12 @@ std::shared_ptr<RootShadowNode> NativeZyzz::shadowTreeWillCommit(
140
135
  const ShadowTree &tree,
141
136
  const std::shared_ptr<const RootShadowNode> &,
142
137
  const std::shared_ptr<RootShadowNode> &next) noexcept {
138
+ // Our own patch commit already carries every selection, and other overlays
139
+ // persist from the committed tree it clones.
140
+ if (writing_ == this) return next;
143
141
  struct Overlay {
144
142
  std::shared_ptr<ShadowNodeFamily> family;
145
143
  folly::dynamic props;
146
- double id;
147
144
  };
148
145
  std::unordered_map<const ShadowNodeFamily *, Overlay> overlays;
149
146
  {
@@ -156,7 +153,7 @@ std::shared_ptr<RootShadowNode> NativeZyzz::shadowTreeWillCommit(
156
153
  }
157
154
  if (family->getSurfaceId() == tree.getSurfaceId() &&
158
155
  !entry->second.overlay.empty())
159
- overlays.emplace(family.get(), Overlay{family, entry->second.overlay, entry->first});
156
+ overlays.emplace(family.get(), Overlay{family, entry->second.overlay});
160
157
  ++entry;
161
158
  }
162
159
  }
@@ -193,16 +190,6 @@ std::shared_ptr<RootShadowNode> NativeZyzz::shadowTreeWillCommit(
193
190
  ? node->getProps()
194
191
  : node->getComponentDescriptor().cloneProps(
195
192
  context, node->getProps(), RawProps(overlay->second.props));
196
- if (overlay != overlays.end()) {
197
- std::lock_guard<std::mutex> lock(mutex_);
198
- const auto entry = entries_.find(overlay->second.id);
199
- if (entry != entries_.end()) {
200
- // Skip our own native patches and nodes reused from an earlier overlay.
201
- if (writing_ != this && node->getProps() != entry->second.applied)
202
- entry->second.authored = node->getProps();
203
- entry->second.applied = props;
204
- }
205
- }
206
193
  return std::shared_ptr<const ShadowNode>(node->clone({
207
194
  .props = props,
208
195
  .children = children ? children : ShadowNodeFragment::childrenPlaceholder(),
@@ -15,7 +15,6 @@ class NativeZyzz : public NativeZyzzCxxSpec<NativeZyzz>, public UIManagerCommitH
15
15
  explicit NativeZyzz(std::shared_ptr<CallInvoker> invoker);
16
16
  ~NativeZyzz() override;
17
17
 
18
- double attach(jsi::Runtime &runtime, jsi::Object node, jsi::Object props);
19
18
  void detach(jsi::Runtime &runtime, double id);
20
19
  jsi::Object inspect(jsi::Runtime &runtime);
21
20
  void update(jsi::Runtime &runtime, std::vector<jsi::Object> updates);
@@ -33,8 +32,6 @@ class NativeZyzz : public NativeZyzzCxxSpec<NativeZyzz>, public UIManagerCommitH
33
32
  folly::dynamic rendered;
34
33
  folly::dynamic selected;
35
34
  folly::dynamic overlay;
36
- Props::Shared authored;
37
- Props::Shared applied;
38
35
  };
39
36
 
40
37
  void write(std::unordered_map<Tag, folly::dynamic> patches);
@@ -44,7 +41,6 @@ class NativeZyzz : public NativeZyzzCxxSpec<NativeZyzz>, public UIManagerCommitH
44
41
  UIManager *manager_ = nullptr;
45
42
  std::unordered_map<double, Entry> entries_;
46
43
  std::mutex mutex_;
47
- double nextId_ = 0;
48
44
  double batches_ = 0;
49
45
  double writes_ = 0;
50
46
  };
@@ -22,22 +22,12 @@ public:
22
22
 
23
23
  protected:
24
24
  NativeZyzzCxxSpec(std::shared_ptr<CallInvoker> jsInvoker) : TurboModule(std::string{NativeZyzzCxxSpec::kModuleName}, jsInvoker) {
25
- methodMap_["attach"] = MethodMetadata {.argCount = 2, .invoker = __attach};
26
25
  methodMap_["detach"] = MethodMetadata {.argCount = 1, .invoker = __detach};
27
26
  methodMap_["inspect"] = MethodMetadata {.argCount = 0, .invoker = __inspect};
28
27
  methodMap_["update"] = MethodMetadata {.argCount = 1, .invoker = __update};
29
28
  }
30
29
 
31
30
  private:
32
- static jsi::Value __attach(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
33
- static_assert(
34
- bridging::getParameterCount(&T::attach) == 3,
35
- "Expected attach(...) to have 3 parameters");
36
- return bridging::callFromJs<double>(rt, &T::attach, static_cast<NativeZyzzCxxSpec*>(&turboModule)->jsInvoker_, static_cast<T*>(&turboModule),
37
- count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asObject(rt),
38
- count <= 1 ? throw jsi::JSError(rt, "Expected argument in position 1 to be passed") : args[1].asObject(rt));
39
- }
40
-
41
31
  static jsi::Value __detach(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
42
32
  static_assert(
43
33
  bridging::getParameterCount(&T::detach) == 2,
@@ -12,11 +12,6 @@
12
12
 
13
13
  namespace facebook::react {
14
14
 
15
- static facebook::jsi::Value __hostFunction_NativeZyzzSpecJSI_attach(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
16
- static jmethodID cachedMethodId = nullptr;
17
- return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, NumberKind, "attach", "(Lcom/facebook/react/bridge/ReadableMap;Lcom/facebook/react/bridge/ReadableMap;)D", args, count, cachedMethodId);
18
- }
19
-
20
15
  static facebook::jsi::Value __hostFunction_NativeZyzzSpecJSI_detach(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
21
16
  static jmethodID cachedMethodId = nullptr;
22
17
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, VoidKind, "detach", "(D)V", args, count, cachedMethodId);
@@ -34,7 +29,6 @@ static facebook::jsi::Value __hostFunction_NativeZyzzSpecJSI_update(facebook::js
34
29
 
35
30
  NativeZyzzSpecJSI::NativeZyzzSpecJSI(const JavaTurboModule::InitParams &params)
36
31
  : JavaTurboModule(params) {
37
- methodMap_["attach"] = MethodMetadata {2, __hostFunction_NativeZyzzSpecJSI_attach};
38
32
  methodMap_["detach"] = MethodMetadata {1, __hostFunction_NativeZyzzSpecJSI_detach};
39
33
  methodMap_["inspect"] = MethodMetadata {0, __hostFunction_NativeZyzzSpecJSI_inspect};
40
34
  methodMap_["update"] = MethodMetadata {1, __hostFunction_NativeZyzzSpecJSI_update};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zyzz",
3
- "version": "0.0.22",
3
+ "version": "0.0.24",
4
4
  "license": "MIT",
5
5
  "description": "Modern, universal, simple styling library for the Web and React Native",
6
6
  "repository": {
@@ -355,8 +355,10 @@ export function visitor(
355
355
  },
356
356
  },
357
357
  JSXAttribute(path, state) {
358
+ const name = path.node.name
358
359
  if (
359
- !t.isJSXIdentifier(path.node.name, { name: 'style' }) ||
360
+ !t.isJSXIdentifier(name) ||
361
+ (name.name !== 'style' && !name.name.endsWith('Style')) ||
360
362
  !t.isJSXExpressionContainer(path.node.value) ||
361
363
  t.isJSXEmptyExpression(path.node.value.expression)
362
364
  )
@@ -384,10 +386,13 @@ export function visitor(
384
386
  )
385
387
  return
386
388
  }
389
+ // Unlike style, other style props stay untouched outside components, so class and module-scope JSX keep compiling.
390
+ if (name.name !== 'style' && !component(path)) return
387
391
  const binding = owner(
388
392
  path,
389
393
  files.get(state.file)!,
390
- native.has(path.parentPath.node as Babel.types.JSXOpeningElement)
394
+ name.name === 'style' &&
395
+ native.has(path.parentPath.node as Babel.types.JSXOpeningElement)
391
396
  ? 'nativeStyle'
392
397
  : 'style',
393
398
  )
@@ -497,11 +502,7 @@ export function visitor(
497
502
 
498
503
  return false
499
504
  }
500
- function owner(
501
- path: Babel.NodePath,
502
- owners: Owners,
503
- method: Method,
504
- ): Babel.types.Identifier {
505
+ function component(path: Babel.NodePath) {
505
506
  const parent = path.findParent((candidate) => {
506
507
  if (!candidate.isFunction()) return false
507
508
  let declaration = candidate.parentPath
@@ -518,7 +519,15 @@ export function visitor(
518
519
  candidate.parentPath.isExportDefaultDeclaration()
519
520
  )
520
521
  })
521
- if (!parent?.isFunction() || parent.isClassMethod())
522
+ return parent?.isFunction() && !parent.isClassMethod() ? parent : undefined
523
+ }
524
+ function owner(
525
+ path: Babel.NodePath,
526
+ owners: Owners,
527
+ method: Method,
528
+ ): Babel.types.Identifier {
529
+ const parent = component(path)
530
+ if (!parent)
522
531
  throw path.buildCodeFrameError(
523
532
  'Native style props must be rendered in a function component or custom hook.',
524
533
  )
@@ -1106,6 +1106,34 @@ function build(options: compile.Options, cache?: Cache): Cache {
1106
1106
  }
1107
1107
  return value
1108
1108
  }
1109
+
1110
+ function encode(read: Omit<Themes.VarsRead, 'end' | 'start'>) {
1111
+ try {
1112
+ return JSON.stringify(
1113
+ NativeVars.compile({
1114
+ ...read,
1115
+ fonts: native.fonts,
1116
+ units: native.units,
1117
+ }),
1118
+ )
1119
+ } catch (error) {
1120
+ throw new Native.CompileError((error as Error).message)
1121
+ }
1122
+ }
1123
+
1124
+ function define(owner: string, value: string) {
1125
+ const definitions = profile(owner).definitions
1126
+ let name = definitions.get(value)
1127
+ if (!name) {
1128
+ // Hashing the owner keeps names independent of which modules share the graph.
1129
+ name = `__zyzzProfile${Identity.hash(owner + value)}`
1130
+ while (reserved.has(name)) name += '_'
1131
+ reserved.add(name)
1132
+ definitions.set(value, name)
1133
+ }
1134
+ return name
1135
+ }
1136
+
1109
1137
  if (ids.some((id) => extracted.get(id)!.nativeVars?.length))
1110
1138
  NativeStyleSheet.compile({
1111
1139
  fonts: native.fonts,
@@ -1113,57 +1141,80 @@ function build(options: compile.Options, cache?: Cache): Cache {
1113
1141
  units: native.units,
1114
1142
  styles: { styles: [] },
1115
1143
  })
1144
+
1145
+ // Single-file adapters compile each owner without its consumers, so owners publish every exported profile.
1146
+ if (native[Edits.runtime])
1147
+ for (const moduleId of ids)
1148
+ for (const link of Object.values(
1149
+ extracted.get(moduleId)!.themeExports ?? {},
1150
+ )) {
1151
+ if (
1152
+ owners[link.call.name]?.moduleId !== moduleId ||
1153
+ !(
1154
+ link.call.variableSet ||
1155
+ (link.kind === 'config' &&
1156
+ link.call.variableConfig &&
1157
+ !link.call.initialization &&
1158
+ !link.call.root)
1159
+ )
1160
+ )
1161
+ continue
1162
+ const value = (() => {
1163
+ try {
1164
+ return encode(Themes.varsRead(link))
1165
+ } catch {
1166
+ // Consumers that read this profile report the same error.
1167
+ return undefined
1168
+ }
1169
+ })()
1170
+ if (value !== undefined) define(moduleId, value)
1171
+ }
1172
+
1116
1173
  for (const moduleId of ids) {
1117
1174
  for (const read of extracted.get(moduleId)!.nativeVars ?? []) {
1118
1175
  const owner = owners[read.owner]?.moduleId
1119
- // Single-file adapters cannot publish changes to dependency modules.
1120
- // Packed catalogs without source also retain their local fallback.
1121
- if (
1122
- native[Edits.runtime] ||
1123
- !owner ||
1124
- !Object.hasOwn(options.modules, owner)
1125
- )
1126
- continue
1127
- let value: string
1128
- try {
1129
- value = JSON.stringify(
1130
- NativeVars.compile({
1131
- ...read,
1132
- fonts: native.fonts,
1133
- units: native.units,
1134
- }),
1176
+ // Packed catalogs without source retain their local fallback.
1177
+ if (!owner || !Object.hasOwn(options.modules, owner)) continue
1178
+
1179
+ const value = encode(read)
1180
+ const name = native[Edits.runtime]
1181
+ ? profiles.get(owner)?.definitions.get(value)
1182
+ : define(owner, value)
1183
+ if (!name) continue
1184
+
1185
+ const source = (() => {
1186
+ if (owner === moduleId) return undefined
1187
+
1188
+ // Host identities are opaque, so reuse the consumer's own resolved specifier.
1189
+ if (native[Edits.runtime] && options.imports) {
1190
+ const imports = options.imports[moduleId] ?? {}
1191
+ return Object.keys(imports).find((key) => imports[key] === owner)
1192
+ }
1193
+
1194
+ const from = moduleId.split('/').slice(0, -1)
1195
+ const to = owner.split('/')
1196
+ while (from.length && from[0] === to[0]) {
1197
+ from.shift()
1198
+ to.shift()
1199
+ }
1200
+ return (
1201
+ (from.length ? '../'.repeat(from.length) : './') +
1202
+ to.join('/').replace(/\.([cm]?)tsx?$/, '.$1js')
1135
1203
  )
1136
- } catch (error) {
1137
- throw new Native.CompileError((error as Error).message)
1138
- }
1139
- const definitions = profile(owner).definitions
1140
- let name = definitions.get(value)
1141
- if (!name) {
1142
- name = `__zyzzProfile${Identity.hash(value)}`
1143
- while (reserved.has(name)) name += '_'
1144
- reserved.add(name)
1145
- definitions.set(value, name)
1146
- }
1147
- const from = moduleId.split('/').slice(0, -1)
1148
- const to = owner.split('/')
1149
- while (from.length && from[0] === to[0]) {
1150
- from.shift()
1151
- to.shift()
1152
- }
1153
- const source =
1154
- (from.length ? '../'.repeat(from.length) : './') +
1155
- to.join('/').replace(/\.([cm]?)tsx?$/, '.$1js')
1204
+ })()
1205
+ if (owner !== moduleId && !source) continue
1156
1206
  profile(moduleId).reads.set(read.start, {
1157
1207
  name,
1158
- ...(owner !== moduleId ? { source } : {}),
1208
+ ...(source ? { source } : {}),
1159
1209
  })
1160
1210
  }
1161
1211
  }
1162
1212
  const modules = Object.fromEntries(
1163
1213
  ids.map((moduleId) => {
1214
+ // Single-file profiles derive only from this module's extraction and its dependencies.
1164
1215
  if (
1165
1216
  previous &&
1166
- !profiles.size &&
1217
+ (native[Edits.runtime] || !profiles.size) &&
1167
1218
  extracted.get(moduleId) === previous.extracted.get(moduleId)
1168
1219
  )
1169
1220
  return [moduleId, previous.result.modules[moduleId]!]
@@ -154,6 +154,10 @@ export function read(
154
154
  (value) => Number.isSafeInteger(value) && value !== 0,
155
155
  )
156
156
 
157
+ // Native conversion rejects degenerate and negative ratios.
158
+ if (rule.kind === 'ratio')
159
+ return values.every((value) => Number.isFinite(value) && value > 0)
160
+
157
161
  if (rule.kind !== 'number') return false
158
162
 
159
163
  return values.every(
@@ -21,7 +21,7 @@ export function acceptsColor(
21
21
  return 'var(--zyzz-reference)'
22
22
  })
23
23
  .join('')
24
- .replace(/ !important$/, '')
24
+ .replace(/(?: !custom)?(?: !important)?$/, '')
25
25
 
26
26
  try {
27
27
  return (
@@ -61,7 +61,7 @@ export function acceptsVariables(
61
61
  (value) =>
62
62
  Tree.lexer.matchProperty(
63
63
  Literal.name(property),
64
- value.replace(/ !important$/, ''),
64
+ value.replace(/(?: !custom)?(?: !important)?$/, ''),
65
65
  ).error === null,
66
66
  )
67
67
  } catch {