@morningfast/platform 0.0.12 → 0.0.14

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.
Files changed (31) hide show
  1. package/dist/assets/main/style.css +2 -5
  2. package/dist/chunks/{Login-BKuPkkY9.js → Login-8fZ-l3ST.js} +11 -11
  3. package/dist/chunks/{SystemConfig-DGZUwXWB.js → SystemConfig-Xa8FuNBK.js} +1 -1
  4. package/dist/chunks/{application-config-DLHtmY_2.js → application-config-DpfzdbAa.js} +2 -2
  5. package/dist/chunks/main-CX2uCPdt.js +2841 -0
  6. package/dist/chunks/route-items-DXwaEe0Y.js +21 -0
  7. package/dist/index.d.ts +1 -1
  8. package/dist/index.js +7 -8
  9. package/dist/main/app/AppUpdateDialog.vue.d.ts +14 -0
  10. package/dist/main/app/runtime-config.d.ts +5 -0
  11. package/dist/main/app/update-checker.d.ts +8 -0
  12. package/dist/main/app/update-preferences.d.ts +2 -0
  13. package/dist/main/index.d.ts +2 -0
  14. package/dist/main/layouts/composables/useShortcutLabel.d.ts +1 -1
  15. package/dist/main/router/route-items.d.ts +3 -15
  16. package/dist/main/settings/components/AppearanceSettings.vue.d.ts +3 -0
  17. package/dist/main/settings/components/GeneralSettings.vue.d.ts +3 -0
  18. package/dist/main/settings/components/LayoutSettings.vue.d.ts +3 -0
  19. package/dist/main/settings/components/ShortcutSettings.vue.d.ts +3 -0
  20. package/dist/main/stores/index.d.ts +1 -0
  21. package/dist/main/stores/shortcut.d.ts +77 -0
  22. package/dist/main/utils/keyboard-shortcut.d.ts +39 -0
  23. package/dist/main.js +5 -6
  24. package/dist/shared/router/route-items.d.ts +15 -0
  25. package/dist/sub/index.d.ts +2 -2
  26. package/dist/sub.js +1 -1
  27. package/package.json +1 -1
  28. package/dist/chunks/main-BVdwJu-s.js +0 -1840
  29. package/dist/chunks/route-items-84k92f3O.js +0 -513
  30. /package/dist/chunks/{_plugin-vue_export-helper-DvRHjpsZ.js → _plugin-vue_export-helper-CZc-Y3Wh.js} +0 -0
  31. /package/dist/chunks/{config-Cd-9BYBy.js → config-CJOAan9n.js} +0 -0
@@ -0,0 +1,21 @@
1
+ //#region src/shared/router/route-items.ts
2
+ function e(e, n, r) {
3
+ return e.map((e) => t(e, n, r));
4
+ }
5
+ function t(t, n, r) {
6
+ let i = {
7
+ path: t.path,
8
+ name: t.name,
9
+ meta: {
10
+ title: t.title,
11
+ icon: t.icon,
12
+ permission: t.permission,
13
+ hidden: t.hidden
14
+ }
15
+ };
16
+ t.redirect && (i.redirect = t.redirect);
17
+ let a = r?.(t);
18
+ return a ? i.component = a : t.componentKey && (i.component = n[t.componentKey]), t.children?.length && (i.children = e(t.children, n, r)), i;
19
+ }
20
+ //#endregion
21
+ export { e as t };
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  export * from './main';
2
- export * from './sub';
2
+ export { applySubAppTheme, createSubAppContext, createSubAppRouter, mountSubApp, resolveSubAppBasePath, SUB_APP_NAME, SUB_APP_THEME_CHANGE_EVENT, subAppContextKey, useRequestClient, useSubAppContext, type MountSubAppOptions, type SubAppContext, type SubAppInfo, type SubAppProps, type SubAppRuntimeContext, type SubAppRuntimeProps, type SubAppThemeContext, } from './sub';
3
3
  export * from './request';
