merge newui branch
This commit is contained in:
121
ui/src/settings/application/batchAccordion.js
Normal file
121
ui/src/settings/application/batchAccordion.js
Normal file
@@ -0,0 +1,121 @@
|
||||
export function batchAccordion(pageData) {
|
||||
return t.details(
|
||||
{
|
||||
pbEvent: "batchApiAccordion",
|
||||
className: "accordion batch-api-accordion",
|
||||
name: "settingsAccordion",
|
||||
},
|
||||
t.summary(
|
||||
null,
|
||||
t.i({ className: "ri-archive-stack-line" }),
|
||||
t.span({ className: "txt" }, "Batch API"),
|
||||
t.div({ className: "flex-fill" }),
|
||||
() => {
|
||||
if (pageData.formSettings.batch.enabled) {
|
||||
return t.span({ className: "label success" }, "Enabled");
|
||||
}
|
||||
return t.span({ className: "label" }, "Disabled");
|
||||
},
|
||||
() => {
|
||||
if (!app.utils.isEmpty(app.store.errors?.batch)) {
|
||||
return t.i({
|
||||
className: "ri-error-warning-fill txt-danger",
|
||||
ariaDescription: app.attrs.tooltip("Has errors", "left"),
|
||||
});
|
||||
}
|
||||
},
|
||||
),
|
||||
t.div(
|
||||
{ className: "grid sm" },
|
||||
t.div(
|
||||
{ className: "col-lg-12" },
|
||||
t.div(
|
||||
{ className: "field" },
|
||||
t.input({
|
||||
id: "batch.enabled",
|
||||
name: "batch.enabled",
|
||||
type: "checkbox",
|
||||
className: "switch",
|
||||
checked: () => pageData.formSettings.batch.enabled || false,
|
||||
onchange: (e) => (pageData.formSettings.batch.enabled = e.target.checked),
|
||||
}),
|
||||
t.label(
|
||||
{ htmlFor: "batch.enabled" },
|
||||
t.span({ className: "txt" }, "Enable"),
|
||||
t.small({ className: "txt-hint" }, " (experimental)"),
|
||||
),
|
||||
),
|
||||
),
|
||||
t.div(
|
||||
{ className: "col-lg-4" },
|
||||
t.div(
|
||||
{ className: "field" },
|
||||
t.label(
|
||||
{ htmlFor: "batch.maxRequests" },
|
||||
t.span({ className: "txt" }, "Max requests in a batch"),
|
||||
t.i({
|
||||
className: "ri-information-line link-faded",
|
||||
ariaDescription: app.attrs.tooltip(
|
||||
"Rate limiting (if enabled) also applies for the batch create/update/upsert/delete requests.",
|
||||
"right",
|
||||
),
|
||||
}),
|
||||
),
|
||||
t.input({
|
||||
id: "batch.maxRequests",
|
||||
name: "batch.maxRequests",
|
||||
type: "number",
|
||||
min: 1,
|
||||
step: 1,
|
||||
required: () => pageData.formSettings.batch.enabled,
|
||||
disabled: () => !pageData.formSettings.batch.enabled,
|
||||
value: () => pageData.formSettings.batch.maxRequests,
|
||||
oninput: (e) => (pageData.formSettings.batch.maxRequests = e.target.value << 0),
|
||||
}),
|
||||
),
|
||||
),
|
||||
t.div(
|
||||
{ className: "col-lg-4" },
|
||||
t.div(
|
||||
{ className: "field" },
|
||||
t.label(
|
||||
{ htmlFor: "batch.timeout" },
|
||||
t.span({ className: "txt" }, "Max processing time (in seconds)"),
|
||||
),
|
||||
t.input({
|
||||
id: "batch.timeout",
|
||||
name: "batch.timeout",
|
||||
type: "number",
|
||||
min: 1,
|
||||
step: 1,
|
||||
required: () => pageData.formSettings.batch.enabled,
|
||||
disabled: () => !pageData.formSettings.batch.enabled,
|
||||
value: () => pageData.formSettings.batch.timeout,
|
||||
oninput: (e) => pageData.formSettings.batch.timeout = parseInt(e.target.value, 10),
|
||||
}),
|
||||
),
|
||||
),
|
||||
t.div(
|
||||
{ className: "col-lg-4" },
|
||||
t.div(
|
||||
{ className: "field" },
|
||||
t.label(
|
||||
{ htmlFor: "batch.maxBodySize" },
|
||||
t.span({ className: "txt" }, "Max body size (in bytes)"),
|
||||
),
|
||||
t.input({
|
||||
id: "batch.maxBodySize",
|
||||
name: "batch.maxBodySize",
|
||||
type: "number",
|
||||
min: 0,
|
||||
step: 1,
|
||||
placeholder: "Default to 128MB",
|
||||
disabled: () => !pageData.formSettings.batch.enabled,
|
||||
value: () => pageData.formSettings.batch.maxBodySize || "",
|
||||
oninput: (e) => pageData.formSettings.batch.maxBodySize = parseInt(e.target.value, 10),
|
||||
}),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user