vome-core 0.3.56 → 0.3.57
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/components/ui/avatar/index.js +1 -1
- package/dist/admin/components/ui/checkbox/index.js +1 -1
- package/dist/admin/components/ui/dialog/index.js +1 -1
- package/dist/admin/components/ui/dropdown-menu/index.js +1 -1
- package/dist/admin/components/ui/input/index.js +1 -1
- package/dist/admin/components/ui/label/index.js +1 -1
- package/dist/admin/components/ui/scroll-area/index.js +1 -1
- package/dist/admin/components/ui/select/index.js +1 -1
- package/dist/admin/components/ui/separator/index.js +1 -1
- package/dist/admin/components/ui/sheet/index.js +1 -1
- package/dist/admin/components/ui/sonner/index.js +1 -1
- package/dist/admin/components/ui/table/index.js +1 -1
- package/dist/admin/components/ui/tabs/index.js +1 -1
- package/dist/admin/components/ui/tooltip/index.js +1 -1
- package/dist/admin/crud/auto-fields.d.ts +1 -1
- package/dist/admin/crud/auto-fields.js +1 -1
- package/dist/admin/crud/config.js +1 -1
- package/dist/admin/crud/confirm.js +1 -1
- package/dist/admin/crud/crud-page-request.js +1 -1
- package/dist/admin/crud/data-i18n.js +1 -1
- package/dist/admin/crud/dict.js +1 -1
- package/dist/admin/crud/export-fetch.js +1 -1
- package/dist/admin/crud/key.js +1 -1
- package/dist/admin/crud/plugins.js +1 -1
- package/dist/admin/crud/span.js +1 -1
- package/dist/admin/crud/style.js +1 -1
- package/dist/admin/crud/validate.js +1 -1
- package/dist/admin/directives/perm.js +1 -1
- package/dist/admin/hooks/useUpload.js +1 -1
- package/dist/admin/lib/browser.js +1 -1
- package/dist/admin/lib/cn.js +1 -1
- package/dist/admin/lib/dialog-float.js +1 -1
- package/dist/admin/lib/export-excel.js +1 -1
- package/dist/admin/lib/import-excel.js +1 -1
- package/dist/admin/lib/json.js +1 -1
- package/dist/admin/lib/menu.js +1 -1
- package/dist/admin/lib/micro-locale.js +1 -1
- package/dist/admin/lib/micro-theme.js +1 -1
- package/dist/admin/lib/shell.js +1 -1
- package/dist/admin/lib/theme-color-options.js +1 -1
- package/dist/admin/lib/tree.js +1 -1
- package/dist/admin/lib/upload.js +1 -1
- package/dist/admin/lib/video-frame.js +1 -1
- package/dist/admin/router/create.js +1 -1
- package/dist/admin/router/guards.js +1 -1
- package/dist/ai/index.js +1 -1
- package/dist/client/ai-model-registry.js +1 -1
- package/dist/client/base.js +1 -1
- package/dist/client/configure.js +1 -1
- package/dist/client/dict.js +1 -1
- package/dist/client/eps-payload.js +1 -1
- package/dist/client/eps.js +1 -1
- package/dist/client/index.js +1 -1
- package/dist/client/locale-change.js +1 -1
- package/dist/client/locale-store.js +1 -1
- package/dist/client/service.js +1 -1
- package/dist/client/vite-admin.js +1 -1
- package/dist/client/vite-auto-import.js +1 -1
- package/dist/client/vite-micro-proxy.js +1 -1
- package/dist/client/vite-plugin-eps.js +1 -1
- package/dist/client/vite-resolve.js +1 -1
- package/dist/config/index.js +1 -1
- package/dist/core/index.d.ts +1 -1
- package/dist/core/plugins/tenant-context.d.ts +3 -0
- package/dist/index.js +1 -1
- package/dist/orm/entity-cache.d.ts +23 -0
- package/dist/orm/index.d.ts +2 -1
- package/dist/orm/service.d.ts +12 -0
- package/dist/orm/tenant.d.ts +15 -1
- package/dist/server/index.d.ts +1 -1
- package/dist/server/index.js +1 -1
- package/dist/shared/datetime-picker.js +1 -1
- package/dist/shared/decimal.js +1 -1
- package/dist/shared/excel.js +1 -1
- package/dist/shared/index.js +1 -1
- package/dist/shared/locale-json.js +1 -1
- package/dist/shared/tree.js +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 实体行缓存:Redis 为重启后的来源,进程内再留一份,热路径不打 Redis。
|
|
3
|
+
* 只有 Redis 和进程都没有时,才由调用方查库并写入。
|
|
4
|
+
*/
|
|
5
|
+
type EntityCacheIo = {
|
|
6
|
+
get(key: string): Promise<string | null>;
|
|
7
|
+
set(key: string, value: string): Promise<void>;
|
|
8
|
+
del(key: string): Promise<void>;
|
|
9
|
+
};
|
|
10
|
+
export declare function registerEntityCacheStore(store: EntityCacheIo | null): void;
|
|
11
|
+
/** 全部行;Redis 没有且提供了 load 才查库 */
|
|
12
|
+
export declare function entityCacheGet<T>(bucket: string, load?: () => Promise<T[]>): Promise<T[]>;
|
|
13
|
+
/** 按 id 取一行。缓存未建立时先走 get(可查库) */
|
|
14
|
+
export declare function entityCacheGetById<T>(bucket: string, id: number | string, load?: () => Promise<T[]>): Promise<T | undefined>;
|
|
15
|
+
/**
|
|
16
|
+
* 写入。
|
|
17
|
+
* 数组:整桶替换。
|
|
18
|
+
* 单条:按 id 合并进已有缓存。缓存还没有时不写残缺行,等下次 get 从库装全量。
|
|
19
|
+
*/
|
|
20
|
+
export declare function entityCacheSet(bucket: string, data: unknown): Promise<void>;
|
|
21
|
+
/** 删整桶,或按 id 删行 */
|
|
22
|
+
export declare function entityCacheDel(bucket: string, id?: number | string | Array<number | string>): Promise<void>;
|
|
23
|
+
export {};
|
package/dist/orm/index.d.ts
CHANGED
|
@@ -16,10 +16,11 @@ export { registerOnForceDelete, clearForceDeleteHooks, runOnForceDelete, } from
|
|
|
16
16
|
export type { ForceDeleteHook, ForceDeleteHookEvent, } from './force-delete-hooks';
|
|
17
17
|
export { listUniqueKeySets, buildUniqueWhere, buildUniqueWhereForRows, uniqueFingerprint, } from './unique-keys';
|
|
18
18
|
export { BaseService } from './service';
|
|
19
|
+
export { registerEntityCacheStore } from './entity-cache';
|
|
19
20
|
export { q, compactWhere, needsAdvancedQuery, buildQueryOp } from './query-op';
|
|
20
21
|
export { queryWithOp } from './query-builder';
|
|
21
22
|
export { attachCrudRoutes } from './crud-register';
|
|
22
|
-
export { isTenantEnabled, tableHasTenantId, resolveTenantScope, applyTenantWhere, stampTenantId, noTenant, normalizeHost, } from './tenant';
|
|
23
|
+
export { isTenantEnabled, tableHasTenantId, resolveTenantScope, applyTenantWhere, stampTenantId, registerTenantHostResolver, bindRequestTenant, noTenant, normalizeHost, } from './tenant';
|
|
23
24
|
export { tableHasDepartmentId, resolveDataScope, applyDataScopeWhere, applyRowScopes, noDataScope, } from './data-scope';
|
|
24
25
|
export type { CrudUpsertMode, CrudModifyType, CrudWriteOptions, CrudTrashQueryOptions, CrudDeleteOptions, CrudAddData, CrudUpdateWhere, CrudUpdatePatch, CrudIdOrIds, CrudDeleteWhere, CrudListWhere, CrudListOptions, CrudInfoWhere, CrudPageQuery, } from '../../typings/comm/crud';
|
|
25
26
|
export type { PageQuery, PagePagination, PageResult, } from '../../typings/comm/page';
|
package/dist/orm/service.d.ts
CHANGED
|
@@ -71,4 +71,16 @@ export declare abstract class BaseService {
|
|
|
71
71
|
where?: SQL | undefined;
|
|
72
72
|
orderBy?: SQL[];
|
|
73
73
|
} & CrudTrashQueryOptions): Promise<PageResult>;
|
|
74
|
+
/**
|
|
75
|
+
* 行缓存。Redis 有则直接用,没有才执行 load 查库并写入。
|
|
76
|
+
* 省略 id 返回全部;传入 id 只取那一行。
|
|
77
|
+
*/
|
|
78
|
+
cacheGet<T>(bucket: string, load: () => Promise<T[]>): Promise<T[]>;
|
|
79
|
+
cacheGet<T>(bucket: string, id: number | string, load?: () => Promise<T[]>): Promise<T | undefined>;
|
|
80
|
+
/**
|
|
81
|
+
* 写入缓存。数组整桶替换;单条对象按 id 合并更新。
|
|
82
|
+
*/
|
|
83
|
+
cacheSet(bucket: string, data: unknown): Promise<void>;
|
|
84
|
+
/** 删除整桶,或按 id 删除 */
|
|
85
|
+
cacheDel(bucket: string, id?: number | string | Array<number | string>): Promise<void>;
|
|
74
86
|
}
|
package/dist/orm/tenant.d.ts
CHANGED
|
@@ -14,7 +14,20 @@ export declare function tableHasTenantId(table: PgTable): boolean;
|
|
|
14
14
|
export declare function resolveTenantScope(): 'off' | 'all' | 'none' | number;
|
|
15
15
|
/** 拼租户 where;无隔离时返回原 where */
|
|
16
16
|
export declare function applyTenantWhere(table: PgTable, where?: SQL): SQL | undefined;
|
|
17
|
-
|
|
17
|
+
type TenantHostResolver = (host: string) => Promise<number | undefined>;
|
|
18
|
+
/** 宿主注册:按请求 Host 解析租户 id(仅 vome.tenant 开启时调用) */
|
|
19
|
+
export declare function registerTenantHostResolver(fn: TenantHostResolver | null): void;
|
|
20
|
+
/**
|
|
21
|
+
* 请求进入业务前绑定租户。
|
|
22
|
+
* 鉴权已从 token 写入 tenantId 时直接用,不再查库。
|
|
23
|
+
* 未登录请求走宿主注册的域名缓存。
|
|
24
|
+
*/
|
|
25
|
+
export declare function bindRequestTenant(): Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
* 写入前处理 tenantId。
|
|
28
|
+
* - 关闭:丢掉客户端传入值,不写该列
|
|
29
|
+
* - 开启:忽略客户端传入值,仅在有租户上下文时填充
|
|
30
|
+
*/
|
|
18
31
|
export declare function stampTenantId<T extends Record<string, unknown>>(table: PgTable, data: T): T;
|
|
19
32
|
/**
|
|
20
33
|
* 局部关闭租户过滤(跨租户查询、登录、权限菜单等)
|
|
@@ -22,3 +35,4 @@ export declare function stampTenantId<T extends Record<string, unknown>>(table:
|
|
|
22
35
|
export declare function noTenant<T>(fn: () => Promise<T>): Promise<T>;
|
|
23
36
|
/** 规范化 Host:小写、去端口 */
|
|
24
37
|
export declare function normalizeHost(host: string | null | undefined): string;
|
|
38
|
+
export {};
|
package/dist/server/index.d.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* 宿主须先 `import './config/provide'`,再 `import 'reflect-metadata'` / `./lib/host`。
|
|
6
6
|
* 开启 `experimentalDecorators` + `emitDecoratorMetadata`。
|
|
7
7
|
*/
|
|
8
|
-
export { App, appendInjectMeta, BaseController, Body, CommException, Context, Controller, Delete, Eps, isEpsEnabled, Get, getEnv, Inject, Ioc, isCommException, listControllers, clearControllers, isPublicHttpRoute, listProviders, Logger, Param, Patch, Post, Provide, Public, Perms, IgnorePerms, Put, Query, RES_CODE, scanFiles, ScopeEnum, Use, vome, VomeConfig, registerHost, getHostBindings, DbStore, baseColumns, BASE_COLUMN_COMMENTS, entitySchemas, columnComments, getColumnComments, listColumnCommentTables, syncColumnCommentsToPg, Repository, getRepository, InjectRepository, BaseService, q, attachCrudRoutes, isTenantEnabled, noTenant, normalizeHost, resolveTenantScope, tableHasDepartmentId, resolveDataScope, applyDataScopeWhere, applyRowScopes, noDataScope, BasePlugin, loadPluginClass, loadPluginClassFromPath, loadModuleHandlers, loadModuleHandlersFromPath, readPluginScript, resolvePluginServerPath, pDataPath, pPluginPath, pModulesPath, pModulePath, pLicensesPath, pLicensePath, ModuleRegistry, microApps, createModuleGateway, defineAuthMacro, DEFAULT_MARKET_PUBLIC_KEY_B64, newMarketId, newInstallNonce, stableStringify, resolveMarketPublicKey, resolveMarketPrivateKey, ed25519Sign, ed25519Verify, generateMarketKeyPair, pricingFromPrice, buildMarketSigPayload, signMarketSigPayload, verifyMarketSigPayload, issueLicenseFile, parseLicenseFile, verifyLicenseFile, hashZipEntries, readZipManifest, readMarketSig, sealVomeBuffer, verifySealedVome, MARKET_LIC_ENTRY, readZipMarketLicense, attachMarketLicense, assertModuleInstallAllowed, assertModuleDirAllowed, peekMarketPackage, installModuleFromZip, uninstallModuleFiles, isSeatEnforced, isMarketSigEnforced, DEFAULT_SEAT_API_BASE, DEFAULT_LICENSE_ISSUE_URL, fetchOfficialSignedLicense, deriveHostIdentity, getHostIdentity, MARKET_SEAT_DEFAULTS, ensureSiteId, syncModuleSeat, syncAllModuleSeats, getModuleSeatStatus, listModuleSeatStatuses, isModuleSeatBlocked, assertModuleSeatActive, formatSeatDisplay, startMarketSeatHeartbeat, stopMarketSeatHeartbeat, bootstrapInstalledModules, } from '../core';
|
|
8
|
+
export { App, appendInjectMeta, BaseController, Body, CommException, Context, Controller, Delete, Eps, isEpsEnabled, Get, getEnv, Inject, Ioc, isCommException, listControllers, clearControllers, isPublicHttpRoute, listProviders, Logger, Param, Patch, Post, Provide, Public, Perms, IgnorePerms, Put, Query, RES_CODE, scanFiles, ScopeEnum, Use, vome, VomeConfig, registerHost, getHostBindings, DbStore, baseColumns, BASE_COLUMN_COMMENTS, entitySchemas, columnComments, getColumnComments, listColumnCommentTables, syncColumnCommentsToPg, Repository, getRepository, InjectRepository, BaseService, registerEntityCacheStore, q, attachCrudRoutes, isTenantEnabled, noTenant, normalizeHost, resolveTenantScope, registerTenantHostResolver, bindRequestTenant, tableHasDepartmentId, resolveDataScope, applyDataScopeWhere, applyRowScopes, noDataScope, BasePlugin, loadPluginClass, loadPluginClassFromPath, loadModuleHandlers, loadModuleHandlersFromPath, readPluginScript, resolvePluginServerPath, pDataPath, pPluginPath, pModulesPath, pModulePath, pLicensesPath, pLicensePath, ModuleRegistry, microApps, createModuleGateway, defineAuthMacro, DEFAULT_MARKET_PUBLIC_KEY_B64, newMarketId, newInstallNonce, stableStringify, resolveMarketPublicKey, resolveMarketPrivateKey, ed25519Sign, ed25519Verify, generateMarketKeyPair, pricingFromPrice, buildMarketSigPayload, signMarketSigPayload, verifyMarketSigPayload, issueLicenseFile, parseLicenseFile, verifyLicenseFile, hashZipEntries, readZipManifest, readMarketSig, sealVomeBuffer, verifySealedVome, MARKET_LIC_ENTRY, readZipMarketLicense, attachMarketLicense, assertModuleInstallAllowed, assertModuleDirAllowed, peekMarketPackage, installModuleFromZip, uninstallModuleFiles, isSeatEnforced, isMarketSigEnforced, DEFAULT_SEAT_API_BASE, DEFAULT_LICENSE_ISSUE_URL, fetchOfficialSignedLicense, deriveHostIdentity, getHostIdentity, MARKET_SEAT_DEFAULTS, ensureSiteId, syncModuleSeat, syncAllModuleSeats, getModuleSeatStatus, listModuleSeatStatuses, isModuleSeatBlocked, assertModuleSeatActive, formatSeatDisplay, startMarketSeatHeartbeat, stopMarketSeatHeartbeat, bootstrapInstalledModules, } from '../core';
|
|
9
9
|
export type { HostIdentity, HostBindings, HostLifecycle, HostSocket, HostMiddleware } from '../core';
|
|
10
10
|
export { setControllerScanContext, parseModuleFromPath, } from '../routing/context';
|
|
11
11
|
export { toPosixPath, normalizeScanPath } from '../comm/path';
|