@volter/browser-substrate 0.1.118 → 0.1.120

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 (139) hide show
  1. package/catalog/demand-input.json +34 -16
  2. package/catalog/published/profile.json +8 -3
  3. package/catalog/published/v1/artifacts/sha256/1d9fc30121217ec1c2161e79c3df3e27047a786b8eb33ee6a218a887d794fa88 +4141 -0
  4. package/catalog/published/v1/artifacts/sha256/{db018a9b080d9b5fbcc6e72bc47afbdae210b679902e8dd1a269b8bd24a1bcd6 → 23a82cc8afdf35d48f0f9ef66f53ff6d7a8b3a641b7ef86e9b81ce04551ee954} +71 -25
  5. package/catalog/published/v1/artifacts/sha256/23a82cc8afdf35d48f0f9ef66f53ff6d7a8b3a641b7ef86e9b81ce04551ee954.headers.json +1 -0
  6. package/catalog/published/v1/artifacts/sha256/2ac5eba365ec12839c75c03b39b3be1dd63b798852cc460b014b52238be042f7 +2 -0
  7. package/catalog/published/v1/artifacts/sha256/2ac5eba365ec12839c75c03b39b3be1dd63b798852cc460b014b52238be042f7.headers.json +1 -0
  8. package/catalog/published/v1/artifacts/sha256/301eea90d7061167d148cc37016a0dd77b58ca86d378ee27f720ef1ea62df9e8 +0 -0
  9. package/catalog/published/v1/artifacts/sha256/301eea90d7061167d148cc37016a0dd77b58ca86d378ee27f720ef1ea62df9e8.headers.json +1 -0
  10. package/catalog/published/v1/artifacts/sha256/3a0a00dfeaa348ac20f9ef09904233d32d33f644339662d4af368f8a2010f37a +0 -0
  11. package/catalog/published/v1/artifacts/sha256/3a0a00dfeaa348ac20f9ef09904233d32d33f644339662d4af368f8a2010f37a.headers.json +1 -0
  12. package/catalog/published/v1/artifacts/sha256/3fdaef09e9e365c85e002737720f8d0ab8f278c1c244a2dde6a37663cf488ad4 +1 -0
  13. package/catalog/published/v1/artifacts/sha256/3fdaef09e9e365c85e002737720f8d0ab8f278c1c244a2dde6a37663cf488ad4.headers.json +1 -0
  14. package/catalog/published/v1/artifacts/sha256/5f7e1d2b4020aec4e624f10815e9c8e88b3fa2be6122a349f0319613f76985ea +0 -0
  15. package/catalog/published/v1/artifacts/sha256/5f7e1d2b4020aec4e624f10815e9c8e88b3fa2be6122a349f0319613f76985ea.headers.json +1 -0
  16. package/catalog/published/v1/artifacts/sha256/69e3f6ccec3e14b465df60be577ca62f536251406b9a00cce019eac5252a2495 +4 -0
  17. package/catalog/published/v1/artifacts/sha256/69e3f6ccec3e14b465df60be577ca62f536251406b9a00cce019eac5252a2495.headers.json +1 -0
  18. package/catalog/published/v1/artifacts/sha256/73c393191ec41b2b40e0bcc8653d874cb42046023e7a72389bd54abf8df928b9.headers.json +1 -1
  19. package/catalog/published/v1/artifacts/sha256/80c5be6babfe03297069703410c3c29404dcf2525d2b128746bae5536f94831f +0 -0
  20. package/catalog/published/v1/artifacts/sha256/80c5be6babfe03297069703410c3c29404dcf2525d2b128746bae5536f94831f.headers.json +1 -0
  21. package/catalog/published/v1/artifacts/sha256/a140f34875990a080a84a61ac57e9ea924e7b8d79f0dd3a1b4242139cdd6a8e4 +0 -0
  22. package/catalog/published/v1/artifacts/sha256/a140f34875990a080a84a61ac57e9ea924e7b8d79f0dd3a1b4242139cdd6a8e4.headers.json +1 -0
  23. package/catalog/published/v1/artifacts/sha256/cba9aeb25bd2b45d01611a062df64db41b20302ffa81c4eb0d0d71b359e19e7c.headers.json +1 -1
  24. package/catalog/published/v1/artifacts/sha256/d96eba1f1881334d50ffc144276dfa98e147a415e7c591ecdfcb81680361dc91.headers.json +1 -1
  25. package/catalog/published/v1/artifacts/sha256/d9dddf83dfd2af98c525007dc494d564b9ffa1f5f393c564334dcb5137e99330 +1 -0
  26. package/catalog/published/v1/artifacts/sha256/d9dddf83dfd2af98c525007dc494d564b9ffa1f5f393c564334dcb5137e99330.headers.json +1 -0
  27. package/catalog/published/v1/artifacts/sha256/ec62dc96da0099b87f4511736c87309335527fb7031639493e06c95728dc8c54.headers.json +1 -1
  28. package/catalog/published/v1/artifacts/sha256/efba6a51e920b23f2bc24e72939fbf39adead922535b7a4e5a58af21f9289b22.headers.json +1 -1
  29. package/catalog/published/v1/catalog.json +1 -1
  30. package/catalog/published/v1/catalogs/sha256/ba2ed522ac281012a19ff5a94ca87b3bb4bdf230bb941220de5491513d2a57ea.json +1 -0
  31. package/catalog/published/v1/locks/sha256/09a6c49b4a0e11a111cecfcf6b4afd63b97efcb6439bed0401f60be6d9246780.json +1 -0
  32. package/catalog/published/v1/locks/sha256/4d2b82aaf0610359bf0e757e4e63100576687880f65d1fb093625301021fc61c.json +1 -0
  33. package/catalog/published/v1/locks/sha256/5292658503e248418d24e005942a3adc9ca79af135c8f8fa20659b048df93e0b.json +1 -0
  34. package/catalog/published/v1/locks/sha256/65e508124330a0cb0455ac06ce274ed9a47b7d720290b24146cf16f1153ad0a0.json +1 -0
  35. package/catalog/published/v1/locks/sha256/91621a0164f2a8d1a149034353e8679547e3269f7329a049006ae6e069fc41ff.json +1 -0
  36. package/catalog/published/v1/locks/sha256/bf650fdc44f5297175d58f3248b31768573a23484719f455c4e9c24502c41648.json +1 -0
  37. package/catalog/published/v1/locks/sha256/f5c7caac5e06541e998fa1c6d6ef1d50c8c146af161bcf5c1c0a828c0dcedaea.json +1 -0
  38. package/catalog/published/v1/locks/sha256/fba31e0e4cf54807389170be745fe505628d9af5cb2dc3223df1508bbde3973e.json +1 -0
  39. package/catalog/published/v1/manifests/sha256/026eef1bad61aa255defe8115c2daae7a739657aebe1cff1df31712d98606cd3.json +1 -0
  40. package/catalog/published/v1/manifests/sha256/03503c6f6d9142dce3f1d6eb5105b909fe0a2b16189bd58b9c8971ca588d3e61.json +1 -0
  41. package/catalog/published/v1/manifests/sha256/{2e038fc0a8ea054179c7ec22749b6b75d76e28f47bc49090ec4a92c62838efcb.json → 05781228ef0c812f61bf957a9ce2ee58544c4a6c010be46228ec8505a5a1f978.json} +1 -1
  42. package/catalog/published/v1/manifests/sha256/05781228ef0c812f61bf957a9ce2ee58544c4a6c010be46228ec8505a5a1f978.json.headers.json +1 -0
  43. package/catalog/published/v1/manifests/sha256/566b3535719ba2aa5f2f437939174189b7b195e161890a5b792667633e9d7fc5.json +1 -0
  44. package/catalog/published/v1/manifests/sha256/566b3535719ba2aa5f2f437939174189b7b195e161890a5b792667633e9d7fc5.json.headers.json +1 -0
  45. package/catalog/published/v1/manifests/sha256/64a81cb05980cf4e83f77244ee540b7fbc9e2e8bd8673614fff938a6a21de822.json +1 -0
  46. package/catalog/published/v1/manifests/sha256/64a81cb05980cf4e83f77244ee540b7fbc9e2e8bd8673614fff938a6a21de822.json.headers.json +1 -0
  47. package/catalog/published/v1/manifests/sha256/{606b43db77c5b9be029cd31941d9ba4ac91424e9a5225ac62debb381e522979e.json → c5ebb33c1959713cf4dee3482dde9b95a87fe1c6dd9e947c013018254cd2a371.json} +1 -1
  48. package/catalog/published/v1/manifests/sha256/c5ebb33c1959713cf4dee3482dde9b95a87fe1c6dd9e947c013018254cd2a371.json.headers.json +1 -0
  49. package/catalog/published/v1/manifests/sha256/{9345a903a00ef5bcfd58c03f54e9d00670a1fb885284369b6af1c3fb0fcaa43a.json → e9c4da2392cebaa5377154b7fe0e72d7d943032e41cf775d0158df5808d1e38f.json} +1 -1
  50. package/catalog/published/v1/manifests/sha256/e9c4da2392cebaa5377154b7fe0e72d7d943032e41cf775d0158df5808d1e38f.json.headers.json +1 -0
  51. package/catalog/published/v1/manifests/sha256/fd500c4047bcddcc3d16d4a98ac7d1d0f887e0669a6ae8fa1f391a8b16a8abb9.json +1 -0
  52. package/catalog/published/v1/manifests/sha256/fd500c4047bcddcc3d16d4a98ac7d1d0f887e0669a6ae8fa1f391a8b16a8abb9.json.headers.json +1 -0
  53. package/dist/catalog-programs.d.ts +6 -0
  54. package/dist/catalog-programs.d.ts.map +1 -1
  55. package/dist/catalog-programs.js +15 -2
  56. package/dist/catalog-programs.js.map +1 -1
  57. package/dist/cli/cache-lifetime.d.ts +8 -0
  58. package/dist/cli/cache-lifetime.d.ts.map +1 -0
  59. package/dist/cli/cache-lifetime.js +214 -0
  60. package/dist/cli/cache-lifetime.js.map +1 -0
  61. package/dist/cli/cache-root.d.ts.map +1 -1
  62. package/dist/cli/cache-root.js +5 -1
  63. package/dist/cli/cache-root.js.map +1 -1
  64. package/dist/cli/main.d.ts +2 -0
  65. package/dist/cli/main.d.ts.map +1 -1
  66. package/dist/cli/main.js +82 -35
  67. package/dist/cli/main.js.map +1 -1
  68. package/dist/cli/package-packs.d.ts +1 -1
  69. package/dist/cli/package-packs.d.ts.map +1 -1
  70. package/dist/cli/package-packs.js +2 -68
  71. package/dist/cli/package-packs.js.map +1 -1
  72. package/dist/cli/project-build.d.ts.map +1 -1
  73. package/dist/cli/project-build.js +2 -0
  74. package/dist/cli/project-build.js.map +1 -1
  75. package/dist/cli/provision-catalog.d.ts +14 -0
  76. package/dist/cli/provision-catalog.d.ts.map +1 -1
  77. package/dist/cli/provision-catalog.js +59 -21
  78. package/dist/cli/provision-catalog.js.map +1 -1
  79. package/dist/image.d.ts +6 -0
  80. package/dist/image.d.ts.map +1 -1
  81. package/dist/image.js +14 -2
  82. package/dist/image.js.map +1 -1
  83. package/dist/index.d.ts.map +1 -1
  84. package/dist/index.js +6 -4
  85. package/dist/index.js.map +1 -1
  86. package/dist/shell/assets/{browser-sandbox-bridge-CRudVv29.js → browser-sandbox-bridge-Cxc4WXZV.js} +2 -2
  87. package/dist/shell/assets/{node-execution-worker-87fe3e3a28e9186d.js → node-execution-worker-08f9a46842d3ea2d.js} +4 -4
  88. package/dist/shell/assets/pythonHost-CTnI04xe.js +1 -0
  89. package/dist/shell/assets/{runtime-worker-DH_89R1c.js → runtime-worker-4ta5HAH6.js} +61 -12
  90. package/dist/shell/assets/{sandbox-BnR3tlyJ.js → sandbox-Csy8dHxD.js} +1 -1
  91. package/dist/shell/assets/{shell-5W27-rZ9.js → shell-BchR8dEr.js} +503 -502
  92. package/dist/shell/bundler-worker.js +4 -4
  93. package/dist/shell/index.html +2 -2
  94. package/dist/shell/node-execution-worker.js +1 -1
  95. package/dist/shell/python-host.html +1 -2
  96. package/dist/shell/sandbox.html +2 -2
  97. package/package.json +1 -1
  98. package/catalog/published/v1/catalogs/sha256/0706a928806dcf706b3ec1718fce04fde7637b0e3792860849ef2551fdc11207.json +0 -1
  99. package/catalog/published/v1/locks/sha256/0932882d27d284ca572fadc5139f8919a36fe4be5e7310f47518d32a490df0fe.json +0 -1
  100. package/catalog/published/v1/locks/sha256/17f8b244e6d8ee2441e204d88208fb12957019102df10b9387c2602b153568c2.json +0 -1
  101. package/catalog/published/v1/locks/sha256/4b762bf5e60a1ee7c2e837114286edc90b117fbfc4fdcf7988ffc78e8016d7e3.json +0 -1
  102. package/catalog/published/v1/locks/sha256/e847d9c9af2d5c30c7a60b362afb2d57a099782dbaa1d649b48a63f2fc22bd0d.json +0 -1
  103. package/catalog/published/v1/locks/sha256/ef55f6c4a945d35d7eac63950b6308b4fa2759f6826728c5fc9c6c195e238d44.json +0 -1
  104. package/catalog/published/v1/manifests/sha256/7c26dd6d9ba0fc4c5b0f224f7602b69ac10cdb98fadc12bb5c2b5337a5b7fc09.json +0 -1
  105. package/catalog/published/v1/manifests/sha256/ee2393699113b4be1eb965d37d9fa718fe6213980a33a3f08672457781f56415.json +0 -1
  106. package/dist/shell/assets/cross-origin-worker-host-BBpqGIrC.js +0 -1
  107. package/dist/shell/assets/index-DGXLsqoC.js +0 -1
  108. package/dist/shell/assets/pythonHost-xjkxJWzf.js +0 -1
  109. /package/catalog/published/v1/artifacts/sha256/{db018a9b080d9b5fbcc6e72bc47afbdae210b679902e8dd1a269b8bd24a1bcd6.headers.json → 1d9fc30121217ec1c2161e79c3df3e27047a786b8eb33ee6a218a887d794fa88.headers.json} +0 -0
  110. /package/catalog/published/v1/catalogs/sha256/{0706a928806dcf706b3ec1718fce04fde7637b0e3792860849ef2551fdc11207.json.headers.json → ba2ed522ac281012a19ff5a94ca87b3bb4bdf230bb941220de5491513d2a57ea.json.headers.json} +0 -0
  111. /package/catalog/published/v1/locks/sha256/{0932882d27d284ca572fadc5139f8919a36fe4be5e7310f47518d32a490df0fe.json.headers.json → 09a6c49b4a0e11a111cecfcf6b4afd63b97efcb6439bed0401f60be6d9246780.json.headers.json} +0 -0
  112. /package/catalog/published/v1/locks/sha256/{17f8b244e6d8ee2441e204d88208fb12957019102df10b9387c2602b153568c2.json.headers.json → 4d2b82aaf0610359bf0e757e4e63100576687880f65d1fb093625301021fc61c.json.headers.json} +0 -0
  113. /package/catalog/published/v1/locks/sha256/{4b762bf5e60a1ee7c2e837114286edc90b117fbfc4fdcf7988ffc78e8016d7e3.json.headers.json → 5292658503e248418d24e005942a3adc9ca79af135c8f8fa20659b048df93e0b.json.headers.json} +0 -0
  114. /package/catalog/published/v1/locks/sha256/{e847d9c9af2d5c30c7a60b362afb2d57a099782dbaa1d649b48a63f2fc22bd0d.json.headers.json → 65e508124330a0cb0455ac06ce274ed9a47b7d720290b24146cf16f1153ad0a0.json.headers.json} +0 -0
  115. /package/catalog/published/v1/locks/sha256/{ef55f6c4a945d35d7eac63950b6308b4fa2759f6826728c5fc9c6c195e238d44.json.headers.json → 91621a0164f2a8d1a149034353e8679547e3269f7329a049006ae6e069fc41ff.json.headers.json} +0 -0
  116. /package/catalog/published/v1/{manifests/sha256/2e038fc0a8ea054179c7ec22749b6b75d76e28f47bc49090ec4a92c62838efcb.json.headers.json → locks/sha256/bf650fdc44f5297175d58f3248b31768573a23484719f455c4e9c24502c41648.json.headers.json} +0 -0
  117. /package/catalog/published/v1/{manifests/sha256/606b43db77c5b9be029cd31941d9ba4ac91424e9a5225ac62debb381e522979e.json.headers.json → locks/sha256/f5c7caac5e06541e998fa1c6d6ef1d50c8c146af161bcf5c1c0a828c0dcedaea.json.headers.json} +0 -0
  118. /package/catalog/published/v1/{manifests/sha256/7c26dd6d9ba0fc4c5b0f224f7602b69ac10cdb98fadc12bb5c2b5337a5b7fc09.json.headers.json → locks/sha256/fba31e0e4cf54807389170be745fe505628d9af5cb2dc3223df1508bbde3973e.json.headers.json} +0 -0
  119. /package/catalog/published/v1/manifests/sha256/{9345a903a00ef5bcfd58c03f54e9d00670a1fb885284369b6af1c3fb0fcaa43a.json.headers.json → 026eef1bad61aa255defe8115c2daae7a739657aebe1cff1df31712d98606cd3.json.headers.json} +0 -0
  120. /package/catalog/published/v1/manifests/sha256/{ee2393699113b4be1eb965d37d9fa718fe6213980a33a3f08672457781f56415.json.headers.json → 03503c6f6d9142dce3f1d6eb5105b909fe0a2b16189bd58b9c8971ca588d3e61.json.headers.json} +0 -0
  121. /package/dist/shell/substrate/shell.compilers/{2e038fc0a8ea054179c7ec22749b6b75d76e28f47bc49090ec4a92c62838efcb → 05781228ef0c812f61bf957a9ce2ee58544c4a6c010be46228ec8505a5a1f978}/bindings_wasm_bg.wasm +0 -0
  122. /package/dist/shell/substrate/shell.compilers/{2e038fc0a8ea054179c7ec22749b6b75d76e28f47bc49090ec4a92c62838efcb → 05781228ef0c812f61bf957a9ce2ee58544c4a6c010be46228ec8505a5a1f978}/package.json +0 -0
  123. /package/dist/shell/substrate/shell.compilers/{2e038fc0a8ea054179c7ec22749b6b75d76e28f47bc49090ec4a92c62838efcb → 05781228ef0c812f61bf957a9ce2ee58544c4a6c010be46228ec8505a5a1f978}/rollup.browser.js +0 -0
  124. /package/dist/shell/substrate/shell.compilers/{606b43db77c5b9be029cd31941d9ba4ac91424e9a5225ac62debb381e522979e → c5ebb33c1959713cf4dee3482dde9b95a87fe1c6dd9e947c013018254cd2a371}/LICENSE.md +0 -0
  125. /package/dist/shell/substrate/shell.compilers/{606b43db77c5b9be029cd31941d9ba4ac91424e9a5225ac62debb381e522979e → c5ebb33c1959713cf4dee3482dde9b95a87fe1c6dd9e947c013018254cd2a371}/README.md +0 -0
  126. /package/dist/shell/substrate/shell.compilers/{606b43db77c5b9be029cd31941d9ba4ac91424e9a5225ac62debb381e522979e → c5ebb33c1959713cf4dee3482dde9b95a87fe1c6dd9e947c013018254cd2a371}/bin/esbuild +0 -0
  127. /package/dist/shell/substrate/shell.compilers/{606b43db77c5b9be029cd31941d9ba4ac91424e9a5225ac62debb381e522979e → c5ebb33c1959713cf4dee3482dde9b95a87fe1c6dd9e947c013018254cd2a371}/esbuild.wasm +0 -0
  128. /package/dist/shell/substrate/shell.compilers/{606b43db77c5b9be029cd31941d9ba4ac91424e9a5225ac62debb381e522979e → c5ebb33c1959713cf4dee3482dde9b95a87fe1c6dd9e947c013018254cd2a371}/esm/browser.d.ts +0 -0
  129. /package/dist/shell/substrate/shell.compilers/{606b43db77c5b9be029cd31941d9ba4ac91424e9a5225ac62debb381e522979e → c5ebb33c1959713cf4dee3482dde9b95a87fe1c6dd9e947c013018254cd2a371}/esm/browser.js +0 -0
  130. /package/dist/shell/substrate/shell.compilers/{606b43db77c5b9be029cd31941d9ba4ac91424e9a5225ac62debb381e522979e → c5ebb33c1959713cf4dee3482dde9b95a87fe1c6dd9e947c013018254cd2a371}/esm/browser.min.js +0 -0
  131. /package/dist/shell/substrate/shell.compilers/{606b43db77c5b9be029cd31941d9ba4ac91424e9a5225ac62debb381e522979e → c5ebb33c1959713cf4dee3482dde9b95a87fe1c6dd9e947c013018254cd2a371}/lib/browser.d.ts +0 -0
  132. /package/dist/shell/substrate/shell.compilers/{606b43db77c5b9be029cd31941d9ba4ac91424e9a5225ac62debb381e522979e → c5ebb33c1959713cf4dee3482dde9b95a87fe1c6dd9e947c013018254cd2a371}/lib/browser.js +0 -0
  133. /package/dist/shell/substrate/shell.compilers/{606b43db77c5b9be029cd31941d9ba4ac91424e9a5225ac62debb381e522979e → c5ebb33c1959713cf4dee3482dde9b95a87fe1c6dd9e947c013018254cd2a371}/lib/browser.min.js +0 -0
  134. /package/dist/shell/substrate/shell.compilers/{606b43db77c5b9be029cd31941d9ba4ac91424e9a5225ac62debb381e522979e → c5ebb33c1959713cf4dee3482dde9b95a87fe1c6dd9e947c013018254cd2a371}/lib/main.d.ts +0 -0
  135. /package/dist/shell/substrate/shell.compilers/{606b43db77c5b9be029cd31941d9ba4ac91424e9a5225ac62debb381e522979e → c5ebb33c1959713cf4dee3482dde9b95a87fe1c6dd9e947c013018254cd2a371}/lib/main.js +0 -0
  136. /package/dist/shell/substrate/shell.compilers/{606b43db77c5b9be029cd31941d9ba4ac91424e9a5225ac62debb381e522979e → c5ebb33c1959713cf4dee3482dde9b95a87fe1c6dd9e947c013018254cd2a371}/package.json +0 -0
  137. /package/dist/shell/substrate/shell.compilers/{606b43db77c5b9be029cd31941d9ba4ac91424e9a5225ac62debb381e522979e → c5ebb33c1959713cf4dee3482dde9b95a87fe1c6dd9e947c013018254cd2a371}/wasm_exec.js +0 -0
  138. /package/dist/shell/substrate/shell.compilers/{606b43db77c5b9be029cd31941d9ba4ac91424e9a5225ac62debb381e522979e → c5ebb33c1959713cf4dee3482dde9b95a87fe1c6dd9e947c013018254cd2a371}/wasm_exec_node.js +0 -0
  139. /package/dist/shell/substrate/shell.compilers/{9345a903a00ef5bcfd58c03f54e9d00670a1fb885284369b6af1c3fb0fcaa43a → e9c4da2392cebaa5377154b7fe0e72d7d943032e41cf775d0158df5808d1e38f}/amaro.js +0 -0