4
4
  export * from './micro-contract';
package/dist/index.js CHANGED
@@ -1,9 +1,8 @@
1
1
  import { MICRO_AUTH_EXPIRED_EVENT as e } from "./micro-contract.js";
2
- import { a as t, c as n, d as r, i, l as a, n as o, o as s, r as c, s as l, t as u, u as d } from "./chunks/main-BVdwJu-s.js";
3
- import { ApiError as f, RequestManager as p, createRequestClient as m, formatErrorMessage as h } from "./request.js";
4
- import { a as g, i as _, n as v, r as y, t as b } from "./chunks/auth-C3RvRgcW.js";
5
- import { i as x, n as S, r as C, t as w } from "./chunks/system-DZaKDrG6.js";
6
- import { n as T, r as E, t as D } from "./chunks/route-items-84k92f3O.js";
7
- import { o as O } from "./chunks/config-Cd-9BYBy.js";
8
- import { a as k, c as A, d as j, i as M, l as N, n as P, o as F, r as I, s as L, t as R, u as z } from "./chunks/sub-D7y3UaHp.js";
9
- export { f as ApiError, F as DEFAULT_SUB_APP_BASE, t as HOME_TAB_PATH, e as MICRO_AUTH_EXPIRED_EVENT, T as MicroAppView, p as RequestManager, L as SUB_APP_NAME, A as SUB_APP_THEME_CHANGE_EVENT, M as applySubAppTheme, l as configureMorningfastRequestClient, n as createApi, v as createMockLoginResult, y as createMockUserProfile, c as createMorningfastBaseRoutes, o as createMorningfastRouter, m as createRequestClient, D as createRoutesFromItems, z as createSubAppContext, k as createSubAppRouter, h as formatErrorMessage, S as getPersistedValue, a as http, u as mountMorningfastApp, I as mountSubApp, _ as normalizeLoginResult, g as normalizeUserProfile, C as removePersistedValue, d as requestManager, N as resolveSubAppBasePath, O as setDefaultAppConfigs, x as setPersistedValue, r as setupAuthExpiredHandler, j as subAppContextKey, E as useAppStore, b as useAuthStore, R as useRequestClient, i as useSortable, P as useSubAppContext, w as useSystemStore, s as useTabsStore };
2
+ import { _ as t, a as n, b as r, c as i, d as a, f as o, g as s, h as c, i as l, l as u, m as d, n as f, o as p, p as m, r as h, s as g, t as _, u as v, v as y, y as b } from "./chunks/main-CX2uCPdt.js";
3
+ import { ApiError as x, RequestManager as S, createRequestClient as C, formatErrorMessage as w } from "./request.js";
4
+ import { a as T, i as E, n as D, r as O, t as k } from "./chunks/auth-C3RvRgcW.js";
5
+ import { i as A, n as j, r as M, t as N } from "./chunks/system-DZaKDrG6.js";
6
+ import { o as P } from "./chunks/config-CJOAan9n.js";
7
+ import { a as F, c as I, d as L, i as R, l as z, n as B, r as V, s as H, t as U, u as W } from "./chunks/sub-D7y3UaHp.js";
8
+ export { x as ApiError, d as HOME_TAB_PATH, e as MICRO_AUTH_EXPIRED_EVENT, i as MicroAppView, S as RequestManager, H as SUB_APP_NAME, I as SUB_APP_THEME_CHANGE_EVENT, R as applySubAppTheme, s as configureMorningfastRequestClient, t as createApi, D as createMockLoginResult, O as createMockUserProfile, v as createMorningfastBaseRoutes, u as createMorningfastRouter, C as createRequestClient, g as createRoutesFromItems, W as createSubAppContext, F as createSubAppRouter, w as formatErrorMessage, j as getPersistedValue, n as getStoredUpdateCheckEnabled, y as http, _ as mountMorningfastApp, V as mountSubApp, E as normalizeLoginResult, T as normalizeUserProfile, M as removePersistedValue, b as requestManager, z as resolveSubAppBasePath, f as restartAppUpdateChecker, P as setDefaultAppConfigs, A as setPersistedValue, p as setStoredUpdateCheckEnabled, h as setupAppUpdateChecker, r as setupAuthExpiredHandler, l as stopAppUpdateChecker, L as subAppContextKey, m as useAppStore, k as useAuthStore, U as useRequestClient, o as useShortcutStore, a as useSortable, B as useSubAppContext, N as useSystemStore, c as useTabsStore };
@@ -0,0 +1,14 @@
1
+ type __VLS_Props = {
2
+ changelog?: string[];
3
+ modelValue: boolean;
4
+ versionLabel?: string;
5
+ };
6
+ declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
7
+ refresh: () => any;
8
+ remindLater: (delayMs: number) => any;
9
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
10
+ onRefresh?: (() => any) | undefined;
11
+ onRemindLater?: ((delayMs: number) => any) | undefined;
12
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
13
+ declare const _default: typeof __VLS_export;
14
+ export default _default;
@@ -1,5 +1,10 @@
1
1
  export interface MorningfastAppConfig {
2
2
  apiBaseUrl: string;
3
+ updateChecker?: {
4
+ enabled?: boolean;
5
+ interval?: number;
6
+ manifestUrl?: string;
7
+ };
3
8
  }
