@symbiote-native/angular 2.0.1 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/README.md +5 -4
  2. package/babel-register-composed.cjs +0 -8
  3. package/build/angular/callback-host.d.ts +25 -0
  4. package/build/angular/callback-host.js +211 -0
  5. package/build/angular/callback-host.js.map +1 -0
  6. package/build/angular/change-detection-flush.d.ts +14 -2
  7. package/build/angular/change-detection-flush.js +54 -6
  8. package/build/angular/change-detection-flush.js.map +1 -1
  9. package/build/angular/components/flat-list/index.js +39 -86
  10. package/build/angular/components/flat-list/index.js.map +1 -1
  11. package/build/angular/components/image-shared.js +49 -110
  12. package/build/angular/components/image-shared.js.map +1 -1
  13. package/build/angular/components/keyboard-avoiding-view/index.js +33 -72
  14. package/build/angular/components/keyboard-avoiding-view/index.js.map +1 -1
  15. package/build/angular/components/modal/index.js +58 -103
  16. package/build/angular/components/modal/index.js.map +1 -1
  17. package/build/angular/components/pressable-props.d.ts +2 -0
  18. package/build/angular/components/section-list/index.js +20 -103
  19. package/build/angular/components/section-list/index.js.map +1 -1
  20. package/build/angular/components/touchable-props.d.ts +1 -0
  21. package/build/angular/components/virtualized-list/directives.js +32 -22
  22. package/build/angular/components/virtualized-list/directives.js.map +1 -1
  23. package/build/angular/components/virtualized-list/index.d.ts +7 -1
  24. package/build/angular/components/virtualized-list/index.js +350 -359
  25. package/build/angular/components/virtualized-list/index.js.map +1 -1
  26. package/build/angular/components/virtualized-section-list/directives.js +20 -12
  27. package/build/angular/components/virtualized-section-list/directives.js.map +1 -1
  28. package/build/angular/components/virtualized-section-list/index.js +36 -142
  29. package/build/angular/components/virtualized-section-list/index.js.map +1 -1
  30. package/build/angular/components.d.ts +1 -1
  31. package/build/angular/components.js +1 -1
  32. package/build/angular/components.js.map +1 -1
  33. package/build/angular/create-portal/index.js +9 -8
  34. package/build/angular/create-portal/index.js.map +1 -1
  35. package/build/angular/create-tunnel/index.js +13 -12
  36. package/build/angular/create-tunnel/index.js.map +1 -1
  37. package/build/angular/descriptor-to-angular/index.js +6 -6
  38. package/build/angular/descriptor-to-angular/index.js.map +1 -1
  39. package/build/angular/diagnostics.d.ts +13 -0
  40. package/build/angular/diagnostics.js +18 -0
  41. package/build/angular/diagnostics.js.map +1 -1
  42. package/build/angular/element-props.d.ts +1 -3
  43. package/build/angular/elements.d.ts +46 -32
  44. package/build/angular/elements.js +217 -434
  45. package/build/angular/elements.js.map +1 -1
  46. package/build/angular/index.d.ts +3 -1
  47. package/build/angular/index.js +44 -13
  48. package/build/angular/index.js.map +1 -1
  49. package/build/angular/modules/animated/animated-leaf-binder.js +0 -2
  50. package/build/angular/modules/animated/animated-leaf-binder.js.map +1 -1
  51. package/build/angular/modules/animated/create-animated-component.js +69 -74
  52. package/build/angular/modules/animated/create-animated-component.js.map +1 -1
  53. package/build/angular/modules/animated/index.d.ts +30 -19
  54. package/build/angular/modules/status-bar/index.js +2 -8
  55. package/build/angular/modules/status-bar/index.js.map +1 -1
  56. package/build/angular/primitives/index.d.ts +14 -28
  57. package/build/angular/primitives/index.js +44 -107
  58. package/build/angular/primitives/index.js.map +1 -1
  59. package/build/angular/primitives/shared.d.ts +1 -0
  60. package/build/angular/primitives/shared.js +47 -32
  61. package/build/angular/primitives/shared.js.map +1 -1
  62. package/build/angular/render/index.js +40 -3
  63. package/build/angular/render/index.js.map +1 -1
  64. package/build/angular/renderer/index.d.ts +80 -0
  65. package/build/angular/renderer/index.js +324 -114
  66. package/build/angular/renderer/index.js.map +1 -1
  67. package/build/angular/runtime-matching.d.ts +9 -0
  68. package/build/angular/runtime-matching.js +82 -0
  69. package/build/angular/runtime-matching.js.map +1 -0
  70. package/build/angular/services/color-scheme.service.js +4 -4
  71. package/build/angular/services/color-scheme.service.js.map +1 -1
  72. package/build/angular/services/window-dimensions.service.js +4 -4
  73. package/build/angular/services/window-dimensions.service.js.map +1 -1
  74. package/build/angular/style-host.d.ts +11 -0
  75. package/build/angular/style-host.js +86 -0
  76. package/build/angular/style-host.js.map +1 -0
  77. package/package.json +6 -6
  78. package/src/callback-host.ts +229 -0
  79. package/src/change-detection-flush.ts +62 -9
  80. package/src/components/flat-list/index.ts +2 -1
  81. package/src/components/keyboard-avoiding-view/index.ts +8 -0
  82. package/src/components/pressable-props.ts +8 -0
  83. package/src/components/touchable-props.ts +4 -0
  84. package/src/components/virtualized-list/index.ts +98 -45
  85. package/src/components.ts +0 -2
  86. package/src/diagnostics.ts +18 -0
  87. package/src/element-props.ts +1 -5
  88. package/src/elements.ts +159 -38
  89. package/src/index.ts +47 -14
  90. package/src/primitives/index.ts +14 -70
  91. package/src/primitives/shared.ts +21 -6
  92. package/src/render/index.ts +56 -2
  93. package/src/renderer/index.ts +378 -104
  94. package/src/runtime-matching.ts +80 -0
  95. package/src/style-host.ts +94 -0
  96. package/tsconfig.angular.base.json +11 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/renderer/index.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,8EAA8E;AAC9E,oFAAoF;AACpF,qFAAqF;AACrF,wFAAwF;AACxF,4DAA4D;AAE5D,OAAO,EACL,WAAW,EACX,YAAY,EACZ,aAAa,EACb,aAAa,EACb,IAAI,EACJ,gBAAgB,EAChB,YAAY,EACZ,OAAO,EACP,eAAe,EACf,cAAc,EACd,WAAW,EACX,SAAS,EACT,gBAAgB,EAChB,OAAO,EACP,OAAO,EACP,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,GAEhB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,qBAAqB,EACrB,aAAa,GACd,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AAExE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AAMxB,SAAS,SAAS,CAAC,MAAoB;IACrC,OAAO,MAAM,YAAY,eAAe,CAAC;AAC3C,CAAC;AAED,SAAS,SAAS,CAAC,IAAmB;IACpC,OAAO,IAAI,CAAC,SAAS,KAAK,kBAAkB,CAAC;AAC/C,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACrD,CAAC;AAED,gGAAgG;AAChG,0FAA0F;AAC1F,8FAA8F;AAC9F,iGAAiG;AACjG,kGAAkG;AAClG,mFAAmF;AACnF,uFAAuF;AACvF,sFAAsF;AACtF,gGAAgG;AAChG,gGAAgG;AAChG,EAAE;AACF,qFAAqF;AACrF,mGAAmG;AACnG,2FAA2F;AAC3F,+FAA+F;AAC/F,0FAA0F;AAC1F,mGAAmG;AACnG,wCAAwC;AACxC,SAAS,gBAAgB,CAAC,IAAmB;IAC3C,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACvC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AAC/E,CAAC;AAED,iGAAiG;AACjG,+FAA+F;AAC/F,6FAA6F;AAC7F,4FAA4F;AAC5F,iGAAiG;AACjG,SAAS,cAAc,CAAC,EAAgB,EAAE,GAAW;IACnD,IAAI,SAAS,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAClD,OAAO,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;AACxD,CAAC;AAED,gGAAgG;AAChG,+FAA+F;AAC/F,0FAA0F;AAC1F,+FAA+F;AAC/F,8FAA8F;AAC9F,iGAAiG;AACjG,uEAAuE;AACvE,+FAA+F;AAC/F,kGAAkG;AAClG,+FAA+F;AAC/F,gBAAgB;AAChB,kGAAkG;AAClG,+FAA+F;AAC/F,mGAAmG;AACnG,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,MAAM,YAAY,GAAgC,IAAI,GAAG,CAAC;IACxD,CAAC,IAAI,EAAE,UAAU,CAAC;IAClB,CAAC,eAAe,EAAE,OAAO,CAAC;CAC3B,CAAC,CAAC;AAEH,SAAS,eAAe,CAAC,IAAY;IACnC,OAAO,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AACxC,CAAC;AAED,gGAAgG;AAChG,qGAAqG;AACrG,iGAAiG;AACjG,mGAAmG;AACnG,4EAA4E;AAC5E,EAAE;AACF,gGAAgG;AAChG,kGAAkG;AAClG,4FAA4F;AAC5F,MAAM,gBAAgB,GAAwB,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;AAInE,SAAS,mBAAmB,CAC1B,IAAkB,EAClB,QAA2B;IAE3B,OAAO,CAAC,KAAc,EAAW,EAAE;QACjC,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC/B,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAED,wFAAwF;AACxF,sFAAsF;AACtF,mFAAmF;AACnF,IAAI,kBAAkB,GAAG,CAAC,CAAC;AAC3B,MAAM,cAAc,GAAG,IAAI,OAAO,EAAyB,CAAC;AAC5D,SAAS,iBAAiB,CAAC,IAAmB;IAC5C,IAAI,OAAO,EAAE,EAAE,CAAC;QACd,kBAAkB,IAAI,CAAC,CAAC;QACxB,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,yFAAyF;AACzF,6FAA6F;AAC7F,SAAS,YAAY,CAAC,IAAqC;IACzD,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACvD,IAAI,SAAS,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IACtC,MAAM,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC1C,OAAO,QAAQ,KAAK,SAAS;QAC3B,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,IAAI,QAAQ,EAAE;QACjC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;AACrB,CAAC;AAED,yFAAyF;AACzF,4FAA4F;AAC5F,2EAA2E;AAC3E,oGAAoG;AACpG,8FAA8F;AAC9F,8FAA8F;AAC9F,EAAE;AACF,8FAA8F;AAC9F,iGAAiG;AACjG,6FAA6F;AAC7F,gGAAgG;AAChG,+FAA+F;AAC/F,2BAA2B;AAC3B,EAAE;AACF,kGAAkG;AAClG,kGAAkG;AAClG,MAAM,aAAa,GAAG,WAAW,CAAC;AAElC,SAAS,0BAA0B;IACjC,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACrD,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,SAAS;QAChC,OAAO,CAAC,GAAG,aAAa,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC;IAC1C,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,wBAAwB,GAA2B;IACvD,+EAA+E;IAC/E,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,GAAG,0BAA0B,EAAE;CAChC,CAAC;AAEF,+FAA+F;AAC/F,iGAAiG;AACjG,4EAA4E;AAE5E,sFAAsF;AACtF,wFAAwF;AACxF,yFAAyF;AACzF,SAAS,mBAAmB,CAAC,KAAoB,EAAE,MAAoB;IACrE,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CACb,gBAAgB,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAC7E,CAAC;IACJ,CAAC;AACH,CAAC;AAED,mFAAmF;AACnF,oFAAoF;AACpF,6CAA6C;AAC7C,MAAM,OAAO,gBAAgB;IAME;IALpB,IAAI,GAA4B,EAAE,CAAC;IAC5C,qFAAqF;IACrF,uDAAuD;IACvD,WAAW,GAA2C,IAAI,CAAC;IAE3D,YAA6B,OAAwB;QAAxB,YAAO,GAAP,OAAO,CAAiB;IAAG,CAAC;IAEzD,OAAO,KAAU,CAAC;IAElB,aAAa,CAAC,IAAY;QACxB,qEAAqE;QACrE,8EAA8E;QAC9E,uFAAuF;QACvF,0FAA0F;QAC1F,0FAA0F;QAC1F,sFAAsF;QACtF,yFAAyF;QACzF,YAAY,CAAC,cAAc,CAAC,CAAC;QAC7B,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACxB,MAAM,UAAU,GAAG,wBAAwB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;QAE1D,8FAA8F;QAC9F,sFAAsF;QACtF,wFAAwF;QACxF,+FAA+F;QAC/F,4EAA4E;QAC5E,EAAE;QACF,8FAA8F;QAC9F,0FAA0F;QAC1F,+FAA+F;QAC/F,kBAAkB;QAClB,IACE,qBAAqB,CAAC,UAAU,CAAC,KAAK,SAAS;YAC/C,qBAAqB,CAAC,UAAU,CAAC,EACjC,CAAC;YACD,MAAM,MAAM,GAAG,iBAAiB,CAAC,YAAY,EAAE,CAAC,CAAC;YACjD,IAAI,OAAO,EAAE,EAAE,CAAC;gBACd,IAAI,CACF,yBAAyB,IAAI,mBAAmB,YAAY,CAAC,MAAM,CAAC,EAAE,CACvE,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,UAAU,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;QAC7C,yFAAyF;QACzF,4FAA4F;QAC5F,yFAAyF;QACzF,wFAAwF;QACxF,kGAAkG;QAClG,MAAM,IAAI,GAAG,aAAa,CACxB,UAAU,CAAC,SAAS,EACpB,UAAU,CAAC,MAAM,EACjB,UAAU,CACX,CAAC;QACF,IAAI,UAAU,CAAC,MAAM;YAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,OAAO,EAAE,EAAE,CAAC;YACd,IAAI,CAAC,yBAAyB,IAAI,OAAO,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,aAAa;QACX,gFAAgF;QAChF,qFAAqF;QACrF,0BAA0B;QAC1B,YAAY,CAAC,cAAc,CAAC,CAAC;QAC7B,MAAM,MAAM,GAAG,iBAAiB,CAAC,YAAY,EAAE,CAAC,CAAC;QACjD,IAAI,OAAO,EAAE,EAAE,CAAC;YACd,IAAI,CAAC,qCAAqC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpE,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,UAAU,CAAC,KAAa;QACtB,YAAY,CAAC,cAAc,CAAC,CAAC;QAC7B,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED,WAAW,CAAC,MAA2B,EAAE,QAAmB;QAC1D,oFAAoF;QACpF,sFAAsF;QACtF,0FAA0F;QAC1F,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO;QAC5B,YAAY,CAAC,eAAe,CAAC,CAAC;QAC9B,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACtC,IAAI,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;YACtB,IAAI,OAAO,EAAE,EAAE,CAAC;gBACd,IAAI,CACF,qDAAqD,YAAY,CAAC,QAAQ,CAAC,EAAE,CAC9E,CAAC;YACJ,CAAC;YACD,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,uFAAuF;YACvF,uFAAuF;YACvF,sFAAsF;YACtF,IAAI,OAAO,EAAE,EAAE,CAAC;gBACd,IAAI,CACF,uCAAuC,YAAY,CAAC,MAAM,CAAC,UAAU,YAAY,CAAC,QAAQ,CAAC,EAAE,CAC9F,CAAC;YACJ,CAAC;YACD,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAChC,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAED,YAAY,CACV,MAA2B,EAC3B,QAAmB,EACnB,QAA0B;QAE1B,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,CAAC,kCAAkC;QAC/D,YAAY,CAAC,eAAe,CAAC,CAAC;QAC9B,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACtC,IAAI,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;YACtB,IAAI,OAAO,EAAE,EAAE,CAAC;gBACd,IAAI,CACF,sDAAsD,YAAY,CAAC,QAAQ,CAAC,QAAQ,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CACjI,CAAC;YACJ,CAAC;YACD,IAAI,QAAQ;gBAAE,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;;gBACjD,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,IAAI,OAAO,EAAE,EAAE,CAAC;gBACd,IAAI,CACF,wCAAwC,YAAY,CAAC,MAAM,CAAC,UAAU,YAAY,CAAC,QAAQ,CAAC,QAAQ,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CACjJ,CAAC;YACJ,CAAC;YACD,IAAI,QAAQ;gBAAE,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;;gBAClD,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAED,WAAW,CAAC,OAA4B,EAAE,QAAmB;QAC3D,yEAAyE;QACzE,sFAAsF;QACtF,0DAA0D;QAC1D,YAAY,CAAC,cAAc,CAAC,CAAC;QAC7B,IAAI,OAAO,EAAE,EAAE,CAAC;YACd,MAAM,aAAa,GAAG,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACxE,MAAM,cAAc,GAClB,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACzE,IAAI,CACF,8CAA8C,aAAa,mBAAmB,cAAc,UAAU,YAAY,CAAC,QAAQ,CAAC,EAAE,CAC/H,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;QAC/B,IAAI,MAAM,KAAK,SAAS;YAAE,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;;YACnD,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAED,kFAAkF;IAClF,gFAAgF;IAChF,6FAA6F;IAC7F,yFAAyF;IACzF,4FAA4F;IAC5F,8FAA8F;IAC9F,8FAA8F;IAC9F,sCAAsC;IACtC,EAAE;IACF,+FAA+F;IAC/F,6FAA6F;IAC7F,+FAA+F;IAC/F,6EAA6E;IAC7E,UAAU,CAAC,IAAe;QACxB,OAAO,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC;IAC7B,CAAC;IAED,WAAW,CAAC,IAAe;QACzB,MAAM,QAAQ,GACZ,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QAC3E,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3D,CAAC;IAED,kFAAkF;IAClF,uFAAuF;IACvF,0FAA0F;IAC1F,qFAAqF;IACrF,iBAAiB,CAAC,cAAqC;QACrD,OAAO,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC;IAC5E,CAAC;IAED,YAAY,CAAC,EAAgB,EAAE,IAAY,EAAE,KAAa;QACxD,IAAI,SAAS,CAAC,EAAE,CAAC;YAAE,OAAO;QAC1B,YAAY,CAAC,gBAAgB,CAAC,CAAC;QAC/B,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACvB,SAAS,CAAC,EAAE,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAED,eAAe,CAAC,EAAgB,EAAE,IAAY;QAC5C,IAAI,SAAS,CAAC,EAAE,CAAC;YAAE,OAAO;QAC1B,YAAY,CAAC,gBAAgB,CAAC,CAAC;QAC/B,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACvB,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;QACtC,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAED,uFAAuF;IACvF,8FAA8F;IAC9F,oFAAoF;IACpF,oFAAoF;IACpF,0FAA0F;IAC1F,wFAAwF;IACxF,8CAA8C;IAC7B,WAAW,GAAG,IAAI,OAAO,EAA0B,CAAC;IAErE,QAAQ,CAAC,EAAgB,EAAE,IAAY;QACrC,IAAI,SAAS,CAAC,EAAE,CAAC;YAAE,OAAO;QAC1B,YAAY,CAAC,gBAAgB,CAAC,CAAC;QAC/B,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,GAAG,EAAU,CAAC;QAC7D,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QACjC,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAED,WAAW,CAAC,EAAgB,EAAE,IAAY;QACxC,IAAI,SAAS,CAAC,EAAE,CAAC;YAAE,OAAO;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO;QACjC,YAAY,CAAC,gBAAgB,CAAC,CAAC;QAC/B,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC1B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpB,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC5E,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAED,0FAA0F;IAC1F,4FAA4F;IAC5F,6FAA6F;IAC7F,yFAAyF;IACzF,8FAA8F;IAC9F,QAAQ,CAAC,EAAgB,EAAE,KAAa,EAAE,KAAc;QACtD,IAAI,SAAS,CAAC,EAAE,CAAC;YAAE,OAAO;QAC1B,YAAY,CAAC,gBAAgB,CAAC,CAAC;QAC/B,gBAAgB,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC;QACrC,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAED,WAAW,CAAC,EAAgB,EAAE,KAAa;QACzC,IAAI,SAAS,CAAC,EAAE,CAAC;YAAE,OAAO;QAC1B,MAAM,OAAO,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC;QACrC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,OAAO;QAC/B,YAAY,CAAC,gBAAgB,CAAC,CAAC;QAC/B,gBAAgB,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC;QACnC,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;QAC/C,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAED,kFAAkF;IAClF,mFAAmF;IACnF,WAAW,CAAC,EAAgB,EAAE,IAAY,EAAE,KAAc;QACxD,IAAI,SAAS,CAAC,EAAE,CAAC;YAAE,OAAO;QAC1B,YAAY,CAAC,gBAAgB,CAAC,CAAC;QAC/B,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACvB,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;QACtC,SAAS,CACP,EAAE,EACF,OAAO,EACP,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAC1D,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAED,QAAQ,CAAC,IAAe,EAAE,KAAa;QACrC,YAAY,CAAC,gBAAgB,CAAC,CAAC;QAC/B,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC1B,sFAAsF;QACtF,iFAAiF;QACjF,IAAI,OAAO,EAAE,EAAE,CAAC;YACd,IAAI,CAAC,8BAA8B,KAAK,QAAQ,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACrB,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;IAC/B,CAAC;IAED,uFAAuF;IACvF,yFAAyF;IACzF,0FAA0F;IAC1F,6DAA6D;IAC7D,MAAM,CACJ,MAAe,EACf,SAAiB,EACjB,QAA4C;QAE5C,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;YAAE,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;QAC7C,+FAA+F;QAC/F,8FAA8F;QAC9F,6FAA6F;QAC7F,uFAAuF;QACvF,EAAE;QACF,8FAA8F;QAC9F,0EAA0E;QAC1E,gGAAgG;QAChG,4FAA4F;QAC5F,4FAA4F;QAC5F,gGAAgG;QAChG,6FAA6F;QAC7F,mFAAmF;QACnF,IAAI,SAAS,KAAK,kBAAkB,EAAE,CAAC;YACrC,MAAM,YAAY,GAAG,mBAAmB,CAAC,MAAM,EAAE,CAAC,KAAc,EAAE,EAAE;gBAClE,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC3B,IAAI,MAAM,IAAI,KAAK;wBAAE,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACjD,IAAI,OAAO,IAAI,KAAK;wBAAE,OAAO,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACrD,CAAC;gBACD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC,CAAC,CAAC;YACH,SAAS,CAAC,MAAM,EAAE,iBAAiB,EAAE,YAAY,CAAC,CAAC;YACnD,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,iBAAiB,EAAE,SAAS,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC;YAC9C,CAAC,CAAC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC;YACvC,CAAC,CAAC,QAAQ,CAAC;QACb,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC9C,OAAO,GAAG,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAC9D,CAAC;CACF;AAED,6EAA6E;AAC7E,2FAA2F;AAC3F,8CAA8C;AAC9C,MAAM,OAAO,uBAAuB;IAGL;IAFrB,QAAQ,CAA+B;IAE/C,YAA6B,OAAwB;QAAxB,YAAO,GAAP,OAAO,CAAiB;IAAG,CAAC;IAEzD,cAAc,CACZ,YAAqB,EACrB,KAA2B;QAE3B,OAAO,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,6FAA6F;IAC7F,mFAAmF;IACnF,6FAA6F;IAC7F,GAAG;QACD,YAAY,CAAC,UAAU,CAAC,CAAC;IAC3B,CAAC;CACF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/renderer/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Take these directives out of Angular's runtime matcher, leaving ngtsc's view of them untouched.
