@memberjunction/react-runtime 6.2.0-edge.0 → 6.2.0-edge.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 (149) hide show
  1. package/.turbo/turbo-build.log +12 -12
  2. package/CHANGELOG.md +61 -0
  3. package/dist/compiler/babel-config.d.ts +14 -0
  4. package/dist/compiler/babel-config.d.ts.map +1 -1
  5. package/dist/compiler/babel-config.js +12 -3
  6. package/dist/compiler/babel-config.js.map +1 -1
  7. package/dist/compiler/component-compiler.d.ts +5 -0
  8. package/dist/compiler/component-compiler.d.ts.map +1 -1
  9. package/dist/compiler/component-compiler.js +24 -9
  10. package/dist/compiler/component-compiler.js.map +1 -1
  11. package/dist/compiler/index.d.ts +1 -1
  12. package/dist/compiler/index.d.ts.map +1 -1
  13. package/dist/compiler/index.js +1 -1
  14. package/dist/compiler/index.js.map +1 -1
  15. package/dist/component-manager/component-manager.d.ts +8 -0
  16. package/dist/component-manager/component-manager.d.ts.map +1 -1
  17. package/dist/component-manager/component-manager.js +18 -6
  18. package/dist/component-manager/component-manager.js.map +1 -1
  19. package/dist/index.d.ts +21 -9
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +13 -10
  22. package/dist/index.js.map +1 -1
  23. package/dist/registry/component-registry-service.d.ts +18 -0
  24. package/dist/registry/component-registry-service.d.ts.map +1 -1
  25. package/dist/registry/component-registry-service.js +65 -23
  26. package/dist/registry/component-registry-service.js.map +1 -1
  27. package/dist/registry/component-registry.d.ts +24 -1
  28. package/dist/registry/component-registry.d.ts.map +1 -1
  29. package/dist/registry/component-registry.js +74 -23
  30. package/dist/registry/component-registry.js.map +1 -1
  31. package/dist/registry/component-resolver.d.ts +10 -0
  32. package/dist/registry/component-resolver.d.ts.map +1 -1
  33. package/dist/registry/component-resolver.js +30 -9
  34. package/dist/registry/component-resolver.js.map +1 -1
  35. package/dist/registry/registry-provider.js.map +1 -1
  36. package/dist/runtime/component-hierarchy.d.ts +15 -0
  37. package/dist/runtime/component-hierarchy.d.ts.map +1 -1
  38. package/dist/runtime/component-hierarchy.js +28 -10
  39. package/dist/runtime/component-hierarchy.js.map +1 -1
  40. package/dist/runtime/error-boundary.d.ts +4 -0
  41. package/dist/runtime/error-boundary.d.ts.map +1 -1
  42. package/dist/runtime/error-boundary.js +50 -20
  43. package/dist/runtime/error-boundary.js.map +1 -1
  44. package/dist/runtime/index.d.ts +3 -3
  45. package/dist/runtime/index.d.ts.map +1 -1
  46. package/dist/runtime/index.js +3 -3
  47. package/dist/runtime/index.js.map +1 -1
  48. package/dist/runtime/prop-builder.d.ts +8 -0
  49. package/dist/runtime/prop-builder.d.ts.map +1 -1
  50. package/dist/runtime/prop-builder.js +39 -11
  51. package/dist/runtime/prop-builder.js.map +1 -1
  52. package/dist/runtime/react-root-manager.d.ts +10 -0
  53. package/dist/runtime/react-root-manager.d.ts.map +1 -1
  54. package/dist/runtime/react-root-manager.js +27 -9
  55. package/dist/runtime/react-root-manager.js.map +1 -1
  56. package/dist/runtime.umd.js +72 -72
  57. package/dist/utilities/cache-manager.d.ts +13 -0
  58. package/dist/utilities/cache-manager.d.ts.map +1 -1
  59. package/dist/utilities/cache-manager.js +40 -16
  60. package/dist/utilities/cache-manager.js.map +1 -1
  61. package/dist/utilities/component-error-analyzer.d.ts +3 -0
  62. package/dist/utilities/component-error-analyzer.d.ts.map +1 -1
  63. package/dist/utilities/component-error-analyzer.js +12 -3
  64. package/dist/utilities/component-error-analyzer.js.map +1 -1
  65. package/dist/utilities/component-hash.d.ts +1 -0
  66. package/dist/utilities/component-hash.d.ts.map +1 -1
  67. package/dist/utilities/component-hash.js +4 -1
  68. package/dist/utilities/component-hash.js.map +1 -1
  69. package/dist/utilities/component-library-theming.d.ts +4 -0
  70. package/dist/utilities/component-library-theming.d.ts.map +1 -1
  71. package/dist/utilities/component-library-theming.js +12 -6
  72. package/dist/utilities/component-library-theming.js.map +1 -1
  73. package/dist/utilities/component-styles.d.ts +1 -0
  74. package/dist/utilities/component-styles.d.ts.map +1 -1
  75. package/dist/utilities/component-styles.js +2 -1
  76. package/dist/utilities/component-styles.js.map +1 -1
  77. package/dist/utilities/component-unwrapper.d.ts +8 -2
  78. package/dist/utilities/component-unwrapper.d.ts.map +1 -1
  79. package/dist/utilities/component-unwrapper.js +19 -7
  80. package/dist/utilities/component-unwrapper.js.map +1 -1
  81. package/dist/utilities/core-libraries.d.ts +2 -0
  82. package/dist/utilities/core-libraries.d.ts.map +1 -1
  83. package/dist/utilities/core-libraries.js +9 -3
  84. package/dist/utilities/core-libraries.js.map +1 -1
  85. package/dist/utilities/entity-record-key.d.ts +1 -0
  86. package/dist/utilities/entity-record-key.d.ts.map +1 -1
  87. package/dist/utilities/entity-record-key.js +4 -1
  88. package/dist/utilities/entity-record-key.js.map +1 -1
  89. package/dist/utilities/library-dependency-resolver.d.ts +8 -0
  90. package/dist/utilities/library-dependency-resolver.d.ts.map +1 -1
  91. package/dist/utilities/library-dependency-resolver.js +39 -15
  92. package/dist/utilities/library-dependency-resolver.js.map +1 -1
  93. package/dist/utilities/library-loader.d.ts +12 -0
  94. package/dist/utilities/library-loader.d.ts.map +1 -1
  95. package/dist/utilities/library-loader.js +46 -16
  96. package/dist/utilities/library-loader.js.map +1 -1
  97. package/dist/utilities/library-registry.d.ts +5 -0
  98. package/dist/utilities/library-registry.d.ts.map +1 -1
  99. package/dist/utilities/library-registry.js +20 -5
  100. package/dist/utilities/library-registry.js.map +1 -1
  101. package/dist/utilities/resource-manager.d.ts +19 -0
  102. package/dist/utilities/resource-manager.d.ts.map +1 -1
  103. package/dist/utilities/resource-manager.js +63 -18
  104. package/dist/utilities/resource-manager.js.map +1 -1
  105. package/dist/utilities/runtime-utilities.d.ts +9 -7
  106. package/dist/utilities/runtime-utilities.d.ts.map +1 -1
  107. package/dist/utilities/runtime-utilities.js +22 -16
  108. package/dist/utilities/runtime-utilities.js.map +1 -1
  109. package/dist/utilities/standard-libraries.d.ts +10 -0
  110. package/dist/utilities/standard-libraries.d.ts.map +1 -1
  111. package/dist/utilities/standard-libraries.js +40 -10
  112. package/dist/utilities/standard-libraries.js.map +1 -1
  113. package/dist/utilities/user-state.d.ts +5 -0
  114. package/dist/utilities/user-state.d.ts.map +1 -1
  115. package/dist/utilities/user-state.js +20 -5
  116. package/dist/utilities/user-state.js.map +1 -1
  117. package/package.json +7 -7
  118. package/src/__tests__/error-boundary.test.ts +80 -0
  119. package/src/__tests__/runtime-utilities-factory.test.ts +4 -4
  120. package/src/__tests__/user-state.test.ts +44 -44
  121. package/src/compiler/babel-config.ts +18 -3
  122. package/src/compiler/component-compiler.ts +34 -9
  123. package/src/compiler/index.ts +3 -3
  124. package/src/component-manager/component-manager.ts +36 -6
  125. package/src/index.ts +35 -21
  126. package/src/registry/component-registry-service.ts +126 -23
  127. package/src/registry/component-registry.ts +122 -24
  128. package/src/registry/component-resolver.ts +51 -9
  129. package/src/registry/registry-provider.ts +40 -40
  130. package/src/runtime/component-hierarchy.ts +61 -10
  131. package/src/runtime/error-boundary.ts +77 -22
  132. package/src/runtime/index.ts +16 -16
  133. package/src/runtime/prop-builder.ts +69 -11
  134. package/src/runtime/react-root-manager.ts +48 -10
  135. package/src/utilities/cache-manager.ts +61 -16
  136. package/src/utilities/component-error-analyzer.ts +18 -3
  137. package/src/utilities/component-hash.ts +6 -1
  138. package/src/utilities/component-library-theming.ts +24 -6
  139. package/src/utilities/component-styles.ts +4 -1
  140. package/src/utilities/component-unwrapper.ts +34 -7
  141. package/src/utilities/core-libraries.ts +13 -3
  142. package/src/utilities/entity-record-key.ts +11 -1
  143. package/src/utilities/library-dependency-resolver.ts +66 -15
  144. package/src/utilities/library-loader.ts +81 -17
  145. package/src/utilities/library-registry.ts +30 -5
  146. package/src/utilities/resource-manager.ts +126 -19
  147. package/src/utilities/runtime-utilities.ts +26 -16
  148. package/src/utilities/standard-libraries.ts +60 -10
  149. package/src/utilities/user-state.ts +40 -5
