Skip to content

Commit a3b65bc

Browse files
committed
Web: encode job name in API requests
Signed-off-by: Martynov Maxim <martinov_m_s_@mail.ru>
1 parent 94ec22e commit a3b65bc

3 files changed

Lines changed: 61 additions & 44 deletions

File tree

web/src/store/requests/datasets.ts

Lines changed: 36 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,8 @@ import { Dataset, DatasetVersions, Datasets } from '../../types/api'
66
import { genericFetchWrapper } from './index'
77

88
export const getDatasets = async (namespace: string, limit = 20, offset = 0) => {
9-
const url = `${API_URL}/namespaces/${encodeURIComponent(
10-
namespace
11-
)}/datasets?limit=${limit}&offset=${offset}`
9+
const encodedNamespace = encodeURIComponent(namespace)
10+
const url = `${API_URL}/namespaces/${encodedNamespace}/datasets?limit=${limit}&offset=${offset}`
1211
return genericFetchWrapper(url, { method: 'GET' }, 'fetchDatasets').then((r: Datasets) => {
1312
return {
1413
datasets: r.datasets.map((d) => ({ ...d, namespace: namespace })),
@@ -19,66 +18,74 @@ export const getDatasets = async (namespace: string, limit = 20, offset = 0) =>
1918

2019
export const getDatasetVersions = async (
2120
namespace: string,
22-
dataset: string,
21+
datasetName: string,
2322
limit: number,
2423
offset: number
2524
) => {
26-
const url = `${API_URL}/namespaces/${encodeURIComponent(namespace)}/datasets/${encodeURIComponent(
27-
dataset
28-
)}/versions?limit=${limit}&offset=${offset}`
25+
const encodedNamespace = encodeURIComponent(namespace)
26+
const encodedDataset = encodeURIComponent(datasetName)
27+
const url = `${API_URL}/namespaces/${encodedNamespace}/datasets/${encodedDataset}/versions?limit=${limit}&offset=${offset}`
2928
return genericFetchWrapper(url, { method: 'GET' }, 'fetchDatasetVersions').then(
3029
(r: DatasetVersions) => {
3130
return { versions: r.versions, totalCount: r.totalCount }
3231
}
3332
)
3433
}
3534

36-
export const getDataset = async (namespace: string, dataset: string) => {
37-
const url = `${API_URL}/namespaces/${encodeURIComponent(namespace)}/datasets/${encodeURIComponent(
38-
dataset
39-
)}`
35+
export const getDataset = async (namespace: string, datasetName: string) => {
36+
const encodedNamespace = encodeURIComponent(namespace)
37+
const encodedDataset = encodeURIComponent(datasetName)
38+
const url = `${API_URL}/namespaces/${encodedNamespace}/datasets/${encodedDataset}`
4039
return genericFetchWrapper(url, { method: 'GET' }, 'fetchDataset').then((d: Dataset) => d)
4140
}
4241

43-
export const deleteDataset = async (datasetName: string, namespace: string) => {
44-
const url = `${API_URL}/namespaces/${encodeURIComponent(namespace)}/datasets/${datasetName}`
42+
export const deleteDataset = async (namespace: string, datasetName: string) => {
43+
const encodedNamespace = encodeURIComponent(namespace)
44+
const encodedDataset = encodeURIComponent(datasetName)
45+
const url = `${API_URL}/namespaces/${encodedNamespace}/datasets/${encodedDataset}`
4546
return genericFetchWrapper(url, { method: 'DELETE' }, 'deleteDataset')
4647
}
4748

4849
export const deleteDatasetTag = async (namespace: string, datasetName: string, tag: string) => {
49-
const url = `${API_URL}/namespaces/${encodeURIComponent(
50-
namespace
51-
)}/datasets/${datasetName}/tags/${tag}`
50+
const encodedNamespace = encodeURIComponent(namespace)
51+
const encodedDataset = encodeURIComponent(datasetName)
52+
const encodedTag = encodeURIComponent(tag)
53+
const url = `${API_URL}/namespaces/${encodedNamespace}/datasets/${encodedDataset}/tags/${encodedTag}`
5254
return genericFetchWrapper(url, { method: 'DELETE' }, 'deleteDatasetTag')
5355
}
5456

5557
export const addDatasetTag = async (namespace: string, datasetName: string, tag: string) => {
56-
const url = `${API_URL}/namespaces/${encodeURIComponent(
57-
namespace
58-
)}/datasets/${datasetName}/tags/${tag}`
58+
const encodedNamespace = encodeURIComponent(namespace)
59+
const encodedDataset = encodeURIComponent(datasetName)
60+
const encodedTag = encodeURIComponent(tag)
61+
const url = `${API_URL}/namespaces/${encodedNamespace}/datasets/${encodedDataset}/tags/${encodedTag}`
5962
return genericFetchWrapper(url, { method: 'POST' }, 'addDatasetTag')
6063
}
6164

6265
export const deleteDatasetFieldTag = async (
6366
namespace: string,
6467
datasetName: string,
65-
tag: string,
66-
field: string
68+
field: string,
69+
tag: string
6770
) => {
68-
const url = `${API_URL}/namespaces/${encodeURIComponent(
69-
namespace
70-
)}/datasets/${datasetName}/fields/${field}/tags/${tag}`
71+
const encodedNamespace = encodeURIComponent(namespace)
72+
const encodedDataset = encodeURIComponent(datasetName)
73+
const encodedField = encodeURIComponent(field)
74+
const encodedTag = encodeURIComponent(tag)
75+
const url = `${API_URL}/namespaces/${encodedNamespace}/datasets/${encodedDataset}/fields/${encodedField}/tags/${encodedTag}`
7176
return genericFetchWrapper(url, { method: 'DELETE' }, 'deleteDatasetFieldTag')
7277
}
7378

7479
export const addDatasetFieldTag = async (
7580
namespace: string,
7681
datasetName: string,
77-
tag: string,
78-
field: string
82+
field: string,
83+
tag: string
7984
) => {
80-
const url = `${API_URL}/namespaces/${encodeURIComponent(
81-
namespace
82-
)}/datasets/${datasetName}/fields/${field}/tags/${tag}`
85+
const encodedNamespace = encodeURIComponent(namespace)
86+
const encodedDataset = encodeURIComponent(datasetName)
87+
const encodedField = encodeURIComponent(field)
88+
const encodedTag = encodeURIComponent(tag)
89+
const url = `${API_URL}/namespaces/${encodedNamespace}/datasets/${encodedDataset}/fields/${encodedField}/tags/${encodedTag}`
8390
return genericFetchWrapper(url, { method: 'POST' }, 'addDatasetFieldTag')
8491
}

web/src/store/requests/jobs.ts

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,10 @@ export const getJobs = async (namespace: string, limit = 25, offset = 0) => {
1414
})
1515
}
1616

17-
export const deleteJob = async (jobName: string, namespace: string) => {
18-
const url = `${API_URL}/namespaces/${encodeURIComponent(namespace)}/jobs/${jobName}`
17+
export const deleteJob = async (namespace: string, jobName: string) => {
18+
const encodedNamespace = encodeURIComponent(namespace)
19+
const encodedJob = encodeURIComponent(jobName)
20+
const url = `${API_URL}/namespaces/${encodedNamespace}/jobs/${encodedJob}`
1921
return genericFetchWrapper(url, { method: 'DELETE' }, 'deleteJob')
2022
}
2123

@@ -25,23 +27,31 @@ export const getRuns = async (
2527
limit: number,
2628
offset: number
2729
) => {
28-
const url = `${API_URL}/namespaces/${encodeURIComponent(namespace)}/jobs/${encodeURIComponent(
29-
jobName
30-
)}/runs?limit=${limit}&offset=${offset}`
30+
const encodedNamespace = encodeURIComponent(namespace)
31+
const encodedJob = encodeURIComponent(jobName)
32+
const url = `${API_URL}/namespaces/${encodedNamespace}/jobs/${encodedJob}/runs?limit=${limit}&offset=${offset}`
3133
return genericFetchWrapper(url, { method: 'GET' }, 'fetchRuns')
3234
}
3335

34-
export const getJob = async (namespace: string, job: string) => {
35-
const url = `${API_URL}/namespaces/${encodeURIComponent(namespace)}/jobs/${job}`
36+
export const getJob = async (namespace: string, jobName: string) => {
37+
const encodedNamespace = encodeURIComponent(namespace)
38+
const encodedJob = encodeURIComponent(jobName)
39+
const url = `${API_URL}/namespaces/${encodedNamespace}/jobs/${encodedJob}`
3640
return genericFetchWrapper(url, { method: 'GET' }, 'fetchJob')
3741
}
3842

3943
export const deleteJobTag = async (namespace: string, jobName: string, tag: string) => {
40-
const url = `${API_URL}/namespaces/${encodeURIComponent(namespace)}/jobs/${jobName}/tags/${tag}`
44+
const encodedNamespace = encodeURIComponent(namespace)
45+
const encodedJob = encodeURIComponent(jobName)
46+
const encodedTag = encodeURIComponent(tag)
47+
const url = `${API_URL}/namespaces/${encodedNamespace}/jobs/${encodedJob}/tags/${encodedTag}`
4148
return genericFetchWrapper(url, { method: 'DELETE' }, 'deleteJobTag')
4249
}
4350

4451
export const addJobTag = async (namespace: string, jobName: string, tag: string) => {
45-
const url = `${API_URL}/namespaces/${encodeURIComponent(namespace)}/jobs/${jobName}/tags/${tag}`
52+
const encodedNamespace = encodeURIComponent(namespace)
53+
const encodedJob = encodeURIComponent(jobName)
54+
const encodedTag = encodeURIComponent(tag)
55+
const url = `${API_URL}/namespaces/${encodedNamespace}/jobs/${encodedJob}/tags/${encodedTag}`
4656
return genericFetchWrapper(url, { method: 'POST' }, 'addJobTag')
4757
}

web/src/store/sagas/index.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,7 @@ export function* deleteJobSaga() {
226226
while (true) {
227227
try {
228228
const { payload } = yield take(DELETE_JOB)
229-
const job: Job = yield call(deleteJob, payload.jobName, payload.namespace)
229+
const job: Job = yield call(deleteJob, payload.namespace, payload.jobName)
230230
yield put(deleteJobSuccess(job.name))
231231
} catch (e) {
232232
yield put(applicationError('Something went wrong while removing job'))
@@ -285,7 +285,7 @@ export function* deleteDatasetSaga() {
285285
while (true) {
286286
try {
287287
const { payload } = yield take(DELETE_DATASET)
288-
const dataset: Dataset = yield call(deleteDataset, payload.datasetName, payload.namespace)
288+
const dataset: Dataset = yield call(deleteDataset, payload.namespace, payload.datasetName)
289289
yield put(deleteDatasetSuccess(dataset.name))
290290
} catch (e) {
291291
yield put(applicationError('Something went wrong while removing job'))
@@ -325,8 +325,8 @@ export function* deleteDatasetFieldTagSaga() {
325325
deleteDatasetFieldTag,
326326
payload.namespace,
327327
payload.datasetName,
328-
payload.tag,
329-
payload.field
328+
payload.field,
329+
payload.tag
330330
)
331331
yield put(
332332
deleteDatasetFieldTagSuccess(
@@ -374,8 +374,8 @@ export function* addDatasetFieldTagSaga() {
374374
addDatasetFieldTag,
375375
payload.namespace,
376376
payload.datasetName,
377-
payload.tag,
378-
payload.field
377+
payload.field,
378+
payload.tag
379379
)
380380
yield put(
381381
addDatasetFieldTagSuccess(

0 commit comments

Comments
 (0)