@symbiote-native/angular 0.6.2 → 0.8.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.
Files changed (191) hide show
  1. package/README.md +3 -3
  2. package/bin/symbiote-angular-dev.cjs +20 -19
  3. package/build/angular/anchor-host-registry.js +2 -2
  4. package/build/angular/anchor-host-registry.js.map +1 -1
  5. package/build/angular/bootstrap.js +1 -1
  6. package/build/angular/bootstrap.js.map +1 -1
  7. package/build/angular/components/activity-indicator/index.android.d.ts +2 -1
  8. package/build/angular/components/activity-indicator/index.android.js +12 -4
  9. package/build/angular/components/activity-indicator/index.android.js.map +1 -1
  10. package/build/angular/components/activity-indicator/index.ios.d.ts +2 -1
  11. package/build/angular/components/activity-indicator/index.ios.js +8 -3
  12. package/build/angular/components/activity-indicator/index.ios.js.map +1 -1
  13. package/build/angular/components/activity-indicator/shared.d.ts +1 -1
  14. package/build/angular/components/activity-indicator/shared.js +4 -4
  15. package/build/angular/components/activity-indicator/shared.js.map +1 -1
  16. package/build/angular/components/button.d.ts +4 -2
  17. package/build/angular/components/button.js +41 -22
  18. package/build/angular/components/button.js.map +1 -1
  19. package/build/angular/components/flat-list/index.d.ts +6 -4
  20. package/build/angular/components/flat-list/index.js +80 -50
  21. package/build/angular/components/flat-list/index.js.map +1 -1
  22. package/build/angular/components/image/index.android.d.ts +8 -3
  23. package/build/angular/components/image/index.android.js +42 -10
  24. package/build/angular/components/image/index.android.js.map +1 -1
  25. package/build/angular/components/image/index.ios.d.ts +8 -3
  26. package/build/angular/components/image/index.ios.js +42 -10
  27. package/build/angular/components/image/index.ios.js.map +1 -1
  28. package/build/angular/components/image/shared.d.ts +4 -1
  29. package/build/angular/components/image/shared.js +51 -8
  30. package/build/angular/components/image/shared.js.map +1 -1
  31. package/build/angular/components/image-background.d.ts +2 -1
  32. package/build/angular/components/image-background.js +26 -10
  33. package/build/angular/components/image-background.js.map +1 -1
  34. package/build/angular/components/input-accessory-view/index.d.ts +9 -4
  35. package/build/angular/components/input-accessory-view/index.js +49 -10
  36. package/build/angular/components/input-accessory-view/index.js.map +1 -1
  37. package/build/angular/components/keyboard-avoiding-view/index.d.ts +3 -1
  38. package/build/angular/components/keyboard-avoiding-view/index.js +44 -12
  39. package/build/angular/components/keyboard-avoiding-view/index.js.map +1 -1
  40. package/build/angular/components/modal/index.d.ts +11 -8
  41. package/build/angular/components/modal/index.js +51 -29
  42. package/build/angular/components/modal/index.js.map +1 -1
  43. package/build/angular/components/pressable/index.d.ts +12 -6
  44. package/build/angular/components/pressable/index.js +66 -13
  45. package/build/angular/components/pressable/index.js.map +1 -1
  46. package/build/angular/components/refresh-control/index.d.ts +8 -4
  47. package/build/angular/components/refresh-control/index.js +54 -16
  48. package/build/angular/components/refresh-control/index.js.map +1 -1
  49. package/build/angular/components/safe-area-view/index.d.ts +9 -4
  50. package/build/angular/components/safe-area-view/index.js +48 -9
  51. package/build/angular/components/safe-area-view/index.js.map +1 -1
  52. package/build/angular/components/scroll-view/index.android.d.ts +2 -3
  53. package/build/angular/components/scroll-view/index.android.js +88 -61
  54. package/build/angular/components/scroll-view/index.android.js.map +1 -1
  55. package/build/angular/components/scroll-view/index.ios.d.ts +2 -3
  56. package/build/angular/components/scroll-view/index.ios.js +24 -18
  57. package/build/angular/components/scroll-view/index.ios.js.map +1 -1
  58. package/build/angular/components/scroll-view/projection.d.ts +35 -0
  59. package/build/angular/components/scroll-view/projection.js +279 -53
  60. package/build/angular/components/scroll-view/projection.js.map +1 -1
  61. package/build/angular/components/scroll-view/shared.d.ts +14 -5
  62. package/build/angular/components/scroll-view/shared.js +225 -75
  63. package/build/angular/components/scroll-view/shared.js.map +1 -1
  64. package/build/angular/components/scroll-view/sticky-header.js +21 -22
  65. package/build/angular/components/scroll-view/sticky-header.js.map +1 -1
  66. package/build/angular/components/section-list/index.d.ts +7 -1
  67. package/build/angular/components/section-list/index.js +91 -54
  68. package/build/angular/components/section-list/index.js.map +1 -1
  69. package/build/angular/components/switch/index.android.d.ts +7 -3
  70. package/build/angular/components/switch/index.android.js +52 -10
  71. package/build/angular/components/switch/index.android.js.map +1 -1
  72. package/build/angular/components/switch/index.ios.d.ts +7 -3
  73. package/build/angular/components/switch/index.ios.js +52 -10
  74. package/build/angular/components/switch/index.ios.js.map +1 -1
  75. package/build/angular/components/switch/shared.d.ts +13 -4
  76. package/build/angular/components/switch/shared.js +71 -7
  77. package/build/angular/components/switch/shared.js.map +1 -1
  78. package/build/angular/components/text-input.d.ts +11 -3
  79. package/build/angular/components/text-input.js +68 -8
  80. package/build/angular/components/text-input.js.map +1 -1
  81. package/build/angular/components/touchable/index.d.ts +40 -9
  82. package/build/angular/components/touchable/index.js +303 -67
  83. package/build/angular/components/touchable/index.js.map +1 -1
  84. package/build/angular/components/touchable-native-feedback/index.d.ts +6 -3
  85. package/build/angular/components/touchable-native-feedback/index.js +63 -27
  86. package/build/angular/components/touchable-native-feedback/index.js.map +1 -1
  87. package/build/angular/components/virtualized-list/directives.js +22 -18
  88. package/build/angular/components/virtualized-list/directives.js.map +1 -1
  89. package/build/angular/components/virtualized-list/index.d.ts +15 -4
  90. package/build/angular/components/virtualized-list/index.js +326 -94
  91. package/build/angular/components/virtualized-list/index.js.map +1 -1
  92. package/build/angular/components/virtualized-section-list/directives.js +12 -12
  93. package/build/angular/components/virtualized-section-list/directives.js.map +1 -1
  94. package/build/angular/components/virtualized-section-list/index.d.ts +19 -1
  95. package/build/angular/components/virtualized-section-list/index.js +93 -22
  96. package/build/angular/components/virtualized-section-list/index.js.map +1 -1
  97. package/build/angular/components.d.ts +2 -2
  98. package/build/angular/components.js +5 -0
  99. package/build/angular/components.js.map +1 -1
  100. package/build/angular/create-portal/index.js +34 -36
  101. package/build/angular/create-portal/index.js.map +1 -1
  102. package/build/angular/create-tunnel/index.js +19 -22
  103. package/build/angular/create-tunnel/index.js.map +1 -1
  104. package/build/angular/descriptor-to-angular/index.js +6 -4
  105. package/build/angular/descriptor-to-angular/index.js.map +1 -1
  106. package/build/angular/diagnostics.d.ts +33 -0
  107. package/build/angular/diagnostics.js +82 -0
  108. package/build/angular/diagnostics.js.map +1 -0
  109. package/build/angular/host-instance/index.js +1 -1
  110. package/build/angular/host-instance/index.js.map +1 -1
  111. package/build/angular/index.d.ts +9 -4
  112. package/build/angular/index.js +17 -3
  113. package/build/angular/index.js.map +1 -1
  114. package/build/angular/modules/animated/animated-leaf-binder.d.ts +1 -7
  115. package/build/angular/modules/animated/animated-leaf-binder.js +22 -72
  116. package/build/angular/modules/animated/animated-leaf-binder.js.map +1 -1
  117. package/build/angular/modules/animated/create-animated-component.d.ts +11 -6
  118. package/build/angular/modules/animated/create-animated-component.js +106 -55
  119. package/build/angular/modules/animated/create-animated-component.js.map +1 -1
  120. package/build/angular/modules/status-bar/index.js +4 -4
  121. package/build/angular/modules/status-bar/index.js.map +1 -1
  122. package/build/angular/primitives/index.d.ts +20 -3
  123. package/build/angular/primitives/index.js +84 -48
  124. package/build/angular/primitives/index.js.map +1 -1
  125. package/build/angular/primitives/shared.d.ts +48 -2
  126. package/build/angular/primitives/shared.js +158 -11
  127. package/build/angular/primitives/shared.js.map +1 -1
  128. package/build/angular/render/index.js +69 -38
  129. package/build/angular/render/index.js.map +1 -1
  130. package/build/angular/renderer/index.d.ts +1 -0
  131. package/build/angular/renderer/index.js +37 -2
  132. package/build/angular/renderer/index.js.map +1 -1
  133. package/build/angular/services/color-scheme.service.js +3 -3
  134. package/build/angular/services/color-scheme.service.js.map +1 -1
  135. package/build/angular/services/window-dimensions.service.js +4 -4
  136. package/build/angular/services/window-dimensions.service.js.map +1 -1
  137. package/package.json +10 -8
  138. package/src/anchor-host-registry.ts +2 -2
  139. package/src/bootstrap.ts +4 -1
  140. package/src/components/activity-indicator/index.android.ts +8 -1
  141. package/src/components/activity-indicator/index.ios.ts +4 -0
  142. package/src/components/activity-indicator/shared.ts +32 -13
  143. package/src/components/button.ts +46 -19
  144. package/src/components/flat-list/index.ts +122 -62
  145. package/src/components/image/index.android.ts +58 -7
  146. package/src/components/image/index.ios.ts +58 -7
  147. package/src/components/image/shared.ts +92 -21
  148. package/src/components/image-background.ts +29 -9
  149. package/src/components/input-accessory-view/index.ts +67 -12
  150. package/src/components/keyboard-avoiding-view/index.ts +61 -15
  151. package/src/components/modal/index.ts +72 -33
  152. package/src/components/pressable/index.ts +117 -28
  153. package/src/components/refresh-control/index.ts +74 -18
  154. package/src/components/safe-area-view/index.ts +64 -10
  155. package/src/components/scroll-view/index.android.ts +62 -47
  156. package/src/components/scroll-view/index.ios.ts +19 -17
  157. package/src/components/scroll-view/projection.ts +363 -64
  158. package/src/components/scroll-view/shared.ts +312 -90
  159. package/src/components/scroll-view/sticky-header.ts +36 -24
  160. package/src/components/section-list/index.ts +86 -53
  161. package/src/components/switch/index.android.ts +60 -8
  162. package/src/components/switch/index.ios.ts +60 -8
  163. package/src/components/switch/shared.ts +93 -6
  164. package/src/components/text-input.ts +95 -13
  165. package/src/components/touchable/index.ts +348 -64
  166. package/src/components/touchable-native-feedback/index.ts +94 -31
  167. package/src/components/virtualized-list/directives.ts +19 -5
  168. package/src/components/virtualized-list/index.ts +380 -85
  169. package/src/components/virtualized-section-list/directives.ts +6 -3
  170. package/src/components/virtualized-section-list/index.ts +146 -33
  171. package/src/components.ts +9 -1
  172. package/src/create-portal/index.ts +31 -31
  173. package/src/create-tunnel/index.ts +16 -17
  174. package/src/descriptor-to-angular/index.ts +29 -8
  175. package/src/diagnostics.ts +138 -0
  176. package/src/host-instance/index.ts +9 -3
  177. package/src/index.ts +61 -3
  178. package/src/modules/animated/animated-leaf-binder.ts +28 -77
  179. package/src/modules/animated/create-animated-component.ts +115 -47
  180. package/src/modules/app-registry/index.ts +9 -9
  181. package/src/modules/status-bar/index.ts +13 -4
  182. package/src/primitives/index.ts +47 -2
  183. package/src/primitives/shared.ts +170 -10
  184. package/src/render/index.ts +77 -39
  185. package/src/renderer/index.ts +76 -14
  186. package/src/services/color-scheme.service.ts +3 -1
  187. package/src/services/window-dimensions.service.ts +11 -4
  188. package/build/angular/modules/animated/animated-leaf-binder/index.d.ts +0 -14
  189. package/build/angular/modules/animated/animated-leaf-binder/index.js +0 -91
  190. package/build/angular/modules/animated/animated-leaf-binder/index.js.map +0 -1
  191. package/src/modules/animated/animated-leaf-binder/index.ts +0 -101