@@ -1 +1 @@
1
- {"version":3,"file":"component-styles.js","sourceRoot":"","sources":["../../src/utilities/component-styles.ts"],"names":[],"mappings":"AAYA,MAAM,UAAU,WAAW;IAEzB,OAAO;QACL,MAAM,EAAE;YAEN,OAAO,EAAE,SAAS;YAClB,YAAY,EAAE,SAAS;YACvB,aAAa,EAAE,SAAS;YACxB,YAAY,EAAE,SAAS;YAGvB,SAAS,EAAE,SAAS;YACpB,cAAc,EAAE,SAAS;YAGzB,OAAO,EAAE,SAAS;YAClB,YAAY,EAAE,SAAS;YACvB,WAAW,EAAE,SAAS;YACtB,aAAa,EAAE,SAAS;YACxB,OAAO,EAAE,SAAS;YAClB,YAAY,EAAE,SAAS;YACvB,WAAW,EAAE,SAAS;YACtB,aAAa,EAAE,SAAS;YACxB,KAAK,EAAE,SAAS;YAChB,UAAU,EAAE,SAAS;YACrB,SAAS,EAAE,SAAS;YACpB,WAAW,EAAE,SAAS;YACtB,IAAI,EAAE,SAAS;YACf,SAAS,EAAE,SAAS;YACpB,QAAQ,EAAE,SAAS;YACnB,UAAU,EAAE,SAAS;YAGrB,UAAU,EAAE,SAAS;YACrB,OAAO,EAAE,SAAS;YAClB,YAAY,EAAE,SAAS;YACvB,OAAO,EAAE,oBAAoB;YAG7B,IAAI,EAAE,SAAS;YACf,aAAa,EAAE,SAAS;YACxB,YAAY,EAAE,SAAS;YACvB,WAAW,EAAE,SAAS;YAGtB,IAAI,EAAE,SAAS;YACf,SAAS,EAAE,SAAS;YAGpB,MAAM,EAAE,SAAS;YACjB,WAAW,EAAE,SAAS;YACtB,WAAW,EAAE,SAAS;YAGtB,MAAM,EAAE,qBAAqB;YAC7B,YAAY,EAAE,oBAAoB;YAClC,WAAW,EAAE,qBAAqB;SACnC;QACD,OAAO,EAAE;YACP,EAAE,EAAE,KAAK;YACT,EAAE,EAAE,KAAK;YACT,EAAE,EAAE,MAAM;YACV,EAAE,EAAE,MAAM;YACV,EAAE,EAAE,MAAM;YACV,GAAG,EAAE,MAAM;YACX,IAAI,EAAE,MAAM;SACb;QACD,UAAU,EAAE;YACV,UAAU,EAAE,4EAA4E;YACxF,QAAQ,EAAE;gBACR,EAAE,EAAE,MAAM;gBACV,EAAE,EAAE,MAAM;gBACV,EAAE,EAAE,MAAM;gBACV,EAAE,EAAE,MAAM;gBACV,EAAE,EAAE,MAAM;gBACV,GAAG,EAAE,MAAM;gBACX,IAAI,EAAE,MAAM;aACb;YACD,UAAU,EAAE;gBACV,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,KAAK;gBACb,QAAQ,EAAE,KAAK;gBACf,IAAI,EAAE,KAAK;aACZ;YACD,UAAU,EAAE;gBACV,KAAK,EAAE,MAAM;gBACb,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,MAAM;aAChB;SACF;QACD,OAAO,EAAE;YACP,MAAM,EAAE;gBACN,EAAE,EAAE,KAAK;gBACT,EAAE,EAAE,KAAK;gBACT,EAAE,EAAE,MAAM;gBACV,EAAE,EAAE,MAAM;gBACV,IAAI,EAAE,QAAQ;aACf;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,KAAK;gBACX,MAAM,EAAE,KAAK;gBACb,KAAK,EAAE,KAAK;aACb;SACF;QACD,OAAO,EAAE;YACP,EAAE,EAAE,iCAAiC;YACrC,EAAE,EAAE,uEAAuE;YAC3E,EAAE,EAAE,yEAAyE;YAC7E,EAAE,EAAE,2EAA2E;YAC/E,KAAK,EAAE,uCAAuC;SAC/C;QACD,WAAW,EAAE;YACX,IAAI,EAAE,mBAAmB;YACzB,MAAM,EAAE,mBAAmB;YAC3B,IAAI,EAAE,mBAAmB;SAC1B;QACD,QAAQ,EAAE,MAAM;QAGhB,YAAY,EAAE;YACZ,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS;YACrD,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS;SACtD;QAGD,eAAe,EAAE;YACf,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS;SAC5E;QAGD,cAAc,EAAE;YACd,GAAG,EAAE,SAAS;YACd,GAAG,EAAE,SAAS;YACd,IAAI,EAAE,SAAS;SAChB;KACF,CAAA;AACH,CAAC;AAGD,MAAM,CAAC,MAAM,4BAA4B,GAAG,WAAW,CAAC;AAQxD,MAAM,qBAAqB,GAA2B;IAEpD,OAAO,EAAE,oBAAoB;IAC7B,YAAY,EAAE,0BAA0B;IACxC,aAAa,EAAE,2BAA2B;IAC1C,YAAY,EAAE,0BAA0B;IAExC,SAAS,EAAE,sBAAsB;IACjC,cAAc,EAAE,4BAA4B;IAE5C,OAAO,EAAE,qBAAqB;IAC9B,YAAY,EAAE,wBAAwB;IACtC,WAAW,EAAE,0BAA0B;IACvC,aAAa,EAAE,4BAA4B;IAC3C,OAAO,EAAE,qBAAqB;IAC9B,YAAY,EAAE,wBAAwB;IACtC,WAAW,EAAE,0BAA0B;IACvC,aAAa,EAAE,4BAA4B;IAC3C,KAAK,EAAE,mBAAmB;IAC1B,UAAU,EAAE,sBAAsB;IAClC,SAAS,EAAE,wBAAwB;IACnC,WAAW,EAAE,0BAA0B;IACvC,IAAI,EAAE,kBAAkB;IACxB,SAAS,EAAE,qBAAqB;IAChC,QAAQ,EAAE,uBAAuB;IACjC,UAAU,EAAE,yBAAyB;IAErC,UAAU,EAAE,cAAc;IAC1B,OAAO,EAAE,iBAAiB;IAC1B,YAAY,EAAE,uBAAuB;IACrC,OAAO,EAAE,iBAAiB;IAE1B,IAAI,EAAE,mBAAmB;IACzB,aAAa,EAAE,qBAAqB;IACpC,YAAY,EAAE,iBAAiB;IAC/B,WAAW,EAAE,mBAAmB;IAEhC,IAAI,EAAE,gBAAgB;IACtB,SAAS,EAAE,sBAAsB;IAEjC,MAAM,EAAE,qBAAqB;IAC7B,WAAW,EAAE,oBAAoB;IACjC,WAAW,EAAE,mBAAmB;CACjC,CAAC;AAGF,MAAM,eAAe,GAAG,EAAE,CAAC;AAG3B,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAe9B,SAAS,kBAAkB,CAAC,MAAmC;IAC7D,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;QACjC,OAAO,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACzD,CAAC;IACD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC9F,IAAI,CAAC,EAAE,IAAI,OAAO,gBAAgB,KAAK,WAAW,EAAE,CAAC;QACnD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,EAAE,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC;IAChC,OAAO,CAAC,KAAa,EAAE,EAAE,CAAC,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;AAC9D,CAAC;AAyBD,MAAM,UAAU,oBAAoB,CAAC,MAAmC;IACtE,MAAM,IAAI,GAAG,WAAW,EAAE,CAAC;IAE3B,MAAM,IAAI,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACxC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAE,CAAC;QAClE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;IAC9B,CAAC;IAED,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,mBAAmB,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,KAAK,EAAE,CAAC;YACV,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IAGD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC;IACpC,CAAC;IAID,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC1C,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACxC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAC9G,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAGD,MAAM,iBAAiB,GAA2B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAGhF,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAM5B,SAAS,cAAc,CAAC,QAA4C,EAAE,MAAc;IAClF,MAAM,MAAM,GAAuC,EAAE,CAAC;IACtD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpD,MAAM,EAAE,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,2BAA2B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACtF,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE;YACd,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI;YAC3E,CAAC,CAAC,KAAK,CAAC;IACZ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAuBD,MAAM,UAAU,mBAAmB,CAAqC,IAAO,EAAE,SAA0B;IACzG,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,SAAS,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;IAEnG,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,SAAS,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;IACvG,MAAM,YAAY,GAAG,CAAC,CAAC,SAAS,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,CAAC;IAEzF,MAAM,UAAU,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5F,MAAM,YAAY,GAAG,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC;IAEjE,IAAI,CAAC,eAAe,IAAI,CAAC,aAAa,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,EAAE,CAAC;QACzE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,GAAG,IAAI;QACP,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,SAAS,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,SAAS,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,GAAG,CAAC,YAAY;YACd,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,GAAG,IAAI,CAAC,UAAW,EAAE,QAAQ,EAAE,cAAc,CAAC,IAAI,CAAC,UAAW,CAAC,QAAQ,EAAE,UAAW,CAAC,EAAE,EAAE;YAC3G,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC","sourcesContent":["/**\n * @fileoverview Default component styles for React runtime\n * @module @memberjunction/react-runtime/utilities\n */\n\nimport { ComponentStyles, StyleOverrides } from '@memberjunction/interactive-component-types';\n\n/**\n * Creates the default component styles for Skip components\n * These provide a modern, contemporary look and feel\n * Copied from skip-chat implementation\n */\nexport function SetupStyles(): ComponentStyles {\n // Return modern, contemporary styles for generated components\n return {\n colors: {\n // Primary colors - modern purple/blue gradient feel\n primary: '#5B4FE9',\n primaryHover: '#4940D4',\n primaryActive: '#3E37B8',\n primaryLight: '#E8E6FF',\n\n // Secondary colors - sophisticated gray\n secondary: '#64748B',\n secondaryHover: '#475569',\n \n // Status colors\n success: '#10B981',\n successLight: '#D1FAE5',\n successText: '#047857',\n successBorder: '#b7eb8f',\n warning: '#F59E0B',\n warningLight: '#FEF3C7',\n warningText: '#8c6c00',\n warningBorder: '#ffe58f',\n error: '#EF4444',\n errorLight: '#FEE2E2',\n errorText: '#B91C1C',\n errorBorder: '#FECACA',\n info: '#3B82F6',\n infoLight: '#DBEAFE',\n infoText: '#1D4ED8',\n infoBorder: '#91d5ff',\n\n // Base colors\n background: '#FFFFFF',\n surface: '#F8FAFC',\n surfaceHover: '#F1F5F9',\n overlay: 'rgba(0, 0, 0, 0.5)', // Modal scrim\n \n // Text colors with better contrast\n text: '#1E293B',\n textSecondary: '#64748B',\n textTertiary: '#94A3B8',\n textInverse: '#FFFFFF',\n\n // Link colors\n link: '#5B4FE9',\n linkHover: '#4940D4',\n\n // Border colors\n border: '#E2E8F0',\n borderLight: '#F1F5F9',\n borderFocus: '#5B4FE9',\n \n // Shadows (as color strings for easy use)\n shadow: 'rgba(0, 0, 0, 0.05)',\n shadowMedium: 'rgba(0, 0, 0, 0.1)',\n shadowLarge: 'rgba(0, 0, 0, 0.15)',\n },\n spacing: {\n xs: '4px',\n sm: '8px',\n md: '16px',\n lg: '24px',\n xl: '32px',\n xxl: '48px',\n xxxl: '64px',\n },\n typography: {\n fontFamily: '-apple-system, BlinkMacSystemFont, \"Inter\", \"Segoe UI\", Roboto, sans-serif',\n fontSize: {\n xs: '11px',\n sm: '12px',\n md: '14px',\n lg: '16px',\n xl: '20px',\n xxl: '24px',\n xxxl: '32px',\n },\n fontWeight: {\n light: '300',\n regular: '400',\n medium: '500',\n semibold: '600',\n bold: '700',\n },\n lineHeight: {\n tight: '1.25',\n normal: '1.5',\n relaxed: '1.75',\n },\n },\n borders: {\n radius: {\n sm: '6px',\n md: '8px',\n lg: '12px',\n xl: '16px',\n full: '9999px',\n },\n width: {\n thin: '1px',\n medium: '2px',\n thick: '3px',\n },\n },\n shadows: {\n sm: '0 1px 2px 0 rgba(0, 0, 0, 0.05)',\n md: '0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)',\n lg: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)',\n xl: '0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)',\n inner: 'inset 0 2px 4px 0 rgba(0, 0, 0, 0.06)',\n },\n transitions: {\n fast: '150ms ease-in-out',\n normal: '250ms ease-in-out',\n slow: '350ms ease-in-out',\n },\n overflow: 'auto', // Default overflow style\n // Default categorical palette for multi-series charts. Overridden per-theme\n // from the host's `--mj-viz-*` tokens by BuildStylesFromTheme().\n chartPalette: [\n '#2196F3', '#4CAF50', '#FF9800', '#E91E63', '#9C27B0',\n '#00BCD4', '#F44336', '#8BC34A', '#FF5722', '#3F51B5',\n ],\n // Default sequential (single-hue) intensity ramp, light-to-dark, for heatmaps\n // and density shading. Overridden per-theme from `--mj-viz-seq-*`.\n sequentialScale: [\n '#E3F2FD', '#BBDEFB', '#90CAF9', '#42A5F5', '#2196F3', '#1976D2', '#0D47A1',\n ],\n // Default diverging ramp for measures with a meaningful midpoint.\n // Overridden per-theme from `--mj-viz-div-*`.\n divergingScale: {\n low: '#F44336',\n mid: '#EEEEEE',\n high: '#4CAF50',\n },\n }\n}\n\n// Also export with the original name for backward compatibility\nexport const createDefaultComponentStyles = SetupStyles;\n\n/**\n * The `--mj-*` semantic token → `ComponentStyles` mapping used by the theme bridge.\n * Keys are ComponentStyles color paths; values are the CSS custom property to read.\n * Only theme-defining tokens with a clear semantic equivalent are mapped; every\n * other field keeps its `SetupStyles()` default.\n */\nconst THEME_COLOR_TOKEN_MAP: Record<string, string> = {\n // Brand / primary + interactive states\n primary: '--mj-brand-primary',\n primaryHover: '--mj-brand-primary-hover',\n primaryActive: '--mj-brand-primary-active',\n primaryLight: '--mj-brand-primary-light',\n // Secondary\n secondary: '--mj-brand-secondary',\n secondaryHover: '--mj-brand-secondary-hover',\n // Status\n success: '--mj-status-success',\n successLight: '--mj-status-success-bg',\n successText: '--mj-status-success-text',\n successBorder: '--mj-status-success-border',\n warning: '--mj-status-warning',\n warningLight: '--mj-status-warning-bg',\n warningText: '--mj-status-warning-text',\n warningBorder: '--mj-status-warning-border',\n error: '--mj-status-error',\n errorLight: '--mj-status-error-bg',\n errorText: '--mj-status-error-text',\n errorBorder: '--mj-status-error-border',\n info: '--mj-status-info',\n infoLight: '--mj-status-info-bg',\n infoText: '--mj-status-info-text',\n infoBorder: '--mj-status-info-border',\n // Surfaces (MJ: page = tinted, surface = elevated/white in light mode)\n background: '--mj-bg-page',\n surface: '--mj-bg-surface',\n surfaceHover: '--mj-bg-surface-hover',\n overlay: '--mj-bg-overlay',\n // Text\n text: '--mj-text-primary',\n textSecondary: '--mj-text-secondary',\n textTertiary: '--mj-text-muted',\n textInverse: '--mj-text-inverse',\n // Links\n link: '--mj-text-link',\n linkHover: '--mj-text-link-hover',\n // Borders / focus\n border: '--mj-border-default',\n borderLight: '--mj-border-subtle',\n borderFocus: '--mj-border-focus',\n};\n\n/** Number of `--mj-viz-N` categorical tokens the bridge probes for `chartPalette`. */\nconst VIZ_TOKEN_COUNT = 10;\n\n/** Number of `--mj-viz-seq-N` tokens the bridge probes for `sequentialScale`. */\nconst VIZ_SEQ_TOKEN_COUNT = 7;\n\n/**\n * Resolves a single `--mj-*` design token to its value.\n *\n * Returns an empty string or `undefined` for a token the host does not define — the caller treats\n * both as \"absent\" and keeps the {@link SetupStyles} default for that slot.\n */\nexport type ThemeTokenReader = (token: string) => string | undefined;\n\n/**\n * Normalizes the accepted token sources into one reader, or `null` when there is nothing to read.\n *\n * @param source An element, a reader function, or nothing.\n */\nfunction resolveTokenReader(source?: Element | ThemeTokenReader): ThemeTokenReader | null {\n if (typeof source === 'function') {\n return (token: string) => (source(token) ?? '').trim();\n }\n const el = source ?? (typeof document !== 'undefined' ? document.documentElement : undefined);\n if (!el || typeof getComputedStyle === 'undefined') {\n return null;\n }\n const cs = getComputedStyle(el);\n return (token: string) => cs.getPropertyValue(token).trim();\n}\n\n/**\n * Reads the live MJ theme (`--mj-*` custom properties on the document root) and\n * layers it over `SetupStyles()`, producing a `ComponentStyles` that follows the\n * host's active theme — including dark mode and interactive-state (hover/active/\n * focus) families — instead of the frozen default palette. This is the Phase 1\n * theme bridge that gives generated components shell↔content cohesion.\n *\n * DOM-guarded: in non-DOM environments (Node test harness, SSR) there is no\n * computed theme to read, so it returns `SetupStyles()` unchanged. Any individual\n * token that is absent falls back to its `SetupStyles()` default, so a page\n * without MJ tokens loaded also degrades cleanly.\n *\n * ## Reading tokens from somewhere other than the DOM\n *\n * A host without CSS custom properties — React Native is the one that exists — still has the same\n * `--mj-*` token VALUES, just not in a stylesheet. Passing a {@link ThemeTokenReader} feeds those\n * values through the identical mapping below, so a native surface and a browser derive\n * `ComponentStyles` from one table rather than from two that drift. Nothing about the mapping is\n * DOM-specific; only the lookup was.\n *\n * @param source optional element to read tokens from (defaults to the document root), or a reader\n * function for hosts that hold their token values outside CSS.\n */\nexport function BuildStylesFromTheme(source?: Element | ThemeTokenReader): ComponentStyles {\n const base = SetupStyles();\n\n const read = resolveTokenReader(source);\n if (!read) {\n return base;\n }\n\n for (const [path, token] of Object.entries(THEME_COLOR_TOKEN_MAP)) {\n const value = read(token);\n if (value) {\n base.colors[path] = value;\n }\n }\n\n const palette: string[] = [];\n for (let i = 1; i <= VIZ_TOKEN_COUNT; i++) {\n const value = read(`--mj-viz-${i}`);\n if (value) {\n palette.push(value);\n }\n }\n if (palette.length > 0) {\n base.chartPalette = palette;\n }\n\n const sequential: string[] = [];\n for (let i = 1; i <= VIZ_SEQ_TOKEN_COUNT; i++) {\n const value = read(`--mj-viz-seq-${i}`);\n if (value) {\n sequential.push(value);\n }\n }\n // A ramp needs at least two stops to interpolate; a single resolved token is\n // treated as an incomplete theme and left on the default.\n if (sequential.length > 1) {\n base.sequentialScale = sequential;\n }\n\n // Endpoints are required for a diverging scale to mean anything; `mid` is\n // optional, so only the low/high pair gates the swap.\n const divLow = read('--mj-viz-div-low');\n const divHigh = read('--mj-viz-div-high');\n if (divLow && divHigh) {\n const divMid = read('--mj-viz-div-mid');\n base.divergingScale = divMid ? { low: divLow, mid: divMid, high: divHigh } : { low: divLow, high: divHigh };\n }\n\n return base;\n}\n\n/** Multipliers applied to the whole `fontSize` ladder per `StyleOverrides.fontScale`. */\nconst FONT_SCALE_FACTOR: Record<string, number> = { small: 0.875, large: 1.25 };\n\n/** Smallest px size the scale may produce, so `small` cannot render text illegible. */\nconst MIN_FONT_SIZE_PX = 10;\n\n/**\n * Rescales every px value in a `fontSize` token map, leaving anything not expressed\n * in whole px (rem, em, clamp(), a keyword) untouched rather than guessing at it.\n */\nfunction scaleFontSizes(fontSize: Record<string, string | undefined>, factor: number): Record<string, string | undefined> {\n const scaled: Record<string, string | undefined> = {};\n for (const [key, value] of Object.entries(fontSize)) {\n const px = typeof value === 'string' ? /^\\s*(\\d+(?:\\.\\d+)?)px\\s*$/.exec(value) : null;\n scaled[key] = px\n ? `${Math.max(MIN_FONT_SIZE_PX, Math.round(parseFloat(px[1]) * factor))}px`\n : value;\n }\n return scaled;\n}\n\n/**\n * Layers explicitly user-requested styling (`ComponentSpec.styleOverrides`) over\n * theme-resolved styles, producing the `styles` a component actually receives.\n *\n * This is what lets \"make the charts blue\" be honored without a color literal ever\n * entering generated code: the request is carried as spec data and resolved here,\n * above the org theme, so the component keeps reading `styles.chartPalette` and\n * friends. Of the color slots only visualization ones are merged — the override\n * contract deliberately has no background/text/border slots, since those cannot be\n * flipped for dark mode without derived per-mode variants.\n *\n * `fontScale` is the one non-color slot, and it rescales the `typography.fontSize`\n * ladder in place. Doing it here rather than in the generator is what makes a type\n * scale hold: every token moves at once, so text inside registry components and\n * third-party libraries scales along with the generated markup.\n *\n * Returns `base` unchanged when there are no overrides, and never mutates `base`.\n *\n * @param base theme-resolved styles (from `BuildStylesFromTheme()` or `SetupStyles()`)\n * @param overrides the spec's `styleOverrides`, if any\n */\nexport function ApplyStyleOverrides<T extends Partial<ComponentStyles>>(base: T, overrides?: StyleOverrides): T {\n if (!overrides) {\n return base;\n }\n\n const hasChartPalette = Array.isArray(overrides.chartPalette) && overrides.chartPalette.length > 0;\n // A ramp needs at least two stops to interpolate between.\n const hasSequential = Array.isArray(overrides.sequentialScale) && overrides.sequentialScale.length > 1;\n const hasDiverging = !!overrides.divergingScale?.low && !!overrides.divergingScale?.high;\n // 'normal' — and any unrecognized value — leaves the ladder alone.\n const fontFactor = overrides.fontScale ? FONT_SCALE_FACTOR[overrides.fontScale] : undefined;\n const hasFontScale = !!fontFactor && !!base.typography?.fontSize;\n\n if (!hasChartPalette && !hasSequential && !hasDiverging && !hasFontScale) {\n return base;\n }\n\n return {\n ...base,\n ...(hasChartPalette ? { chartPalette: overrides.chartPalette } : {}),\n ...(hasSequential ? { sequentialScale: overrides.sequentialScale } : {}),\n ...(hasDiverging ? { divergingScale: overrides.divergingScale } : {}),\n ...(hasFontScale\n ? { typography: { ...base.typography!, fontSize: scaleFontSizes(base.typography!.fontSize, fontFactor!) } }\n : {}),\n };\n}"]}
1
+ {"version":3,"file":"component-styles.js","sourceRoot":"","sources":["../../src/utilities/component-styles.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @fileoverview Default component styles for React runtime\n * @module @memberjunction/react-runtime/utilities\n */\n\nimport { ComponentStyles, StyleOverrides } from '@memberjunction/interactive-component-types';\n\n/**\n * Creates the default component styles for Skip components\n * These provide a modern, contemporary look and feel\n * Copied from skip-chat implementation\n */\nexport function SetupStyles(): ComponentStyles {\n // Return modern, contemporary styles for generated components\n return {\n colors: {\n // Primary colors - modern purple/blue gradient feel\n primary: '#5B4FE9',\n primaryHover: '#4940D4',\n primaryActive: '#3E37B8',\n primaryLight: '#E8E6FF',\n\n // Secondary colors - sophisticated gray\n secondary: '#64748B',\n secondaryHover: '#475569',\n \n // Status colors\n success: '#10B981',\n successLight: '#D1FAE5',\n successText: '#047857',\n successBorder: '#b7eb8f',\n warning: '#F59E0B',\n warningLight: '#FEF3C7',\n warningText: '#8c6c00',\n warningBorder: '#ffe58f',\n error: '#EF4444',\n errorLight: '#FEE2E2',\n errorText: '#B91C1C',\n errorBorder: '#FECACA',\n info: '#3B82F6',\n infoLight: '#DBEAFE',\n infoText: '#1D4ED8',\n infoBorder: '#91d5ff',\n\n // Base colors\n background: '#FFFFFF',\n surface: '#F8FAFC',\n surfaceHover: '#F1F5F9',\n overlay: 'rgba(0, 0, 0, 0.5)', // Modal scrim\n \n // Text colors with better contrast\n text: '#1E293B',\n textSecondary: '#64748B',\n textTertiary: '#94A3B8',\n textInverse: '#FFFFFF',\n\n // Link colors\n link: '#5B4FE9',\n linkHover: '#4940D4',\n\n // Border colors\n border: '#E2E8F0',\n borderLight: '#F1F5F9',\n borderFocus: '#5B4FE9',\n \n // Shadows (as color strings for easy use)\n shadow: 'rgba(0, 0, 0, 0.05)',\n shadowMedium: 'rgba(0, 0, 0, 0.1)',\n shadowLarge: 'rgba(0, 0, 0, 0.15)',\n },\n spacing: {\n xs: '4px',\n sm: '8px',\n md: '16px',\n lg: '24px',\n xl: '32px',\n xxl: '48px',\n xxxl: '64px',\n },\n typography: {\n fontFamily: '-apple-system, BlinkMacSystemFont, \"Inter\", \"Segoe UI\", Roboto, sans-serif',\n fontSize: {\n xs: '11px',\n sm: '12px',\n md: '14px',\n lg: '16px',\n xl: '20px',\n xxl: '24px',\n xxxl: '32px',\n },\n fontWeight: {\n light: '300',\n regular: '400',\n medium: '500',\n semibold: '600',\n bold: '700',\n },\n lineHeight: {\n tight: '1.25',\n normal: '1.5',\n relaxed: '1.75',\n },\n },\n borders: {\n radius: {\n sm: '6px',\n md: '8px',\n lg: '12px',\n xl: '16px',\n full: '9999px',\n },\n width: {\n thin: '1px',\n medium: '2px',\n thick: '3px',\n },\n },\n shadows: {\n sm: '0 1px 2px 0 rgba(0, 0, 0, 0.05)',\n md: '0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)',\n lg: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)',\n xl: '0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)',\n inner: 'inset 0 2px 4px 0 rgba(0, 0, 0, 0.06)',\n },\n transitions: {\n fast: '150ms ease-in-out',\n normal: '250ms ease-in-out',\n slow: '350ms ease-in-out',\n },\n overflow: 'auto', // Default overflow style\n // Default categorical palette for multi-series charts. Overridden per-theme\n // from the host's `--mj-viz-*` tokens by BuildStylesFromTheme().\n chartPalette: [\n '#2196F3', '#4CAF50', '#FF9800', '#E91E63', '#9C27B0',\n '#00BCD4', '#F44336', '#8BC34A', '#FF5722', '#3F51B5',\n ],\n // Default sequential (single-hue) intensity ramp, light-to-dark, for heatmaps\n // and density shading. Overridden per-theme from `--mj-viz-seq-*`.\n sequentialScale: [\n '#E3F2FD', '#BBDEFB', '#90CAF9', '#42A5F5', '#2196F3', '#1976D2', '#0D47A1',\n ],\n // Default diverging ramp for measures with a meaningful midpoint.\n // Overridden per-theme from `--mj-viz-div-*`.\n divergingScale: {\n low: '#F44336',\n mid: '#EEEEEE',\n high: '#4CAF50',\n },\n }\n}\n\n// Also export with the original name for backward compatibility\nexport const CreateDefaultComponentStyles = SetupStyles;\n\n/** @deprecated Use {@link CreateDefaultComponentStyles}. */\nexport const createDefaultComponentStyles = CreateDefaultComponentStyles;\n\n/**\n * The `--mj-*` semantic token → `ComponentStyles` mapping used by the theme bridge.\n * Keys are ComponentStyles color paths; values are the CSS custom property to read.\n * Only theme-defining tokens with a clear semantic equivalent are mapped; every\n * other field keeps its `SetupStyles()` default.\n */\nconst THEME_COLOR_TOKEN_MAP: Record<string, string> = {\n // Brand / primary + interactive states\n primary: '--mj-brand-primary',\n primaryHover: '--mj-brand-primary-hover',\n primaryActive: '--mj-brand-primary-active',\n primaryLight: '--mj-brand-primary-light',\n // Secondary\n secondary: '--mj-brand-secondary',\n secondaryHover: '--mj-brand-secondary-hover',\n // Status\n success: '--mj-status-success',\n successLight: '--mj-status-success-bg',\n successText: '--mj-status-success-text',\n successBorder: '--mj-status-success-border',\n warning: '--mj-status-warning',\n warningLight: '--mj-status-warning-bg',\n warningText: '--mj-status-warning-text',\n warningBorder: '--mj-status-warning-border',\n error: '--mj-status-error',\n errorLight: '--mj-status-error-bg',\n errorText: '--mj-status-error-text',\n errorBorder: '--mj-status-error-border',\n info: '--mj-status-info',\n infoLight: '--mj-status-info-bg',\n infoText: '--mj-status-info-text',\n infoBorder: '--mj-status-info-border',\n // Surfaces (MJ: page = tinted, surface = elevated/white in light mode)\n background: '--mj-bg-page',\n surface: '--mj-bg-surface',\n surfaceHover: '--mj-bg-surface-hover',\n overlay: '--mj-bg-overlay',\n // Text\n text: '--mj-text-primary',\n textSecondary: '--mj-text-secondary',\n textTertiary: '--mj-text-muted',\n textInverse: '--mj-text-inverse',\n // Links\n link: '--mj-text-link',\n linkHover: '--mj-text-link-hover',\n // Borders / focus\n border: '--mj-border-default',\n borderLight: '--mj-border-subtle',\n borderFocus: '--mj-border-focus',\n};\n\n/** Number of `--mj-viz-N` categorical tokens the bridge probes for `chartPalette`. */\nconst VIZ_TOKEN_COUNT = 10;\n\n/** Number of `--mj-viz-seq-N` tokens the bridge probes for `sequentialScale`. */\nconst VIZ_SEQ_TOKEN_COUNT = 7;\n\n/**\n * Resolves a single `--mj-*` design token to its value.\n *\n * Returns an empty string or `undefined` for a token the host does not define — the caller treats\n * both as \"absent\" and keeps the {@link SetupStyles} default for that slot.\n */\nexport type ThemeTokenReader = (token: string) => string | undefined;\n\n/**\n * Normalizes the accepted token sources into one reader, or `null` when there is nothing to read.\n *\n * @param source An element, a reader function, or nothing.\n */\nfunction resolveTokenReader(source?: Element | ThemeTokenReader): ThemeTokenReader | null {\n if (typeof source === 'function') {\n return (token: string) => (source(token) ?? '').trim();\n }\n const el = source ?? (typeof document !== 'undefined' ? document.documentElement : undefined);\n if (!el || typeof getComputedStyle === 'undefined') {\n return null;\n }\n const cs = getComputedStyle(el);\n return (token: string) => cs.getPropertyValue(token).trim();\n}\n\n/**\n * Reads the live MJ theme (`--mj-*` custom properties on the document root) and\n * layers it over `SetupStyles()`, producing a `ComponentStyles` that follows the\n * host's active theme — including dark mode and interactive-state (hover/active/\n * focus) families — instead of the frozen default palette. This is the Phase 1\n * theme bridge that gives generated components shell↔content cohesion.\n *\n * DOM-guarded: in non-DOM environments (Node test harness, SSR) there is no\n * computed theme to read, so it returns `SetupStyles()` unchanged. Any individual\n * token that is absent falls back to its `SetupStyles()` default, so a page\n * without MJ tokens loaded also degrades cleanly.\n *\n * ## Reading tokens from somewhere other than the DOM\n *\n * A host without CSS custom properties — React Native is the one that exists — still has the same\n * `--mj-*` token VALUES, just not in a stylesheet. Passing a {@link ThemeTokenReader} feeds those\n * values through the identical mapping below, so a native surface and a browser derive\n * `ComponentStyles` from one table rather than from two that drift. Nothing about the mapping is\n * DOM-specific; only the lookup was.\n *\n * @param source optional element to read tokens from (defaults to the document root), or a reader\n * function for hosts that hold their token values outside CSS.\n */\nexport function BuildStylesFromTheme(source?: Element | ThemeTokenReader): ComponentStyles {\n const base = SetupStyles();\n\n const read = resolveTokenReader(source);\n if (!read) {\n return base;\n }\n\n for (const [path, token] of Object.entries(THEME_COLOR_TOKEN_MAP)) {\n const value = read(token);\n if (value) {\n base.colors[path] = value;\n }\n }\n\n const palette: string[] = [];\n for (let i = 1; i <= VIZ_TOKEN_COUNT; i++) {\n const value = read(`--mj-viz-${i}`);\n if (value) {\n palette.push(value);\n }\n }\n if (palette.length > 0) {\n base.chartPalette = palette;\n }\n\n const sequential: string[] = [];\n for (let i = 1; i <= VIZ_SEQ_TOKEN_COUNT; i++) {\n const value = read(`--mj-viz-seq-${i}`);\n if (value) {\n sequential.push(value);\n }\n }\n // A ramp needs at least two stops to interpolate; a single resolved token is\n // treated as an incomplete theme and left on the default.\n if (sequential.length > 1) {\n base.sequentialScale = sequential;\n }\n\n // Endpoints are required for a diverging scale to mean anything; `mid` is\n // optional, so only the low/high pair gates the swap.\n const divLow = read('--mj-viz-div-low');\n const divHigh = read('--mj-viz-div-high');\n if (divLow && divHigh) {\n const divMid = read('--mj-viz-div-mid');\n base.divergingScale = divMid ? { low: divLow, mid: divMid, high: divHigh } : { low: divLow, high: divHigh };\n }\n\n return base;\n}\n\n/** Multipliers applied to the whole `fontSize` ladder per `StyleOverrides.fontScale`. */\nconst FONT_SCALE_FACTOR: Record<string, number> = { small: 0.875, large: 1.25 };\n\n/** Smallest px size the scale may produce, so `small` cannot render text illegible. */\nconst MIN_FONT_SIZE_PX = 10;\n\n/**\n * Rescales every px value in a `fontSize` token map, leaving anything not expressed\n * in whole px (rem, em, clamp(), a keyword) untouched rather than guessing at it.\n */\nfunction scaleFontSizes(fontSize: Record<string, string | undefined>, factor: number): Record<string, string | undefined> {\n const scaled: Record<string, string | undefined> = {};\n for (const [key, value] of Object.entries(fontSize)) {\n const px = typeof value === 'string' ? /^\\s*(\\d+(?:\\.\\d+)?)px\\s*$/.exec(value) : null;\n scaled[key] = px\n ? `${Math.max(MIN_FONT_SIZE_PX, Math.round(parseFloat(px[1]) * factor))}px`\n : value;\n }\n return scaled;\n}\n\n/**\n * Layers explicitly user-requested styling (`ComponentSpec.styleOverrides`) over\n * theme-resolved styles, producing the `styles` a component actually receives.\n *\n * This is what lets \"make the charts blue\" be honored without a color literal ever\n * entering generated code: the request is carried as spec data and resolved here,\n * above the org theme, so the component keeps reading `styles.chartPalette` and\n * friends. Of the color slots only visualization ones are merged — the override\n * contract deliberately has no background/text/border slots, since those cannot be\n * flipped for dark mode without derived per-mode variants.\n *\n * `fontScale` is the one non-color slot, and it rescales the `typography.fontSize`\n * ladder in place. Doing it here rather than in the generator is what makes a type\n * scale hold: every token moves at once, so text inside registry components and\n * third-party libraries scales along with the generated markup.\n *\n * Returns `base` unchanged when there are no overrides, and never mutates `base`.\n *\n * @param base theme-resolved styles (from `BuildStylesFromTheme()` or `SetupStyles()`)\n * @param overrides the spec's `styleOverrides`, if any\n */\nexport function ApplyStyleOverrides<T extends Partial<ComponentStyles>>(base: T, overrides?: StyleOverrides): T {\n if (!overrides) {\n return base;\n }\n\n const hasChartPalette = Array.isArray(overrides.chartPalette) && overrides.chartPalette.length > 0;\n // A ramp needs at least two stops to interpolate between.\n const hasSequential = Array.isArray(overrides.sequentialScale) && overrides.sequentialScale.length > 1;\n const hasDiverging = !!overrides.divergingScale?.low && !!overrides.divergingScale?.high;\n // 'normal' — and any unrecognized value — leaves the ladder alone.\n const fontFactor = overrides.fontScale ? FONT_SCALE_FACTOR[overrides.fontScale] : undefined;\n const hasFontScale = !!fontFactor && !!base.typography?.fontSize;\n\n if (!hasChartPalette && !hasSequential && !hasDiverging && !hasFontScale) {\n return base;\n }\n\n return {\n ...base,\n ...(hasChartPalette ? { chartPalette: overrides.chartPalette } : {}),\n ...(hasSequential ? { sequentialScale: overrides.sequentialScale } : {}),\n ...(hasDiverging ? { divergingScale: overrides.divergingScale } : {}),\n ...(hasFontScale\n ? { typography: { ...base.typography!, fontSize: scaleFontSizes(base.typography!.fontSize, fontFactor!) } }\n : {}),\n };\n}"]}
@@ -1,7 +1,13 @@
1
+ export declare function UnwrapLibraryComponent(library: any, exportName: string, debug?: boolean): any;
1
2
  export declare function unwrapLibraryComponent(library: any, exportName: string, debug?: boolean): any;