3
+ *
4
+ * Idempotent, and silent on anything that is not a compiled directive — a class whose `ɵdir` cannot
5
+ * be read is left alone rather than reported, because the only way to reach that state is a build
6
+ * that never compiled it, which fails far louder elsewhere.
7
+ */
8
+ export declare function withholdFromRuntimeMatching(types: readonly unknown[]): void;
9
+ export declare function tagsWithheldFromRuntimeMatching(): ReadonlySet<string>;
@@ -0,0 +1,82 @@
1
+ // Keeping a directive for the TEMPLATE CHECKER and taking it out of the runtime.
2
+ //
3
+ // An element directive here exists so `<view [testID]="42">` is a compile error and `<view
4
+ // [testID]="'row'">` is not. That is ngtsc's job, done over the TypeScript source before anything
5
+ // runs. What it costs at RUN time is an instance per element: Angular matches the directive, builds
6
+ // it, injects into it, and calls `ngOnChanges`, which forwards each changed input with
7
+ // `renderer.setProperty(host, name, value)` — the same call `ɵɵproperty` makes DIRECTLY on an element
8
+ // no directive claimed. Same destination, one hop shorter.
9
+ //
10
+ // Measured on JavaScriptCore at ~8.5-9.4 us per element (`core/engine/cpp/tests/js/
11
+ // angular-directive-cost.itest.ts`, the `a directive at all` row), and between the two Angular bench
12
+ // arms at ~86 ms on a thousand-row screen — the largest single cost this adapter still carries.
13
+ //
14
+ // HOW: `findDirectiveDefMatches` walks `tView.directiveRegistry` and asks `isNodeMatchingSelectorList`
15
+ // with `def.selectors` (upstream `render3/instructions/shared.ts:466-501`). A def whose selector list
16
+ // is EMPTY is registered, iterated, and never matched — while its class, its decorator and its
17
+ // declared inputs are untouched, which is all the template checker reads. So this is one mutation per
18
+ // class at module load rather than a build step: no linker output to rewrite, and it behaves the same
19
+ // under JIT as under the partial-compiled path a device runs.
20
+ //
21
+ // WHAT A WITHHELD DIRECTIVE STOPS DOING, stated in full because none of it fails a type check:
22
+ //
23
+ // the forward `ngOnChanges` no longer runs. `ɵɵproperty` writes the same name and value
24
+ // straight to the renderer, so the engine sees the identical prop — asserted by
25
+ // census in the ladder (`unmatched` reads created=10002 setProps=10002).
26
+ // the `on*` wrap an `on*` PROP is called by the ENGINE, so Angular learns nothing unless
27
+ // something marks the view. That moved to `SymbioteRenderer.setProperty`, which
28
+ // every path reaches whether a directive claimed the binding or not.
29
+ // the style shadow `[style]` and `[class]` are no longer claimed by an input, so `ɵɵstyleMap` and
30
+ // `ɵɵclassMap` resolve them per KEY again — ~7 000 renderer calls on the bench
31
+ // row where the shadow made 4 000. That is a REGRESSION and it is accepted: the
32
+ // bare bench arm already pays it and is still ~86 ms ahead of the matched one.
33
+ //
34
+ // WHICH IS WHY THE LIST IS NOT "ALL OF THEM". A directive with real runtime behaviour must go on
35
+ // matching, and here that is the `ValueChangeElement` chain (`text-input`, `switch` — they listen for
36
+ // the engine's value event and register a view flush) and `refresh-control`. `SymbioteCallbackHost`
37
+ // and the two form accessors match on ATTRIBUTES rather than on a tag, so they land only where they
38
+ // are needed and are never withheld.
39
+ /**
40
+ * Take these directives out of Angular's runtime matcher, leaving ngtsc's view of them untouched.
41
+ *
42
+ * Idempotent, and silent on anything that is not a compiled directive — a class whose `ɵdir` cannot
43
+ * be read is left alone rather than reported, because the only way to reach that state is a build
44
+ * that never compiled it, which fails far louder elsewhere.
45
+ */
46
+ export function withholdFromRuntimeMatching(types) {
47
+ for (const type of types) {
48
+ if (typeof type !== 'function')
49
+ continue;
50
+ const definition = Reflect.get(type, 'ɵdir');
51
+ if (typeof definition !== 'object' || definition === null)
52
+ continue;
53
+ const selectors = Reflect.get(definition, 'selectors');
54
+ if (!Array.isArray(selectors))
55
+ continue;
56
+ // Ivy holds a `CssSelectorList` — one array per alternative, whose first entry is the tag name
57
+ // when the alternative names one. Recorded before the emptying, because afterwards there is
58
+ // nothing to read and the guard below would have no subject.
59
+ for (const alternative of selectors)
60
+ if (Array.isArray(alternative)) {
61
+ const tag = alternative[0];
62
+ if (typeof tag === 'string' && tag.length > 0)
63
+ withheldTags.add(tag);
64
+ }
65
+ // Emptied in place rather than replaced: the def holds this array, and reading `ɵdir` under JIT
66
+ // is what compiles the directive, so the object in hand is the one the matcher will walk.
67
+ selectors.length = 0;
68
+ }
69
+ }
70
+ /**
71
+ * Every TAG that lost its directive, for the guard that keeps `SymbioteStyleHost` covering them.
72
+ *
73
+ * A withheld tag whose style is claimed by nothing sends an RN style ARRAY into Angular's styling
74
+ * engine, which throws inside change detection — a device failure with no compile-time tell. So the
75
+ * set is recorded here at the moment it is emptied rather than maintained as a second list, and
76
+ * `style-host-covers-withheld-tags.test.ts` reads it.
77
+ */
78
+ const withheldTags = new Set();
79
+ export function tagsWithheldFromRuntimeMatching() {
80
+ return withheldTags;
81
+ }
82
+ //# sourceMappingURL=runtime-matching.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-matching.js","sourceRoot":"","sources":["../../src/runtime-matching.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,EAAE;AACF,2FAA2F;AAC3F,kGAAkG;AAClG,oGAAoG;AACpG,uFAAuF;AACvF,sGAAsG;AACtG,2DAA2D;AAC3D,EAAE;AACF,oFAAoF;AACpF,qGAAqG;AACrG,gGAAgG;AAChG,EAAE;AACF,uGAAuG;AACvG,sGAAsG;AACtG,+FAA+F;AAC/F,sGAAsG;AACtG,sGAAsG;AACtG,8DAA8D;AAC9D,EAAE;AACF,+FAA+F;AAC/F,EAAE;AACF,gGAAgG;AAChG,oGAAoG;AACpG,6FAA6F;AAC7F,8FAA8F;AAC9F,oGAAoG;AACpG,yFAAyF;AACzF,qGAAqG;AACrG,mGAAmG;AACnG,oGAAoG;AACpG,mGAAmG;AACnG,EAAE;AACF,iGAAiG;AACjG,sGAAsG;AACtG,oGAAoG;AACpG,oGAAoG;AACpG,qCAAqC;AAErC;;;;;;GAMG;AACH,MAAM,UAAU,2BAA2B,CAAC,KAAyB;IACnE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,OAAO,IAAI,KAAK,UAAU;YAAE,SAAS;QACzC,MAAM,UAAU,GAAY,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACtD,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI;YAAE,SAAS;QACpE,MAAM,SAAS,GAAY,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QAChE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;YAAE,SAAS;QACxC,+FAA+F;QAC/F,4FAA4F;QAC5F,6DAA6D;QAC7D,KAAK,MAAM,WAAW,IAAI,SAAS;YACjC,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC/B,MAAM,GAAG,GAAY,WAAW,CAAC,CAAC,CAAC,CAAC;gBACpC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;oBAAE,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACvE,CAAC;QACH,gGAAgG;QAChG,0FAA0F;QAC1F,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;IACvB,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;AAEvC,MAAM,UAAU,+BAA+B;IAC7C,OAAO,YAAY,CAAC;AACtB,CAAC"}
@@ -10,9 +10,9 @@ import * as i0 from "@angular/core";
10
10
  * State and lifecycle live in DI, not in a function closure.