4
9
  export declare function setMorningfastAppConfig(appConfig: MorningfastAppConfig): void;
5
10
  export declare function getMorningfastAppConfig(): MorningfastAppConfig;
@@ -0,0 +1,8 @@
1
+ export interface AppUpdateCheckerOptions {
2
+ enabled?: boolean;
3
+ interval?: number;
4
+ manifestUrl?: string;
5
+ }
6
+ export declare function setupAppUpdateChecker(options?: AppUpdateCheckerOptions): void;
7
+ export declare function stopAppUpdateChecker(): void;
8
+ export declare function restartAppUpdateChecker(options?: AppUpdateCheckerOptions): void;
@@ -0,0 +1,2 @@
1
+ export declare function getStoredUpdateCheckEnabled(defaultEnabled?: boolean): boolean;
2
+ export declare function setStoredUpdateCheckEnabled(enabled: boolean): void;
@@ -6,6 +6,8 @@ export { createRoutesFromItems } from './router/route-items';
6
6
  export type { AppRouteItem, RouteItem } from './router/route-items';
7
7
  export { setDefaultAppConfigs, type AppConfigItem, } from './micro-apps/config';
8
8
  export { mountMorningfastApp } from './app/create-app';
9
+ export { restartAppUpdateChecker, setupAppUpdateChecker, stopAppUpdateChecker, type AppUpdateCheckerOptions, } from './app/update-checker';
10
+ export { getStoredUpdateCheckEnabled, setStoredUpdateCheckEnabled, } from './app/update-preferences';
9
11
  export { useSortable } from './composables/useSortable';
10
12
  export type { UseSortableOptions } from './composables/useSortable';
11
13
  export { getPersistedValue, removePersistedValue, setPersistedValue, } from './utils/persistence';
@@ -1,4 +1,4 @@
1
1
  export declare function useShortcutLabel(): {
2
2
  isMac: import('vue').ComputedRef<boolean>;
3
- searchShortcutLabel: import('vue').ComputedRef<"⌘ K" | "Ctrl K">;
3
+ searchShortcutLabel: import('vue').ComputedRef<string>;
4
4
  };