3
+ export declare function UnwrapLibraryComponents(library: any, ...exportNames: string[]): Record<string, any>;
2
4
  export declare function unwrapLibraryComponents(library: any, ...exportNames: string[]): Record<string, any>;
5
+ export declare function UnwrapAllLibraryComponents(library: any, debug?: boolean): Record<string, any>;
3
6
  export declare function unwrapAllLibraryComponents(library: any, debug?: boolean): Record<string, any>;
4
- export declare const unwrapComponent: typeof unwrapLibraryComponent;
7
+ export declare const UnwrapComponent: typeof UnwrapLibraryComponent;
8
+ export declare const unwrapComponent: typeof UnwrapLibraryComponent;
9
+ export declare const UnwrapComponents: (library: any, exportNames: string[], debug?: boolean) => Record<string, any>;
5
10
  export declare const unwrapComponents: (library: any, exportNames: string[], debug?: boolean) => Record<string, any>;
6
- export declare const unwrapAllComponents: typeof unwrapAllLibraryComponents;
11
+ export declare const UnwrapAllComponents: typeof UnwrapAllLibraryComponents;
12
+ export declare const unwrapAllComponents: typeof UnwrapAllLibraryComponents;
7
13
  //# sourceMappingURL=component-unwrapper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"component-unwrapper.d.ts","sourceRoot":"","sources":["../../src/utilities/component-unwrapper.ts"],"names":[],"mappings":"AAwQA,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,GAAE,OAAe,GAAG,GAAG,CASpG;AASD,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,GAAG,EACZ,GAAG,WAAW,EAAE,MAAM,EAAE,GACvB,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAqFrB;AASD,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,GAAE,OAAe,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CA8FpG;AAGD,eAAO,MAAM,eAAe,+BAAyB,CAAC;AACtD,eAAO,MAAM,gBAAgB,GAAI,SAAS,GAAG,EAAE,aAAa,MAAM,EAAE,EAAE,QAAO,OAAe,wBAE3F,CAAC;AACF,eAAO,MAAM,mBAAmB,mCAA6B,CAAC"}