11
11
  */
12
12
  export class ColorSchemeService {
13
- colorScheme = signal(Appearance.getColorScheme(), /* @ts-ignore */
14
- ...(ngDevMode ? [{ debugName: "colorScheme" }] : /* istanbul ignore next */ []));
15
13
  constructor() {
14
+ this.colorScheme = signal(Appearance.getColorScheme(), /* @ts-ignore */
15
+ ...(ngDevMode ? [{ debugName: "colorScheme" }] : /* istanbul ignore next */ []));
16
16
  const destroyRef = inject(DestroyRef);
17
17
  const subscription = Appearance.addChangeListener(preferences => {
18
18
  this.colorScheme.set(preferences.colorScheme);
@@ -21,8 +21,8 @@ export class ColorSchemeService {
21
21
  subscription.remove();
22
22
  });
23
23
  }
24
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ColorSchemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
25
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ColorSchemeService, providedIn: 'root' });
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ColorSchemeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
25
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ColorSchemeService, providedIn: 'root' }); }
26
26
  }
27
27
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: ColorSchemeService, decorators: [{
28
28
  type: Injectable,
@@ -1 +1 @@
1
- {"version":3,"file":"color-scheme.service.js","sourceRoot":"","sources":["../../../src/services/color-scheme.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,UAAU,EAAyB,MAAM,yBAAyB,CAAC;;AAE5E;;;;;;;GAOG;AAEH,MAAM,OAAO,kBAAkB;IACpB,WAAW,GAAG,MAAM,CAC3B,UAAU,CAAC,cAAc,EAAE;oFAC5B,CAAC;IAEF;QACE,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;QAEtC,MAAM,YAAY,GAAG,UAAU,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE;YAC9D,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE;YACxB,YAAY,CAAC,MAAM,EAAE,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC;uGAfU,kBAAkB;2GAAlB,kBAAkB,cADL,MAAM;;2FACnB,kBAAkB;kBAD9B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE"}
1
+ {"version":3,"file":"color-scheme.service.js","sourceRoot":"","sources":["../../../src/services/color-scheme.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,UAAU,EAAyB,MAAM,yBAAyB,CAAC;;AAE5E;;;;;;;GAOG;AAEH,MAAM,OAAO,kBAAkB;IAK7B;QAJS,gBAAW,GAAG,MAAM,CAC3B,UAAU,CAAC,cAAc,EAAE;wFAC5B,CAAC;QAGA,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;QAEtC,MAAM,YAAY,GAAG,UAAU,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE;YAC9D,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE;YACxB,YAAY,CAAC,MAAM,EAAE,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC;8GAfU,kBAAkB;kHAAlB,kBAAkB,cADL,MAAM;;2FACnB,kBAAkB;kBAD9B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE"}
@@ -10,9 +10,9 @@ import * as i0 from "@angular/core";
10
10
  * State and lifecycle live in DI, not in a function closure.
11
11
  */
12
12
  export class WindowDimensionsService {
13
- dimensions = signal(Dimensions.get('window'), /* @ts-ignore */
14
- ...(ngDevMode ? [{ debugName: "dimensions" }] : /* istanbul ignore next */ []));
15
13
  constructor() {
14
+ this.dimensions = signal(Dimensions.get('window'), /* @ts-ignore */
15
+ ...(ngDevMode ? [{ debugName: "dimensions" }] : /* istanbul ignore next */ []));
16
16
  const destroyRef = inject(DestroyRef);
17
17
  const handleChange = (window) => {
18
18
  const current = this.dimensions();
@@ -32,8 +32,8 @@ export class WindowDimensionsService {
32
32
  subscription.remove();
33
33
  });
34
34
  }
35
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: WindowDimensionsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
36
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: WindowDimensionsService, providedIn: 'root' });
35
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: WindowDimensionsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
36
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: WindowDimensionsService, providedIn: 'root' }); }
37
37
  }