@@ -1,15 +1,3 @@
1
- import { RouteRecordRaw } from 'vue-router';
2
- export interface AppRouteItem {
3
- path: string;
4
- name: string;
5
- title: string;
6
- icon?: string;
7
- permission?: string | string[];
8
- hidden?: boolean;
9
- redirect?: string;
10
- componentKey?: string;
11
- microApp?: boolean;
12
- children?: AppRouteItem[];
13
- }
14
- export type RouteItem = AppRouteItem;
15
- export declare function createRoutesFromItems(items: AppRouteItem[], componentMap: Record<string, RouteRecordRaw['component']>): RouteRecordRaw[];
1
+ import { createRoutesFromItems as createSharedRoutesFromItems, AppRouteItem, RouteItem } from '../../shared/router/route-items';
2
+ export type { AppRouteItem, RouteItem };
3
+ export declare function createRoutesFromItems(items: AppRouteItem[], componentMap: Parameters<typeof createSharedRoutesFromItems>[1]): import('vue-router').RouteRecordRaw[];
@@ -0,0 +1,3 @@
1
+ declare const __VLS_export: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
2
+ declare const _default: typeof __VLS_export;
3
+ export default _default;
@@ -0,0 +1,3 @@
1
+ declare const __VLS_export: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
2
+ declare const _default: typeof __VLS_export;
3
+ export default _default;
@@ -0,0 +1,3 @@
1
+ declare const __VLS_export: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
2
+ declare const _default: typeof __VLS_export;
3
+ export default _default;
@@ -0,0 +1,3 @@
1
+ declare const __VLS_export: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
2
+ declare const _default: typeof __VLS_export;
3
+ export default _default;
@@ -2,3 +2,4 @@ export * from './app';
2
2
  export * from './auth';
3
3
  export * from './system';
4
4
  export * from './tabs';