package/dist/cli/main.js CHANGED
@@ -5,12 +5,13 @@
5
5
  // `build` writes the same page and image to ./dist as static files. `init`
6
6
  // writes a playground: a Dockerfile whose CMD fetches what to run.
7
7
  import { createHash } from "node:crypto";
8
+ import { retainPreparationCache } from "./cache-lifetime.js";
8
9
  import { preparationCacheDirectory, selectedCacheRoot } from "./cache-root.js";
9
10
  import { preparationBounded, preparationCheckpoint, preparationMemoryLimit, preparationPhase, withPreparationMemory } from "./preparation-memory.js";
10
11
  import { existsSync, mkdirSync, readFileSync, readdirSync, realpathSync, renameSync, statSync, watch, writeFileSync } from "node:fs";
11
12
  import { basename, join, relative, resolve, sep } from "node:path";
12
13
  import { fileURLToPath } from "node:url";
13
- import { browserProjectId, canonicalBrowserPackJson, parseBrowserProgramManifest, classifyContainerFile, baselineContainerLaneTable, browserBaselineContracts, parseContainerFile, platformBinaryDependenciesOf } from "@volter/browser-runtime";
14
+ import { browserProjectId, canonicalBrowserPackJson, parseBrowserProgramManifest, classifyContainerFile, baselineContainerLaneTable, browserBaselineContracts, parseContainerFile, splitShellCommands, classifyCommand, platformBinaryDependenciesOf } from "@volter/browser-runtime";
14
15
  import { archiveFolder, blobName, EXCLUDED_NAMES, folderSignature } from "./archive.js";