38
38
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: WindowDimensionsService, decorators: [{
39
39
  type: Injectable,
@@ -1 +1 @@
1
- {"version":3,"file":"window-dimensions.service.js","sourceRoot":"","sources":["../../../src/services/window-dimensions.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EACL,UAAU,GAGX,MAAM,yBAAyB,CAAC;;AAEjC;;;;;;;GAOG;AAEH,MAAM,OAAO,uBAAuB;IACzB,UAAU,GAAG,MAAM,CAAkB,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;mFAAC,CAAC;IAExE;QACE,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;QAEtC,MAAM,YAAY,GAAG,CAAC,MAAuB,EAAQ,EAAE;YACrD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAClC,IACE,OAAO,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK;gBAC9B,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;gBAChC,OAAO,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK;gBAC9B,OAAO,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS,EACtC,CAAC;gBACD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,YAAY,GAAG,UAAU,CAAC,gBAAgB,CAC9C,QAAQ,EACR,CAAC,GAAmB,EAAE,EAAE;YACtB,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC3B,CAAC,CACF,CAAC;QACF,0FAA0F;QAC1F,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEvC,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE;YACxB,YAAY,CAAC,MAAM,EAAE,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC;uGA9BU,uBAAuB;2GAAvB,uBAAuB,cADV,MAAM;;2FACnB,uBAAuB;kBADnC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE"}
1
+ {"version":3,"file":"window-dimensions.service.js","sourceRoot":"","sources":["../../../src/services/window-dimensions.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EACL,UAAU,GAGX,MAAM,yBAAyB,CAAC;;AAEjC;;;;;;;GAOG;AAEH,MAAM,OAAO,uBAAuB;IAGlC;QAFS,eAAU,GAAG,MAAM,CAAkB,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;uFAAC,CAAC;QAGtE,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;QAEtC,MAAM,YAAY,GAAG,CAAC,MAAuB,EAAQ,EAAE;YACrD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAClC,IACE,OAAO,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK;gBAC9B,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;gBAChC,OAAO,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK;gBAC9B,OAAO,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS,EACtC,CAAC;gBACD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,YAAY,GAAG,UAAU,CAAC,gBAAgB,CAC9C,QAAQ,EACR,CAAC,GAAmB,EAAE,EAAE;YACtB,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC3B,CAAC,CACF,CAAC;QACF,0FAA0F;QAC1F,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEvC,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE;YACxB,YAAY,CAAC,MAAM,EAAE,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC;8GA9BU,uBAAuB;kHAAvB,uBAAuB,cADV,MAAM;;2FACnB,uBAAuB;kBADnC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE"}
@@ -0,0 +1,11 @@
1
+ import { type OnChanges, type SimpleChanges } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ /** Exported for the guard, which derives the same set from the withheld directives' own selectors. */
4
+ export declare const STYLE_HOST_SELECTOR: string;
5
+ export declare class SymbioteStyleHost implements OnChanges {
6
+ private readonly renderer;
7
+ private readonly host;
8
+ ngOnChanges(changes: SimpleChanges): void;
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<SymbioteStyleHost, never>;
10
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SymbioteStyleHost, "view,symbiote-view,text,symbiote-text,image,symbiote-image,image-background,pressable,symbiote-pressable,button,symbiote-button,touchable-opacity,touchable-highlight,touchable-native-feedback,touchable-without-feedback,scroll-view,horizontal-scroll-view,scroll-content,horizontal-scroll-content,activity-indicator,activity-indicator-spinner,safe-area-view,modal,symbiote-modal,sticky-header,input-accessory-view", never, { "style": { "alias": "style"; "required": false; }; "class": { "alias": "class"; "required": false; }; }, {}, never, never, true, never>;
11
+ }
@@ -0,0 +1,86 @@
1
+ // The directive that claims `[style]` and `[class]` on the elements that bind them.
2
+ //
3
+ // IT IS A CORRECTNESS REQUIREMENT BEFORE IT IS AN OPTIMISATION, which is what separates it from
4
+ // `callback-host.ts`. An RN `StyleProp` is allowed to be an ARRAY, and Angular's own styling engine
5
+ // cannot represent one: `ɵɵstyleMap` decomposes the value key by key, so `applyStyling` takes each
6
+ // array MEMBER as a style key and throws inside change detection. Device-diagnosed 2026-09-02 on
7
+ // ImageBackground, and pinned ever since by `renderer/style-input.test.ts`.
8
+ //
9
+ // A declared input is what keeps the value away from that engine — `checkStylingMap` hands the whole
10
+ // value to the input instead of walking it (`render3/instructions/styling.ts:259-288`). So when the
11
+ // tag directives were withheld from runtime matching, the claim had to come from somewhere, or an
12
+ // array style would throw on every screen that writes one.
13
+ //
14
+ // AND IT IS ALSO THE FASTER PATH, which is why `class` rides the same selector. Unclaimed, a style
15
+ // object reaches the renderer once per KEY — measured at ~7 000 renderer calls on the thousand-row
16
+ // bench row against 4 000 when an input claims it.
17
+ //
18
+ // MATCHED ON THE TAG, and the first spelling of this directive matched on `[style],[class]` instead
19
+ // — which does not work, for a reason worth keeping because it is invisible from the outside.
20
+ //
21
+ // `[style]` IS NOT A PROPERTY BINDING. The compiler routes it to `ɵɵstyleMap`, a styling instruction,
22
+ // and the name never lands in the `AttributeMarker.Bindings` run that `findAttrIndexInNode` walks
23
+ // (upstream `node_selector_matcher.ts:240-282`, where `Classes` and `Styles` markers are SKIPPED
24
+ // outright). So a directive selected on `[style]` never matches an element that binds one, and the
25
+ // value goes to the styling engine exactly as if no directive existed. Measured: the AOT fixture in
26
+ // `style-input-aot.test.ts` imports `SYMBIOTE_ELEMENTS`, carries this directive, and still threw
27
+ // `Unsupported styling type: function`. `[onPress]` and every other `on*` name DO work that way,
28
+ // which is why `callback-host.ts` can be attribute-matched and this one cannot.
29
+ //
30
+ // SO IT IS A TAG DIRECTIVE, and it is instantiated per element like the ones it replaces — including
31
+ // on elements that bind no style at all, because a tag selector is the only one that can match. What
32
+ // is bought is its SHAPE: two inputs and two injections against the withheld classes' 279 and three.
33
+ //
34
+ // MEASURED, AND SMALLER THAN THE IDEA PROMISED. On the JavaScriptCore ladder, withholding a directive
35
+ // outright is worth ~70-91 ms over ten thousand elements (`WITHHOLDING it`, 7.0-9.1 us each) — but
36
+ // the adapter cannot take that, because this directive has to stay. What it reads against a bare tag
37
+ // AFTER the change is 58.2 / 58.8 / 71.0 ms, against `a directive at all` at 50.2 / 55.9 / 68.3 in
38
+ // the same runs. Those two are the same number: a directive costs what a directive costs, thin or
39
+ // fat, and nearly all of it is matching and instantiating rather than inputs or injections.
40
+ //
41
+ // So the change is worth the FAT-TO-THIN difference and not the whole crossing — the ladder's own
42
+ // `279 inputs, not 1` (~19.9 ms) plus `the ChangeDetectorRef` (~10-31 ms). Recorded at that size
43
+ // rather than at the one the plan was aimed at.
44
+ //
45
+ // NO `ChangeDetectorRef` HERE. A style write is an ordinary prop write and marks nothing; the view
46
+ // marking belongs to the callback path and lives with it.
47
+ //
48
+ // THE FOUR TAGS THAT KEEP THEIR OWN DIRECTIVE ARE ABSENT from the selector — `text-input`,
49
+ // `text-input-multiline`, `switch` and `refresh-control`. Their fat directive still matches and
50
+ // already declares `style`, and two directives claiming one input both receive it and both forward
51
+ // it, which is the `unchanged` double write this adapter has measured before.
52
+ import { Directive, ElementRef, Renderer2, inject, } from '@angular/core';
53
+ import * as i0 from "@angular/core";
54
+ /** Exported for the guard, which derives the same set from the withheld directives' own selectors. */
55
+ export const STYLE_HOST_SELECTOR = 'view,symbiote-view,text,symbiote-text,image,symbiote-image,image-background,' +
56
+ 'pressable,symbiote-pressable,button,symbiote-button,touchable-opacity,touchable-highlight,' +
57
+ 'touchable-native-feedback,touchable-without-feedback,scroll-view,horizontal-scroll-view,' +
58
+ 'scroll-content,horizontal-scroll-content,activity-indicator,activity-indicator-spinner,' +
59
+ 'safe-area-view,modal,symbiote-modal,sticky-header,input-accessory-view';
60
+ export class SymbioteStyleHost {
61
+ constructor() {
62
+ this.renderer = inject(Renderer2);
63
+ this.host = inject(ElementRef);
64
+ }
65
+ ngOnChanges(changes) {
66
+ for (const name of Object.keys(changes))
67
+ this.renderer.setProperty(this.host.nativeElement, name, changes[name]?.currentValue);
68
+ }
69
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SymbioteStyleHost, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
70
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.8", type: SymbioteStyleHost, isStandalone: true, selector: "view,symbiote-view,text,symbiote-text,image,symbiote-image,image-background,pressable,symbiote-pressable,button,symbiote-button,touchable-opacity,touchable-highlight,touchable-native-feedback,touchable-without-feedback,scroll-view,horizontal-scroll-view,scroll-content,horizontal-scroll-content,activity-indicator,activity-indicator-spinner,safe-area-view,modal,symbiote-modal,sticky-header,input-accessory-view", inputs: { style: "style", class: "class" }, usesOnChanges: true, ngImport: i0 }); }
71
+ }
72
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SymbioteStyleHost, decorators: [{
73
+ type: Directive,
74
+ args: [{
75
+ selector: 'view,symbiote-view,text,symbiote-text,image,symbiote-image,image-background,' +
76
+ 'pressable,symbiote-pressable,button,symbiote-button,touchable-opacity,touchable-highlight,' +
77
+ 'touchable-native-feedback,touchable-without-feedback,scroll-view,horizontal-scroll-view,' +
78
+ 'scroll-content,horizontal-scroll-content,activity-indicator,activity-indicator-spinner,' +
79
+ 'safe-area-view,modal,symbiote-modal,sticky-header,input-accessory-view',
80
+ // Spelled out rather than referenced: ngtsc statically evaluates decorator metadata, and a
81
+ // computed selector makes it report the class as not standalone — see `callback-host.ts`.
82
+ inputs: ['style', 'class'],
83
+ standalone: true,
84
+ }]
85
+ }] });
86
+ //# sourceMappingURL=style-host.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"style-host.js","sourceRoot":"","sources":["../../src/style-host.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,EAAE;AACF,gGAAgG;AAChG,oGAAoG;AACpG,mGAAmG;AACnG,iGAAiG;AACjG,4EAA4E;AAC5E,EAAE;AACF,qGAAqG;AACrG,oGAAoG;AACpG,kGAAkG;AAClG,2DAA2D;AAC3D,EAAE;AACF,mGAAmG;AACnG,mGAAmG;AACnG,mDAAmD;AACnD,EAAE;AACF,oGAAoG;AACpG,8FAA8F;AAC9F,EAAE;AACF,sGAAsG;AACtG,kGAAkG;AAClG,iGAAiG;AACjG,mGAAmG;AACnG,oGAAoG;AACpG,iGAAiG;AACjG,iGAAiG;AACjG,gFAAgF;AAChF,EAAE;AACF,qGAAqG;AACrG,qGAAqG;AACrG,qGAAqG;AACrG,EAAE;AACF,sGAAsG;AACtG,mGAAmG;AACnG,qGAAqG;AACrG,mGAAmG;AACnG,kGAAkG;AAClG,4FAA4F;AAC5F,EAAE;AACF,kGAAkG;AAClG,iGAAiG;AACjG,gDAAgD;AAChD,EAAE;AACF,mGAAmG;AACnG,0DAA0D;AAC1D,EAAE;AACF,2FAA2F;AAC3F,gGAAgG;AAChG,mGAAmG;AACnG,8EAA8E;AAE9E,OAAO,EACL,SAAS,EACT,UAAU,EACV,SAAS,EAGT,MAAM,GACP,MAAM,eAAe,CAAC;;AAEvB,sGAAsG;AACtG,MAAM,CAAC,MAAM,mBAAmB,GAC9B,8EAA8E;IAC9E,4FAA4F;IAC5F,0FAA0F;IAC1F,yFAAyF;IACzF,wEAAwE,CAAC;AAc3E,MAAM,OAAO,iBAAiB;IAZ9B;QAamB,aAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAC7B,SAAI,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;KAU5C;IARC,WAAW,CAAC,OAAsB;QAChC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,WAAW,CACvB,IAAI,CAAC,IAAI,CAAC,aAAa,EACvB,IAAI,EACJ,OAAO,CAAC,IAAI,CAAC,EAAE,YAAY,CAC5B,CAAC;IACN,CAAC;8GAXU,iBAAiB;kGAAjB,iBAAiB;;2FAAjB,iBAAiB;kBAZ7B,SAAS;mBAAC;oBACT,QAAQ,EACN,8EAA8E;wBAC9E,4FAA4F;wBAC5F,0FAA0F;wBAC1F,yFAAyF;wBACzF,wEAAwE;oBAC1E,2FAA2F;oBAC3F,0FAA0F;oBAC1F,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;oBAC1B,UAAU,EAAE,IAAI;iBACjB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@symbiote-native/angular",
3
- "version": "2.0.1",
3
+ "version": "3.0.1",
4
4
  "description": "SymbioteNative's Angular adapter — a Renderer2/RendererFactory2 with DOM-less bootstrap driving real native iOS/Android views through the same engine as the other adapters.",
5
5
  "keywords": [
6
6
  "react-native",
@@ -66,14 +66,14 @@
66
66
  "dependencies": {
67
67
  "@angular/compiler-cli": "~22.0.8",
68
68
  "@react-native/typescript-config": "0.86.0",
69
- "@symbiote-native/components": "2.0.0",
70
- "@symbiote-native/css-parser": "0.5.0"
69
+ "@symbiote-native/css-parser": "0.5.0",
70
+ "@symbiote-native/components": "3.0.0"
71
71
  },
72
72
  "peerDependencies": {
73
73
  "@angular/core": ">=20",
74
74
  "@angular/forms": ">=20",
75
75
  "react-native": ">=0.86",
76
- "@symbiote-native/engine": "^0.5.0"
76
+ "@symbiote-native/engine": "^1.1.0"
77
77
  },
78
78
  "devDependencies": {
79
79
  "@angular/compiler": "~22.0.8",
@@ -83,8 +83,8 @@
83
83
  "@types/babel__core": "^7.20.5",
84
84
  "@types/node": "^26.0.0",
85
85
  "typescript": "~6.0.0",
86
- "@symbiote-native/engine": "0.5.0",
87
- "@symbiote-native/test-utils": "0.3.0"
86
+ "@symbiote-native/engine": "1.1.0",
87
+ "@symbiote-native/test-utils": "0.4.0"
88
88
  },
89
89
  "scripts": {
90
90
  "clean": "rm -rf build",
@@ -0,0 +1,229 @@
1
+ // The directive that owns a `ChangeDetectorRef` for the elements that actually need one.
2
+ //
3
+ // An `on*` PROP is forwarded to the engine node, and the ENGINE calls it — Angular is told nothing,
4
+ // so a plain field mutation inside the app's handler dirties no view. `createCallbackWrapper` fixes
5
+ // that with `markForCheck`, and until 2026-09-18 the ref it marked came from `SymbioteElement`
6
+ // injecting one on EVERY element, because any element MAY carry a callback.
7
+ //
8
+ // Almost none does. Priced on JavaScriptCore, an injection is ~1.0-2.4 us per element — 10-24 ms
9
+ // over the ten thousand of a thousand-row screen, all of it to build `ViewRef`s nothing reads
10
+ // (`core/engine/cpp/tests/js/angular-directive-cost.itest.ts`, the `ChangeDetectorRef` row).
11
+ //
12
+ // MATCHING IS THE CHEAPER QUESTION THAN INJECTING, and that had to be measured rather than assumed,
13
+ // because the selector below is dozens of alternatives and Angular tries a component's whole
14
+ // directive list against every element it creates. The ladder's `cb-probe` arm carries this exact
15
+ // string WITHOUT matching anything — the state of every element on the benchmark row — so the two
16
+ // halves are priced against each other in one process, rotated, with a resolution bar:
17
+ //
18
+ // carrying the selector 4.3 5.9 -2.0 5.7 -1.5 ms inside the bar in four of five
19
+ // the ChangeDetectorRef 9.7 23.5 13.6 31.3 23.8 ms
20
+ // the CALLBACK HOST -3.9 -9.3 -25.5 -25.6 -25.3 ms all five negative, three outside
21
+ //
22
+ // WHAT IS NOT VERIFIED, said plainly: the ladder's arm carries ONE element directive beside this one,
23
+ // where a real screen carries two dozen, and the `ng-elements` bench arm could not confirm the change
24
+ // at app scale — the machine it was measured on swung its untouched CONTROL from 229 to 566 ms, so
25
+ // nothing quoted off it would have carried a verdict either way. The controlled A/B is the evidence
26
+ // here; the bench-arm confirmation is owed.
27
+ //
28
+ // IT HOLDS NO INPUTS, which is what keeps the change off the public surface. The `on*` props stay
29
+ // declared on `SymbioteElement` and its subclasses, so every type and every forward is unchanged;
30
+ // this directive only needs to BE on the element, and a missing name in its selector costs a change
31
+ // detection mark rather than a prop. `callback-host-selector.test.ts` derives the list from the
32
+ // directives' own declared inputs so it cannot go stale quietly.
33
+ //
34
+ // A LEAF, like `change-detection-flush` and `renderer/value-change`: importing `elements.ts` from
35
+ // here would close a cycle, since that file is what puts this directive in `SYMBIOTE_ELEMENTS`.
36
+
37
+ import {
38
+ ChangeDetectorRef,
39
+ Directive,
40
+ ElementRef,
41
+ Renderer2,
42
+ type OnChanges,
43
+ type OnDestroy,
44
+ type SimpleChanges,
45
+ inject,
46
+ } from '@angular/core';
47
+ import {
48
+ registerViewMarker,
49
+ unregisterViewMarker,
50
+ } from './change-detection-flush';
51
+
52
+ /**
53
+ * Every `on*` input any element directive declares, except the one that fires per FRAME.
54
+ *
55
+ * `onScroll` is absent deliberately and not by oversight: with sticky headers RN pins
56
+ * `scrollEventThrottle` to 1, and `markForCheck` walks to the root, so wrapping it cost the canary
57
+ * ~37fps. `isWrappableCallback` excludes it, and the guard test asserts this string does too.
58
+ */
59
+ const CALLBACK_INPUTS = [
60
+ 'onAccessibilityAction',
61
+ 'onAccessibilityEscape',
62
+ 'onAccessibilityTap',
63
+ 'onBlur',
64
+ 'onChangeText',
65
+ 'onContentSizeChange',
66
+ 'onEndEditing',
67
+ 'onError',
68
+ 'onFocus',
69
+ 'onHoverIn',
70
+ 'onHoverOut',
71
+ 'onKeyPress',
72
+ 'onLayout',
73
+ 'onLoad',
74
+ 'onLoadEnd',
75
+ 'onLoadStart',
76
+ 'onLongPress',
77
+ 'onMagicTap',
78
+ 'onMomentumScrollBegin',
79
+ 'onMomentumScrollEnd',
80
+ 'onMoveShouldSetResponder',
81
+ 'onMoveShouldSetResponderCapture',
82
+ 'onPartialLoad',
83
+ 'onPress',
84
+ 'onPressIn',
85
+ 'onPressMove',
86
+ 'onPressOut',
87
+ 'onProgress',
88
+ 'onRefresh',
89
+ 'onResponderEnd',
90
+ 'onResponderGrant',
91
+ 'onResponderMove',
92
+ 'onResponderReject',
93
+ 'onResponderRelease',
94
+ 'onResponderStart',
95
+ 'onResponderTerminate',
96
+ 'onResponderTerminationRequest',
97
+ 'onScrollBeginDrag',
98
+ 'onScrollEndDrag',
99
+ 'onScrollToTop',
100
+ 'onSelectionChange',
101
+ 'onStartShouldSetResponder',
102
+ 'onStartShouldSetResponderCapture',
103
+ 'onSubmitEditing',
104
+ 'onValueChange',
105
+ ] as const;
106
+
107
+ /**
108
+ * THE SAME NAMES AS A LITERAL, and the duplication is forced rather than chosen.
109
+ *
110
+ * ngtsc STATICALLY EVALUATES a decorator's metadata, and a selector built with `.map().join()` is not
111
+ * something it can evaluate — it reports the class as `Component imports must be standalone
112
+ * components, directives, pipes, or must be NgModules`, which reads as a missing `standalone: true`
113
+ * and is not that. Thirty-seven of this adapter's compile-time guards went red on it at once.
114
+ *
115
+ * So the selector is written out, and `callback-host-selector.test.ts` holds the two in step.
116
+ */
117
+ export const CALLBACK_ATTRIBUTE_SELECTOR =
118
+ '[onAccessibilityAction],[onAccessibilityEscape],[onAccessibilityTap],[onBlur],' +
119
+ '[onChangeText],[onContentSizeChange],[onEndEditing],[onError],[onFocus],[onHoverIn],[onHoverOut],' +
120
+ '[onKeyPress],[onLayout],[onLoad],[onLoadEnd],[onLoadStart],[onLongPress],[onMagicTap],' +
121
+ '[onMomentumScrollBegin],[onMomentumScrollEnd],[onMoveShouldSetResponder],' +
122
+ '[onMoveShouldSetResponderCapture],[onPartialLoad],[onPress],[onPressIn],[onPressMove],' +
123
+ '[onPressOut],[onProgress],[onRefresh],[onResponderEnd],[onResponderGrant],[onResponderMove],' +
124
+ '[onResponderReject],[onResponderRelease],[onResponderStart],[onResponderTerminate],' +
125
+ '[onResponderTerminationRequest],[onScrollBeginDrag],[onScrollEndDrag],[onScrollToTop],' +
126
+ '[onSelectionChange],[onStartShouldSetResponder],[onStartShouldSetResponderCapture],' +
127
+ '[onSubmitEditing],[onValueChange]';
128
+
129
+ /** Exported for the guard alone — the decorator below must spell its own list for ngtsc. */
130
+ export const CALLBACK_INPUT_NAMES: readonly string[] = CALLBACK_INPUTS;
131
+
132
+ @Directive({
133
+ selector:
134
+ '[onAccessibilityAction],[onAccessibilityEscape],[onAccessibilityTap],[onBlur],' +
135
+ '[onContentSizeChange],[onEndEditing],[onError],[onFocus],[onHoverIn],[onHoverOut],' +
136
+ '[onKeyPress],[onLayout],[onLoad],[onLoadEnd],[onLoadStart],[onLongPress],[onMagicTap],' +
137
+ '[onMomentumScrollBegin],[onMomentumScrollEnd],[onMoveShouldSetResponder],' +
138
+ '[onMoveShouldSetResponderCapture],[onPartialLoad],[onPress],[onPressIn],[onPressMove],' +
139
+ '[onPressOut],[onProgress],[onRefresh],[onResponderEnd],[onResponderGrant],[onResponderMove],' +
140
+ '[onResponderReject],[onResponderRelease],[onResponderStart],[onResponderTerminate],' +
141
+ '[onResponderTerminationRequest],[onScrollBeginDrag],[onScrollEndDrag],[onScrollToTop],' +
142
+ '[onSelectionChange],[onStartShouldSetResponder],[onStartShouldSetResponderCapture],' +
143
+ '[onSubmitEditing],[onValueChange]',
144
+ // DECLARED, and this is not an optimisation — it is what makes withholding the tag directives
145
+ // possible at all. `ɵɵproperty` on an element no directive claimed ends in `setDomProperty`, which
146
+ // runs `validateAgainstEventProperties` and THROWS NG0306 on any name beginning with `on`
147
+ // (upstream `sanitization/sanitization.ts:267`). So an `on*` prop is not merely unwrapped without a
148
+ // claiming input — it is a hard runtime error, and the first attempt at this change hit it on the
149
+ // first test that binds one.
150
+ //
151
+ // The TYPES still come from `SymbioteElement` and its subclasses, which ngtsc goes on matching from
152
+ // the decorator's selector however empty the runtime array is. Angular requires an expression to
153
+ // satisfy EVERY directive that claims the input, so a permissive declaration here cannot loosen the
154
+ // exact one there.
155
+ inputs: [
156
+ 'onAccessibilityAction',
157
+ 'onAccessibilityEscape',
158
+ 'onAccessibilityTap',
159
+ 'onBlur',
160
+ 'onContentSizeChange',
161
+ 'onEndEditing',
162
+ 'onError',
163
+ 'onFocus',
164
+ 'onHoverIn',
165
+ 'onHoverOut',
166
+ 'onKeyPress',
167
+ 'onLayout',
168
+ 'onLoad',
169
+ 'onLoadEnd',
170
+ 'onLoadStart',
171
+ 'onLongPress',
172
+ 'onMagicTap',
173
+ 'onMomentumScrollBegin',
174
+ 'onMomentumScrollEnd',
175
+ 'onMoveShouldSetResponder',
176
+ 'onMoveShouldSetResponderCapture',
177
+ 'onPartialLoad',
178
+ 'onPress',
179
+ 'onPressIn',
180
+ 'onPressMove',
181
+ 'onPressOut',
182
+ 'onProgress',
183
+ 'onRefresh',
184
+ 'onResponderEnd',
185
+ 'onResponderGrant',
186
+ 'onResponderMove',
187
+ 'onResponderReject',
188
+ 'onResponderRelease',
189
+ 'onResponderStart',
190
+ 'onResponderTerminate',
191
+ 'onResponderTerminationRequest',
192
+ 'onScrollBeginDrag',
193
+ 'onScrollEndDrag',
194
+ 'onScrollToTop',
195
+ 'onSelectionChange',
196
+ 'onStartShouldSetResponder',
197
+ 'onStartShouldSetResponderCapture',
198
+ 'onSubmitEditing',
199
+ 'onValueChange',
200
+ ],
201
+ standalone: true,
202
+ })
203
+ export class SymbioteCallbackHost implements OnChanges, OnDestroy {
204
+ private readonly renderer = inject(Renderer2);
205
+ private readonly host = inject(ElementRef);
206
+ private readonly detector = inject(ChangeDetectorRef);
207
+
208
+ constructor() {
209
+ const node: unknown = this.host.nativeElement;
210
+ if (typeof node === 'object' && node !== null)
211
+ registerViewMarker(node, this.detector);
212
+ }
213
+
214
+ ngOnChanges(changes: SimpleChanges): void {
215
+ // The renderer wraps the value on its way through, so this forwards it raw — same shape as the
216
+ // tag directives' own forward, and the only place a withheld tag's callback can now come from.
217
+ for (const name of Object.keys(changes))
218
+ this.renderer.setProperty(
219
+ this.host.nativeElement,
220
+ name,
221
+ changes[name]?.currentValue,
222
+ );
223
+ }
224
+
225
+ ngOnDestroy(): void {
226
+ const node: unknown = this.host.nativeElement;
227
+ if (typeof node === 'object' && node !== null) unregisterViewMarker(node);
228
+ }
229
+ }