@openapi-studio/core 0.6.1 → 0.6.2
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.
- package/dist/.vite/ssr-manifest.json +54 -54
- package/dist/assets/{Main-DLaaEfjT.js → Main-BVdXlm_a.js} +1 -1
- package/dist/assets/{NotFound-ClVtiz8o.js → NotFound-YperXA6K.js} +1 -1
- package/dist/assets/{SpecViewer-CLon8Jjc.js → SpecViewer-B5Bt4Dng.js} +1 -1
- package/dist/assets/{app-Du3aTlLj.js → app-B8WIou1H.js} +5 -5
- package/dist/assets/{file-text-C97pO3ap.js → file-text-C8VQy6Xm.js} +1 -1
- package/dist/assets/{styles-handler-D-oYLAal.js → styles-handler-DOO_1qy6.js} +1 -1
- package/dist/assets/{vanilla-jsoneditor-BX-6Z3ew.js → vanilla-jsoneditor-DZQ_XD_7.js} +1 -1
- package/dist/index.html +2 -2
- package/dist/openapi-studio-build.json +1 -1
- package/dist/spec.html +2 -2
- package/package.json +1 -1
|
@@ -645,75 +645,75 @@
|
|
|
645
645
|
"/assets/chivo-mono-latin-wght-normal-DXNvimoL.woff2"
|
|
646
646
|
],
|
|
647
647
|
"../node_modules/lucide-vue-next/dist/esm/Icon.js": [
|
|
648
|
-
"/assets/file-text-
|
|
648
|
+
"/assets/file-text-C8VQy6Xm.js"
|
|
649
649
|
],
|
|
650
650
|
"../node_modules/lucide-vue-next/dist/esm/createLucideIcon.js": [
|
|
651
|
-
"/assets/file-text-
|
|
651
|
+
"/assets/file-text-C8VQy6Xm.js"
|
|
652
652
|
],
|
|
653
653
|
"../node_modules/lucide-vue-next/dist/esm/defaultAttributes.js": [
|
|
654
|
-
"/assets/file-text-
|
|
654
|
+
"/assets/file-text-C8VQy6Xm.js"
|
|
655
655
|
],
|
|
656
656
|
"../node_modules/lucide-vue-next/dist/esm/icons/arrow-left.js": [
|
|
657
|
-
"/assets/SpecViewer-
|
|
657
|
+
"/assets/SpecViewer-B5Bt4Dng.js",
|
|
658
658
|
"/assets/SpecViewer-RnrGXg8h.css"
|
|
659
659
|
],
|
|
660
660
|
"../node_modules/lucide-vue-next/dist/esm/icons/chart-no-axes-column-increasing.js": [
|
|
661
|
-
"/assets/Main-
|
|
661
|
+
"/assets/Main-BVdXlm_a.js",
|
|
662
662
|
"/assets/Main-CBu902Yc.css"
|
|
663
663
|
],
|
|
664
664
|
"../node_modules/lucide-vue-next/dist/esm/icons/chevron-down.js": [
|
|
665
|
-
"/assets/Main-
|
|
665
|
+
"/assets/Main-BVdXlm_a.js",
|
|
666
666
|
"/assets/Main-CBu902Yc.css"
|
|
667
667
|
],
|
|
668
668
|
"../node_modules/lucide-vue-next/dist/esm/icons/chevron-left.js": [
|
|
669
|
-
"/assets/Main-
|
|
669
|
+
"/assets/Main-BVdXlm_a.js",
|
|
670
670
|
"/assets/Main-CBu902Yc.css"
|
|
671
671
|
],
|
|
672
672
|
"../node_modules/lucide-vue-next/dist/esm/icons/chevron-right.js": [
|
|
673
|
-
"/assets/Main-
|
|
673
|
+
"/assets/Main-BVdXlm_a.js",
|
|
674
674
|
"/assets/Main-CBu902Yc.css"
|
|
675
675
|
],
|
|
676
676
|
"../node_modules/lucide-vue-next/dist/esm/icons/copy.js": [
|
|
677
|
-
"/assets/Main-
|
|
677
|
+
"/assets/Main-BVdXlm_a.js",
|
|
678
678
|
"/assets/Main-CBu902Yc.css"
|
|
679
679
|
],
|
|
680
680
|
"../node_modules/lucide-vue-next/dist/esm/icons/download.js": [
|
|
681
|
-
"/assets/SpecViewer-
|
|
681
|
+
"/assets/SpecViewer-B5Bt4Dng.js",
|
|
682
682
|
"/assets/SpecViewer-RnrGXg8h.css"
|
|
683
683
|
],
|
|
684
684
|
"../node_modules/lucide-vue-next/dist/esm/icons/file-text.js": [
|
|
685
|
-
"/assets/file-text-
|
|
685
|
+
"/assets/file-text-C8VQy6Xm.js"
|
|
686
686
|
],
|
|
687
687
|
"../node_modules/lucide-vue-next/dist/esm/icons/github.js": [
|
|
688
|
-
"/assets/Main-
|
|
688
|
+
"/assets/Main-BVdXlm_a.js",
|
|
689
689
|
"/assets/Main-CBu902Yc.css"
|
|
690
690
|
],
|
|
691
691
|
"../node_modules/lucide-vue-next/dist/esm/icons/lock-open.js": [
|
|
692
|
-
"/assets/Main-
|
|
692
|
+
"/assets/Main-BVdXlm_a.js",
|
|
693
693
|
"/assets/Main-CBu902Yc.css"
|
|
694
694
|
],
|
|
695
695
|
"../node_modules/lucide-vue-next/dist/esm/icons/lock.js": [
|
|
696
|
-
"/assets/Main-
|
|
696
|
+
"/assets/Main-BVdXlm_a.js",
|
|
697
697
|
"/assets/Main-CBu902Yc.css"
|
|
698
698
|
],
|
|
699
699
|
"../node_modules/lucide-vue-next/dist/esm/icons/refresh-cw.js": [
|
|
700
|
-
"/assets/Main-
|
|
700
|
+
"/assets/Main-BVdXlm_a.js",
|
|
701
701
|
"/assets/Main-CBu902Yc.css"
|
|
702
702
|
],
|
|
703
703
|
"../node_modules/lucide-vue-next/dist/esm/icons/rocket.js": [
|
|
704
|
-
"/assets/Main-
|
|
704
|
+
"/assets/Main-BVdXlm_a.js",
|
|
705
705
|
"/assets/Main-CBu902Yc.css"
|
|
706
706
|
],
|
|
707
707
|
"../node_modules/lucide-vue-next/dist/esm/icons/x.js": [
|
|
708
|
-
"/assets/Main-
|
|
708
|
+
"/assets/Main-BVdXlm_a.js",
|
|
709
709
|
"/assets/Main-CBu902Yc.css"
|
|
710
710
|
],
|
|
711
711
|
"../node_modules/lucide-vue-next/dist/esm/icons/zap.js": [
|
|
712
|
-
"/assets/Main-
|
|
712
|
+
"/assets/Main-BVdXlm_a.js",
|
|
713
713
|
"/assets/Main-CBu902Yc.css"
|
|
714
714
|
],
|
|
715
715
|
"../node_modules/lucide-vue-next/dist/esm/shared/src/utils.js": [
|
|
716
|
-
"/assets/file-text-
|
|
716
|
+
"/assets/file-text-C8VQy6Xm.js"
|
|
717
717
|
],
|
|
718
718
|
"../node_modules/pinia/dist/pinia.mjs": [
|
|
719
719
|
"/assets/open-sans-cyrillic-ext-wght-normal-D8xHCTEw.woff2",
|
|
@@ -836,13 +836,13 @@
|
|
|
836
836
|
"/assets/chivo-mono-latin-wght-normal-DXNvimoL.woff2"
|
|
837
837
|
],
|
|
838
838
|
"../node_modules/vue3-ts-jsoneditor/dist/fortawesome.js": [
|
|
839
|
-
"/assets/vanilla-jsoneditor-
|
|
839
|
+
"/assets/vanilla-jsoneditor-DZQ_XD_7.js"
|
|
840
840
|
],
|
|
841
841
|
"../node_modules/vue3-ts-jsoneditor/dist/full-width-button-handler.js": [
|
|
842
842
|
"/assets/full-width-button-handler-oqK5S8oj.js"
|
|
843
843
|
],
|
|
844
844
|
"../node_modules/vue3-ts-jsoneditor/dist/immutable-json-patch.js": [
|
|
845
|
-
"/assets/vanilla-jsoneditor-
|
|
845
|
+
"/assets/vanilla-jsoneditor-DZQ_XD_7.js"
|
|
846
846
|
],
|
|
847
847
|
"../node_modules/vue3-ts-jsoneditor/dist/index.mjs": [
|
|
848
848
|
"/assets/open-sans-cyrillic-ext-wght-normal-D8xHCTEw.woff2",
|
|
@@ -860,40 +860,40 @@
|
|
|
860
860
|
"/assets/chivo-mono-latin-wght-normal-DXNvimoL.woff2"
|
|
861
861
|
],
|
|
862
862
|
"../node_modules/vue3-ts-jsoneditor/dist/jmespath.js": [
|
|
863
|
-
"/assets/vanilla-jsoneditor-
|
|
863
|
+
"/assets/vanilla-jsoneditor-DZQ_XD_7.js"
|
|
864
864
|
],
|
|
865
865
|
"../node_modules/vue3-ts-jsoneditor/dist/json-source-map.js": [
|
|
866
|
-
"/assets/vanilla-jsoneditor-
|
|
866
|
+
"/assets/vanilla-jsoneditor-DZQ_XD_7.js"
|
|
867
867
|
],
|
|
868
868
|
"../node_modules/vue3-ts-jsoneditor/dist/jsonpath-plus.js": [
|
|
869
|
-
"/assets/vanilla-jsoneditor-
|
|
869
|
+
"/assets/vanilla-jsoneditor-DZQ_XD_7.js"
|
|
870
870
|
],
|
|
871
871
|
"../node_modules/vue3-ts-jsoneditor/dist/jsonquerylang.js": [
|
|
872
|
-
"/assets/vanilla-jsoneditor-
|
|
872
|
+
"/assets/vanilla-jsoneditor-DZQ_XD_7.js"
|
|
873
873
|
],
|
|
874
874
|
"../node_modules/vue3-ts-jsoneditor/dist/jsonrepair.js": [
|
|
875
|
-
"/assets/vanilla-jsoneditor-
|
|
875
|
+
"/assets/vanilla-jsoneditor-DZQ_XD_7.js"
|
|
876
876
|
],
|
|
877
877
|
"../node_modules/vue3-ts-jsoneditor/dist/lodash-es.js": [
|
|
878
|
-
"/assets/vanilla-jsoneditor-
|
|
878
|
+
"/assets/vanilla-jsoneditor-DZQ_XD_7.js"
|
|
879
879
|
],
|
|
880
880
|
"../node_modules/vue3-ts-jsoneditor/dist/memoize-one.js": [
|
|
881
|
-
"/assets/vanilla-jsoneditor-
|
|
881
|
+
"/assets/vanilla-jsoneditor-DZQ_XD_7.js"
|
|
882
882
|
],
|
|
883
883
|
"../node_modules/vue3-ts-jsoneditor/dist/replit.js": [
|
|
884
|
-
"/assets/vanilla-jsoneditor-
|
|
884
|
+
"/assets/vanilla-jsoneditor-DZQ_XD_7.js"
|
|
885
885
|
],
|
|
886
886
|
"../node_modules/vue3-ts-jsoneditor/dist/string-styles.js": [
|
|
887
887
|
"/assets/string-styles-CIC5AFdR.js"
|
|
888
888
|
],
|
|
889
889
|
"../node_modules/vue3-ts-jsoneditor/dist/styles-handler.js": [
|
|
890
|
-
"/assets/styles-handler-
|
|
890
|
+
"/assets/styles-handler-DOO_1qy6.js"
|
|
891
891
|
],
|
|
892
892
|
"../node_modules/vue3-ts-jsoneditor/dist/vanilla-jsoneditor.js": [
|
|
893
|
-
"/assets/vanilla-jsoneditor-
|
|
893
|
+
"/assets/vanilla-jsoneditor-DZQ_XD_7.js"
|
|
894
894
|
],
|
|
895
895
|
"../node_modules/vue3-ts-jsoneditor/dist/vendor.js": [
|
|
896
|
-
"/assets/vanilla-jsoneditor-
|
|
896
|
+
"/assets/vanilla-jsoneditor-DZQ_XD_7.js"
|
|
897
897
|
],
|
|
898
898
|
"index.html": [
|
|
899
899
|
"/assets/open-sans-cyrillic-ext-wght-normal-D8xHCTEw.woff2",
|
|
@@ -986,51 +986,51 @@
|
|
|
986
986
|
"/assets/chivo-mono-latin-wght-normal-DXNvimoL.woff2"
|
|
987
987
|
],
|
|
988
988
|
"src/components/EndpointTester.vue": [
|
|
989
|
-
"/assets/Main-
|
|
989
|
+
"/assets/Main-BVdXlm_a.js",
|
|
990
990
|
"/assets/Main-CBu902Yc.css"
|
|
991
991
|
],
|
|
992
992
|
"src/components/EndpointTester.vue?vue&type=script&setup=true&lang.ts": [
|
|
993
|
-
"/assets/Main-
|
|
993
|
+
"/assets/Main-BVdXlm_a.js",
|
|
994
994
|
"/assets/Main-CBu902Yc.css"
|
|
995
995
|
],
|
|
996
996
|
"src/components/EndpointTester.vue?vue&type=style&index=0&scoped=04dc84cc&lang.scss": [
|
|
997
|
-
"/assets/Main-
|
|
997
|
+
"/assets/Main-BVdXlm_a.js",
|
|
998
998
|
"/assets/Main-CBu902Yc.css"
|
|
999
999
|
],
|
|
1000
1000
|
"src/components/SecuritySchemeMenu.vue": [
|
|
1001
|
-
"/assets/Main-
|
|
1001
|
+
"/assets/Main-BVdXlm_a.js",
|
|
1002
1002
|
"/assets/Main-CBu902Yc.css"
|
|
1003
1003
|
],
|
|
1004
1004
|
"src/components/SecuritySchemeMenu.vue?vue&type=script&setup=true&lang.ts": [
|
|
1005
|
-
"/assets/Main-
|
|
1005
|
+
"/assets/Main-BVdXlm_a.js",
|
|
1006
1006
|
"/assets/Main-CBu902Yc.css"
|
|
1007
1007
|
],
|
|
1008
1008
|
"src/components/SecuritySchemeMenu.vue?vue&type=style&index=0&scoped=b8c2be74&lang.scss": [
|
|
1009
|
-
"/assets/Main-
|
|
1009
|
+
"/assets/Main-BVdXlm_a.js",
|
|
1010
1010
|
"/assets/Main-CBu902Yc.css"
|
|
1011
1011
|
],
|
|
1012
1012
|
"src/components/ServiceHostPicker.vue": [
|
|
1013
|
-
"/assets/Main-
|
|
1013
|
+
"/assets/Main-BVdXlm_a.js",
|
|
1014
1014
|
"/assets/Main-CBu902Yc.css"
|
|
1015
1015
|
],
|
|
1016
1016
|
"src/components/ServiceHostPicker.vue?vue&type=script&setup=true&lang.ts": [
|
|
1017
|
-
"/assets/Main-
|
|
1017
|
+
"/assets/Main-BVdXlm_a.js",
|
|
1018
1018
|
"/assets/Main-CBu902Yc.css"
|
|
1019
1019
|
],
|
|
1020
1020
|
"src/components/ServiceHostPicker.vue?vue&type=style&index=0&scoped=2eb02fe1&lang.scss": [
|
|
1021
|
-
"/assets/Main-
|
|
1021
|
+
"/assets/Main-BVdXlm_a.js",
|
|
1022
1022
|
"/assets/Main-CBu902Yc.css"
|
|
1023
1023
|
],
|
|
1024
1024
|
"src/components/WelcomeServiceHostInput.vue": [
|
|
1025
|
-
"/assets/Main-
|
|
1025
|
+
"/assets/Main-BVdXlm_a.js",
|
|
1026
1026
|
"/assets/Main-CBu902Yc.css"
|
|
1027
1027
|
],
|
|
1028
1028
|
"src/components/WelcomeServiceHostInput.vue?vue&type=script&setup=true&lang.ts": [
|
|
1029
|
-
"/assets/Main-
|
|
1029
|
+
"/assets/Main-BVdXlm_a.js",
|
|
1030
1030
|
"/assets/Main-CBu902Yc.css"
|
|
1031
1031
|
],
|
|
1032
1032
|
"src/components/WelcomeServiceHostInput.vue?vue&type=style&index=0&scoped=d0cf2fc7&lang.scss": [
|
|
1033
|
-
"/assets/Main-
|
|
1033
|
+
"/assets/Main-BVdXlm_a.js",
|
|
1034
1034
|
"/assets/Main-CBu902Yc.css"
|
|
1035
1035
|
],
|
|
1036
1036
|
"src/composables/useConfigJson.ts": [
|
|
@@ -1124,7 +1124,7 @@
|
|
|
1124
1124
|
"/assets/chivo-mono-latin-wght-normal-DXNvimoL.woff2"
|
|
1125
1125
|
],
|
|
1126
1126
|
"src/stores/endpoint.ts": [
|
|
1127
|
-
"/assets/Main-
|
|
1127
|
+
"/assets/Main-BVdXlm_a.js",
|
|
1128
1128
|
"/assets/Main-CBu902Yc.css"
|
|
1129
1129
|
],
|
|
1130
1130
|
"src/stores/openapi.ts": [
|
|
@@ -1158,39 +1158,39 @@
|
|
|
1158
1158
|
"/assets/chivo-mono-latin-wght-normal-DXNvimoL.woff2"
|
|
1159
1159
|
],
|
|
1160
1160
|
"src/views/Main.vue": [
|
|
1161
|
-
"/assets/Main-
|
|
1161
|
+
"/assets/Main-BVdXlm_a.js",
|
|
1162
1162
|
"/assets/Main-CBu902Yc.css"
|
|
1163
1163
|
],
|
|
1164
1164
|
"src/views/Main.vue?vue&type=script&setup=true&lang.ts": [
|
|
1165
|
-
"/assets/Main-
|
|
1165
|
+
"/assets/Main-BVdXlm_a.js",
|
|
1166
1166
|
"/assets/Main-CBu902Yc.css"
|
|
1167
1167
|
],
|
|
1168
1168
|
"src/views/Main.vue?vue&type=style&index=0&lang.scss": [
|
|
1169
|
-
"/assets/Main-
|
|
1169
|
+
"/assets/Main-BVdXlm_a.js",
|
|
1170
1170
|
"/assets/Main-CBu902Yc.css"
|
|
1171
1171
|
],
|
|
1172
1172
|
"src/views/NotFound.vue": [
|
|
1173
|
-
"/assets/NotFound-
|
|
1173
|
+
"/assets/NotFound-YperXA6K.js",
|
|
1174
1174
|
"/assets/NotFound-DFzjKBQu.css"
|
|
1175
1175
|
],
|
|
1176
1176
|
"src/views/NotFound.vue?vue&type=script&setup=true&lang.ts": [
|
|
1177
|
-
"/assets/NotFound-
|
|
1177
|
+
"/assets/NotFound-YperXA6K.js",
|
|
1178
1178
|
"/assets/NotFound-DFzjKBQu.css"
|
|
1179
1179
|
],
|
|
1180
1180
|
"src/views/NotFound.vue?vue&type=style&index=0&scoped=94836b5f&lang.scss": [
|
|
1181
|
-
"/assets/NotFound-
|
|
1181
|
+
"/assets/NotFound-YperXA6K.js",
|
|
1182
1182
|
"/assets/NotFound-DFzjKBQu.css"
|
|
1183
1183
|
],
|
|
1184
1184
|
"src/views/SpecViewer.vue": [
|
|
1185
|
-
"/assets/SpecViewer-
|
|
1185
|
+
"/assets/SpecViewer-B5Bt4Dng.js",
|
|
1186
1186
|
"/assets/SpecViewer-RnrGXg8h.css"
|
|
1187
1187
|
],
|
|
1188
1188
|
"src/views/SpecViewer.vue?vue&type=script&setup=true&lang.ts": [
|
|
1189
|
-
"/assets/SpecViewer-
|
|
1189
|
+
"/assets/SpecViewer-B5Bt4Dng.js",
|
|
1190
1190
|
"/assets/SpecViewer-RnrGXg8h.css"
|
|
1191
1191
|
],
|
|
1192
1192
|
"src/views/SpecViewer.vue?vue&type=style&index=0&scoped=aa7d1028&lang.scss": [
|
|
1193
|
-
"/assets/SpecViewer-
|
|
1193
|
+
"/assets/SpecViewer-B5Bt4Dng.js",
|
|
1194
1194
|
"/assets/SpecViewer-RnrGXg8h.css"
|
|
1195
1195
|
]
|
|
1196
1196
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{d as Ge,r as A,c,a as Se,u as ge,w as le,o as Ve,b as Xe,e as s,f as t,g as e,h as p,i as se,j as R,t as _,k as m,F as ne,l as oe,m as ie,v as de,n as qe,p as j,_ as Be,q as Te,s as Fe,x as G,y as Ee,E as ke,z as Ue,A as Qe,B as Ye,C as Ze,D as et,G as tt,H as st,S as nt,U as ot,I as Ke}from"./app-Du3aTlLj.js";import{c as Z,F as Le}from"./file-text-C97pO3ap.js";const at=Z("chart-no-axes-column-increasing",[["path",{d:"M5 21v-6",key:"1hz6c0"}],["path",{d:"M12 21V9",key:"uvy0l4"}],["path",{d:"M19 21V3",key:"11j9sm"}]]);const He=Z("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);const je=Z("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);const _e=Z("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);const lt=Z("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);const it=Z("github",[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]]);const Ie=Z("lock-open",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 9.9-1",key:"1mm8w8"}]]);const ue=Z("lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]]);const rt=Z("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);const De=Z("rocket",[["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z",key:"m3kijz"}],["path",{d:"m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z",key:"1fmvmk"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0",key:"1f8sc4"}],["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}]]);const Ne=Z("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);const ct=Z("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]),Oe=Ge("endpoint",()=>{const te=A(null),u=A(null),S=A(null),k=A(!1),f=A([]),z=A(new Map),g=(i,y)=>!i||!y?null:`${y}:${i}`,x=c(()=>g(te.value,u.value)),K=c(()=>{const i=x.value;return i&&z.value.get(i)||null}),N=c(()=>!te.value||!u.value?[]:f.value.filter(i=>i.path===te.value&&i.method===u.value));function M(i,y){te.value=i,u.value=y}function E(i){S.value=i}function O(i){i===null||S.value===i?S.value=null:S.value=i}function P(){k.value=!k.value}function J(){k.value=!0}function C(){k.value=!1}function w(i,y,a){const r=g(i,y);r&&z.value.set(r,{...a})}function $(i,y){const a=g(i,y);if(!a)return null;const r=z.value.get(a)||null;return console.log("getEndpointFormState",a,r),r}function T(i,y){const a=g(i,y);a&&z.value.delete(a)}function W(i){f.value.unshift(i)}function I(i,y){f.value=f.value.filter(a=>!(a.path===i&&a.method===y))}function D(){f.value=[]}return{selectedPath:te,selectedMethod:u,selectedAuthScheme:S,authMenuOpen:k,requestHistory:f,endpointFormState:z,currentEndpointKey:x,currentFormState:K,filteredRequestHistory:N,setSelectedEndpoint:M,setSelectedAuthScheme:E,toggleSelectedAuthScheme:O,toggleAuthMenu:P,openAuthMenu:J,closeAuthMenu:C,saveEndpointFormState:w,getEndpointFormState:$,clearEndpointFormState:T,addRequestHistory:W,clearEndpointHistory:I,clearAllHistory:D,getEndpointKey:g}}),ut={class:"service-host-dropdown-wrapper"},dt={key:0,class:"service-host-selected"},vt={key:1,class:"service-host-placeholder"},pt={class:"service-host-list"},ht={key:0,class:"service-host-empty-state"},mt=["onClick"],yt={class:"service-host-item-content"},ft={class:"service-host-item-label"},_t={class:"service-host-item-url"},kt=["onClick"],St={class:"service-host-add-section"},gt={key:1,class:"service-host-add-form"},bt={class:"service-host-add-actions"},$t=["disabled"],Ct=Se({__name:"ServiceHostPicker",setup(te){const u=ge(),S=A(!1),k=A(!1),f=A(""),z=A(""),g=c(()=>u.serviceHosts),x=c(()=>u.selectedServiceHost),K=c(()=>x.value?.id||null),N=C=>C.label?C.label:C.baseUrl+(C.openApiPath?` (${C.openApiPath})`:""),M=async C=>{g.value.find($=>$.id===C)&&(await u.selectHost(C),S.value=!1)},E=async()=>{if(!f.value.trim())return;const C={id:crypto.randomUUID(),baseUrl:f.value.trim(),openApiPath:z.value.trim()||void 0};await u.addHost(C),await u.selectHost(C.id),f.value="",z.value="",k.value=!1,S.value=!1},O=()=>{k.value=!1,f.value="",z.value=""},P=async C=>{await u.removeHost(C)},J=C=>{C.target.closest(".service-host-dropdown-wrapper")||(S.value=!1)};return le(()=>u.serviceHosts,()=>{},{deep:!0}),Ve(async()=>{await u.loadConfigFromLocalStorage(),u.selectedServiceHost&&await u.loadOpenApiSpec(),document.addEventListener("click",J)}),Xe(()=>{document.removeEventListener("click",J)}),(C,w)=>(t(),s("div",ut,[e("div",{class:"service-host-dropdown",onClick:w[0]||(w[0]=se($=>S.value=!S.value,["stop"]))},[x.value?(t(),s("span",dt,_(N(x.value)),1)):(t(),s("span",vt,"Select service host")),R(m(He),{size:16,class:"service-host-chevron"})]),S.value?(t(),s("div",{key:0,class:"service-host-dropdown-menu",onClick:w[4]||(w[4]=se(()=>{},["stop"]))},[e("div",pt,[g.value.length===0?(t(),s("div",ht,[...w[5]||(w[5]=[e("p",{class:"service-host-empty-text"},"No service hosts yet",-1),e("p",{class:"service-host-empty-hint"},"Add one below to get started",-1)])])):p("",!0),(t(!0),s(ne,null,oe(g.value,$=>(t(),s("div",{key:$.id,class:j(["service-host-item",{selected:K.value===$.id}]),onClick:T=>M($.id)},[e("div",yt,[e("div",ft,_(N($)),1),e("div",_t,_($.baseUrl),1)]),e("button",{class:"service-host-item-remove",onClick:se(T=>P($.id),["stop"]),title:"Remove"},[R(m(Ne),{size:14})],8,kt)],10,mt))),128))]),e("div",St,[k.value?(t(),s("div",gt,[ie(e("input",{"onUpdate:modelValue":w[2]||(w[2]=$=>f.value=$),type:"text",placeholder:"Base URL (e.g., https://api.example.com)",class:"service-host-add-input",onKeyup:qe(E,["enter"])},null,544),[[de,f.value]]),ie(e("input",{"onUpdate:modelValue":w[3]||(w[3]=$=>z.value=$),type:"text",placeholder:"OpenAPI Path (optional, e.g., /openapi.json)",class:"service-host-add-input",onKeyup:qe(E,["enter"])},null,544),[[de,z.value]]),e("div",bt,[e("button",{onClick:E,class:"service-host-add-submit",disabled:!f.value.trim()}," Add ",8,$t),e("button",{onClick:O,class:"service-host-add-cancel"}," Cancel ")])])):(t(),s("button",{key:0,class:"service-host-add-btn",onClick:w[1]||(w[1]=$=>k.value=!0)}," + Add Service Host "))])])):p("",!0)]))}}),Je=Be(Ct,[["__scopeId","data-v-2eb02fe1"]]),wt={class:"endpoint-tester"},At={class:"endpoint-header"},xt={class:"endpoint-title"},Et={class:"endpoint-path"},qt={key:0,class:"endpoint-info"},Ht={key:0,class:"endpoint-summary-text"},Bt={key:1,class:"endpoint-description"},Rt={key:0,class:"security-schemes-wrapper"},Mt={class:"security-schemes-section"},Pt=["onClick"],zt={class:"scheme-name"},Tt={class:"request-section"},It={key:0,class:"params-section"},Ot={class:"params-list"},Ut={class:"param-name"},Kt={key:0,class:"required"},Lt={key:1,class:"param-desc"},jt=["onUpdate:modelValue","placeholder"],Vt={key:1,class:"params-section"},Ft={class:"params-list"},Dt={class:"param-name"},Nt={key:0,class:"required"},Jt={key:1,class:"param-desc"},Wt=["onUpdate:modelValue","placeholder"],Gt={key:2,class:"body-section"},Xt={class:"body-section-header"},Qt={class:"view-toggle"},Yt={key:0,class:"schema-display"},Zt={class:"schema-text"},es={key:1,class:"json-editor-wrapper"},ts=["disabled"],ss={class:"response-section"},ns={class:"section-header"},os={key:0,class:"no-response"},as={key:1,class:"no-response"},ls={key:2,class:"request-history-list"},is={class:"history-item-header"},rs={class:"history-item-title"},cs={class:"history-url"},us={class:"history-meta-group"},ds={key:0,class:"history-auth-scheme"},vs={key:1,class:"history-auth-scheme"},ps={class:"history-timestamp"},hs={class:"history-curl-section"},ms=["onClick"],ys={class:"curl-header-left"},fs=["onClick"],_s={key:0,class:"curl-command"},ks={key:0,class:"history-request-body"},Ss={class:"json-editor-wrapper"},gs={key:1,class:"history-error"},bs={class:"error-message"},$s={key:2,class:"history-response"},Cs={class:"json-editor-wrapper"},ws={class:"app-footer"},fe="__clerk_bearer__",As=Se({__name:"EndpointTester",setup(te){const u=Te(),S=Oe(),k=c(()=>S.selectedPath),f=c(()=>S.selectedMethod),z=ge(),g=!!(z.clerkPublishableKey&&z.clerkPublishableKey.trim());let x=null;if(g)try{x=Fe()}catch(d){console.warn("Failed to initialize Clerk auth:",d),x=null}const K=c(()=>{if(!x)return!1;try{return x.isSignedIn.value??!1}catch{return!1}}),N=x?.getToken?.value??(()=>Promise.resolve(null)),M=c(()=>{if(!x)return!1;try{return x.isLoaded.value??!1}catch{return!1}}),E=A({}),O=A({}),P=A(""),J=A(null),C=A(null),w=A(!1),$=A({}),T=A(new Set),W=A(!1),I=c(()=>S.selectedAuthScheme),D=c(()=>S.filteredRequestHistory),i=c(()=>!k.value||!f.value?null:u.getSelectedEndpoint(k.value,f.value));c(()=>!k.value||!f.value?null:u.endpoints.find(d=>d.path===k.value&&d.method===f.value));const y=c(()=>!i.value||!i.value.parameters?[]:i.value.parameters.map(u.resolveParameter).filter(d=>d!==null&&d.in==="path")),a=c(()=>!i.value||!i.value.parameters?[]:i.value.parameters.map(u.resolveParameter).filter(d=>d!==null&&d.in==="query")),r=c({get:()=>{if(!P.value.trim())return"{}";try{return P.value}catch{return"{}"}},set:d=>{P.value=d}}),q=c(()=>i.value?u.getRequestBodySchema(i.value):null),re=c(()=>!q.value||!u.openApiSpec?null:u.formatSchemaForDisplay(q.value,u.openApiSpec)),be=()=>{W.value=!W.value},$e=c(()=>u.securitySchemes),Ce=c(()=>i.value?u.getAvailableSecuritySchemes(i.value):[]),ve=c(()=>(i.value?Ce.value:$e.value).some(h=>h.scheme.type==="http"&&h.scheme.scheme==="bearer")),X=c(()=>{const d=i.value?[...Ce.value]:[...$e.value];return ve.value&&g&&(d.some(n=>n.name===fe)||d.push({name:fe,scheme:{type:"http",scheme:"bearer",description:"Clerk Bearer Authentication"}})),d}),pe=d=>u.endpointRequiresSecurity(d),me=d=>{S.toggleSelectedAuthScheme(d)},Re=d=>({GET:"#61affe",POST:"#49cc90",PUT:"#fca130",PATCH:"#50e3c2",DELETE:"#f93e3e"})[d]||"#999",we=async()=>{if(!k.value||!f.value)return;w.value=!0,J.value=null,C.value=null;const d={id:Date.now().toString()+Math.random().toString(36).substr(2,9),timestamp:new Date,method:f.value,path:k.value||"",url:"",requestBody:P.value.trim()?(()=>{try{return JSON.parse(P.value)}catch{return P.value}})():null,requestQuery:{...E.value},requestUrlParams:{...O.value},headers:{},response:null,responseError:null,authScheme:I.value||null};try{let n=`${z.serviceHost||""}${k.value}`;for(const[U,H]of Object.entries(O.value))H!==""&&H!=null&&(n=n.replace(`{${U}}`,encodeURIComponent(String(H))));const V=new URLSearchParams;for(const[U,H]of Object.entries(E.value))H!==""&&H!=null&&V.append(U,String(H));const L={"Content-Type":"application/json"};if(I.value===fe){if(K.value){M.value||await new Promise(H=>{const ee=setInterval(()=>{M.value&&(clearInterval(ee),H(void 0))},100)});const U=await N();U&&(L.Authorization=`Bearer ${U}`)}}else if(I.value&&u.openApiSpec?.components?.securitySchemes){const U=u.openApiSpec.components.securitySchemes[I.value];if(U&&typeof U=="object"&&!("$ref"in U)){const H=$.value[I.value];if(U.type==="apiKey"){const ee=U;H?.value&&(ee.in==="header"?L[ee.name]=H.value:ee.in==="query"&&V.append(ee.name,H.value))}else if(U.type==="http"){const ee=U;if(ee.scheme==="basic"){if(H?.username&&H?.password){const v=`${H.username}:${H.password}`;L.Authorization=`Basic ${btoa(v)}`}}else ee.scheme==="bearer"&&H?.token&&(L.Authorization=`Bearer ${H.token}`)}else U.type==="oauth2"?H?.accessToken&&(L.Authorization=`Bearer ${H.accessToken}`):U.type==="openIdConnect"&&H?.idToken&&(L.Authorization=`Bearer ${H.idToken}`)}}V.toString()&&(n+=`?${V.toString()}`),d.url=n,d.headers={...L};const Y={method:f.value,headers:L};if(["POST","PUT","PATCH"].includes(f.value)&&P.value.trim())try{Y.body=JSON.stringify(JSON.parse(P.value))}catch{const H="Invalid JSON in request body";C.value=H,d.responseError=H,S.addRequestHistory(d),w.value=!1;return}const B=await fetch(n,Y),F=B.headers.get("content-type");let ae;if(F?.includes("application/json"))ae={status:B.status,statusText:B.statusText,headers:Object.fromEntries(B.headers.entries()),body:await B.json()};else{const U=await B.text();ae={status:B.status,statusText:B.statusText,headers:Object.fromEntries(B.headers.entries()),body:U}}J.value=ae,d.response=ae,d.status=B.status,d.statusText=B.statusText}catch(h){const n=h instanceof Error?h.message:"Request failed";C.value=n,d.responseError=n}finally{w.value=!1,S.addRequestHistory(d)}},Ae=d=>{const h=["curl"];d.method!=="GET"&&h.push(`-X ${d.method}`);for(const[n,V]of Object.entries(d.headers||{})){const L=V.replace(/"/g,'\\"');h.push(`-H "${n}: ${L}"`)}if(["POST","PUT","PATCH"].includes(d.method)&&d.requestBody){const V=(typeof d.requestBody=="string"?d.requestBody:JSON.stringify(d.requestBody,null,2)).replace(/'/g,"'\\''").replace(/\n/g,"\\n");h.push(`-d '${V}'`)}return h.push(`"${d.url}"`),h.join(` \\
|
|
1
|
+
import{d as Ge,r as A,c,a as Se,u as ge,w as le,o as Ve,b as Xe,e as s,f as t,g as e,h as p,i as se,j as R,t as _,k as m,F as ne,l as oe,m as ie,v as de,n as qe,p as j,_ as Be,q as Te,s as Fe,x as G,y as Ee,E as ke,z as Ue,A as Qe,B as Ye,C as Ze,D as et,G as tt,H as st,S as nt,U as ot,I as Ke}from"./app-B8WIou1H.js";import{c as Z,F as Le}from"./file-text-C8VQy6Xm.js";const at=Z("chart-no-axes-column-increasing",[["path",{d:"M5 21v-6",key:"1hz6c0"}],["path",{d:"M12 21V9",key:"uvy0l4"}],["path",{d:"M19 21V3",key:"11j9sm"}]]);const He=Z("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);const je=Z("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);const _e=Z("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);const lt=Z("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);const it=Z("github",[["path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4",key:"tonef"}],["path",{d:"M9 18c-4.51 2-5-2-7-2",key:"9comsn"}]]);const Ie=Z("lock-open",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 9.9-1",key:"1mm8w8"}]]);const ue=Z("lock",[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]]);const rt=Z("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);const De=Z("rocket",[["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z",key:"m3kijz"}],["path",{d:"m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z",key:"1fmvmk"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0",key:"1f8sc4"}],["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}]]);const Ne=Z("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);const ct=Z("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]),Oe=Ge("endpoint",()=>{const te=A(null),u=A(null),S=A(null),k=A(!1),f=A([]),z=A(new Map),g=(i,y)=>!i||!y?null:`${y}:${i}`,x=c(()=>g(te.value,u.value)),K=c(()=>{const i=x.value;return i&&z.value.get(i)||null}),N=c(()=>!te.value||!u.value?[]:f.value.filter(i=>i.path===te.value&&i.method===u.value));function M(i,y){te.value=i,u.value=y}function E(i){S.value=i}function O(i){i===null||S.value===i?S.value=null:S.value=i}function P(){k.value=!k.value}function J(){k.value=!0}function C(){k.value=!1}function w(i,y,a){const r=g(i,y);r&&z.value.set(r,{...a})}function $(i,y){const a=g(i,y);if(!a)return null;const r=z.value.get(a)||null;return console.log("getEndpointFormState",a,r),r}function T(i,y){const a=g(i,y);a&&z.value.delete(a)}function W(i){f.value.unshift(i)}function I(i,y){f.value=f.value.filter(a=>!(a.path===i&&a.method===y))}function D(){f.value=[]}return{selectedPath:te,selectedMethod:u,selectedAuthScheme:S,authMenuOpen:k,requestHistory:f,endpointFormState:z,currentEndpointKey:x,currentFormState:K,filteredRequestHistory:N,setSelectedEndpoint:M,setSelectedAuthScheme:E,toggleSelectedAuthScheme:O,toggleAuthMenu:P,openAuthMenu:J,closeAuthMenu:C,saveEndpointFormState:w,getEndpointFormState:$,clearEndpointFormState:T,addRequestHistory:W,clearEndpointHistory:I,clearAllHistory:D,getEndpointKey:g}}),ut={class:"service-host-dropdown-wrapper"},dt={key:0,class:"service-host-selected"},vt={key:1,class:"service-host-placeholder"},pt={class:"service-host-list"},ht={key:0,class:"service-host-empty-state"},mt=["onClick"],yt={class:"service-host-item-content"},ft={class:"service-host-item-label"},_t={class:"service-host-item-url"},kt=["onClick"],St={class:"service-host-add-section"},gt={key:1,class:"service-host-add-form"},bt={class:"service-host-add-actions"},$t=["disabled"],Ct=Se({__name:"ServiceHostPicker",setup(te){const u=ge(),S=A(!1),k=A(!1),f=A(""),z=A(""),g=c(()=>u.serviceHosts),x=c(()=>u.selectedServiceHost),K=c(()=>x.value?.id||null),N=C=>C.label?C.label:C.baseUrl+(C.openApiPath?` (${C.openApiPath})`:""),M=async C=>{g.value.find($=>$.id===C)&&(await u.selectHost(C),S.value=!1)},E=async()=>{if(!f.value.trim())return;const C={id:crypto.randomUUID(),baseUrl:f.value.trim(),openApiPath:z.value.trim()||void 0};await u.addHost(C),await u.selectHost(C.id),f.value="",z.value="",k.value=!1,S.value=!1},O=()=>{k.value=!1,f.value="",z.value=""},P=async C=>{await u.removeHost(C)},J=C=>{C.target.closest(".service-host-dropdown-wrapper")||(S.value=!1)};return le(()=>u.serviceHosts,()=>{},{deep:!0}),Ve(async()=>{await u.loadConfigFromLocalStorage(),u.selectedServiceHost&&await u.loadOpenApiSpec(),document.addEventListener("click",J)}),Xe(()=>{document.removeEventListener("click",J)}),(C,w)=>(t(),s("div",ut,[e("div",{class:"service-host-dropdown",onClick:w[0]||(w[0]=se($=>S.value=!S.value,["stop"]))},[x.value?(t(),s("span",dt,_(N(x.value)),1)):(t(),s("span",vt,"Select service host")),R(m(He),{size:16,class:"service-host-chevron"})]),S.value?(t(),s("div",{key:0,class:"service-host-dropdown-menu",onClick:w[4]||(w[4]=se(()=>{},["stop"]))},[e("div",pt,[g.value.length===0?(t(),s("div",ht,[...w[5]||(w[5]=[e("p",{class:"service-host-empty-text"},"No service hosts yet",-1),e("p",{class:"service-host-empty-hint"},"Add one below to get started",-1)])])):p("",!0),(t(!0),s(ne,null,oe(g.value,$=>(t(),s("div",{key:$.id,class:j(["service-host-item",{selected:K.value===$.id}]),onClick:T=>M($.id)},[e("div",yt,[e("div",ft,_(N($)),1),e("div",_t,_($.baseUrl),1)]),e("button",{class:"service-host-item-remove",onClick:se(T=>P($.id),["stop"]),title:"Remove"},[R(m(Ne),{size:14})],8,kt)],10,mt))),128))]),e("div",St,[k.value?(t(),s("div",gt,[ie(e("input",{"onUpdate:modelValue":w[2]||(w[2]=$=>f.value=$),type:"text",placeholder:"Base URL (e.g., https://api.example.com)",class:"service-host-add-input",onKeyup:qe(E,["enter"])},null,544),[[de,f.value]]),ie(e("input",{"onUpdate:modelValue":w[3]||(w[3]=$=>z.value=$),type:"text",placeholder:"OpenAPI Path (optional, e.g., /openapi.json)",class:"service-host-add-input",onKeyup:qe(E,["enter"])},null,544),[[de,z.value]]),e("div",bt,[e("button",{onClick:E,class:"service-host-add-submit",disabled:!f.value.trim()}," Add ",8,$t),e("button",{onClick:O,class:"service-host-add-cancel"}," Cancel ")])])):(t(),s("button",{key:0,class:"service-host-add-btn",onClick:w[1]||(w[1]=$=>k.value=!0)}," + Add Service Host "))])])):p("",!0)]))}}),Je=Be(Ct,[["__scopeId","data-v-2eb02fe1"]]),wt={class:"endpoint-tester"},At={class:"endpoint-header"},xt={class:"endpoint-title"},Et={class:"endpoint-path"},qt={key:0,class:"endpoint-info"},Ht={key:0,class:"endpoint-summary-text"},Bt={key:1,class:"endpoint-description"},Rt={key:0,class:"security-schemes-wrapper"},Mt={class:"security-schemes-section"},Pt=["onClick"],zt={class:"scheme-name"},Tt={class:"request-section"},It={key:0,class:"params-section"},Ot={class:"params-list"},Ut={class:"param-name"},Kt={key:0,class:"required"},Lt={key:1,class:"param-desc"},jt=["onUpdate:modelValue","placeholder"],Vt={key:1,class:"params-section"},Ft={class:"params-list"},Dt={class:"param-name"},Nt={key:0,class:"required"},Jt={key:1,class:"param-desc"},Wt=["onUpdate:modelValue","placeholder"],Gt={key:2,class:"body-section"},Xt={class:"body-section-header"},Qt={class:"view-toggle"},Yt={key:0,class:"schema-display"},Zt={class:"schema-text"},es={key:1,class:"json-editor-wrapper"},ts=["disabled"],ss={class:"response-section"},ns={class:"section-header"},os={key:0,class:"no-response"},as={key:1,class:"no-response"},ls={key:2,class:"request-history-list"},is={class:"history-item-header"},rs={class:"history-item-title"},cs={class:"history-url"},us={class:"history-meta-group"},ds={key:0,class:"history-auth-scheme"},vs={key:1,class:"history-auth-scheme"},ps={class:"history-timestamp"},hs={class:"history-curl-section"},ms=["onClick"],ys={class:"curl-header-left"},fs=["onClick"],_s={key:0,class:"curl-command"},ks={key:0,class:"history-request-body"},Ss={class:"json-editor-wrapper"},gs={key:1,class:"history-error"},bs={class:"error-message"},$s={key:2,class:"history-response"},Cs={class:"json-editor-wrapper"},ws={class:"app-footer"},fe="__clerk_bearer__",As=Se({__name:"EndpointTester",setup(te){const u=Te(),S=Oe(),k=c(()=>S.selectedPath),f=c(()=>S.selectedMethod),z=ge(),g=!!(z.clerkPublishableKey&&z.clerkPublishableKey.trim());let x=null;if(g)try{x=Fe()}catch(d){console.warn("Failed to initialize Clerk auth:",d),x=null}const K=c(()=>{if(!x)return!1;try{return x.isSignedIn.value??!1}catch{return!1}}),N=x?.getToken?.value??(()=>Promise.resolve(null)),M=c(()=>{if(!x)return!1;try{return x.isLoaded.value??!1}catch{return!1}}),E=A({}),O=A({}),P=A(""),J=A(null),C=A(null),w=A(!1),$=A({}),T=A(new Set),W=A(!1),I=c(()=>S.selectedAuthScheme),D=c(()=>S.filteredRequestHistory),i=c(()=>!k.value||!f.value?null:u.getSelectedEndpoint(k.value,f.value));c(()=>!k.value||!f.value?null:u.endpoints.find(d=>d.path===k.value&&d.method===f.value));const y=c(()=>!i.value||!i.value.parameters?[]:i.value.parameters.map(u.resolveParameter).filter(d=>d!==null&&d.in==="path")),a=c(()=>!i.value||!i.value.parameters?[]:i.value.parameters.map(u.resolveParameter).filter(d=>d!==null&&d.in==="query")),r=c({get:()=>{if(!P.value.trim())return"{}";try{return P.value}catch{return"{}"}},set:d=>{P.value=d}}),q=c(()=>i.value?u.getRequestBodySchema(i.value):null),re=c(()=>!q.value||!u.openApiSpec?null:u.formatSchemaForDisplay(q.value,u.openApiSpec)),be=()=>{W.value=!W.value},$e=c(()=>u.securitySchemes),Ce=c(()=>i.value?u.getAvailableSecuritySchemes(i.value):[]),ve=c(()=>(i.value?Ce.value:$e.value).some(h=>h.scheme.type==="http"&&h.scheme.scheme==="bearer")),X=c(()=>{const d=i.value?[...Ce.value]:[...$e.value];return ve.value&&g&&(d.some(n=>n.name===fe)||d.push({name:fe,scheme:{type:"http",scheme:"bearer",description:"Clerk Bearer Authentication"}})),d}),pe=d=>u.endpointRequiresSecurity(d),me=d=>{S.toggleSelectedAuthScheme(d)},Re=d=>({GET:"#61affe",POST:"#49cc90",PUT:"#fca130",PATCH:"#50e3c2",DELETE:"#f93e3e"})[d]||"#999",we=async()=>{if(!k.value||!f.value)return;w.value=!0,J.value=null,C.value=null;const d={id:Date.now().toString()+Math.random().toString(36).substr(2,9),timestamp:new Date,method:f.value,path:k.value||"",url:"",requestBody:P.value.trim()?(()=>{try{return JSON.parse(P.value)}catch{return P.value}})():null,requestQuery:{...E.value},requestUrlParams:{...O.value},headers:{},response:null,responseError:null,authScheme:I.value||null};try{let n=`${z.serviceHost||""}${k.value}`;for(const[U,H]of Object.entries(O.value))H!==""&&H!=null&&(n=n.replace(`{${U}}`,encodeURIComponent(String(H))));const V=new URLSearchParams;for(const[U,H]of Object.entries(E.value))H!==""&&H!=null&&V.append(U,String(H));const L={"Content-Type":"application/json"};if(I.value===fe){if(K.value){M.value||await new Promise(H=>{const ee=setInterval(()=>{M.value&&(clearInterval(ee),H(void 0))},100)});const U=await N();U&&(L.Authorization=`Bearer ${U}`)}}else if(I.value&&u.openApiSpec?.components?.securitySchemes){const U=u.openApiSpec.components.securitySchemes[I.value];if(U&&typeof U=="object"&&!("$ref"in U)){const H=$.value[I.value];if(U.type==="apiKey"){const ee=U;H?.value&&(ee.in==="header"?L[ee.name]=H.value:ee.in==="query"&&V.append(ee.name,H.value))}else if(U.type==="http"){const ee=U;if(ee.scheme==="basic"){if(H?.username&&H?.password){const v=`${H.username}:${H.password}`;L.Authorization=`Basic ${btoa(v)}`}}else ee.scheme==="bearer"&&H?.token&&(L.Authorization=`Bearer ${H.token}`)}else U.type==="oauth2"?H?.accessToken&&(L.Authorization=`Bearer ${H.accessToken}`):U.type==="openIdConnect"&&H?.idToken&&(L.Authorization=`Bearer ${H.idToken}`)}}V.toString()&&(n+=`?${V.toString()}`),d.url=n,d.headers={...L};const Y={method:f.value,headers:L};if(["POST","PUT","PATCH"].includes(f.value)&&P.value.trim())try{Y.body=JSON.stringify(JSON.parse(P.value))}catch{const H="Invalid JSON in request body";C.value=H,d.responseError=H,S.addRequestHistory(d),w.value=!1;return}const B=await fetch(n,Y),F=B.headers.get("content-type");let ae;if(F?.includes("application/json"))ae={status:B.status,statusText:B.statusText,headers:Object.fromEntries(B.headers.entries()),body:await B.json()};else{const U=await B.text();ae={status:B.status,statusText:B.statusText,headers:Object.fromEntries(B.headers.entries()),body:U}}J.value=ae,d.response=ae,d.status=B.status,d.statusText=B.statusText}catch(h){const n=h instanceof Error?h.message:"Request failed";C.value=n,d.responseError=n}finally{w.value=!1,S.addRequestHistory(d)}},Ae=d=>{const h=["curl"];d.method!=="GET"&&h.push(`-X ${d.method}`);for(const[n,V]of Object.entries(d.headers||{})){const L=V.replace(/"/g,'\\"');h.push(`-H "${n}: ${L}"`)}if(["POST","PUT","PATCH"].includes(d.method)&&d.requestBody){const V=(typeof d.requestBody=="string"?d.requestBody:JSON.stringify(d.requestBody,null,2)).replace(/'/g,"'\\''").replace(/\n/g,"\\n");h.push(`-d '${V}'`)}return h.push(`"${d.url}"`),h.join(` \\
|
|
2
2
|
`)},Me=async d=>{const h=Ae(d);try{await navigator.clipboard.writeText(h)}catch(n){console.error("Failed to copy to clipboard:",n)}},ye=()=>{!k.value||!f.value||S.clearEndpointHistory(k.value,f.value)},Pe=()=>{!k.value||!f.value||S.saveEndpointFormState(k.value,f.value,{requestQuery:{...E.value},requestUrlParams:{...O.value},requestBody:P.value,selectedAuthScheme:I.value})};return le([k,f],([d,h],[n,V])=>{if(d!==n||h!==V){J.value=null,C.value=null,T.value.clear();const L=S.getEndpointFormState(d||"",h||""),Y=!!L;if(Y&&L?(E.value={...L.requestQuery},O.value={...L.requestUrlParams},P.value=L.requestBody,S.setSelectedAuthScheme(L.selectedAuthScheme)):(E.value={},O.value={},P.value="",S.setSelectedAuthScheme(null)),i.value?.parameters)for(const B of i.value.parameters){const F=u.resolveParameter(B);F&&F.in==="query"?(!Y||!(F.name in E.value))&&(E.value[F.name]=""):F&&F.in==="path"&&(!Y||!(F.name in O.value))&&(O.value[F.name]="")}else Y||(E.value={},O.value={});if(!Y&&i.value?.requestBody){let B=i.value.requestBody;if(B&&typeof B=="object"&&"$ref"in B&&B.$ref&&u.openApiSpec){const F=u.resolveReference(B.$ref,u.openApiSpec);F&&typeof F=="object"&&(B=F)}if(B&&typeof B=="object"&&"content"in B&&B.content){const F=B.content["application/json"];if(F?.schema&&u.openApiSpec){const ae=u.generateExampleFromSchema(F.schema,u.openApiSpec);P.value=JSON.stringify(ae||{},null,2)}else P.value=JSON.stringify({},null,2)}}else Y||(P.value="")}},{immediate:!0}),le([E,O,P,I],()=>{k.value&&f.value&&Pe()},{deep:!0}),(d,h)=>(t(),s("main",wt,[e("div",At,[e("div",xt,[e("span",{class:"method-badge large",style:Ee({backgroundColor:Re(f.value||"")})},_(f.value),5),e("span",Et,_(k.value),1),i.value&&pe(i.value)?(t(),G(m(ue),{key:0,size:18,class:"security-indicator-large",title:"Requires authentication"})):p("",!0)]),i.value&&(i.value.summary||i.value.description)?(t(),s("div",qt,[i.value.summary?(t(),s("p",Ht,_(i.value.summary),1)):p("",!0),i.value.description?(t(),s("p",Bt,_(i.value.description),1)):p("",!0)])):p("",!0)]),X.value.length>0?(t(),s("div",Rt,[h[1]||(h[1]=e("h4",{class:"security-schemes-title"},"Security Schemes",-1)),e("div",Mt,[(t(!0),s(ne,null,oe(X.value,n=>(t(),s("div",{key:n.name,class:j(["security-scheme-card",{selected:I.value===n.name}]),onClick:V=>me(n.name)},[R(m(ue),{size:12,class:"security-card-icon"}),e("span",zt,_(n.name===fe?"Clerk Bearer":n.name),1)],10,Pt))),128))])])):p("",!0),e("div",Tt,[h[5]||(h[5]=e("h3",null,"Request",-1)),y.value.length>0?(t(),s("div",It,[h[2]||(h[2]=e("h4",null,"Path Parameters",-1)),e("dl",Ot,[(t(!0),s(ne,null,oe(y.value,n=>(t(),s("div",{key:n.name,class:"param-item"},[e("dt",null,[e("span",Ut,_(n.name),1),n.required?(t(),s("span",Kt,"*")):p("",!0),n.description?(t(),s("span",Lt," - "+_(n.description),1)):p("",!0)]),e("dd",null,[ie(e("input",{"onUpdate:modelValue":V=>O.value[n.name]=V,type:"text",placeholder:n.schema&&"default"in n.schema?String(n.schema.default):""},null,8,jt),[[de,O.value[n.name]]])])]))),128))])])):p("",!0),a.value.length>0?(t(),s("div",Vt,[h[3]||(h[3]=e("h4",null,"Query Parameters",-1)),e("dl",Ft,[(t(!0),s(ne,null,oe(a.value,n=>(t(),s("div",{key:n.name,class:"param-item"},[e("dt",null,[e("span",Dt,_(n.name),1),n.required?(t(),s("span",Nt,"*")):p("",!0),n.description?(t(),s("span",Jt," - "+_(n.description),1)):p("",!0)]),e("dd",null,[ie(e("input",{"onUpdate:modelValue":V=>E.value[n.name]=V,type:"text",placeholder:n.schema&&"default"in n.schema?String(n.schema.default):""},null,8,Wt),[[de,E.value[n.name]]])])]))),128))])])):p("",!0),i.value&&i.value.requestBody?(t(),s("div",Gt,[e("div",Xt,[h[4]||(h[4]=e("h4",null,"Request Body",-1)),e("div",Qt,[e("button",{onClick:be,class:j([{active:!W.value},"toggle-btn small"])}," Edit ",2),e("button",{onClick:be,class:j([{active:W.value},"toggle-btn small"])}," Schema ",2)])]),W.value&&re.value?(t(),s("div",Yt,[e("pre",Zt,_(re.value),1)])):W.value?p("",!0):(t(),s("div",es,[R(m(ke),{text:r.value,"onUpdate:text":h[0]||(h[0]=n=>r.value=n),mode:"text",mainMenuBar:!1,navigationBar:!1,statusBar:!1,darkTheme:!0},null,8,["text"])]))])):p("",!0),e("button",{onClick:we,class:"send-button",disabled:w.value},[R(m(De),{size:16,class:"send-button-icon"}),e("span",null,_(w.value?"Sending...":"Send Request"),1)],8,ts)]),e("div",ss,[e("div",ns,[h[6]||(h[6]=e("h3",null,"Request History",-1)),D.value.length>0?(t(),s("button",{key:0,onClick:ye,class:"clear-history-btn"}," Clear History ")):p("",!0)]),!k.value||!f.value?(t(),s("div",os," Select an endpoint to view request history. ")):D.value.length===0?(t(),s("div",as,' No requests sent yet. Click "Send Request" to test the endpoint. ')):(t(),s("div",ls,[(t(!0),s(ne,null,oe(D.value,n=>(t(),s("div",{key:n.id,class:"history-item"},[e("div",is,[e("div",rs,[e("span",{class:j(["status-code",{success:n.status&&n.status>=200&&n.status<300,error:n.status&&n.status>=400,redirect:n.status&&n.status>=300&&n.status<400}])},_(n.status||"N/A"),3),e("span",cs,_(n.url),1)]),e("div",us,[n.authScheme?(t(),s("span",ds,[R(m(ue),{size:12}),Ue(" "+_(n.authScheme===fe?"Clerk Bearer":n.authScheme),1)])):(t(),s("span",vs,[R(m(Ie),{size:12}),h[7]||(h[7]=Ue(" Anonymous ",-1))])),e("span",ps,_(new Date(n.timestamp).toLocaleTimeString()),1)])]),e("div",hs,[e("div",{class:"curl-header",onClick:V=>T.value.has(n.id)?T.value.delete(n.id):T.value.add(n.id)},[e("div",ys,[T.value.has(n.id)?(t(),G(m(He),{key:0,size:16,class:"curl-toggle-icon"})):(t(),G(m(_e),{key:1,size:16,class:"curl-toggle-icon"})),h[8]||(h[8]=e("h5",null,"cURL Command",-1))]),e("button",{onClick:se(V=>Me(n),["stop"]),class:"copy-curl-btn",title:"Copy cURL command"},[R(m(lt),{size:16}),h[9]||(h[9]=e("span",null,"Copy",-1))],8,fs)],8,ms),T.value.has(n.id)?(t(),s("div",_s,[e("pre",null,_(Ae(n)),1)])):p("",!0)]),n.requestBody?(t(),s("div",ks,[h[10]||(h[10]=e("h5",null,"Request Body",-1)),e("div",Ss,[R(m(ke),{"model-value":n.requestBody,mode:"text",readOnly:!0,mainMenuBar:!1,navigationBar:!1,statusBar:!1,darkTheme:!0},null,8,["model-value"])])])):p("",!0),n.responseError?(t(),s("div",gs,[h[11]||(h[11]=e("h5",null,"Error",-1)),e("div",bs,_(n.responseError),1)])):n.response?(t(),s("div",$s,[h[12]||(h[12]=e("h5",null,"Response",-1)),e("div",Cs,[R(m(ke),{"model-value":(()=>{if(typeof n.response.body=="string")try{return JSON.parse(n.response.body)}catch{return{text:n.response.body}}return n.response.body||{}})(),mode:"text",readOnly:!0,mainMenuBar:!1,navigationBar:!1,statusBar:!1,darkTheme:!0},null,8,["model-value"])])])):p("",!0)]))),128))]))]),e("footer",ws,[e("p",null,"© "+_(new Date().getFullYear())+" Gamja Labs",1)])]))}}),xs=Be(As,[["__scopeId","data-v-04dc84cc"]]),Es={key:0,class:"auth-side-menu"},qs={class:"auth-menu-header"},Hs={class:"auth-menu-content"},Bs={class:"auth-scheme-header"},Rs={style:{display:"flex","align-items":"center",gap:"0.5rem"}},Ms={class:"auth-scheme-header"},Ps={style:{display:"flex","align-items":"center",gap:"0.5rem"}},zs=["onClick"],Ts={class:"auth-scheme-header"},Is={style:{display:"flex","align-items":"center",gap:"0.5rem"}},Os={class:"auth-scheme-type"},Us={key:0,class:"auth-scheme-description"},Ks={class:"field-location"},Ls=["value","onInput","placeholder"],js=["onClick"],Vs=["value","onInput"],Fs=["value","onInput"],Ds=["onClick"],Ns=["value","onInput"],Js=["onClick"],Ws=["value","onInput"],Gs=["onClick"],Xs=["value","onInput"],Qs=["onClick"],Ys={key:1,class:"clerk-key-card"},Zs={class:"clerk-key-description"},en={key:0},tn={key:1},sn={class:"clerk-key-fields"},nn=["disabled"],ze="__clerk_bearer__",on=Se({__name:"SecuritySchemeMenu",setup(te,{expose:u}){const S=Te(),k=Oe(),f=ge(),z=Qe(),g=c(()=>!!(f.clerkPublishableKey&&f.clerkPublishableKey.trim())),x=c(()=>S.securitySchemes),K=c(()=>k.selectedAuthScheme),N=c(()=>k.authMenuOpen),M=A({});c(()=>{if(!K.value)return"Anonymous";if(K.value===ze)return"Clerk Bearer";const y=x.value.find(a=>a.name===K.value);return y?y.name:"Anonymous"});const E=c(()=>f.selectedServiceHost),O=A("");le(E,y=>{O.value=y?.clerkPublishableKey||""},{immediate:!0});const P=c(()=>!!E.value?.clerkPublishableKey?.trim()),J=c(()=>{const y=C.value;return y==="config.json"||y==="env"}),C=c(()=>{const y=f.clerkPublishableKey,a=void 0,r=f.config;return E.value?.clerkPublishableKey?"serviceHost":y&&r.clerkPublishableKey===y&&y!==a?"config.json":y&&y===a?"env":null}),w=c(()=>{const y=C.value;return y==="config.json"?`Key loaded from ${z.getConfigJsonPath()}`:y==="env"?"Key loaded from environment variable":y==="serviceHost"?"Key stored with service host":null}),$=(y,a,r)=>{M.value[y]||(M.value[y]={}),M.value[y][a]=r},T=y=>{delete M.value[y]},W=y=>{k.toggleSelectedAuthScheme(y)},I=()=>{E.value&&(f.saveClerkPublishableKeyForSelectedHost(O.value),typeof window<"u"&&window.location.reload())},D=()=>{E.value&&(f.clearClerkPublishableKeyForSelectedHost(),typeof window<"u"&&window.location.reload())},i=()=>{k.closeAuthMenu()};return u({authCredentials:M}),(y,a)=>N.value?(t(),s("aside",Es,[e("div",qs,[a[8]||(a[8]=e("h2",null,"Security Scheme",-1)),e("button",{onClick:i,class:"close-auth-menu",title:"Close"},[R(m(Ne),{size:20})])]),e("div",Hs,[e("div",{class:j(["auth-scheme anonymous-option",{selected:K.value===null}]),onClick:a[0]||(a[0]=r=>W(null))},[e("div",Bs,[e("div",Rs,[R(m(Ie),{size:18}),a[9]||(a[9]=e("h3",null,"Anonymous",-1))]),a[10]||(a[10]=e("span",{class:"auth-scheme-type"},"NONE",-1))]),a[11]||(a[11]=e("div",{class:"auth-scheme-description"}," Make requests without authentication ",-1))],2),g.value?(t(),s("div",{key:0,class:j(["auth-scheme clerk-bearer-option",{selected:K.value===ze}]),onClick:a[1]||(a[1]=r=>W(ze))},[e("div",Ms,[e("div",Ps,[R(m(ue),{size:18}),a[12]||(a[12]=e("h3",null,"Clerk Bearer",-1))]),a[13]||(a[13]=e("span",{class:"auth-scheme-type"},"CLERK",-1))]),a[14]||(a[14]=e("div",{class:"auth-scheme-description"}," Use Clerk authentication token for bearer authentication ",-1))],2)):p("",!0),(t(!0),s(ne,null,oe(x.value,r=>(t(),s("div",{key:r.name,class:j(["auth-scheme",{selected:K.value===r.name}]),onClick:q=>W(r.name)},[e("div",Ts,[e("div",Is,[R(m(ue),{size:18}),e("h3",null,_(r.name),1)]),e("span",Os,_(r.scheme.type),1)]),r.scheme.description?(t(),s("div",Us,_(r.scheme.description),1)):p("",!0),r.scheme.type==="apiKey"?(t(),s("div",{key:1,class:"auth-scheme-fields",onClick:a[2]||(a[2]=se(()=>{},["stop"]))},[e("label",null,[e("span",null,_(r.scheme.name),1),e("span",Ks,"("+_(r.scheme.in)+")",1),e("input",{type:"text",value:M.value[r.name]?.value||"",onInput:q=>$(r.name,"value",q.target.value),placeholder:`Enter ${r.scheme.name}`,class:"auth-input"},null,40,Ls)]),M.value[r.name]?.value?(t(),s("button",{key:0,onClick:q=>T(r.name),class:"clear-credential-btn"}," Clear ",8,js)):p("",!0)])):r.scheme.type==="http"&&r.scheme.scheme==="basic"?(t(),s("div",{key:2,class:"auth-scheme-fields",onClick:a[3]||(a[3]=se(()=>{},["stop"]))},[e("label",null,[a[15]||(a[15]=e("span",null,"Username",-1)),e("input",{type:"text",value:M.value[r.name]?.username||"",onInput:q=>$(r.name,"username",q.target.value),placeholder:"Enter username",class:"auth-input"},null,40,Vs)]),e("label",null,[a[16]||(a[16]=e("span",null,"Password",-1)),e("input",{type:"text",value:M.value[r.name]?.password||"",onInput:q=>$(r.name,"password",q.target.value),placeholder:"Enter password",class:"auth-input"},null,40,Fs)]),M.value[r.name]?.username||M.value[r.name]?.password?(t(),s("button",{key:0,onClick:q=>T(r.name),class:"clear-credential-btn"}," Clear ",8,Ds)):p("",!0)])):r.scheme.type==="http"&&r.scheme.scheme==="bearer"?(t(),s("div",{key:3,class:"auth-scheme-fields",onClick:a[4]||(a[4]=se(()=>{},["stop"]))},[e("label",null,[a[17]||(a[17]=e("span",null,"Bearer Token",-1)),e("input",{type:"text",value:M.value[r.name]?.token||"",onInput:q=>$(r.name,"token",q.target.value),placeholder:"Enter bearer token",class:"auth-input"},null,40,Ns)]),M.value[r.name]?.token?(t(),s("button",{key:0,onClick:q=>T(r.name),class:"clear-credential-btn"}," Clear ",8,Js)):p("",!0)])):r.scheme.type==="oauth2"?(t(),s("div",{key:4,class:"auth-scheme-fields",onClick:a[5]||(a[5]=se(()=>{},["stop"]))},[e("label",null,[a[18]||(a[18]=e("span",null,"Access Token",-1)),e("input",{type:"text",value:M.value[r.name]?.accessToken||"",onInput:q=>$(r.name,"accessToken",q.target.value),placeholder:"Enter OAuth2 access token",class:"auth-input"},null,40,Ws)]),M.value[r.name]?.accessToken?(t(),s("button",{key:0,onClick:q=>T(r.name),class:"clear-credential-btn"}," Clear ",8,Gs)):p("",!0)])):r.scheme.type==="openIdConnect"?(t(),s("div",{key:5,class:"auth-scheme-fields",onClick:a[6]||(a[6]=se(()=>{},["stop"]))},[e("label",null,[a[19]||(a[19]=e("span",null,"ID Token",-1)),e("input",{type:"text",value:M.value[r.name]?.idToken||"",onInput:q=>$(r.name,"idToken",q.target.value),placeholder:"Enter OpenID Connect ID token",class:"auth-input"},null,40,Xs)]),M.value[r.name]?.idToken?(t(),s("button",{key:0,onClick:q=>T(r.name),class:"clear-credential-btn"}," Clear ",8,Qs)):p("",!0)])):p("",!0)],10,zs))),128)),E.value?(t(),s("div",Ys,[a[21]||(a[21]=e("div",{class:"clerk-key-header"},[e("h3",null,"Clerk Publishable Key")],-1)),e("div",Zs,[w.value?(t(),s("span",en,_(w.value),1)):(t(),s("span",tn," Enter your Clerk publishable key to enable authentication. This will be stored with the selected service host. "))]),e("div",sn,[e("label",null,[a[20]||(a[20]=e("span",null,"Publishable Key",-1)),ie(e("input",{"onUpdate:modelValue":a[7]||(a[7]=r=>O.value=r),type:"text",placeholder:"pk_test_...",class:"clerk-key-input",disabled:P.value||J.value},null,8,nn),[[de,O.value]])]),!P.value&&!J.value?(t(),s("button",{key:0,onClick:I,class:"save-button"}," Save and reload ")):P.value&&!J.value?(t(),s("button",{key:1,onClick:D,class:"save-button"}," Clear and reload ")):p("",!0)])])):p("",!0)])])):p("",!0)}}),an=Be(on,[["__scopeId","data-v-b8c2be74"]]),ln={key:0,class:"service-host-input-section"},rn={key:0,class:"welcome-description"},cn={key:1,class:"welcome-description"},un={key:3,class:"service-host-direct-form"},dn={class:"service-host-input-wrapper"},vn=["disabled"],pn=Se({__name:"WelcomeServiceHostInput",setup(te){const u=ge(),S=A(""),k=A(""),f=c(()=>u.serviceHosts),z=c(()=>u.hasServiceHost),g=async()=>{if(!S.value.trim())return;const x={id:crypto.randomUUID(),baseUrl:S.value.trim(),openApiPath:k.value.trim()||void 0};await u.addHost(x),await u.selectHost(x.id),S.value="",k.value=""};return(x,K)=>m(u).isServiceHostPickerEnabled&&!z.value?(t(),s("div",ln,[f.value.length>0?(t(),s("p",rn," Please select or add a service host to get started. ")):(t(),s("p",cn," Please enter your service host URL to get started. ")),f.value.length>0?(t(),G(Je,{key:2})):(t(),s("div",un,[e("div",dn,[ie(e("input",{"onUpdate:modelValue":K[0]||(K[0]=N=>S.value=N),type:"text",placeholder:"Base URL (e.g., https://api.example.com)",class:"service-host-input",onKeyup:qe(g,["enter"])},null,544),[[de,S.value]]),ie(e("input",{"onUpdate:modelValue":K[1]||(K[1]=N=>k.value=N),type:"text",placeholder:"OpenAPI Path (optional, e.g., /openapi.json)",class:"service-host-input",onKeyup:qe(g,["enter"])},null,544),[[de,k.value]]),e("button",{onClick:g,class:"service-host-submit-btn",disabled:!S.value.trim()}," Connect ",8,vn)])]))])):p("",!0)}}),hn=Be(pn,[["__scopeId","data-v-d0cf2fc7"]]),mn={class:"openapi-test"},yn={class:"test-header"},fn={class:"header-content"},_n={class:"header-title-section"},kn={class:"title-section-content"},Sn={class:"title-row"},gn={class:"logo"},bn={key:0,class:"api-version"},$n={key:0,class:"api-description"},Cn={key:0,class:"header-title-section"},wn=["disabled"],An={class:"header-actions"},xn={href:"https://github.com/gamja-labs/openapi-studio",target:"_blank",rel:"noopener noreferrer",class:"github-link",title:"View on GitHub"},En={key:1,class:"auth-section"},qn={key:1,class:"user-section"},Hn={class:"test-container"},Bn={class:"sidebar-header"},Rn=["title"],Mn={class:"sidebar-content"},Pn={key:0,class:"loading"},zn={key:1,class:"error"},Tn={key:2,class:"endpoints-groups"},In=["onClick"],On={class:"group-name"},Un={class:"group-count"},Kn={class:"group-toggle"},Ln={key:0,class:"group-endpoints"},jn=["onClick"],Vn={class:"endpoint-path"},Fn={key:0,class:"endpoint-summary"},Dn={key:2,class:"endpoint-content"},Nn={class:"examples-header"},Jn=["title"],Wn={class:"examples-content"},Gn={key:0,class:"example-section"},Xn={class:"example-section-header"},Qn={class:"view-toggle"},Yn={class:"example-content"},Zn={key:0,class:"schema-display"},eo={class:"schema-text"},to={key:1,class:"json-editor-wrapper"},so={key:1,class:"example-section"},no={class:"response-codes-list"},oo={class:"response-code-header"},ao={class:"response-code-number"},lo={class:"response-code-right"},io={key:0,class:"response-code-description"},ro={class:"view-toggle"},co=["onClick"],uo=["onClick"],vo={key:0,class:"example-content"},po={key:0,class:"schema-display"},ho={class:"schema-text"},mo={key:1,class:"json-editor-wrapper"},yo={key:1,class:"no-example"},fo={key:2,class:"no-examples"},_o={key:3,class:"example-section"},ko={class:"schema-references-list"},So=["onClick"],go={class:"schema-reference-toggle"},bo={class:"schema-reference-name"},$o={key:0,class:"example-content"},Co={class:"schema-display"},wo={class:"schema-text"},Ao={key:3,class:"endpoint-tester empty"},xo={class:"empty-state"},Eo={class:"welcome-content"},qo={class:"welcome-icon"},Ho={key:0,class:"welcome-description"},Bo={key:1,class:"welcome-tips"},Ro={class:"tip-item"},Mo={class:"tip-item"},Po={class:"tip-item"},zo={class:"app-footer"},To="__clerk_bearer__",Uo=Se({__name:"Main",setup(te){const u=et(),S=ge(),k=c(()=>S.hasServiceHost),f=Ye(),z=Ze(),g=Te(),x=Oe();let K=!!(S.clerkPublishableKey&&S.clerkPublishableKey.trim()),N=null;if(K)try{N=Fe()}catch(v){console.warn("Failed to initialize Clerk auth:",v),K=!1,N=null}const M=c(()=>{if(!N)return!1;try{return N.isSignedIn.value??!1}catch{return!1}}),E=c(()=>g.openApiSpec),O=c(()=>g.loading),P=c(()=>g.error),J=c(()=>x.selectedPath),C=c(()=>x.selectedMethod),w=c(()=>x.selectedAuthScheme),$=A(new Set),T=A(new Set),W=A(new Map),I=A(!1),D=A(!1),i=A(500),y=A(400),a=A(!1),r=A(!1),q=c(()=>g.getSelectedEndpoint(J.value,C.value)),re=c(()=>g.endpoints),be=c(()=>{if(re.value.length===0)return[];const v=new Map;for(const o of re.value){const l=o.operation.tags||[];if(l.length>0){const b=l[0];b&&(v.has(b)||v.set(b,{name:b,endpoints:[]}),v.get(b).endpoints.push(o))}else{const b=o.path.split("/").filter(ce=>ce),Q=b.length>0?`/${b[0]}`:"Other";v.has(Q)||v.set(Q,{name:Q,endpoints:[]}),v.get(Q).endpoints.push(o)}}return $.value.size===0&&v.forEach((o,l)=>$.value.add(l)),Array.from(v.values()).sort((o,l)=>o.name.localeCompare(l.name))}),$e=v=>{$.value.has(v)?$.value.delete(v):$.value.add(v)},Ce=v=>{T.value.has(v)?T.value.delete(v):T.value.add(v)},ve=v=>{const o=W.value.get(v)||!1;W.value.set(v,!o)},X=v=>W.value.get(v)||!1,pe=new Map;async function me(v,o){const l=`${o}:${v}`;if(pe.has(l))return pe.get(l);const Q=new TextEncoder().encode(l),ce=await crypto.subtle.digest("SHA-256",Q),he=Array.from(new Uint8Array(ce)).map(We=>We.toString(16).padStart(2,"0")).join("").slice(0,16);return pe.set(l,he),he}function Re(v,o){const l=`${o}:${v}`;return pe.get(l)||""}async function we(){const v=z.query.endpoint;if(!v)return null;for(const o of re.value)if(await me(o.path,o.method)===v)return{path:o.path,method:o.method};return null}Ve(async()=>{I.value=u.loadSidebarCollapsed(),D.value=u.loadExamplesSidebarCollapsed(),i.value=u.loadEndpointsSidebarWidth(),y.value=u.loadExamplesSidebarWidth(),await S.loadOpenApiSpec();for(const o of re.value)await me(o.path,o.method);const v=await we();v&&(await tt(),await ye(v.path,v.method,!1)),le(()=>z.query.endpoint,async o=>{if(o){const l=await we();l&&(J.value!==l.path||C.value!==l.method)&&await ye(l.path,l.method,!1)}else(J.value||C.value)&&x.setSelectedEndpoint(null,null)}),le(I,o=>{u.saveSidebarCollapsed(o)}),le(D,o=>{u.saveExamplesSidebarCollapsed(o)}),le(i,o=>{u.saveEndpointsSidebarWidth(o)}),le(y,o=>{u.saveExamplesSidebarWidth(o)})});const Ae=v=>{a.value=!0;const o=v.clientX,l=i.value,b=ce=>{const xe=ce.clientX-o,he=Math.max(200,Math.min(800,l+xe));i.value=he},Q=()=>{a.value=!1,document.removeEventListener("mousemove",b),document.removeEventListener("mouseup",Q)};document.addEventListener("mousemove",b),document.addEventListener("mouseup",Q)},Me=v=>{r.value=!0;const o=v.clientX,l=y.value,b=ce=>{const xe=o-ce.clientX,he=Math.max(200,Math.min(800,l+xe));y.value=he},Q=()=>{r.value=!1,document.removeEventListener("mousemove",b),document.removeEventListener("mouseup",Q)};document.addEventListener("mousemove",b),document.addEventListener("mouseup",Q)},ye=async(v,o,l=!0)=>{if(x.setSelectedEndpoint(v,o),T.value.clear(),W.value.clear(),l){const b=Re(v,o)||await me(v,o);z.query.endpoint!==b&&await f.replace({query:{...z.query,endpoint:b}})}},Pe=v=>({GET:"#61affe",POST:"#49cc90",PUT:"#fca130",PATCH:"#50e3c2",DELETE:"#f93e3e"})[v]||"#999",d=c(()=>q.value?g.getExampleFromRequestBody(q.value):null),h=c(()=>q.value?g.getRequestBodySchema(q.value):null),n=c(()=>!h.value||!E.value?null:g.formatSchemaForDisplay(h.value,E.value)),V=v=>!v||!E.value?null:g.formatSchemaForDisplay(v,E.value),L=c(()=>q.value?g.getAllResponseExamples(q.value):[]),Y=c(()=>q.value?g.getEndpointSchemaReferences(q.value):[]),B=v=>g.endpointRequiresSecurity(v),F=c(()=>g.openApiTitle),ae=c(()=>g.openApiDescription),U=c(()=>g.openApiVersion),H=c(()=>{if(!w.value)return"Anonymous";if(w.value===To)return"Clerk Bearer";const o=g.securitySchemes.find(l=>l.name===w.value);return o?o.name:"Anonymous"}),ee=async()=>{await S.reload()};return(v,o)=>(t(),s("div",mn,[e("header",yn,[e("div",fn,[e("div",_n,[e("div",kn,[e("div",Sn,[e("h1",gn,_(F.value),1),U.value?(t(),s("div",bn,"v"+_(U.value),1)):p("",!0)]),ae.value?(t(),s("p",$n,_(ae.value),1)):p("",!0)]),k.value?(t(),s("div",Cn,[k.value?(t(),s("button",{key:0,onClick:ee,class:"refresh-spec-btn",disabled:m(g).loading,title:"Refresh OpenAPI Spec"},[R(m(rt),{size:20,class:j({spinning:m(g).loading})},null,8,["class"])],8,wn)):p("",!0)])):p("",!0)]),e("div",An,[m(S).isServiceHostPickerEnabled?(t(),G(Je,{key:0})):p("",!0),e("button",{onClick:o[0]||(o[0]=l=>m(f).push("/spec")),class:"openapi-spec-link",title:"View OpenAPI Spec JSON"},[R(m(Le),{size:20})]),e("a",xn,[R(m(it),{size:20})]),e("button",{onClick:o[1]||(o[1]=(...l)=>m(x).toggleAuthMenu&&m(x).toggleAuthMenu(...l)),class:j(["auth-menu-toggle",{active:m(x).authMenuOpen,"has-selection":w.value}]),title:"Security Scheme"},[w.value?(t(),G(m(ue),{key:1,size:16})):(t(),G(m(Ie),{key:0,size:16})),e("span",null,_(w.value?H.value:"Security"),1)],2),m(K)?(t(),s("div",En,[M.value?(t(),s("div",qn,[R(m(ot))])):(t(),G(m(nt),{key:0,mode:"modal"},{default:st(()=>[...o[6]||(o[6]=[e("button",{class:"sign-in-btn"},"Sign In",-1)])]),_:1}))])):p("",!0)])])]),R(an),e("div",Hn,[k.value?(t(),s("aside",{key:0,class:j(["endpoints-sidebar",{collapsed:I.value,resizing:a.value}]),style:Ee({width:I.value?"60px":`${i.value}px`})},[e("div",Bn,[o[7]||(o[7]=e("h2",null,"Endpoints ",-1)),e("button",{onClick:o[2]||(o[2]=l=>I.value=!I.value),class:"sidebar-toggle",title:I.value?"Expand sidebar":"Collapse sidebar"},[I.value?(t(),G(m(_e),{key:0,size:16})):(t(),G(m(je),{key:1,size:16}))],8,Rn)]),ie(e("div",Mn,[O.value?(t(),s("div",Pn,"Loading OpenAPI spec...")):P.value?(t(),s("div",zn,_(P.value),1)):(t(),s("div",Tn,[(t(!0),s(ne,null,oe(be.value,l=>(t(),s("div",{key:l.name,class:"endpoint-group"},[e("div",{class:"group-header",onClick:b=>$e(l.name)},[e("span",On,_(l.name),1),e("span",Un,"("+_(l.endpoints.length)+")",1),e("span",Kn,[$.value.has(l.name)?(t(),G(m(He),{key:0,size:14})):(t(),G(m(_e),{key:1,size:14}))])],8,In),$.value.has(l.name)?(t(),s("div",Ln,[(t(!0),s(ne,null,oe(l.endpoints,b=>(t(),s("div",{key:`${b.method}-${b.path}`,class:j(["endpoint-item",{active:J.value===b.path&&C.value===b.method}]),onClick:se(Q=>ye(b.path,b.method),["stop"])},[e("span",{class:"method-badge",style:Ee({backgroundColor:Pe(b.method)})},_(b.method),5),e("span",Vn,_(b.path),1),b.operation.summary?(t(),s("span",Fn,_(b.operation.summary),1)):p("",!0),B(b.operation)?(t(),G(m(ue),{key:1,size:14,class:"security-indicator",title:"Requires authentication"})):p("",!0)],10,jn))),128))])):p("",!0)]))),128))]))],512),[[Ke,!I.value]])],6)):p("",!0),k.value&&!I.value?(t(),s("div",{key:1,class:j(["resize-handle resize-handle-endpoints",{resizing:a.value}]),onMousedown:Ae},null,34)):p("",!0),q.value?(t(),s("div",Dn,[R(xs),D.value?p("",!0):(t(),s("div",{key:0,class:j(["resize-handle resize-handle-examples",{resizing:r.value}]),onMousedown:Me},null,34)),e("aside",{class:j(["examples-sidebar",{collapsed:D.value,resizing:r.value}]),style:Ee({width:D.value?"60px":`${y.value}px`})},[e("div",Nn,[o[8]||(o[8]=e("h3",null,"Examples",-1)),e("button",{onClick:o[3]||(o[3]=l=>D.value=!D.value),class:"examples-toggle",title:D.value?"Expand examples":"Collapse examples"},[D.value?(t(),G(m(je),{key:0,size:16})):(t(),G(m(_e),{key:1,size:16}))],8,Jn)]),ie(e("div",Wn,[d.value||h.value?(t(),s("div",Gn,[e("div",Xn,[e("h4",null,_(X("request-body")?"Request Body Schema":"Example Request Body"),1),e("div",Qn,[e("button",{onClick:o[4]||(o[4]=l=>ve("request-body")),class:j([{active:!X("request-body")},"toggle-btn"])}," Example ",2),e("button",{onClick:o[5]||(o[5]=l=>ve("request-body")),class:j([{active:X("request-body")},"toggle-btn"])}," Schema ",2)])]),e("div",Yn,[X("request-body")&&n.value?(t(),s("div",Zn,[e("pre",eo,_(n.value),1)])):X("request-body")?p("",!0):(t(),s("div",to,[R(m(ke),{"model-value":d.value,mode:"text",readOnly:!0,mainMenuBar:!1,navigationBar:!1,statusBar:!1,darkTheme:!0},null,8,["model-value"])]))])])):p("",!0),L.value.length>0?(t(),s("div",so,[o[9]||(o[9]=e("h4",null,"Response Codes",-1)),e("div",no,[(t(!0),s(ne,null,oe(L.value,l=>(t(),s("div",{key:l.code,class:"response-code-item"},[e("div",oo,[e("div",{class:j(["response-code-left",{success:l.isSuccess,error:!l.isSuccess}])},[e("span",ao,_(l.code),1)],2),e("div",lo,[l.description?(t(),s("div",io,_(l.description),1)):p("",!0),e("div",ro,[e("button",{onClick:b=>ve(`response-${l.code}`),class:j([{active:!X(`response-${l.code}`)},"toggle-btn small"])}," Example ",10,co),e("button",{onClick:b=>ve(`response-${l.code}`),class:j([{active:X(`response-${l.code}`)},"toggle-btn small"])}," Schema ",10,uo)])])]),(X(`response-${l.code}`)?l.schema:l.example)?(t(),s("div",vo,[X(`response-${l.code}`)&&l.schema?(t(),s("div",po,[e("pre",ho,_(V(l.schema)),1)])):X(`response-${l.code}`)?p("",!0):(t(),s("div",mo,[R(m(ke),{"model-value":l.example,mode:"text",readOnly:!0,mainMenuBar:!1,navigationBar:!1,statusBar:!1,darkTheme:!0},null,8,["model-value"])]))])):(t(),s("div",yo," No "+_(X(`response-${l.code}`)?"schema":"example")+" available ",1))]))),128))])])):p("",!0),!d.value&&L.value.length===0?(t(),s("div",fo," No examples available for this endpoint. ")):p("",!0),Y.value.length>0?(t(),s("div",_o,[o[10]||(o[10]=e("h4",null,"Referenced Schemas",-1)),e("div",ko,[(t(!0),s(ne,null,oe(Y.value,l=>(t(),s("div",{key:l.name,class:"schema-reference-item"},[e("div",{class:"schema-reference-header",onClick:b=>Ce(l.name)},[e("span",go,[T.value.has(l.name)?(t(),G(m(He),{key:0,size:14})):(t(),G(m(_e),{key:1,size:14}))]),e("span",bo,_(l.name),1)],8,So),T.value.has(l.name)?(t(),s("div",$o,[e("div",Co,[e("pre",wo,_(m(g).formatSchemaForDisplay(l.schema,E.value)),1)])])):p("",!0)]))),128))])])):p("",!0)],512),[[Ke,!D.value]])],6)])):(t(),s("main",Ao,[e("div",xo,[e("div",Eo,[e("div",qo,[R(m(De),{size:64})]),o[14]||(o[14]=e("h1",{class:"welcome-title"},"Welcome to OpenAPI Studio",-1)),k.value?(t(),s("p",Ho," Select an endpoint from the sidebar to start testing your API endpoints. ")):p("",!0),R(hn),k.value?(t(),s("div",Bo,[e("div",Ro,[R(m(Le),{size:20,class:"tip-icon"}),o[11]||(o[11]=e("span",null,"Browse available endpoints in the sidebar",-1))]),e("div",Mo,[R(m(ct),{size:20,class:"tip-icon"}),o[12]||(o[12]=e("span",null,"Test requests with custom parameters",-1))]),e("div",Po,[R(m(at),{size:20,class:"tip-icon"}),o[13]||(o[13]=e("span",null,"View responses and schema documentation",-1))])])):p("",!0)])]),e("footer",zo,[e("p",null,"© "+_(new Date().getFullYear())+" Gamja Labs",1)])]))])]))}});export{Uo as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as n,B as r,e as a,f as d,g as e,_ as c}from"./app-
|
|
1
|
+
import{a as n,B as r,e as a,f as d,g as e,_ as c}from"./app-B8WIou1H.js";const i={class:"not-found-container"},l=n({__name:"NotFound",setup(p){const t=r(),s=()=>{t.replace("/")};return(u,o)=>(d(),a("div",i,[e("div",{class:"not-found-content"},[o[0]||(o[0]=e("div",{class:"error-code"},"404",-1)),o[1]||(o[1]=e("h1",{class:"error-title"},"Page Not Found",-1)),o[2]||(o[2]=e("p",{class:"error-description"}," The page you're looking for doesn't exist or has been moved. ",-1)),e("div",{class:"error-actions"},[e("button",{class:"btn btn-primary",onClick:s}," Go to Home ")])])]))}}),m=c(l,[["__scopeId","data-v-94836b5f"]]);export{m as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as A,B as g,q as O,u as V,c as l,o as B,J as x,e as t,f as s,g as e,h as k,k as c,j as d,t as p,_ as C}from"./app-
|
|
1
|
+
import{a as A,B as g,q as O,u as V,c as l,o as B,J as x,e as t,f as s,g as e,h as k,k as c,j as d,t as p,_ as C}from"./app-B8WIou1H.js";import{c as f,F as L}from"./file-text-C8VQy6Xm.js";const j=f("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);const U=f("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]),I={class:"spec-viewer"},N={class:"spec-viewer-header"},R={class:"header-content"},E={class:"header-title-section"},J={class:"title-row"},M={class:"spec-title"},z={key:0,class:"api-version"},D=["disabled"],P={key:0,class:"url-display"},T=["href"],F={class:"spec-viewer-content"},H={key:0,class:"loading-state"},q={key:1,class:"error-state"},$={key:2,class:"empty-state"},G={key:3,class:"json-viewer-container"},K=A({__name:"SpecViewer",setup(Q){const y=g(),n=O(),w=V(),a=l(()=>n.openApiSpec),u=l(()=>n.loading),v=l(()=>n.error),b=l(()=>n.openApiTitle),m=l(()=>n.openApiVersion),_=l(()=>n.openApiSpecUrl),S=()=>{if(!a.value)return;const h=JSON.stringify(a.value,null,2),o=new Blob([h],{type:"application/json"}),r=URL.createObjectURL(o),i=document.createElement("a");i.href=r,i.download="openapi-spec.json",document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL(r)};return B(async()=>{!a.value&&!u.value&&!v.value&&await w.loadOpenApiSpec()}),(h,o)=>{const r=x("JsonEditorVue");return s(),t("div",I,[e("header",N,[e("div",R,[e("button",{onClick:o[0]||(o[0]=i=>c(y).push("/")),class:"back-button",title:"Back to main view"},[d(c(j),{size:20})]),e("div",E,[d(c(L),{size:24}),e("div",J,[e("h1",M,p(b.value),1),m.value?(s(),t("div",z,"v"+p(m.value),1)):k("",!0)])]),e("button",{onClick:S,class:"download-button",disabled:!a.value||u.value,title:"Download OpenAPI Spec JSON"},[d(c(U),{size:20}),o[1]||(o[1]=e("span",null,"Download",-1))],8,D)])]),_.value?(s(),t("div",P,[o[2]||(o[2]=e("span",{class:"url-label"},"OpenAPI Spec URL:",-1)),e("a",{href:_.value,target:"_blank",rel:"noopener noreferrer",class:"url-link"},p(_.value),9,T)])):k("",!0),e("main",F,[u.value?(s(),t("div",H,[...o[3]||(o[3]=[e("p",null,"Loading OpenAPI specification...",-1)])])):v.value?(s(),t("div",q,[e("p",null,"Error loading specification: "+p(v.value),1)])):a.value?(s(),t("div",G,[d(r,{"model-value":a.value,mode:"text",readOnly:!0,mainMenuBar:!0,navigationBar:!0,statusBar:!1,darkTheme:!0},null,8,["model-value"])])):(s(),t("div",$,[...o[4]||(o[4]=[e("p",null,"No OpenAPI specification available.",-1)])]))])])}}}),Y=C(K,[["__scopeId","data-v-aa7d1028"]]);export{Y as default};
|