@trilogy-data/trilogy-studio-components 0.1.9 → 0.1.11

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 (113) hide show
  1. package/dist/{ChatCreatorModal-OdRvXdg7.js → ChatCreatorModal-ByXgDUoO.js} +1 -1
  2. package/dist/{Dashboard-0k2aaopG.js → Dashboard-D6A2aYgv.js} +3 -3
  3. package/dist/{DashboardCreatorInline-C3VT9f4a.js → DashboardCreatorInline-Cgfinl3I.js} +1 -1
  4. package/dist/{DashboardMobile-2Lc3YcR2.js → DashboardMobile-BbZH1Qir.js} +20 -20
  5. package/dist/{LLMConnectionList-CyW30Rgm.js → LLMConnectionList-Cl3h5pBm.js} +884 -856
  6. package/dist/LLMView-BRDqi_8s.js +656 -0
  7. package/dist/Manager-Baa6Lvxg.js +4 -0
  8. package/dist/{ResultComponent-D6ENatmo.js → ResultComponent-RFos0Fha.js} +6 -6
  9. package/dist/{Sidebar-Cdr2TdFV.js → Sidebar-Bvu5hS2B.js} +289 -268
  10. package/dist/{TutorialPage-BGa-NtBJ.js → TutorialPage-ChaeJTUC.js} +4 -4
  11. package/dist/{WelcomePage-DLxIPXsA.js → WelcomePage-B06IC6Uy.js} +1 -1
  12. package/dist/chats/chat.d.ts +11 -1
  13. package/dist/chats/chat.d.ts.map +1 -1
  14. package/dist/chats/publishArtifactsToDashboard.d.ts +21 -0
  15. package/dist/chats/publishArtifactsToDashboard.d.ts.map +1 -0
  16. package/dist/components/MarkdownRenderer.vue.d.ts +1 -1
  17. package/dist/components/dashboard/DashboardMarkdown.vue.d.ts +1 -1
  18. package/dist/components/editor/Editor.vue.d.ts +1 -2
  19. package/dist/components/editor/Editor.vue.d.ts.map +1 -1
  20. package/dist/components/editor/ResultComponent.vue.d.ts +77 -18
  21. package/dist/components/editor/ResultComponent.vue.d.ts.map +1 -1
  22. package/dist/components/layout/SidebarLayout.vue.d.ts +14 -2
  23. package/dist/components/layout/SidebarLayout.vue.d.ts.map +1 -1
  24. package/dist/components/llm/ArtifactsPane.vue.d.ts +885 -0
  25. package/dist/components/llm/ArtifactsPane.vue.d.ts.map +1 -0
  26. package/dist/components/llm/ChatArtifact.vue.d.ts +37 -1
  27. package/dist/components/llm/ChatArtifact.vue.d.ts.map +1 -1
  28. package/dist/components/llm/LLMChat.vue.d.ts +19 -4
  29. package/dist/components/llm/LLMChat.vue.d.ts.map +1 -1
  30. package/dist/components/llm/LLMChatSplitView.vue.d.ts +859 -703
  31. package/dist/components/llm/LLMChatSplitView.vue.d.ts.map +1 -1
  32. package/dist/components/llm/LLMEditorRefinement.vue.d.ts +77 -18
  33. package/dist/components/llm/LLMEditorRefinement.vue.d.ts.map +1 -1
  34. package/dist/components/model/ModelCard.vue.d.ts +1 -2
  35. package/dist/components/model/ModelCard.vue.d.ts.map +1 -1
  36. package/dist/components/sidebar/ConnectionList.vue.d.ts.map +1 -1
  37. package/dist/components/sidebar/EditorList.vue.d.ts.map +1 -1
  38. package/dist/components/sidebar/LLMConnectionCreator.vue.d.ts.map +1 -1
  39. package/dist/components/sidebar/LLMConnectionList.vue.d.ts +2 -2
  40. package/dist/components/sidebar/LLMConnectionList.vue.d.ts.map +1 -1
  41. package/dist/components/sidebar/LLMConnectionListItem.vue.d.ts.map +1 -1
  42. package/dist/components/sidebar/LLMProviderIcon.vue.d.ts.map +1 -1
  43. package/dist/components/tutorial/TutorialPrompt.vue.d.ts +78 -20
  44. package/dist/components/tutorial/TutorialPrompt.vue.d.ts.map +1 -1
  45. package/dist/composables/useChatWithTools.d.ts.map +1 -1
  46. package/dist/composables/useEditorRefinement.d.ts.map +1 -1
  47. package/dist/composables/useToolLoop.d.ts +0 -2
  48. package/dist/composables/useToolLoop.d.ts.map +1 -1
  49. package/dist/{cssMode-B3ho0HV1.js → cssMode-C091JrjG.js} +1 -1
  50. package/dist/dashboards/helpers.d.ts.map +1 -1
  51. package/dist/data/githubStorage.d.ts.map +1 -1
  52. package/dist/data/localStorage.d.ts.map +1 -1
  53. package/dist/editors/results.d.ts.map +1 -1
  54. package/dist/{freemarker2-CVSRiESZ.js → freemarker2-X1eIBwal.js} +1 -1
  55. package/dist/{handlebars-Ds19fsS7.js → handlebars-BlVeu042.js} +1 -1
  56. package/dist/{html-C4KpMEX_.js → html-WyM-Pvly.js} +1 -1
  57. package/dist/{htmlMode-BpDpZxd_.js → htmlMode-DQST6Ar_.js} +1 -1
  58. package/dist/{javascript-DVRyvgPM.js → javascript-CYyejasU.js} +1 -1
  59. package/dist/{jsonMode-BBjGf1vJ.js → jsonMode-CESsFbpD.js} +1 -1
  60. package/dist/{liquid-dmReO7kS.js → liquid-DdP-I3Ox.js} +1 -1
  61. package/dist/llm/chatAgentPrompt.d.ts +262 -0
  62. package/dist/llm/chatAgentPrompt.d.ts.map +1 -1
  63. package/dist/llm/chatHelpers.d.ts +0 -11
  64. package/dist/llm/chatHelpers.d.ts.map +1 -1
  65. package/dist/llm/chatToolExecutor.d.ts +10 -0
  66. package/dist/llm/chatToolExecutor.d.ts.map +1 -1
  67. package/dist/llm/demo.d.ts +29 -0
  68. package/dist/llm/demo.d.ts.map +1 -0
  69. package/dist/llm/editorRefinementToolExecutor.d.ts +4 -0
  70. package/dist/llm/editorRefinementToolExecutor.d.ts.map +1 -1
  71. package/dist/llm/editorRefinementTools.d.ts +40 -0
  72. package/dist/llm/editorRefinementTools.d.ts.map +1 -1
  73. package/dist/llm/index.d.ts +3 -2
  74. package/dist/llm/index.d.ts.map +1 -1
  75. package/dist/llm/openrouter.d.ts +5 -0
  76. package/dist/llm/openrouter.d.ts.map +1 -1
  77. package/dist/llm/toolLoopCore.d.ts +36 -7
  78. package/dist/llm/toolLoopCore.d.ts.map +1 -1
  79. package/dist/llm/utils.d.ts +4 -1
  80. package/dist/llm/utils.d.ts.map +1 -1
  81. package/dist/{main-B7Jr4lF7.js → main-DP4aLnEK.js} +38725 -37865
  82. package/dist/main.css +1 -1
  83. package/dist/main.d.ts +2 -1
  84. package/dist/main.d.ts.map +1 -1
  85. package/dist/main.js +17 -16
  86. package/dist/main.umd.cjs +627 -582
  87. package/dist/{mdx-BwmfqX1A.js → mdx-VGDZf6-F.js} +1 -1
  88. package/dist/{python-BwbsBL9D.js → python-BiiBBLHE.js} +1 -1
  89. package/dist/{razor-Cez_dCE1.js → razor-ogBkymZ8.js} +1 -1
  90. package/dist/stores/chatStore.d.ts.map +1 -1
  91. package/dist/stores/editorStore.d.ts.map +1 -1
  92. package/dist/stores/llmStore.d.ts +1 -10
  93. package/dist/stores/llmStore.d.ts.map +1 -1
  94. package/dist/stores/queryExecutionService.d.ts +1 -0
  95. package/dist/stores/queryExecutionService.d.ts.map +1 -1
  96. package/dist/stores/resolver.d.ts +1 -0
  97. package/dist/stores/resolver.d.ts.map +1 -1
  98. package/dist/stores/useScreenNavigation.d.ts.map +1 -1
  99. package/dist/{tsMode-D-UYasUi.js → tsMode-DP-1CE0D.js} +1 -1
  100. package/dist/{typescript-_9ojgBKb.js → typescript-ByG-a0Ne.js} +1 -1
  101. package/dist/{useDashboard-CdXX3N67.js → useDashboard-Dx-2dWkF.js} +1 -1
  102. package/dist/utility/markdownRenderer.d.ts.map +1 -1
  103. package/dist/views/LLMView.vue.d.ts +2724 -2151
  104. package/dist/views/LLMView.vue.d.ts.map +1 -1
  105. package/dist/views/ModelView.vue.d.ts +2 -4
  106. package/dist/views/ModelView.vue.d.ts.map +1 -1
  107. package/dist/views/TutorialPage.vue.d.ts +161 -47
  108. package/dist/views/TutorialPage.vue.d.ts.map +1 -1
  109. package/dist/{xml-BZe5K5QU.js → xml-DmCesN6f.js} +1 -1
  110. package/dist/{yaml-B_vCzyTx.js → yaml-DpZLn6t1.js} +1 -1
  111. package/package.json +1 -1
  112. package/dist/LLMView-DKOdYGLc.js +0 -558
  113. package/dist/Manager-DU3egRRh.js +0 -4