5
+ export * from './shortcut';
@@ -0,0 +1,77 @@
1
+ export type ShortcutCategory = 'global' | 'navigation' | 'other';
2
+ export type ShortcutId = 'search' | 'toggleMenu' | 'settings';
3
+ export interface ShortcutItem {
4
+ id: ShortcutId;
5
+ name: string;
6
+ description: string;
7
+ keys: string;
8
+ enabled: boolean;
9
+ category: ShortcutCategory;
10
+ }
11
+ export declare const useShortcutStore: import('pinia').StoreDefinition<"shortcut", Pick<{
12
+ getShortcutKeys: (id: ShortcutId) => string;
13
+ initShortcuts: () => void;
14
+ isShortcutEnabled: (id: ShortcutId) => boolean;
15
+ shortcutEnabled: import('vue').Ref<boolean, boolean>;
16
+ shortcuts: import('vue').Ref<{
17
+ id: ShortcutId;
18
+ name: string;
19
+ description: string;
20
+ keys: string;
21
+ enabled: boolean;
22
+ category: ShortcutCategory;
23
+ }[], ShortcutItem[] | {
24
+ id: ShortcutId;
25
+ name: string;
26
+ description: string;
27
+ keys: string;
28
+ enabled: boolean;
29
+ category: ShortcutCategory;
30
+ }[]>;
31
+ toggleShortcut: (id: ShortcutId) => void;
32
+ toggleShortcutEnabled: () => void;
33
+ }, "shortcutEnabled" | "shortcuts">, Pick<{
34
+ getShortcutKeys: (id: ShortcutId) => string;
35
+ initShortcuts: () => void;
36
+ isShortcutEnabled: (id: ShortcutId) => boolean;
37
+ shortcutEnabled: import('vue').Ref<boolean, boolean>;
38
+ shortcuts: import('vue').Ref<{
39
+ id: ShortcutId;
40
+ name: string;
41
+ description: string;
42
+ keys: string;
43
+ enabled: boolean;
44
+ category: ShortcutCategory;
45
+ }[], ShortcutItem[] | {
46
+ id: ShortcutId;
47
+ name: string;
48
+ description: string;
49
+ keys: string;
50
+ enabled: boolean;
51
+ category: ShortcutCategory;
52
+ }[]>;
53
+ toggleShortcut: (id: ShortcutId) => void;
54
+ toggleShortcutEnabled: () => void;
55
+ }, never>, Pick<{
56
+ getShortcutKeys: (id: ShortcutId) => string;
57
+ initShortcuts: () => void;
58
+ isShortcutEnabled: (id: ShortcutId) => boolean;
59
+ shortcutEnabled: import('vue').Ref<boolean, boolean>;
60
+ shortcuts: import('vue').Ref<{
61
+ id: ShortcutId;
62
+ name: string;
63
+ description: string;
64
+ keys: string;
65
+ enabled: boolean;
66
+ category: ShortcutCategory;
67
+ }[], ShortcutItem[] | {
68
+ id: ShortcutId;
69
+ name: string;
70
+ description: string;
71
+ keys: string;
72
+ enabled: boolean;
73
+ category: ShortcutCategory;
74
+ }[]>;
75
+ toggleShortcut: (id: ShortcutId) => void;
76
+ toggleShortcutEnabled: () => void;
77
+ }, "getShortcutKeys" | "initShortcuts" | "isShortcutEnabled" | "toggleShortcut" | "toggleShortcutEnabled">>;
@@ -0,0 +1,39 @@
1
+ export declare const shortcutKeyMap: {
2
+ readonly Ctrl: {
3
+ readonly mac: "Cmd";
4
+ readonly windows: "Ctrl";
5
+ readonly symbol: {
6
+ readonly mac: "⌘";
7
+ readonly windows: "Ctrl";
8
+ };
9
+ };
10
+ readonly Alt: {
11
+ readonly mac: "Option";
12
+ readonly windows: "Alt";
13
+ readonly symbol: {
14
+ readonly mac: "⌥";
15
+ readonly windows: "Alt";
16
+ };
17
+ };
18
+ readonly Shift: {
19
+ readonly mac: "Shift";
20
+ readonly windows: "Shift";
21
+ readonly symbol: {
22
+ readonly mac: "⇧";
23
+ readonly windows: "Shift";
24
+ };
25
+ };
26
+ };
27
+ export interface ParsedShortcutKey {
28
+ original: string;
29
+ display: string;
30
+ symbol?: string;
31
+ isModifier: boolean;
32
+ }
33
+ export declare function isApplePlatform(): boolean;
34
+ export declare function parseShortcutKeys(keys: string): ParsedShortcutKey[];
35
+ export declare function getShortcutDisplay(keys: string, options?: {
36
+ separator?: string;
37
+ useSymbol?: boolean;
38
+ }): string;
39
+ export declare function isShortcutEvent(event: KeyboardEvent, keys: string): boolean;
package/dist/main.js CHANGED
@@ -1,6 +1,5 @@
1
- import { a as e, c as t, d as n, i as r, l as i, n as a, o, r as s, s as c, t as l, u } from "./chunks/main-BVdwJu-s.js";
2
- import { a as d, i as f, n as p, r as m, t as h } from "./chunks/auth-C3RvRgcW.js";
3
- import { i as g, n as _, r as v, t as y } from "./chunks/system-DZaKDrG6.js";
4
- import { n as b, r as x, t as S } from "./chunks/route-items-84k92f3O.js";
5
- import { o as C } from "./chunks/config-Cd-9BYBy.js";
6
- export { e as HOME_TAB_PATH, b as MicroAppView, c as configureMorningfastRequestClient, t as createApi, p as createMockLoginResult, m as createMockUserProfile, s as createMorningfastBaseRoutes, a as createMorningfastRouter, S as createRoutesFromItems, _ as getPersistedValue, i as http, l as mountMorningfastApp, f as normalizeLoginResult, d as normalizeUserProfile, v as removePersistedValue, u as requestManager, C as setDefaultAppConfigs, g as setPersistedValue, n as setupAuthExpiredHandler, x as useAppStore, h as useAuthStore, r as useSortable, y as useSystemStore, o as useTabsStore };
1
+ import { _ as e, a as t, b as n, c as r, d as i, f as a, g as o, h as s, i as c, l, m as u, n as d, o as f, p, r as m, s as h, t as g, u as _, v, y } from "./chunks/main-CX2uCPdt.js";
2
+ import { a as b, i as x, n as S, r as C, t as w } from "./chunks/auth-C3RvRgcW.js";
3
+ import { i as T, n as E, r as D, t as O } from "./chunks/system-DZaKDrG6.js";
4
+ import { o as k } from "./chunks/config-CJOAan9n.js";
5
+ export { u as HOME_TAB_PATH, r as MicroAppView, o as configureMorningfastRequestClient, e as createApi, S as createMockLoginResult, C as createMockUserProfile, _ as createMorningfastBaseRoutes, l as createMorningfastRouter, h as createRoutesFromItems, E as getPersistedValue, t as getStoredUpdateCheckEnabled, v as http, g as mountMorningfastApp, x as normalizeLoginResult, b as normalizeUserProfile, D as removePersistedValue, y as requestManager, d as restartAppUpdateChecker, k as setDefaultAppConfigs, T as setPersistedValue, f as setStoredUpdateCheckEnabled, m as setupAppUpdateChecker, n as setupAuthExpiredHandler, c as stopAppUpdateChecker, p as useAppStore, w as useAuthStore, a as useShortcutStore, i as useSortable, O as useSystemStore, s as useTabsStore };
@@ -0,0 +1,15 @@
1
+ import { RouteRecordRaw } from 'vue-router';
2
+ export interface AppRouteItem {
3
+ path: string;
4
+ name: string;
5
+ title: string;
6
+ icon?: string;
7
+ permission?: string | string[];
8
+ hidden?: boolean;
9
+ redirect?: string;
10
+ componentKey?: string;
11
+ microApp?: boolean;
12
+ children?: AppRouteItem[];
13
+ }
14
+ export type RouteItem = AppRouteItem;
15
+ export declare function createRoutesFromItems(items: AppRouteItem[], componentMap: Record<string, RouteRecordRaw['component']>, resolveComponent?: (item: AppRouteItem) => RouteRecordRaw['component'] | undefined): RouteRecordRaw[];
@@ -1,8 +1,8 @@
1
1
  export { mountSubApp } from './app/mount';
