@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
|
@@ -2,6 +2,7 @@ import layout_default from "../components/admin/layout/layout.js";
|
|
|
2
2
|
import theme_provider_default from "../components/admin/layout/theme-provider.js";
|
|
3
3
|
import login_page_default from "../components/admin/auth/login-page.js";
|
|
4
4
|
import spinner_default from "../components/ui/spinner.js";
|
|
5
|
+
import { useLocale } from "../i18n/use-locale.js";
|
|
5
6
|
import { useBasename } from "../router/adapter.js";
|
|
6
7
|
import { useWatchDataErrors } from "../auth/permissions-hooks.js";
|
|
7
8
|
import { useAuthGate } from "./auth-gate.js";
|
|
@@ -9,8 +10,8 @@ import { NO_LAYOUT_META } from "./custom-routes.js";
|
|
|
9
10
|
import navigate_to_first_resource_default from "./navigate-to-first-resource.js";
|
|
10
11
|
import { useResourceDefinitions } from "./resource-registry.js";
|
|
11
12
|
import shell_error_boundary_default from "./shell-error-boundary.js";
|
|
12
|
-
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createVNode, defineComponent, guardReactiveProps, normalizeProps, openBlock, renderSlot, resolveComponent, unref, useSlots, withCtx } from "vue";
|
|
13
|
-
import { joinBasename } from "@chelone/core";
|
|
13
|
+
import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createVNode, defineComponent, guardReactiveProps, normalizeProps, openBlock, renderSlot, resolveComponent, unref, useSlots, watchEffect, withCtx } from "vue";
|
|
14
|
+
import { getLocaleDirection, joinBasename } from "@chelone/core";
|
|
14
15
|
import { START_LOCATION, useRoute, useRouter } from "vue-router";
|
|
15
16
|
// src/admin/admin-shell.vue?vue&type=script&setup=true&lang.ts
|
|
16
17
|
var _hoisted_1 = { class: "flex min-h-screen flex-col justify-center items-center" };
|
|
@@ -53,6 +54,18 @@ var admin_shell_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defi
|
|
|
53
54
|
return router.currentRoute.value !== START_LOCATION && (path === indexPath || path === `${indexPath}/`);
|
|
54
55
|
});
|
|
55
56
|
useWatchDataErrors();
|
|
57
|
+
const locale = useLocale();
|
|
58
|
+
const direction = computed(() => getLocaleDirection(locale.value));
|
|
59
|
+
watchEffect((onCleanup) => {
|
|
60
|
+
if (typeof document === "undefined") return;
|
|
61
|
+
const root = document.documentElement;
|
|
62
|
+
const previous = root.getAttribute("dir");
|
|
63
|
+
root.setAttribute("dir", direction.value);
|
|
64
|
+
onCleanup(() => {
|
|
65
|
+
if (previous === null) root.removeAttribute("dir");
|
|
66
|
+
else root.setAttribute("dir", previous);
|
|
67
|
+
});
|
|
68
|
+
});
|
|
56
69
|
return (_ctx, _cache) => {
|
|
57
70
|
const _component_router_view = resolveComponent("router-view");
|
|
58
71
|
return showReady() ? (openBlock(), createBlock(theme_provider_default, { key: 0 }, {
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
* (name + `has*` flags) — a Vue-adapter-local shape, matching how React's
|
|
17
17
|
* `<Resource>` also carries the view components as props.
|
|
18
18
|
*/
|
|
19
|
+
import type { RegisteredResourceName } from "@chelone/core";
|
|
19
20
|
import { type Component, type ComputedRef, type InjectionKey, type MaybeRefOrGetter } from "vue";
|
|
20
21
|
import type { RecordRepresentation } from "../index.js";
|
|
21
22
|
/**
|
|
@@ -25,8 +26,11 @@ import type { RecordRepresentation } from "../index.js";
|
|
|
25
26
|
* the menu / breadcrumb surface (later phases).
|
|
26
27
|
*/
|
|
27
28
|
export interface ResourceDefinition {
|
|
28
|
-
/**
|
|
29
|
-
|
|
29
|
+
/**
|
|
30
|
+
* The resource name — the registry key and the route base (`/{name}`). A
|
|
31
|
+
* registered resource once `Register` is augmented, else any string.
|
|
32
|
+
*/
|
|
33
|
+
name: RegisteredResourceName;
|
|
30
34
|
/** The list view. Presence adds the `/{name}` route. */
|
|
31
35
|
list?: Component;
|
|
32
36
|
/** The create view. Presence adds the `/{name}/create` route. */
|
|
@@ -2,24 +2,6 @@ import { useResourceContext } from "../resource-context.js";
|
|
|
2
2
|
import { computed, inject, shallowReactive, toValue } from "vue";
|
|
3
3
|
// src/admin/resource-registry.ts
|
|
4
4
|
/**
|
|
5
|
-
* The runtime resource registry for `@chelone/vue` — the Vue twin of the React
|
|
6
|
-
* adapter's registry seam (`packages/react/src/resource/registry-hooks.tsx`).
|
|
7
|
-
* Where React wraps core's vanilla `createResourceRegistry` in a
|
|
8
|
-
* `useSyncExternalStore`, the Vue adapter models the registry as a *reactive
|
|
9
|
-
* map* (D3): `<Resource>` children `register` themselves into it on `setup` and
|
|
10
|
-
* `unregister` on scope disposal, and `<Admin>`'s `watchEffect` rebuilds the
|
|
11
|
-
* vue-router route table whenever the map's key set changes. Vue's own
|
|
12
|
-
* reactivity graph replaces the external-store subscription — no bridge needed
|
|
13
|
-
* because the registry IS reactive.
|
|
14
|
-
*
|
|
15
|
-
* The stored `ResourceDefinition` deliberately holds the ACTUAL view components
|
|
16
|
-
* (`list`/`edit`/`create`/`show`) rather than boolean `has*` route flags: the
|
|
17
|
-
* Vue router needs the component to mount a route, so the registry doubles as
|
|
18
|
-
* the source of route records. This differs from core's `ResourceDefinition`
|
|
19
|
-
* (name + `has*` flags) — a Vue-adapter-local shape, matching how React's
|
|
20
|
-
* `<Resource>` also carries the view components as props.
|
|
21
|
-
*/
|
|
22
|
-
/**
|
|
23
5
|
* The provide/inject key for the reactive registry. `<Admin>` provides it in
|
|
24
6
|
* `setup`; `<Resource>` reads it via {@link useResourceRegistry} to
|
|
25
7
|
* self-register. A typed `InjectionKey` keeps both sites cast-free.
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import { type ResourceDefinition } from "./resource-registry.js";
|
|
2
|
+
import type { RegisteredResourceName } from "@chelone/core";
|
|
2
3
|
/** Props for {@link Resource}. */
|
|
3
4
|
export interface ResourceProps {
|
|
4
|
-
/**
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The resource name — the registry key and the route base (`/{name}`). A
|
|
7
|
+
* registered resource once `Register` is augmented, else any string.
|
|
8
|
+
*/
|
|
9
|
+
name: RegisteredResourceName;
|
|
6
10
|
/** The list view (adds the `/{name}` route). */
|
|
7
11
|
list?: ResourceDefinition["list"];
|
|
8
12
|
/** The create view (adds the `/{name}/create` route). */
|
|
@@ -21,18 +21,18 @@ import { type InjectionKey } from "vue";
|
|
|
21
21
|
* data fields through getters (reactive); an inline context is static. The
|
|
22
22
|
* list-mutation actions are inert on an inline context.
|
|
23
23
|
*/
|
|
24
|
-
export interface ChoicesContextValue {
|
|
25
|
-
allChoices:
|
|
26
|
-
availableChoices:
|
|
27
|
-
selectedChoices:
|
|
24
|
+
export interface ChoicesContextValue<TChoice extends ChoiceRecord = ChoiceRecord> {
|
|
25
|
+
allChoices: TChoice[];
|
|
26
|
+
availableChoices: TChoice[];
|
|
27
|
+
selectedChoices: TChoice[];
|
|
28
28
|
total: number | undefined;
|
|
29
29
|
isPending: boolean;
|
|
30
30
|
isFetching: boolean;
|
|
31
31
|
error: Error | null;
|
|
32
32
|
page: number;
|
|
33
33
|
perPage: number;
|
|
34
|
-
sort: SortPayload
|
|
35
|
-
filter: FilterPayload
|
|
34
|
+
sort: SortPayload<TChoice>;
|
|
35
|
+
filter: FilterPayload<TChoice>;
|
|
36
36
|
hasNextPage: boolean | undefined;
|
|
37
37
|
hasPreviousPage: boolean | undefined;
|
|
38
38
|
/** The referenced resource name (inline: `undefined`). */
|
|
@@ -43,8 +43,8 @@ export interface ChoicesContextValue {
|
|
|
43
43
|
isFromReference: boolean;
|
|
44
44
|
setPage(page: number): void;
|
|
45
45
|
setPerPage(perPage: number): void;
|
|
46
|
-
setSort(sort: SortPayload): void;
|
|
47
|
-
setFilters(filter: FilterPayload
|
|
46
|
+
setSort(sort: SortPayload<TChoice>): void;
|
|
47
|
+
setFilters(filter: FilterPayload<TChoice>, debounce?: boolean): void;
|
|
48
48
|
setValue(value: unknown): void;
|
|
49
49
|
refetch(): void;
|
|
50
50
|
}
|
|
@@ -81,4 +81,4 @@ export interface UseChoicesContextOptions {
|
|
|
81
81
|
* {@link provideChoicesContext} value is returned. Throws if neither is present.
|
|
82
82
|
* Call in `setup`.
|
|
83
83
|
*/
|
|
84
|
-
export declare function useChoicesContext(options?: UseChoicesContextOptions): ChoicesContextValue
|
|
84
|
+
export declare function useChoicesContext<TChoice extends ChoiceRecord = ChoiceRecord>(options?: UseChoicesContextOptions): ChoicesContextValue<TChoice>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useCheloneContext } from "../context.js";
|
|
2
2
|
import { useMicroStore } from "../store/use-micro-store.js";
|
|
3
|
-
import { choiceListsOf, createChoicesController } from "@chelone/core";
|
|
3
|
+
import { choiceListsOf, createChoicesController, eraseChoicesController } from "@chelone/core";
|
|
4
4
|
// src/choices/use-reference-input.ts
|
|
5
5
|
/** Structurally the choices-controller context (data services + i18n). */
|
|
6
6
|
function toChoicesContext(ctx) {
|
|
@@ -23,7 +23,7 @@ function toChoicesContext(ctx) {
|
|
|
23
23
|
*/
|
|
24
24
|
function useReferenceInput(options) {
|
|
25
25
|
const ctx = useCheloneContext();
|
|
26
|
-
const controller = createChoicesController(toChoicesContext(ctx), options);
|
|
26
|
+
const controller = eraseChoicesController(createChoicesController(toChoicesContext(ctx), options));
|
|
27
27
|
const state = useMicroStore(controller);
|
|
28
28
|
return {
|
|
29
29
|
get allChoices() {
|
|
@@ -12,9 +12,9 @@ import type { FunctionalComponent } from "vue";
|
|
|
12
12
|
export interface AccessDeniedProps {
|
|
13
13
|
/** Override the default padlock glyph. */
|
|
14
14
|
icon?: FunctionalComponent;
|
|
15
|
-
/** i18n key for the heading. Defaults to `
|
|
15
|
+
/** i18n key for the heading. Defaults to `chelone.page.access_denied`. */
|
|
16
16
|
textPrimary?: string;
|
|
17
|
-
/** i18n key for the sub-text. Defaults to `
|
|
17
|
+
/** i18n key for the sub-text. Defaults to `chelone.message.access_denied_detail`. */
|
|
18
18
|
textSecondary?: string;
|
|
19
19
|
class?: string;
|
|
20
20
|
}
|
|
@@ -10,8 +10,8 @@ var access_denied_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
10
10
|
__name: "access-denied",
|
|
11
11
|
props: {
|
|
12
12
|
icon: {},
|
|
13
|
-
textPrimary: { default: "
|
|
14
|
-
textSecondary: { default: "
|
|
13
|
+
textPrimary: { default: "chelone.page.access_denied" },
|
|
14
|
+
textSecondary: { default: "chelone.message.access_denied_detail" },
|
|
15
15
|
class: {}
|
|
16
16
|
},
|
|
17
17
|
setup(__props) {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/** Props for {@link AuthError}. */
|
|
2
2
|
export interface AuthErrorProps {
|
|
3
|
-
/** i18n key for the heading. Defaults to `
|
|
3
|
+
/** i18n key for the heading. Defaults to `chelone.page.error`. */
|
|
4
4
|
title?: string;
|
|
5
|
-
/** i18n key (or raw message) for the body. Defaults to `
|
|
5
|
+
/** i18n key (or raw message) for the body. Defaults to `chelone.message.auth_error`. */
|
|
6
6
|
message?: string;
|
|
7
7
|
class?: string;
|
|
8
8
|
}
|
|
@@ -14,8 +14,8 @@ var _hoisted_2 = { class: "my-5" };
|
|
|
14
14
|
var auth_error_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
15
15
|
__name: "auth-error",
|
|
16
16
|
props: {
|
|
17
|
-
title: { default: "
|
|
18
|
-
message: { default: "
|
|
17
|
+
title: { default: "chelone.page.error" },
|
|
18
|
+
message: { default: "chelone.message.auth_error" },
|
|
19
19
|
class: {}
|
|
20
20
|
},
|
|
21
21
|
setup(__props) {
|
|
@@ -43,7 +43,7 @@ var auth_error_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defin
|
|
|
43
43
|
class: normalizeClass(linkClasses.value),
|
|
44
44
|
"data-slot": "auth-error-signin"
|
|
45
45
|
}, {
|
|
46
|
-
default: withCtx(() => [createVNode(unref(LockIcon), { class: "size-4" }), createTextVNode(" " + toDisplayString(unref(translate)("
|
|
46
|
+
default: withCtx(() => [createVNode(unref(LockIcon), { class: "size-4" }), createTextVNode(" " + toDisplayString(unref(translate)("chelone.auth.sign_in", { _: "Sign in" })), 1)]),
|
|
47
47
|
_: 1
|
|
48
48
|
}, 8, ["to", "class"])
|
|
49
49
|
], 2);
|
|
@@ -3,9 +3,9 @@ import type { FunctionalComponent } from "vue";
|
|
|
3
3
|
export interface AuthenticationErrorProps {
|
|
4
4
|
/** Override the default warning-triangle glyph. */
|
|
5
5
|
icon?: FunctionalComponent;
|
|
6
|
-
/** i18n key for the heading. Defaults to `
|
|
6
|
+
/** i18n key for the heading. Defaults to `chelone.page.authentication_error`. */
|
|
7
7
|
textPrimary?: string;
|
|
8
|
-
/** i18n key for the sub-text. Defaults to `
|
|
8
|
+
/** i18n key for the sub-text. Defaults to `chelone.message.authentication_error_detail`. */
|
|
9
9
|
textSecondary?: string;
|
|
10
10
|
class?: string;
|
|
11
11
|
}
|
package/dist/components/admin/auth/authentication-error.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -6,8 +6,8 @@ var authentication_error_vue_vue_type_script_setup_true_lang_default = /*@__PURE
|
|
|
6
6
|
__name: "authentication-error",
|
|
7
7
|
props: {
|
|
8
8
|
icon: {},
|
|
9
|
-
textPrimary: { default: "
|
|
10
|
-
textSecondary: { default: "
|
|
9
|
+
textPrimary: { default: "chelone.page.authentication_error" },
|
|
10
|
+
textSecondary: { default: "chelone.message.authentication_error_detail" },
|
|
11
11
|
class: {}
|
|
12
12
|
},
|
|
13
13
|
setup(__props) {
|
|
@@ -47,7 +47,7 @@ var login_form_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defin
|
|
|
47
47
|
} : { ...values });
|
|
48
48
|
} catch (error) {
|
|
49
49
|
const message = errorMessageOf(error);
|
|
50
|
-
notifications?.notify(message ?? "
|
|
50
|
+
notifications?.notify(message ?? "chelone.auth.sign_in_error", {
|
|
51
51
|
type: "error",
|
|
52
52
|
messageArgs: message === void 0 ? void 0 : { _: message }
|
|
53
53
|
});
|
|
@@ -89,7 +89,7 @@ var login_form_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defin
|
|
|
89
89
|
class: "cursor-pointer",
|
|
90
90
|
disabled: unref(submitting)
|
|
91
91
|
}, {
|
|
92
|
-
default: withCtx(() => [unref(submitting) ? (openBlock(), createBlock(spinner_default, { key: 0 })) : createCommentVNode("", true), createTextVNode(" " + toDisplayString(unref(translate)("
|
|
92
|
+
default: withCtx(() => [unref(submitting) ? (openBlock(), createBlock(spinner_default, { key: 0 })) : createCommentVNode("", true), createTextVNode(" " + toDisplayString(unref(translate)("chelone.auth.sign_in", { _: "Sign in" })), 1)]),
|
|
93
93
|
_: 1
|
|
94
94
|
}, 8, ["disabled"])
|
|
95
95
|
], 34);
|
|
@@ -18,7 +18,7 @@ export interface LoginWithEmailProps {
|
|
|
18
18
|
* `authProvider.login`; ignored when `onSubmit` is set.
|
|
19
19
|
*/
|
|
20
20
|
redirectTo?: string;
|
|
21
|
-
/** Button text. Defaults to the translated `
|
|
21
|
+
/** Button text. Defaults to the translated `chelone.auth.sign_in`. */
|
|
22
22
|
submitLabel?: string;
|
|
23
23
|
/** Extra class names applied to the `<form>` element. */
|
|
24
24
|
class?: string;
|
|
@@ -59,7 +59,7 @@ var login_with_email_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
59
59
|
});
|
|
60
60
|
} catch (error) {
|
|
61
61
|
const message = errorMessageOf(error);
|
|
62
|
-
notifications?.notify(message ?? "
|
|
62
|
+
notifications?.notify(message ?? "chelone.auth.sign_in_error", {
|
|
63
63
|
type: "error",
|
|
64
64
|
messageArgs: message === void 0 ? void 0 : { _: message }
|
|
65
65
|
});
|
|
@@ -103,7 +103,7 @@ var login_with_email_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
103
103
|
default: withCtx(() => [props.loading || unref(submitting) ? (openBlock(), createBlock(spinner_default, { key: 0 })) : (openBlock(), createBlock(unref(LogInIcon), {
|
|
104
104
|
key: 1,
|
|
105
105
|
class: "size-4"
|
|
106
|
-
})), createTextVNode(" " + toDisplayString(props.submitLabel ?? unref(translate)("
|
|
106
|
+
})), createTextVNode(" " + toDisplayString(props.submitLabel ?? unref(translate)("chelone.auth.sign_in", { _: "Sign in" })), 1)]),
|
|
107
107
|
_: 1
|
|
108
108
|
}, 8, ["disabled"])
|
|
109
109
|
], 34);
|
|
@@ -35,7 +35,7 @@ var logout_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineCom
|
|
|
35
35
|
class: normalizeClass(unref(cn)("cursor-pointer", props.class)),
|
|
36
36
|
onSelect: handleClick
|
|
37
37
|
}, {
|
|
38
|
-
default: withCtx(() => [createVNode(unref(LogOutIcon)), createTextVNode(" " + toDisplayString(unref(translate)("
|
|
38
|
+
default: withCtx(() => [createVNode(unref(LogOutIcon)), createTextVNode(" " + toDisplayString(unref(translate)("chelone.auth.logout", { _: "Log out" })), 1)]),
|
|
39
39
|
_: 1
|
|
40
40
|
}, 8, ["class"])) : createCommentVNode("", true);
|
|
41
41
|
};
|
|
@@ -59,7 +59,7 @@ var permission_matrix_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*
|
|
|
59
59
|
return text.charAt(0).toUpperCase() + text.slice(1);
|
|
60
60
|
}
|
|
61
61
|
function actionLabel(action) {
|
|
62
|
-
return translate(`
|
|
62
|
+
return translate(`chelone.action.${action}`, { _: capitalize(action) });
|
|
63
63
|
}
|
|
64
64
|
const allLabel = computed(() => translate("chelone.permission_matrix.all", { _: "All" }));
|
|
65
65
|
const activeRole = computed(() => {
|
|
@@ -11,9 +11,9 @@ export interface BulkDeleteButtonProps {
|
|
|
11
11
|
* window closes. Default (`"pessimistic"`) is confirm-gated.
|
|
12
12
|
*/
|
|
13
13
|
mutationMode?: MutationMode;
|
|
14
|
-
/** Confirmation-dialog title. Default `"
|
|
14
|
+
/** Confirmation-dialog title. Default `"chelone.message.bulk_delete_title"`. */
|
|
15
15
|
confirmTitle?: string;
|
|
16
|
-
/** Confirmation-dialog body copy. Default `"
|
|
16
|
+
/** Confirmation-dialog body copy. Default `"chelone.message.bulk_delete_content"`. */
|
|
17
17
|
confirmContent?: string;
|
|
18
18
|
/** `"warning"` tints the confirm button destructive. Default `"warning"`. */
|
|
19
19
|
confirmColor?: "primary" | "warning";
|
package/dist/components/admin/buttons/bulk-delete-button.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -17,8 +17,8 @@ var bulk_delete_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
|
|
|
17
17
|
resource: {},
|
|
18
18
|
label: {},
|
|
19
19
|
mutationMode: {},
|
|
20
|
-
confirmTitle: { default: "
|
|
21
|
-
confirmContent: { default: "
|
|
20
|
+
confirmTitle: { default: "chelone.message.bulk_delete_title" },
|
|
21
|
+
confirmContent: { default: "chelone.message.bulk_delete_content" },
|
|
22
22
|
confirmColor: { default: "warning" },
|
|
23
23
|
class: {}
|
|
24
24
|
},
|
|
@@ -57,7 +57,7 @@ var bulk_delete_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
|
|
|
57
57
|
const refresh = useRefresh();
|
|
58
58
|
const deleteMany = useDeleteMany(resource);
|
|
59
59
|
const isPending = computed(() => deleteMany.isPending.value);
|
|
60
|
-
const label = computed(() => translate("
|
|
60
|
+
const label = computed(() => translate("chelone.action.delete", { _: props.label ?? "Delete" }));
|
|
61
61
|
const classes = computed(() => props.class ?? "h-9");
|
|
62
62
|
const open = ref(false);
|
|
63
63
|
const selectedCount = computed(() => (list.selectedIds ?? []).length);
|
package/dist/components/admin/buttons/bulk-export-button.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -34,7 +34,7 @@ var bulk_export_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
|
|
|
34
34
|
const { dataProvider } = useCheloneContext();
|
|
35
35
|
const notifications = useCheloneNotifications();
|
|
36
36
|
const translate = useTranslate();
|
|
37
|
-
const label = computed(() => translate("
|
|
37
|
+
const label = computed(() => translate("chelone.action.export", { _: props.label ?? "Export" }));
|
|
38
38
|
async function onClick() {
|
|
39
39
|
const exporter = props.exporter ?? defaultExporter;
|
|
40
40
|
try {
|
package/dist/components/admin/buttons/bulk-update-button.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -49,7 +49,7 @@ var bulk_update_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
|
|
|
49
49
|
const list = useListContext();
|
|
50
50
|
const updateMany = useUpdateMany(resource);
|
|
51
51
|
const isPending = computed(() => updateMany.isPending.value);
|
|
52
|
-
const label = computed(() => props.label ? translate(props.label, { _: props.label }) : translate("
|
|
52
|
+
const label = computed(() => props.label ? translate(props.label, { _: props.label }) : translate("chelone.action.update", { _: "Update" }));
|
|
53
53
|
async function onClick(event) {
|
|
54
54
|
event.stopPropagation();
|
|
55
55
|
const ids = list.selectedIds ?? [];
|
|
@@ -73,7 +73,7 @@ var bulk_update_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__
|
|
|
73
73
|
list.unselectAll();
|
|
74
74
|
return;
|
|
75
75
|
}
|
|
76
|
-
const message = props.confirmContent ?? translate("
|
|
76
|
+
const message = props.confirmContent ?? translate("chelone.message.bulk_update_content", {
|
|
77
77
|
smart_count: ids.length,
|
|
78
78
|
_: "Are you sure you want to update these items?"
|
|
79
79
|
});
|
|
@@ -20,7 +20,7 @@ var cancel_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
20
20
|
const props = __props;
|
|
21
21
|
const navigate = useNavigate();
|
|
22
22
|
const translate = useTranslate();
|
|
23
|
-
const label = computed(() => translate("
|
|
23
|
+
const label = computed(() => translate("chelone.action.cancel", { _: props.label ?? "Cancel" }));
|
|
24
24
|
function onClick() {
|
|
25
25
|
navigate(-1);
|
|
26
26
|
}
|
|
@@ -43,7 +43,7 @@ var clone_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
43
43
|
type: "create"
|
|
44
44
|
})}?source=${encodeURIComponent(JSON.stringify(copy))}`;
|
|
45
45
|
});
|
|
46
|
-
const label = computed(() => props.label ?? translate("
|
|
46
|
+
const label = computed(() => props.label ?? translate("chelone.action.clone", { _: "Clone" }));
|
|
47
47
|
const classes = computed(() => buttonVariants({
|
|
48
48
|
variant: "outline",
|
|
49
49
|
class: props.class
|
|
@@ -53,7 +53,7 @@ var columns_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
|
|
|
53
53
|
class: normalizeClass(props.class),
|
|
54
54
|
"data-slot": "columns-button"
|
|
55
55
|
}, {
|
|
56
|
-
default: withCtx(() => [createVNode(unref(ColumnsIcon)), createTextVNode(" " + toDisplayString(unref(translate)("
|
|
56
|
+
default: withCtx(() => [createVNode(unref(ColumnsIcon)), createTextVNode(" " + toDisplayString(unref(translate)("chelone.action.select_columns", { _: "Columns" })), 1)]),
|
|
57
57
|
_: 1
|
|
58
58
|
}, 8, ["disabled", "class"])]),
|
|
59
59
|
_: 1
|
|
@@ -47,7 +47,7 @@ var create_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
47
47
|
resource,
|
|
48
48
|
type: "create"
|
|
49
49
|
}));
|
|
50
|
-
const label = computed(() => translate("
|
|
50
|
+
const label = computed(() => translate("chelone.action.create", definedParams({
|
|
51
51
|
_: "Create",
|
|
52
52
|
name: resource ? getResourceLabel(resource, 1) : void 0
|
|
53
53
|
})));
|
|
@@ -18,9 +18,9 @@ export interface DeleteButtonProps<TRecord extends ResourceRecord = LooseRecord>
|
|
|
18
18
|
mutationMode?: MutationMode;
|
|
19
19
|
/** Where to navigate after deleting. Default `"list"`; `false` = stay. */
|
|
20
20
|
redirect?: DeleteRedirect;
|
|
21
|
-
/** Confirmation-dialog title. Default `"
|
|
21
|
+
/** Confirmation-dialog title. Default `"chelone.message.delete_title"`. */
|
|
22
22
|
confirmTitle?: string;
|
|
23
|
-
/** Confirmation-dialog body copy. Default `"
|
|
23
|
+
/** Confirmation-dialog body copy. Default `"chelone.message.delete_content"`. */
|
|
24
24
|
confirmContent?: string;
|
|
25
25
|
/** `"warning"` tints the confirm button destructive. Default `"warning"`. */
|
|
26
26
|
confirmColor?: "primary" | "warning";
|
|
@@ -25,8 +25,8 @@ var delete_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
25
25
|
type: [String, Boolean],
|
|
26
26
|
default: "list"
|
|
27
27
|
},
|
|
28
|
-
confirmTitle: { default: "
|
|
29
|
-
confirmContent: { default: "
|
|
28
|
+
confirmTitle: { default: "chelone.message.delete_title" },
|
|
29
|
+
confirmContent: { default: "chelone.message.delete_content" },
|
|
30
30
|
confirmColor: { default: "warning" },
|
|
31
31
|
variant: { default: "outline" },
|
|
32
32
|
class: {}
|
|
@@ -89,7 +89,7 @@ var delete_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
89
89
|
id: record.value?.id
|
|
90
90
|
});
|
|
91
91
|
});
|
|
92
|
-
const label = computed(() => translate("
|
|
92
|
+
const label = computed(() => translate("chelone.action.delete", { _: props.label ?? "Delete" }));
|
|
93
93
|
const destructiveClass = "cursor-pointer text-destructive border-destructive hover:bg-destructive/10";
|
|
94
94
|
const classes = computed(() => props.class ?? destructiveClass);
|
|
95
95
|
const open = ref(false);
|
|
@@ -49,7 +49,7 @@ var edit_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defi
|
|
|
49
49
|
id
|
|
50
50
|
});
|
|
51
51
|
});
|
|
52
|
-
const label = computed(() => translate("
|
|
52
|
+
const label = computed(() => translate("chelone.action.edit", definedParams({
|
|
53
53
|
_: "Edit",
|
|
54
54
|
name: resource ? getResourceLabel(resource, 1) : void 0
|
|
55
55
|
})));
|
|
@@ -37,7 +37,7 @@ var export_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
37
37
|
const { dataProvider } = useCheloneContext();
|
|
38
38
|
const notifications = useCheloneNotifications();
|
|
39
39
|
const translate = useTranslate();
|
|
40
|
-
const label = computed(() => translate("
|
|
40
|
+
const label = computed(() => translate("chelone.action.export", { _: props.label ?? "Export" }));
|
|
41
41
|
const disabled = computed(() => list.total === 0);
|
|
42
42
|
async function onClick() {
|
|
43
43
|
const exporter = props.exporter ?? defaultExporter;
|
package/dist/components/admin/buttons/fields-selector.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -114,7 +114,7 @@ var fields_selector_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
114
114
|
createVNode(input_default, {
|
|
115
115
|
modelValue: query.value,
|
|
116
116
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => query.value = $event),
|
|
117
|
-
"aria-label": unref(translate)("
|
|
117
|
+
"aria-label": unref(translate)("chelone.action.search", { _: "Search" }),
|
|
118
118
|
class: "px-8"
|
|
119
119
|
}, null, 8, ["modelValue", "aria-label"]),
|
|
120
120
|
query.value !== "" ? (openBlock(), createBlock(button_default, {
|
|
@@ -122,7 +122,7 @@ var fields_selector_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
122
122
|
variant: "ghost",
|
|
123
123
|
size: "icon",
|
|
124
124
|
class: "absolute right-0 top-1/2 size-7 -translate-y-1/2",
|
|
125
|
-
"aria-label": unref(translate)("
|
|
125
|
+
"aria-label": unref(translate)("chelone.action.clear_input_value", { _: "Clear value" }),
|
|
126
126
|
onClick: _cache[1] || (_cache[1] = ($event) => query.value = "")
|
|
127
127
|
}, {
|
|
128
128
|
default: withCtx(() => [createVNode(unref(XIcon))]),
|
|
@@ -151,7 +151,7 @@ var fields_selector_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
151
151
|
size: "icon",
|
|
152
152
|
class: "size-7",
|
|
153
153
|
disabled: searching.value || row.index === 0,
|
|
154
|
-
"aria-label": unref(translate)("
|
|
154
|
+
"aria-label": unref(translate)("chelone.action.move_up", { _: "Move up" }),
|
|
155
155
|
onClick: ($event) => unref(state).move(row.id, -1)
|
|
156
156
|
}, {
|
|
157
157
|
default: withCtx(() => [createVNode(unref(ChevronUpIcon))]),
|
|
@@ -166,7 +166,7 @@ var fields_selector_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
166
166
|
size: "icon",
|
|
167
167
|
class: "size-7",
|
|
168
168
|
disabled: searching.value || row.index === rows.value.length - 1,
|
|
169
|
-
"aria-label": unref(translate)("
|
|
169
|
+
"aria-label": unref(translate)("chelone.action.move_down", { _: "Move down" }),
|
|
170
170
|
onClick: ($event) => unref(state).move(row.id, 1)
|
|
171
171
|
}, {
|
|
172
172
|
default: withCtx(() => [createVNode(unref(ChevronDownIcon))]),
|
|
@@ -195,7 +195,7 @@ var fields_selector_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/
|
|
|
195
195
|
size: "sm",
|
|
196
196
|
onClick: _cache[2] || (_cache[2] = ($event) => unref(state).reset())
|
|
197
197
|
}, {
|
|
198
|
-
default: withCtx(() => [createTextVNode(toDisplayString(unref(translate)("
|
|
198
|
+
default: withCtx(() => [createTextVNode(toDisplayString(unref(translate)("chelone.action.reset", { _: "Reset" })), 1)]),
|
|
199
199
|
_: 1
|
|
200
200
|
})])
|
|
201
201
|
], 64);
|
|
@@ -46,8 +46,8 @@ var filter_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ de
|
|
|
46
46
|
const togglable = computed(() => props.filters.filter((e) => !e.alwaysOn));
|
|
47
47
|
const hasFilterValues = computed(() => Object.keys(list.filter ?? {}).length > 0);
|
|
48
48
|
const isDisplayed = (source) => list.displayedFilters[source] === true;
|
|
49
|
-
const addLabel = computed(() => translate("
|
|
50
|
-
const removeAllLabel = computed(() => translate("
|
|
49
|
+
const addLabel = computed(() => translate("chelone.action.add_filter", { _: "Add filter" }));
|
|
50
|
+
const removeAllLabel = computed(() => translate("chelone.action.remove_all_filters", { _: "Remove all filters" }));
|
|
51
51
|
function onToggle(entry) {
|
|
52
52
|
if (isDisplayed(entry.source)) list.hideFilter(entry.source);
|
|
53
53
|
else list.showFilter(entry.source, entry.defaultValue === "" ? void 0 : entry.defaultValue);
|
|
@@ -34,7 +34,7 @@ var list_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defi
|
|
|
34
34
|
type: "list",
|
|
35
35
|
resource
|
|
36
36
|
}));
|
|
37
|
-
const label = computed(() => translate("
|
|
37
|
+
const label = computed(() => translate("chelone.action.list", {
|
|
38
38
|
_: "List",
|
|
39
39
|
name: getResourceLabel(resource, 1)
|
|
40
40
|
}));
|
|
@@ -31,7 +31,7 @@ var locales_menu_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ def
|
|
|
31
31
|
variant: "ghost",
|
|
32
32
|
size: "icon",
|
|
33
33
|
class: normalizeClass(unref(cn)("hidden sm:inline-flex", props.class)),
|
|
34
|
-
"aria-label": unref(translate)("
|
|
34
|
+
"aria-label": unref(translate)("chelone.action.change_locale", { _: "Change locale" }),
|
|
35
35
|
"data-slot": "locales-menu-button"
|
|
36
36
|
}, {
|
|
37
37
|
default: withCtx(() => [renderSlot(_ctx.$slots, "icon", {}, () => [createTextVNode(toDisplayString(unref(locale).toUpperCase()), 1)])]),
|
|
@@ -28,7 +28,7 @@ var refresh_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
|
|
|
28
28
|
const refresh = useRefresh();
|
|
29
29
|
const loading = useLoading();
|
|
30
30
|
const translate = useTranslate();
|
|
31
|
-
const label = computed(() => translate("
|
|
31
|
+
const label = computed(() => translate("chelone.action.refresh", { _: props.label ?? "Refresh" }));
|
|
32
32
|
function onClick() {
|
|
33
33
|
refresh();
|
|
34
34
|
}
|
package/dist/components/admin/buttons/refresh-icon-button.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -4,7 +4,7 @@ import button_default from "../../ui/button.js";
|
|
|
4
4
|
import { RotateCwIcon } from "./icons.js";
|
|
5
5
|
import { computed, createBlock, createVNode, defineComponent, normalizeClass, openBlock, renderSlot, unref, withCtx } from "vue";
|
|
6
6
|
// src/components/admin/buttons/refresh-icon-button.vue?vue&type=script&setup=true&lang.ts
|
|
7
|
-
var defaultLabel = "
|
|
7
|
+
var defaultLabel = "chelone.action.refresh";
|
|
8
8
|
var refresh_icon_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
9
9
|
__name: "refresh-icon-button",
|
|
10
10
|
props: {
|
|
@@ -12,7 +12,7 @@ var _hoisted_1 = {
|
|
|
12
12
|
var save_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
13
13
|
__name: "save-button",
|
|
14
14
|
props: {
|
|
15
|
-
label: { default: "
|
|
15
|
+
label: { default: "chelone.action.save" },
|
|
16
16
|
alwaysEnable: {
|
|
17
17
|
type: Boolean,
|
|
18
18
|
default: false
|
|
@@ -44,7 +44,7 @@ var save_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defi
|
|
|
44
44
|
if (props.alwaysEnable) return props.disabled ?? false;
|
|
45
45
|
return (props.disabled ?? false) || state.value.isValidating || state.value.isSubmitting || !state.value.canSubmit;
|
|
46
46
|
});
|
|
47
|
-
const displayedLabel = computed(() => translate(props.label, { _: props.label === "
|
|
47
|
+
const displayedLabel = computed(() => translate(props.label, { _: props.label === "chelone.action.save" ? "Save" : props.label }));
|
|
48
48
|
async function onClick() {
|
|
49
49
|
if (submit) await submit();
|
|
50
50
|
else await form.ambient.handleSubmit();
|
package/dist/components/admin/buttons/select-all-button.vue_vue_type_script_setup_true_lang.js
CHANGED
|
@@ -3,7 +3,7 @@ import { useListContext } from "../../../list/list-context.js";
|
|
|
3
3
|
import button_default from "../../ui/button.js";
|
|
4
4
|
import { computed, createBlock, createCommentVNode, createTextVNode, defineComponent, normalizeClass, openBlock, toDisplayString, withCtx } from "vue";
|
|
5
5
|
// src/components/admin/buttons/select-all-button.vue?vue&type=script&setup=true&lang.ts
|
|
6
|
-
var defaultLabel = "
|
|
6
|
+
var defaultLabel = "chelone.action.select_all";
|
|
7
7
|
var select_all_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent({
|
|
8
8
|
__name: "select-all-button",
|
|
9
9
|
props: {
|
|
@@ -49,7 +49,7 @@ var show_button_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defi
|
|
|
49
49
|
id
|
|
50
50
|
});
|
|
51
51
|
});
|
|
52
|
-
const label = computed(() => translate("
|
|
52
|
+
const label = computed(() => translate("chelone.action.show", definedParams({
|
|
53
53
|
_: "Show",
|
|
54
54
|
name: resource ? getResourceLabel(resource, 1) : void 0
|
|
55
55
|
})));
|