@kumwe/studio-core 0.1.0-alpha.10

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 (104) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +86 -0
  3. package/THIRD_PARTY_NOTICES.md +9 -0
  4. package/dist/binding-projection.d.ts +47 -0
  5. package/dist/binding-projection.d.ts.map +1 -0
  6. package/dist/binding-projection.js +253 -0
  7. package/dist/binding-projection.js.map +1 -0
  8. package/dist/canonical.d.ts +20 -0
  9. package/dist/canonical.d.ts.map +1 -0
  10. package/dist/canonical.js +100 -0
  11. package/dist/canonical.js.map +1 -0
  12. package/dist/clone.d.ts +2 -0
  13. package/dist/clone.d.ts.map +1 -0
  14. package/dist/clone.js +4 -0
  15. package/dist/clone.js.map +1 -0
  16. package/dist/commands.d.ts +18 -0
  17. package/dist/commands.d.ts.map +1 -0
  18. package/dist/commands.js +799 -0
  19. package/dist/commands.js.map +1 -0
  20. package/dist/contributions.d.ts +93 -0
  21. package/dist/contributions.d.ts.map +1 -0
  22. package/dist/contributions.js +435 -0
  23. package/dist/contributions.js.map +1 -0
  24. package/dist/entry-commands.d.ts +3 -0
  25. package/dist/entry-commands.d.ts.map +1 -0
  26. package/dist/entry-commands.js +36 -0
  27. package/dist/entry-commands.js.map +1 -0
  28. package/dist/extension-sdk.d.ts +51 -0
  29. package/dist/extension-sdk.d.ts.map +1 -0
  30. package/dist/extension-sdk.js +260 -0
  31. package/dist/extension-sdk.js.map +1 -0
  32. package/dist/history.d.ts +22 -0
  33. package/dist/history.d.ts.map +1 -0
  34. package/dist/history.js +81 -0
  35. package/dist/history.js.map +1 -0
  36. package/dist/host-session.d.ts +74 -0
  37. package/dist/host-session.d.ts.map +1 -0
  38. package/dist/host-session.js +713 -0
  39. package/dist/host-session.js.map +1 -0
  40. package/dist/index.d.ts +23 -0
  41. package/dist/index.d.ts.map +1 -0
  42. package/dist/index.js +23 -0
  43. package/dist/index.js.map +1 -0
  44. package/dist/layout.d.ts +66 -0
  45. package/dist/layout.d.ts.map +1 -0
  46. package/dist/layout.js +240 -0
  47. package/dist/layout.js.map +1 -0
  48. package/dist/migrations.d.ts +47 -0
  49. package/dist/migrations.d.ts.map +1 -0
  50. package/dist/migrations.js +83 -0
  51. package/dist/migrations.js.map +1 -0
  52. package/dist/model-commands.d.ts +3 -0
  53. package/dist/model-commands.d.ts.map +1 -0
  54. package/dist/model-commands.js +21 -0
  55. package/dist/model-commands.js.map +1 -0
  56. package/dist/modes.d.ts +47 -0
  57. package/dist/modes.d.ts.map +1 -0
  58. package/dist/modes.js +280 -0
  59. package/dist/modes.js.map +1 -0
  60. package/dist/negotiation.d.ts +23 -0
  61. package/dist/negotiation.d.ts.map +1 -0
  62. package/dist/negotiation.js +65 -0
  63. package/dist/negotiation.js.map +1 -0
  64. package/dist/production-values.d.ts +12 -0
  65. package/dist/production-values.d.ts.map +1 -0
  66. package/dist/production-values.js +224 -0
  67. package/dist/production-values.js.map +1 -0
  68. package/dist/production.d.ts +86 -0
  69. package/dist/production.d.ts.map +1 -0
  70. package/dist/production.js +811 -0
  71. package/dist/production.js.map +1 -0
  72. package/dist/profile-validator.d.ts +47 -0
  73. package/dist/profile-validator.d.ts.map +1 -0
  74. package/dist/profile-validator.js +887 -0
  75. package/dist/profile-validator.js.map +1 -0
  76. package/dist/recipes.d.ts +15 -0
  77. package/dist/recipes.d.ts.map +1 -0
  78. package/dist/recipes.js +34 -0
  79. package/dist/recipes.js.map +1 -0
  80. package/dist/registry.d.ts +17 -0
  81. package/dist/registry.d.ts.map +1 -0
  82. package/dist/registry.js +56 -0
  83. package/dist/registry.js.map +1 -0
  84. package/dist/schema-profile.d.ts +27 -0
  85. package/dist/schema-profile.d.ts.map +1 -0
  86. package/dist/schema-profile.js +1015 -0
  87. package/dist/schema-profile.js.map +1 -0
  88. package/dist/semver.d.ts +20 -0
  89. package/dist/semver.d.ts.map +1 -0
  90. package/dist/semver.js +128 -0
  91. package/dist/semver.js.map +1 -0
  92. package/dist/session.d.ts +73 -0
  93. package/dist/session.d.ts.map +1 -0
  94. package/dist/session.js +191 -0
  95. package/dist/session.js.map +1 -0
  96. package/dist/url-policy.d.ts +45 -0
  97. package/dist/url-policy.d.ts.map +1 -0
  98. package/dist/url-policy.js +248 -0
  99. package/dist/url-policy.js.map +1 -0
  100. package/dist/validation.d.ts +13 -0
  101. package/dist/validation.d.ts.map +1 -0
  102. package/dist/validation.js +444 -0
  103. package/dist/validation.js.map +1 -0
  104. package/package.json +41 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host-session.js","sourceRoot":"","sources":["../src/host-session.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,uBAAuB,EACvB,+CAA+C,EAC/C,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,GAoBlB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAoC,MAAM,kBAAkB,CAAC;AAC3F,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAgC,MAAM,wBAAwB,CAAC;AAC5F,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,MAAM,aAAa,GAAkB,sBAAsB,CAAC;AAC5D,MAAM,UAAU,GAAkB,mBAAmB,CAAC;AACtD,MAAM,aAAa,GAAkB,sBAAsB,CAAC;AAC5D,MAAM,aAAa,GAAkB,sBAAsB,CAAC;AAC5D,MAAM,aAAa,GAAkB,gCAAgC,CAAC;AACtE,MAAM,aAAa,GAAkB,gCAAgC,CAAC;AACtE,MAAM,SAAS,GAAkB,4BAA4B,CAAC;AAC9D,MAAM,UAAU,GAAkB,6BAA6B,CAAC;AAChE,MAAM,cAAc,GAAkB,iCAAiC,CAAC;AACxE,MAAM,aAAa,GAAkB,gCAAgC,CAAC;AACtE,MAAM,gBAAgB,GAAkB,mCAAmC,CAAC;AAC5E,MAAM,eAAe,GAAkB,kCAAkC,CAAC;AAE1E,MAAM,SAAS,GAAG,iCAAiC,CAAC;AACpD,MAAM,cAAc,GAAG,uEAAuE,CAAC;AAC/F,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC;AAEjF,gFAAgF;AAChF,MAAM,CAAC,MAAM,6BAA6B,GAKrC,MAAM,CAAC,MAAM,CAAC;IACjB,mBAAmB,EAAE,GAAG;IACxB,YAAY,EAAE,GAAG;IACjB,mBAAmB,EAAE,GAAG;IACxB,YAAY,EAAE,CAAC;CAChB,CAAC,CAAC;AAEH,+EAA+E;AAC/E,8EAA8E;AAC9E,4CAA4C;AAC5C,MAAM,0BAA0B,GAA4B,oBAAoB,CAC9E,kBAAkB,EAClB,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,CAC5B,CAAC;AACF,MAAM,+BAA+B,GAA4B,oBAAoB,CACnF;IACE,IAAI,EAAE,iFAAiF;IACvF,OAAO,EAAE,8CAA8C;CACxD,EACD,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,EAAE,CAC5B,CAAC;AAgEF,8EAA8E;AAC9E,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IAC/B,IAAI,CAA6B;IACjC,WAAW,CAA8B;IAEzD,YACE,IAAgC,EAChC,OAAe,EACf,cAA2C,EAAE;QAE7C,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IACrD,CAAC;CACF;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAoB,EACpB,OAA2C;IAE3C,MAAM,aAAa,GAAG,kBAAkB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAChE,MAAM,aAAa,GAAG,sBAAsB,CAAC,aAAa,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IACnF,MAAM,WAAW,GAAG,qBAAqB,CAAC,aAAa,CAAC,gBAAgB,EAAE;QACxE,aAAa;QACb,aAAa,EAAE,CAAC,aAAa,CAAC;QAC9B,yBAAyB,EAAE,CAAC,aAAa,CAAC,eAAe,CAAC;KAC3D,CAAC,CAAC;IACH,IAAI,aAAa,CAAC,YAAY,KAAK,WAAW,EAAE,CAAC;QAC/C,WAAW,CAAC,YAAY,GAAG,WAAW,CAAC;IACzC,CAAC;IAED,wBAAwB,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;IACrD,MAAM,iBAAiB,GAAG,0BAA0B,CAAC,OAAO,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;IAC1F,MAAM,eAAe,GAAG,+BAA+B,CAAC,OAAO,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;IAC7F,MAAM,kBAAkB,GAAG,kCAAkC,CAC3D,OAAO,EACP,aAAa,EACb,WAAW,CACZ,CAAC;IACF,IAAI,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,UAAU,CAAC,EAAE,CAAC;QAC3E,MAAM,IAAI,sBAAsB,CAC9B,uBAAuB,EACvB,yEAAyE,EACzE,WAAW,CAAC,WAAW,CACxB,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC;IACpD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,sEAAsE;QACtE,wEAAwE;QACxE,kCAAkC;QAClC,MAAM,IAAI,sBAAsB,CAC9B,uBAAuB,EACvB,2EAA2E,EAC3E,WAAW,CAAC,WAAW,CACxB,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,0BAA0B,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACxE,MAAM,WAAW,GAAG,aAAa,CAAC,aAAa,EAAE,WAAW,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE;QACrF,WAAW,EAAE,aAAa;KAC3B,CAAC,CAAC;IACH,MAAM,MAAM,GAAY,MAAM,qBAAqB,CAAC,GAAG,EAAE,CACvD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAC9C,CAAC;IACF,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;QACjD,MAAM,UAAU,GAAG,gBAAgB,CACjC,iCAAiC,EACjC,4DAA4D,EAC5D,UAAU,EACV,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,EAAE,CAC7B,CAAC;QACF,MAAM,IAAI,sBAAsB,CAC9B,qBAAqB,EACrB,sEAAsE,EACtE,CAAC,UAAU,CAAC,CACb,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,wBAAwB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IACzE,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC;QAChC,QAAQ;QACR,qBAAqB,EAAE,aAAa,CAAC,MAAM,CAAC,iBAAiB;QAC7D,IAAI,EAAE,kBAAkB,CAAC,aAAa,CAAC;QACvC,iBAAiB,EAAE,aAAa,CAAC,iBAAiB;KACnD,CAAC,CAAC;IACH,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAErC,OAAO,IAAI,sBAAsB,CAC/B,OAAO,EACP,aAAa,EACb,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,OAAO,EACP,QAAQ,CAAC,QAAQ,CAClB,CAAC;AACJ,CAAC;AAED,MAAM,sBAAsB;IACV,WAAW,CAA8B;IACzC,WAAW,CAA8B;IACzC,MAAM,CAAsC;IAC5C,QAAQ,CAAwC;IAChD,SAAS,CAAyC;IAClD,OAAO,CAAgB;IAE9B,QAAQ,CAAc;IACtB,cAAc,CAAsB;IACpC,YAAY,CAA6B;IACzC,aAAa,GAAG,IAAI,GAAG,EAA8B,CAAC;IAC/D,SAAS,GAAG,KAAK,CAAC;IAClB,oBAAoB,CAA8B;IAClD,kBAAkB,CAA4B;IAC9C,SAAS,CAAW;IACpB,SAAS,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;IAE7C,YACE,OAAoB,EACpB,aAAkC,EAClC,WAAuC,EACvC,WAAwC,EACxC,iBAA0B,EAC1B,eAAwB,EACxB,kBAA2B,EAC3B,OAAsB,EACtB,QAAkB;QAElB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;QACpC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;QACjD,IAAI,CAAC,WAAW,GAAG,kBAAkB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC/D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,QAAQ,GAAG,iBAAiB;YAC/B,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;gBACZ,OAAO,EAAE,GAAkC,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE;gBACrE,IAAI,EAAE,GAA+C,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE;gBAC5E,KAAK,EAAE,CAAC,QAAoB,EAAiC,EAAE,CAC7D,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;aAChC,CAAC;YACJ,CAAC,CAAC,SAAS,CAAC;QACd,IAAI,CAAC,MAAM,GAAG,eAAe;YAC3B,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;gBACZ,GAAG,EAAE,CAAC,SAA4B,EAAiD,EAAE,CACnF,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;gBAC3B,IAAI,EAAE,GAAoD,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE;aAChF,CAAC;YACJ,CAAC,CAAC,SAAS,CAAC;QACd,IAAI,CAAC,SAAS,GAAG,kBAAkB;YACjC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;gBACZ,MAAM,EAAE,CAAC,KAA0B,EAA+C,EAAE,CAClF,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC;aAC/B,CAAC;YACJ,CAAC,CAAC,SAAS,CAAC;IAChB,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,oBAAoB,KAAK,SAAS,CAAC;IACjD,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAEM,OAAO;QACZ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QAC3B,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;IAC9B,CAAC;IAEM,IAAI;QACT,IAAI,CAAC;YACH,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACtC,MAAM,IAAI,sBAAsB,CAC9B,mBAAmB,EACnB,8CAA8C,CAC/C,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;YACvC,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,QAAgC,CAAC,CAAC;YACjF,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC;YACzC,IAAI,QAAQ,EAAE,mBAAmB,KAAK,mBAAmB,EAAE,CAAC;gBAC1D,OAAO,QAAQ,CAAC,OAAO,CAAC;YAC1B,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACxB,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACpE,CAAC;YAED,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;YAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;YACxF,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,IAAI,CAC7B,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,SAAS,CAChB,CAAC;YACF,IAAI,CAAC,kBAAkB,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;YACtE,MAAM,KAAK,GAAG,GAAS,EAAE;gBACvB,IAAI,IAAI,CAAC,kBAAkB,EAAE,OAAO,KAAK,SAAS,EAAE,CAAC;oBACnD,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;gBACtC,CAAC;YACH,CAAC,CAAC;YACF,KAAK,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAClC,OAAO,SAAS,CAAC;QACnB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,OAAO,CAAC,MAAM,CACnB,KAAK,YAAY,KAAK;gBACpB,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAC5E,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACxC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,sBAAsB,CAC1B,sCAAsC,EACtC,iDAAiD,CAClD,CAAC;QACJ,CAAC;QACD,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QACnE,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;QACxE,MAAM,OAAO,GAAG,aAAa,CAC3B,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAC7C,EAAE,cAAc,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAClD,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QACnE,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;QACtD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACxC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,sBAAsB,CAC1B,sCAAsC,EACtC,iDAAiD,CAClD,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE;YAC7F,WAAW,EAAE,aAAa;SAC3B,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAChE,OAAO;YACL,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;YACvE,KAAK,EAAE,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC;SACvE,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,SAA4B;QAC1C,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,sBAAsB,CAC9B,yBAAyB,EACzB,6EAA6E,CAC9E,CAAC;QACJ,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QACtC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,sBAAsB,CAC1B,sCAAsC,EACtC,8CAA8C,CAC/C,CAAC;QACJ,CAAC;QACD,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACxD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE;YACzF,WAAW,EAAE,SAAS;SACvB,CAAC,CAAC;QACH,MAAM,MAAM,GAAY,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC,CAAC;QAC5F,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,CAAC,EAAE,CAAC;YACjD,MAAM,sBAAsB,CAC1B,qCAAqC,EACrC,4EAA4E,CAC7E,CAAC;QACJ,CAAC;QACD,OAAO;YACL,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;YACvE,KAAK,EAAE,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC;SACxC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW;QACf,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QACtC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,sBAAsB,CAC1B,sCAAsC,EACtC,8CAA8C,CAC/C,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;YAC1F,WAAW,EAAE,UAAU;SACxB,CAAC,CAAC;QACH,MAAM,MAAM,GAAY,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1E,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/B,MAAM,sBAAsB,CAC1B,qCAAqC,EACrC,oEAAoE,CACrE,CAAC;QACJ,CAAC;QACD,OAAO;YACL,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;YACvE,KAAK,EAAE,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC;SACtE,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,QAA2B,EAC3B,YAAoB;QAEpB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC;QACxC,MAAM,QAAQ,GAAsB,EAAE,GAAG,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC;QAChF,MAAM,WAAW,GAAG,mBAAmB,CACrC,QAAgC,EAChC,IAAI,CAAC,cAAc,EACnB,gBAAgB,CACjB,CAAC;QACF,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;QACrE,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE;YAC7F,gBAAgB;YAChB,cAAc;YACd,WAAW,EAAE,aAAa;SAC3B,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QACxF,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1D,MAAM,sBAAsB,CAC1B,uCAAuC,EACvC,yDAAyD,CAC1D,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACtD,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;QACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,KAA0B;QAC/C,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,sBAAsB,CAC9B,wBAAwB,EACxB,+FAA+F,CAChG,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACxC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,sBAAsB,CAC1B,sCAAsC,EACtC,iDAAiD,CAClD,CAAC;QACJ,CAAC;QACD,MAAM,aAAa,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,aAAa,CAC3B,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,eAAe,CAAC,EAC5C,EAAE,WAAW,EAAE,eAAe,EAAE,CACjC,CAAC;QACF,MAAM,MAAM,GAAY,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC;QAC1F,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,CAAC;YACnD,MAAM,sBAAsB,CAC1B,wCAAwC,EACxC,0FAA0F,CAC3F,CAAC;QACJ,CAAC;QACD,OAAO;YACL,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;YACvE,KAAK,EAAE,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC;SACxC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,QAAoB;QACvC,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACxC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,sBAAsB,CAC1B,sCAAsC,EACtC,iDAAiD,CAClD,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAC3C,MAAM,WAAW,GAAG,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QACpE,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;QACtE,MAAM,OAAO,GAAG,aAAa,CAC3B,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,cAAc,CAAC,EAC3C,EAAE,cAAc,EAAE,WAAW,EAAE,cAAc,EAAE,CAChD,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;QACxE,IAAI,CAAC,iBAAiB,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;QACpD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,aAAa;QACX,IAAI,IAAI,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;YAC5C,MAAM,IAAI,CAAC,oBAAoB,CAAC;QAClC,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,MAAM,IAAI,sBAAsB,CAAC,UAAU,EAAE,sCAAsC,CAAC,CAAC;QACvF,CAAC;IACH,CAAC;IAED,iBAAiB,CAAC,WAA0B,EAAE,WAAmB;QAC/D,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,WAAW,KAAK,WAAW,EAAE,CAAC;YACrE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAO,CAAS,SAAgC;QACpD,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC;YACH,OAAO,MAAM,SAAS,EAAE,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAC9C,IAAI,wBAAwB,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtC,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC;YACtC,CAAC;YACD,MAAM,OAAO,CAAC;QAChB,CAAC;IACH,CAAC;IAED,YAAY,CAAC,WAA0B,EAAE,WAAmB;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,KAAK,EAAE,WAAW,KAAK,WAAW,EAAE,CAAC;YACvC,OAAO,KAAK,CAAC,cAAc,CAAC;QAC9B,CAAC;QACD,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAClF,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,CAAC,CAAC;QACrE,OAAO,cAAc,CAAC;IACxB,CAAC;CACF;AAkBD,MAAM,0BAA0B;IACrB,UAAU,CAAuC;IACjD,mBAAmB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAChD,WAAW,GAAG,IAAI,GAAG,EAAY,CAAC;IAE3C,YAAmB,SAA+C;QAChE,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC9B,CAAC;IAEM,OAAO;QACZ,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;QACjC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAEM,cAAc,CAAC,WAA0B,EAAE,WAAmB;QACnE,MAAM,KAAK,GAAG,kBAAkB,CAC9B,CAAC,oBAAoB,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,oBAAoB,CAAC,EAC9E,WAAW,EACX,aAAa,CACd,CAAC;QACF,MAAM,KAAK,GAAG,GAAG,WAAW,SAAS,KAAK,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;YACjD,MAAM,IAAI,sBAAsB,CAC9B,oBAAoB,EACpB,uEAAuE,CACxE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QACjD,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,SAAS,CAAC,WAA0B;QACzC,MAAM,KAAK,GAAG,kBAAkB,CAC9B,CAAC,oBAAoB,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,oBAAoB,CAAC,EACzE,WAAW,EACX,SAAS,CACV,CAAC;QACF,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,sBAAsB,CAC9B,oBAAoB,EACpB,6EAA6E,CAC9E,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC5B,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AAED,SAAS,kBAAkB,CACzB,OAAiD,EACjD,WAA0B,EAC1B,OAAkC;IAElC,IAAI,KAAc,CAAC;IACnB,IAAI,CAAC;QACH,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,sBAAsB,CAC9B,oBAAoB,EACpB,OAAO,OAAO,+CAA+C,CAC9D,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,sBAAsB,CAC9B,oBAAoB,EACpB,OAAO,OAAO,yDAAyD,CACxE,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,0BAA0B,CACjC,OAAoB,EACpB,aAAkC,EAClC,WAAwC;IAExC,MAAM,QAAQ,GAAG,aAAa,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,aAAa,CAAC,CAAC;IAClG,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,kBAAkB,GAAoB,CAAC,aAAa,CAAC,CAAC;QAC5D,IAAI,aAAa,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;YAC9C,kBAAkB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACzC,CAAC;QACD,KAAK,MAAM,WAAW,IAAI,kBAAkB,EAAE,CAAC;YAC7C,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC/C,WAAW,CAAC,WAAW,CAAC,IAAI,CAC1B,gBAAgB,CACd,wCAAwC,EACxC,4CAA4C,WAAW,aAAa,EACpE,UAAU,EACV,EAAE,WAAW,EAAE,CAChB,CACF,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,QAAQ,GAAG,aAAa,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,aAAa,CAAC,CAAC;IAClG,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,SAAS,GAAG,IAAI,CAAC;IACrB,KAAK,MAAM,WAAW,IAAI,CAAC,cAAc,EAAE,aAAa,EAAE,gBAAgB,CAAC,EAAE,CAAC;QAC5E,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/C,SAAS,GAAG,KAAK,CAAC;YAClB,WAAW,CAAC,WAAW,CAAC,IAAI,CAC1B,gBAAgB,CACd,wCAAwC,EACxC,oCAAoC,WAAW,yBAAyB,EACxE,aAAa,EACb,EAAE,WAAW,EAAE,CAChB,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACnC,SAAS,GAAG,KAAK,CAAC;QAClB,WAAW,CAAC,WAAW,CAAC,IAAI,CAC1B,gBAAgB,CACd,sCAAsC,EACtC,oFAAoF,EACpF,aAAa,EACb,EAAE,IAAI,EAAE,aAAa,EAAE,CACxB,CACF,CAAC;IACJ,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,+BAA+B,CACtC,OAAoB,EACpB,aAAkC,EAClC,WAAwC;IAExC,MAAM,KAAK,GAAG,aAAa,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,UAAU,CAAC,CAAC;IAC5F,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,SAAS,GAAG,IAAI,CAAC;IACrB,KAAK,MAAM,WAAW,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,CAAC;QAClD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAC5C,SAAS,GAAG,KAAK,CAAC;YAClB,WAAW,CAAC,WAAW,CAAC,IAAI,CAC1B,gBAAgB,CACd,wCAAwC,EACxC,wBAAwB,WAAW,8BAA8B,EACjE,aAAa,EACb,EAAE,WAAW,EAAE,CAChB,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAChC,SAAS,GAAG,KAAK,CAAC;QAClB,WAAW,CAAC,WAAW,CAAC,IAAI,CAC1B,gBAAgB,CACd,sCAAsC,EACtC,yFAAyF,EACzF,aAAa,EACb,EAAE,IAAI,EAAE,UAAU,EAAE,CACrB,CACF,CAAC;IACJ,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,kCAAkC,CACzC,OAAoB,EACpB,aAAkC,EAClC,WAAwC;IAExC,MAAM,QAAQ,GAAG,aAAa,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,aAAa,CAAC,CAAC;IAClG,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,SAAS,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QACnD,SAAS,GAAG,KAAK,CAAC;QAClB,WAAW,CAAC,WAAW,CAAC,IAAI,CAC1B,gBAAgB,CACd,wCAAwC,EACxC,2BAA2B,eAAe,mCAAmC,EAC7E,aAAa,EACb,EAAE,WAAW,EAAE,eAAe,EAAE,CACjC,CACF,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACnC,SAAS,GAAG,KAAK,CAAC;QAClB,WAAW,CAAC,WAAW,CAAC,IAAI,CAC1B,gBAAgB,CACd,sCAAsC,EACtC,8FAA8F,EAC9F,aAAa,EACb,EAAE,IAAI,EAAE,aAAa,EAAE,CACxB,CACF,CAAC;IACJ,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,wBAAwB,CAC/B,aAAkC,EAClC,WAAwC;IAExC,IAAI,aAAa,CAAC,SAAS,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACpD,WAAW,CAAC,WAAW,CAAC,IAAI,CAC1B,gBAAgB,CACd,wCAAwC,EACxC,qEAAqE,EACrE,UAAU,CACX,CACF,CAAC;IACJ,CAAC;IACD,IAAI,aAAa,CAAC,IAAI,KAAK,WAAW,IAAI,aAAa,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;QAC/E,WAAW,CAAC,WAAW,CAAC,IAAI,CAC1B,gBAAgB,CACd,yCAAyC,EACzC,uEAAuE,EACvE,UAAU,EACV,EAAE,SAAS,EAAE,aAAa,CAAC,SAAS,EAAE,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,CACjE,CACF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,aAAkC,EAClC,aAAmD;IAEnD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAgB,aAAa,IAAI,EAAE,CAAC,CAAC;IAC1D,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC5B,IAAI,aAAa,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;QAC3C,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC3B,CAAC;IACD,IAAI,aAAa,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC;QAClF,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACxB,CAAC;IACD,IAAI,aAAa,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,aAAa,CAAC,EAAE,CAAC;QACrF,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC;AACpB,CAAC;AAED,SAAS,aAAa,CACpB,aAAkC,EAClC,SAAmB,EACnB,OAAuB;IAEvB,OAAO;QACL,GAAG,CAAC,OAAO,CAAC,gBAAgB,KAAK,SAAS;YACxC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC;QACnD,GAAG,CAAC,OAAO,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC;QAC3F,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,QAAQ;QACrC,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,eAAe,EAAE,aAAa,CAAC,eAAe;QAC9C,SAAS;QACT,kBAAkB,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG;QACrD,iBAAiB,EAAE,aAAa,CAAC,iBAAiB;KACnD,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CACvB,IAAmB,EACnB,cAAsB,EACtB,QAAsC,EACtC,UAA0C;IAE1C,OAAO;QACL,IAAI;QACJ,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,IAAI,EAAE;QACtC,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC;QACnD,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAC/B,QAA2B,EAC3B,cAAoC;IAEpC,MAAM,QAAQ,GAAG,cAAc,IAAI,QAAQ,CAAC,QAAQ,CAAC;IACrD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,sBAAsB,CAC9B,qBAAqB,EACrB,gEAAgE,EAChE;YACE,gBAAgB,CACd,uCAAuC,EACvC,gEAAgE,EAChE,UAAU,CACX;SACF,CACF,CAAC;IACJ,CAAC;IACD,OAAO,kBAAkB,CAAC,EAAE,GAAG,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,qBAAqB,CAC5B,KAAc,EACd,UAAoB;IAEpB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,KAAK,CAAC,EAAE,CAAC;QAC/F,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,QAAQ,GAAY,KAAK,CAAC,KAAK,CAAC;IACtC,OAAO,CACL,OAAO,QAAQ,KAAK,QAAQ;QAC5B,QAAQ,KAAK,IAAI;QACjB,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;QACxB,MAAM,IAAI,QAAQ;QAClB,QAAQ,CAAC,IAAI,KAAK,WAAW;QAC7B,IAAI,IAAI,QAAQ;QAChB,QAAQ,CAAC,EAAE,KAAK,UAAU,CAC3B,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CACvB,KAAc,EACd,SAA4B;IAE5B,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QACvE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAC5D,OAAO,CACL,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE;QAC/B,KAAK,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,OAAO;QACzC,CAAC,gBAAgB,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,KAAK,gBAAgB,CAAC;QAC7E,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAC1E,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9D,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAChC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC;YACnC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,UAAU,GAAG,GAAG,KAAK,CAAC,EAAE,SAAS,KAAK,CAAC,OAAO,SAAS,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC9E,IAAI,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAChC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAc;IAC3C,IACE,CAAC,aAAa,CAAC,KAAK,CAAC;QACrB,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,EACrE,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CACL,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ;QAC/B,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC;QACjC,KAAK,CAAC,KAAK,IAAI,6BAA6B,CAAC,YAAY;QACzD,KAAK,CAAC,KAAK,IAAI,6BAA6B,CAAC,YAAY;QACzD,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC;QACnC,uBAAuB,CACrB,KAAK,CAAC,MAAM,EACZ,6BAA6B,CAAC,mBAAmB,EACjD,KAAK,CACN;QACD,uBAAuB,CAAC,KAAK,CAAC,MAAM,EAAE,6BAA6B,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAC/F,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAC7B,KAAc,EACd,KAA0B;IAE1B,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;QAC5E,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,oBAAoB,CAC3B,KAAc,EACd,KAA0B;IAE1B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;QAC7E,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IACE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;QAC3B,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK;QAChC,CAAC,uBAAuB,CACtB,KAAK,CAAC,UAAU,EAChB,6BAA6B,CAAC,mBAAmB,EACjD,KAAK,CACN,EACD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAY,CAAC;IACxC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAC/B,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC/E,OAAO,KAAK,CAAC;QACf,CAAC;QACD,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,mBAAmB,CAC1B,KAAc,EACd,YAA2B;IAE3B,OAAO,CACL,aAAa,CAAC,KAAK,CAAC;QACpB,YAAY,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;QACpD,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,KAAK,CAAC,YAAY,KAAK,YAAY;QACnC,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,CAChC,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,OAAO,CACL,aAAa,CAAC,KAAK,CAAC;QACpB,YAAY,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC;QAChD,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC;QAC1B,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS;YACjC,CAAC,OAAO,KAAK,CAAC,cAAc,KAAK,QAAQ;gBACvC,KAAK,CAAC,cAAc,CAAC,MAAM,IAAI,CAAC;gBAChC,KAAK,CAAC,cAAc,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CACzC,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,IAAI,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACxF,CAAC;AAED,SAAS,uBAAuB,CAC9B,KAAc,EACd,aAAqB,EACrB,UAAmB;IAEnB,OAAO,CACL,KAAK,KAAK,SAAS;QACnB,CAAC,OAAO,KAAK,KAAK,QAAQ;YACxB,KAAK,CAAC,MAAM,IAAI,aAAa;YAC7B,CAAC,UAAU,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CACrC,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,SAAS,GAAY,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IACxD,OAAO,SAAS,KAAK,MAAM,CAAC,SAAS,IAAI,SAAS,KAAK,IAAI,CAAC;AAC9D,CAAC;AAED,SAAS,YAAY,CACnB,KAA8B,EAC9B,QAA2B,EAC3B,WAA8B,EAAE;IAEhC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC;IACpD,OAAO,CACL,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAClD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CACpD,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,KAAK,CAAC,EAAE,CAAC;QAC/F,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,CAAC,CAAC,UAAU,IAAI,KAAK,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAc;IAC5C,OAAO,0BAA0B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc;IACzC,OAAO,+BAA+B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,uBAAuB,CAAC,SAA4B;IAC3D,MAAM,SAAS,GAAG,SAAuD,CAAC;IAC1E,OAAO,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AACzE,CAAC;AAED,SAAS,uBAAuB,CAAC,IAA0B,EAAE,KAA2B;IACtF,OAAO,CACL,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC;QACnC,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;QAC7C,gBAAgB,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAChD,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAY,EAAE,KAAa;IACnD,OAAO,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,mBAAmB,CAC1B,QAAmB,EACnB,aAAkC,EAClC,gBAA2B;IAE3B,OAAO,kBAAkB,CAAC;QACxB,QAAQ;QACR,OAAO,EAAE;YACP,GAAG,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC;YAC/D,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,QAAQ;YACrC,eAAe,EAAE,aAAa,CAAC,eAAe;SAC/C;KACF,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAS,SAAgC;IAC3E,IAAI,CAAC;QACH,OAAO,MAAM,SAAS,EAAE,CAAC;IAC3B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,sBAAsB,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAc;IAC5C,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,sBAAsB,CAC3B,qCAAqC,EACrC,gEAAgE,CACjE,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAmB,EAAE,cAAsB;IACzE,MAAM,KAAK,GAAkB;QAC3B,QAAQ,EAAE,UAAU;QACpB,eAAe,EAAE,uBAAuB;QACxC,WAAW,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;QAC9D,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,IAAI,EAAE;QACtC,SAAS,EAAE,KAAK;KACjB,CAAC;IACF,OAAO,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,wBAAwB,CAAC,OAAwB;IACxD,OAAO,CACL,OAAO,CAAC,KAAK,CAAC,QAAQ,KAAK,iBAAiB;QAC5C,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,CAC9B,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,+CAA+C,CAC1E;YACC,KAAK,CAAC,CACT,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAkC;IAC1D,OAAO;QACL,cAAc,EAAE,CAAC,GAAG,KAAK,CAAC,cAAc,CAAC;QACzC,WAAW,EAAE,kBAAkB,CAAC,KAAK,CAAC,WAAW,CAAC;QAClD,oBAAoB,EAAE,CAAC,GAAG,KAAK,CAAC,oBAAoB,CAAC;QACrD,oBAAoB,EAAE,CAAC,GAAG,KAAK,CAAC,oBAAoB,CAAC;QACrD,GAAG,CAAC,KAAK,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC;QAC1F,YAAY,EAAE,KAAK,CAAC,YAAY;KACjC,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,CAAC,MAAM,IAAI,CAAC;QACjB,KAAK,CAAC,MAAM,IAAI,GAAG;QACnB,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC;QACjC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CACtB,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,GAAG,CAAC;AAC/E,CAAC"}