2
2
  export type { MountSubAppOptions } from './app/mount';
3
3
  export { createSubAppRouter } from './router';
4
- export { createRoutesFromItems } from '../main/router/route-items';
5
- export type { RouteItem } from '../main/router/route-items';
4
+ export { createRoutesFromItems } from '../shared/router/route-items';
5
+ export type { RouteItem } from '../shared/router/route-items';
6
6
  export { useRequestClient } from './composables/useRequestClient';
7
7
  export { useSubAppContext } from './composables/useSubAppContext';
8
8
  export * from './context/sub-app-context';
package/dist/sub.js CHANGED
@@ -1,3 +1,3 @@
1
- import { t as e } from "./chunks/route-items-84k92f3O.js";
1
+ import { t as e } from "./chunks/route-items-DXwaEe0Y.js";
2
2
  import { a as t, c as n, d as r, i, l as a, n as o, o as s, r as c, s as l, t as u, u as d } from "./chunks/sub-D7y3UaHp.js";
3
3
  export { s as DEFAULT_SUB_APP_BASE, l as SUB_APP_NAME, n as SUB_APP_THEME_CHANGE_EVENT, i as applySubAppTheme, e as createRoutesFromItems, d as createSubAppContext, t as createSubAppRouter, c as mountSubApp, a as resolveSubAppBasePath, r as subAppContextKey, u as useRequestClient, o as useSubAppContext };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@morningfast/platform",
3
- "version": "0.0.12",
3
+ "version": "0.0.14",
4
4
  "description": "Morningfast platform runtime for main and sub applications.",
5
5
  "type": "module",
6
6
  "sideEffects": [