@@ -1 +1 @@
1
- {"version":3,"file":"TutorialPage.vue.d.ts","sourceRoot":"","sources":["../../views/TutorialPage.vue"],"names":[],"mappings":"AAiIA;AAyWA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAG5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAJhE,CA3N8C;0BA2N9C,CA1NQ;;;;;;;;;;;;;;2BA0NR,CA5EqB,oCA4ErB,CA1EG;+BA0EH,CAzEoB;oBAyEpB,CArEA,UAqEA,CArEW;kCAqEX,CAlEI;;;wBAkEJ,CA1DG;mBA0DH,CAzDC;;;2BA4OK,CAAC;+BAGF,CAAC;qBAEuB,CAAA;;;oBAehB,CAAC,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAvMzB,CA3N8C;8BA2N9C,CA1NQ;;;;;;;;;;;;;;+BA0NR,CA5EqB,oCA4ErB,CA1EG;mCA0EH,CAzEoB;wBAyEpB,CArEA,UAqEA,CArEW;sCAqEX,CAlEI;;;4BAkEJ,CA1DG;uBA0DH,CAzDC;;;+BA4OK,CAAC;mCAGF,CAAC;yBAEuB,CAAA;;;wBAehB,CAAC,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAvMzB,CAvGkC;;wBAuGlC,CApGmB;yBAoGnB,CApGuC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BA8TZ,CA3N8C;8BA2N9C,CA1NQ;;;;;;;;;;;;;;+BA0NR,CA5EqB,oCA4ErB,CA1EG;mCA0EH,CAzEoB;wBAyEpB,CArEA,UAqEA,CArEW;sCAqEX,CAlEI;;;4BAkEJ,CA1DG;uBA0DH,CAzDC;;;+BA4OK,CAAC;mCAGF,CAAC;yBAEuB,CAAA;;;wBAehB,CAAC,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAvMzB,CA3N8C;kCA2N9C,CA1NQ;;;;;;;;;;;;;;mCA0NR,CA5EqB,oCA4ErB,CA1EG;uCA0EH,CAzEoB;4BAyEpB,CArEA,UAqEA,CArEW;0CAqEX,CAlEI;;;gCAkEJ,CA1DG;2BA0DH,CAzDC;;;mCA4OK,CAAC;uCAGF,CAAC;6BAEuB,CAAA;;;4BAehB,CAAC,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAvMzB,CA/TgB;iCA+ThB,CA9TY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+VZ,wBAoIC"}
1
+ {"version":3,"file":"TutorialPage.vue.d.ts","sourceRoot":"","sources":["../../views/TutorialPage.vue"],"names":[],"mappings":"AAiIA;AAyWA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAG5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAJhE,CA3N8C;0BA2N9C,CA1NQ;;;;;;;;;;;;;;2BA0NR,CA5EqB,oCA4ErB,CA1EG;+BA0EH,CAzEoB;oBAyEpB,CArEA,UAqEA,CArEW;kCAqEX,CAlEI;;;wBAkEJ,CA1DG;mBA0DH,CAzDC;;;2BAkOU,CAAC;+BAGP,CAAC;qBAGF,CAAH;;;oBAkBiB,CAAC,UAClB,CAAD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAlMA,CA3N8C;8BA2N9C,CA1NQ;;;;;;;;;;;;;;+BA0NR,CA5EqB,oCA4ErB,CA1EG;mCA0EH,CAzEoB;wBAyEpB,CArEA,UAqEA,CArEW;sCAqEX,CAlEI;;;4BAkEJ,CA1DG;uBA0DH,CAzDC;;;+BAkOU,CAAC;mCAGP,CAAC;yBAGF,CAAH;;;wBAkBiB,CAAC,UAClB,CAAD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAlMA,CAvGkC;;wBAuGlC,CApGmB;yBAoGnB,CApGuC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BA8TZ,CA3N8C;8BA2N9C,CA1NQ;;;;;;;;;;;;;;+BA0NR,CA5EqB,oCA4ErB,CA1EG;mCA0EH,CAzEoB;wBAyEpB,CArEA,UAqEA,CArEW;sCAqEX,CAlEI;;;4BAkEJ,CA1DG;uBA0DH,CAzDC;;;+BAkOU,CAAC;mCAGP,CAAC;yBAGF,CAAH;;;wBAkBiB,CAAC,UAClB,CAAD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAlMA,CA3N8C;kCA2N9C,CA1NQ;;;;;;;;;;;;;;mCA0NR,CA5EqB,oCA4ErB,CA1EG;uCA0EH,CAzEoB;4BAyEpB,CArEA,UAqEA,CArEW;0CAqEX,CAlEI;;;gCAkEJ,CA1DG;2BA0DH,CAzDC;;;mCAkOU,CAAC;uCAGP,CAAC;6BAGF,CAAH;;;4BAkBiB,CAAC,UAClB,CAAD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAlMA,CA/TgB;iCA+ThB,CA9TY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+VZ,wBAoIC"}
@@ -1,4 +1,4 @@
1
- import { a7 as r } from "./main-B7Jr4lF7.js";
1
+ import { a9 as r } from "./main-DP4aLnEK.js";
2
2
  /*!-----------------------------------------------------------------------------
3
3
  * Copyright (c) Microsoft Corporation. All rights reserved.
4
4
  * Version: 0.52.2(404545bded1df6ffa41ea0af4e8ddb219018c6c1)
@@ -1,4 +1,4 @@
1
- import { a7 as l } from "./main-B7Jr4lF7.js";
1
+ import { a9 as l } from "./main-DP4aLnEK.js";
2
2
  /*!-----------------------------------------------------------------------------
3
3
  * Copyright (c) Microsoft Corporation. All rights reserved.
4
4
  * Version: 0.52.2(404545bded1df6ffa41ea0af4e8ddb219018c6c1)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trilogy-data/trilogy-studio-components",
3
- "version": "0.1.9",
3
+ "version": "0.1.11",
4
4
  "private": false,
5
5
  "publishConfig": { "access": "public" },
6
6
  "type": "module",
@@ -1,558 +0,0 @@
1
- import { defineComponent as q, inject as R, ref as y, computed as F, watch as M, nextTick as X, onMounted as Z, createElementBlock as u, openBlock as d, createElementVNode as a, createCommentVNode as b, createTextVNode as N, withDirectives as B, Fragment as U, renderList as V, toDisplayString as h, vModelSelect as x, normalizeClass as T, withKeys as ee, withModifiers as te, vModelText as ne, resolveComponent as O, createBlock as j, createVNode as se, withCtx as G } from "vue";
2
- import { w as A, x as oe, a as Q, y as ae, z as ie, B as re } from "./main-B7Jr4lF7.js";
3
- const P = [
4
- { name: "id", type: "int" },
5
- { name: "quantity", type: "float" },
6
- { name: "extended_price", type: "float::money" },
7
- { name: "discount", type: "float::percent", description: "percent discount" },
8
- { name: "tax", type: "float::percent", description: "tax, as percentage" },
9
- { name: "return_flag", type: "string" },
10
- { name: "line_status", type: "string" },
11
- { name: "ship_date", type: "date" },
12
- { name: "commit_date", type: "date" },
13
- { name: "receipt_date", type: "date" },
14
- { name: "ship_instruct", type: "string" },
15
- { name: "ship_mode", type: "string" },
16
- { name: "comment", type: "string" },
17
- { name: "supplier.id", type: "int" },
18
- { name: "supplier.nation.name", type: "string" },
19
- { name: "supplier.name", type: "string" },
20
- { name: "order.id", type: "int" },
21
- { name: "order.date", type: "date" },
22
- { name: "order.customer.name", type: "string" },
23
- { name: "order.customer.nation.name", type: "string" },
24
- { name: "order.customer.id", type: "int" }
25
- ], le = [
26
- {
27
- name: "Basic Query",
28
- description: "Tests if the LLM can create a simple trilogy query from user input.",
29
- prompt: A("what were sales for the last 3 months by order date?", P),
30
- expectedResponse: {
31
- contains: ["extended_price"],
32
- mustIdentify: "order.date",
33
- notContains: ["FROM"]
34
- }
35
- },
36
- {
37
- name: "Aggregate Query",
38
- description: "Tests if the LLM can generate an aggregate query.",
39
- prompt: A("what are sales by supplier name and nation?", P),
40
- expectedResponse: {
41
- contains: ["extended_price"],
42
- mustIdentify: "supplier.nation.name",
43
- notContains: ["FROM", "GROUP BY"]
44
- }
45
- },
46
- {
47
- name: "Complex Query",
48
- description: "Tests for a more complex query, with limits and ordering.",
49
- prompt: A("Who were the top ten customers by sales in august 1995?", P),
50
- expectedResponse: {
51
- contains: ["extended_price", "order.customer.name", "8"],
52
- mustIdentify: "order.customer.name",
53
- notContains: ["FROM", "GROUP BY"]
54
- }
55
- },
56
- {
57
- name: "Multi-part Conditions",
58
- description: "Tests for a query that includes multiple conditions.",
59
- prompt: A(
60
- "Who were the top ten customers by sales in august 1995 who had orders that shipped in october or september?",
61
- P
62
- ),
63
- expectedResponse: {
64
- contains: ["extended_price", "order.customer.name", "8"],
65
- mustIdentify: "order.customer.name",
66
- notContains: ["FROM", "GROUP BY"]
67
- }
68
- },
69
- {
70
- name: "Test Count(*) Handling",
71
- description: "Test proper counting of identifiers",
72
- prompt: A("How many customers are there by country?", P),
73
- expectedResponse: {
74
- contains: ["order.customer.id"],
75
- mustIdentify: "order.customer.nation.name",
76
- notContains: ["FROM", "GROUP BY", "*"]
77
- }
78
- }
79
- ], de = q({
80
- name: "LLMValidationView",
81
- props: {
82
- initialProvider: {
83
- type: String,
84
- default: ""
85
- }
86
- },
87
- setup(e) {
88
- const s = R("llmConnectionStore"), r = y([]), I = y(""), i = y(!1), L = y(!1), t = y(""), c = y(null), f = y([]), S = y([]), C = 5, $ = 4, o = y(
89
- e.initialProvider || (Object.keys(s.connections).length > 0 ? Object.keys(s.connections)[0] : "")
90
- ), g = y(le), E = F(() => Object.keys(s.connections)), k = F(() => !!o.value && s.getConnection(o.value) !== null);
91
- M(r, () => {
92
- X(() => {
93
- c.value && (c.value.scrollTop = c.value.scrollHeight);
94
- });
95
- });
96
- const W = (p) => p ? s.getConnectionStatus(p) : "disconnected", Y = (p, l) => {
97
- const n = { passed: !0 };
98
- let v = oe(p);
99
- if (l.contains) {
100
- for (const m of l.contains)
101
- if (!v.toLowerCase().includes(m.toLowerCase()))
102
- return n.passed = !1, n.reason = `Response missing expected phrase: "${m}"`, n;
103
- }
104
- if (l.notContains)
105
- for (const m of l.notContains) {
106
- const w = v.split(`
107
- `);
108
- for (const _ of w)
109
- if (!_.trim().startsWith("#") && _.toLowerCase().includes(m.toLowerCase()))
110
- return n.passed = !1, n.reason = `Response contains forbidden phrase: "${m}"`, n;
111
- }
112
- if (l.mustIdentify) {
113
- const m = v.toLowerCase(), w = l.mustIdentify.toLowerCase();
114
- if (!m.includes(w) && !H(m, w))
115
- return n.passed = !1, n.reason = `Response did not identify the issue: "${l.mustIdentify}"`, n;
116
- }
117
- return n;
118
- }, H = (p, l) => {
119
- const n = {
120
- "missing index": [
121
- "no index",
122
- "should create index",
123
- "index would improve",
124
- "needs an index"
125
- ]
126
- };
127
- return l in n ? n[l].some((v) => p.includes(v)) : !1;
128
- }, z = async () => {
129
- if (!I.value.trim() || i.value || !o.value) return;
130
- r.value.push({
131
- role: "user",
132
- content: I.value
133
- });
134
- const p = I.value;
135
- I.value = "", i.value = !0, t.value = "";
136
- try {
137
- const l = {
138
- prompt: p
139
- }, n = await s.generateCompletion(
140
- o.value,
141
- l
142
- );
143
- r.value.push({
144
- role: "assistant",
145
- content: n.text,
146
- modelInfo: {
147
- totalTokens: n.usage.totalTokens
148
- }
149
- });
150
- } catch (l) {
151
- t.value = l instanceof Error ? l.message : "An unknown error occurred";
152
- } finally {
153
- i.value = !1;
154
- }
155
- }, K = async (p) => {
156
- const l = g.value[p];
157
- try {
158
- const n = {
159
- prompt: l.prompt
160
- }, v = await s.generateCompletion(
161
- o.value,
162
- n
163
- );
164
- return Y(v.text, l.expectedResponse);
165
- } catch (n) {
166
- return {
167
- passed: !1,
168
- reason: `Error: ${n instanceof Error ? n.message : "An unknown error occurred"}`
169
- };
170
- }
171
- }, D = async (p) => {
172
- if (i.value || !o.value) return;
173
- const l = g.value[p];
174
- r.value = [], r.value.push({
175
- role: "user",
176
- content: `RUNNING TEST: ${l.name} (${C} iterations)`
177
- }), i.value = !0, t.value = "";
178
- try {
179
- const n = {
180
- passed: 0,
181
- total: C,
182
- runs: []
183
- };
184
- r.value.push({
185
- role: "assistant",
186
- content: `Running ${C} iterations of test "${l.name}"...`
187
- });
188
- for (let m = 0; m < C; m++) {
189
- m > 0 && (r.value[r.value.length - 1].content += `
190
- Running iteration ${m + 1}/${C}...`);
191
- const w = await K(p);
192
- n.runs.push(w), w.passed && n.passed++;
193
- }
194
- const v = {
195
- passed: n.passed >= $,
196
- reason: n.passed >= $ ? void 0 : `Only ${n.passed}/${C} runs passed (need at least ${$})`
197
- };
198
- f.value[p] = v, S.value[p] = n, r.value[r.value.length - 1].content = `Test "${l.name}" completed: ${n.passed}/${C} runs passed.
199
-
200
- ${v.passed ? "✓ OVERALL PASSED" : "✗ OVERALL FAILED"}
201
-
202
- Iteration Results:
203
- ` + n.runs.map(
204
- (m, w) => `Iteration ${w + 1}: ${m.passed ? "✓ PASSED" : "✗ FAILED"}${m.reason ? " - " + m.reason : ""}`
205
- ).join(`
206
- `), r.value[r.value.length - 1].testResult = v;
207
- } catch (n) {
208
- t.value = n instanceof Error ? n.message : "An unknown error occurred", f.value[p] = {
209
- passed: !1,
210
- reason: `Error: ${t.value}`
211
- };
212
- } finally {
213
- i.value = !1;
214
- }
215
- }, J = async () => {
216
- if (!(i.value || !o.value)) {
217
- L.value = !0, r.value = [], r.value.push({
218
- role: "user",
219
- content: "RUNNING ALL TESTS IN SEQUENCE (5 iterations each)"
220
- });
221
- try {
222
- for (let n = 0; n < g.value.length; n++)
223
- await D(n), n < g.value.length - 1 && await new Promise((v) => setTimeout(v, 500));
224
- const p = Object.values(f.value).filter((n) => n == null ? void 0 : n.passed).length, l = Object.values(f.value).filter(
225
- (n) => n && !n.passed
226
- ).length;
227
- r.value.push({
228
- role: "user",
229
- content: `ALL TESTS COMPLETED: ${p} passed, ${l} failed`
230
- });
231
- } catch (p) {
232
- t.value = p instanceof Error ? p.message : "An unknown error occurred";
233
- } finally {
234
- L.value = !1;
235
- }
236
- }
237
- };
238
- return Z(() => {
239
- E.value.length === 0 && (t.value = "No LLM connections found. Please add connections in the sidebar.");
240
- }), {
241
- messages: r,
242
- userInput: I,
243
- isLoading: i,
244
- isRunningAll: L,
245
- error: t,
246
- selectedProvider: o,
247
- availableProviders: E,
248
- isProviderSelected: k,
249
- messagesContainer: c,
250
- getConnectionStatus: W,
251
- sendPrompt: z,
252
- scenarios: g,
253
- runScenario: D,
254
- scenarioResults: f,
255
- testRunDetails: S,
256
- runAllScenarios: J
257
- };
258
- }
259
- }), ce = { class: "debug-container" }, ue = { class: "llm-chat-container" }, pe = { class: "connection-controls" }, me = { class: "provider-selector" }, ve = ["value"], he = { key: 0 }, fe = {
260
- key: 0,
261
- class: "error-message"
262
- }, ye = {
263
- class: "chat-messages",
264
- ref: "messagesContainer"
265
- }, ge = { class: "message-header" }, Ce = {
266
- key: 0,
267
- class: "model-info"
268
- }, be = { class: "message-content" }, Ie = {
269
- key: 0,
270
- class: "failure-reason"
271
- }, Se = { class: "input-container" }, we = ["disabled"], Le = ["disabled"], Re = { class: "scenarios-container" }, Te = { class: "section-header" }, $e = { class: "header-controls" }, ke = ["disabled"], Ae = {
272
- key: 0,
273
- class: "pass-indicator text-small"
274
- }, Pe = { class: "scenarios-list" }, Me = ["onClick"], Ee = { class: "scenario-name" }, Ne = { class: "scenario-description" }, _e = {
275
- key: 0,
276
- class: "scenario-result-indicator"
277
- }, Ue = {
278
- key: 0,
279
- class: "pass-indicator"
280
- }, Ve = {
281
- key: 1,
282
- class: "fail-indicator"
283
- }, Oe = {
284
- key: 1,
285
- class: "test-run-details"
286
- };
287
- function De(e, s, r, I, i, L) {
288
- return d(), u("div", ce, [
289
- a("div", ue, [
290
- s[6] || (s[6] = a("div", { class: "section-header" }, [
291
- N(" LLM Validation "),
292
- a("span", { class: "text-faint text-small" }, "Test that your LLM connection will deliver acceptable experience.")
293
- ], -1)),
294
- a("div", pe, [
295
- a("div", me, [
296
- s[5] || (s[5] = a("label", { for: "provider-select" }, "Provider:", -1)),
297
- B(a("select", {
298
- id: "provider-select",
299
- "onUpdate:modelValue": s[0] || (s[0] = (t) => e.selectedProvider = t)
300
- }, [
301
- (d(!0), u(U, null, V(e.availableProviders, (t) => (d(), u("option", {
302
- key: t,
303
- value: t
304
- }, [
305
- N(h(t) + " ", 1),
306
- e.getConnectionStatus(t) ? (d(), u("span", he, " (" + h(e.getConnectionStatus(t)) + ") ", 1)) : b("", !0)
307
- ], 8, ve))), 128))
308
- ], 512), [
309
- [x, e.selectedProvider]
310
- ]),
311
- a("span", {
312
- class: T(["status-indicator", e.getConnectionStatus(e.selectedProvider)])
313
- }, null, 2)
314
- ])
315
- ]),
316
- e.error ? (d(), u("div", fe, h(e.error), 1)) : b("", !0),
317
- a("div", ye, [
318
- (d(!0), u(U, null, V(e.messages, (t, c) => (d(), u("div", {
319
- key: c,
320
- class: T(["message", t.role])
321
- }, [
322
- a("div", ge, [
323
- a("strong", null, h(t.role === "user" ? "You" : "AI"), 1),
324
- t.role === "assistant" && t.modelInfo ? (d(), u("span", Ce, h(t.modelInfo.totalTokens) + " tokens ", 1)) : b("", !0)
325
- ]),
326
- a("div", be, [
327
- a("pre", null, h(t.content), 1)
328
- ]),
329
- t.testResult ? (d(), u("div", {
330
- key: 0,
331
- class: T(["test-result", t.testResult.passed ? "passed" : "failed"])
332
- }, [
333
- N(" Test: " + h(t.testResult.passed ? "PASSED ✓" : "FAILED ✗") + " ", 1),
334
- t.testResult.passed ? b("", !0) : (d(), u("div", Ie, h(t.testResult.reason), 1))
335
- ], 2)) : b("", !0)
336
- ], 2))), 128))
337
- ], 512),
338
- a("div", Se, [
339
- B(a("textarea", {
340
- "onUpdate:modelValue": s[1] || (s[1] = (t) => e.userInput = t),
341
- onKeydown: s[2] || (s[2] = ee(te((...t) => e.sendPrompt && e.sendPrompt(...t), ["ctrl"]), ["enter"])),
342
- placeholder: "Type your message here... (Ctrl+Enter to send)",
343
- disabled: e.isLoading || !e.isProviderSelected
344
- }, " ", 40, we), [
345
- [ne, e.userInput]
346
- ]),
347
- a("button", {
348
- onClick: s[3] || (s[3] = (...t) => e.sendPrompt && e.sendPrompt(...t)),
349
- disabled: e.isLoading || !e.userInput.trim() || !e.isProviderSelected
350
- }, h(e.isLoading ? "Sending..." : "Send"), 9, Le)
351
- ])
352
- ]),
353
- a("div", Re, [
354
- a("div", Te, [
355
- s[7] || (s[7] = N(" Test Scenarios ", -1)),
356
- a("div", $e, [
357
- a("button", {
358
- onClick: s[4] || (s[4] = (...t) => e.runAllScenarios && e.runAllScenarios(...t)),
359
- disabled: e.isLoading || !e.isProviderSelected,
360
- class: "run-all-button"
361
- }, h(e.isRunningAll ? "Running..." : "Run All Tests"), 9, ke),
362
- Object.values(e.scenarioResults).length == e.scenarios.length && Object.values(e.scenarioResults).every((t) => t == null ? void 0 : t.passed) ? (d(), u("span", Ae, "✓ All passed, LLM integration should meet expectations!")) : b("", !0)
363
- ])
364
- ]),
365
- a("div", Pe, [
366
- (d(!0), u(U, null, V(e.scenarios, (t, c) => {
367
- var f;
368
- return d(), u("div", {
369
- key: c,
370
- class: T(["scenario-item", { passed: (f = e.scenarioResults[c]) == null ? void 0 : f.passed }]),
371
- onClick: (S) => e.runScenario(c)
372
- }, [
373
- a("div", Ee, h(t.name), 1),
374
- a("div", Ne, h(t.description), 1),
375
- e.scenarioResults[c] ? (d(), u("div", _e, [
376
- e.scenarioResults[c].passed ? (d(), u("span", Ue, "✓")) : (d(), u("span", Ve, "✗"))
377
- ])) : b("", !0),
378
- e.testRunDetails[c] ? (d(), u("div", Oe, h(e.testRunDetails[c].passed) + "/5 runs passed ", 1)) : b("", !0)
379
- ], 10, Me);
380
- }), 128))
381
- ])
382
- ])
383
- ]);
384
- }
385
- const Fe = /* @__PURE__ */ Q(de, [["render", De], ["__scopeId", "data-v-28356d02"]]), Be = q({
386
- name: "LLMChatDebugComponent",
387
- components: {
388
- LLMChatSplitView: ie,
389
- LLMValidationView: Fe,
390
- DashboardImportSelector: ae
391
- },
392
- props: {
393
- initialProvider: {
394
- type: String,
395
- default: ""
396
- },
397
- initialModel: {
398
- type: String,
399
- default: ""
400
- },
401
- initialTab: {
402
- type: String,
403
- default: ""
404
- }
405
- },
406
- setup(e) {
407
- const s = R("llmConnectionStore"), r = R("connectionStore"), I = R("queryExecutionService"), i = R("chatStore"), L = R("editorStore"), t = R("navigationStore"), c = y(
408
- e.initialTab === "chat" || e.initialTab === "validation" ? e.initialTab : "chat"
409
- ), f = y(null), S = re({
410
- llmConnectionStore: s,
411
- connectionStore: r,
412
- queryExecutionService: I,
413
- chatStore: i,
414
- editorStore: L,
415
- navigationStore: t
416
- });
417
- M(
418
- () => e.initialTab,
419
- (o) => {
420
- (o === "chat" || o === "validation") && (c.value = o);
421
- }
422
- );
423
- const C = async () => {
424
- var g;
425
- const o = ((g = i == null ? void 0 : i.activeChat) == null ? void 0 : g.llmConnectionName) || s.activeConnection;
426
- if (o && s.getConnectionStatus(o) === "disabled")
427
- try {
428
- await s.resetConnection(o);
429
- } catch (k) {
430
- console.error("Failed to auto-connect LLM:", k);
431
- }
432
- }, $ = async () => {
433
- if (!r || !(i != null && i.activeChat)) return;
434
- const o = i.activeChat.dataConnectionName;
435
- if (!o) return;
436
- const g = r.connections[o];
437
- if (!g) return;
438
- if (r.connectionStateToStatus(g) === "disabled")
439
- try {
440
- await r.resetConnection(o);
441
- } catch (k) {
442
- console.error("Failed to auto-connect DB:", k);
443
- }
444
- };
445
- return M(
446
- () => c.value,
447
- (o) => {
448
- o === "chat" && (C(), $());
449
- },
450
- { immediate: !0 }
451
- ), i && (M(
452
- () => {
453
- var o;
454
- return (o = i == null ? void 0 : i.activeChat) == null ? void 0 : o.dataConnectionName;
455
- },
456
- (o) => {
457
- c.value === "chat" && o && $();
458
- }
459
- ), M(
460
- () => {
461
- var o;
462
- return (o = i == null ? void 0 : i.activeChat) == null ? void 0 : o.llmConnectionName;
463
- },
464
- (o) => {
465
- c.value === "chat" && o && C();
466
- }
467
- )), {
468
- activeView: c,
469
- chatSplitView: f,
470
- // Spread all chat composable returns
471
- ...S
472
- };
473
- }
474
- }), je = { class: "llm-view-container" }, Ge = { class: "view-tabs" }, qe = {
475
- key: 0,
476
- class: "chat-view"
477
- }, Qe = ["disabled"], We = {
478
- key: 0,
479
- class: "mdi mdi-auto-fix"
480
- }, Ye = {
481
- key: 1,
482
- class: "spinner"
483
- }, He = { class: "chat-header-controls" }, ze = {
484
- key: 1,
485
- class: "connection-info"
486
- };
487
- function Ke(e, s, r, I, i, L) {
488
- const t = O("dashboard-import-selector"), c = O("l-l-m-chat-split-view"), f = O("l-l-m-validation-view");
489
- return d(), u("div", je, [
490
- a("div", Ge, [
491
- a("button", {
492
- class: T(["view-tab", { active: e.activeView === "chat" }]),
493
- onClick: s[0] || (s[0] = (S) => e.activeView = "chat"),
494
- "data-testid": "llm-view-tab-chat"
495
- }, " Chat ", 2),
496
- a("button", {
497
- class: T(["view-tab", { active: e.activeView === "validation" }]),
498
- onClick: s[1] || (s[1] = (S) => e.activeView = "validation"),
499
- "data-testid": "llm-view-tab-validation"
500
- }, " Validation Tests ", 2)
501
- ]),
502
- e.activeView === "chat" ? (d(), u("div", qe, [
503
- se(c, {
504
- ref: "chatSplitView",
505
- title: e.activeChatTitle,
506
- editableTitle: !0,
507
- placeholder: "Ask about your data... (Enter to send)",
508
- systemPrompt: e.chatSystemPrompt,
509
- connectionInfo: e.chatConnectionInfo,
510
- availableImports: e.availableImportsForChat,
511
- activeImports: e.activeImportsForChat,
512
- symbols: e.chatSymbols,
513
- initialMessages: e.activeChatMessages,
514
- initialArtifacts: e.activeChatArtifacts,
515
- initialActiveArtifactIndex: e.activeChatArtifactIndex,
516
- externalLoading: e.isChatLoading,
517
- activeToolName: e.activeToolName,
518
- onSendMessage: e.handleChatMessageWithTools,
519
- "onUpdate:messages": e.handleMessagesUpdate,
520
- "onUpdate:artifacts": e.handleArtifactsUpdate,
521
- "onUpdate:activeArtifactIndex": e.handleActiveArtifactUpdate,
522
- onImportChange: e.handleImportChange,
523
- onTitleUpdate: e.handleTitleUpdate
524
- }, {
525
- "header-prefix": G(() => [
526
- a("button", {
527
- class: T(["auto-name-btn", { "is-loading": e.isGeneratingName }]),
528
- onClick: s[2] || (s[2] = (...S) => e.generateChatName && e.generateChatName(...S)),
529
- disabled: e.isGeneratingName || e.activeChatMessages.length === 0,
530
- title: "Auto-generate chat name",
531
- "data-testid": "auto-name-chat-btn"
532
- }, [
533
- e.isGeneratingName ? (d(), u("span", Ye)) : (d(), u("i", We))
534
- ], 10, Qe)
535
- ]),
536
- "header-actions": G(() => [
537
- a("div", He, [
538
- e.availableImportsForChat.length > 0 ? (d(), j(t, {
539
- key: 0,
540
- "available-imports": e.availableImportsForChat,
541
- "active-imports": e.activeImportsForChat,
542
- "onUpdate:imports": e.handleImportChange
543
- }, null, 8, ["available-imports", "active-imports", "onUpdate:imports"])) : b("", !0),
544
- e.chatConnectionInfo ? (d(), u("span", ze, h(e.chatConnectionInfo), 1)) : b("", !0)
545
- ])
546
- ]),
547
- _: 1
548
- }, 8, ["title", "systemPrompt", "connectionInfo", "availableImports", "activeImports", "symbols", "initialMessages", "initialArtifacts", "initialActiveArtifactIndex", "externalLoading", "activeToolName", "onSendMessage", "onUpdate:messages", "onUpdate:artifacts", "onUpdate:activeArtifactIndex", "onImportChange", "onTitleUpdate"])
549
- ])) : (d(), j(f, {
550
- key: 1,
551
- initialProvider: e.initialProvider
552
- }, null, 8, ["initialProvider"]))
553
- ]);
554
- }
555
- const Ze = /* @__PURE__ */ Q(Be, [["render", Ke], ["__scopeId", "data-v-abdcc6d5"]]);
556
- export {
557
- Ze as default
558
- };
@@ -1,4 +0,0 @@
1
- import { _ as f } from "./main-B7Jr4lF7.js";
2
- export {
3
- f as default
4
- };