15
16
  import { writeBuild } from "./build.js";
16
17
  import { writeInit } from "./init.js";
@@ -28,7 +29,7 @@ import { browserPackCompletePath, browserPackExpandedPath } from "@volter/browse
28
29
  import { IMAGE_TREE_ROOT } from "@volter/browser-runtime/browser-image-layers.js";
29
30
  import { IMAGE_PACKS_KIND, IMAGE_PACKS_VERSION } from "../image-packs.js";
30
31
  import { EVENTS_PATH, serve } from "./serve.js";
31
- import { imageArchivePath, imageBlobsPath, imageManifestPath, imageTarballPath, imageWorldArchivePath, imageWorldDependenciesPath, validImageName, worldEnvironmentOutputFlag, IMAGE_KIND, IMAGE_VERSION, REGISTRY_PATH, WORLD_RUNTIME_NAMES } from "../image.js";
32
+ import { validateImageManifest, imageArchivePath, imageBlobsPath, imageManifestPath, imageTarballPath, imageWorldArchivePath, imageWorldDependenciesPath, validImageName, worldEnvironmentOutputFlag, IMAGE_KIND, IMAGE_VERSION, REGISTRY_PATH, WORLD_RUNTIME_NAMES } from "../image.js";
32
33
  import { detectSetup, SetupError } from "../setup.js";