@@ -24,6 +24,11 @@ export { VirtualizedSectionList, VSectionFooterDirective, VSectionHeaderDirectiv
24
24
  export { SectionList } from './components/section-list';
25
25
  // Re-export primitive hosts so composed components can import them from the public barrel too.
26
26
  export { ViewHost, ViewHost as View, TextHost, TextHost as Text, ImageHost, ScrollViewHost, ScrollContentView, HorizontalScrollView, HorizontalScrollContentView, TextInputHost, MultilineTextInputHost, SwitchHost, ActivityIndicatorHost, SafeAreaViewHost, ModalHost, RefreshControlHost, InputAccessoryViewHost, SymbioteHostPropsDirective,
27
+ // Public even though no app names it: it rides `hostDirectives` on every component declaring a
28
+ // `style` input, so ngtsc writes it into their public type metadata and a consuming app's AOT
29
+ // build fails with NG3004 without it. Invisible to tsc and vitest; only a consumer's ngc catches
30
+ // it.
31
+ SymbioteStyleInputDirective,
27
32
  // Exported so an OUT-OF-PACKAGE composed component (e.g. @symbiote-native/slider's Angular wrapper,
28
33
  // itself listed in ANCHOR_HOST_COMPONENTS) can merge its own anchor host's class-derived style
29
34
  // the same way every in-package composed component does — see anchorHostStyle's doc comment.
@@ -1 +1 @@
1
- {"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/components.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,gGAAgG;AAChG,+FAA+F;AAC/F,8FAA8F;AAC9F,kFAAkF;AAElF,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAEvE,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAgB3C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAK3E,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AASpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAOjF,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,wBAAwB,CAAC;AAMhC,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAM9E,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,+BAA+B,CAAC;AAcvC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,uCAAuC,CAAC;AAQ/C,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAGxD,+FAA+F;AAC/F,OAAO,EACL,QAAQ,EACR,QAAQ,IAAI,IAAI,EAChB,QAAQ,EACR,QAAQ,IAAI,IAAI,EAChB,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,2BAA2B,EAC3B,aAAa,EACb,sBAAsB,EACtB,UAAU,EACV,qBAAqB,EACrB,gBAAgB,EAChB,SAAS,EACT,kBAAkB,EAClB,sBAAsB,EACtB,0BAA0B;AAC1B,oGAAoG;AACpG,+FAA+F;AAC/F,6FAA6F;AAC7F,eAAe;AACf,4FAA4F;AAC5F,0FAA0F;AAC1F,oDAAoD;AACpD,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAE5B,sFAAsF;AACtF,wFAAwF;AACxF,4CAA4C"}
1
+ {"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/components.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,gGAAgG;AAChG,+FAA+F;AAC/F,8FAA8F;AAC9F,kFAAkF;AAElF,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAEvE,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAgB3C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAK3E,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AASpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAOjF,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,wBAAwB,CAAC;AAMhC,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAM9E,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,+BAA+B,CAAC;AAcvC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,uCAAuC,CAAC;AAQ/C,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAMxD,+FAA+F;AAC/F,OAAO,EACL,QAAQ,EACR,QAAQ,IAAI,IAAI,EAChB,QAAQ,EACR,QAAQ,IAAI,IAAI,EAChB,SAAS,EACT,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,2BAA2B,EAC3B,aAAa,EACb,sBAAsB,EACtB,UAAU,EACV,qBAAqB,EACrB,gBAAgB,EAChB,SAAS,EACT,kBAAkB,EAClB,sBAAsB,EACtB,0BAA0B;AAC1B,+FAA+F;AAC/F,8FAA8F;AAC9F,iGAAiG;AACjG,MAAM;AACN,2BAA2B;AAC3B,oGAAoG;AACpG,+FAA+F;AAC/F,6FAA6F;AAC7F,eAAe;AACf,4FAA4F;AAC5F,0FAA0F;AAC1F,oDAAoD;AACpD,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAE5B,sFAAsF;AACtF,wFAAwF;AACxF,4CAA4C"}
@@ -1,38 +1,32 @@
1
1
  // createPortal for @symbiote-native/angular — the Angular twin of the React/Vue same-surface portal
2
- // (create-portal.ts / Teleport in runtime-helpers.ts). Scope is identical: the target must be
3
- // an already-mounted location WITHIN THE SAME SURFACE as the portal's call site — moving content
4
- // across independently-mounted surfaces has no safe host-level primitive to hook into, so
5
- // createTunnel (create-tunnel.ts) covers that cross-surface case instead.
2
+ // (create-portal.ts / Teleport in runtime-helpers.ts). Scope is identical: the target must be an
3
+ // already-mounted location WITHIN THE SAME SURFACE as the portal's call site — moving content
4
+ // across independently-mounted surfaces has no safe host-level primitive, so createTunnel
5
+ // (create-tunnel.ts) covers that cross-surface case instead.
6
6
  //
7
- // React/Vue implement this as a thin validating wrapper around a mechanism the FRAMEWORK
8
- // ITSELF already has (react-reconciler's Fiber-level HostPortal, Vue's own <Teleport>) all
9
- // the actual node-moving is handled generically by the engine's insert/remove, which those
10
- // frameworks already call. Angular has no such built-in: there is no `@angular/cdk` dependency
11
- // here (core-only, see package.json), and physically moving an EmbeddedView's already-created
12
- // root nodes via Renderer2 after the fact is NOT safe Angular's own view-destroy path removes
13
- // a view's nodes from wherever ITS OWN bookkeeping thinks they live (the container's insertion
14
- // point), not from wherever a node was manually moved to afterwards, so a raw Renderer2 move
15
- // would desync Angular's internals from the retained tree.
7
+ // React/Vue implement this as a thin validating wrapper around a mechanism the framework itself
8
+ // already has (react-reconciler's Fiber-level HostPortal, Vue's own <Teleport>). Angular has no
9
+ // such built-in (no `@angular/cdk` dependency here, core-only see package.json), and physically
10
+ // moving an EmbeddedView's already-created root nodes via Renderer2 after the fact is NOT safe
11
+ // Angular's own view-destroy path removes a view's nodes from wherever ITS OWN bookkeeping thinks
12
+ // they live, not from wherever a node was manually moved to, so a raw Renderer2 move would desync
13
+ // Angular's internals from the retained tree.
16
14
  //
17
- // PortalDirective is a STRUCTURAL directive (`*portal="overlayHost"`), not a component that
18
- // takes a separate `<ng-template>` + `[content]` binding — that two-step reads as foreign to
19
- // anyone used to `*ngIf`/`*ngFor`/`*ngTemplateOutlet`, where the directive sits directly on the
20
- // content and its TemplateRef comes from injection, not a passed-in reference. `*portal="x"`
21
- // desugars the same way `*ngIf` does: Angular wraps the host element in an `<ng-template>` and
22
- // injects that template's own TemplateRef into the directive automatically.
15
+ // PortalDirective is a STRUCTURAL directive (`*portal="overlayHost"`), not a component taking a
16
+ // separate `<ng-template>` + `[content]` binding — that two-step reads as foreign next to
17
+ // `*ngIf`/`*ngFor`/`*ngTemplateOutlet`. `*portal="x"` desugars the same way `*ngIf` does: Angular
18
+ // wraps the host element in an `<ng-template>` and injects that template's own TemplateRef into
19
+ // the directive automatically.
23
20
  //
24
21
  // The safe, fully-public-API mechanism: create the embedded view DIRECTLY inside a
25
22
  // ViewContainerRef anchored at the destination, so there is nothing to move at all. That
26
- // ViewContainerRef has to come from somewhere in the destination's own template hence
27
- // `PortalOutletDirective`, a marker placed on the target host (`<View portalOutlet
28
- // #overlayHost="portalOutlet">`) purely to expose its ViewContainerRef, the same
29
- // export-as-template-variable idiom `#form="ngForm"` uses. This also replaces the
30
- // `isSymbioteNode` runtime guard React/Vue need: there `to` is an arbitrary JS value at
31
- // runtime (a wrong ref, a string, a plain object all type-check as `any`/`unknown` until
32
- // validated), but here `to` is typed as `PortalOutletDirective` the only way to construct
33
- // one is Angular's own template compiler resolving a template reference variable, so
34
- // `strictTemplates` rejects anything else at compile time and there is nothing left to guard
35
- // against at runtime.
23
+ // ViewContainerRef comes from `PortalOutletDirective`, a marker placed on the target host
24
+ // (`<View portalOutlet #overlayHost="portalOutlet">`) purely to expose its ViewContainerRef, the
25
+ // same export-as-template-variable idiom `#form="ngForm"` uses. This also replaces the
26
+ // `isSymbioteNode` runtime guard React/Vue need (there `to` is an arbitrary JS value until
27
+ // validated): here `to` is typed as `PortalOutletDirective` the only way to construct one is
28
+ // Angular's own template compiler resolving a template reference variable, so `strictTemplates`
29
+ // rejects anything else at compile time and there is nothing left to guard at runtime.
36
30
  import { Directive, inject, Input, TemplateRef, ViewContainerRef, } from '@angular/core';
37
31
  import * as i0 from "@angular/core";
38
32
  /** Marks the destination for `*portal` — place it on whichever already-mounted host should
@@ -40,12 +34,16 @@ import * as i0 from "@angular/core";
40
34
  * export it to a template variable and pass that variable as `*portal`'s target. */
41
35
  export class PortalOutletDirective {
42
36
  viewContainerRef = inject(ViewContainerRef);
43
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: PortalOutletDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
44
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.5", type: PortalOutletDirective, isStandalone: true, selector: "[portalOutlet]", exportAs: ["portalOutlet"], ngImport: i0 });
37
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: PortalOutletDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
38
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: PortalOutletDirective, isStandalone: true, selector: "[portalOutlet]", exportAs: ["portalOutlet"], ngImport: i0 });
45
39
  }
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: PortalOutletDirective, decorators: [{
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: PortalOutletDirective, decorators: [{
47
41
  type: Directive,
48
- args: [{ selector: '[portalOutlet]', standalone: true, exportAs: 'portalOutlet' }]
42
+ args: [{
43
+ selector: '[portalOutlet]',
44
+ standalone: true,
45
+ exportAs: 'portalOutlet',
46
+ }]
49
47
  }] });