1
+ {"version":3,"file":"component-unwrapper.d.ts","sourceRoot":"","sources":["../../src/utilities/component-unwrapper.ts"],"names":[],"mappings":"AAwQA,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,GAAE,OAAe,GAAG,GAAG,CASpG;AAGD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,GAAE,OAAe,GAAG,GAAG,CAEpG;AASD,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,GAAG,EACZ,GAAG,WAAW,EAAE,MAAM,EAAE,GACvB,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAqFrB;AAGD,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,GAAG,EACZ,GAAG,WAAW,EAAE,MAAM,EAAE,GACvB,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAErB;AASD,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,GAAE,OAAe,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CA8FpG;AAGD,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,GAAE,OAAe,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAEpG;AAGD,eAAO,MAAM,eAAe,+BAAyB,CAAC;AAGtD,eAAO,MAAM,eAAe,+BAAkB,CAAC;AAC/C,eAAO,MAAM,gBAAgB,GAAI,SAAS,GAAG,EAAE,aAAa,MAAM,EAAE,EAAE,QAAO,OAAe,wBAE3F,CAAC;AAGF,eAAO,MAAM,gBAAgB,YALa,GAAG,eAAe,MAAM,EAAE,UAAS,OAAO,wBAKpC,CAAC;AACjD,eAAO,MAAM,mBAAmB,mCAA6B,CAAC;AAG9D,eAAO,MAAM,mBAAmB,mCAAsB,CAAC"}
@@ -192,7 +192,7 @@ function coreUnwrapLogic(library, exportName, debug = false) {
192
192
  }
193
193
  return component;
194
194
  }
