Skip to content

Commit a4c2242

Browse files
committed
web: fix bind request format
On-behalf-of: @SAP robert.vasek@sap.com Signed-off-by: Robert Vasek <robert.vasek@clyso.com>
1 parent ce81e73 commit a4c2242

5 files changed

Lines changed: 69 additions & 60 deletions

File tree

Lines changed: 42 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -912,30 +912,30 @@ to { transform: translateY(0) scale(1); opacity: 1;
912912
transform: translateY(-1px);
913913
}
914914

915-
.resources[data-v-32c19ba7] {
915+
.resources[data-v-adbc8337] {
916916
max-width: 1200px;
917917
margin: 0 auto;
918918
padding: 2rem;
919919
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', sans-serif;
920920
}
921-
.header-section[data-v-32c19ba7] {
921+
.header-section[data-v-adbc8337] {
922922
margin-bottom: 2rem;
923923
}
924-
.resources h2[data-v-32c19ba7] {
924+
.resources h2[data-v-adbc8337] {
925925
color: #1e293b;
926926
margin-bottom: 1rem;
927927
font-size: 1.875rem;
928928
font-weight: 600;
929929
font-family: inherit;
930930
}
931-
.resources h3[data-v-32c19ba7] {
931+
.resources h3[data-v-adbc8337] {
932932
color: #334155;
933933
font-size: 1.25rem;
934934
font-weight: 600;
935935
font-family: inherit;
936936
margin: 0;
937937
}
938-
.cli-indicator[data-v-32c19ba7] {
938+
.cli-indicator[data-v-adbc8337] {
939939
background-color: #dbeafe;
940940
border: 1px solid #3b82f6;
941941
border-radius: 8px;
@@ -947,17 +947,17 @@ to { transform: translateY(0) scale(1); opacity: 1;
947947
align-items: center;
948948
gap: 0.5rem;
949949
}
950-
.loading[data-v-32c19ba7] {
950+
.loading[data-v-adbc8337] {
951951
text-align: center;
952952
padding: 2rem;
953953
color: #666;
954954
}
955-
.error[data-v-32c19ba7] {
955+
.error[data-v-adbc8337] {
956956
text-align: center;
957957
padding: 2rem;
958958
color: #dc3545;
959959
}
960-
.retry-btn[data-v-32c19ba7] {
960+
.retry-btn[data-v-adbc8337] {
961961
padding: 0.5rem 1rem;
962962
background-color: #007bff;
963963
color: white;
@@ -966,67 +966,67 @@ to { transform: translateY(0) scale(1); opacity: 1;
966966
cursor: pointer;
967967
margin-top: 1rem;
968968
}
969-
.retry-btn[data-v-32c19ba7]:hover {
969+
.retry-btn[data-v-adbc8337]:hover {
970970
background-color: #0056b3;
971971
}
972-
.resources-container[data-v-32c19ba7] {
972+
.resources-container[data-v-adbc8337] {
973973
display: grid;
974974
gap: 3rem;
975975
}
976-
.templates-section[data-v-32c19ba7],
977-
.collections-section[data-v-32c19ba7] {
976+
.templates-section[data-v-adbc8337],
977+
.collections-section[data-v-adbc8337] {
978978
background: #f8fafc;
979979
padding: 1.5rem;
980980
border-radius: 12px;
981981
border: 1px solid #e2e8f0;
982982
}
983-
.no-resources[data-v-32c19ba7] {
983+
.no-resources[data-v-adbc8337] {
984984
text-align: center;
985985
color: #666;
986986
padding: 1rem;
987987
}
988-
.section-header[data-v-32c19ba7] {
988+
.section-header[data-v-adbc8337] {
989989
display: flex;
990990
justify-content: space-between;
991991
align-items: center;
992992
margin-bottom: 1.5rem;
993993
}
994-
.item-count[data-v-32c19ba7] {
994+
.item-count[data-v-adbc8337] {
995995
font-size: 0.9rem;
996996
color: #666;
997997
background: #e9ecef;
998998
padding: 0.25rem 0.75rem;
999999
border-radius: 12px;
10001000
font-weight: 500;
10011001
}
1002-
.no-resources[data-v-32c19ba7] {
1002+
.no-resources[data-v-adbc8337] {
10031003
text-align: center;
10041004
padding: 3rem 2rem;
10051005
color: #6b7280;
10061006
background: white;
10071007
border-radius: 12px;
10081008
border: 2px dashed #d1d5db;
10091009
}
1010-
.no-resources-icon[data-v-32c19ba7] {
1010+
.no-resources-icon[data-v-adbc8337] {
10111011
margin-bottom: 1rem;
10121012
opacity: 0.4;
10131013
color: #9ca3af;
10141014
}
1015-
.no-resources h4[data-v-32c19ba7] {
1015+
.no-resources h4[data-v-adbc8337] {
10161016
margin: 0 0 0.5rem 0;
10171017
color: #374151;
10181018
font-weight: 600;
10191019
}
1020-
.no-resources p[data-v-32c19ba7] {
1020+
.no-resources p[data-v-adbc8337] {
10211021
margin: 0;
10221022
font-size: 0.9rem;
10231023
}
1024-
.resource-grid[data-v-32c19ba7] {
1024+
.resource-grid[data-v-adbc8337] {
10251025
display: grid;
10261026
grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
10271027
gap: 1.5rem;
10281028
}
1029-
.template-card[data-v-32c19ba7], .collection-card[data-v-32c19ba7] {
1029+
.template-card[data-v-adbc8337], .collection-card[data-v-adbc8337] {
10301030
background: white;
10311031
border: 1px solid #e2e8f0;
10321032
border-radius: 12px;
@@ -1035,91 +1035,91 @@ to { transform: translateY(0) scale(1); opacity: 1;
10351035
overflow: hidden;
10361036
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
10371037
}
1038-
.template-card[data-v-32c19ba7]:hover, .collection-card[data-v-32c19ba7]:hover {
1038+
.template-card[data-v-adbc8337]:hover, .collection-card[data-v-adbc8337]:hover {
10391039
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
10401040
transform: translateY(-2px);
10411041
border-color: #cbd5e1;
10421042
}
1043-
.card-header[data-v-32c19ba7] {
1043+
.card-header[data-v-adbc8337] {
10441044
padding: 1.5rem 1.5rem 1rem 1.5rem;
10451045
border-bottom: 1px solid #f1f5f9;
10461046
}
1047-
.card-title[data-v-32c19ba7] {
1047+
.card-title[data-v-adbc8337] {
10481048
margin: 0 0 0.75rem 0;
10491049
color: #1e293b;
10501050
font-size: 1.125rem;
10511051
font-weight: 600;
10521052
}
1053-
.card-badges[data-v-32c19ba7] {
1053+
.card-badges[data-v-adbc8337] {
10541054
display: flex;
10551055
flex-wrap: wrap;
10561056
gap: 0.5rem;
10571057
}
1058-
.badge[data-v-32c19ba7] {
1058+
.badge[data-v-adbc8337] {
10591059
font-size: 0.75rem;
10601060
padding: 0.25rem 0.75rem;
10611061
border-radius: 12px;
10621062
font-weight: 500;
10631063
display: inline-flex;
10641064
align-items: center;
10651065
}
1066-
.resources-badge[data-v-32c19ba7] {
1066+
.resources-badge[data-v-adbc8337] {
10671067
background: #dbeafe;
10681068
color: #1d4ed8;
10691069
}
1070-
.permissions-badge[data-v-32c19ba7] {
1070+
.permissions-badge[data-v-adbc8337] {
10711071
background: #fef3c7;
10721072
color: #d97706;
10731073
}
1074-
.namespaces-badge[data-v-32c19ba7] {
1074+
.namespaces-badge[data-v-adbc8337] {
10751075
background: #d1fae5;
10761076
color: #047857;
10771077
}
1078-
.card-content[data-v-32c19ba7] {
1078+
.card-content[data-v-adbc8337] {
10791079
padding: 1rem 1.5rem;
10801080
}
1081-
.card-description[data-v-32c19ba7] {
1081+
.card-description[data-v-adbc8337] {
10821082
color: #64748b;
10831083
margin: 0 0 1rem 0;
10841084
line-height: 1.5;
10851085
font-size: 0.9rem;
10861086
}
1087-
.card-preview[data-v-32c19ba7], .collection-templates[data-v-32c19ba7] {
1087+
.card-preview[data-v-adbc8337], .collection-templates[data-v-adbc8337] {
10881088
margin-top: 1rem;
10891089
}
1090-
.card-preview strong[data-v-32c19ba7], .collection-templates strong[data-v-32c19ba7] {
1090+
.card-preview strong[data-v-adbc8337], .collection-templates strong[data-v-adbc8337] {
10911091
color: #374151;
10921092
font-size: 0.875rem;
10931093
display: block;
10941094
margin-bottom: 0.5rem;
10951095
}
1096-
.resource-preview[data-v-32c19ba7], .template-list[data-v-32c19ba7] {
1096+
.resource-preview[data-v-adbc8337], .template-list[data-v-adbc8337] {
10971097
display: flex;
10981098
flex-wrap: wrap;
10991099
gap: 0.5rem;
11001100
}
1101-
.resource-tag[data-v-32c19ba7], .template-tag[data-v-32c19ba7] {
1101+
.resource-tag[data-v-adbc8337], .template-tag[data-v-adbc8337] {
11021102
font-size: 0.75rem;
11031103
background: #f1f5f9;
11041104
color: #475569;
11051105
padding: 0.25rem 0.5rem;
11061106
border-radius: 6px;
11071107
border: 1px solid #e2e8f0;
11081108
}
1109-
.more-indicator[data-v-32c19ba7] {
1109+
.more-indicator[data-v-adbc8337] {
11101110
font-size: 0.75rem;
11111111
color: #6b7280;
11121112
font-style: italic;
11131113
}
1114-
.card-actions[data-v-32c19ba7] {
1114+
.card-actions[data-v-adbc8337] {
11151115
padding: 1rem 1.5rem;
11161116
background: #fafbfc;
11171117
border-top: 1px solid #f1f5f9;
11181118
display: flex;
11191119
gap: 0.75rem;
11201120
justify-content: flex-end;
11211121
}
1122-
.details-btn[data-v-32c19ba7], .bind-btn[data-v-32c19ba7] {
1122+
.details-btn[data-v-adbc8337], .bind-btn[data-v-adbc8337] {
11231123
padding: 0.5rem 1rem;
11241124
border: none;
11251125
border-radius: 6px;
@@ -1128,21 +1128,21 @@ to { transform: translateY(0) scale(1); opacity: 1;
11281128
font-size: 0.875rem;
11291129
transition: all 0.2s ease;
11301130
}
1131-
.details-btn[data-v-32c19ba7] {
1131+
.details-btn[data-v-adbc8337] {
11321132
background: #f8fafc;
11331133
color: #475569;
11341134
border: 1px solid #e2e8f0;
11351135
}
1136-
.details-btn[data-v-32c19ba7]:hover {
1136+
.details-btn[data-v-adbc8337]:hover {
11371137
background: #f1f5f9;
11381138
border-color: #cbd5e1;
11391139
}
1140-
.bind-btn[data-v-32c19ba7] {
1140+
.bind-btn[data-v-adbc8337] {
11411141
background: linear-gradient(135deg, #10b981 0%, #059669 100%);
11421142
color: white;
11431143
border: 1px solid transparent;
11441144
}
1145-
.bind-btn[data-v-32c19ba7]:hover {
1145+
.bind-btn[data-v-adbc8337]:hover {
11461146
background: linear-gradient(135deg, #059669 0%, #047857 100%);
11471147
transform: translateY(-1px);
11481148
box-shadow: 0 2px 4px rgba(16, 185, 129, 0.2);
Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ var __yieldStar = (value) => {
9898
};
9999
var __forAwait = (obj, it, method) => (it = obj[__knownSymbol("asyncIterator")]) ? it.call(obj) : (obj = obj[__knownSymbol("iterator")](), it = {}, method = (key, fn) => (fn = obj[key]) && (it[key] = (arg) => new Promise((yes, no, done) => (arg = fn.call(obj, arg), done = arg.done, Promise.resolve(arg.value).then((value) => yes({ value, done }), no)))), method("next"), method("return"), it);
100100
var require_index_001 = __commonJS({
101-
"assets/index.a8fc1aeb.js"(exports) {
101+
"assets/index.b10aa2d7.js"(exports) {
102102
(function polyfill() {
103103
const relList = document.createElement("link").relList;
104104
if (relList && relList.supports && relList.supports("modulepreload")) {
@@ -12377,11 +12377,14 @@ ${formattedObject}`;
1237712377
metadata: {
1237812378
name: bindingName
1237912379
},
12380-
templateRef: {
12381-
name: templateName
12382-
},
12383-
clusterIdentity: {
12384-
identity: clusterIdentity
12380+
spec: {
12381+
templateRef: {
12382+
name: templateName
12383+
},
12384+
clusterIdentity: {
12385+
identity: clusterIdentity
12386+
},
12387+
author: "web-ui"
1238512388
}
1238612389
};
1238712390
const response = yield httpClient.post(bindUrl, bindingRequest);
@@ -12598,8 +12601,8 @@ Details: ${kubeError.details || "No additional details available"}`;
1259812601
};
1259912602
}
1260012603
});
12601-
const Resources_vue_vue_type_style_index_0_scoped_32c19ba7_lang = "";
12602-
const Resources = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-32c19ba7"]]);
12604+
const Resources_vue_vue_type_style_index_0_scoped_adbc8337_lang = "";
12605+
const Resources = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-adbc8337"]]);
1260312606
const routes = [
1260412607
{ path: "/", component: Resources },
1260512608
{ path: "/resources", component: Resources }

web/dist/index.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
66
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
77
<title>Kube Bind</title>
8-
<script type="module" crossorigin src="./assets/index.a8fc1aeb.js"></script>
9-
<link rel="stylesheet" href="./assets/index.2f8736bf.css">
8+
<script type="module" crossorigin src="./assets/index.b10aa2d7.js"></script>
9+
<link rel="stylesheet" href="./assets/index.4561ca6e.css">
1010
</head>
1111
<body>
1212
<div id="app"></div>

web/src/types/binding.ts

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,11 @@ export interface BindableResourcesRequest {
1111
metadata: {
1212
name: string
1313
}
14-
templateRef: BindingTemplate
15-
clusterIdentity: ClusterIdentity
14+
spec: {
15+
templateRef: BindingTemplate
16+
clusterIdentity: ClusterIdentity
17+
author: string
18+
}
1619
}
1720

1821
export interface APIServiceExportRequestResponse {
@@ -74,4 +77,4 @@ export type ErrorCode = typeof ErrorCodes[keyof typeof ErrorCodes]
7477
// Helper function to check if an error response is a structured KubeBindError
7578
export function isKubeBindError(error: any): error is KubeBindError {
7679
return error && typeof error === 'object' && error.kind === 'Error' && error.apiVersion && error.message && error.code
77-
}
80+
}

web/src/views/Resources.vue

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -335,11 +335,14 @@ const handleBind = async (templateName: string, bindingName: string) => {
335335
metadata: {
336336
name: bindingName
337337
},
338-
templateRef: {
339-
name: templateName
340-
},
341-
clusterIdentity: {
342-
identity: clusterIdentity
338+
spec: {
339+
templateRef: {
340+
name: templateName
341+
},
342+
clusterIdentity: {
343+
identity: clusterIdentity
344+
},
345+
author: 'web-ui'
343346
}
344347
}
345348

0 commit comments

Comments
 (0)