33
34
  import { carryRegistryTarballs } from "./plan-tarballs.js";
34
35
  import { defaultProvisionCatalog, formatBrowserProvisionPlan, planBrowserProvisionDemand, provisionCatalogClient, readBrowserProvisionDemand } from "./provision-demand.js";
@@ -219,7 +220,15 @@ function folderProjectId(folder, name) {
219
220
  export async function buildImage(folder, name, settings, project) {
220
221
  return buildImageWith(folder, name, settings, project, {});
221
222
  }
223
+ const imageCacheHolds = new WeakMap();
224
+ /** A serving or copying caller releases after its last read of the image's files. */
225
+ export function releaseImageCache(image) { imageCacheHolds.get(image)?.(); imageCacheHolds.delete(image); }
222
226
  export async function buildImageWith(folder, name, settings, project, options) {
227
+ const held = await retainPreparationCache(folder, preparationCacheDirectory("", options.cacheRoot), () => prepareImage(folder, name, settings, project, options));
228
+ imageCacheHolds.set(held.value, held.release);
229
+ return held.value;
230
+ }
231
+ async function prepareImage(folder, name, settings, project, options) {
223
232
  assertShell();
224
233
  options = { ...options, provisionCatalog: options.provisionCatalog ?? defaultProvisionCatalog() };
225
234
  // Host program metadata translates to exact catalog requests. Its
@@ -235,6 +244,8 @@ export async function buildImageWith(folder, name, settings, project, options) {
235
244
  // Existing families remain on their only current path until their genuine
236
245
  // replacement is published and their atomic consumer/removal cutover lands.
237
246
  const compilerInput = readDemandCatalogInput();
247
+ const baselinePrograms = compilerInput.records.flatMap(recipe => recipe.kind === "wali" && recipe.baseline ? [{ kind: "command", name: recipe.command, version: recipe.version, backend: "tab", phase: "run", abi: options.provisionCatalog.profile.abi, features: [] }] : []);
248
+ options.commandRequests = [...(options.commandRequests ?? []), ...baselinePrograms].filter((request, i, rows) => rows.findIndex(row => canonicalBrowserPackJson(row) === canonicalBrowserPackJson(request)) === i);
238
249
  const demand = readBrowserProvisionDemand(folder, { discovery: nativeDemandRules(compilerInput), abi: options.provisionCatalog?.profile.abi ?? "unselected", ...(options.commandRequests ? { commandRequests: options.commandRequests } : {}), ...(options.buildArgs ? { buildArgs: options.buildArgs } : {}) });
239
250
  if (options.commandRequests?.length && !options.provisionCatalog)
240
251
  throw new Error("Selected commands require --provision-catalog and a complete prepared environment.");
@@ -243,21 +254,27 @@ export async function buildImageWith(folder, name, settings, project, options) {
243
254
  demand.items.push({ request, file: "compiler runtime/instance recipes", line: 1, scope: "selected" });
244
255
  const baselineDemand = baselineRequests(compilerInput, demand.items.map(item => item.request));
245
256
  for (const request of baselineDemand)
246
- demand.items.push({ request, file: "selected runtime provider", line: 1, scope: "selected" });
257
+ demand.items.push({ request, file: "selected runtime provider", line: 1, scope: ["node", "shell"].includes(request.name) ? "selected" : "optional-profile" });
247
258
  const provisionPlan = options.provisionCatalog ? await planBrowserProvisionDemand(demand, options.provisionCatalog) : undefined;
248
259
  process.stdout.write(formatBrowserProvisionPlan(demand, provisionPlan));
249
- const baselineLanes = baselineContainerLaneTable(provisionPlan ? browserBaselineContracts(provisionPlan) : []);
260
+ const baselineLanes = baselineContainerLaneTable(provisionPlan ? browserBaselineContracts(provisionPlan, ["node", "shell"]) : []);
250
261
  let compilers = await projectCompilerAssets(undefined, name, options.provisionCatalog);
251
262
  const selectedPrograms = [];
263
+ const suppliedPrograms = [];
264
+ const unavailablePrograms = [];
252
265
  for (const request of options.commandRequests ?? []) {
253
266
  const row = provisionPlan?.rows.find(row => JSON.stringify(row.request) === JSON.stringify(request));
254
- if (!row || row.status !== "resolved" || row.provision?.disposition !== "pack" || row.provision.contract.kind !== "program")
255
- throw new Error(`${request.name}@${request.version}: ${row?.reason ?? "unpublished exact program"}. ${row?.prepare ?? "Prepare and publish its full environment on a host."}`);
267
+ if (!row || row.status !== "resolved" || row.provision?.disposition !== "pack" || row.provision.contract.kind !== "program") {
268
+ unavailablePrograms.push({ provider: request.name, commands: [request.name], reason: `${request.name}@${request.version}: ${row?.reason ?? "unpublished exact program"}. ${row?.prepare ?? "Prepare and publish its full environment on a host."}` });
269
+ continue;
270
+ }
271
+ suppliedPrograms.push(request);
256
272
  selectedPrograms.push(row.provision.contract.command);
257
273
  }
258
- if (options.commandRequests?.length) {
274
+ options.commandRequests = suppliedPrograms;
275
+ if (options.commandRequests.length) {
259
276
  const selected = await selectCatalogProgramEnvironment(provisionCatalogClient(options.provisionCatalog), options.provisionCatalog.profile, options.commandRequests);
260
- for (const template of translated) {
277
+ for (const template of translated.filter(template => selectedPrograms.includes(template.executable))) {
261
278
  const roots = [...selected.manifests.values()].filter(pack => pack.integration.kind === "program" && pack.integration.engine === template.engine && pack.integration.executable === template.executable && pack.upstreamVersion === template.version);
262
279
  if (roots.length !== 1)
263
280
  throw new Error("Historical program input has no unique authenticated program root.");
@@ -281,6 +298,16 @@ export async function buildImageWith(folder, name, settings, project, options) {
281
298
  if (!setup) {
282
299
  throw new Error(`${folder} carries nothing to run: add a Dockerfile with a CMD, or a package.json with a dev script. An empty folder becomes a playground with \`browser-substrate init\`.`);
283
300
  }
301
+ // Only the actual startup command selects an additional mandatory face.
302
+ // Dependency locks and other scripts describe optional use, not startup.
303
+ const startupCommand = setup.devScript ?? setup.dev ?? setup.image?.command ?? "";
304
+ const startupWords = splitShellCommands(startupCommand).filter(command => !command.conditional).map(command => classifyCommand(command)).flatMap(requirement => "program" in requirement && requirement.program ? [requirement.program] : requirement.kind === "package-manager" ? [requirement.manager] : []);
305
+ const requiredProviders = compilerInput.records.flatMap(recipe => recipe.kind === "baseline" && recipe.contract.commands.some(command => startupWords.some(word => word.replace(/^['"]|['"]$/gu, "").split("/").at(-1) === command)) ? [recipe.provider] : []);
306
+ if (provisionPlan)
307
+ browserBaselineContracts(provisionPlan, ["node", "shell", ...requiredProviders]);
308
+ const missingStartupProgram = unavailablePrograms.find(capability => capability.commands.some(command => startupWords.includes(command)));
309
+ if (missingStartupProgram)
310
+ throw new Error(`START requires ${missingStartupProgram.provider}: ${missingStartupProgram.reason}`);
284
311
  let archive = archiveFolder(folder, options.cacheRoot ? { cacheRoot: options.cacheRoot } : {});
285
312
  let preparation = { location: "none" };
286
313
  if (setup.kind === "dockerfile") {
@@ -497,7 +524,14 @@ export async function buildImageWith(folder, name, settings, project, options) {
497
524
  if (options.provisionCatalog && provisionPlan) {
498
525
  provisionPlan.rows.push(...(projectOutputs?.plan.rows ?? []));
499
526
  provisionPlan.rows.push(...compilers.plan.rows.filter(row => !provisionPlan.rows.some(prior => canonicalBrowserPackJson(prior.request) === canonicalBrowserPackJson(row.request))));
500
- const provision = await imageProvisionObjects(name, options.provisionCatalog, provisionPlan, options.commandRequests ?? [], baselineDemand);
527
+ const unavailable = baselineDemand.flatMap(request => {
528
+ const row = provisionPlan.rows.find(row => canonicalBrowserPackJson(row.request) === canonicalBrowserPackJson(request));
529
+ const recipe = compilerInput.records.find(recipe => recipe.kind === "baseline" && recipe.provider === request.name);
530
+ return row?.status === "resolved" || recipe?.kind !== "baseline" ? [] : [{ provider: request.name, commands: recipe.contract.commands, ...(recipe.contract.chromium ? { chromium: recipe.contract.chromium } : {}), reason: `${row?.reason ?? "Provider closure is unpublished"}. ${row?.prepare ?? "Prepare and publish this capability through publish-demand-catalog.mjs on a machine."}` }];
531
+ });
532
+ const availableBaselines = baselineDemand.filter(request => provisionPlan.rows.some(row => row.status === "resolved" && row.provision?.disposition === "pack" && row.provision.contract.kind === "baseline" && canonicalBrowserPackJson(row.request) === canonicalBrowserPackJson(request)));
533
+ const provision = await imageProvisionObjects(name, options.provisionCatalog, provisionPlan, options.commandRequests ?? [], availableBaselines);
534
+ provision.descriptor.unavailable = [...unavailable, ...unavailablePrograms];
501
535
  manifest.provisions = provision.descriptor;
502
536
  for (const [url, source] of provision.files)
503
537
  tarballs.set(url, source);
@@ -906,12 +940,16 @@ async function dev(cwd, args) {
906
940
  if (next.manifest.archive.integrity === image.manifest.archive.integrity
907
941
  && JSON.stringify(next.manifest.preparation) === JSON.stringify(image.manifest.preparation)
908
942
  && JSON.stringify(next.manifest.registry) === JSON.stringify(image.manifest.registry)
909
- && next.manifest.dependencies?.key === image.manifest.dependencies?.key)
943
+ && next.manifest.dependencies?.key === image.manifest.dependencies?.key) {
944
+ releaseImageCache(next);
910
945
  return;
946
+ }
947
+ const previous = image;
911
948
  image = next;
912
949
  for (const [path, bytes] of imageFiles(image))
913
950
  files.set(path, bytes);
914
951
  blobs = imageBlobs(image);
952
+ releaseImageCache(previous);
915
953
  server.broadcast({ integrity: image.manifest.archive.integrity, entries: image.manifest.archive.entries });
916
954
  process.stdout.write(` ${new Date().toLocaleTimeString()} changed: ${image.manifest.archive.entries} entries, ${formatBytes(image.manifest.archive.fileBytes)}; noticed by ${noticed}, quiet after ${quietAfter} ms, built in ${Date.now() - startedAt} ms\n`);
917
955
  }
@@ -970,7 +1008,7 @@ async function dev(cwd, args) {
970
1008
  let pollTimer = setTimeout(poll, 1000);
971
1009
  await new Promise((resolveClose) => {
972
1010
  const stop = () => { watcher.close(); if (pollTimer)
973
- clearTimeout(pollTimer); server.close(); resolveClose(); };
1011
+ clearTimeout(pollTimer); server.close(); releaseImageCache(image); resolveClose(); };
974
1012
  process.once("SIGINT", stop);
975
1013
  process.once("SIGTERM", stop);
976
1014
  });
@@ -982,30 +1020,35 @@ async function build(cwd, args) {
982
1020
  // the folder's own packages, which its install resolves as `dev`'s does.
983
1021
  const packages = resolve(cwd, PACKAGES_DIRECTORY);
984
1022
  const image = await buildImageWith(cwd, args.name, args.settings, args.project, imageOptions(args, packages));
985
- const index = originRegistryIndex(packages);
986
- if (index)
987
- image.manifest.registry = index;
988
- // A World the app attaches to is imaged beside it, as `dev` images it, whatever built the app
989
- // (a Dockerfile's image too): the tab runs the World first and the image's command under it.
990
- // build arguments are Docker's; an image Docker did not build here never read them
991
- if (Object.keys(args.buildArgs).length > 0 && image.manifest.setup.kind !== "image") {
992
- throw new Error(`--build-arg ${Object.keys(args.buildArgs).join(", ")} applies to a Dockerfile whose build half runs here (a RUN step); this one's setup is ${image.manifest.setup.kind}, built in the tab with its ARG defaults`);
1023
+ try {
1024
+ const index = originRegistryIndex(packages);
1025
+ if (index)
1026
+ image.manifest.registry = index;
1027
+ // A World the app attaches to is imaged beside it, as `dev` images it, whatever built the app
1028
+ // (a Dockerfile's image too): the tab runs the World first and the image's command under it.
1029
+ // build arguments are Docker's; an image Docker did not build here never read them
1030
+ if (Object.keys(args.buildArgs).length > 0 && image.manifest.setup.kind !== "image") {
1031
+ throw new Error(`--build-arg ${Object.keys(args.buildArgs).join(", ")} applies to a Dockerfile whose build half runs here (a RUN step); this one's setup is ${image.manifest.setup.kind}, built in the tab with its ARG defaults`);
1032
+ }
1033
+ if (args.world) {
1034
+ const world = await buildWorldImage(args.world, args.name, args.cacheRoot);
1035
+ image.manifest.world = world.world;
1036
+ image.world = { archive: world.archive, blobs: world.blobs, ...(world.plan ? { plan: world.plan } : {}) };
1037
+ for (const [served, source] of world.tarballs)
1038
+ image.tarballs.set(served, source);
1039
+ }
1040
+ const out = resolve(cwd, args.out);
1041
+ preparationPhase("final copy");
1042
+ const written = writeBuild({ shell: SHELL_DIRECTORY, files: imageFiles(image), blobs: imageBlobs(image), out, manifest: image.manifest });
1043
+ preparationCheckpoint();
1044
+ process.stdout.write(`\n browser-substrate build\n\n ${out}\n ${written.files} files, ${formatBytes(written.bytes)}\n ${image.manifest.setup.playground
1045
+ ? `a playground: deploy on your page's origin and on ${image.manifest.settings.sandboxOrigin ?? "a sandbox. subdomain of it"}`
1046
+ : "one origin, static; _headers carries the isolation headers"}\n\n`);
1047
+ return 0;
993
1048
  }
994
- if (args.world) {
995
- const world = await buildWorldImage(args.world, args.name, args.cacheRoot);
996
- image.manifest.world = world.world;
997
- image.world = { archive: world.archive, blobs: world.blobs, ...(world.plan ? { plan: world.plan } : {}) };
998
- for (const [served, source] of world.tarballs)
999
- image.tarballs.set(served, source);
1049
+ finally {
1050
+ releaseImageCache(image);
1000
1051
  }
1001
- const out = resolve(cwd, args.out);
1002
- preparationPhase("final copy");
1003
- const written = writeBuild({ shell: SHELL_DIRECTORY, files: imageFiles(image), blobs: imageBlobs(image), out, manifest: image.manifest });
1004
- preparationCheckpoint();
1005
- process.stdout.write(`\n browser-substrate build\n\n ${out}\n ${written.files} files, ${formatBytes(written.bytes)}\n ${image.manifest.setup.playground
1006
- ? `a playground: deploy on your page's origin and on ${image.manifest.settings.sandboxOrigin ?? "a sandbox. subdomain of it"}`
1007
- : "one origin, static; _headers carries the isolation headers"}\n\n`);
1008
- return 0;
1009
1052
  }
1010
1053
  /**
1011
1054
  * The image's dry run (ADR-0043): opened once in a real browser, every
@@ -1027,10 +1070,11 @@ async function dryRunCommand(cwd, args) {
1027
1070
  for (let round = 1; round <= rounds; round += 1) {
1028
1071
  let url = args.page;
1029
1072
  let server;
1073
+ let image;
1030
1074
  if (!url) {
1031
1075
  // The image `dev` would serve: its packages answered by this origin.
1032
1076
  const packages = resolve(cwd, PACKAGES_DIRECTORY);
1033
- const image = await buildImageWith(cwd, args.name, args.settings, folderProjectId(cwd, args.name), { ...imageOptions(args, packages), capturedFile: file });
1077
+ image = await buildImageWith(cwd, args.name, args.settings, folderProjectId(cwd, args.name), { ...imageOptions(args, packages), capturedFile: file });
1034
1078
  const index = originRegistryIndex(packages);
1035
1079
  if (index)
1036
1080
  image.manifest.registry = index;
@@ -1098,6 +1142,8 @@ async function dryRunCommand(cwd, args) {
1098
1142
  }
1099
1143
  finally {
1100
1144
  server?.close();
1145
+ if (image)
1146
+ releaseImageCache(image);
1101
1147
  }
1102
1148
  }
1103
1149
  say(`\n Not sealed after ${rounds} rounds: each captured something new.\n\n`);
@@ -1107,7 +1153,8 @@ async function preview(cwd, args) {
1107
1153
  const out = resolve(cwd, args.out);
1108
1154
  if (!existsSync(resolve(out, "index.html")))
1109
1155
  throw new Error(`${out} holds no build; run browser-substrate build first.`);
1110
- const server = await serve({ shell: out, files: new Map(), port: args.port });
1156
+ const manifest = validateImageManifest(JSON.parse(readFileSync(resolve(out, imageManifestPath(args.name).slice(1)), "utf8")));
1157
+ const server = await serve({ shell: out, files: new Map(), port: args.port, manifest });
1111
1158
  process.stdout.write(`\n browser-substrate preview\n\n ${out}\n ${server.url}\n\n`);
1112
1159
  if (args.open)
1113
1160
  openBrowser(server.url);
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"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"}
@@ -32,7 +32,7 @@ export interface ImagePacksOptions {
32
32
  onOutput?: (text: string) => void;
33
33
  cacheDirectory?: string;
34
34
  cacheRoot?: string;
35
- /** Only prune an explicitly owned cache; shared caches may belong to another active image. */
35
+ /** Compatibility option; invocation ownership now selects cache retention. */
36
36
  prune?: boolean;
37
37
  }
38
38
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"package-packs.d.ts","sourceRoot":"","sources":["../../src/cli/package-packs.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAK/F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAY5D,MAAM,WAAW,aAAa;IAC5B,+DAA+D;IAC/D,GAAG,EAAE,MAAM,CAAC;IACZ,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC;CACtD;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,uEAAuE;IACvE,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,wEAAwE;IACxE,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,+EAA+E;IAC/E,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC;IAC7C,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,oEAAoE;IACpE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mHAAmH;IACnH,KAAK,CAAC,EAAE,aAAa,CAAC,MAAM,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpE,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8FAA8F;IAC9F,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CA2DhK;AAED,qFAAqF;AACrF,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED,8FAA8F;AAC9F,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEjE;AAED,qEAAqE;AACrE,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD;AAuDD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAarD;AAoED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEzD"}
1
+ {"version":3,"file":"package-packs.d.ts","sourceRoot":"","sources":["../../src/cli/package-packs.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAK/F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAQ5D,MAAM,WAAW,aAAa;IAC5B,+DAA+D;IAC/D,GAAG,EAAE,MAAM,CAAC;IACZ,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC;CACtD;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,uEAAuE;IACvE,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,wEAAwE;IACxE,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,+EAA+E;IAC/E,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC;IAC7C,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,oEAAoE;IACpE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mHAAmH;IACnH,KAAK,CAAC,EAAE,aAAa,CAAC,MAAM,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpE,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8EAA8E;IAC9E,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CA0DhK;AAED,qFAAqF;AACrF,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED,8FAA8F;AAC9F,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEjE;AAED,qEAAqE;AACrE,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEnD;AAiBD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAarD;AAoED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEzD"}