195
- export function unwrapLibraryComponent(library, exportName, debug = false) {
195
+ export function UnwrapLibraryComponent(library, exportName, debug = false) {
196
196
  try {
197
197
  return coreUnwrapLogic(library, exportName, debug);
198
198
  }
@@ -203,7 +203,10 @@ export function unwrapLibraryComponent(library, exportName, debug = false) {
203
203
  throw error;
204
204
  }
205
205
  }
206
- export function unwrapLibraryComponents(library, ...exportNames) {
206
+ export function unwrapLibraryComponent(library, exportName, debug = false) {
207
+ return UnwrapLibraryComponent(library, exportName, debug);
208
+ }
209
+ export function UnwrapLibraryComponents(library, ...exportNames) {
207
210
  let debug = false;
208
211
  let names = exportNames;
209
212
  const lastArg = exportNames[exportNames.length - 1];
@@ -273,7 +276,10 @@ export function unwrapLibraryComponents(library, ...exportNames) {
273
276
  }
274
277
  return components;
275
278
  }
276
- export function unwrapAllLibraryComponents(library, debug = false) {
279
+ export function unwrapLibraryComponents(library, ...exportNames) {
280
+ return UnwrapLibraryComponents(library, ...exportNames);
281
+ }
282
+ export function UnwrapAllLibraryComponents(library, debug = false) {
277
283
  const components = {};
278
284
  const libraryType = typeof library;
279
285
  if (library == null ||
@@ -354,9 +360,15 @@ export function unwrapAllLibraryComponents(library, debug = false) {
354
360
  }
355
361
  return components;
356
362
  }
357
- export const unwrapComponent = unwrapLibraryComponent;
358
- export const unwrapComponents = (library, exportNames, debug = false) => {
359
- return unwrapLibraryComponents(library, ...exportNames, debug);
363
+ export function unwrapAllLibraryComponents(library, debug = false) {
364
+ return UnwrapAllLibraryComponents(library, debug);
365
+ }
366
+ export const UnwrapComponent = UnwrapLibraryComponent;
367
+ export const unwrapComponent = UnwrapComponent;
368
+ export const UnwrapComponents = (library, exportNames, debug = false) => {
369
+ return UnwrapLibraryComponents(library, ...exportNames, debug);
360
370
  };
361
- export const unwrapAllComponents = unwrapAllLibraryComponents;
371
+ export const unwrapComponents = UnwrapComponents;
372
+ export const UnwrapAllComponents = UnwrapAllLibraryComponents;
373
+ export const unwrapAllComponents = UnwrapAllComponents;
362
374
  //# sourceMappingURL=component-unwrapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"component-unwrapper.js","sourceRoot":"","sources":["../../src/utilities/component-unwrapper.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @fileoverview Utility functions for unwrapping exports (components, utilities, objects) from UMD-bundled libraries\n * Handles various UMD bundle structures and module wrapping patterns\n * Intelligently handles simple functions, complex objects, and nested exports\n * @module @memberjunction/react-runtime/utilities\n */\n\n/**\n * Core unwrapping logic - handles smart detection and various library patterns\n * @param library - The library object (e.g., antd, MaterialUI, XLSX, or a simple function like ApexCharts)\n * @param exportName - Name of the export to unwrap (e.g., 'Button', 'utils', 'DatePicker.RangePicker')\n * @param debug - Whether to log debug information\n * @returns The unwrapped export (component, utility object, function, etc.) or undefined if not found\n */\nfunction coreUnwrapLogic(library: any, exportName: string, debug: boolean = false): any {\n // 1. Handle null/undefined/primitives - THROW EXCEPTION\n if (library == null) {\n throw new Error(`Cannot unwrap export '${exportName}' from null or undefined library`);\n }\n \n const libraryType = typeof library;\n if (libraryType === 'string' || libraryType === 'number' || libraryType === 'boolean' || libraryType === 'symbol' || libraryType === 'bigint') {\n throw new Error(`Cannot unwrap export '${exportName}' from ${libraryType} value. Library must be an object or function.`);\n }\n\n // 2. Handle simple function/class (like ApexCharts or a single exported component)\n if (libraryType === 'function') {\n if (debug) {\n console.log(`📦 Library is a single function/class, returning it for '${exportName}'`);\n console.log(` Function name: ${library.name || 'anonymous'}`);\n \n // Check if it's a class with static methods\n const hasStatics = Object.keys(library).some(key => \n key !== 'prototype' && key !== 'length' && key !== 'name' && key !== 'caller' && key !== 'arguments'\n );\n if (hasStatics) {\n console.log(` Has static properties: ${Object.keys(library).filter(k => \n k !== 'prototype' && k !== 'length' && k !== 'name' && k !== 'caller' && k !== 'arguments'\n ).join(', ')}`);\n }\n }\n return library;\n }\n\n // 3. Handle object with single property (auto-detect pattern)\n if (libraryType === 'object') {\n const objectKeys = Object.keys(library).filter(key => key !== '__esModule' && key !== 'default');\n \n if (objectKeys.length === 1 && typeof library[objectKeys[0]] === 'function') {\n if (debug) {\n console.log(`📦 Library has single exported function '${objectKeys[0]}', using it for '${exportName}'`);\n }\n return library[objectKeys[0]];\n }\n \n // Also check if library.default is the only meaningful export\n if (objectKeys.length === 0 && library.default && typeof library.default === 'function') {\n if (debug) {\n console.log(`📦 Library only has default export (function), using it for '${exportName}'`);\n }\n return library.default;\n }\n }\n\n // 4. Standard unwrapping for complex libraries\n if (debug) {\n console.log(`📦 Library is a complex object, attempting standard unwrapping for '${exportName}'`);\n }\n\n // Check if exportName contains dot notation (e.g., 'DatePicker.RangePicker')\n if (exportName.includes('.')) {\n const parts = exportName.split('.');\n let current = library;\n let pathTaken = 'library';\n \n // Navigate through the path\n for (let i = 0; i < parts.length; i++) {\n const part = parts[i];\n \n if (!current) {\n if (debug) {\n console.log(` ❌ Cannot access '${part}' - parent is null/undefined at path: ${pathTaken}`);\n }\n return undefined;\n }\n \n // For the first part, try various unwrapping strategies\n if (i === 0) {\n // Try different paths for the first component\n if (debug) {\n console.log(` Checking library.${part}...`);\n }\n const firstComponent = current[part];\n \n if (debug) {\n console.log(` Checking library.default.${part}...`);\n }\n const firstDefault = current.default?.[part];\n \n if (firstComponent) {\n current = firstComponent;\n pathTaken = `library.${part}`;\n if (debug) {\n console.log(` ✅ Found via ${pathTaken}`);\n }\n } else if (firstDefault) {\n current = firstDefault;\n pathTaken = `library.default.${part}`;\n if (debug) {\n console.log(` ✅ Found via ${pathTaken}`);\n }\n } else {\n if (debug) {\n console.log(` ❌ Could not find '${part}' in library`);\n }\n return undefined;\n }\n } else {\n // For nested parts, just access directly (they should be properties on the component object)\n if (debug) {\n console.log(` Checking ${pathTaken}.${part}...`);\n }\n if (current[part]) {\n current = current[part];\n pathTaken += `.${part}`;\n if (debug) {\n console.log(` ✅ Found via ${pathTaken}`);\n }\n } else if (current.default?.[part]) {\n // Sometimes nested components are also wrapped in default\n current = current.default[part];\n pathTaken += `.default.${part}`;\n if (debug) {\n console.log(` ✅ Found via ${pathTaken}.default`);\n }\n } else {\n if (debug) {\n console.log(` ❌ Could not find '${part}' at path: ${pathTaken}`);\n }\n return undefined;\n }\n }\n }\n \n // Check if the final result is a valid export (component, utility, object, etc.)\n // We accept anything except null/undefined\n const isValidExport = (obj: any): boolean => {\n return obj != null; // This checks for both null and undefined\n };\n \n if (isValidExport(current)) {\n if (debug) {\n console.log(`✅ Successfully unwrapped '${exportName}' via: ${pathTaken}`);\n const exportType = typeof current === 'function' ? \n (current.prototype?.isReactComponent ? 'React class component' : 'function/component') :\n (typeof current === 'object' ? 'object/utility' : typeof current);\n console.log(` Export type: ${exportType}`);\n }\n return current;\n } else if (current?.default && isValidExport(current.default)) {\n // One more check: the final export might have a default export\n if (debug) {\n console.log(`✅ Successfully unwrapped '${exportName}' via: ${pathTaken}.default`);\n }\n return current.default;\n } else {\n if (debug) {\n console.log(` ❌ '${exportName}' at ${pathTaken} is null/undefined`);\n }\n return undefined;\n }\n }\n\n // Original logic for non-dot notation components\n // Track which path we used for debugging\n let unwrapPath: string = '';\n let component: any;\n\n // Helper to check if something is a valid export (any non-null value)\n // This allows components, utilities, objects, classes, etc.\n const isValidExport = (obj: any): boolean => {\n return obj != null; // Checks for both null and undefined\n };\n\n // Path 1: Direct access (library.Component)\n if (debug) {\n console.log(` Checking library.${exportName}...`);\n }\n const directComponent = library[exportName];\n \n // Path 2: Module with default export (library.Component.default)\n if (debug && directComponent) {\n console.log(` Checking library.${exportName}.default...`);\n }\n const moduleDefault = directComponent?.default;\n \n // Path 3: Library wrapped in default (library.default.Component)\n if (debug && library.default) {\n console.log(` Checking library.default.${exportName}...`);\n }\n const libraryDefault = library.default?.[exportName];\n \n // Path 4: Library wrapped in default with module default (library.default.Component.default)\n if (debug && libraryDefault) {\n console.log(` Checking library.default.${exportName}.default...`);\n }\n const libraryDefaultModule = library.default?.[exportName]?.default;\n\n // Check each path in order of likelihood\n if (isValidExport(directComponent)) {\n component = directComponent;\n unwrapPath = `library.${exportName}`;\n if (debug) {\n console.log(` ✅ Found via ${unwrapPath}`);\n const exportType = typeof directComponent === 'function' ? 'function' : \n typeof directComponent === 'object' ? 'object' : typeof directComponent;\n console.log(` Export type: ${exportType}`);\n }\n } else if (isValidExport(moduleDefault)) {\n component = moduleDefault;\n unwrapPath = `library.${exportName}.default`;\n if (debug) {\n console.log(` ✅ Found via ${unwrapPath}`);\n }\n } else if (isValidExport(libraryDefault)) {\n component = libraryDefault;\n unwrapPath = `library.default.${exportName}`;\n if (debug) {\n console.log(` ✅ Found via ${unwrapPath}`);\n }\n } else if (isValidExport(libraryDefaultModule)) {\n component = libraryDefaultModule;\n unwrapPath = `library.default.${exportName}.default`;\n if (debug) {\n console.log(` ✅ Found via ${unwrapPath}`);\n }\n }\n\n // Debug logging for failure cases\n if (debug && !component) {\n console.log(` ❌ Could not unwrap '${exportName}' from library (all paths were null/undefined)`);\n console.log(' Library structure:');\n console.log(' - Top-level keys:', Object.keys(library).slice(0, 10).join(', '), \n Object.keys(library).length > 10 ? '...' : '');\n \n console.log(` - library.${exportName}:`, directComponent);\n \n if (library.default) {\n console.log(' - library.default exists, keys:', \n Object.keys(library.default).slice(0, 10).join(', '));\n }\n }\n\n return component;\n}\n\n/**\n * Unwraps a single export from a UMD library, handling various bundle structures\n * Works with components, utilities, objects, functions, and any other exports\n * @param library - The library object (e.g., antd, MaterialUI, XLSX)\n * @param exportName - Name of the export to unwrap (e.g., 'Button', 'utils', 'writeFile')\n * @param debug - Whether to log debug information\n * @returns The unwrapped export or undefined if not found\n */\nexport function unwrapLibraryComponent(library: any, exportName: string, debug: boolean = false): any {\n try {\n return coreUnwrapLogic(library, exportName, debug);\n } catch (error: any) {\n if (debug) {\n console.error(`🚫 Error unwrapping export '${exportName}':`, error.message);\n }\n throw error;\n }\n}\n\n/**\n * Unwraps multiple exports from a UMD library using varargs\n * Works with any type of export: components, utilities, objects, functions, etc.\n * @param library - The library object (e.g., antd, XLSX, ApexCharts)\n * @param exportNames - Export names to unwrap (e.g., 'Button', 'utils', 'writeFile')\n * @returns Object with export names as keys and unwrapped values as values\n */\nexport function unwrapLibraryComponents(\n library: any,\n ...exportNames: string[]\n): Record<string, any> {\n // Determine debug mode from the last parameter if it's a boolean\n let debug = false;\n let names = exportNames;\n \n // Check if the last argument is a debug flag (for backward compatibility)\n const lastArg = exportNames[exportNames.length - 1];\n if (typeof lastArg === 'boolean') {\n debug = lastArg;\n names = exportNames.slice(0, -1);\n }\n \n const components: Record<string, any> = {};\n const found: string[] = [];\n const notFound: string[] = [];\n \n // Check if library is a simple function/class that should be returned for all names\n const libraryType = typeof library;\n \n // Handle null/undefined/primitives early\n if (library == null || \n libraryType === 'string' || \n libraryType === 'number' || \n libraryType === 'boolean' ||\n libraryType === 'symbol' ||\n libraryType === 'bigint') {\n // Let the core logic throw the appropriate error\n try {\n coreUnwrapLogic(library, names[0] || 'unknown', debug);\n } catch (error: any) {\n if (debug) {\n console.error(`🚫 ${error.message}`);\n }\n throw error;\n }\n }\n \n // For simple functions/classes, return the same function for all requested names\n if (libraryType === 'function') {\n if (debug) {\n console.log(`📦 Library is a single function/class, returning it for all ${names.length} requested names`);\n }\n for (const name of names) {\n components[name] = library;\n found.push(name);\n }\n } else {\n // For complex objects, use the core unwrap logic for each component\n for (const name of names) {\n try {\n const component = coreUnwrapLogic(library, name, false); // Use false to avoid verbose logging per component\n if (component) {\n components[name] = component;\n \n // Also provide a convenience mapping for the last part of the name\n // e.g., 'DatePicker.RangePicker' also available as 'RangePicker'\n if (name.includes('.')) {\n const lastPart = name.split('.').pop();\n if (lastPart && !components[lastPart]) {\n // Only add the short name if it doesn't conflict with another component\n components[lastPart] = component;\n }\n }\n \n found.push(name);\n } else {\n notFound.push(name);\n }\n } catch (error: any) {\n // If core logic throws an error, it's a critical failure\n throw error;\n }\n }\n }\n \n if (debug) {\n if (found.length > 0) {\n console.log(`📦 Successfully unwrapped ${found.length} components:`, found.join(', '));\n }\n if (notFound.length > 0) {\n console.warn(`⚠️ Could not unwrap ${notFound.length} components:`, notFound.join(', '));\n }\n }\n \n return components;\n}\n\n/**\n * Auto-detects and unwraps all components from a library\n * Uses PascalCase detection to identify likely component exports\n * @param library - The library object\n * @param debug - Whether to log debug information\n * @returns Object with all detected components\n */\nexport function unwrapAllLibraryComponents(library: any, debug: boolean = false): Record<string, any> {\n const components: Record<string, any> = {};\n \n // Handle simple function/class case\n const libraryType = typeof library;\n \n // Handle null/undefined/primitives early\n if (library == null || \n libraryType === 'string' || \n libraryType === 'number' || \n libraryType === 'boolean' ||\n libraryType === 'symbol' ||\n libraryType === 'bigint') {\n try {\n coreUnwrapLogic(library, 'auto-detect', debug);\n } catch (error: any) {\n if (debug) {\n console.error(`🚫 ${error.message}`);\n }\n throw error;\n }\n }\n \n // For simple functions/classes, return it with its name\n if (libraryType === 'function') {\n const functionName = library.name || 'Component';\n if (debug) {\n console.log(`📦 Library is a single function/class '${functionName}', returning it as the only component`);\n }\n components[functionName] = library;\n return components;\n }\n \n // Helper to check if a key looks like a component name (PascalCase)\n const looksLikeComponentName = (key: string): boolean => {\n if (!key || key.length === 0) return false;\n // Must start with uppercase letter\n if (key[0] !== key[0].toUpperCase()) return false;\n // Exclude common non-component exports\n if (['__esModule', 'VERSION', 'version', 'default'].includes(key)) return false;\n // Should have at least one lowercase letter (to distinguish from CONSTANTS)\n return /[a-z]/.test(key);\n };\n \n const checkedKeys = new Set<string>();\n \n // Check direct properties\n for (const key of Object.keys(library)) {\n if (looksLikeComponentName(key)) {\n try {\n const component = coreUnwrapLogic(library, key, false);\n if (component) {\n components[key] = component;\n checkedKeys.add(key);\n }\n } catch (error) {\n // Skip components that can't be unwrapped\n }\n }\n }\n \n // Check library.default properties if it exists\n if (library.default && typeof library.default === 'object') {\n for (const key of Object.keys(library.default)) {\n if (!checkedKeys.has(key) && looksLikeComponentName(key)) {\n try {\n const component = coreUnwrapLogic(library, key, false);\n if (component) {\n components[key] = component;\n checkedKeys.add(key);\n }\n } catch (error) {\n // Skip components that can't be unwrapped\n }\n }\n }\n }\n \n if (debug) {\n const exportNames = Object.keys(components);\n if (exportNames.length > 0) {\n console.log(`🔍 Auto-detected ${exportNames.length} components from library`);\n console.log(' Components:', exportNames.slice(0, 20).join(', '),\n exportNames.length > 20 ? `... and ${exportNames.length - 20} more` : '');\n } else {\n console.warn('⚠️ No components auto-detected from library');\n console.log(' Library type:', typeof library);\n if (library) {\n console.log(' Top-level keys:', Object.keys(library).slice(0, 10).join(', '));\n }\n }\n }\n \n return components;\n}\n\n// Legacy exports for backward compatibility\nexport const unwrapComponent = unwrapLibraryComponent;\nexport const unwrapComponents = (library: any, exportNames: string[], debug: boolean = false) => {\n return unwrapLibraryComponents(library, ...exportNames, debug as any);\n};\nexport const unwrapAllComponents = unwrapAllLibraryComponents;"]}
1
+ {"version":3,"file":"component-unwrapper.js","sourceRoot":"","sources":["../../src/utilities/component-unwrapper.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @fileoverview Utility functions for unwrapping exports (components, utilities, objects) from UMD-bundled libraries\n * Handles various UMD bundle structures and module wrapping patterns\n * Intelligently handles simple functions, complex objects, and nested exports\n * @module @memberjunction/react-runtime/utilities\n */\n\n/**\n * Core unwrapping logic - handles smart detection and various library patterns\n * @param library - The library object (e.g., antd, MaterialUI, XLSX, or a simple function like ApexCharts)\n * @param exportName - Name of the export to unwrap (e.g., 'Button', 'utils', 'DatePicker.RangePicker')\n * @param debug - Whether to log debug information\n * @returns The unwrapped export (component, utility object, function, etc.) or undefined if not found\n */\nfunction coreUnwrapLogic(library: any, exportName: string, debug: boolean = false): any {\n // 1. Handle null/undefined/primitives - THROW EXCEPTION\n if (library == null) {\n throw new Error(`Cannot unwrap export '${exportName}' from null or undefined library`);\n }\n \n const libraryType = typeof library;\n if (libraryType === 'string' || libraryType === 'number' || libraryType === 'boolean' || libraryType === 'symbol' || libraryType === 'bigint') {\n throw new Error(`Cannot unwrap export '${exportName}' from ${libraryType} value. Library must be an object or function.`);\n }\n\n // 2. Handle simple function/class (like ApexCharts or a single exported component)\n if (libraryType === 'function') {\n if (debug) {\n console.log(`📦 Library is a single function/class, returning it for '${exportName}'`);\n console.log(` Function name: ${library.name || 'anonymous'}`);\n \n // Check if it's a class with static methods\n const hasStatics = Object.keys(library).some(key => \n key !== 'prototype' && key !== 'length' && key !== 'name' && key !== 'caller' && key !== 'arguments'\n );\n if (hasStatics) {\n console.log(` Has static properties: ${Object.keys(library).filter(k => \n k !== 'prototype' && k !== 'length' && k !== 'name' && k !== 'caller' && k !== 'arguments'\n ).join(', ')}`);\n }\n }\n return library;\n }\n\n // 3. Handle object with single property (auto-detect pattern)\n if (libraryType === 'object') {\n const objectKeys = Object.keys(library).filter(key => key !== '__esModule' && key !== 'default');\n \n if (objectKeys.length === 1 && typeof library[objectKeys[0]] === 'function') {\n if (debug) {\n console.log(`📦 Library has single exported function '${objectKeys[0]}', using it for '${exportName}'`);\n }\n return library[objectKeys[0]];\n }\n \n // Also check if library.default is the only meaningful export\n if (objectKeys.length === 0 && library.default && typeof library.default === 'function') {\n if (debug) {\n console.log(`📦 Library only has default export (function), using it for '${exportName}'`);\n }\n return library.default;\n }\n }\n\n // 4. Standard unwrapping for complex libraries\n if (debug) {\n console.log(`📦 Library is a complex object, attempting standard unwrapping for '${exportName}'`);\n }\n\n // Check if exportName contains dot notation (e.g., 'DatePicker.RangePicker')\n if (exportName.includes('.')) {\n const parts = exportName.split('.');\n let current = library;\n let pathTaken = 'library';\n \n // Navigate through the path\n for (let i = 0; i < parts.length; i++) {\n const part = parts[i];\n \n if (!current) {\n if (debug) {\n console.log(` ❌ Cannot access '${part}' - parent is null/undefined at path: ${pathTaken}`);\n }\n return undefined;\n }\n \n // For the first part, try various unwrapping strategies\n if (i === 0) {\n // Try different paths for the first component\n if (debug) {\n console.log(` Checking library.${part}...`);\n }\n const firstComponent = current[part];\n \n if (debug) {\n console.log(` Checking library.default.${part}...`);\n }\n const firstDefault = current.default?.[part];\n \n if (firstComponent) {\n current = firstComponent;\n pathTaken = `library.${part}`;\n if (debug) {\n console.log(` ✅ Found via ${pathTaken}`);\n }\n } else if (firstDefault) {\n current = firstDefault;\n pathTaken = `library.default.${part}`;\n if (debug) {\n console.log(` ✅ Found via ${pathTaken}`);\n }\n } else {\n if (debug) {\n console.log(` ❌ Could not find '${part}' in library`);\n }\n return undefined;\n }\n } else {\n // For nested parts, just access directly (they should be properties on the component object)\n if (debug) {\n console.log(` Checking ${pathTaken}.${part}...`);\n }\n if (current[part]) {\n current = current[part];\n pathTaken += `.${part}`;\n if (debug) {\n console.log(` ✅ Found via ${pathTaken}`);\n }\n } else if (current.default?.[part]) {\n // Sometimes nested components are also wrapped in default\n current = current.default[part];\n pathTaken += `.default.${part}`;\n if (debug) {\n console.log(` ✅ Found via ${pathTaken}.default`);\n }\n } else {\n if (debug) {\n console.log(` ❌ Could not find '${part}' at path: ${pathTaken}`);\n }\n return undefined;\n }\n }\n }\n \n // Check if the final result is a valid export (component, utility, object, etc.)\n // We accept anything except null/undefined\n const isValidExport = (obj: any): boolean => {\n return obj != null; // This checks for both null and undefined\n };\n \n if (isValidExport(current)) {\n if (debug) {\n console.log(`✅ Successfully unwrapped '${exportName}' via: ${pathTaken}`);\n const exportType = typeof current === 'function' ? \n (current.prototype?.isReactComponent ? 'React class component' : 'function/component') :\n (typeof current === 'object' ? 'object/utility' : typeof current);\n console.log(` Export type: ${exportType}`);\n }\n return current;\n } else if (current?.default && isValidExport(current.default)) {\n // One more check: the final export might have a default export\n if (debug) {\n console.log(`✅ Successfully unwrapped '${exportName}' via: ${pathTaken}.default`);\n }\n return current.default;\n } else {\n if (debug) {\n console.log(` ❌ '${exportName}' at ${pathTaken} is null/undefined`);\n }\n return undefined;\n }\n }\n\n // Original logic for non-dot notation components\n // Track which path we used for debugging\n let unwrapPath: string = '';\n let component: any;\n\n // Helper to check if something is a valid export (any non-null value)\n // This allows components, utilities, objects, classes, etc.\n const isValidExport = (obj: any): boolean => {\n return obj != null; // Checks for both null and undefined\n };\n\n // Path 1: Direct access (library.Component)\n if (debug) {\n console.log(` Checking library.${exportName}...`);\n }\n const directComponent = library[exportName];\n \n // Path 2: Module with default export (library.Component.default)\n if (debug && directComponent) {\n console.log(` Checking library.${exportName}.default...`);\n }\n const moduleDefault = directComponent?.default;\n \n // Path 3: Library wrapped in default (library.default.Component)\n if (debug && library.default) {\n console.log(` Checking library.default.${exportName}...`);\n }\n const libraryDefault = library.default?.[exportName];\n \n // Path 4: Library wrapped in default with module default (library.default.Component.default)\n if (debug && libraryDefault) {\n console.log(` Checking library.default.${exportName}.default...`);\n }\n const libraryDefaultModule = library.default?.[exportName]?.default;\n\n // Check each path in order of likelihood\n if (isValidExport(directComponent)) {\n component = directComponent;\n unwrapPath = `library.${exportName}`;\n if (debug) {\n console.log(` ✅ Found via ${unwrapPath}`);\n const exportType = typeof directComponent === 'function' ? 'function' : \n typeof directComponent === 'object' ? 'object' : typeof directComponent;\n console.log(` Export type: ${exportType}`);\n }\n } else if (isValidExport(moduleDefault)) {\n component = moduleDefault;\n unwrapPath = `library.${exportName}.default`;\n if (debug) {\n console.log(` ✅ Found via ${unwrapPath}`);\n }\n } else if (isValidExport(libraryDefault)) {\n component = libraryDefault;\n unwrapPath = `library.default.${exportName}`;\n if (debug) {\n console.log(` ✅ Found via ${unwrapPath}`);\n }\n } else if (isValidExport(libraryDefaultModule)) {\n component = libraryDefaultModule;\n unwrapPath = `library.default.${exportName}.default`;\n if (debug) {\n console.log(` ✅ Found via ${unwrapPath}`);\n }\n }\n\n // Debug logging for failure cases\n if (debug && !component) {\n console.log(` ❌ Could not unwrap '${exportName}' from library (all paths were null/undefined)`);\n console.log(' Library structure:');\n console.log(' - Top-level keys:', Object.keys(library).slice(0, 10).join(', '), \n Object.keys(library).length > 10 ? '...' : '');\n \n console.log(` - library.${exportName}:`, directComponent);\n \n if (library.default) {\n console.log(' - library.default exists, keys:', \n Object.keys(library.default).slice(0, 10).join(', '));\n }\n }\n\n return component;\n}\n\n/**\n * Unwraps a single export from a UMD library, handling various bundle structures\n * Works with components, utilities, objects, functions, and any other exports\n * @param library - The library object (e.g., antd, MaterialUI, XLSX)\n * @param exportName - Name of the export to unwrap (e.g., 'Button', 'utils', 'writeFile')\n * @param debug - Whether to log debug information\n * @returns The unwrapped export or undefined if not found\n */\nexport function UnwrapLibraryComponent(library: any, exportName: string, debug: boolean = false): any {\n try {\n return coreUnwrapLogic(library, exportName, debug);\n } catch (error: any) {\n if (debug) {\n console.error(`🚫 Error unwrapping export '${exportName}':`, error.message);\n }\n throw error;\n }\n}\n\n/** @deprecated Use {@link UnwrapLibraryComponent}. */\nexport function unwrapLibraryComponent(library: any, exportName: string, debug: boolean = false): any {\n return UnwrapLibraryComponent(library, exportName, debug);\n}\n\n/**\n * Unwraps multiple exports from a UMD library using varargs\n * Works with any type of export: components, utilities, objects, functions, etc.\n * @param library - The library object (e.g., antd, XLSX, ApexCharts)\n * @param exportNames - Export names to unwrap (e.g., 'Button', 'utils', 'writeFile')\n * @returns Object with export names as keys and unwrapped values as values\n */\nexport function UnwrapLibraryComponents(\n library: any,\n ...exportNames: string[]\n): Record<string, any> {\n // Determine debug mode from the last parameter if it's a boolean\n let debug = false;\n let names = exportNames;\n \n // Check if the last argument is a debug flag (for backward compatibility)\n const lastArg = exportNames[exportNames.length - 1];\n if (typeof lastArg === 'boolean') {\n debug = lastArg;\n names = exportNames.slice(0, -1);\n }\n \n const components: Record<string, any> = {};\n const found: string[] = [];\n const notFound: string[] = [];\n \n // Check if library is a simple function/class that should be returned for all names\n const libraryType = typeof library;\n \n // Handle null/undefined/primitives early\n if (library == null || \n libraryType === 'string' || \n libraryType === 'number' || \n libraryType === 'boolean' ||\n libraryType === 'symbol' ||\n libraryType === 'bigint') {\n // Let the core logic throw the appropriate error\n try {\n coreUnwrapLogic(library, names[0] || 'unknown', debug);\n } catch (error: any) {\n if (debug) {\n console.error(`🚫 ${error.message}`);\n }\n throw error;\n }\n }\n \n // For simple functions/classes, return the same function for all requested names\n if (libraryType === 'function') {\n if (debug) {\n console.log(`📦 Library is a single function/class, returning it for all ${names.length} requested names`);\n }\n for (const name of names) {\n components[name] = library;\n found.push(name);\n }\n } else {\n // For complex objects, use the core unwrap logic for each component\n for (const name of names) {\n try {\n const component = coreUnwrapLogic(library, name, false); // Use false to avoid verbose logging per component\n if (component) {\n components[name] = component;\n \n // Also provide a convenience mapping for the last part of the name\n // e.g., 'DatePicker.RangePicker' also available as 'RangePicker'\n if (name.includes('.')) {\n const lastPart = name.split('.').pop();\n if (lastPart && !components[lastPart]) {\n // Only add the short name if it doesn't conflict with another component\n components[lastPart] = component;\n }\n }\n \n found.push(name);\n } else {\n notFound.push(name);\n }\n } catch (error: any) {\n // If core logic throws an error, it's a critical failure\n throw error;\n }\n }\n }\n \n if (debug) {\n if (found.length > 0) {\n console.log(`📦 Successfully unwrapped ${found.length} components:`, found.join(', '));\n }\n if (notFound.length > 0) {\n console.warn(`⚠️ Could not unwrap ${notFound.length} components:`, notFound.join(', '));\n }\n }\n \n return components;\n}\n\n/** @deprecated Use {@link UnwrapLibraryComponents}. */\nexport function unwrapLibraryComponents(\n library: any,\n ...exportNames: string[]\n): Record<string, any> {\n return UnwrapLibraryComponents(library, ...exportNames);\n}\n\n/**\n * Auto-detects and unwraps all components from a library\n * Uses PascalCase detection to identify likely component exports\n * @param library - The library object\n * @param debug - Whether to log debug information\n * @returns Object with all detected components\n */\nexport function UnwrapAllLibraryComponents(library: any, debug: boolean = false): Record<string, any> {\n const components: Record<string, any> = {};\n \n // Handle simple function/class case\n const libraryType = typeof library;\n \n // Handle null/undefined/primitives early\n if (library == null || \n libraryType === 'string' || \n libraryType === 'number' || \n libraryType === 'boolean' ||\n libraryType === 'symbol' ||\n libraryType === 'bigint') {\n try {\n coreUnwrapLogic(library, 'auto-detect', debug);\n } catch (error: any) {\n if (debug) {\n console.error(`🚫 ${error.message}`);\n }\n throw error;\n }\n }\n \n // For simple functions/classes, return it with its name\n if (libraryType === 'function') {\n const functionName = library.name || 'Component';\n if (debug) {\n console.log(`📦 Library is a single function/class '${functionName}', returning it as the only component`);\n }\n components[functionName] = library;\n return components;\n }\n \n // Helper to check if a key looks like a component name (PascalCase)\n const looksLikeComponentName = (key: string): boolean => {\n if (!key || key.length === 0) return false;\n // Must start with uppercase letter\n if (key[0] !== key[0].toUpperCase()) return false;\n // Exclude common non-component exports\n if (['__esModule', 'VERSION', 'version', 'default'].includes(key)) return false;\n // Should have at least one lowercase letter (to distinguish from CONSTANTS)\n return /[a-z]/.test(key);\n };\n \n const checkedKeys = new Set<string>();\n \n // Check direct properties\n for (const key of Object.keys(library)) {\n if (looksLikeComponentName(key)) {\n try {\n const component = coreUnwrapLogic(library, key, false);\n if (component) {\n components[key] = component;\n checkedKeys.add(key);\n }\n } catch (error) {\n // Skip components that can't be unwrapped\n }\n }\n }\n \n // Check library.default properties if it exists\n if (library.default && typeof library.default === 'object') {\n for (const key of Object.keys(library.default)) {\n if (!checkedKeys.has(key) && looksLikeComponentName(key)) {\n try {\n const component = coreUnwrapLogic(library, key, false);\n if (component) {\n components[key] = component;\n checkedKeys.add(key);\n }\n } catch (error) {\n // Skip components that can't be unwrapped\n }\n }\n }\n }\n \n if (debug) {\n const exportNames = Object.keys(components);\n if (exportNames.length > 0) {\n console.log(`🔍 Auto-detected ${exportNames.length} components from library`);\n console.log(' Components:', exportNames.slice(0, 20).join(', '),\n exportNames.length > 20 ? `... and ${exportNames.length - 20} more` : '');\n } else {\n console.warn('⚠️ No components auto-detected from library');\n console.log(' Library type:', typeof library);\n if (library) {\n console.log(' Top-level keys:', Object.keys(library).slice(0, 10).join(', '));\n }\n }\n }\n \n return components;\n}\n\n/** @deprecated Use {@link UnwrapAllLibraryComponents}. */\nexport function unwrapAllLibraryComponents(library: any, debug: boolean = false): Record<string, any> {\n return UnwrapAllLibraryComponents(library, debug);\n}\n\n// Legacy exports for backward compatibility\nexport const UnwrapComponent = UnwrapLibraryComponent;\n\n/** @deprecated Use {@link UnwrapComponent}. */\nexport const unwrapComponent = UnwrapComponent;\nexport const UnwrapComponents = (library: any, exportNames: string[], debug: boolean = false) => {\n return UnwrapLibraryComponents(library, ...exportNames, debug as any);\n};\n\n/** @deprecated Use {@link UnwrapComponents}. */\nexport const unwrapComponents = UnwrapComponents;\nexport const UnwrapAllComponents = UnwrapAllLibraryComponents;\n\n/** @deprecated Use {@link UnwrapAllComponents}. */\nexport const unwrapAllComponents = UnwrapAllComponents;"]}
@@ -1,4 +1,6 @@
1
1
  import { ExternalLibraryConfig } from '../types/library-config.js';
2
+ export declare function GetCoreRuntimeLibraries(debug?: boolean): ExternalLibraryConfig[];
2
3
  export declare function getCoreRuntimeLibraries(debug?: boolean): ExternalLibraryConfig[];
4
+ export declare function IsCoreRuntimeLibrary(libraryId: string): boolean;
3
5
  export declare function isCoreRuntimeLibrary(libraryId: string): boolean;
4
6
  //# sourceMappingURL=core-libraries.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"core-libraries.d.ts","sourceRoot":"","sources":["../../src/utilities/core-libraries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AA8ChE,wBAAgB,uBAAuB,CAAC,KAAK,GAAE,OAAe,GAAG,qBAAqB,EAAE,CA6CvF;AAKD,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAG/D"}
1
+ {"version":3,"file":"core-libraries.d.ts","sourceRoot":"","sources":["../../src/utilities/core-libraries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AA8ChE,wBAAgB,uBAAuB,CAAC,KAAK,GAAE,OAAe,GAAG,qBAAqB,EAAE,CA6CvF;AAGD,wBAAgB,uBAAuB,CAAC,KAAK,GAAE,OAAe,GAAG,qBAAqB,EAAE,CAEvF;AAKD,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAG/D;AAGD,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAE/D"}
@@ -18,7 +18,7 @@ function getReactDOMFallbackUrl(debug = false) {
18
18
  ? 'https://cdn.jsdelivr.net/npm/react-dom@18.2.0/umd/react-dom.development.js'
19
19
  : 'https://cdn.jsdelivr.net/npm/react-dom@18.2.0/umd/react-dom.production.min.js';
20
20
  }
21
- export function getCoreRuntimeLibraries(debug = false) {
21
+ export function GetCoreRuntimeLibraries(debug = false) {
22
22
  return [
23
23
  {
24
24
  id: 'react',
@@ -64,8 +64,14 @@ export function getCoreRuntimeLibraries(debug = false) {
64
64
  }
65
65
  ];
66
66
  }
67
- export function isCoreRuntimeLibrary(libraryId) {
68
- const coreLibraries = getCoreRuntimeLibraries();
67
+ export function getCoreRuntimeLibraries(debug = false) {
68
+ return GetCoreRuntimeLibraries(debug);
69
+ }
70
+ export function IsCoreRuntimeLibrary(libraryId) {
71
+ const coreLibraries = GetCoreRuntimeLibraries();
69
72
  return coreLibraries.some((lib) => lib.id === libraryId);
70
73
  }
74
+ export function isCoreRuntimeLibrary(libraryId) {
75
+ return IsCoreRuntimeLibrary(libraryId);
76
+ }
71
77
  //# sourceMappingURL=core-libraries.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"core-libraries.js","sourceRoot":"","sources":["../../src/utilities/core-libraries.ts"],"names":[],"mappings":"AAKA,SAAS,WAAW,CAAC,QAAiB,KAAK;IACzC,OAAO,KAAK;QACV,CAAC,CAAC,yDAAyD;QAC3D,CAAC,CAAC,4DAA4D,CAAC;AACnE,CAAC;AAKD,SAAS,cAAc,CAAC,QAAiB,KAAK;IAC5C,OAAO,KAAK;QACV,CAAC,CAAC,iEAAiE;QACnE,CAAC,CAAC,oEAAoE,CAAC;AAC3E,CAAC;AASD,SAAS,mBAAmB,CAAC,QAAiB,KAAK;IACjD,OAAO,KAAK;QACV,CAAC,CAAC,oEAAoE;QACtE,CAAC,CAAC,uEAAuE,CAAC;AAC9E,CAAC;AAKD,SAAS,sBAAsB,CAAC,QAAiB,KAAK;IACpD,OAAO,KAAK;QACV,CAAC,CAAC,4EAA4E;QAC9E,CAAC,CAAC,+EAA+E,CAAC;AACtF,CAAC;AAMD,MAAM,UAAU,uBAAuB,CAAC,QAAiB,KAAK;IAC5D,OAAO;QACL;YACE,EAAE,EAAE,OAAO;YACX,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,OAAO;YACpB,QAAQ,EAAE,SAAS;YACnB,cAAc,EAAE,OAAO;YACvB,OAAO,EAAE,QAAQ;YACjB,MAAM,EAAE,WAAW,CAAC,KAAK,CAAC;YAC1B,eAAe,EAAE,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC7C,WAAW,EAAE,oBAAoB;YACjC,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,IAAI;YACZ,aAAa,EAAE,IAAI;SACpB;QACD;YACE,EAAE,EAAE,WAAW;YACf,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,UAAU;YACvB,QAAQ,EAAE,SAAS;YACnB,cAAc,EAAE,UAAU;YAC1B,OAAO,EAAE,QAAQ;YACjB,MAAM,EAAE,cAAc,CAAC,KAAK,CAAC;YAC7B,eAAe,EAAE,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAChD,WAAW,EAAE,mBAAmB;YAChC,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,IAAI;YACZ,aAAa,EAAE,IAAI;SACpB;QACD;YACE,EAAE,EAAE,kBAAkB;YACtB,IAAI,EAAE,mBAAmB;YACzB,WAAW,EAAE,kBAAkB;YAC/B,QAAQ,EAAE,SAAS;YACnB,cAAc,EAAE,OAAO;YACvB,OAAO,EAAE,QAAQ;YACjB,MAAM,EAAE,yDAAyD;YACjE,eAAe,EAAE,CAAC,oEAAoE,CAAC;YACvF,WAAW,EAAE,uCAAuC;YACpD,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,IAAI;YACZ,aAAa,EAAE,IAAI;SACpB;KACF,CAAC;AACJ,CAAC;AAKD,MAAM,UAAU,oBAAoB,CAAC,SAAiB;IACpD,MAAM,aAAa,GAAG,uBAAuB,EAAE,CAAC;IAChD,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,GAA0B,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;AAClF,CAAC","sourcesContent":["import { ExternalLibraryConfig } from '../types/library-config';\n\n/**\n * Get the React CDN URL based on debug mode\n */\nfunction getReactUrl(debug: boolean = false): string {\n return debug \n ? 'https://unpkg.com/react@18.2.0/umd/react.development.js'\n : 'https://unpkg.com/react@18.2.0/umd/react.production.min.js';\n}\n\n/**\n * Get the ReactDOM CDN URL based on debug mode\n */\nfunction getReactDOMUrl(debug: boolean = false): string {\n return debug\n ? 'https://unpkg.com/react-dom@18.2.0/umd/react-dom.development.js'\n : 'https://unpkg.com/react-dom@18.2.0/umd/react-dom.production.min.js';\n}\n\n/**\n * Get the core runtime libraries configuration\n * @param debug Whether to use development builds for better error messages\n */\n/**\n * Get the React fallback CDN URL based on debug mode\n */\nfunction getReactFallbackUrl(debug: boolean = false): string {\n return debug\n ? 'https://cdn.jsdelivr.net/npm/react@18.2.0/umd/react.development.js'\n : 'https://cdn.jsdelivr.net/npm/react@18.2.0/umd/react.production.min.js';\n}\n\n/**\n * Get the ReactDOM fallback CDN URL based on debug mode\n */\nfunction getReactDOMFallbackUrl(debug: boolean = false): string {\n return debug\n ? 'https://cdn.jsdelivr.net/npm/react-dom@18.2.0/umd/react-dom.development.js'\n : 'https://cdn.jsdelivr.net/npm/react-dom@18.2.0/umd/react-dom.production.min.js';\n}\n\n/**\n * Get the core runtime libraries configuration\n * @param debug Whether to use development builds for better error messages\n */\nexport function getCoreRuntimeLibraries(debug: boolean = false): ExternalLibraryConfig[] {\n return [\n {\n id: 'react',\n name: 'react',\n displayName: 'React',\n category: 'runtime',\n globalVariable: 'React',\n version: '18.2.0',\n cdnUrl: getReactUrl(debug),\n fallbackCdnUrls: [getReactFallbackUrl(debug)],\n description: 'React core library',\n isEnabled: true,\n isCore: true,\n isRuntimeOnly: true\n },\n {\n id: 'react-dom',\n name: 'react-dom',\n displayName: 'ReactDOM',\n category: 'runtime',\n globalVariable: 'ReactDOM',\n version: '18.2.0',\n cdnUrl: getReactDOMUrl(debug),\n fallbackCdnUrls: [getReactDOMFallbackUrl(debug)],\n description: 'React DOM library',\n isEnabled: true,\n isCore: true,\n isRuntimeOnly: true\n },\n {\n id: 'babel-standalone',\n name: '@babel/standalone',\n displayName: 'Babel Standalone',\n category: 'runtime',\n globalVariable: 'Babel',\n version: '7.24.4',\n cdnUrl: 'https://unpkg.com/@babel/standalone@7.24.4/babel.min.js',\n fallbackCdnUrls: ['https://cdn.jsdelivr.net/npm/@babel/standalone@7.24.4/babel.min.js'],\n description: 'Babel compiler for JSX transformation',\n isEnabled: true,\n isCore: true,\n isRuntimeOnly: true\n }\n ];\n}\n\n/**\n * Check if a library ID is a core runtime library\n */\nexport function isCoreRuntimeLibrary(libraryId: string): boolean {\n const coreLibraries = getCoreRuntimeLibraries();\n return coreLibraries.some((lib: ExternalLibraryConfig) => lib.id === libraryId);\n}"]}
1
+ {"version":3,"file":"core-libraries.js","sourceRoot":"","sources":["../../src/utilities/core-libraries.ts"],"names":[],"mappings":"AAKA,SAAS,WAAW,CAAC,QAAiB,KAAK;IACzC,OAAO,KAAK;QACV,CAAC,CAAC,yDAAyD;QAC3D,CAAC,CAAC,4DAA4D,CAAC;AACnE,CAAC;AAKD,SAAS,cAAc,CAAC,QAAiB,KAAK;IAC5C,OAAO,KAAK;QACV,CAAC,CAAC,iEAAiE;QACnE,CAAC,CAAC,oEAAoE,CAAC;AAC3E,CAAC;AASD,SAAS,mBAAmB,CAAC,QAAiB,KAAK;IACjD,OAAO,KAAK;QACV,CAAC,CAAC,oEAAoE;QACtE,CAAC,CAAC,uEAAuE,CAAC;AAC9E,CAAC;AAKD,SAAS,sBAAsB,CAAC,QAAiB,KAAK;IACpD,OAAO,KAAK;QACV,CAAC,CAAC,4EAA4E;QAC9E,CAAC,CAAC,+EAA+E,CAAC;AACtF,CAAC;AAMD,MAAM,UAAU,uBAAuB,CAAC,QAAiB,KAAK;IAC5D,OAAO;QACL;YACE,EAAE,EAAE,OAAO;YACX,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,OAAO;YACpB,QAAQ,EAAE,SAAS;YACnB,cAAc,EAAE,OAAO;YACvB,OAAO,EAAE,QAAQ;YACjB,MAAM,EAAE,WAAW,CAAC,KAAK,CAAC;YAC1B,eAAe,EAAE,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC7C,WAAW,EAAE,oBAAoB;YACjC,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,IAAI;YACZ,aAAa,EAAE,IAAI;SACpB;QACD;YACE,EAAE,EAAE,WAAW;YACf,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,UAAU;YACvB,QAAQ,EAAE,SAAS;YACnB,cAAc,EAAE,UAAU;YAC1B,OAAO,EAAE,QAAQ;YACjB,MAAM,EAAE,cAAc,CAAC,KAAK,CAAC;YAC7B,eAAe,EAAE,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAChD,WAAW,EAAE,mBAAmB;YAChC,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,IAAI;YACZ,aAAa,EAAE,IAAI;SACpB;QACD;YACE,EAAE,EAAE,kBAAkB;YACtB,IAAI,EAAE,mBAAmB;YACzB,WAAW,EAAE,kBAAkB;YAC/B,QAAQ,EAAE,SAAS;YACnB,cAAc,EAAE,OAAO;YACvB,OAAO,EAAE,QAAQ;YACjB,MAAM,EAAE,yDAAyD;YACjE,eAAe,EAAE,CAAC,oEAAoE,CAAC;YACvF,WAAW,EAAE,uCAAuC;YACpD,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,IAAI;YACZ,aAAa,EAAE,IAAI;SACpB;KACF,CAAC;AACJ,CAAC;AAGD,MAAM,UAAU,uBAAuB,CAAC,QAAiB,KAAK;IAC5D,OAAO,uBAAuB,CAAC,KAAK,CAAC,CAAC;AACxC,CAAC;AAKD,MAAM,UAAU,oBAAoB,CAAC,SAAiB;IACpD,MAAM,aAAa,GAAG,uBAAuB,EAAE,CAAC;IAChD,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,GAA0B,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;AAClF,CAAC;AAGD,MAAM,UAAU,oBAAoB,CAAC,SAAiB;IACpD,OAAO,oBAAoB,CAAC,SAAS,CAAC,CAAC;AACzC,CAAC","sourcesContent":["import { ExternalLibraryConfig } from '../types/library-config';\n\n/**\n * Get the React CDN URL based on debug mode\n */\nfunction getReactUrl(debug: boolean = false): string {\n return debug \n ? 'https://unpkg.com/react@18.2.0/umd/react.development.js'\n : 'https://unpkg.com/react@18.2.0/umd/react.production.min.js';\n}\n\n/**\n * Get the ReactDOM CDN URL based on debug mode\n */\nfunction getReactDOMUrl(debug: boolean = false): string {\n return debug\n ? 'https://unpkg.com/react-dom@18.2.0/umd/react-dom.development.js'\n : 'https://unpkg.com/react-dom@18.2.0/umd/react-dom.production.min.js';\n}\n\n/**\n * Get the core runtime libraries configuration\n * @param debug Whether to use development builds for better error messages\n */\n/**\n * Get the React fallback CDN URL based on debug mode\n */\nfunction getReactFallbackUrl(debug: boolean = false): string {\n return debug\n ? 'https://cdn.jsdelivr.net/npm/react@18.2.0/umd/react.development.js'\n : 'https://cdn.jsdelivr.net/npm/react@18.2.0/umd/react.production.min.js';\n}\n\n/**\n * Get the ReactDOM fallback CDN URL based on debug mode\n */\nfunction getReactDOMFallbackUrl(debug: boolean = false): string {\n return debug\n ? 'https://cdn.jsdelivr.net/npm/react-dom@18.2.0/umd/react-dom.development.js'\n : 'https://cdn.jsdelivr.net/npm/react-dom@18.2.0/umd/react-dom.production.min.js';\n}\n\n/**\n * Get the core runtime libraries configuration\n * @param debug Whether to use development builds for better error messages\n */\nexport function GetCoreRuntimeLibraries(debug: boolean = false): ExternalLibraryConfig[] {\n return [\n {\n id: 'react',\n name: 'react',\n displayName: 'React',\n category: 'runtime',\n globalVariable: 'React',\n version: '18.2.0',\n cdnUrl: getReactUrl(debug),\n fallbackCdnUrls: [getReactFallbackUrl(debug)],\n description: 'React core library',\n isEnabled: true,\n isCore: true,\n isRuntimeOnly: true\n },\n {\n id: 'react-dom',\n name: 'react-dom',\n displayName: 'ReactDOM',\n category: 'runtime',\n globalVariable: 'ReactDOM',\n version: '18.2.0',\n cdnUrl: getReactDOMUrl(debug),\n fallbackCdnUrls: [getReactDOMFallbackUrl(debug)],\n description: 'React DOM library',\n isEnabled: true,\n isCore: true,\n isRuntimeOnly: true\n },\n {\n id: 'babel-standalone',\n name: '@babel/standalone',\n displayName: 'Babel Standalone',\n category: 'runtime',\n globalVariable: 'Babel',\n version: '7.24.4',\n cdnUrl: 'https://unpkg.com/@babel/standalone@7.24.4/babel.min.js',\n fallbackCdnUrls: ['https://cdn.jsdelivr.net/npm/@babel/standalone@7.24.4/babel.min.js'],\n description: 'Babel compiler for JSX transformation',\n isEnabled: true,\n isCore: true,\n isRuntimeOnly: true\n }\n ];\n}\n\n/** @deprecated Use {@link GetCoreRuntimeLibraries}. */\nexport function getCoreRuntimeLibraries(debug: boolean = false): ExternalLibraryConfig[] {\n return GetCoreRuntimeLibraries(debug);\n}\n\n/**\n * Check if a library ID is a core runtime library\n */\nexport function IsCoreRuntimeLibrary(libraryId: string): boolean {\n const coreLibraries = GetCoreRuntimeLibraries();\n return coreLibraries.some((lib: ExternalLibraryConfig) => lib.id === libraryId);\n}\n\n/** @deprecated Use {@link IsCoreRuntimeLibrary}. */\nexport function isCoreRuntimeLibrary(libraryId: string): boolean {\n return IsCoreRuntimeLibrary(libraryId);\n}"]}
@@ -3,5 +3,6 @@ export type EntityRecordKeyInput = CompositeKey | KeyValuePair[] | {
3
3
  FieldName: string;
4
4
  Value: unknown;
5
5
  } | null | undefined;
6
+ export declare function ResolveEntityRecordKey(entityName: string, key: EntityRecordKeyInput, provider: IMetadataProvider, contextUser?: UserInfo): Promise<CompositeKey | null>;
6
7
  export declare function resolveEntityRecordKey(entityName: string, key: EntityRecordKeyInput, provider: IMetadataProvider, contextUser?: UserInfo): Promise<CompositeKey | null>;
7
8
  //# sourceMappingURL=entity-record-key.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"entity-record-key.d.ts","sourceRoot":"","sources":["../../src/utilities/entity-record-key.ts"],"names":[],"mappings":"AAwBA,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,YAAY,EAEZ,QAAQ,EACT,MAAM,sBAAsB,CAAC;AAQ9B,MAAM,MAAM,oBAAoB,GAC5B,YAAY,GACZ,YAAY,EAAE,GACd;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GACrC,IAAI,GACJ,SAAS,CAAC;AA6Cd,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,oBAAoB,EACzB,QAAQ,EAAE,iBAAiB,EAC3B,WAAW,CAAC,EAAE,QAAQ,GACrB,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAgD9B"}
1
+ {"version":3,"file":"entity-record-key.d.ts","sourceRoot":"","sources":["../../src/utilities/entity-record-key.ts"],"names":[],"mappings":"AAwBA,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,YAAY,EAEZ,QAAQ,EACT,MAAM,sBAAsB,CAAC;AAQ9B,MAAM,MAAM,oBAAoB,GAC5B,YAAY,GACZ,YAAY,EAAE,GACd;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GACrC,IAAI,GACJ,SAAS,CAAC;AA6Cd,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,oBAAoB,EACzB,QAAQ,EAAE,iBAAiB,EAC3B,WAAW,CAAC,EAAE,QAAQ,GACrB,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAgD9B;AAGD,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,oBAAoB,EACzB,QAAQ,EAAE,iBAAiB,EAC3B,WAAW,CAAC,EAAE,QAAQ,GACrB,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAE9B"}
@@ -15,7 +15,7 @@ function coerceToCompositeKey(key) {
15
15
  }
16
16
  return null;
17
17
  }
18
- export async function resolveEntityRecordKey(entityName, key, provider, contextUser) {
18
+ export async function ResolveEntityRecordKey(entityName, key, provider, contextUser) {
19
19
  const supplied = coerceToCompositeKey(key);
20
20
  if (!supplied) {
21
21
  return null;
@@ -51,4 +51,7 @@ export async function resolveEntityRecordKey(entityName, key, provider, contextU
51
51
  const row = result.Results[0];
52
52
  return CompositeKey.FromKeyValuePairs(entity.PrimaryKeys.map((pk) => ({ FieldName: pk.Name, Value: row[pk.Name] })));
53
53
  }
54
+ export async function resolveEntityRecordKey(entityName, key, provider, contextUser) {
55
+ return ResolveEntityRecordKey(entityName, key, provider, contextUser);
56
+ }
54
57
  //# sourceMappingURL=entity-record-key.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"entity-record-key.js","sourceRoot":"","sources":["../../src/utilities/entity-record-key.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @fileoverview Normalizing what a component passes to `OpenEntityRecord` into a usable record key.\n * @module @memberjunction/react-runtime/utilities\n *\n * ## Why this is not the host's job\n *\n * `callbacks.OpenEntityRecord(entityName, key)` is part of the component contract, and components\n * are loose about the second argument in two ways that every host then has to absorb identically:\n *\n * 1. **Shape.** It may already be a `CompositeKey`, or an array of `KeyValuePair`, or a bare\n * `{ FieldName, Value }` object.\n * 2. **Which fields.** A component frequently knows a record by something that is *not* its primary\n * key — an email, a code, an external id — because that is what its query returned.\n *\n * Getting (2) right means looking up the entity, checking each supplied field against\n * `IsPrimaryKey`, and running a view to translate when it is not. A host that skips it opens the\n * wrong record or nothing at all; a host that reimplements it gets a subtly different answer. Both\n * happened: the Angular bridge did the full resolution inline, and the React Native app read\n * `key.GetValueByIndex(0)` and hoped.\n *\n * So the resolution lives here, next to the contract it serves, and hosts keep only the part that is\n * genuinely theirs — what \"open\" means on their surface.\n */\n\nimport {\n CompositeKey,\n IMetadataProvider,\n KeyValuePair,\n RunView,\n UserInfo,\n} from '@memberjunction/core';\n\n/**\n * The shapes a component may pass as the `key` argument to `OpenEntityRecord`.\n *\n * Deliberately wide: this is an input boundary, and narrowing it would only move the problem into\n * every caller.\n */\nexport type EntityRecordKeyInput =\n | CompositeKey\n | KeyValuePair[]\n | { FieldName: string; Value: unknown }\n | null\n | undefined;\n\n/**\n * Coerces the accepted input shapes into a `CompositeKey`, without resolving anything.\n *\n * @param key Whatever the component passed.\n */\nfunction coerceToCompositeKey(key: EntityRecordKeyInput): CompositeKey | null {\n if (!key) {\n return null;\n }\n if (Array.isArray(key)) {\n return key.length > 0 ? CompositeKey.FromKeyValuePairs(key) : null;\n }\n // A real CompositeKey identifies itself by behaviour rather than by `instanceof`, which fails\n // across the module duplication bundlers routinely produce.\n if (typeof (key as CompositeKey).GetValueByFieldName === 'function') {\n return key as CompositeKey;\n }\n const pair = key as { FieldName?: string; Value?: unknown };\n if (pair.FieldName !== undefined && pair.Value !== undefined) {\n return CompositeKey.FromKeyValuePairs([pair as KeyValuePair]);\n }\n return null;\n}\n\n/**\n * Resolves whatever a component passed into the record's actual primary key.\n *\n * When every supplied field is already part of the primary key the input is returned as-is. When\n * one is not — the component knew the record by an email or a code — a view runs to translate it\n * into the primary key, because the caller's \"open this record\" cannot be honoured with a key that\n * does not address it.\n *\n * Returns `null` rather than throwing when the request cannot be honoured: an unknown entity, an\n * unparseable key, a field the entity does not have, or a lookup that matched nothing. Opening a\n * record is a navigation, and a navigation that cannot be resolved should decline, not crash the\n * component that asked.\n *\n * @param entityName The entity the component wants opened.\n * @param key The key it supplied, in any accepted shape.\n * @param provider The provider to read metadata and run the lookup through — the caller's, never\n * the global default, so a host on a non-default provider resolves against its own server.\n * @param contextUser The acting user, for server-side callers.\n */\nexport async function resolveEntityRecordKey(\n entityName: string,\n key: EntityRecordKeyInput,\n provider: IMetadataProvider,\n contextUser?: UserInfo\n): Promise<CompositeKey | null> {\n const supplied = coerceToCompositeKey(key);\n if (!supplied) {\n return null;\n }\n\n const entity = provider.EntityByName(entityName);\n if (!entity) {\n console.warn(`OpenEntityRecord: entity not found: ${entityName}`);\n return null;\n }\n\n let needsLookup = false;\n for (const single of supplied.KeyValuePairs) {\n const field = entity.Fields.find(\n (f) => f.Name.trim().toLowerCase() === single.FieldName.trim().toLowerCase()\n );\n if (!field) {\n // The component named a field this entity does not have — nothing can be opened from it.\n console.warn(`OpenEntityRecord: non-matching field for key ${JSON.stringify(supplied)}`);\n return null;\n }\n if (!field.IsPrimaryKey) {\n needsLookup = true;\n break;\n }\n }\n\n if (!needsLookup) {\n return supplied;\n }\n\n const rv = RunView.FromMetadataProvider(provider);\n const result = await rv.RunView(\n {\n EntityName: entityName,\n ExtraFilter: supplied.ToWhereClause(),\n },\n contextUser\n );\n if (!result?.Success || result.Results.length === 0) {\n return null;\n }\n\n const row = result.Results[0] as Record<string, unknown>;\n return CompositeKey.FromKeyValuePairs(\n entity.PrimaryKeys.map((pk) => ({ FieldName: pk.Name, Value: row[pk.Name] }) as KeyValuePair)\n );\n}\n"]}
1
+ {"version":3,"file":"entity-record-key.js","sourceRoot":"","sources":["../../src/utilities/entity-record-key.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @fileoverview Normalizing what a component passes to `OpenEntityRecord` into a usable record key.\n * @module @memberjunction/react-runtime/utilities\n *\n * ## Why this is not the host's job\n *\n * `callbacks.OpenEntityRecord(entityName, key)` is part of the component contract, and components\n * are loose about the second argument in two ways that every host then has to absorb identically:\n *\n * 1. **Shape.** It may already be a `CompositeKey`, or an array of `KeyValuePair`, or a bare\n * `{ FieldName, Value }` object.\n * 2. **Which fields.** A component frequently knows a record by something that is *not* its primary\n * key — an email, a code, an external id — because that is what its query returned.\n *\n * Getting (2) right means looking up the entity, checking each supplied field against\n * `IsPrimaryKey`, and running a view to translate when it is not. A host that skips it opens the\n * wrong record or nothing at all; a host that reimplements it gets a subtly different answer. Both\n * happened: the Angular bridge did the full resolution inline, and the React Native app read\n * `key.GetValueByIndex(0)` and hoped.\n *\n * So the resolution lives here, next to the contract it serves, and hosts keep only the part that is\n * genuinely theirs — what \"open\" means on their surface.\n */\n\nimport {\n CompositeKey,\n IMetadataProvider,\n KeyValuePair,\n RunView,\n UserInfo,\n} from '@memberjunction/core';\n\n/**\n * The shapes a component may pass as the `key` argument to `OpenEntityRecord`.\n *\n * Deliberately wide: this is an input boundary, and narrowing it would only move the problem into\n * every caller.\n */\nexport type EntityRecordKeyInput =\n | CompositeKey\n | KeyValuePair[]\n | { FieldName: string; Value: unknown }\n | null\n | undefined;\n\n/**\n * Coerces the accepted input shapes into a `CompositeKey`, without resolving anything.\n *\n * @param key Whatever the component passed.\n */\nfunction coerceToCompositeKey(key: EntityRecordKeyInput): CompositeKey | null {\n if (!key) {\n return null;\n }\n if (Array.isArray(key)) {\n return key.length > 0 ? CompositeKey.FromKeyValuePairs(key) : null;\n }\n // A real CompositeKey identifies itself by behaviour rather than by `instanceof`, which fails\n // across the module duplication bundlers routinely produce.\n if (typeof (key as CompositeKey).GetValueByFieldName === 'function') {\n return key as CompositeKey;\n }\n const pair = key as { FieldName?: string; Value?: unknown };\n if (pair.FieldName !== undefined && pair.Value !== undefined) {\n return CompositeKey.FromKeyValuePairs([pair as KeyValuePair]);\n }\n return null;\n}\n\n/**\n * Resolves whatever a component passed into the record's actual primary key.\n *\n * When every supplied field is already part of the primary key the input is returned as-is. When\n * one is not — the component knew the record by an email or a code — a view runs to translate it\n * into the primary key, because the caller's \"open this record\" cannot be honoured with a key that\n * does not address it.\n *\n * Returns `null` rather than throwing when the request cannot be honoured: an unknown entity, an\n * unparseable key, a field the entity does not have, or a lookup that matched nothing. Opening a\n * record is a navigation, and a navigation that cannot be resolved should decline, not crash the\n * component that asked.\n *\n * @param entityName The entity the component wants opened.\n * @param key The key it supplied, in any accepted shape.\n * @param provider The provider to read metadata and run the lookup through — the caller's, never\n * the global default, so a host on a non-default provider resolves against its own server.\n * @param contextUser The acting user, for server-side callers.\n */\nexport async function ResolveEntityRecordKey(\n entityName: string,\n key: EntityRecordKeyInput,\n provider: IMetadataProvider,\n contextUser?: UserInfo\n): Promise<CompositeKey | null> {\n const supplied = coerceToCompositeKey(key);\n if (!supplied) {\n return null;\n }\n\n const entity = provider.EntityByName(entityName);\n if (!entity) {\n console.warn(`OpenEntityRecord: entity not found: ${entityName}`);\n return null;\n }\n\n let needsLookup = false;\n for (const single of supplied.KeyValuePairs) {\n const field = entity.Fields.find(\n (f) => f.Name.trim().toLowerCase() === single.FieldName.trim().toLowerCase()\n );\n if (!field) {\n // The component named a field this entity does not have — nothing can be opened from it.\n console.warn(`OpenEntityRecord: non-matching field for key ${JSON.stringify(supplied)}`);\n return null;\n }\n if (!field.IsPrimaryKey) {\n needsLookup = true;\n break;\n }\n }\n\n if (!needsLookup) {\n return supplied;\n }\n\n const rv = RunView.FromMetadataProvider(provider);\n const result = await rv.RunView(\n {\n EntityName: entityName,\n ExtraFilter: supplied.ToWhereClause(),\n },\n contextUser\n );\n if (!result?.Success || result.Results.length === 0) {\n return null;\n }\n\n const row = result.Results[0] as Record<string, unknown>;\n return CompositeKey.FromKeyValuePairs(\n entity.PrimaryKeys.map((pk) => ({ FieldName: pk.Name, Value: row[pk.Name] }) as KeyValuePair)\n );\n}\n\n/** @deprecated Use {@link ResolveEntityRecordKey}. */\nexport async function resolveEntityRecordKey(\n entityName: string,\n key: EntityRecordKeyInput,\n provider: IMetadataProvider,\n contextUser?: UserInfo\n): Promise<CompositeKey | null> {\n return ResolveEntityRecordKey(entityName, key, provider, contextUser);\n}\n"]}
@@ -3,17 +3,25 @@ import { DependencyGraph, LoadOrderResult, ResolvedVersion, VersionRequirement,
3
3
  export declare class LibraryDependencyResolver {
4
4
  private debug;
5
5
  constructor(options?: DependencyResolutionOptions);
6
+ ParseDependencies(json: string | null): Map<string, string>;
6
7
  parseDependencies(json: string | null): Map<string, string>;
8
+ BuildDependencyGraph(libraries: MJComponentLibraryEntity[]): DependencyGraph;
7
9
  buildDependencyGraph(libraries: MJComponentLibraryEntity[]): DependencyGraph;
10
+ DetectCycles(graph: DependencyGraph): string[][];
8
11
  detectCycles(graph: DependencyGraph): string[][];
12
+ TopologicalSort(graph: DependencyGraph): MJComponentLibraryEntity[];
9
13
  topologicalSort(graph: DependencyGraph): MJComponentLibraryEntity[];
10
14
  private parseVersion;
11
15
  private parseVersionRange;
12
16
  private versionSatisfiesRange;
13
17
  private compareVersions;
18
+ ResolveVersionConflicts(requirements: VersionRequirement[], availableLibraries: MJComponentLibraryEntity[]): ResolvedVersion;
14
19
  resolveVersionConflicts(requirements: VersionRequirement[], availableLibraries: MJComponentLibraryEntity[]): ResolvedVersion;
20
+ GetLoadOrder(requestedLibs: string[], allLibs: MJComponentLibraryEntity[], options?: DependencyResolutionOptions): LoadOrderResult;
15
21
  getLoadOrder(requestedLibs: string[], allLibs: MJComponentLibraryEntity[], options?: DependencyResolutionOptions): LoadOrderResult;
22
+ GetDirectDependencies(library: MJComponentLibraryEntity): Map<string, string>;
16
23
  getDirectDependencies(library: MJComponentLibraryEntity): Map<string, string>;
24
+ GetTransitiveDependencies(libraryName: string, allLibs: MJComponentLibraryEntity[], maxDepth?: number): Set<string>;
17
25
  getTransitiveDependencies(libraryName: string, allLibs: MJComponentLibraryEntity[], maxDepth?: number): Set<string>;
18
26
  }
19
27
  //# sourceMappingURL=library-dependency-resolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"library-dependency-resolver.d.ts","sourceRoot":"","sources":["../../src/utilities/library-dependency-resolver.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EACL,eAAe,EAEf,eAAe,EAGf,eAAe,EAGf,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,2BAA2B,CAAC;AAKnC,qBAAa,yBAAyB;IACpC,OAAO,CAAC,KAAK,CAAkB;gBAEnB,OAAO,CAAC,EAAE,2BAA2B;IASjD,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IA4B3D,oBAAoB,CAAC,SAAS,EAAE,wBAAwB,EAAE,GAAG,eAAe;IAuC5E,YAAY,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,EAAE,EAAE;IA4ChD,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,wBAAwB,EAAE;IAmDnE,OAAO,CAAC,YAAY;IAoBpB,OAAO,CAAC,iBAAiB;IA6CzB,OAAO,CAAC,qBAAqB;IAmD7B,OAAO,CAAC,eAAe;IAqBvB,uBAAuB,CACrB,YAAY,EAAE,kBAAkB,EAAE,EAClC,kBAAkB,EAAE,wBAAwB,EAAE,GAC7C,eAAe;IA6ElB,YAAY,CACV,aAAa,EAAE,MAAM,EAAE,EACvB,OAAO,EAAE,wBAAwB,EAAE,EACnC,OAAO,CAAC,EAAE,2BAA2B,GACpC,eAAe;IA+KlB,qBAAqB,CAAC,OAAO,EAAE,wBAAwB,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAW7E,yBAAyB,CACvB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,wBAAwB,EAAE,EACnC,QAAQ,GAAE,MAAW,GACpB,GAAG,CAAC,MAAM,CAAC;CAiCf"}
1
+ {"version":3,"file":"library-dependency-resolver.d.ts","sourceRoot":"","sources":["../../src/utilities/library-dependency-resolver.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EACL,eAAe,EAEf,eAAe,EAGf,eAAe,EAGf,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,2BAA2B,CAAC;AAKnC,qBAAa,yBAAyB;IACpC,OAAO,CAAC,KAAK,CAAkB;gBAEnB,OAAO,CAAC,EAAE,2BAA2B;IASjD,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAwB3D,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAS3D,oBAAoB,CAAC,SAAS,EAAE,wBAAwB,EAAE,GAAG,eAAe;IAmC5E,oBAAoB,CAAC,SAAS,EAAE,wBAAwB,EAAE,GAAG,eAAe;IAS5E,YAAY,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,EAAE,EAAE;IAwChD,YAAY,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,EAAE,EAAE;IAShD,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,wBAAwB,EAAE;IA+CnE,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,wBAAwB,EAAE;IASnE,OAAO,CAAC,YAAY;IAoBpB,OAAO,CAAC,iBAAiB;IA6CzB,OAAO,CAAC,qBAAqB;IAmD7B,OAAO,CAAC,eAAe;IAqBvB,uBAAuB,CACrB,YAAY,EAAE,kBAAkB,EAAE,EAClC,kBAAkB,EAAE,wBAAwB,EAAE,GAC7C,eAAe;IAuElB,uBAAuB,CACrB,YAAY,EAAE,kBAAkB,EAAE,EAClC,kBAAkB,EAAE,wBAAwB,EAAE,GAC7C,eAAe;IAWlB,YAAY,CACV,aAAa,EAAE,MAAM,EAAE,EACvB,OAAO,EAAE,wBAAwB,EAAE,EACnC,OAAO,CAAC,EAAE,2BAA2B,GACpC,eAAe;IA2KlB,YAAY,CACV,aAAa,EAAE,MAAM,EAAE,EACvB,OAAO,EAAE,wBAAwB,EAAE,EACnC,OAAO,CAAC,EAAE,2BAA2B,GACpC,eAAe;IASlB,qBAAqB,CAAC,OAAO,EAAE,wBAAwB,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAK7E,qBAAqB,CAAC,OAAO,EAAE,wBAAwB,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAW7E,yBAAyB,CACvB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,wBAAwB,EAAE,EACnC,QAAQ,GAAE,MAAW,GACpB,GAAG,CAAC,MAAM,CAAC;IAmCd,yBAAyB,CACvB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,wBAAwB,EAAE,EACnC,QAAQ,GAAE,MAAW,GACpB,GAAG,CAAC,MAAM,CAAC;CAGf"}