@@ -0,0 +1,23 @@
1
+ export { canonicalStringify, canonicalUtf8Bytes, type CanonicalSerializationOptions, } from './canonical.js';
2
+ export { projectBlueprintFieldBindings, type BlueprintFieldBindingProjection, type FieldBindingCandidate, type FieldBindingPortProjection, type FieldBindingProjectionStatus, type NodeFieldBindingProjection, } from './binding-projection.js';
3
+ export { applyCommand, invertCommand, StudioCommandError, type InverseCommandOptions, type StudioCommandErrorCode, } from './commands.js';
4
+ export { ContributionRuntime, RegistryGeneration, StudioContributionError, type ExtensionContributions, type ExtensionInventory, type GenerationOptions, type StudioCompositionContribution, type StudioCompositionContributionKind, type UnresolvedNodeReport, } from './contributions.js';
5
+ export { activateStudioPlugin, defineStudioPlugin, unresolvedDeclaredContributions, type StudioPluginDefinition, } from './extension-sdk.js';
6
+ export { applyEntryCommand } from './entry-commands.js';
7
+ export { StudioHistory } from './history.js';
8
+ export { CORE_LAYOUT_BLOCK_TYPES, CORE_LAYOUT_THEME_CONTROLS, CoreLayoutError, coreLayoutInitialProperties, createCoreLayoutBlockDefinitions, isCoreLayoutBlockType, resolveCoreLayoutIntent, type CoreLayoutAlignment, type CoreLayoutBlockDefinitionOptions, type CoreLayoutBlockType, type CoreLayoutCollapse, type CoreLayoutDirection, type CoreLayoutErrorCode, type CoreLayoutIntent, type CoreLayoutPropertyResolution, type CoreLayoutSpacing, type CoreLayoutVisibility, } from './layout.js';
9
+ export { CORE_PRODUCTION_BLOCK_TYPES, CORE_PRODUCTION_CONTROL_IDS, CORE_PRODUCTION_PATTERN_IDS, coreProductionInitialProperties, createCoreProductionBlockDefinitions, createCoreProductionPatterns, isCoreProductionBlockType, type CoreProductionBlockTypeMap, type CoreProductionControlIdMap, type CoreProductionBlockType, } from './production.js';
10
+ export { parseStudioChartSpec, parseStudioDrawingDocument, parseStudioMoneyValue, parseStudioPresentationIntent, parseStudioTableDocument, } from './production-values.js';
11
+ export { openStudioSession, STUDIO_RESOURCE_SEARCH_LIMITS, StudioHostSessionError, type OpenStudioSessionOptions, type StudioHostSessionErrorCode, type StudioHostSessionHandle, type StudioHostSessionIdentifierFactories, type StudioHostSessionModels, type StudioHostSessionRecovery, type StudioHostSessionResources, } from './host-session.js';
12
+ export { applyModelCommand } from './model-commands.js';
13
+ export { permittedCommandTypes, resolveSessionMode, STUDIO_SESSION_MODES, type StudioCommandType, } from './modes.js';
14
+ export { RECIPE_MARKER_PROPERTY, recipeSelectionOperations } from './recipes.js';
15
+ export { MigrationRunner, StudioMigrationError, type MigratableArtifactKind, type MigratableDocument, type MigrationApplyOptions, type MigrationApplyResult, type MigrationDescriptor, } from './migrations.js';
16
+ export { negotiateCapabilities, type CapabilityNegotiationOptions, type CapabilityNegotiationResult, } from './negotiation.js';
17
+ export { compareSemanticVersions, normalizeVersionRange, parseSemanticVersion, satisfiesVersionRange, type ParsedSemanticVersion, } from './semver.js';
18
+ export { StudioSession, type StudioSessionOptions } from './session.js';
19
+ export { BlockRegistry, type BlockRegistrationOptions, type ResolvedBlockRegistration, } from './registry.js';
20
+ export { assertStudioPropertySchema, compileStudioPropertySchema, STUDIO_SCHEMA_PROFILE_ERROR_CODES, STUDIO_SCHEMA_PROFILE_LIMITS, StudioSchemaProfileError, type StudioPropertySchemaValidator, type StudioSchemaProfileErrorCode, } from './schema-profile.js';
21
+ export { STUDIO_DEFAULT_URL_POLICY, validateExternalUrl, type ExternalUrlPolicy, type ExternalUrlRejectionReason, type ExternalUrlValidationResult, } from './url-policy.js';
22
+ export { validateBlueprint, type BlueprintValidationOptions, type BlueprintValidationResult, } from './validation.js';
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js ADDED
@@ -0,0 +1,23 @@
1
+ export { canonicalStringify, canonicalUtf8Bytes, } from './canonical.js';
2
+ export { projectBlueprintFieldBindings, } from './binding-projection.js';
3
+ export { applyCommand, invertCommand, StudioCommandError, } from './commands.js';
4
+ export { ContributionRuntime, RegistryGeneration, StudioContributionError, } from './contributions.js';
5
+ export { activateStudioPlugin, defineStudioPlugin, unresolvedDeclaredContributions, } from './extension-sdk.js';
6
+ export { applyEntryCommand } from './entry-commands.js';
7
+ export { StudioHistory } from './history.js';
8
+ export { CORE_LAYOUT_BLOCK_TYPES, CORE_LAYOUT_THEME_CONTROLS, CoreLayoutError, coreLayoutInitialProperties, createCoreLayoutBlockDefinitions, isCoreLayoutBlockType, resolveCoreLayoutIntent, } from './layout.js';
9
+ export { CORE_PRODUCTION_BLOCK_TYPES, CORE_PRODUCTION_CONTROL_IDS, CORE_PRODUCTION_PATTERN_IDS, coreProductionInitialProperties, createCoreProductionBlockDefinitions, createCoreProductionPatterns, isCoreProductionBlockType, } from './production.js';
10
+ export { parseStudioChartSpec, parseStudioDrawingDocument, parseStudioMoneyValue, parseStudioPresentationIntent, parseStudioTableDocument, } from './production-values.js';
11
+ export { openStudioSession, STUDIO_RESOURCE_SEARCH_LIMITS, StudioHostSessionError, } from './host-session.js';
12
+ export { applyModelCommand } from './model-commands.js';
13
+ export { permittedCommandTypes, resolveSessionMode, STUDIO_SESSION_MODES, } from './modes.js';
14
+ export { RECIPE_MARKER_PROPERTY, recipeSelectionOperations } from './recipes.js';
15
+ export { MigrationRunner, StudioMigrationError, } from './migrations.js';
16
+ export { negotiateCapabilities, } from './negotiation.js';
17
+ export { compareSemanticVersions, normalizeVersionRange, parseSemanticVersion, satisfiesVersionRange, } from './semver.js';
18
+ export { StudioSession } from './session.js';
19
+ export { BlockRegistry, } from './registry.js';
20
+ export { assertStudioPropertySchema, compileStudioPropertySchema, STUDIO_SCHEMA_PROFILE_ERROR_CODES, STUDIO_SCHEMA_PROFILE_LIMITS, StudioSchemaProfileError, } from './schema-profile.js';
21
+ export { STUDIO_DEFAULT_URL_POLICY, validateExternalUrl, } from './url-policy.js';
22
+ export { validateBlueprint, } from './validation.js';
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,kBAAkB,GAEnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,6BAA6B,GAM9B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,YAAY,EACZ,aAAa,EACb,kBAAkB,GAGnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,uBAAuB,GAOxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,oBAAoB,EACpB,kBAAkB,EAClB,+BAA+B,GAEhC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,eAAe,EACf,2BAA2B,EAC3B,gCAAgC,EAChC,qBAAqB,EACrB,uBAAuB,GAWxB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,2BAA2B,EAC3B,2BAA2B,EAC3B,2BAA2B,EAC3B,+BAA+B,EAC/B,oCAAoC,EACpC,4BAA4B,EAC5B,yBAAyB,GAI1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,qBAAqB,EACrB,6BAA6B,EAC7B,wBAAwB,GACzB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,iBAAiB,EACjB,6BAA6B,EAC7B,sBAAsB,GAQvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,GAErB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACjF,OAAO,EACL,eAAe,EACf,oBAAoB,GAMrB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,qBAAqB,GAGtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,GAEtB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,aAAa,EAA6B,MAAM,cAAc,CAAC;AACxE,OAAO,EACL,aAAa,GAGd,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,0BAA0B,EAC1B,2BAA2B,EAC3B,iCAAiC,EACjC,4BAA4B,EAC5B,wBAAwB,GAGzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,yBAAyB,EACzB,mBAAmB,GAIpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,iBAAiB,GAGlB,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,66 @@
1
+ import { type BlockDefinition, type BlockType, type BlueprintNode, type JsonObject, type LocalName, type RendererRequirement, type ThemeDocument, type ThemeViewport } from '@kumwe/studio-protocol';
2
+ /** The portable layout block family shipped by Studio. */
3
+ export declare const CORE_LAYOUT_BLOCK_TYPES: Readonly<{
4
+ columns: 'studio.core/columns';
5
+ grid: 'studio.core/grid';
6
+ section: 'studio.core/section';
7
+ stack: 'studio.core/stack';
8
+ }>;
9
+ export type CoreLayoutBlockType = (typeof CORE_LAYOUT_BLOCK_TYPES)[keyof typeof CORE_LAYOUT_BLOCK_TYPES];
10
+ /** Canonical theme-control identifiers understood by every core layout block. */
11
+ export declare const CORE_LAYOUT_THEME_CONTROLS: Readonly<{
12
+ alignment: 'layout-alignment';
13
+ collapse: 'layout-collapse';
14
+ direction: 'layout-direction';
15
+ spacing: 'layout-spacing';
16
+ visibility: 'layout-visibility';
17
+ }>;
18
+ export type CoreLayoutAlignment = 'center' | 'end' | 'start' | 'stretch';
19
+ export type CoreLayoutCollapse = 'preserve' | 'stack' | 'wrap';
20
+ export type CoreLayoutDirection = 'block' | 'inline';
21
+ export type CoreLayoutSpacing = 'comfortable' | 'compact' | 'none' | 'spacious';
22
+ export type CoreLayoutVisibility = 'hidden' | 'visible';
23
+ export interface CoreLayoutBlockDefinitionOptions {
24
+ /** Additional host block types admitted into every composable layout slot. */
25
+ acceptedChildTypes?: readonly BlockType[];
26
+ /** Trusted renderer capabilities required for this definition family. */
27
+ rendererRequirements?: readonly RendererRequirement[];
28
+ }
29
+ export interface CoreLayoutPropertyResolution<T> {
30
+ source: 'base' | 'default' | 'viewport';
31
+ value: T;
32
+ viewport?: LocalName;
33
+ }
34
+ export interface CoreLayoutIntent {
35
+ alignment: CoreLayoutPropertyResolution<CoreLayoutAlignment>;
36
+ collapse?: CoreLayoutPropertyResolution<CoreLayoutCollapse>;
37
+ columns?: CoreLayoutPropertyResolution<number>;
38
+ direction?: CoreLayoutPropertyResolution<CoreLayoutDirection>;
39
+ spacing: CoreLayoutPropertyResolution<CoreLayoutSpacing>;
40
+ visibility: CoreLayoutPropertyResolution<CoreLayoutVisibility>;
41
+ }
42
+ export type CoreLayoutErrorCode = 'invalid-layout-property' | 'theme-choice-missing' | 'theme-control-missing' | 'unsupported-layout-block' | 'viewport-missing';
43
+ /** Stable fail-closed error for renderer and authoring layout resolution. */
44
+ export declare class CoreLayoutError extends Error {
45
+ readonly code: CoreLayoutErrorCode;
46
+ constructor(code: CoreLayoutErrorCode, message: string);
47
+ }
48
+ /** True only for the four canonical Studio layout block types. */
49
+ export declare function isCoreLayoutBlockType(type: BlockType): type is CoreLayoutBlockType;
50
+ /**
51
+ * Creates the canonical section, stack, grid, and columns definitions. The
52
+ * family owns its bounded semantic properties while the host explicitly adds
53
+ * content block types and trusted renderer capabilities; no wildcard slot or
54
+ * renderer authority is invented.
55
+ */
56
+ export declare function createCoreLayoutBlockDefinitions(options?: Readonly<CoreLayoutBlockDefinitionOptions>): BlockDefinition[];
57
+ /** Minimal persisted properties for a newly inserted core layout node. */
58
+ export declare function coreLayoutInitialProperties(type: CoreLayoutBlockType): JsonObject;
59
+ /**
60
+ * Resolves one layout node for a named theme viewport. Responsive values use
61
+ * the active viewport override when present and otherwise inherit the base
62
+ * value, with defaults remaining runtime semantics rather than stored noise.
63
+ * Every token reference must be declared by the active theme.
64
+ */
65
+ export declare function resolveCoreLayoutIntent(node: Readonly<BlueprintNode>, viewport: Readonly<ThemeViewport>, theme: Readonly<ThemeDocument>): CoreLayoutIntent;
66
+ //# sourceMappingURL=layout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../src/layout.ts"],"names":[],"mappings":"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"}
package/dist/layout.js ADDED
@@ -0,0 +1,240 @@
1
+ import { STUDIO_CONTRACT_VERSION, } from '@kumwe/studio-protocol';
2
+ import { cloneContractValue } from './clone.js';
3
+ /** The portable layout block family shipped by Studio. */
4
+ export const CORE_LAYOUT_BLOCK_TYPES = Object.freeze({
5
+ columns: 'studio.core/columns',
6
+ grid: 'studio.core/grid',
7
+ section: 'studio.core/section',
8
+ stack: 'studio.core/stack',
9
+ });
10
+ /** Canonical theme-control identifiers understood by every core layout block. */
11
+ export const CORE_LAYOUT_THEME_CONTROLS = Object.freeze({
12
+ alignment: 'layout-alignment',
13
+ collapse: 'layout-collapse',
14
+ direction: 'layout-direction',
15
+ spacing: 'layout-spacing',
16
+ visibility: 'layout-visibility',
17
+ });
18
+ /** Stable fail-closed error for renderer and authoring layout resolution. */
19
+ export class CoreLayoutError extends Error {
20
+ code;
21
+ constructor(code, message) {
22
+ super(message);
23
+ this.name = 'CoreLayoutError';
24
+ this.code = code;
25
+ }
26
+ }
27
+ const DEFAULT_RENDERER_REQUIREMENTS = Object.freeze([
28
+ { capability: 'studio.renderer/layout', surface: 'preview', versions: '^1.0.0' },
29
+ { capability: 'studio.renderer/layout', surface: 'web', versions: '^1.0.0' },
30
+ ]);
31
+ const ALIGNMENTS = ['center', 'end', 'start', 'stretch'];
32
+ const COLLAPSE_BEHAVIOURS = ['preserve', 'stack', 'wrap'];
33
+ const DIRECTIONS = ['block', 'inline'];
34
+ const SPACING_ROLES = ['comfortable', 'compact', 'none', 'spacious'];
35
+ const VISIBILITY_ROLES = ['hidden', 'visible'];
36
+ /** True only for the four canonical Studio layout block types. */
37
+ export function isCoreLayoutBlockType(type) {
38
+ return Object.values(CORE_LAYOUT_BLOCK_TYPES).includes(type);
39
+ }
40
+ /**
41
+ * Creates the canonical section, stack, grid, and columns definitions. The
42
+ * family owns its bounded semantic properties while the host explicitly adds
43
+ * content block types and trusted renderer capabilities; no wildcard slot or
44
+ * renderer authority is invented.
45
+ */
46
+ export function createCoreLayoutBlockDefinitions(options = {}) {
47
+ const acceptedTypes = stableUniqueBlockTypes([
48
+ ...Object.values(CORE_LAYOUT_BLOCK_TYPES),
49
+ ...(options.acceptedChildTypes ?? []),
50
+ ]);
51
+ const rendererRequirements = cloneContractValue(options.rendererRequirements ?? DEFAULT_RENDERER_REQUIREMENTS);
52
+ if (rendererRequirements.length === 0) {
53
+ throw new RangeError('Core layout blocks require at least one trusted renderer capability.');
54
+ }
55
+ return [
56
+ definition('section', acceptedTypes, rendererRequirements),
57
+ definition('stack', acceptedTypes, rendererRequirements),
58
+ definition('grid', acceptedTypes, rendererRequirements),
59
+ definition('columns', acceptedTypes, rendererRequirements),
60
+ ];
61
+ }
62
+ /** Minimal persisted properties for a newly inserted core layout node. */
63
+ export function coreLayoutInitialProperties(type) {
64
+ switch (type) {
65
+ case CORE_LAYOUT_BLOCK_TYPES.section:
66
+ return {};
67
+ case CORE_LAYOUT_BLOCK_TYPES.stack:
68
+ return { direction: 'block' };
69
+ case CORE_LAYOUT_BLOCK_TYPES.grid:
70
+ case CORE_LAYOUT_BLOCK_TYPES.columns:
71
+ return { collapse: 'stack', columns: 1 };
72
+ }
73
+ }
74
+ /**
75
+ * Resolves one layout node for a named theme viewport. Responsive values use
76
+ * the active viewport override when present and otherwise inherit the base
77
+ * value, with defaults remaining runtime semantics rather than stored noise.
78
+ * Every token reference must be declared by the active theme.
79
+ */
80
+ export function resolveCoreLayoutIntent(node, viewport, theme) {
81
+ if (!isCoreLayoutBlockType(node.type)) {
82
+ throw new CoreLayoutError('unsupported-layout-block', `Block ${node.type} is not a canonical Studio layout block.`);
83
+ }
84
+ if (!theme.viewports.some((candidate) => candidate.id === viewport.id)) {
85
+ throw new CoreLayoutError('viewport-missing', `Theme ${theme.id} does not declare viewport ${viewport.id}.`);
86
+ }
87
+ const alignment = tokenProperty(node, viewport, theme, 'alignment', CORE_LAYOUT_THEME_CONTROLS.alignment, ALIGNMENTS, 'stretch');
88
+ const spacing = tokenProperty(node, viewport, theme, 'spacing', CORE_LAYOUT_THEME_CONTROLS.spacing, SPACING_ROLES, 'comfortable');
89
+ const visibility = tokenProperty(node, viewport, theme, 'visibility', CORE_LAYOUT_THEME_CONTROLS.visibility, VISIBILITY_ROLES, 'visible');
90
+ const resolved = { alignment, spacing, visibility };
91
+ if (node.type === CORE_LAYOUT_BLOCK_TYPES.stack) {
92
+ resolved.direction = tokenProperty(node, viewport, theme, 'direction', CORE_LAYOUT_THEME_CONTROLS.direction, DIRECTIONS, 'block');
93
+ }
94
+ if (node.type === CORE_LAYOUT_BLOCK_TYPES.grid || node.type === CORE_LAYOUT_BLOCK_TYPES.columns) {
95
+ resolved.collapse = tokenProperty(node, viewport, theme, 'collapse', CORE_LAYOUT_THEME_CONTROLS.collapse, COLLAPSE_BEHAVIOURS, 'stack');
96
+ resolved.columns = numericProperty(node, viewport, 'columns', 1, 12, 1);
97
+ }
98
+ return resolved;
99
+ }
100
+ function definition(name, acceptedTypes, rendererRequirements) {
101
+ const type = CORE_LAYOUT_BLOCK_TYPES[name];
102
+ const title = `${name.charAt(0).toUpperCase()}${name.slice(1)}`;
103
+ const themeControls = [
104
+ CORE_LAYOUT_THEME_CONTROLS.alignment,
105
+ CORE_LAYOUT_THEME_CONTROLS.spacing,
106
+ CORE_LAYOUT_THEME_CONTROLS.visibility,
107
+ ];
108
+ if (name === 'stack') {
109
+ themeControls.push(CORE_LAYOUT_THEME_CONTROLS.direction);
110
+ }
111
+ if (name === 'grid' || name === 'columns') {
112
+ themeControls.push(CORE_LAYOUT_THEME_CONTROLS.collapse);
113
+ }
114
+ return {
115
+ accessibility: {
116
+ accessibleName: name === 'section' ? 'derived' : 'not-applicable',
117
+ category: name === 'section' ? 'landmark' : 'structural',
118
+ keyboard: {
119
+ defaultMessage: 'Use the outline commands to insert, move, and reorder layout children.',
120
+ key: 'studio.blocks/layout-keyboard',
121
+ },
122
+ outputChecks: ['studio.check/reading-order', 'studio.check/reflow'],
123
+ reducedMotion: 'not-applicable',
124
+ },
125
+ category: 'studio.category/layout',
126
+ contractVersion: STUDIO_CONTRACT_VERSION,
127
+ editingModes: ['blueprint', 'content'],
128
+ icon: { kind: 'symbol', value: name },
129
+ kind: 'block-definition',
130
+ label: { defaultMessage: title, key: `studio.blocks/${name}` },
131
+ owner: { id: 'studio.core/blocks', version: '1.0.0' },
132
+ ports: [],
133
+ propertyControls: themeControls.map((control) => ({
134
+ control: `studio.control/${control}`,
135
+ property: propertyForControl(control),
136
+ })),
137
+ propertySchema: propertySchema(name),
138
+ rendererRequirements: cloneContractValue([...rendererRequirements]),
139
+ revision: `layout-${name}-r1`,
140
+ slots: [layoutSlot(name, acceptedTypes)],
141
+ themeControls,
142
+ type,
143
+ version: '1.0.0',
144
+ };
145
+ }
146
+ function layoutSlot(name, acceptedTypes) {
147
+ const id = name === 'section' ? 'content' : 'items';
148
+ return {
149
+ accepts: { types: cloneContractValue(acceptedTypes) },
150
+ id,
151
+ label: {
152
+ defaultMessage: name === 'section' ? 'Content' : 'Items',
153
+ key: name === 'section' ? 'studio.blocks/section-content' : 'studio.blocks/layout-items',
154
+ },
155
+ maximum: 100,
156
+ minimum: 0,
157
+ ordered: true,
158
+ };
159
+ }
160
+ function propertySchema(name) {
161
+ const properties = {
162
+ alignment: { enum: [...ALIGNMENTS] },
163
+ spacing: { enum: [...SPACING_ROLES] },
164
+ visibility: { enum: [...VISIBILITY_ROLES] },
165
+ };
166
+ if (name === 'stack') {
167
+ properties.direction = { enum: [...DIRECTIONS] };
168
+ }
169
+ if (name === 'grid' || name === 'columns') {
170
+ properties.collapse = { enum: [...COLLAPSE_BEHAVIOURS] };
171
+ properties.columns = { maximum: 12, minimum: 1, type: 'integer' };
172
+ }
173
+ return { additionalProperties: false, properties, type: 'object' };
174
+ }
175
+ function propertyForControl(control) {
176
+ switch (control) {
177
+ case CORE_LAYOUT_THEME_CONTROLS.alignment:
178
+ return 'alignment';
179
+ case CORE_LAYOUT_THEME_CONTROLS.collapse:
180
+ return 'collapse';
181
+ case CORE_LAYOUT_THEME_CONTROLS.direction:
182
+ return 'direction';
183
+ case CORE_LAYOUT_THEME_CONTROLS.spacing:
184
+ return 'spacing';
185
+ case CORE_LAYOUT_THEME_CONTROLS.visibility:
186
+ return 'visibility';
187
+ default:
188
+ throw new RangeError(`Unknown core layout control ${control}.`);
189
+ }
190
+ }
191
+ function stableUniqueBlockTypes(values) {
192
+ const unique = [...new Set(values)];
193
+ unique.sort((left, right) => (left < right ? -1 : left > right ? 1 : 0));
194
+ if (unique.length === 0) {
195
+ throw new RangeError('A core layout slot requires at least one accepted block type.');
196
+ }
197
+ return unique;
198
+ }
199
+ function responsiveValue(node, viewport, property) {
200
+ const override = node.responsive?.[property]?.[viewport.id];
201
+ if (override !== undefined) {
202
+ return { source: 'viewport', value: override, viewport: viewport.id };
203
+ }
204
+ const base = node.properties[property];
205
+ return base === undefined
206
+ ? { source: 'default', value: undefined }
207
+ : { source: 'base', value: base };
208
+ }
209
+ function tokenProperty(node, viewport, theme, property, controlId, vocabulary, fallback) {
210
+ const effective = responsiveValue(node, viewport, property);
211
+ const value = effective.value ?? fallback;
212
+ if (typeof value !== 'string' || !vocabulary.includes(value)) {
213
+ throw new CoreLayoutError('invalid-layout-property', `Property ${property} on node ${node.id} is not a supported layout token.`);
214
+ }
215
+ const control = theme.designControls.find((candidate) => candidate.id === controlId);
216
+ if (control === undefined) {
217
+ throw new CoreLayoutError('theme-control-missing', `Theme ${theme.id} does not declare required layout control ${controlId}.`);
218
+ }
219
+ if (!control.choices.some((choice) => choice.id === value)) {
220
+ throw new CoreLayoutError('theme-choice-missing', `Theme ${theme.id} does not declare ${value} for layout control ${controlId}.`);
221
+ }
222
+ return {
223
+ source: effective.source,
224
+ value: value,
225
+ ...(effective.viewport === undefined ? {} : { viewport: effective.viewport }),
226
+ };
227
+ }
228
+ function numericProperty(node, viewport, property, minimum, maximum, fallback) {
229
+ const effective = responsiveValue(node, viewport, property);
230
+ const value = effective.value ?? fallback;
231
+ if (typeof value !== 'number' || !Number.isInteger(value) || value < minimum || value > maximum) {
232
+ throw new CoreLayoutError('invalid-layout-property', `Property ${property} on node ${node.id} must be an integer from ${minimum} through ${maximum}.`);
233
+ }
234
+ return {
235
+ source: effective.source,
236
+ value,
237
+ ...(effective.viewport === undefined ? {} : { viewport: effective.viewport }),
238
+ };
239
+ }
240
+ //# sourceMappingURL=layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout.js","sourceRoot":"","sources":["../src/layout.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ import type { JsonValue, OwnerReference, QualifiedName, SemanticVersion, StudioDiagnostic } from '@kumwe/studio-protocol';
2
+ export type MigratableArtifactKind = 'block-definition' | 'blueprint' | 'content-model' | 'entry' | 'theme';
3
+ export interface MigratableDocument {
4
+ kind: string;
5
+ version: SemanticVersion;
6
+ [member: string]: JsonValue | undefined;
7
+ }
8
+ export interface MigrationDescriptor {
9
+ artifactKinds: readonly MigratableArtifactKind[];
10
+ description: string;
11
+ id: QualifiedName;
12
+ lossClassification: 'lossless' | 'lossy';
13
+ migrate(document: MigratableDocument): MigratableDocument;
14
+ owner: OwnerReference;
15
+ sourceVersions: string;
16
+ targetVersion: SemanticVersion;
17
+ }
18
+ export interface MigrationApplyOptions {
19
+ confirmLossy?: boolean;
20
+ validate?(document: MigratableDocument): StudioDiagnostic[];
21
+ }
22
+ export interface MigrationApplyResult {
23
+ diagnostics: StudioDiagnostic[];
24
+ document: MigratableDocument;
25
+ migrationId: QualifiedName;
26
+ }
27
+ export declare class StudioMigrationError extends Error {
28
+ readonly code: 'already-applied' | 'confirmation-required' | 'duplicate-migration' | 'invalid-result' | 'not-applicable' | 'unknown-migration';
29
+ readonly diagnostics: StudioDiagnostic[];
30
+ constructor(code: StudioMigrationError['code'], message: string, diagnostics?: StudioDiagnostic[]);
31
+ }
32
+ /**
33
+ * The deterministic migration runner the versioning contract defines.
34
+ * Migration operates on a copy, validates the complete result before
35
+ * acceptance, never mutates or replaces the original revision, refuses
36
+ * lossy transformations without explicit confirmation, and rejects
37
+ * reapplication once a document has left a migration's source range.
38
+ */
39
+ export declare class MigrationRunner {
40
+ #private;
41
+ register(migration: MigrationDescriptor): void;
42
+ migrations(): MigrationDescriptor[];
43
+ /** Ordered migrations whose source range and artifact kind match the document. */
44
+ plan(document: Readonly<MigratableDocument>): MigrationDescriptor[];
45
+ apply(document: Readonly<MigratableDocument>, migrationId: QualifiedName, options?: Readonly<MigrationApplyOptions>): MigrationApplyResult;
46
+ }
47
+ //# sourceMappingURL=migrations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,cAAc,EACd,aAAa,EACb,eAAe,EACf,gBAAgB,EACjB,MAAM,wBAAwB,CAAC;AAIhC,MAAM,MAAM,sBAAsB,GAChC,kBAAkB,GAAG,WAAW,GAAG,eAAe,GAAG,OAAO,GAAG,OAAO,CAAC;AAEzE,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,eAAe,CAAC;IACzB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;CACzC;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,SAAS,sBAAsB,EAAE,CAAC;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,EAAE,EAAE,aAAa,CAAC;IAClB,kBAAkB,EAAE,UAAU,GAAG,OAAO,CAAC;IACzC,OAAO,CAAC,QAAQ,EAAE,kBAAkB,GAAG,kBAAkB,CAAC;IAC1D,KAAK,EAAE,cAAc,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,eAAe,CAAC;CAChC;AAED,MAAM,WAAW,qBAAqB;IACpC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,CAAC,QAAQ,EAAE,kBAAkB,GAAG,gBAAgB,EAAE,CAAC;CAC7D;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,gBAAgB,EAAE,CAAC;IAChC,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,WAAW,EAAE,aAAa,CAAC;CAC5B;AAED,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,SAAgB,IAAI,EAChB,iBAAiB,GACjB,uBAAuB,GACvB,qBAAqB,GACrB,gBAAgB,GAChB,gBAAgB,GAChB,mBAAmB,CAAC;IACxB,SAAgB,WAAW,EAAE,gBAAgB,EAAE,CAAC;gBAG9C,IAAI,EAAE,oBAAoB,CAAC,MAAM,CAAC,EAClC,OAAO,EAAE,MAAM,EACf,WAAW,GAAE,gBAAgB,EAAO;CAOvC;AAED;;;;;;GAMG;AACH,qBAAa,eAAe;;IAGnB,QAAQ,CAAC,SAAS,EAAE,mBAAmB,GAAG,IAAI;IAwB9C,UAAU,IAAI,mBAAmB,EAAE;IAI1C,kFAAkF;IAC3E,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,kBAAkB,CAAC,GAAG,mBAAmB,EAAE;IAUnE,KAAK,CACV,QAAQ,EAAE,QAAQ,CAAC,kBAAkB,CAAC,EACtC,WAAW,EAAE,aAAa,EAC1B,OAAO,GAAE,QAAQ,CAAC,qBAAqB,CAAM,GAC5C,oBAAoB;CAiExB"}
@@ -0,0 +1,83 @@
1
+ import { cloneContractValue } from './clone.js';
2
+ import { normalizeVersionRange, parseSemanticVersion, satisfiesVersionRange } from './semver.js';
3
+ export class StudioMigrationError extends Error {
4
+ code;
5
+ diagnostics;
6
+ constructor(code, message, diagnostics = []) {
7
+ super(message);
8
+ this.name = 'StudioMigrationError';
9
+ this.code = code;
10
+ this.diagnostics = diagnostics;
11
+ }
12
+ }
13
+ /**
14
+ * The deterministic migration runner the versioning contract defines.
15
+ * Migration operates on a copy, validates the complete result before
16
+ * acceptance, never mutates or replaces the original revision, refuses
17
+ * lossy transformations without explicit confirmation, and rejects
18
+ * reapplication once a document has left a migration's source range.
19
+ */
20
+ export class MigrationRunner {
21
+ #migrations = new Map();
22
+ register(migration) {
23
+ if (this.#migrations.has(migration.id)) {
24
+ throw new StudioMigrationError('duplicate-migration', `Migration ${migration.id} is already registered.`);
25
+ }
26
+ if (migration.artifactKinds.length === 0) {
27
+ throw new StudioMigrationError('not-applicable', `Migration ${migration.id} declares no artifact kinds.`);
28
+ }
29
+ normalizeVersionRange(migration.sourceVersions);
30
+ parseSemanticVersion(migration.targetVersion);
31
+ if (satisfiesVersionRange(migration.targetVersion, migration.sourceVersions)) {
32
+ throw new StudioMigrationError('invalid-result', `Migration ${migration.id} targets a version inside its own source range, so reapplication could never be rejected.`);
33
+ }
34
+ this.#migrations.set(migration.id, migration);
35
+ }
36
+ migrations() {
37
+ return [...this.#migrations.values()];
38
+ }
39
+ /** Ordered migrations whose source range and artifact kind match the document. */
40
+ plan(document) {
41
+ return this.migrations()
42
+ .filter((migration) => migration.artifactKinds.includes(document.kind) &&
43
+ satisfiesVersionRange(document.version, migration.sourceVersions))
44
+ .sort((left, right) => (left.id < right.id ? -1 : 1));
45
+ }
46
+ apply(document, migrationId, options = {}) {
47
+ const migration = this.#migrations.get(migrationId);
48
+ if (migration === undefined) {
49
+ throw new StudioMigrationError('unknown-migration', `Migration ${migrationId} is not registered.`);
50
+ }
51
+ if (!migration.artifactKinds.includes(document.kind)) {
52
+ throw new StudioMigrationError('not-applicable', `Migration ${migrationId} does not cover ${document.kind} artifacts.`);
53
+ }
54
+ if (!satisfiesVersionRange(document.version, migration.sourceVersions)) {
55
+ const code = document.version === migration.targetVersion ? 'already-applied' : 'not-applicable';
56
+ throw new StudioMigrationError(code, `Document version ${document.version} is outside the source range of ${migrationId}.`);
57
+ }
58
+ if (migration.lossClassification === 'lossy' && options.confirmLossy !== true) {
59
+ throw new StudioMigrationError('confirmation-required', `Migration ${migrationId} is lossy and requires explicit confirmation.`);
60
+ }
61
+ const migrated = migration.migrate(cloneContractValue(document));
62
+ const diagnostics = [];
63
+ if (migrated.kind !== document.kind) {
64
+ throw new StudioMigrationError('invalid-result', `Migration ${migrationId} changed the artifact kind from ${document.kind} to ${migrated.kind}.`);
65
+ }
66
+ if (migrated.version !== migration.targetVersion) {
67
+ throw new StudioMigrationError('invalid-result', `Migration ${migrationId} produced version ${migrated.version}, not the declared target ${migration.targetVersion}.`);
68
+ }
69
+ if (options.validate !== undefined) {
70
+ const validationDiagnostics = options.validate(migrated);
71
+ diagnostics.push(...validationDiagnostics);
72
+ if (validationDiagnostics.some((entry) => entry.severity === 'blocking' || entry.severity === 'error')) {
73
+ throw new StudioMigrationError('invalid-result', `Migration ${migrationId} produced an invalid document.`, validationDiagnostics);
74
+ }
75
+ }
76
+ return {
77
+ diagnostics,
78
+ document: migrated,
79
+ migrationId,
80
+ };
81
+ }
82
+ }
83
+ //# sourceMappingURL=migrations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { AddModelFieldCommand, ContentModelDocument } from '@kumwe/studio-protocol';
2
+ export declare function applyModelCommand(model: ContentModelDocument, command: AddModelFieldCommand): ContentModelDocument;
3
+ //# sourceMappingURL=model-commands.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model-commands.d.ts","sourceRoot":"","sources":["../src/model-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAIzF,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE,oBAAoB,GAC5B,oBAAoB,CA8BtB"}