cabloy 5.1.109 → 5.1.111
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/.cabloy-version +1 -1
- package/.gitignore +5 -2
- package/CHANGELOG.md +32 -0
- package/cabloy-docs/.vitepress/config.mjs +1 -0
- package/cabloy-docs/ai/playbook-module-removal.md +1 -1
- package/cabloy-docs/ai/virtual-decorator-guidance.md +9 -9
- package/cabloy-docs/backend/websocket-call-flow.md +1 -1
- package/cabloy-docs/backend/websocket-guide.md +1 -1
- package/cabloy-docs/frontend/fetch-interceptor-guide.md +8 -8
- package/cabloy-docs/frontend/form-guide.md +3 -1
- package/cabloy-docs/frontend/form-layout-guide.md +322 -0
- package/cabloy-docs/frontend/introduction.md +1 -0
- package/cabloy-docs/frontend/resource-entry-page-deep-dive.md +2 -0
- package/cabloy-docs/frontend/router-tabs-layout-integration.md +2 -1
- package/cabloy-docs/frontend/scripts.md +56 -1
- package/cabloy-docs/frontend/ssr-build-deploy-guide.md +1 -1
- package/cabloy-docs/frontend/ssr-overview.md +6 -0
- package/cabloy-docs/frontend/ssr-review-checklist.md +1 -1
- package/cabloy-docs/frontend/ssr-troubleshooting-guide.md +9 -9
- package/cabloy-docs/frontend/table-resource-crud-cookbook.md +4 -4
- package/cabloy-docs/frontend/zova-form-source-reading-map.md +36 -4
- package/cabloy-docs/frontend/zova-form-under-the-hood.md +13 -0
- package/cabloy-docs/fullstack/framework-performance.md +3 -3
- package/cabloy-docs/fullstack/quickstart.md +14 -0
- package/cabloy-docs/reference/repo-scripts.md +79 -0
- package/e2e/config/playwright.basic.config.ts +3 -0
- package/e2e/config/playwright.commerce.config.ts +3 -0
- package/e2e/config/playwright.shared.config.ts +38 -0
- package/e2e/scripts/e2e.ts +33 -0
- package/e2e/scripts/startE2eVona.ts +38 -0
- package/e2e/scripts/testE2eClean.ts +56 -0
- package/e2e/specs/a-basic/basic.spec.ts +271 -0
- package/e2e/specs/a-commerce/commerce.spec.ts +61 -0
- package/package.json +17 -1
- package/scripts/upgrade.ts +182 -7
- package/test-results/.last-run.json +4 -0
- package/vona/packages-vona/vona/package.json +1 -1
- package/vona/pnpm-lock.yaml +383 -40
- package/vona/src/suite/a-commerce/modules/commerce-catalog/package.json +52 -0
- package/vona/src/suite/a-commerce/modules/commerce-catalog/src/.metadata/index.ts +29 -0
- package/vona/src/suite/a-commerce/modules/commerce-catalog/src/.metadata/this.ts +2 -0
- package/vona/src/suite/a-commerce/modules/commerce-catalog/src/index.ts +1 -0
- package/vona/src/suite/a-commerce/modules/commerce-catalog/tsconfig.build.json +11 -0
- package/vona/src/suite/a-commerce/modules/commerce-catalog/tsconfig.json +7 -0
- package/vona/src/suite/a-commerce/modules/commerce-member/package.json +52 -0
- package/vona/src/suite/a-commerce/modules/commerce-member/src/.metadata/index.ts +29 -0
- package/vona/src/suite/a-commerce/modules/commerce-member/src/.metadata/this.ts +2 -0
- package/vona/src/suite/a-commerce/modules/commerce-member/src/index.ts +1 -0
- package/vona/src/suite/a-commerce/modules/commerce-member/tsconfig.build.json +11 -0
- package/vona/src/suite/a-commerce/modules/commerce-member/tsconfig.json +7 -0
- package/vona/src/suite/a-commerce/modules/commerce-payment/package.json +52 -0
- package/vona/src/suite/a-commerce/modules/commerce-payment/src/.metadata/index.ts +29 -0
- package/vona/src/suite/a-commerce/modules/commerce-payment/src/.metadata/this.ts +2 -0
- package/vona/src/suite/a-commerce/modules/commerce-payment/src/index.ts +1 -0
- package/vona/src/suite/a-commerce/modules/commerce-payment/tsconfig.build.json +11 -0
- package/vona/src/suite/a-commerce/modules/commerce-payment/tsconfig.json +7 -0
- package/vona/src/suite/a-commerce/modules/commerce-promotion/package.json +52 -0
- package/vona/src/suite/a-commerce/modules/commerce-promotion/src/.metadata/index.ts +29 -0
- package/vona/src/suite/a-commerce/modules/commerce-promotion/src/.metadata/this.ts +2 -0
- package/vona/src/suite/a-commerce/modules/commerce-promotion/src/index.ts +1 -0
- package/vona/src/suite/a-commerce/modules/commerce-promotion/tsconfig.build.json +11 -0
- package/vona/src/suite/a-commerce/modules/commerce-promotion/tsconfig.json +7 -0
- package/vona/src/suite/a-commerce/modules/commerce-siteadmin/package.json +53 -0
- package/vona/src/suite/a-commerce/modules/commerce-siteadmin/src/.metadata/index.ts +81 -0
- package/vona/src/suite/a-commerce/modules/commerce-siteadmin/src/.metadata/this.ts +2 -0
- package/vona/src/suite/a-commerce/modules/commerce-siteadmin/src/bean/ssrMenu.home.ts +21 -0
- package/vona/src/suite/a-commerce/modules/commerce-siteadmin/src/bean/ssrSite.commerceAdmin.ts +34 -0
- package/vona/src/suite/a-commerce/modules/commerce-siteadmin/src/index.ts +1 -0
- package/vona/src/suite/a-commerce/modules/commerce-siteadmin/tsconfig.build.json +11 -0
- package/vona/src/suite/a-commerce/modules/commerce-siteadmin/tsconfig.json +7 -0
- package/vona/src/suite/a-commerce/modules/commerce-siteweb/package.json +53 -0
- package/vona/src/suite/a-commerce/modules/commerce-siteweb/src/.metadata/index.ts +81 -0
- package/vona/src/suite/a-commerce/modules/commerce-siteweb/src/.metadata/this.ts +2 -0
- package/vona/src/suite/a-commerce/modules/commerce-siteweb/src/bean/ssrMenu.home.ts +20 -0
- package/vona/src/suite/a-commerce/modules/commerce-siteweb/src/bean/ssrSite.commerce.ts +34 -0
- package/vona/src/suite/a-commerce/modules/commerce-siteweb/src/index.ts +1 -0
- package/vona/src/suite/a-commerce/modules/commerce-siteweb/tsconfig.build.json +11 -0
- package/vona/src/suite/a-commerce/modules/commerce-siteweb/tsconfig.json +7 -0
- package/vona/src/suite/a-commerce/modules/commerce-trade/package.json +52 -0
- package/vona/src/suite/a-commerce/modules/commerce-trade/src/.metadata/index.ts +29 -0
- package/vona/src/suite/a-commerce/modules/commerce-trade/src/.metadata/this.ts +2 -0
- package/vona/src/suite/a-commerce/modules/commerce-trade/src/index.ts +1 -0
- package/vona/src/suite/a-commerce/modules/commerce-trade/tsconfig.build.json +11 -0
- package/vona/src/suite/a-commerce/modules/commerce-trade/tsconfig.json +7 -0
- package/vona/src/suite/a-commerce/package.json +18 -0
- package/vona/src/suite/a-commerce/tsconfig.base.json +4 -0
- package/vona/src/suite/a-commerce/tsconfig.json +28 -0
- package/vona/src/suite/a-training/modules/training-student/src/dto/studentSelectResItem.tsx +3 -3
- package/vona/src/suite/a-training/modules/training-student/test/student.test.ts +4 -3
- package/vona/src/suite-vendor/a-vona/modules/a-orm/package.json +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-orm/src/bean/bean.database.ts +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-orm/src/bean/schedule.softDeletionPrune.ts +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-orm/src/lib/bean.model/bean.model_meta.ts +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-orm/src/lib/dto/dtoAggregate.ts +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-orm/src/lib/dto/dtoCreate.ts +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-orm/src/lib/dto/dtoGroup.ts +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-orm/src/lib/dto/dtoSelectAndCount.ts +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-orm/src/lib/dto/dtoUpdate.ts +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-orm/src/lib/modelCacheBase.ts +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-orm/src/lib/relations.ts +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-orm/src/lib/relationsDynamic.ts +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-orm/src/lib/relationsMutate.ts +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-orm/src/lib/relationsStatic.ts +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-orm/src/service/database.ts +1 -1
- package/vona/src/suite-vendor/a-vona/modules/a-orm/src/service/databaseDialectBase_.ts +10 -3
- package/vona/src/suite-vendor/a-vona/modules/a-orm/src/service/db_.ts +1 -1
- package/vona/src/suite-vendor/a-vona/package.json +1 -1
- package/zova/env/.env.cabloyCommerce +24 -0
- package/zova/env/.env.cabloyCommerceAdmin +19 -0
- package/zova/package.original.json +10 -1
- package/zova/packages-zova/zova/package.json +2 -2
- package/zova/pnpm-lock.yaml +134 -45
- package/zova/src/front/config/config/config.cabloyCommerce.ts +16 -0
- package/zova/src/front/config/config/config.cabloyCommerceAdmin.ts +13 -0
- package/zova/src/suite/a-commerce/modules/commerce-catalog/package.json +52 -0
- package/zova/src/suite/a-commerce/modules/commerce-catalog/src/.metadata/index.ts +26 -0
- package/zova/src/suite/a-commerce/modules/commerce-catalog/src/.metadata/this.ts +2 -0
- package/zova/src/suite/a-commerce/modules/commerce-catalog/src/index.ts +1 -0
- package/zova/src/suite/a-commerce/modules/commerce-catalog/tsconfig.build.json +13 -0
- package/zova/src/suite/a-commerce/modules/commerce-catalog/tsconfig.json +5 -0
- package/zova/src/suite/a-commerce/modules/commerce-member/package.json +52 -0
- package/zova/src/suite/a-commerce/modules/commerce-member/src/.metadata/index.ts +26 -0
- package/zova/src/suite/a-commerce/modules/commerce-member/src/.metadata/this.ts +2 -0
- package/zova/src/suite/a-commerce/modules/commerce-member/src/index.ts +1 -0
- package/zova/src/suite/a-commerce/modules/commerce-member/tsconfig.build.json +13 -0
- package/zova/src/suite/a-commerce/modules/commerce-member/tsconfig.json +5 -0
- package/zova/src/suite/a-commerce/modules/commerce-payment/package.json +52 -0
- package/zova/src/suite/a-commerce/modules/commerce-payment/src/.metadata/index.ts +26 -0
- package/zova/src/suite/a-commerce/modules/commerce-payment/src/.metadata/this.ts +2 -0
- package/zova/src/suite/a-commerce/modules/commerce-payment/src/index.ts +1 -0
- package/zova/src/suite/a-commerce/modules/commerce-payment/tsconfig.build.json +13 -0
- package/zova/src/suite/a-commerce/modules/commerce-payment/tsconfig.json +5 -0
- package/zova/src/suite/a-commerce/modules/commerce-promotion/package.json +52 -0
- package/zova/src/suite/a-commerce/modules/commerce-promotion/src/.metadata/index.ts +26 -0
- package/zova/src/suite/a-commerce/modules/commerce-promotion/src/.metadata/this.ts +2 -0
- package/zova/src/suite/a-commerce/modules/commerce-promotion/src/index.ts +1 -0
- package/zova/src/suite/a-commerce/modules/commerce-promotion/tsconfig.build.json +13 -0
- package/zova/src/suite/a-commerce/modules/commerce-promotion/tsconfig.json +5 -0
- package/zova/src/suite/a-commerce/modules/commerce-siteadmin/package.json +52 -0
- package/zova/src/suite/a-commerce/modules/commerce-siteadmin/src/.metadata/index.ts +26 -0
- package/zova/src/suite/a-commerce/modules/commerce-siteadmin/src/.metadata/this.ts +2 -0
- package/zova/src/suite/a-commerce/modules/commerce-siteadmin/src/index.ts +1 -0
- package/zova/src/suite/a-commerce/modules/commerce-siteadmin/tsconfig.build.json +13 -0
- package/zova/src/suite/a-commerce/modules/commerce-siteadmin/tsconfig.json +5 -0
- package/zova/src/suite/a-commerce/modules/commerce-siteweb/package.json +52 -0
- package/zova/src/suite/a-commerce/modules/commerce-siteweb/src/.metadata/index.ts +26 -0
- package/zova/src/suite/a-commerce/modules/commerce-siteweb/src/.metadata/this.ts +2 -0
- package/zova/src/suite/a-commerce/modules/commerce-siteweb/src/index.ts +1 -0
- package/zova/src/suite/a-commerce/modules/commerce-siteweb/tsconfig.build.json +13 -0
- package/zova/src/suite/a-commerce/modules/commerce-siteweb/tsconfig.json +5 -0
- package/zova/src/suite/a-commerce/modules/commerce-trade/package.json +52 -0
- package/zova/src/suite/a-commerce/modules/commerce-trade/src/.metadata/index.ts +26 -0
- package/zova/src/suite/a-commerce/modules/commerce-trade/src/.metadata/this.ts +2 -0
- package/zova/src/suite/a-commerce/modules/commerce-trade/src/index.ts +1 -0
- package/zova/src/suite/a-commerce/modules/commerce-trade/tsconfig.build.json +13 -0
- package/zova/src/suite/a-commerce/modules/commerce-trade/tsconfig.json +5 -0
- package/zova/src/suite/a-commerce/package.json +18 -0
- package/zova/src/suite/a-commerce/tsconfig.base.json +4 -0
- package/zova/src/suite/a-commerce/tsconfig.json +4 -0
- package/zova/src/suite/cabloy-basic/modules/basic-form/src/component/blockFormLayout/controller.tsx +38 -15
- package/zova/src/suite-vendor/a-zova/modules/a-app/package.json +1 -1
- package/zova/src/suite-vendor/a-zova/modules/a-app/src/component/app/controller.tsx +6 -0
- package/zova/src/suite-vendor/a-zova/modules/a-form/package.json +1 -1
- package/zova/src/suite-vendor/a-zova/modules/a-form/src/types/formLayout.ts +5 -1
- package/zova/src/suite-vendor/a-zova/modules/a-openapi/package.json +1 -1
- package/zova/src/suite-vendor/a-zova/modules/a-openapi/src/types/resource/formLayout.ts +3 -0
- package/zova/src/suite-vendor/a-zova/modules/a-ssr/package.json +1 -1
- package/zova/src/suite-vendor/a-zova/modules/a-ssr/src/lib/ssr.ts +18 -0
- package/zova/src/suite-vendor/a-zova/modules/a-ssr/src/monkey.ts +5 -0
- package/zova/src/suite-vendor/a-zova/package.json +5 -5
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
// eslint-disable
|
|
2
|
+
/** ssrSite: begin */
|
|
3
|
+
export * from '../bean/ssrSite.commerce.ts';
|
|
4
|
+
import type { ISsrSiteOptionsCommerce } from '../bean/ssrSite.commerce.ts';
|
|
5
|
+
import 'vona-module-a-ssr';
|
|
6
|
+
declare module 'vona-module-a-ssr' {
|
|
7
|
+
|
|
8
|
+
export interface ISsrSiteRecord {
|
|
9
|
+
'commerce-siteweb:commerce': ISsrSiteOptionsCommerce;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
}
|
|
14
|
+
declare module 'vona-module-commerce-siteweb' {
|
|
15
|
+
|
|
16
|
+
export interface SsrSiteCommerce {
|
|
17
|
+
/** @internal */
|
|
18
|
+
get scope(): ScopeModuleCommerceSiteweb;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export interface SsrSiteCommerce {
|
|
22
|
+
get $beanFullName(): 'commerce-siteweb.ssrSite.commerce';
|
|
23
|
+
get $onionName(): 'commerce-siteweb:commerce';
|
|
24
|
+
get $onionOptions(): ISsrSiteOptionsCommerce;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
/** ssrSite: end */
|
|
28
|
+
/** ssrMenu: begin */
|
|
29
|
+
export * from '../bean/ssrMenu.home.ts';
|
|
30
|
+
import type { ISsrMenuOptionsHome } from '../bean/ssrMenu.home.ts';
|
|
31
|
+
import 'vona-module-a-ssr';
|
|
32
|
+
declare module 'vona-module-a-ssr' {
|
|
33
|
+
|
|
34
|
+
export interface ISsrMenuRecord {
|
|
35
|
+
'commerce-siteweb:home': ISsrMenuOptionsHome;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
}
|
|
40
|
+
declare module 'vona-module-commerce-siteweb' {
|
|
41
|
+
|
|
42
|
+
export interface SsrMenuHome {
|
|
43
|
+
/** @internal */
|
|
44
|
+
get scope(): ScopeModuleCommerceSiteweb;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export interface SsrMenuHome {
|
|
48
|
+
get $beanFullName(): 'commerce-siteweb.ssrMenu.home';
|
|
49
|
+
get $onionName(): 'commerce-siteweb:home';
|
|
50
|
+
get $onionOptions(): ISsrMenuOptionsHome;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
/** ssrMenu: end */
|
|
54
|
+
/** scope: begin */
|
|
55
|
+
import { BeanScopeBase, type BeanScopeUtil } from 'vona';
|
|
56
|
+
import { Scope } from 'vona-module-a-bean';
|
|
57
|
+
|
|
58
|
+
@Scope()
|
|
59
|
+
export class ScopeModuleCommerceSiteweb extends BeanScopeBase {}
|
|
60
|
+
|
|
61
|
+
export interface ScopeModuleCommerceSiteweb {
|
|
62
|
+
util: BeanScopeUtil;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
import 'vona';
|
|
66
|
+
declare module 'vona' {
|
|
67
|
+
export interface IBeanScopeRecord {
|
|
68
|
+
'commerce-siteweb': ScopeModuleCommerceSiteweb;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
export interface IBeanScopeContainer {
|
|
72
|
+
commerceSiteweb: ScopeModuleCommerceSiteweb;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
}
|
|
81
|
+
/** scope: end */
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { IDecoratorSsrMenuOptions } from 'vona-module-a-ssr';
|
|
2
|
+
|
|
3
|
+
import { BeanBase } from 'vona';
|
|
4
|
+
import { $order } from 'vona-module-a-openapiutils';
|
|
5
|
+
import { SsrMenu } from 'vona-module-a-ssr';
|
|
6
|
+
|
|
7
|
+
import type { ISsrSiteOptionsCommerce } from './ssrSite.commerce.ts';
|
|
8
|
+
|
|
9
|
+
export interface ISsrMenuOptionsHome extends IDecoratorSsrMenuOptions<ISsrSiteOptionsCommerce> {}
|
|
10
|
+
|
|
11
|
+
@SsrMenu<ISsrMenuOptionsHome>({
|
|
12
|
+
item: {
|
|
13
|
+
title: 'Commerce',
|
|
14
|
+
order: $order(1),
|
|
15
|
+
icon: undefined,
|
|
16
|
+
link: '/',
|
|
17
|
+
},
|
|
18
|
+
site: ['commerce-siteweb:commerce'],
|
|
19
|
+
})
|
|
20
|
+
export class SsrMenuHome extends BeanBase {}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { IDecoratorSsrSiteOptions } from 'vona-module-a-ssr';
|
|
2
|
+
import type { IIconRecord, IPagePathRecord } from 'zova-rest-cabloy-commerce';
|
|
3
|
+
|
|
4
|
+
import { BeanSsrSiteBase, SsrSite } from 'vona-module-a-ssr';
|
|
5
|
+
|
|
6
|
+
declare module 'vona-module-a-ssr' {
|
|
7
|
+
export interface ISsrSiteIdRecord {
|
|
8
|
+
commerce: never;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export interface ISsrSitePublicPathRecord {
|
|
12
|
+
commerce: never;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export interface ISsrSiteOptionsCommercePages extends IPagePathRecord {}
|
|
17
|
+
|
|
18
|
+
export interface ISsrSiteOptionsCommercePagesData {}
|
|
19
|
+
|
|
20
|
+
export interface ISsrSiteOptionsCommerce extends IDecoratorSsrSiteOptions<
|
|
21
|
+
ISsrSiteOptionsCommercePages,
|
|
22
|
+
ISsrSiteOptionsCommercePagesData,
|
|
23
|
+
IIconRecord
|
|
24
|
+
> {}
|
|
25
|
+
|
|
26
|
+
@SsrSite<ISsrSiteOptionsCommerce>({
|
|
27
|
+
siteId: 'commerce',
|
|
28
|
+
publicPath: 'commerce',
|
|
29
|
+
bundlePath: 'ssr-cabloyCommerce-5.0.0',
|
|
30
|
+
diagnostics: {
|
|
31
|
+
buildCommand: 'npm run build:zova:commerce:web',
|
|
32
|
+
},
|
|
33
|
+
})
|
|
34
|
+
export class SsrSiteCommerce extends BeanSsrSiteBase<ISsrSiteOptionsCommerce> {}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './.metadata/index.ts';
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "vona-module-commerce-trade",
|
|
3
|
+
"version": "5.0.0",
|
|
4
|
+
"description": "",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"Vona Module"
|
|
7
|
+
],
|
|
8
|
+
"author": "",
|
|
9
|
+
"files": [
|
|
10
|
+
"assets",
|
|
11
|
+
"dist",
|
|
12
|
+
"src"
|
|
13
|
+
],
|
|
14
|
+
"type": "module",
|
|
15
|
+
"exports": {
|
|
16
|
+
".": {
|
|
17
|
+
"types": [
|
|
18
|
+
"./src/index.ts",
|
|
19
|
+
"./dist/index.d.ts"
|
|
20
|
+
],
|
|
21
|
+
"import": "./src/index.ts",
|
|
22
|
+
"default": "./dist/index.js"
|
|
23
|
+
},
|
|
24
|
+
"./package.json": "./package.json"
|
|
25
|
+
},
|
|
26
|
+
"scripts": {
|
|
27
|
+
"clean": "rimraf dist tsconfig.build.tsbuildinfo",
|
|
28
|
+
"tsc:publish": "npm run clean && node ../../../../../packages-cli/cli/src/bin/vona.ts :bin:buildModule --sourcemap && tsc -p tsconfig.build.json",
|
|
29
|
+
"prepublishOnly": "npm run tsc:publish",
|
|
30
|
+
"prepack": "clean-package",
|
|
31
|
+
"postpack": "clean-package restore"
|
|
32
|
+
},
|
|
33
|
+
"dependencies": {},
|
|
34
|
+
"devDependencies": {
|
|
35
|
+
"clean-package": "^2.2.0",
|
|
36
|
+
"rimraf": "^6.1.3"
|
|
37
|
+
},
|
|
38
|
+
"clean-package": {
|
|
39
|
+
"indent": 2,
|
|
40
|
+
"remove": [
|
|
41
|
+
"clean-package",
|
|
42
|
+
"devDependencies",
|
|
43
|
+
"exports.\\..import"
|
|
44
|
+
]
|
|
45
|
+
},
|
|
46
|
+
"title": "commerce-trade",
|
|
47
|
+
"vonaModule": {
|
|
48
|
+
"dependencies": {
|
|
49
|
+
"a-vona": "5.0.0"
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
// eslint-disable
|
|
2
|
+
/** scope: begin */
|
|
3
|
+
import { BeanScopeBase, type BeanScopeUtil } from 'vona';
|
|
4
|
+
import { Scope } from 'vona-module-a-bean';
|
|
5
|
+
|
|
6
|
+
@Scope()
|
|
7
|
+
export class ScopeModuleCommerceTrade extends BeanScopeBase {}
|
|
8
|
+
|
|
9
|
+
export interface ScopeModuleCommerceTrade {
|
|
10
|
+
util: BeanScopeUtil;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
import 'vona';
|
|
14
|
+
declare module 'vona' {
|
|
15
|
+
export interface IBeanScopeRecord {
|
|
16
|
+
'commerce-trade': ScopeModuleCommerceTrade;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export interface IBeanScopeContainer {
|
|
20
|
+
commerceTrade: ScopeModuleCommerceTrade;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
}
|
|
29
|
+
/** scope: end */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './.metadata/index.ts';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "vona-suite-a-commerce",
|
|
3
|
+
"version": "5.0.0",
|
|
4
|
+
"description": "",
|
|
5
|
+
"author": "",
|
|
6
|
+
"files": [],
|
|
7
|
+
"type": "module",
|
|
8
|
+
"dependencies": {
|
|
9
|
+
"vona-module-commerce-catalog": "^5.0.0",
|
|
10
|
+
"vona-module-commerce-member": "^5.0.0",
|
|
11
|
+
"vona-module-commerce-payment": "^5.0.0",
|
|
12
|
+
"vona-module-commerce-promotion": "^5.0.0",
|
|
13
|
+
"vona-module-commerce-siteadmin": "^5.0.0",
|
|
14
|
+
"vona-module-commerce-siteweb": "^5.0.0",
|
|
15
|
+
"vona-module-commerce-trade": "^5.0.0"
|
|
16
|
+
},
|
|
17
|
+
"title": "a-commerce"
|
|
18
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
{
|
|
2
|
+
"extends": "./tsconfig.base",
|
|
3
|
+
"compilerOptions": {},
|
|
4
|
+
"references": [
|
|
5
|
+
{
|
|
6
|
+
"path": "modules/commerce-catalog/tsconfig.build.json"
|
|
7
|
+
},
|
|
8
|
+
{
|
|
9
|
+
"path": "modules/commerce-trade/tsconfig.build.json"
|
|
10
|
+
},
|
|
11
|
+
{
|
|
12
|
+
"path": "modules/commerce-promotion/tsconfig.build.json"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"path": "modules/commerce-payment/tsconfig.build.json"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"path": "modules/commerce-member/tsconfig.build.json"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"path": "modules/commerce-siteweb/tsconfig.build.json"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"path": "modules/commerce-siteadmin/tsconfig.build.json"
|
|
25
|
+
}
|
|
26
|
+
],
|
|
27
|
+
"exclude": ["modules"]
|
|
28
|
+
}
|
|
@@ -16,18 +16,18 @@ export interface IDtoOptionsStudentSelectResItem extends IDecoratorDtoOptions {}
|
|
|
16
16
|
ZovaRender.block('basic-page:blockPage', {
|
|
17
17
|
blocks: [
|
|
18
18
|
ZovaRender.block('basic-page:blockFilter', {
|
|
19
|
-
formFieldLayout: { inline:
|
|
19
|
+
formFieldLayout: { inline: true },
|
|
20
20
|
blocks: [
|
|
21
21
|
ZovaRender.block('basic-form:blockFormLayout', {
|
|
22
22
|
formLayout: {
|
|
23
23
|
children: [
|
|
24
24
|
{
|
|
25
25
|
type: 'section',
|
|
26
|
-
|
|
26
|
+
layout: 'flow',
|
|
27
27
|
children: [
|
|
28
28
|
{ type: 'field', name: 'name' },
|
|
29
29
|
{ type: 'field', name: 'level' },
|
|
30
|
-
{ type: 'field', name: 'createdAt'
|
|
30
|
+
{ type: 'field', name: 'createdAt' },
|
|
31
31
|
],
|
|
32
32
|
},
|
|
33
33
|
],
|
|
@@ -54,18 +54,19 @@ describe('student.test.ts', () => {
|
|
|
54
54
|
});
|
|
55
55
|
const filterBlock = (component as any)?.rest?.blocks?.[0]?.options?.blocks?.[0];
|
|
56
56
|
assert.equal(filterBlock?.render, 'basic-page:blockFilter');
|
|
57
|
-
assert.equal(filterBlock?.options?.formFieldLayout?.inline,
|
|
57
|
+
assert.equal(filterBlock?.options?.formFieldLayout?.inline, true);
|
|
58
58
|
assert.deepEqual(
|
|
59
59
|
filterBlock?.options?.blocks?.map(item => item.render),
|
|
60
60
|
['basic-form:blockFormLayout', 'basic-page:blockFilterActions'],
|
|
61
61
|
);
|
|
62
62
|
const formLayout = filterBlock?.options?.blocks?.[0]?.options?.formLayout;
|
|
63
|
-
assert.
|
|
63
|
+
assert.equal(formLayout?.children[0]?.layout, 'flow');
|
|
64
|
+
assert.equal(formLayout?.children[0]?.columns, undefined);
|
|
64
65
|
assert.deepEqual(
|
|
65
66
|
formLayout?.children[0]?.children.map(item => item.name),
|
|
66
67
|
['name', 'level', 'createdAt'],
|
|
67
68
|
);
|
|
68
|
-
assert.
|
|
69
|
+
assert.equal(formLayout?.children[0]?.children[2]?.span, undefined);
|
|
69
70
|
});
|
|
70
71
|
});
|
|
71
72
|
|
|
@@ -3,13 +3,13 @@ import type { FunctionAsync } from 'vona';
|
|
|
3
3
|
import { BeanBase, beanFullNameFromOnionName } from 'vona';
|
|
4
4
|
import { Bean } from 'vona-module-a-bean';
|
|
5
5
|
|
|
6
|
+
import type { ServiceDatabaseDialectBase } from '../service/databaseDialectBase_.ts';
|
|
6
7
|
import type { ConfigDatabaseClient } from '../types/config.ts';
|
|
7
8
|
import type {
|
|
8
9
|
IDatabaseClientDialectRecord,
|
|
9
10
|
IDatabaseClientRecord,
|
|
10
11
|
IDbInfo,
|
|
11
12
|
} from '../types/database.ts';
|
|
12
|
-
import type { ServiceDatabaseDialectBase } from '../service/databaseDialectBase_.ts';
|
|
13
13
|
|
|
14
14
|
import { ServiceDatabaseAsyncLocalStorage } from '../service/databaseAsyncLocalStorage_.ts';
|
|
15
15
|
import { ServiceDatabaseClient } from '../service/databaseClient_.ts';
|
|
@@ -4,8 +4,8 @@ import type { IScheduleExecute } from 'vona-module-a-schedule';
|
|
|
4
4
|
import { BeanBase } from 'vona';
|
|
5
5
|
import { Schedule } from 'vona-module-a-schedule';
|
|
6
6
|
|
|
7
|
-
import type { IModelRecord, ISoftDeletionPrune } from '../types/onion/model.ts';
|
|
8
7
|
import type { BeanModelCache } from '../lib/bean.model/bean.model_cache.ts';
|
|
8
|
+
import type { IModelRecord, ISoftDeletionPrune } from '../types/onion/model.ts';
|
|
9
9
|
|
|
10
10
|
@Schedule({ repeat: { every: 24 * 3600 * 1000 } })
|
|
11
11
|
export class ScheduleSoftDeletionPrune extends BeanBase implements IScheduleExecute {
|
|
@@ -2,6 +2,7 @@ import { isNil } from '@cabloy/utils';
|
|
|
2
2
|
import { appResource, BeanBase, cast } from 'vona';
|
|
3
3
|
import { $tableNameFromEntity } from 'vona-module-a-ormutils';
|
|
4
4
|
|
|
5
|
+
import type { BeanModel } from '../../bean/bean.model.ts';
|
|
5
6
|
import type { ServiceDb } from '../../service/db_.ts';
|
|
6
7
|
import type {
|
|
7
8
|
IDatabaseClientRecord,
|
|
@@ -15,7 +16,6 @@ import type {
|
|
|
15
16
|
TypeModelOptionsTable,
|
|
16
17
|
TypeModelRelationOptionsMetaClient,
|
|
17
18
|
} from '../../types/index.ts';
|
|
18
|
-
import type { BeanModel } from '../../bean/bean.model.ts';
|
|
19
19
|
|
|
20
20
|
import { getTableOrTableAlias, prepareClassModel } from '../../common/utils.ts';
|
|
21
21
|
import { SymbolKeyEntity, SymbolKeyEntityMeta, SymbolKeyModelOptions } from '../../types/index.ts';
|
|
@@ -4,11 +4,11 @@ import { ensureArray } from '@cabloy/utils';
|
|
|
4
4
|
import { Api, v } from 'vona-module-a-openapiutils';
|
|
5
5
|
import z from 'zod';
|
|
6
6
|
|
|
7
|
-
import type { BeanModelMeta } from '../bean.model/bean.model_meta.ts';
|
|
8
7
|
import type { TypeDtoAggrResult } from '../../types/dto/dtoAggregate.ts';
|
|
9
8
|
import type { TypeModelSelectAggrParamsAggrs } from '../../types/modelAggr.ts';
|
|
10
9
|
import type { IModelClassRecord } from '../../types/onion/model.ts';
|
|
11
10
|
import type { TypeModelOfModelLike, TypeSymbolKeyEntity } from '../../types/relations.ts';
|
|
11
|
+
import type { BeanModelMeta } from '../bean.model/bean.model_meta.ts';
|
|
12
12
|
|
|
13
13
|
export function DtoAggregate<
|
|
14
14
|
Aggrs extends TypeModelSelectAggrParamsAggrs<
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { Constructable } from 'vona';
|
|
2
2
|
|
|
3
|
-
import type { BeanModelMeta } from '../bean.model/bean.model_meta.ts';
|
|
4
3
|
import type { IDtoMutateParams, TypeDtoMutateResult } from '../../types/dto/dtoMutate.ts';
|
|
5
4
|
import type { IModelClassRecord } from '../../types/onion/model.ts';
|
|
5
|
+
import type { BeanModelMeta } from '../bean.model/bean.model_meta.ts';
|
|
6
6
|
|
|
7
7
|
import { _DtoMutate_raw } from './dtoMutate.ts';
|
|
8
8
|
|
|
@@ -3,12 +3,12 @@ import type { Constructable } from 'vona';
|
|
|
3
3
|
import { ensureArray } from '@cabloy/utils';
|
|
4
4
|
import { PickClassInner } from 'vona';
|
|
5
5
|
|
|
6
|
-
import type { BeanModelMeta } from '../bean.model/bean.model_meta.ts';
|
|
7
6
|
import type { TypeDtoGroupResult } from '../../types/dto/dtoGroup.ts';
|
|
8
7
|
import type { TypeModelSelectAggrParamsAggrs } from '../../types/modelAggr.ts';
|
|
9
8
|
import type { TypeModelColumnsStrict } from '../../types/modelWhere.ts';
|
|
10
9
|
import type { IModelClassRecord } from '../../types/onion/model.ts';
|
|
11
10
|
import type { TypeModelOfModelLike, TypeSymbolKeyEntity } from '../../types/relations.ts';
|
|
11
|
+
import type { BeanModelMeta } from '../bean.model/bean.model_meta.ts';
|
|
12
12
|
|
|
13
13
|
import { getClassEntityFromClassModel, prepareClassModel } from '../../common/utils.ts';
|
|
14
14
|
import { _DtoAggregate_inner } from './dtoAggregate.ts';
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { Constructable } from 'vona';
|
|
2
2
|
|
|
3
|
-
import type { BeanModelMeta } from '../bean.model/bean.model_meta.ts';
|
|
4
3
|
import type { IDtoGetParams } from '../../types/dto/dtoGet.ts';
|
|
5
4
|
import type { TypeDtoSelectAndCountResult } from '../../types/dto/dtoSelectAndCount.ts';
|
|
6
5
|
import type { IModelClassRecord } from '../../types/onion/model.ts';
|
|
6
|
+
import type { BeanModelMeta } from '../bean.model/bean.model_meta.ts';
|
|
7
7
|
|
|
8
8
|
import { DtoGet } from './dtoGet.ts';
|
|
9
9
|
import { DtoListAndCount } from './dtoListAndCount.ts';
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { Constructable } from 'vona';
|
|
2
2
|
|
|
3
|
-
import type { BeanModelMeta } from '../bean.model/bean.model_meta.ts';
|
|
4
3
|
import type { IDtoMutateParams, TypeDtoMutateResult } from '../../types/dto/dtoMutate.ts';
|
|
5
4
|
import type { IModelClassRecord } from '../../types/onion/model.ts';
|
|
5
|
+
import type { BeanModelMeta } from '../bean.model/bean.model_meta.ts';
|
|
6
6
|
|
|
7
7
|
import { _DtoMutate_raw } from './dtoMutate.ts';
|
|
8
8
|
|
|
@@ -2,9 +2,9 @@ import type { ServiceSummerCacheBase, IDecoratorSummerCacheOptions } from 'vona-
|
|
|
2
2
|
|
|
3
3
|
import { BeanBase, deepExtend } from 'vona';
|
|
4
4
|
|
|
5
|
-
import type { BeanModelCache } from './bean.model/bean.model_cache.ts';
|
|
6
5
|
import type { TypeModelCacheType } from '../types/model.ts';
|
|
7
6
|
import type { ITableRecord } from '../types/onion/table.ts';
|
|
7
|
+
import type { BeanModelCache } from './bean.model/bean.model_cache.ts';
|
|
8
8
|
|
|
9
9
|
import { getCacheModelCacheInstances } from './const.ts';
|
|
10
10
|
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { BeanModelMeta } from './bean.model/bean.model_meta.ts';
|
|
2
1
|
import type { IModelClassRecord } from '../types/onion/model.ts';
|
|
3
2
|
import type {
|
|
4
3
|
TypeModelClassLike,
|
|
@@ -6,6 +5,7 @@ import type {
|
|
|
6
5
|
TypeModelsClassLikeGeneral,
|
|
7
6
|
TypeSymbolKeyEntity,
|
|
8
7
|
} from '../types/relations.ts';
|
|
8
|
+
import type { BeanModelMeta } from './bean.model/bean.model_meta.ts';
|
|
9
9
|
import type {
|
|
10
10
|
IModelRelationOptionsManyStatic,
|
|
11
11
|
IModelRelationOptionsOneStatic,
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { BeanModelMeta } from './bean.model/bean.model_meta.ts';
|
|
2
1
|
import type { IModelClassRecord } from '../types/onion/model.ts';
|
|
3
2
|
import type {
|
|
4
3
|
TypeModelClassLike,
|
|
@@ -14,6 +13,7 @@ import type {
|
|
|
14
13
|
IModelRelationOptionsManyDynamic,
|
|
15
14
|
IModelRelationOptionsOneDynamic,
|
|
16
15
|
} from '../types/relationsDefDynamic.ts';
|
|
16
|
+
import type { BeanModelMeta } from './bean.model/bean.model_meta.ts';
|
|
17
17
|
|
|
18
18
|
function hasOne<
|
|
19
19
|
MODEL extends BeanModelMeta | keyof IModelClassRecord,
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { BeanModelMeta } from './bean.model/bean.model_meta.ts';
|
|
2
1
|
import type { IModelClassRecord } from '../types/onion/model.ts';
|
|
3
2
|
import type {
|
|
4
3
|
TypeModelClassLike,
|
|
@@ -15,6 +14,7 @@ import type {
|
|
|
15
14
|
IModelRelationOptionsManyMutate,
|
|
16
15
|
IModelRelationOptionsOneMutate,
|
|
17
16
|
} from '../types/relationsDefMutate.ts';
|
|
17
|
+
import type { BeanModelMeta } from './bean.model/bean.model_meta.ts';
|
|
18
18
|
|
|
19
19
|
function hasOne<
|
|
20
20
|
MODEL extends BeanModelMeta | keyof IModelClassRecord,
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type { BeanModelMeta } from './bean.model/bean.model_meta.ts';
|
|
2
1
|
import type { TypeModelsClassLikeGeneral } from '../types/relations.ts';
|
|
3
2
|
import type {
|
|
4
3
|
IModelRelationOptionsManyDynamic,
|
|
5
4
|
IModelRelationOptionsOneDynamic,
|
|
6
5
|
} from '../types/relationsDefDynamic.ts';
|
|
6
|
+
import type { BeanModelMeta } from './bean.model/bean.model_meta.ts';
|
|
7
7
|
|
|
8
8
|
export interface IModelRelationOptionsManyStatic<
|
|
9
9
|
MODEL extends BeanModelMeta,
|
|
@@ -2,13 +2,13 @@ import { isNil } from '@cabloy/utils';
|
|
|
2
2
|
import { appResource, BeanBase, deepExtend } from 'vona';
|
|
3
3
|
import { Service } from 'vona-module-a-bean';
|
|
4
4
|
|
|
5
|
-
import type { ServiceDatabaseDialectBase } from './databaseDialectBase_.ts';
|
|
6
5
|
import type { ConfigDatabaseClient } from '../types/config.ts';
|
|
7
6
|
import type {
|
|
8
7
|
IDatabaseClientDialectRecord,
|
|
9
8
|
IDatabaseClientRecord,
|
|
10
9
|
IDbInfo,
|
|
11
10
|
} from '../types/database.ts';
|
|
11
|
+
import type { ServiceDatabaseDialectBase } from './databaseDialectBase_.ts';
|
|
12
12
|
|
|
13
13
|
import { ServiceDatabaseClient } from './databaseClient_.ts';
|
|
14
14
|
|
|
@@ -159,11 +159,18 @@ export class ServiceDatabaseDialectBase extends BeanBase {
|
|
|
159
159
|
if (isNil(value)) return undefined;
|
|
160
160
|
if (BOOLEAN_COLUMN_TYPES.includes(type)) return safeBoolean(value);
|
|
161
161
|
if (NUMBER_COLUMN_TYPES.includes(type)) return this._safeNumber(value);
|
|
162
|
-
if (
|
|
162
|
+
if (
|
|
163
|
+
this._columnTypePrefixes(type, TIMESTAMP_COLUMN_TYPE_PREFIXES) &&
|
|
164
|
+
value === 'CURRENT_TIMESTAMP'
|
|
165
|
+
) {
|
|
163
166
|
return undefined; // new Date();
|
|
164
167
|
}
|
|
165
|
-
if (this._columnTypePrefixes(type, FLOAT_COLUMN_TYPE_PREFIXES))
|
|
166
|
-
|
|
168
|
+
if (this._columnTypePrefixes(type, FLOAT_COLUMN_TYPE_PREFIXES)) {
|
|
169
|
+
return this._safeNumber(value);
|
|
170
|
+
}
|
|
171
|
+
if (this._columnTypePrefixes(type, INTEGER_COLUMN_TYPE_PREFIXES)) {
|
|
172
|
+
return this._safeNumber(value);
|
|
173
|
+
}
|
|
167
174
|
// pg: NULL::character varying
|
|
168
175
|
if (value.indexOf('NULL::') === 0) return undefined;
|
|
169
176
|
return value;
|
|
@@ -3,10 +3,10 @@ import type { FunctionAny } from 'vona';
|
|
|
3
3
|
import { BeanBase } from 'vona';
|
|
4
4
|
import { Service } from 'vona-module-a-bean';
|
|
5
5
|
|
|
6
|
-
import type { ServiceDatabaseDialectBase } from './databaseDialectBase_.ts';
|
|
7
6
|
import type { IDatabaseClientDialectRecord, IDbInfo } from '../types/database.ts';
|
|
8
7
|
import type { ITransactionConsistencyCommitOptions } from '../types/transaction.ts';
|
|
9
8
|
import type { ServiceDatabaseClient } from './databaseClient_.ts';
|
|
9
|
+
import type { ServiceDatabaseDialectBase } from './databaseDialectBase_.ts';
|
|
10
10
|
|
|
11
11
|
import { ServiceColumns } from './columns_.ts';
|
|
12
12
|
import { ServiceTransaction } from './transaction_.ts';
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
SITE_ID = commerce
|
|
2
|
+
|
|
3
|
+
APP_PUBLIC_PATH = commerce
|
|
4
|
+
|
|
5
|
+
ROUTER_PAGE_HOME = /:locale?
|
|
6
|
+
|
|
7
|
+
LAYOUT_COMPONENT_DEFAULT = home-layoutweb:layoutWeb
|
|
8
|
+
LAYOUT_SIDEBAR_LEFTOPENPC = false
|
|
9
|
+
|
|
10
|
+
STYLE_DEFAULT_THEME = home-theme:orange
|
|
11
|
+
|
|
12
|
+
SSR_COOKIE = false
|
|
13
|
+
SSR_BODYREADYOBSERVER = false
|
|
14
|
+
SSR_WITH_VONA = true
|
|
15
|
+
SSR_TRANSFERCACHE = true
|
|
16
|
+
SSR_TRANSFERCACHE_EXPIRES = 10m
|
|
17
|
+
|
|
18
|
+
BUILD_MINIFY = false
|
|
19
|
+
BUILD_SOURCEMAP = false
|
|
20
|
+
|
|
21
|
+
BUILD_COPY_RELEASE = ../vona/src/suite/a-commerce/modules/commerce-siteweb/assets/site
|
|
22
|
+
BUILD_REST_COPY_DIST = ../vona/.zova-rest
|
|
23
|
+
|
|
24
|
+
MOCK_ENABLED = false
|