50
48
  /** `*portal="overlayHost"` — renders the host element into whichever `PortalOutletDirective`
51
49
  * `overlayHost` refers to, same surface only (see the file header). Combine with `@if` for
@@ -61,10 +59,10 @@ export class PortalDirective {
61
59
  ngOnDestroy() {
62
60
  this.viewRef?.destroy();
63
61
  }
64
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: PortalDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
65
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.5", type: PortalDirective, isStandalone: true, selector: "[portal]", inputs: { portal: "portal" }, usesOnChanges: true, ngImport: i0 });
62
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: PortalDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
63
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: PortalDirective, isStandalone: true, selector: "[portal]", inputs: { portal: "portal" }, usesOnChanges: true, ngImport: i0 });
66
64
  }
67
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: PortalDirective, decorators: [{
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: PortalDirective, decorators: [{
68
66
  type: Directive,
69
67
  args: [{ selector: '[portal]', standalone: true }]
70
68
  }], propDecorators: { portal: [{
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/create-portal/index.ts"],"names":[],"mappings":"AAAA,oGAAoG;AACpG,8FAA8F;AAC9F,iGAAiG;AACjG,0FAA0F;AAC1F,0EAA0E;AAC1E,EAAE;AACF,yFAAyF;AACzF,6FAA6F;AAC7F,2FAA2F;AAC3F,+FAA+F;AAC/F,8FAA8F;AAC9F,gGAAgG;AAChG,+FAA+F;AAC/F,6FAA6F;AAC7F,2DAA2D;AAC3D,EAAE;AACF,4FAA4F;AAC5F,6FAA6F;AAC7F,gGAAgG;AAChG,6FAA6F;AAC7F,+FAA+F;AAC/F,4EAA4E;AAC5E,EAAE;AACF,mFAAmF;AACnF,yFAAyF;AACzF,wFAAwF;AACxF,mFAAmF;AACnF,iFAAiF;AACjF,kFAAkF;AAClF,wFAAwF;AACxF,yFAAyF;AACzF,4FAA4F;AAC5F,qFAAqF;AACrF,6FAA6F;AAC7F,sBAAsB;AAEtB,OAAO,EACL,SAAS,EACT,MAAM,EACN,KAAK,EACL,WAAW,EACX,gBAAgB,GAIjB,MAAM,eAAe,CAAC;;AAEvB;;qFAEqF;AAErF,MAAM,OAAO,qBAAqB;IACvB,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;uGAD1C,qBAAqB;2FAArB,qBAAqB;;2FAArB,qBAAqB;kBADjC,SAAS;mBAAC,EAAE,QAAQ,EAAE,gBAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE;;AAKrF;;oDAEoD;AAEpD,MAAM,OAAO,eAAe;IACC,MAAM,CAAyB;IAEzC,WAAW,GAAG,MAAM,CAAuB,WAAW,CAAC,CAAC;IACjE,OAAO,GAAoC,IAAI,CAAC;IAExD,WAAW;QACT,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACnF,CAAC;IAED,WAAW;QACT,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;IAC1B,CAAC;uGAbU,eAAe;2FAAf,eAAe;;2FAAf,eAAe;kBAD3B,SAAS;mBAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE;;sBAElD,KAAK;uBAAC,EAAE,QAAQ,EAAE,IAAI,EAAE"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/create-portal/index.ts"],"names":[],"mappings":"AAAA,oGAAoG;AACpG,iGAAiG;AACjG,8FAA8F;AAC9F,0FAA0F;AAC1F,6DAA6D;AAC7D,EAAE;AACF,gGAAgG;AAChG,gGAAgG;AAChG,kGAAkG;AAClG,iGAAiG;AACjG,kGAAkG;AAClG,kGAAkG;AAClG,8CAA8C;AAC9C,EAAE;AACF,gGAAgG;AAChG,0FAA0F;AAC1F,kGAAkG;AAClG,gGAAgG;AAChG,+BAA+B;AAC/B,EAAE;AACF,mFAAmF;AACnF,yFAAyF;AACzF,0FAA0F;AAC1F,iGAAiG;AACjG,uFAAuF;AACvF,2FAA2F;AAC3F,+FAA+F;AAC/F,gGAAgG;AAChG,uFAAuF;AAEvF,OAAO,EACL,SAAS,EACT,MAAM,EACN,KAAK,EACL,WAAW,EACX,gBAAgB,GAIjB,MAAM,eAAe,CAAC;;AAEvB;;qFAEqF;AAMrF,MAAM,OAAO,qBAAqB;IACvB,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;uGAD1C,qBAAqB;2FAArB,qBAAqB;;2FAArB,qBAAqB;kBALjC,SAAS;mBAAC;oBACT,QAAQ,EAAE,gBAAgB;oBAC1B,UAAU,EAAE,IAAI;oBAChB,QAAQ,EAAE,cAAc;iBACzB;;AAKD;;oDAEoD;AAEpD,MAAM,OAAO,eAAe;IACC,MAAM,CAAyB;IAEzC,WAAW,GAAG,MAAM,CAAuB,WAAW,CAAC,CAAC;IACjE,OAAO,GAAoC,IAAI,CAAC;IAExD,WAAW;QACT,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,kBAAkB,CAC5D,IAAI,CAAC,WAAW,CACjB,CAAC;IACJ,CAAC;IAED,WAAW;QACT,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;IAC1B,CAAC;uGAfU,eAAe;2FAAf,eAAe;;2FAAf,eAAe;kBAD3B,SAAS;mBAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE;;sBAElD,KAAK;uBAAC,EAAE,QAAQ,EAAE,IAAI,EAAE"}
@@ -1,25 +1,22 @@
1
1
  // createTunnel for @symbiote-native/angular — the Angular twin of the React/Vue cross-surface tunnel
2
2
  // (adapters/react/src/create-tunnel.tsx, adapters/vue/src/create-tunnel.ts — read their
3
- // headers for the full "why not just extend the portal across surfaces" rationale; same prior
4
- // art: pmndrs/tunnel-rat, facebook/react#17147). `TunnelOut` lives in whichever component should
5
- // PAINT the content; its OWN read of the shared store drives that surface's own normal render
6
- // cycle — no cross-surface reach-in, no rootTag lookup, works whether TunnelIn and TunnelOut
7
- // share a surface or not.
3
+ // headers for the "why not just extend the portal across surfaces" rationale; same prior art:
4
+ // pmndrs/tunnel-rat, facebook/react#17147). `TunnelOut` lives in whichever component should PAINT
5
+ // the content; its own read of the shared store drives that surface's own normal render cycle —
6
+ // no cross-surface reach-in, works whether TunnelIn and TunnelOut share a surface or not.
8
7
  //
9
- // Angular cannot mirror React's/Vue's shape verbatim: both of those build a FRESH `In`/`Out`
10
- // pair per `createTunnel()` call (a closure-scoped class in Vue, closure-scoped functions in
11
- // React). Angular components can't be synthesized at runtime — there is no JIT compiler under
12
- // Metro/Hermes (see modules/animated/create-animated-component.ts's header for the same
8
+ // Angular cannot mirror React's/Vue's shape verbatim: both build a FRESH `In`/`Out` pair per
9
+ // `createTunnel()` call, and Angular components can't be synthesized at runtime — no JIT compiler
10
+ // under Metro/Hermes (see modules/animated/create-animated-component.ts's header for the same
13
11
  // constraint). So here `createTunnel()` returns only a plain reactive STORE (a signal);
14
12
  // `TunnelInDirective` and `TunnelOut` are ONE static, pre-authored, AOT-compilable pair,
15
- // parameterized by that store through an input — same relationship `VListOutletDirective` has
16
- // to the per-cell template it stamps, generalized to an open-ended, changing SET of templates.
13
+ // parameterized by that store through an input — the relationship `VListOutletDirective` has to
14
+ // the per-cell template it stamps, generalized to an open-ended, changing SET of templates.
17
15
  //
18
- // TunnelInDirective is a STRUCTURAL directive (`*tunnelIn="overlayTunnel"`), not a component
19
- // that takes a separate `<ng-template>` + `[content]` binding matching `*portal` (see
20
- // create-portal.ts's header for why that reads as native Angular and the two-step form
21
- // doesn't). `TunnelOut` stays a plain component (`<tunnel-out>`) — it's a rendering SLOT, the
22
- // same shape as Angular's own `<router-outlet>`, not content that needs a structural directive.
16
+ // TunnelInDirective is a STRUCTURAL directive (`*tunnelIn="overlayTunnel"`), matching `*portal`
17
+ // (see create-portal.ts's header for why that reads as native Angular). `TunnelOut` stays a plain
18
+ // component (`<tunnel-out>`) a rendering SLOT, the same shape as Angular's own
19
+ // `<router-outlet>`, not content that needs a structural directive.
23
20
  //
24
21
  // App code stays fully declarative — no ViewContainerRef/imperative rendering — by putting
25
22
  // `*tunnelIn` directly on the portable content, the same way `*ngIf` sits directly on an
@@ -68,10 +65,10 @@ export class TunnelInDirective {
68
65
  ngOnDestroy() {
69
66
  this.tunnelIn.unregister(this.id);
70
67
  }
71
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: TunnelInDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
72
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.5", type: TunnelInDirective, isStandalone: true, selector: "[tunnelIn]", inputs: { tunnelIn: "tunnelIn" }, ngImport: i0 });
68
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: TunnelInDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
69
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: TunnelInDirective, isStandalone: true, selector: "[tunnelIn]", inputs: { tunnelIn: "tunnelIn" }, ngImport: i0 });
73
70
  }
74
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: TunnelInDirective, decorators: [{
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: TunnelInDirective, decorators: [{
75
72
  type: Directive,
76
73
  args: [{ selector: '[tunnelIn]', standalone: true }]
77
74
  }], propDecorators: { tunnelIn: [{
@@ -109,10 +106,10 @@ export class TunnelOut {
109
106
  this.views.set(id, this.viewContainerRef.createEmbeddedView(templateRef));
110
107
  }
111
108
  }
112
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: TunnelOut, deps: [], target: i0.ɵɵFactoryTarget.Component });
113
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.5", type: TunnelOut, isStandalone: true, selector: "tunnel-out", inputs: { tunnel: "tunnel" }, ngImport: i0, template: '', isInline: true });
109
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: TunnelOut, deps: [], target: i0.ɵɵFactoryTarget.Component });
110
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.8", type: TunnelOut, isStandalone: true, selector: "tunnel-out", inputs: { tunnel: "tunnel" }, ngImport: i0, template: '', isInline: true });
114
111
  }
115
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: TunnelOut, decorators: [{
112
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: TunnelOut, decorators: [{
116
113
  type: Component,
117
114
  args: [{
118
115
  selector: 'tunnel-out',
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/create-tunnel/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/create-tunnel/index.ts"],"names":[],"mappings":"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"}
@@ -30,7 +30,9 @@ export class DescriptorOutlet {
30
30
  return this.patchElement(this.hostNode, rendered, next);
31
31
  }
32
32
  createChild(child) {
33
- return typeof child === 'string' ? this.createText(child) : this.createElement(child);
33
+ return typeof child === 'string'
34
+ ? this.createText(child)
35
+ : this.createElement(child);
34
36
  }
35
37
  createText(value) {
36
38
  return { kind: 'text', node: this.renderer.createText(value), value };
@@ -121,10 +123,10 @@ export class DescriptorOutlet {
121
123
  this.renderer.insertBefore(parent, newChild, oldChild);
122
124
  this.renderer.removeChild(parent, oldChild);
123
125
  }
124
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: DescriptorOutlet, deps: [], target: i0.ɵɵFactoryTarget.Component });
125
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.5", type: DescriptorOutlet, isStandalone: true, selector: "symbiote-descriptor-outlet", inputs: { node: "node" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
126
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: DescriptorOutlet, deps: [], target: i0.ɵɵFactoryTarget.Component });
127
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.8", type: DescriptorOutlet, isStandalone: true, selector: "symbiote-descriptor-outlet", inputs: { node: "node" }, usesOnChanges: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
126
128
  }
127
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: DescriptorOutlet, decorators: [{
129
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: DescriptorOutlet, decorators: [{
128
130
  type: Component,
129
131
  args: [{
130
132
  selector: 'symbiote-descriptor-outlet',
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/descriptor-to-angular/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/descriptor-to-angular/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ export interface IAngularProfile {
2
+ cdPasses: number;
3
+ viewsChecked: number;
4
+ rendererWrites: number;
5
+ nodesCreated: number;
6
+ nodesInserted: number;
7
+ nodesRemoved: number;
8
+ styleChecks: number;
9
+ styleMarks: number;
10
+ listChecks: number;
11
+ listRecomputes: number;
12
+ listMarks: number;
13
+ scrollTicks: number;
14
+ outletCreates: number;
15
+ outletUpdates: number;
16
+ outletDestroys: number;
17
+ projectionSchedules: number;
18
+ projectionFlushes: number;
19
+ stickyWrapperCreates: number;
20
+ stickyWrapperReuses: number;
21
+ }
22
+ type IAngularCounter = keyof IAngularProfile;
23
+ export declare function countAngular(counter: IAngularCounter): void;
24
+ export declare function readAngularProfile(): IAngularProfile;
25
+ export declare function setAngularProfileDetail(enabled: boolean): void;
26
+ export declare function noteAngularWrite(propName: string): void;
27
+ export declare function noteAngularCreate(tagName: string): void;
28
+ export interface IAngularProfileDetail {
29
+ writesByProp: readonly (readonly [string, number])[];
30
+ createsByTag: readonly (readonly [string, number])[];
31
+ }
32
+ export declare function readAngularProfileDetail(): IAngularProfileDetail;
33
+ export {};
@@ -0,0 +1,82 @@
1
+ // Per-window counters for the Angular adapter, the twin of the engine's readCommitProfile().
2
+ // The engine's number answers "what did the commit walk cost"; these answer the question one layer
3
+ // up, which is the one Angular keeps losing: HOW MANY TIMES did anything run at all.
4
+ //
5
+ // Angular is the only adapter whose update model can free-run. A change-detection pass that writes
6
+ // a fresh reference into a downstream @Input marks a view dirty, the zoneless scheduler books
7
+ // another pass, and it never settles - the hazard `stableAnchorStyle` and VirtualizedList's
8
+ // `lastRecompute` gate each guard one instance of. A guard that stops holding is INVISIBLE from the
9
+ // outside: the screen paints correctly, only the frame rate collapses. `cdPasses` at rest is what
10
+ // makes it visible, and every other counter here narrows the same window to a suspect.
11
+ //
12
+ // Deliberately NOT gated behind isDebug(): an integer increment is noise next to the work it
13
+ // counts, and the numbers are only meaningful from a RELEASE build (dev-mode Angular runs its own
14
+ // checks and drowns the signal). The per-name detail map IS gated, since it allocates.
15
+ function createCounters() {
16
+ return {
17
+ cdPasses: 0,
18
+ viewsChecked: 0,
19
+ rendererWrites: 0,
20
+ nodesCreated: 0,
21
+ nodesInserted: 0,
22
+ nodesRemoved: 0,
23
+ styleChecks: 0,
24
+ styleMarks: 0,
25
+ listChecks: 0,
26
+ listRecomputes: 0,
27
+ listMarks: 0,
28
+ scrollTicks: 0,
29
+ outletCreates: 0,
30
+ outletUpdates: 0,
31
+ outletDestroys: 0,
32
+ projectionSchedules: 0,
33
+ projectionFlushes: 0,
34
+ stickyWrapperCreates: 0,
35
+ stickyWrapperReuses: 0,
36
+ };
37
+ }
38
+ let counters = createCounters();
39
+ export function countAngular(counter) {
40
+ counters[counter] += 1;
41
+ }
42
+ // Reading zeroes the counters, so a sampler on an interval gets disjoint windows rather than a
43
+ // growing total - same contract as readCommitProfile().
44
+ export function readAngularProfile() {
45
+ const snapshot = counters;
46
+ counters = createCounters();
47
+ return snapshot;
48
+ }
49
+ // Which prop names the renderer actually rewrites, and which host tags get created. Off by default
50
+ // because it allocates per write; the probe screen turns it on for one sample. A write nothing
51
+ // asked for is the whole diagnosis, and the prop NAME is what points at the binding responsible.
52
+ let isDetailEnabled = false;
53
+ const writesByProp = new Map();
54
+ const createsByTag = new Map();
55
+ export function setAngularProfileDetail(enabled) {
56
+ isDetailEnabled = enabled;
57
+ if (!enabled) {
58
+ writesByProp.clear();
59
+ createsByTag.clear();
60
+ }
61
+ }
62
+ export function noteAngularWrite(propName) {
63
+ if (!isDetailEnabled)
64
+ return;
65
+ writesByProp.set(propName, (writesByProp.get(propName) ?? 0) + 1);
66
+ }
67
+ export function noteAngularCreate(tagName) {
68
+ if (!isDetailEnabled)
69
+ return;
70
+ createsByTag.set(tagName, (createsByTag.get(tagName) ?? 0) + 1);
71
+ }
72
+ // Sorted hottest-first and read-and-cleared, so a sample names its own top offenders.
73
+ export function readAngularProfileDetail() {
74
+ const detail = {
75
+ writesByProp: [...writesByProp.entries()].sort((a, b) => b[1] - a[1]),
76
+ createsByTag: [...createsByTag.entries()].sort((a, b) => b[1] - a[1]),
77
+ };
78
+ writesByProp.clear();
79
+ createsByTag.clear();
80
+ return detail;
81
+ }
82
+ //# sourceMappingURL=diagnostics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../src/diagnostics.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@
12
12
  // - null/undefined -> null
13
13
  // An uncommitted or unknown input surfaces as null.
14
14
  import { ElementRef } from '@angular/core';
15
- import { getNativeTag, isSymbioteNode } from '@symbiote-native/engine';
15
+ import { getNativeTag, isSymbioteNode, } from '@symbiote-native/engine';
16
16
  function resolveHostNode(candidate) {
17
17
  if (candidate === null || candidate === undefined)
18
18
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/host-instance/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,0FAA0F;AAC1F,uDAAuD;AACvD,EAAE;AACF,+FAA+F;AAC/F,0FAA0F;AAC1F,0EAA0E;AAC1E,iCAAiC;AACjC,4CAA4C;AAC5C,mDAAmD;AACnD,yFAAyF;AACzF,6BAA6B;AAC7B,oDAAoD;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,cAAc,EAAsB,MAAM,yBAAyB,CAAC;AAI3F,SAAS,eAAe,CAAC,SAAkB;IACzC,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC/D,IAAI,cAAc,CAAC,SAAS,CAAC;QAAE,OAAO,SAAS,CAAC;IAChD,IAAI,SAAS,YAAY,UAAU;QAAE,OAAO,eAAe,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IACrF,MAAM,SAAS,GAAG,SAAwC,CAAC;IAC3D,IAAI,OAAO,SAAS,CAAC,aAAa,KAAK,WAAW,EAAE,CAAC;QACnD,OAAO,eAAe,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,iBAA0B;IACvD,IAAI,iBAAiB,KAAK,IAAI,IAAI,iBAAiB,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC/E,IAAI,OAAO,iBAAiB,KAAK,QAAQ;QAAE,OAAO,iBAAiB,CAAC;IACpE,MAAM,IAAI,GAAG,eAAe,CAAC,iBAAiB,CAAC,CAAC;IAChD,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACpD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/host-instance/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,0FAA0F;AAC1F,uDAAuD;AACvD,EAAE;AACF,+FAA+F;AAC/F,0FAA0F;AAC1F,0EAA0E;AAC1E,iCAAiC;AACjC,4CAA4C;AAC5C,mDAAmD;AACnD,yFAAyF;AACzF,6BAA6B;AAC7B,oDAAoD;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EACL,YAAY,EACZ,cAAc,GAEf,MAAM,yBAAyB,CAAC;AAIjC,SAAS,eAAe,CAAC,SAAkB;IACzC,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC/D,IAAI,cAAc,CAAC,SAAS,CAAC;QAAE,OAAO,SAAS,CAAC;IAChD,IAAI,SAAS,YAAY,UAAU;QACjC,OAAO,eAAe,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,SAAwC,CAAC;IAC3D,IAAI,OAAO,SAAS,CAAC,aAAa,KAAK,WAAW,EAAE,CAAC;QACnD,OAAO,eAAe,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,iBAA0B;IACvD,IAAI,iBAAiB,KAAK,IAAI,IAAI,iBAAiB,KAAK,SAAS;QAC/D,OAAO,IAAI,CAAC;IACd,IAAI,OAAO,iBAAiB,KAAK,QAAQ;QAAE,OAAO,iBAAiB,CAAC;IACpE,MAAM,IAAI,GAAG,eAAe,CAAC,iBAAiB,CAAC,CAAC;IAChD,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACpD,CAAC"}
@@ -1,12 +1,13 @@
1
- export { ActivityIndicator, anchorHostStyle, Button, FlatList, HorizontalScrollContentView, HorizontalScrollView, Image, ImageBackground, InputAccessoryView, KeyboardAvoidingView, Modal, Pressable, RefreshControl, SafeAreaView, ScrollContentView, ScrollView, ScrollViewStickyHeader, SectionList, stableAnchorStyle, Switch, SymbioteHostPropsDirective, Text, TextInput, TouchableHighlight, TouchableNativeFeedback, TouchableOpacity, TouchableWithoutFeedback, View, VirtualizedList, VirtualizedSectionList, VListEmptyDirective, VListFooterDirective, VListHeaderDirective, VListItemDirective, VListSeparatorDirective, VSectionFooterDirective, VSectionHeaderDirective, VSectionItemDirective, VSectionSeparatorDirective, } from './components';
1
+ export { ActivityIndicator, anchorHostStyle, Button, FlatList, HorizontalScrollContentView, HorizontalScrollView, Image, ImageBackground, InputAccessoryView, KeyboardAvoidingView, Modal, Pressable, RefreshControl, SafeAreaView, ScrollContentView, ScrollView, ScrollViewStickyHeader, SectionList, stableAnchorStyle, Switch, SymbioteHostPropsDirective, SymbioteStyleInputDirective, Text, TextInput, TouchableHighlight, TouchableNativeFeedback, TouchableOpacity, TouchableWithoutFeedback, View, VirtualizedList, VirtualizedSectionList, VListEmptyDirective, VListFooterDirective, VListHeaderDirective, VListItemDirective, VListSeparatorDirective, VSectionFooterDirective, VSectionHeaderDirective, VSectionItemDirective, VSectionSeparatorDirective, } from './components';
2
2
  export { Animated } from './modules/animated';
3
3
  export { AnimatedFlatList, AnimatedImage, AnimatedScrollView, AnimatedSectionList, AnimatedText, AnimatedView, } from './modules/animated';
4
+ export { createAnimatedComponent } from './modules/animated';
4
5
  export type { IActivityIndicatorProps, IAngularImageBackgroundProps, IAngularInputAccessoryViewProps, IAngularKeyboardAvoidingViewProps, IAngularModalProps, IAngularPressableProps, IAngularRefreshControlProps, IAngularSafeAreaViewProps, IAngularScrollViewProps, IAngularTextInputProps, IAngularTouchableHighlightProps, IAngularTouchableNativeFeedbackProps, IAngularTouchableOpacityProps, IAngularTouchableWithoutFeedbackProps, IButtonProps, ICellLayout, IFlatListHandle, IFlatListProps, IEnterKeyHint, IImageCacheStatus, IImageProps, IImageSize, IImageSource, IImageSourceProp, IInputMode, IKeyboardAvoidingBehavior, IModalAnimationType, IModalOrientation, IModalOrientationChangeEvent, IModalPresentationStyle, INativeFeedbackBackground, IResizeMode, IRippleBackground, IScrollViewHandle, ISectionListHandle, ISectionListProps, ISeparatorProps, ISeparators, IStickyHeaderComponentType, ISubmitBehavior, IThemeAttrBackground, IViewabilityConfig, IViewabilityConfigCallbackPair, IViewableItemsChangedInfo, IViewToken, IVirtualizedListHandle, IVirtualizedListProps, IVirtualizedSectionListHandle, IVirtualizedSectionListProps, IVListItemContext, IVListSeparatorContext, IVSectionContext, IVSectionItemContext, ISection, ISwitchProps, ISwitchTrackColor, ITextInputHandle, ITextInputSelection, } from './components';
5
6
  export { setImageSourceResolver } from './components';
6
7
  export { mount, unmount } from './render';
7
8
  export { DescriptorOutlet } from './descriptor-to-angular';
8
9
  export { PortalDirective, PortalOutletDirective } from './create-portal';
9
- export { createTunnel, TunnelInDirective, TunnelOut, type ITunnelStore } from './create-tunnel';
10
+ export { createTunnel, TunnelInDirective, TunnelOut, type ITunnelStore, } from './create-tunnel';
10
11
  export { SymbioteRenderer, SymbioteRendererFactory } from './renderer';
11
12
  export { registerComposedComponent } from './anchor-host-registry';
12
13
  export { findNodeHandle } from './host-instance';
@@ -18,5 +19,9 @@ export type { IComponentProvider, IAppParameters, IRunnable, IHostRegistrar, IWr
18
19
  export { ColorSchemeService, WindowDimensionsService } from './services';
19
20
  export { Alert, Share, ActionSheetIOS, Linking, Vibration, ToastAndroid, Settings, I18nManager, Dimensions, Appearance, AppState, Keyboard, KEYBOARD_EVENT, BackHandler, PermissionsAndroid, PERMISSIONS, RESULTS, AccessibilityInfo, LayoutAnimation, InteractionManager, PanResponder, PixelRatio, PlatformColor, DynamicColorIOS, } from '@symbiote-native/engine';
20
21
  export type { IAlertType, IAlertButtonStyle, IAlertButton, IAlertButtons, IAlertOptions, IShareContent, IShareOptions, IShareAction, IActionSheetIOSOptions, IShareActionSheetIOSOptions, IShareActionSheetError, IUrlEvent, II18nManagerConstants, IDisplayMetrics, IDisplayMetricsAndroid, IDimensionsPayload, IDimensionsSet, IDimensionsKey, IDimensionsChangeListener, IDimensionsStatic, IColorSchemeName, IColorSchemePreference, IAppStateStatus, IAppStateEvent, IKeyboardEventName, IKeyboardEvent, IKeyboardMetrics, IBackPressEventName, IBackPressHandler, IPermission, IPermissionStatus, IRationale, IAccessibilityChangeEvent, IAccessibilityChangeEventName, IAccessibilityChangeEventHandler, IAccessibilityAnnouncementFinishedEvent, IAnnounceForAccessibilityOptions, IAccessibilityEventType, ILayoutAnimationType, ILayoutAnimationProperty, ILayoutAnimationConfig, ILayoutAnimationAnim, IInteractionEvent, ISimpleTask, IPromiseTask, ITask, IHandle, IPanResponderGestureState, IPanResponderCallbacks, IGestureResponderHandlers, IPanResponderInstance, IPixelRatioStatic, IColorValue, IOpaqueColorValue, IDynamicColorIOSTuple, } from '@symbiote-native/engine';
21
- export { dlog, flattenStyle, isDebug, Platform, processColor, setColorProcessor, setDeviceEventSource, setNativeViewConfigSource, StyleSheet, } from '@symbiote-native/engine';
22
- export type { IRootTag, ISymbioteEvent, ISymbioteNode } from '@symbiote-native/engine';
22
+ export { dlog, isDebug, Platform, processColor, setColorProcessor, setDeviceEventSource, setNativeViewConfigSource, StyleSheet, } from '@symbiote-native/engine';
23
+ export type { IRootTag, ISymbioteEvent, ISymbioteNode, } from '@symbiote-native/engine';
24
+ export type { IViewStyle, ITextStyle, IFlexAlign, IFlexJustify, IPlatformStatic, IPlatformOSType, IPlatformConstantsIOS, IPlatformConstantsAndroid, IPlatformSelectSpec, INativeViewConfig, INativeViewConfigSource, } from '@symbiote-native/engine';
25
+ export type { IAccessibilityProps, IAriaProps, IAccessibilityRole, IRole, IAccessibilityStateValue, IAccessibilityValue, IAccessibilityActionInfo, IResponderProps, IPressState, IPressableAndroidRippleConfig, IImageStatics, } from '@symbiote-native/components';
26
+ export { readAngularProfile, readAngularProfileDetail, setAngularProfileDetail, } from './diagnostics';
27
+ export type { IAngularProfile, IAngularProfileDetail } from './diagnostics';
@@ -4,7 +4,7 @@
4
4
  //
5
5
  // SEAM SCAFFOLD: mount/unmount + the renderer seam + host intrinsic selectors. Full RN-like
6
6
  // composed components still flow through the shared @symbiote-native/components bridge.
7
- export { ActivityIndicator, anchorHostStyle, Button, FlatList, HorizontalScrollContentView, HorizontalScrollView, Image, ImageBackground, InputAccessoryView, KeyboardAvoidingView, Modal, Pressable, RefreshControl, SafeAreaView, ScrollContentView, ScrollView, ScrollViewStickyHeader, SectionList, stableAnchorStyle, Switch, SymbioteHostPropsDirective, Text, TextInput, TouchableHighlight, TouchableNativeFeedback, TouchableOpacity, TouchableWithoutFeedback, View, VirtualizedList, VirtualizedSectionList, VListEmptyDirective, VListFooterDirective, VListHeaderDirective, VListItemDirective, VListSeparatorDirective, VSectionFooterDirective, VSectionHeaderDirective, VSectionItemDirective, VSectionSeparatorDirective, } from './components';
7
+ export { ActivityIndicator, anchorHostStyle, Button, FlatList, HorizontalScrollContentView, HorizontalScrollView, Image, ImageBackground, InputAccessoryView, KeyboardAvoidingView, Modal, Pressable, RefreshControl, SafeAreaView, ScrollContentView, ScrollView, ScrollViewStickyHeader, SectionList, stableAnchorStyle, Switch, SymbioteHostPropsDirective, SymbioteStyleInputDirective, Text, TextInput, TouchableHighlight, TouchableNativeFeedback, TouchableOpacity, TouchableWithoutFeedback, View, VirtualizedList, VirtualizedSectionList, VListEmptyDirective, VListFooterDirective, VListHeaderDirective, VListItemDirective, VListSeparatorDirective, VSectionFooterDirective, VSectionHeaderDirective, VSectionItemDirective, VSectionSeparatorDirective, } from './components';
8
8
  export { Animated } from './modules/animated';
9
9
  // Also exposed as named top-level symbols (not just Animated.View/.Text/...): ngtsc's partial-mode
10
10
  // static evaluator can't trace a component class through property access on an external
@@ -12,6 +12,16 @@ export { Animated } from './modules/animated';
12
12
  // so `<AnimatedView>` in a template requires `import { AnimatedView } from '@symbiote-native/angular'`,
13
13
  // not `const AnimatedView = Animated.View`. Plain tsc/vitest don't catch this; only a real ngc run does.
14
14
  export { AnimatedFlatList, AnimatedImage, AnimatedScrollView, AnimatedSectionList, AnimatedText, AnimatedView, } from './modules/animated';
15
+ // Exported even though Angular's version maps only the four primitives (View/Text/Image/
16
+ // ScrollView) onto the pre-authored wrappers above and THROWS on anything else — there is no JIT
17
+ // under AOT/Metro, so it cannot synthesize a wrapper at runtime the way the other four adapters
18
+ // do. It ships anyway because portable code (`createAnimatedComponent(View)`) then compiles and
19
+ // runs identically on all five adapters, and the one case Angular cannot serve fails with a
20
+ // message naming the fix (author a standalone @Component over AnimatedComponentBase) instead of
21
+ // failing as a missing export, which names nothing. Found by the barrel audit in
22
+ // `.claude/rules/adapter-parity-audit.md`: it was implemented and tested here all along and simply
23
+ // never reached this file, so `@symbiote-native/angular` consumers could not reach it at all.
24
+ export { createAnimatedComponent } from './modules/animated';
15
25
  export { setImageSourceResolver } from './components';
16
26
  export { mount, unmount } from './render';
17
27
  // The generic Descriptor→Angular bridge, the twin of descriptorToReact/descriptorToVue.
@@ -26,7 +36,7 @@ export { DescriptorOutlet } from './descriptor-to-angular';
26
36
  // idiom) parameterized by an `@Input()`, rather than a factory returning fresh components per
27
37
  // call.
28
38
  export { PortalDirective, PortalOutletDirective } from './create-portal';
29
- export { createTunnel, TunnelInDirective, TunnelOut } from './create-tunnel';
39
+ export { createTunnel, TunnelInDirective, TunnelOut, } from './create-tunnel';
30
40
  export { SymbioteRenderer, SymbioteRendererFactory } from './renderer';
31
41
  // registerComposedComponent lives in the dependency-free leaf ./anchor-host-registry, NOT in the
32
42
  // require-cyclic ./renderer — see the leaf header. The babel-register-composed plugin injects the
@@ -42,5 +52,9 @@ export { ColorSchemeService, WindowDimensionsService } from './services';
42
52
  // Framework-agnostic runtime modules from @symbiote-native/engine. Every adapter re-exports them so
43
53
  // app code names only @symbiote-native/angular.
44
54
  export { Alert, Share, ActionSheetIOS, Linking, Vibration, ToastAndroid, Settings, I18nManager, Dimensions, Appearance, AppState, Keyboard, KEYBOARD_EVENT, BackHandler, PermissionsAndroid, PERMISSIONS, RESULTS, AccessibilityInfo, LayoutAnimation, InteractionManager, PanResponder, PixelRatio, PlatformColor, DynamicColorIOS, } from '@symbiote-native/engine';
45
- export { dlog, flattenStyle, isDebug, Platform, processColor, setColorProcessor, setDeviceEventSource, setNativeViewConfigSource, StyleSheet, } from '@symbiote-native/engine';
55
+ export { dlog, isDebug, Platform, processColor, setColorProcessor, setDeviceEventSource, setNativeViewConfigSource, StyleSheet, } from '@symbiote-native/engine';
56
+ // Diagnostics: per-window Angular-side counters (change-detection passes, renderer writes, list
57
+ // recomputes, cell views). The engine's readCommitProfile() prices the commit; these say how many
58
+ // times anything ran at all - the number that exposes a change-detection free-run.
59
+ export { readAngularProfile, readAngularProfileDetail, setAngularProfileDetail, } from './diagnostics';
46
60
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,yGAAyG;AACzG,8FAA8F;AAC9F,sGAAsG;AACtG,EAAE;AACF,4FAA4F;AAC5F,wFAAwF;AAExF,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,MAAM,EACN,QAAQ,EACR,2BAA2B,EAC3B,oBAAoB,EACpB,KAAK,EACL,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,KAAK,EACL,SAAS,EACT,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,UAAU,EACV,sBAAsB,EACtB,WAAW,EACX,iBAAiB,EACjB,MAAM,EACN,0BAA0B,EAC1B,IAAI,EACJ,SAAS,EACT,kBAAkB,EAClB,uBAAuB,EACvB,gBAAgB,EAChB,wBAAwB,EACxB,IAAI,EACJ,eAAe,EACf,sBAAsB,EACtB,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,mGAAmG;AACnG,wFAAwF;AACxF,iEAAiE;AACjE,wGAAwG;AACxG,yGAAyG;AACzG,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,EACZ,YAAY,GACb,MAAM,oBAAoB,CAAC;AA6D5B,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1C,wFAAwF;AACxF,6DAA6D;AAC7D,mHAAmH;AACnH,iDAAiD;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,0FAA0F;AAC1F,wFAAwF;AACxF,0FAA0F;AAC1F,0FAA0F;AAC1F,8FAA8F;AAC9F,QAAQ;AACR,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,SAAS,EAAqB,MAAM,iBAAiB,CAAC;AAChG,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AACvE,iGAAiG;AACjG,kGAAkG;AAClG,gGAAgG;AAChG,UAAU;AACV,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,kFAAkF;AAClF,qEAAqE;AACrE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAavE,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAEzE,oGAAoG;AACpG,gDAAgD;AAChD,OAAO,EACL,KAAK,EACL,KAAK,EACL,cAAc,EACd,OAAO,EACP,SAAS,EACT,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,UAAU,EACV,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,WAAW,EACX,kBAAkB,EAClB,WAAW,EACX,OAAO,EACP,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,UAAU,EACV,aAAa,EACb,eAAe,GAChB,MAAM,yBAAyB,CAAC;AA0DjC,OAAO,EACL,IAAI,EACJ,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,oBAAoB,EACpB,yBAAyB,EACzB,UAAU,GACX,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,8 @@
1
1
  import { type ISymbioteNode } from '@symbiote-native/engine';
2
2
  export declare class AnimatedLeafBinder {
3
3
  private readonly resolveNode;
4
- private readonly label;
5
- private attached;
6
- private cancelBind;
7
- private eventDetachers;
4
+ private readonly lifecycle;
8
5
  constructor(resolveNode: () => ISymbioteNode | null, label: string);
9
6
  reconcile(props: Record<string, unknown>, wantsNative: boolean): void;
10
- private bindNode;
11
- private attachEvents;
12
- private detachEvents;
13
7
  destroy(): void;
14
8
  }