@chelone/vue 0.9.0 → 0.11.0
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/admin/admin-shell.vue_vue_type_script_setup_true_lang.js +15 -2
- package/dist/admin/resource-registry.d.ts +6 -2
- package/dist/admin/resource-registry.js +0 -18
- package/dist/admin/resource.vue.d.ts +6 -2
- package/dist/choices/choices-context.d.ts +9 -9
- package/dist/choices/use-reference-input.js +2 -2
- package/dist/components/admin/auth/access-denied.vue.d.ts +2 -2
- package/dist/components/admin/auth/access-denied.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/auth/auth-error.vue.d.ts +2 -2
- package/dist/components/admin/auth/auth-error.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/components/admin/auth/authentication-error.vue.d.ts +2 -2
- package/dist/components/admin/auth/authentication-error.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/auth/login-form.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/auth/login-with-email.vue.d.ts +1 -1
- package/dist/components/admin/auth/login-with-email.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/auth/logout.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/auth/permission-matrix.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/buttons/bulk-delete-button.vue.d.ts +2 -2
- package/dist/components/admin/buttons/bulk-delete-button.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/components/admin/buttons/bulk-export-button.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/buttons/bulk-update-button.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/buttons/cancel-button.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/buttons/clone-button.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/buttons/columns-button.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/buttons/create-button.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/buttons/delete-button.vue.d.ts +2 -2
- package/dist/components/admin/buttons/delete-button.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/components/admin/buttons/edit-button.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/buttons/export-button.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/buttons/fields-selector.vue_vue_type_script_setup_true_lang.js +5 -5
- package/dist/components/admin/buttons/filter-button.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/buttons/list-button.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/buttons/locales-menu.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/buttons/refresh-button.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/buttons/refresh-icon-button.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/buttons/save-button.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/buttons/select-all-button.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/buttons/show-button.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/buttons/sidebar-toggle-button.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/buttons/skip-navigation-button.vue.d.ts +1 -1
- package/dist/components/admin/buttons/skip-navigation-button.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/buttons/sort-button.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/buttons/update-button.vue.d.ts +2 -2
- package/dist/components/admin/buttons/update-button.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/components/admin/common/application-updated-notification.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/csv-import/csv-import.vue.d.ts +24 -14
- package/dist/components/admin/csv-import/csv-import.vue_vue_type_script_setup_true_lang.js +18 -18
- package/dist/components/admin/feedback/confirm.vue.d.ts +2 -2
- package/dist/components/admin/feedback/confirm.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/feedback/error.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/components/admin/feedback/loading-indicator.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/feedback/loading.vue.d.ts +2 -2
- package/dist/components/admin/feedback/loading.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/feedback/not-found.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/components/admin/feedback/notification.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/feedback/offline.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/fields/boolean-field.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/form/translatable-inputs-tab.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/inputs/array-input-row.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/components/admin/inputs/array-input.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/components/admin/inputs/autocomplete-array-input.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/components/admin/inputs/autocomplete-input.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/inputs/datagrid-input.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/inputs/file-input-preview.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/inputs/file-input.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/inputs/image-input.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/inputs/in-place-editor-form.vue_vue_type_script_setup_true_lang.js +4 -4
- package/dist/components/admin/inputs/in-place-editor.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/inputs/nullable-boolean-input.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/components/admin/inputs/password-input.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/inputs/resettable-text-input.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/inputs/search-input.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/inputs/select-array-input.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/inputs/text-array-input.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/layout/command-menu-logout.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/layout/dashboard-menu-item.vue.d.ts +1 -1
- package/dist/components/admin/layout/dashboard-menu-item.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/layout/data-provider-devtools.vue_vue_type_script_setup_true_lang.js +61 -27
- package/dist/components/admin/layout/icons.d.ts +2 -0
- package/dist/components/admin/layout/icons.js +3 -1
- package/dist/components/admin/layout/theme-mode-toggle.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/layout/user-menu-inner.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/list/approval-queue-row.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/list/bulk-actions-toolbar.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/list/bulk-edit-drawer.vue_vue_type_script_setup_true_lang.js +4 -4
- package/dist/components/admin/list/calendar-agenda-view.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/list/calendar-header.vue_vue_type_script_setup_true_lang.js +5 -5
- package/dist/components/admin/list/calendar-list.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/list/count.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/list/filter-form.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/list/filter-list-item.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/list/filter-live-search.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/list/list-no-results.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/admin/list/list-pagination.vue_vue_type_script_setup_true_lang.js +5 -5
- package/dist/components/admin/list/prev-next-buttons.vue_vue_type_script_setup_true_lang.js +5 -5
- package/dist/components/admin/list/saved-queries-list.vue_vue_type_script_setup_true_lang.js +5 -5
- package/dist/components/admin/list/tree-list-node.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/realtime/menu-live.vue.d.ts +3 -1
- package/dist/components/admin/realtime/menu-live.vue_vue_type_script_setup_true_lang.js +42 -12
- package/dist/components/admin/supabase/forgot-password-form.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/supabase/set-password-form.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/components/admin/supabase/supabase-login-page.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/view/create.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/view/infinite-list.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/view/list.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/view/translatable-fields-tab.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/admin/widgets/job-monitor-row.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/inspector/inspector.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/controllers/reference-field-options.d.ts +18 -0
- package/dist/controllers/reference-field-test-harness.d.ts +3 -2
- package/dist/controllers/use-infinite-list-controller.d.ts +3 -3
- package/dist/controllers/use-list-controller.d.ts +4 -4
- package/dist/controllers/use-reference-many-field-controller.d.ts +8 -15
- package/dist/controllers/use-reference-one-field-controller.d.ts +8 -17
- package/dist/list/list-context.d.ts +10 -4
- package/dist/list/use-list.d.ts +3 -3
- package/dist/store/use-saved-queries.d.ts +5 -5
- package/package.json +5 -5
package/dist/components/admin/inputs/nullable-boolean-input.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -62,15 +62,15 @@ var nullable_boolean_input_vue_vue_type_script_setup_true_lang_default = /*@__PU
|
|
|
62
62
|
const options = computed(() => [
|
|
63
63
|
{
|
|
64
64
|
value: "",
|
|
65
|
-
label: props.nullLabel ? translate(props.nullLabel, { _: props.nullLabel }) : translate("
|
|
65
|
+
label: props.nullLabel ? translate(props.nullLabel, { _: props.nullLabel }) : translate("chelone.boolean.null", { _: "" })
|
|
66
66
|
},
|
|
67
67
|
{
|
|
68
68
|
value: "false",
|
|
69
|
-
label: props.falseLabel ? translate(props.falseLabel, { _: props.falseLabel }) : translate("
|
|
69
|
+
label: props.falseLabel ? translate(props.falseLabel, { _: props.falseLabel }) : translate("chelone.boolean.false", { _: "No" })
|
|
70
70
|
},
|
|
71
71
|
{
|
|
72
72
|
value: "true",
|
|
73
|
-
label: props.trueLabel ? translate(props.trueLabel, { _: props.trueLabel }) : translate("
|
|
73
|
+
label: props.trueLabel ? translate(props.trueLabel, { _: props.trueLabel }) : translate("chelone.boolean.true", { _: "Yes" })
|
|
74
74
|
}
|
|
75
75
|
]);
|
|
76
76
|
function onChange(next) {
|
|
@@ -61,7 +61,7 @@ var password_input_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
|
|
|
61
61
|
const props = __props;
|
|
62
62
|
const visible = ref(props.initiallyVisible === true);
|
|
63
63
|
const translate = useTranslate();
|
|
64
|
-
const toggleLabel = computed(() => visible.value ? translate("
|
|
64
|
+
const toggleLabel = computed(() => visible.value ? translate("chelone.input.password.toggle_visible", { _: "Hide password" }) : translate("chelone.input.password.toggle_hidden", { _: "Show password" }));
|
|
65
65
|
return (_ctx, _cache) => {
|
|
66
66
|
return openBlock(), createBlock(text_input_default, {
|
|
67
67
|
source: __props.source,
|
package/dist/components/admin/inputs/resettable-text-input.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -61,7 +61,7 @@ var resettable_text_input_vue_vue_type_script_setup_true_lang_default = /*@__PUR
|
|
|
61
61
|
return v != null && v !== "";
|
|
62
62
|
});
|
|
63
63
|
const showClearButton = computed(() => props.resettable && (props.clearAlwaysVisible || hasValue.value));
|
|
64
|
-
const clearLabel = computed(() => translate("
|
|
64
|
+
const clearLabel = computed(() => translate("chelone.action.clear_input_value", { _: "Clear value" }));
|
|
65
65
|
function handleClear() {
|
|
66
66
|
form.ambient.setFieldValue(wrappedSource, "");
|
|
67
67
|
}
|
|
@@ -45,8 +45,8 @@ var search_input_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
45
45
|
return v != null && v !== "";
|
|
46
46
|
});
|
|
47
47
|
const showClearButton = computed(() => !props.disableClearable && hasValue.value);
|
|
48
|
-
const searchPlaceholder = computed(() => props.placeholder ?? translate("
|
|
49
|
-
const clearLabel = computed(() => translate("
|
|
48
|
+
const searchPlaceholder = computed(() => props.placeholder ?? translate("chelone.action.search", { _: "Search" }));
|
|
49
|
+
const clearLabel = computed(() => translate("chelone.action.clear_search", { _: "Clear search" }));
|
|
50
50
|
function handleClear() {
|
|
51
51
|
form.ambient.setFieldValue(wrappedSource, "");
|
|
52
52
|
}
|
package/dist/components/admin/inputs/select-array-input.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -141,13 +141,13 @@ var select_array_input_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
|
|
|
141
141
|
role: "button",
|
|
142
142
|
tabindex: "0",
|
|
143
143
|
class: "cursor-pointer text-muted-foreground opacity-50 hover:opacity-100",
|
|
144
|
-
"aria-label": unref(translate)("
|
|
144
|
+
"aria-label": unref(translate)("chelone.action.clear_input_value", { _: "Clear value" }),
|
|
145
145
|
onClick: withModifiers(onClear, ["stop"]),
|
|
146
146
|
onKeydown: [withKeys(withModifiers(onClear, ["prevent"]), ["enter"]), withKeys(withModifiers(onClear, ["prevent"]), ["space"])]
|
|
147
147
|
}, "×", 40, _hoisted_7)) : createCommentVNode("", true), _cache[1] || (_cache[1] = createElementVNode("span", {
|
|
148
148
|
"aria-hidden": "true",
|
|
149
149
|
class: "opacity-50"
|
|
150
|
-
}, "▾", -1))])], 8, _hoisted_3), open.value ? (openBlock(), createElementBlock("div", _hoisted_8, [unref(allChoices).length === 0 ? (openBlock(), createElementBlock("p", _hoisted_9, toDisplayString(unref(translate)("
|
|
150
|
+
}, "▾", -1))])], 8, _hoisted_3), open.value ? (openBlock(), createElementBlock("div", _hoisted_8, [unref(allChoices).length === 0 ? (openBlock(), createElementBlock("p", _hoisted_9, toDisplayString(unref(translate)("chelone.navigation.no_results", { _: "No results" })), 1)) : createCommentVNode("", true), (openBlock(true), createElementBlock(Fragment, null, renderList(unref(allChoices), (choice) => {
|
|
151
151
|
return openBlock(), createElementBlock("label", {
|
|
152
152
|
key: String(unref(getChoiceValue)(choice)),
|
|
153
153
|
for: `${unref(id)}-${String(unref(getChoiceValue)(choice))}`,
|
package/dist/components/admin/inputs/text-array-input.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -98,7 +98,7 @@ var text_array_input_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
98
98
|
disabled: __props.disabled || __props.readonly,
|
|
99
99
|
onMousedown: _cache[0] || (_cache[0] = withModifiers(() => {}, ["prevent", "stop"])),
|
|
100
100
|
onClick: withModifiers(($event) => removeValue(index), ["prevent"])
|
|
101
|
-
}, [createElementVNode("span", _hoisted_4, toDisplayString(unref(translate)("
|
|
101
|
+
}, [createElementVNode("span", _hoisted_4, toDisplayString(unref(translate)("chelone.action.remove", { _: "Remove" })), 1), _cache[2] || (_cache[2] = createElementVNode("span", { "aria-hidden": "true" }, "×", -1))], 40, _hoisted_3)]);
|
|
102
102
|
}), 128)), withDirectives(createElementVNode("input", {
|
|
103
103
|
id: unref(id),
|
|
104
104
|
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => inputValue.value = $event),
|
package/dist/components/admin/layout/command-menu-logout.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -23,11 +23,11 @@ var command_menu_logout_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
|
|
|
23
23
|
return (_ctx, _cache) => {
|
|
24
24
|
return openBlock(), createBlock(unref(command_group_default), { heading: unref(translate)("chelone.command_menu.account", { _: "Account" }) }, {
|
|
25
25
|
default: withCtx(() => [createVNode(unref(command_item_default), {
|
|
26
|
-
value: unref(translate)("
|
|
26
|
+
value: unref(translate)("chelone.auth.logout", { _: "Log out" }),
|
|
27
27
|
keywords: ["sign out"],
|
|
28
28
|
onSelect
|
|
29
29
|
}, {
|
|
30
|
-
default: withCtx(() => [createVNode(unref(LogOutIcon)), createTextVNode(" " + toDisplayString(unref(translate)("
|
|
30
|
+
default: withCtx(() => [createVNode(unref(LogOutIcon)), createTextVNode(" " + toDisplayString(unref(translate)("chelone.auth.logout", { _: "Log out" })), 1)]),
|
|
31
31
|
_: 1
|
|
32
32
|
}, 8, ["value"])]),
|
|
33
33
|
_: 1
|
|
@@ -5,7 +5,7 @@ export interface DashboardMenuItemProps {
|
|
|
5
5
|
class?: string;
|
|
6
6
|
/** Replaces the default `House` icon. */
|
|
7
7
|
icon?: Component;
|
|
8
|
-
/** Replaces the default translated label (`
|
|
8
|
+
/** Replaces the default translated label (`chelone.page.dashboard`, default "Dashboard"). */
|
|
9
9
|
label?: string;
|
|
10
10
|
/** Click handler invoked alongside the default navigation (e.g. close the drawer). */
|
|
11
11
|
onClick?: () => void;
|
package/dist/components/admin/layout/dashboard-menu-item.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -22,7 +22,7 @@ var dashboard_menu_item_vue_vue_type_script_setup_true_lang_default = /*@__PURE_
|
|
|
22
22
|
const props = __props;
|
|
23
23
|
const translate = useTranslate();
|
|
24
24
|
const to = `${useBasename()}/`;
|
|
25
|
-
const label = computed(() => props.label ?? translate("
|
|
25
|
+
const label = computed(() => props.label ?? translate("chelone.page.dashboard", { _: "Dashboard" }));
|
|
26
26
|
const icon = computed(() => props.icon ?? HouseIcon);
|
|
27
27
|
return (_ctx, _cache) => {
|
|
28
28
|
return openBlock(), createBlock(menu_item_link_default, {
|
package/dist/components/admin/layout/data-provider-devtools.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -1,19 +1,26 @@
|
|
|
1
1
|
import { useTranslate } from "../../../i18n/use-translate.js";
|
|
2
2
|
import { cn } from "../../../lib/utils.js";
|
|
3
3
|
import button_default from "../../ui/button.js";
|
|
4
|
+
import { buttonVariants } from "../../ui/button-variants.js";
|
|
4
5
|
import data_provider_devtools_entry_default from "./data-provider-devtools-entry.js";
|
|
5
|
-
import {
|
|
6
|
+
import { ActivityIcon } from "./icons.js";
|
|
7
|
+
import { Fragment, computed, createBlock, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, nextTick, normalizeClass, onBeforeUnmount, onMounted, openBlock, ref, renderList, shallowRef, toDisplayString, unref, watch, withCtx } from "vue";
|
|
6
8
|
import { shouldHandleHotkey } from "@chelone/core";
|
|
7
9
|
// src/components/admin/layout/data-provider-devtools.vue?vue&type=script&setup=true&lang.ts
|
|
8
|
-
var _hoisted_1 = ["aria-label"
|
|
9
|
-
var _hoisted_2 =
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
var _hoisted_1 = ["aria-label"];
|
|
11
|
+
var _hoisted_2 = {
|
|
12
|
+
"data-slot": "data-provider-devtools-badge",
|
|
13
|
+
class: "absolute top-0 right-0 min-w-4 -translate-y-1/2 translate-x-1/2 rounded-full bg-primary px-1 text-center text-[10px] leading-4 text-primary-foreground tabular-nums"
|
|
14
|
+
};
|
|
15
|
+
var _hoisted_3 = ["aria-label"];
|
|
16
|
+
var _hoisted_4 = { class: "flex items-center gap-2 border-b px-3 py-1.5" };
|
|
17
|
+
var _hoisted_5 = { class: "font-semibold" };
|
|
18
|
+
var _hoisted_6 = { class: "text-muted-foreground tabular-nums" };
|
|
19
|
+
var _hoisted_7 = {
|
|
13
20
|
key: 0,
|
|
14
21
|
class: "px-3 py-2 text-muted-foreground"
|
|
15
22
|
};
|
|
16
|
-
var
|
|
23
|
+
var _hoisted_8 = {
|
|
17
24
|
key: 1,
|
|
18
25
|
class: "min-h-0 flex-1 overflow-y-auto"
|
|
19
26
|
};
|
|
@@ -30,11 +37,13 @@ var data_provider_devtools_vue_vue_type_script_setup_true_lang_default = /*@__PU
|
|
|
30
37
|
},
|
|
31
38
|
setup(__props) {
|
|
32
39
|
/**
|
|
33
|
-
* `<DataProviderDevtools>` — a
|
|
34
|
-
* the calls a `createDataProviderLog` log has recorded
|
|
35
|
-
*
|
|
40
|
+
* `<DataProviderDevtools>` — a round button at the bottom right carrying a
|
|
41
|
+
* badge with the number of calls a `createDataProviderLog` log has recorded.
|
|
42
|
+
* Activating it opens a panel listing those calls: method, resource, duration
|
|
43
|
+
* and, for a failed call, the error. The panel's Hide button, or the
|
|
44
|
+
* `shortcut`, closes it back to the button. The Vue twin of
|
|
36
45
|
* `@chelone/react`'s `layout/data-provider-devtools.tsx`. Wrap the data
|
|
37
|
-
* provider with `log.wrap`, then mount the
|
|
46
|
+
* provider with `log.wrap`, then mount the component once, in the layout.
|
|
38
47
|
*/
|
|
39
48
|
const props = __props;
|
|
40
49
|
const translate = useTranslate();
|
|
@@ -48,6 +57,7 @@ var data_provider_devtools_vue_vue_type_script_setup_true_lang_default = /*@__PU
|
|
|
48
57
|
}));
|
|
49
58
|
}, { immediate: true });
|
|
50
59
|
const entries = computed(() => [...snapshot.value.entries].reverse());
|
|
60
|
+
const title = () => translate("chelone.devtools.title", { _: "Data provider" });
|
|
51
61
|
function onKeydown(event) {
|
|
52
62
|
const target = event.target instanceof HTMLElement ? event.target : null;
|
|
53
63
|
if (!shouldHandleHotkey(event, props.shortcut, target)) return;
|
|
@@ -56,24 +66,48 @@ var data_provider_devtools_vue_vue_type_script_setup_true_lang_default = /*@__PU
|
|
|
56
66
|
}
|
|
57
67
|
onMounted(() => window.addEventListener("keydown", onKeydown));
|
|
58
68
|
onBeforeUnmount(() => window.removeEventListener("keydown", onKeydown));
|
|
69
|
+
const triggerRef = ref(null);
|
|
70
|
+
const panelRef = ref(null);
|
|
71
|
+
watch(open, (opened) => {
|
|
72
|
+
nextTick(() => {
|
|
73
|
+
const focused = document.activeElement;
|
|
74
|
+
if (focused !== null && focused !== document.body && focused.isConnected) return;
|
|
75
|
+
(opened ? panelRef : triggerRef).value?.focus();
|
|
76
|
+
});
|
|
77
|
+
});
|
|
59
78
|
return (_ctx, _cache) => {
|
|
60
|
-
return openBlock(), createElementBlock("
|
|
61
|
-
|
|
79
|
+
return !open.value ? (openBlock(), createElementBlock("button", {
|
|
80
|
+
key: 0,
|
|
81
|
+
ref_key: "triggerRef",
|
|
82
|
+
ref: triggerRef,
|
|
83
|
+
type: "button",
|
|
84
|
+
"aria-expanded": false,
|
|
85
|
+
"aria-label": `${title()} (${snapshot.value.entries.length})`,
|
|
86
|
+
"data-slot": "data-provider-devtools",
|
|
87
|
+
"data-open": false,
|
|
88
|
+
class: normalizeClass(unref(cn)(unref(buttonVariants)({
|
|
89
|
+
variant: "outline",
|
|
90
|
+
size: "icon"
|
|
91
|
+
}), "fixed right-4 bottom-4 z-50 rounded-full shadow-lg", props.class)),
|
|
92
|
+
onClick: _cache[0] || (_cache[0] = ($event) => open.value = true)
|
|
93
|
+
}, [createVNode(unref(ActivityIcon)), createElementVNode("span", _hoisted_2, toDisplayString(snapshot.value.entries.length), 1)], 10, _hoisted_1)) : (openBlock(), createElementBlock("section", {
|
|
94
|
+
key: 1,
|
|
95
|
+
ref_key: "panelRef",
|
|
96
|
+
ref: panelRef,
|
|
97
|
+
tabindex: "-1",
|
|
98
|
+
"aria-label": title(),
|
|
62
99
|
"data-slot": "data-provider-devtools",
|
|
63
|
-
"data-open":
|
|
100
|
+
"data-open": true,
|
|
64
101
|
class: normalizeClass(unref(cn)("fixed right-4 bottom-4 z-50 flex max-h-[70vh] w-96 max-w-[calc(100vw-2rem)] flex-col rounded-lg border bg-popover text-xs text-popover-foreground shadow-lg", props.class))
|
|
65
|
-
}, [createElementVNode("header",
|
|
66
|
-
|
|
67
|
-
"
|
|
68
|
-
}, [
|
|
69
|
-
createElementVNode("span", _hoisted_3, toDisplayString(unref(translate)("chelone.devtools.title", { _: "Data provider" })), 1),
|
|
70
|
-
createElementVNode("span", _hoisted_4, toDisplayString(snapshot.value.entries.length), 1),
|
|
102
|
+
}, [createElementVNode("header", _hoisted_4, [
|
|
103
|
+
createElementVNode("span", _hoisted_5, toDisplayString(title()), 1),
|
|
104
|
+
createElementVNode("span", _hoisted_6, toDisplayString(snapshot.value.entries.length), 1),
|
|
71
105
|
createVNode(button_default, {
|
|
72
106
|
type: "button",
|
|
73
107
|
variant: "ghost",
|
|
74
108
|
size: "sm",
|
|
75
109
|
class: "ml-auto h-6 px-2",
|
|
76
|
-
onClick: _cache[
|
|
110
|
+
onClick: _cache[1] || (_cache[1] = ($event) => props.log.clear())
|
|
77
111
|
}, {
|
|
78
112
|
default: withCtx(() => [createTextVNode(toDisplayString(unref(translate)("chelone.devtools.clear", { _: "Clear" })), 1)]),
|
|
79
113
|
_: 1
|
|
@@ -83,18 +117,18 @@ var data_provider_devtools_vue_vue_type_script_setup_true_lang_default = /*@__PU
|
|
|
83
117
|
variant: "ghost",
|
|
84
118
|
size: "sm",
|
|
85
119
|
class: "h-6 px-2",
|
|
86
|
-
"aria-expanded":
|
|
87
|
-
onClick: _cache[
|
|
120
|
+
"aria-expanded": true,
|
|
121
|
+
onClick: _cache[2] || (_cache[2] = ($event) => open.value = false)
|
|
88
122
|
}, {
|
|
89
|
-
default: withCtx(() => [createTextVNode(toDisplayString(
|
|
123
|
+
default: withCtx(() => [createTextVNode(toDisplayString(unref(translate)("chelone.devtools.hide", { _: "Hide" })), 1)]),
|
|
90
124
|
_: 1
|
|
91
|
-
}
|
|
92
|
-
]
|
|
125
|
+
})
|
|
126
|
+
]), entries.value.length === 0 ? (openBlock(), createElementBlock("p", _hoisted_7, toDisplayString(unref(translate)("chelone.devtools.empty", { _: "No calls yet" })), 1)) : (openBlock(), createElementBlock("ul", _hoisted_8, [(openBlock(true), createElementBlock(Fragment, null, renderList(entries.value, (entry) => {
|
|
93
127
|
return openBlock(), createBlock(data_provider_devtools_entry_default, {
|
|
94
128
|
key: entry.id,
|
|
95
129
|
entry
|
|
96
130
|
}, null, 8, ["entry"]);
|
|
97
|
-
}), 128))]))],
|
|
131
|
+
}), 128))]))], 10, _hoisted_3));
|
|
98
132
|
};
|
|
99
133
|
}
|
|
100
134
|
});
|
|
@@ -20,3 +20,5 @@ export declare const SendIcon: FunctionalComponent;
|
|
|
20
20
|
export declare const SquareIcon: FunctionalComponent;
|
|
21
21
|
/** The assistant close glyph (a cross). */
|
|
22
22
|
export declare const XIcon: FunctionalComponent;
|
|
23
|
+
/** The data provider devtools trigger glyph (a pulse line). */
|
|
24
|
+
export declare const ActivityIcon: FunctionalComponent;
|
|
@@ -38,4 +38,6 @@ var SendIcon = glyph(["M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0
|
|
|
38
38
|
var SquareIcon = glyph(["M5 3h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z"]);
|
|
39
39
|
/** The assistant close glyph (a cross). */
|
|
40
40
|
var XIcon = glyph(["M18 6 6 18", "m6 6 12 12"]);
|
|
41
|
-
|
|
41
|
+
/** The data provider devtools trigger glyph (a pulse line). */
|
|
42
|
+
var ActivityIcon = glyph(["M22 12h-4l-3 9L9 3l-3 9H2"]);
|
|
43
|
+
export { ActivityIcon, HouseIcon, ListIcon, LogOutIcon, MessageCircleIcon, SendIcon, SquareIcon, XIcon };
|
package/dist/components/admin/layout/theme-mode-toggle.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -62,7 +62,7 @@ var theme_mode_toggle_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*
|
|
|
62
62
|
const index = CYCLE.indexOf(theme.value);
|
|
63
63
|
setTheme(CYCLE[(index + 1) % CYCLE.length] ?? "system");
|
|
64
64
|
}
|
|
65
|
-
const label = computed(() => translate("
|
|
65
|
+
const label = computed(() => translate("chelone.action.toggle_theme", { _: "Toggle theme" }));
|
|
66
66
|
return (_ctx, _cache) => {
|
|
67
67
|
return openBlock(), createBlock(button_default, {
|
|
68
68
|
variant: "ghost",
|
|
@@ -33,7 +33,7 @@ var user_menu_inner_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
33
33
|
const props = __props;
|
|
34
34
|
const { isPending, data: identity } = useGetIdentity();
|
|
35
35
|
const translate = useTranslate();
|
|
36
|
-
const ariaLabel = computed(() => props.label != null ? translate(props.label, { _: props.label }) : identity.value?.fullName || translate("
|
|
36
|
+
const ariaLabel = computed(() => props.label != null ? translate(props.label, { _: props.label }) : identity.value?.fullName || translate("chelone.auth.user_menu", { _: "User menu" }));
|
|
37
37
|
const initial = computed(() => identity.value?.fullName?.charAt(0) ?? "");
|
|
38
38
|
return (_ctx, _cache) => {
|
|
39
39
|
return unref(isPending) ? (openBlock(), createBlock(skeleton_default, {
|
package/dist/components/admin/list/approval-queue-row.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -181,7 +181,7 @@ var approval_queue_row_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
|
|
|
181
181
|
variant: "ghost",
|
|
182
182
|
onClick: close
|
|
183
183
|
}, {
|
|
184
|
-
default: withCtx(() => [createTextVNode(toDisplayString(unref(translate)("
|
|
184
|
+
default: withCtx(() => [createTextVNode(toDisplayString(unref(translate)("chelone.action.cancel", { _: "Cancel" })), 1)]),
|
|
185
185
|
_: 1
|
|
186
186
|
}), createVNode(button_default, {
|
|
187
187
|
type: "submit",
|
package/dist/components/admin/list/bulk-actions-toolbar.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -33,8 +33,8 @@ var bulk_actions_toolbar_vue_vue_type_script_setup_true_lang_default = /*@__PURE
|
|
|
33
33
|
const translate = useTranslate();
|
|
34
34
|
const count = computed(() => list.selectedIds?.length ?? 0);
|
|
35
35
|
const visible = computed(() => count.value > 0);
|
|
36
|
-
const unselectLabel = computed(() => translate("
|
|
37
|
-
const countLabel = computed(() => translate("
|
|
36
|
+
const unselectLabel = computed(() => translate("chelone.action.unselect", { _: "Unselect" }));
|
|
37
|
+
const countLabel = computed(() => translate("chelone.action.bulk_actions", {
|
|
38
38
|
smart_count: count.value,
|
|
39
39
|
_: `${count.value} rows selected`
|
|
40
40
|
}));
|
|
@@ -62,7 +62,7 @@ var bulk_edit_drawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
62
62
|
onSubmit: async () => {
|
|
63
63
|
const nested = Object.entries(form.store.state.fieldMeta).find(([path, meta]) => meta?.isDirty && /[.[]/.test(path));
|
|
64
64
|
if (nested) {
|
|
65
|
-
notifications?.notify("
|
|
65
|
+
notifications?.notify("chelone.message.bulk_edit_nested_source", {
|
|
66
66
|
type: "error",
|
|
67
67
|
messageArgs: {
|
|
68
68
|
source: nested[0],
|
|
@@ -108,15 +108,15 @@ var bulk_edit_drawer_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
108
108
|
const count = computed(() => list.selectedIds?.length ?? 0);
|
|
109
109
|
const label = computed(() => translate(props.label, { _: props.label }));
|
|
110
110
|
const title = computed(() => props.title ? translate(props.title, { _: props.title }) : label.value);
|
|
111
|
-
const description = computed(() => translate("
|
|
111
|
+
const description = computed(() => translate("chelone.message.bulk_edit_description", {
|
|
112
112
|
smart_count: count.value,
|
|
113
113
|
_: "Only the fields you change are applied to {smart_count} selected record(s)."
|
|
114
114
|
}));
|
|
115
|
-
const applyLabel = computed(() => translate("
|
|
115
|
+
const applyLabel = computed(() => translate("chelone.action.bulk_edit_apply", {
|
|
116
116
|
smart_count: count.value,
|
|
117
117
|
_: "Apply to {smart_count} record(s)"
|
|
118
118
|
}));
|
|
119
|
-
const cancelLabel = computed(() => translate("
|
|
119
|
+
const cancelLabel = computed(() => translate("chelone.action.cancel", { _: "Cancel" }));
|
|
120
120
|
return (_ctx, _cache) => {
|
|
121
121
|
return openBlock(), createElementBlock("div", _hoisted_1, [createVNode(button_default, {
|
|
122
122
|
type: "button",
|
package/dist/components/admin/list/calendar-agenda-view.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -42,7 +42,7 @@ var calendar_agenda_view_vue_vue_type_script_setup_true_lang_default = /*@__PURE
|
|
|
42
42
|
"aria-label": __props.label,
|
|
43
43
|
role: "region",
|
|
44
44
|
"data-slot": "calendar-agenda"
|
|
45
|
-
}, [groups.value.length === 0 ? (openBlock(), createElementBlock("p", _hoisted_2, toDisplayString(unref(translate)("
|
|
45
|
+
}, [groups.value.length === 0 ? (openBlock(), createElementBlock("p", _hoisted_2, toDisplayString(unref(translate)("chelone.calendar.no_events", { _: "No events in this range" })), 1)) : createCommentVNode("", true), (openBlock(true), createElementBlock(Fragment, null, renderList(groups.value, (group) => {
|
|
46
46
|
return openBlock(), createElementBlock("section", {
|
|
47
47
|
key: group.key,
|
|
48
48
|
"data-slot": "calendar-agenda-day",
|
|
@@ -31,13 +31,13 @@ var calendar_header_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
31
31
|
*/
|
|
32
32
|
const emit = __emit;
|
|
33
33
|
const translate = useTranslate();
|
|
34
|
-
const viewLabel = (view) => view === "month" ? translate("
|
|
34
|
+
const viewLabel = (view) => view === "month" ? translate("chelone.calendar.month", { _: "Month" }) : view === "week" ? translate("chelone.calendar.week", { _: "Week" }) : translate("chelone.calendar.agenda", { _: "Agenda" });
|
|
35
35
|
return (_ctx, _cache) => {
|
|
36
36
|
return openBlock(), createElementBlock("div", _hoisted_1, [createElementVNode("h2", _hoisted_2, toDisplayString(__props.title), 1), createElementVNode("div", _hoisted_3, [__props.views && __props.views.length > 1 ? (openBlock(), createElementBlock("div", {
|
|
37
37
|
key: 0,
|
|
38
38
|
"data-slot": "calendar-view-switcher",
|
|
39
39
|
role: "group",
|
|
40
|
-
"aria-label": unref(translate)("
|
|
40
|
+
"aria-label": unref(translate)("chelone.calendar.view", { _: "View" }),
|
|
41
41
|
class: "flex items-center gap-1"
|
|
42
42
|
}, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.views, (option) => {
|
|
43
43
|
return openBlock(), createBlock(button_default, {
|
|
@@ -60,7 +60,7 @@ var calendar_header_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
60
60
|
createVNode(button_default, {
|
|
61
61
|
variant: "ghost",
|
|
62
62
|
size: "icon",
|
|
63
|
-
"aria-label": unref(translate)("
|
|
63
|
+
"aria-label": unref(translate)("chelone.calendar.previous", { _: "Previous" }),
|
|
64
64
|
onClick: _cache[0] || (_cache[0] = ($event) => emit("navigate", "previous"))
|
|
65
65
|
}, {
|
|
66
66
|
default: withCtx(() => [createVNode(unref(ChevronLeftIcon))]),
|
|
@@ -71,13 +71,13 @@ var calendar_header_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
71
71
|
size: "sm",
|
|
72
72
|
onClick: _cache[1] || (_cache[1] = ($event) => emit("navigate", "today"))
|
|
73
73
|
}, {
|
|
74
|
-
default: withCtx(() => [createTextVNode(toDisplayString(unref(translate)("
|
|
74
|
+
default: withCtx(() => [createTextVNode(toDisplayString(unref(translate)("chelone.calendar.today", { _: "Today" })), 1)]),
|
|
75
75
|
_: 1
|
|
76
76
|
}),
|
|
77
77
|
createVNode(button_default, {
|
|
78
78
|
variant: "ghost",
|
|
79
79
|
size: "icon",
|
|
80
|
-
"aria-label": unref(translate)("
|
|
80
|
+
"aria-label": unref(translate)("chelone.calendar.next", { _: "Next" }),
|
|
81
81
|
onClick: _cache[2] || (_cache[2] = ($event) => emit("navigate", "next"))
|
|
82
82
|
}, {
|
|
83
83
|
default: withCtx(() => [createVNode(unref(ChevronRightIcon))]),
|
|
@@ -121,13 +121,13 @@ var calendar_list_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
121
121
|
colorMap: props.colorMap,
|
|
122
122
|
getTitle: getRepresentation
|
|
123
123
|
}));
|
|
124
|
-
const rangeValue = computed(() => props.rangeFilter ? props.rangeFilter(range.value) : calendarRangeFilter(props.startSource, range.value, props.endSource));
|
|
124
|
+
const rangeValue = computed(() => props.rangeFilter ? props.rangeFilter(range.value) : calendarRangeFilter(pathOf(props.startSource), range.value, pathOfOptional(props.endSource)));
|
|
125
125
|
const rangeStartISO = computed(() => range.value.start.toISOString());
|
|
126
126
|
const rangeEndISO = computed(() => range.value.end.toISOString());
|
|
127
127
|
const originalPerPage = list.perPage === props.perPage ? list.defaultPerPage ?? DEFAULT_PER_PAGE : list.perPage;
|
|
128
128
|
let appliedKeys = [];
|
|
129
129
|
const without = (filter, keys) => Object.fromEntries(Object.entries(filter).filter(([key]) => !keys.includes(key)));
|
|
130
|
-
const staleKeys = computed(() => props.rangeFilter ? [] : staleCalendarRangeKeys(props.startSource, props.endSource));
|
|
130
|
+
const staleKeys = computed(() => props.rangeFilter ? [] : staleCalendarRangeKeys(pathOf(props.startSource), pathOfOptional(props.endSource)));
|
|
131
131
|
const inSync = computed(() => list.perPage === props.perPage && staleKeys.value.every((key) => !(key in list.filter)) && Object.entries(rangeValue.value).every(([key, value]) => list.filter[key] === value));
|
|
132
132
|
watch([
|
|
133
133
|
rangeStartISO,
|
|
@@ -56,7 +56,7 @@ var count_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComp
|
|
|
56
56
|
}, null, 8, ["timeout", "class"])) : unref(error) ? (openBlock(), createElementBlock("span", {
|
|
57
57
|
key: 1,
|
|
58
58
|
role: "img",
|
|
59
|
-
"aria-label": unref(translate)("
|
|
59
|
+
"aria-label": unref(translate)("chelone.notification.http_error_label", { _: "Error" }),
|
|
60
60
|
class: normalizeClass(unref(cn)("inline-flex text-destructive", props.class))
|
|
61
61
|
}, [createVNode(unref(CircleXIcon))], 10, _hoisted_1)) : unref(data)?.total != null ? (openBlock(), createElementBlock(Fragment, { key: 2 }, [__props.link ? (openBlock(), createBlock(unref(RouterLink), {
|
|
62
62
|
key: 0,
|
|
@@ -98,7 +98,7 @@ var filter_form_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defi
|
|
|
98
98
|
key: 0,
|
|
99
99
|
type: "button",
|
|
100
100
|
class: "hide-filter inline-flex size-9 shrink-0 cursor-pointer items-center justify-center rounded-md mt-auto hover:bg-accent hover:text-accent-foreground",
|
|
101
|
-
title: unref(translate)("
|
|
101
|
+
title: unref(translate)("chelone.action.remove_filter", { _: "Remove filter" }),
|
|
102
102
|
onClick: ($event) => unref(list).hideFilter(entry.source)
|
|
103
103
|
}, [createVNode(unref(MinusCircleIcon))], 8, _hoisted_2)) : createCommentVNode("", true)], 8, _hoisted_1)) : createCommentVNode("", true)], 64);
|
|
104
104
|
}), 128)), renderSlot(_ctx.$slots, "default")], 32);
|
|
@@ -50,7 +50,7 @@ var filter_list_item_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
50
50
|
variant: "ghost",
|
|
51
51
|
size: "icon",
|
|
52
52
|
class: "size-8",
|
|
53
|
-
"aria-label": unref(translate)("
|
|
53
|
+
"aria-label": unref(translate)("chelone.action.remove_filter", { _: "Remove filter" }),
|
|
54
54
|
onClick: toggle
|
|
55
55
|
}, {
|
|
56
56
|
default: withCtx(() => [..._cache[0] || (_cache[0] = [createElementVNode("span", { "aria-hidden": "true" }, "×", -1)])]),
|
package/dist/components/admin/list/filter-live-search.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -30,7 +30,7 @@ var filter_live_search_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
|
|
|
30
30
|
const translate = useTranslate();
|
|
31
31
|
return (_ctx, _cache) => {
|
|
32
32
|
return openBlock(), createBlock(filter_form_default, null, {
|
|
33
|
-
default: withCtx(() => [createVNode(search_input_default, mergeProps(props, { placeholder: props.placeholder ?? unref(translate)("
|
|
33
|
+
default: withCtx(() => [createVNode(search_input_default, mergeProps(props, { placeholder: props.placeholder ?? unref(translate)("chelone.action.search", { _: "Search" }) }), null, 16, ["placeholder"])]),
|
|
34
34
|
_: 1
|
|
35
35
|
});
|
|
36
36
|
};
|
|
@@ -22,13 +22,13 @@ var list_no_results_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
22
22
|
if (!resource) throw new Error("<ListNoResults> must be used inside a <List> component");
|
|
23
23
|
const filtered = computed(() => Object.keys(list.filter ?? {}).length > 0);
|
|
24
24
|
return (_ctx, _cache) => {
|
|
25
|
-
return openBlock(), createElementBlock("div", { class: normalizeClass(unref(cn)("flex flex-col items-center gap-2 p-6 text-center text-sm", props.class)) }, [createElementVNode("p", _hoisted_1, toDisplayString(filtered.value ? unref(translate)("
|
|
25
|
+
return openBlock(), createElementBlock("div", { class: normalizeClass(unref(cn)("flex flex-col items-center gap-2 p-6 text-center text-sm", props.class)) }, [createElementVNode("p", _hoisted_1, toDisplayString(filtered.value ? unref(translate)("chelone.navigation.no_filtered_results", { _: "No results found with the current filters." }) : unref(translate)("chelone.navigation.no_results", { _: "No results found" })), 1), filtered.value ? (openBlock(), createBlock(button_default, {
|
|
26
26
|
key: 0,
|
|
27
27
|
variant: "outline",
|
|
28
28
|
size: "sm",
|
|
29
29
|
onClick: _cache[0] || (_cache[0] = ($event) => unref(list).setFilters({}, {}))
|
|
30
30
|
}, {
|
|
31
|
-
default: withCtx(() => [createTextVNode(toDisplayString(unref(translate)("
|
|
31
|
+
default: withCtx(() => [createTextVNode(toDisplayString(unref(translate)("chelone.navigation.clear_filters", { _: "Clear filters" })), 1)]),
|
|
32
32
|
_: 1
|
|
33
33
|
})) : createCommentVNode("", true)], 2);
|
|
34
34
|
};
|
|
@@ -99,14 +99,14 @@ var list_pagination_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
99
99
|
for (const p of endPages) pushPage(p);
|
|
100
100
|
return tokens;
|
|
101
101
|
});
|
|
102
|
-
const previousLabel = computed(() => translate("
|
|
103
|
-
const nextLabel = computed(() => translate("
|
|
104
|
-
const rowsPerPageLabel = computed(() => translate("
|
|
105
|
-
const rangeLabel = computed(() => isPartial.value ? translate("
|
|
102
|
+
const previousLabel = computed(() => translate("chelone.navigation.previous", { _: "Previous" }));
|
|
103
|
+
const nextLabel = computed(() => translate("chelone.navigation.next", { _: "Next" }));
|
|
104
|
+
const rowsPerPageLabel = computed(() => translate("chelone.navigation.page_rows_per_page", { _: "Rows per page" }));
|
|
105
|
+
const rangeLabel = computed(() => isPartial.value ? translate("chelone.navigation.partial_page_range_info", {
|
|
106
106
|
offsetBegin: pageStart.value,
|
|
107
107
|
offsetEnd: pageEnd.value,
|
|
108
108
|
_: `${pageStart.value}-${pageEnd.value}`
|
|
109
|
-
}) : translate("
|
|
109
|
+
}) : translate("chelone.navigation.page_range_info", {
|
|
110
110
|
offsetBegin: pageStart.value,
|
|
111
111
|
offsetEnd: pageEnd.value,
|
|
112
112
|
total: totalDisplay.value,
|
|
@@ -61,7 +61,7 @@ var prev_next_buttons_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*
|
|
|
61
61
|
}, null, 8, ["class"])) : unref(controller).error ? (openBlock(), createElementBlock("span", {
|
|
62
62
|
key: 1,
|
|
63
63
|
role: "img",
|
|
64
|
-
"aria-label": unref(translate)("
|
|
64
|
+
"aria-label": unref(translate)("chelone.notification.http_error_label", { _: "Error" }),
|
|
65
65
|
class: normalizeClass(unref(cn)("inline-flex text-destructive", props.class))
|
|
66
66
|
}, [createVNode(unref(AlertCircleIcon))], 10, _hoisted_1)) : !unref(controller).hasPrev && !unref(controller).hasNext ? (openBlock(), createElementBlock("div", {
|
|
67
67
|
key: 2,
|
|
@@ -75,7 +75,7 @@ var prev_next_buttons_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*
|
|
|
75
75
|
unref(controller).prevPath ? (openBlock(), createBlock(unref(RouterLink), {
|
|
76
76
|
key: 0,
|
|
77
77
|
to: unref(controller).prevPath,
|
|
78
|
-
"aria-label": unref(translate)("
|
|
78
|
+
"aria-label": unref(translate)("chelone.navigation.previous", { _: "Previous" }),
|
|
79
79
|
class: normalizeClass(unref(ghostIcon))
|
|
80
80
|
}, {
|
|
81
81
|
default: withCtx(() => [createVNode(unref(ChevronLeftIcon))]),
|
|
@@ -88,7 +88,7 @@ var prev_next_buttons_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*
|
|
|
88
88
|
key: 1,
|
|
89
89
|
variant: "ghost",
|
|
90
90
|
size: "icon",
|
|
91
|
-
"aria-label": unref(translate)("
|
|
91
|
+
"aria-label": unref(translate)("chelone.navigation.previous", { _: "Previous" }),
|
|
92
92
|
disabled: ""
|
|
93
93
|
}, {
|
|
94
94
|
default: withCtx(() => [createVNode(unref(ChevronLeftIcon))]),
|
|
@@ -98,7 +98,7 @@ var prev_next_buttons_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*
|
|
|
98
98
|
unref(controller).nextPath ? (openBlock(), createBlock(unref(RouterLink), {
|
|
99
99
|
key: 3,
|
|
100
100
|
to: unref(controller).nextPath,
|
|
101
|
-
"aria-label": unref(translate)("
|
|
101
|
+
"aria-label": unref(translate)("chelone.navigation.next", { _: "Next" }),
|
|
102
102
|
class: normalizeClass(unref(ghostIcon))
|
|
103
103
|
}, {
|
|
104
104
|
default: withCtx(() => [createVNode(unref(ChevronRightIcon))]),
|
|
@@ -111,7 +111,7 @@ var prev_next_buttons_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*
|
|
|
111
111
|
key: 4,
|
|
112
112
|
variant: "ghost",
|
|
113
113
|
size: "icon",
|
|
114
|
-
"aria-label": unref(translate)("
|
|
114
|
+
"aria-label": unref(translate)("chelone.navigation.next", { _: "Next" }),
|
|
115
115
|
disabled: ""
|
|
116
116
|
}, {
|
|
117
117
|
default: withCtx(() => [createVNode(unref(ChevronRightIcon))]),
|
package/dist/components/admin/list/saved-queries-list.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -37,7 +37,7 @@ var saved_queries_list_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
|
|
|
37
37
|
const out = translate(key, params);
|
|
38
38
|
return out === key ? fallback : out;
|
|
39
39
|
};
|
|
40
|
-
const removeLabel = (label) => t("
|
|
40
|
+
const removeLabel = (label) => t("chelone.saved_queries.remove_label_with_name", `Remove saved query "${label}"`, { name: label });
|
|
41
41
|
const current = computed(() => ({
|
|
42
42
|
filter: toRaw(list.filter),
|
|
43
43
|
displayedFilters: toRaw(list.displayedFilters),
|
|
@@ -112,14 +112,14 @@ var saved_queries_list_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
|
|
|
112
112
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => name.value = $event),
|
|
113
113
|
type: "text",
|
|
114
114
|
class: "h-8 w-48",
|
|
115
|
-
"aria-label": t("
|
|
115
|
+
"aria-label": t("chelone.saved_queries.query_name", "Query name")
|
|
116
116
|
}, null, 8, ["modelValue", "aria-label"]),
|
|
117
117
|
createVNode(button_default, {
|
|
118
118
|
type: "submit",
|
|
119
119
|
size: "sm",
|
|
120
120
|
disabled: !name.value.trim()
|
|
121
121
|
}, {
|
|
122
|
-
default: withCtx(() => [createTextVNode(toDisplayString(t("
|
|
122
|
+
default: withCtx(() => [createTextVNode(toDisplayString(t("chelone.action.save", "Save")), 1)]),
|
|
123
123
|
_: 1
|
|
124
124
|
}, 8, ["disabled"]),
|
|
125
125
|
createVNode(button_default, {
|
|
@@ -127,7 +127,7 @@ var saved_queries_list_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
|
|
|
127
127
|
size: "sm",
|
|
128
128
|
onClick: closeForm
|
|
129
129
|
}, {
|
|
130
|
-
default: withCtx(() => [createTextVNode(toDisplayString(t("
|
|
130
|
+
default: withCtx(() => [createTextVNode(toDisplayString(t("chelone.action.cancel", "Cancel")), 1)]),
|
|
131
131
|
_: 1
|
|
132
132
|
})
|
|
133
133
|
], 32)) : canSave.value ? (openBlock(), createBlock(button_default, {
|
|
@@ -136,7 +136,7 @@ var saved_queries_list_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
|
|
|
136
136
|
size: "sm",
|
|
137
137
|
onClick: _cache[1] || (_cache[1] = ($event) => naming.value = true)
|
|
138
138
|
}, {
|
|
139
|
-
default: withCtx(() => [createTextVNode(toDisplayString(t("
|
|
139
|
+
default: withCtx(() => [createTextVNode(toDisplayString(t("chelone.saved_queries.new_label", "Save current query")), 1)]),
|
|
140
140
|
_: 1
|
|
141
141
|
})) : createCommentVNode("", true)], 2);
|
|
142
142
|
};
|
|
@@ -117,7 +117,7 @@ var tree_list_node_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
|
|
|
117
117
|
"data-slot": "tree-list-chevron",
|
|
118
118
|
tabindex: "-1",
|
|
119
119
|
class: "flex size-6 shrink-0 items-center justify-center rounded-md hover:bg-accent",
|
|
120
|
-
"aria-label": open.value ? unref(translate)("
|
|
120
|
+
"aria-label": open.value ? unref(translate)("chelone.action.collapse", { _: "Collapse" }) : unref(translate)("chelone.action.expand", { _: "Expand" }),
|
|
121
121
|
onClick: _cache[0] || (_cache[0] = ($event) => unref(tree).toggle(record.value.id))
|
|
122
122
|
}, [open.value ? (openBlock(), createBlock(unref(ChevronDownIcon), { key: 0 })) : (openBlock(), createBlock(unref(ChevronRightIcon), { key: 1 }))], 8, _hoisted_3)) : (openBlock(), createElementBlock("span", _hoisted_4)), (openBlock(), createBlock(resolveDynamicComponent(rowTag.value), {
|
|
123
123
|
"data-slot": "tree-list-row",
|