cabloy 5.1.148 → 5.1.150

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 (95) hide show
  1. package/.cabloy-version +1 -1
  2. package/.claude/skills/cabloy-backend-scaffold/references/follow-up-checklist.md +2 -1
  3. package/.claude/skills/cabloy-frontend-scaffold/SKILL.md +1 -0
  4. package/CHANGELOG.md +33 -0
  5. package/CLAUDE.md +1 -0
  6. package/package.json +1 -1
  7. package/repo-docs/.vitepress/config.mjs +4 -0
  8. package/repo-docs/backend/dto-guide.md +7 -6
  9. package/repo-docs/backend/dto-infer-generation.md +25 -5
  10. package/repo-docs/backend/markdown-guide.md +1 -0
  11. package/repo-docs/backend/relations-guide.md +1 -0
  12. package/repo-docs/frontend/a-model-under-the-hood.md +38 -0
  13. package/repo-docs/frontend/a-openapi-under-the-hood.md +13 -2
  14. package/repo-docs/frontend/form-layout-guide.md +39 -8
  15. package/repo-docs/frontend/markdown-guide.md +1 -0
  16. package/repo-docs/frontend/model-resource-best-practices.md +2 -0
  17. package/repo-docs/frontend/model-resource-cookbook.md +7 -1
  18. package/repo-docs/frontend/use-state-data-best-practices.md +44 -0
  19. package/repo-docs/frontend/zova-form-source-reading-map.md +26 -9
  20. package/repo-docs/frontend/zova-form-under-the-hood.md +11 -0
  21. package/repo-docs/fullstack/edition-collaboration-differences.md +1 -0
  22. package/repo-docs/fullstack/one-to-one-companion-resource-guide.md +447 -0
  23. package/repo-e2e/specs/a-commerce.spec.ts +40 -0
  24. package/repo-e2e/specs/cabloy-basic.spec.ts +176 -1
  25. package/vona/packages-cli/cli/package.json +1 -1
  26. package/vona/packages-cli/cli-set-api/cli/templates/tools/crudStart/boilerplate/src/controller/{{resourceName}}.ts_ +2 -2
  27. package/vona/packages-cli/cli-set-api/package.json +1 -1
  28. package/vona/pnpm-lock.yaml +83 -75
  29. package/vona/src/suite/a-commerce/modules/commerce-catalog/src/.metadata/index.ts +108 -108
  30. package/vona/src/suite/a-commerce/modules/commerce-catalog/src/dto/skuSelectResItem.tsx +12 -0
  31. package/vona/src/suite/a-commerce/modules/commerce-catalog/src/service/sku.ts +19 -1
  32. package/vona/src/suite/a-commerce/modules/commerce-catalog/test/skuPresentation.test.ts +53 -4
  33. package/vona/src/suite/a-commerce/modules/commerce-trade/src/.metadata/index.ts +148 -148
  34. package/vona/src/suite/a-commerce/modules/commerce-trade/src/dto/stockAdjust.tsx +37 -3
  35. package/vona/src/suite/a-training/modules/training-student/package.json +1 -0
  36. package/vona/src/suite/a-training/modules/training-student/src/.metadata/index.ts +177 -103
  37. package/vona/src/suite/a-training/modules/training-student/src/bean/meta.index.ts +1 -0
  38. package/vona/src/suite/a-training/modules/training-student/src/bean/meta.version.ts +19 -1
  39. package/vona/src/suite/a-training/modules/training-student/src/config/locale/en-us.ts +3 -0
  40. package/vona/src/suite/a-training/modules/training-student/src/config/locale/zh-cn.ts +3 -0
  41. package/vona/src/suite/a-training/modules/training-student/src/dto/studentCreate.tsx +22 -2
  42. package/vona/src/suite/a-training/modules/training-student/src/dto/studentSummary.tsx +7 -1
  43. package/vona/src/suite/a-training/modules/training-student/src/dto/studentUpdate.tsx +22 -2
  44. package/vona/src/suite/a-training/modules/training-student/src/dto/studentView.tsx +25 -3
  45. package/vona/src/suite/a-training/modules/training-student/src/entity/student.tsx +0 -3
  46. package/vona/src/suite/a-training/modules/training-student/src/entity/studentContent.tsx +36 -0
  47. package/vona/src/suite/a-training/modules/training-student/src/model/student.ts +6 -0
  48. package/vona/src/suite/a-training/modules/training-student/src/model/studentContent.ts +22 -0
  49. package/vona/src/suite/a-training/modules/training-student/src/service/student.ts +43 -14
  50. package/vona/src/suite/a-training/modules/training-student/test/student.test.ts +137 -8
  51. package/zova/packages-zova/zova/package.json +2 -2
  52. package/zova/pnpm-lock.yaml +6 -2
  53. package/zova/src/suite/a-commerce/modules/commerce-trade/cli/openapi.config.ts +1 -0
  54. package/zova/src/suite/a-commerce/modules/commerce-trade/package.json +6 -1
  55. package/zova/src/suite/a-commerce/modules/commerce-trade/src/.metadata/component/tableCellActionAdjustStock.ts +34 -0
  56. package/zova/src/suite/a-commerce/modules/commerce-trade/src/.metadata/index.ts +81 -6
  57. package/zova/src/suite/a-commerce/modules/commerce-trade/src/api/commerceTradeStockBalance.ts +32 -0
  58. package/zova/src/suite/a-commerce/modules/commerce-trade/src/api/openapi/schemas.ts +44 -44
  59. package/zova/src/suite/a-commerce/modules/commerce-trade/src/api/openapi/types.ts +356 -338
  60. package/zova/src/suite/a-commerce/modules/commerce-trade/src/apiSchema/commerceTradeStockBalance.ts +17 -0
  61. package/zova/src/suite/a-commerce/modules/commerce-trade/src/bean/tableCell.actionAdjustStock.tsx +35 -0
  62. package/zova/src/suite/a-commerce/modules/commerce-trade/src/component/tableCellActionAdjustStock/controller.tsx +138 -0
  63. package/zova/src/suite/a-commerce/modules/commerce-trade/src/config/locale/en-us.ts +3 -0
  64. package/zova/src/suite/a-commerce/modules/commerce-trade/src/config/locale/zh-cn.ts +3 -0
  65. package/zova/src/suite/a-commerce/modules/commerce-trade/src/model/stockBalance.ts +36 -0
  66. package/zova/src/suite/a-commerce/modules/commerce-trade/src/page/payment/controller.tsx +4 -4
  67. package/zova/src/suite/a-training/modules/training-student/package.json +3 -1
  68. package/zova/src/suite/a-training/modules/training-student/src/api/openapi/schemas.ts +44 -44
  69. package/zova/src/suite/a-training/modules/training-student/src/api/openapi/types.ts +360 -339
  70. package/zova/src/suite/a-training/modules/training-student/src/bean/tableCell.actionSummary.tsx +19 -8
  71. package/zova/src/suite/cabloy-basic/modules/basic-app/src/bean/behavior.appModal.tsx +2 -0
  72. package/zova/src/suite-vendor/a-cabloy/modules/rest-resource/package.json +1 -1
  73. package/zova/src/suite-vendor/a-cabloy/modules/rest-resource/src/model/resource.ts +2 -1
  74. package/zova/src/suite-vendor/a-cabloy/modules/rest-resource/test/model/resource.types.ts +11 -0
  75. package/zova/src/suite-vendor/a-cabloy/package.json +2 -2
  76. package/zova/src/suite-vendor/a-zova/modules/a-form/package.json +1 -1
  77. package/zova/src/suite-vendor/a-zova/modules/a-form/src/lib/formLayout.ts +69 -12
  78. package/zova/src/suite-vendor/a-zova/modules/a-form/test/lib/formLayout.test.ts +157 -0
  79. package/zova/src/suite-vendor/a-zova/modules/a-model/package.json +1 -1
  80. package/zova/src/suite-vendor/a-zova/modules/a-model/src/bean/bean.model/bean.model.persister.ts +3 -1
  81. package/zova/src/suite-vendor/a-zova/modules/a-model/src/bean/bean.model/bean.model.useQuery.ts +11 -13
  82. package/zova/src/suite-vendor/a-zova/modules/a-model/src/bean/bean.model/bean.model.useState.ts +9 -7
  83. package/zova/src/suite-vendor/a-zova/modules/a-model/src/bean/bean.model/bean.model.useStateGeneral.ts +5 -12
  84. package/zova/src/suite-vendor/a-zova/modules/a-model/src/lib/queryPersister.ts +17 -0
  85. package/zova/src/suite-vendor/a-zova/modules/a-model/src/lib/queryRefetch.ts +34 -0
  86. package/zova/src/suite-vendor/a-zova/modules/a-model/src/types/query.ts +27 -3
  87. package/zova/src/suite-vendor/a-zova/modules/a-model/test/lib/queryPersister.test.ts +115 -0
  88. package/zova/src/suite-vendor/a-zova/modules/a-model/test/lib/queryRefetch.test.ts +84 -0
  89. package/zova/src/suite-vendor/a-zova/modules/a-openapi/package.json +1 -1
  90. package/zova/src/suite-vendor/a-zova/modules/a-openapi/src/lib/schema.ts +27 -5
  91. package/zova/src/suite-vendor/a-zova/modules/a-openapi/src/model/sdk.ts +2 -2
  92. package/zova/src/suite-vendor/a-zova/modules/a-openapi/src/types/rest.ts +4 -0
  93. package/zova/src/suite-vendor/a-zova/modules/a-openapi/src/types/schema.ts +2 -5
  94. package/zova/src/suite-vendor/a-zova/modules/a-openapi/test/lib/schema.test.ts +179 -0
  95. package/zova/src/suite-vendor/a-zova/package.json +4 -4
@@ -0,0 +1,17 @@
1
+ import type { IApiSchemaOptions } from 'zova-module-a-api';
2
+
3
+ import { BeanBase } from 'zova';
4
+ import { ApiSchema } from 'zova-module-a-api';
5
+
6
+ import { ApiApiCommerceTradeStockBalanceadjustStockPath } from '../api/commerceTradeStockBalance.js';
7
+
8
+ @ApiSchema()
9
+ export class ApiSchemaCommerceTradeStockBalance extends BeanBase {
10
+ adjustStock(options?: IApiSchemaOptions) {
11
+ return this.$sdk.createApiSchemas(
12
+ ApiApiCommerceTradeStockBalanceadjustStockPath,
13
+ 'post',
14
+ options,
15
+ );
16
+ }
17
+ }
@@ -0,0 +1,35 @@
1
+ import type { IResourceTableActionRowOptionsBase } from 'zova-module-a-openapi';
2
+ import type {
3
+ IJsxRenderContextTableCell,
4
+ ITableCellRender,
5
+ NextTableCellRender,
6
+ } from 'zova-module-a-table';
7
+
8
+ import { BeanBase } from 'zova';
9
+ import { TableCell } from 'zova-module-a-table';
10
+
11
+ declare module 'zova-module-a-openapi' {
12
+ export interface IResourceTableActionRowRecord {
13
+ 'commerce-trade:actionAdjustStock'?: ITableCellOptionsActionAdjustStock;
14
+ }
15
+ }
16
+
17
+ export interface ITableCellOptionsActionAdjustStock extends IResourceTableActionRowOptionsBase {}
18
+
19
+ @TableCell<ITableCellOptionsActionAdjustStock>({
20
+ class: 'btn btn-outline btn-secondary join-item',
21
+ })
22
+ export class TableCellActionAdjustStock extends BeanBase implements ITableCellRender {
23
+ render(
24
+ options: ITableCellOptionsActionAdjustStock,
25
+ renderContext: IJsxRenderContextTableCell,
26
+ _next: NextTableCellRender,
27
+ ) {
28
+ return renderContext.$jsx.render(
29
+ 'commerce-trade:tableCellActionAdjustStock',
30
+ options,
31
+ renderContext.$celScope,
32
+ renderContext,
33
+ );
34
+ }
35
+ }
@@ -0,0 +1,138 @@
1
+ import type { SchemaObject } from 'openapi3-ts/oas31';
2
+ import type { TableIdentity } from 'table-identity';
3
+ import type { TypeFormOnSubmitData } from 'zova-module-a-form';
4
+ import type { IJsxRenderContextTableCell } from 'zova-module-a-table';
5
+
6
+ import { BeanControllerBase, Use } from 'zova';
7
+ import { Controller } from 'zova-module-a-bean';
8
+ import { ZForm } from 'zova-module-a-form';
9
+ import { $QueryEnsureLoaded } from 'zova-module-a-model';
10
+
11
+ import type { ApiApiCommerceTradeStockBalanceadjustStockRequestBody } from '../../api/commerceTradeStockBalance.js';
12
+ import type { ITableCellOptionsActionAdjustStock } from '../../bean/tableCell.actionAdjustStock.js';
13
+ import type { ModelStockBalance } from '../../model/stockBalance.js';
14
+
15
+ export interface ControllerTableCellActionAdjustStockProps extends ITableCellOptionsActionAdjustStock {}
16
+
17
+ type StockAdjustmentDraft = Omit<
18
+ ApiApiCommerceTradeStockBalanceadjustStockRequestBody,
19
+ 'correlationId' | 'skuId'
20
+ >;
21
+
22
+ const emptyDraft = (): StockAdjustmentDraft => ({ delta: 0, reason: '' });
23
+
24
+ @Controller()
25
+ export class ControllerTableCellActionAdjustStock extends BeanControllerBase {
26
+ static $propsDefault = {};
27
+
28
+ @Use({ injectionScope: 'host' })
29
+ $$renderContext: IJsxRenderContextTableCell;
30
+
31
+ @Use({ beanFullName: 'commerce-trade.model.stockBalance' })
32
+ $$modelStockBalance: ModelStockBalance;
33
+
34
+ draft: StockAdjustmentDraft = emptyDraft();
35
+ schema?: SchemaObject;
36
+
37
+ get apiSchemasStockAdjust() {
38
+ return this.scope.apiSchema.commerceTradeStockBalance.adjustStock();
39
+ }
40
+
41
+ private get _sku() {
42
+ return this.$$renderContext.cellContext.row.original as {
43
+ available: number;
44
+ code: string;
45
+ id: TableIdentity;
46
+ };
47
+ }
48
+
49
+ private get _mutation() {
50
+ return this.$$modelStockBalance.adjustStock(this._sku.id);
51
+ }
52
+
53
+ private async _ensureSchema() {
54
+ if (this.schema) return;
55
+ await $QueryEnsureLoaded(() => this.apiSchemasStockAdjust.sdk);
56
+ this.schema = this.$computed(() => this.apiSchemasStockAdjust.requestBody);
57
+ }
58
+
59
+ private async _submit(data: TypeFormOnSubmitData<StockAdjustmentDraft>, close: () => void) {
60
+ const mutation = this._mutation;
61
+ if (mutation.isPending) return;
62
+ const delta = Number(data.value.delta);
63
+ const reason = data.value.reason.trim();
64
+ if (!Number.isInteger(delta) || delta === 0 || !reason) return;
65
+ await mutation.mutateAsync({
66
+ skuId: this._sku.id,
67
+ delta,
68
+ reason,
69
+ correlationId: crypto.randomUUID(),
70
+ });
71
+ close();
72
+ }
73
+
74
+ private async _openDialog() {
75
+ await this._ensureSchema();
76
+ this.draft = emptyDraft();
77
+ const dialog = this.$appModal.dialog(
78
+ {
79
+ title: this.scope.locale.AdjustStock(),
80
+ slotDefault: () => {
81
+ return (
82
+ <div class="space-y-4">
83
+ <dl class="grid grid-cols-2 gap-x-4 gap-y-2 text-sm">
84
+ <dt class="text-base-content/70">{this.scope.locale.SkuId()}</dt>
85
+ <dd>{this._sku.code}</dd>
86
+ <dt class="text-base-content/70">{this.scope.locale.Available()}</dt>
87
+ <dd>{this._sku.available}</dd>
88
+ </dl>
89
+ <ZForm
90
+ data={this.draft}
91
+ schema={this.schema}
92
+ onSubmitData={data => this._submit(data, () => dialog.close())}
93
+ onShowError={async ({ error }) => {
94
+ await this.$performCommand('basic-commands:alert', {
95
+ type: 'error',
96
+ text: error.message,
97
+ });
98
+ }}
99
+ slotFooter={$$form => (
100
+ <div class="flex justify-end gap-2">
101
+ {this._mutation.isPending && (
102
+ <span class="loading loading-spinner text-primary"></span>
103
+ )}
104
+ <button class="btn btn-ghost" type="button" onClick={() => dialog.close()}>
105
+ {this.scope.locale.Cancel()}
106
+ </button>
107
+ <button
108
+ class="btn btn-secondary"
109
+ disabled={$$form.formState.isSubmitting || this._mutation.isPending}
110
+ type="submit"
111
+ >
112
+ {this.scope.locale.AdjustStock()}
113
+ </button>
114
+ </div>
115
+ )}
116
+ ></ZForm>
117
+ </div>
118
+ );
119
+ },
120
+ },
121
+ {
122
+ closeOnBackdrop: false,
123
+ closeOnEscape: false,
124
+ maxWidth: 480,
125
+ showCloseButton: true,
126
+ },
127
+ );
128
+ }
129
+
130
+ protected render() {
131
+ const props = this.$props as ControllerTableCellActionAdjustStockProps;
132
+ return (
133
+ <button class={props.class} type="button" onClick={() => this._openDialog()}>
134
+ {this.scope.locale.AdjustStock()}
135
+ </button>
136
+ );
137
+ }
138
+ }
@@ -97,4 +97,7 @@ export default {
97
97
  CompleteMockRefund: 'Complete mock refund',
98
98
  MockRefundCompletionFailed: 'Unable to complete the mock refund. Try again.',
99
99
  MockRefundCompleted: 'The mock refund was completed. The order is being settled.',
100
+ AdjustStock: 'Adjust stock',
101
+ SkuId: 'SKU',
102
+ Available: 'Available',
100
103
  };
@@ -88,4 +88,7 @@ export default {
88
88
  CompleteMockRefund: '完成模拟退款',
89
89
  MockRefundCompletionFailed: '无法完成模拟退款,请重试。',
90
90
  MockRefundCompleted: '模拟退款已完成,订单正在结算。',
91
+ AdjustStock: '调整库存',
92
+ SkuId: 'SKU',
93
+ Available: '可用库存',
91
94
  };
@@ -0,0 +1,36 @@
1
+ import type { TableIdentity } from 'table-identity';
2
+ import type { IDecoratorModelOptions } from 'zova-module-a-model';
3
+ import type { ModelResource } from 'zova-module-rest-resource';
4
+
5
+ import { Use, usePrepareArg } from 'zova';
6
+ import { BeanModelBase, Model } from 'zova-module-a-model';
7
+
8
+ import type {
9
+ ApiApiCommerceTradeStockBalanceadjustStockRequestBody,
10
+ ApiApiCommerceTradeStockBalanceadjustStockResponseBody,
11
+ } from '../api/commerceTradeStockBalance.js';
12
+
13
+ export interface IModelOptionsStockBalance extends IDecoratorModelOptions {}
14
+
15
+ const SkuResource = 'commerce-catalog:sku';
16
+
17
+ @Model<IModelOptionsStockBalance>()
18
+ export class ModelStockBalance extends BeanModelBase {
19
+ @Use({ beanFullName: 'rest-resource.model.resource' })
20
+ protected get $$modelResource(): ModelResource {
21
+ return usePrepareArg(SkuResource, true);
22
+ }
23
+
24
+ adjustStock(id: TableIdentity) {
25
+ return this.$$modelResource.mutationItem<
26
+ ApiApiCommerceTradeStockBalanceadjustStockResponseBody,
27
+ ApiApiCommerceTradeStockBalanceadjustStockRequestBody
28
+ >({
29
+ id,
30
+ action: 'adjustStock',
31
+ mutationFn: async payload => {
32
+ return await this.scope.api.commerceTradeStockBalance.adjustStock(payload);
33
+ },
34
+ });
35
+ }
36
+ }
@@ -159,9 +159,8 @@ export class ControllerPagePayment extends BeanControllerPageBase {
159
159
  for (const [attempt, delay] of SettlementPollDelaysMilliseconds.entries()) {
160
160
  if (delay > 0) await new Promise(resolve => setTimeout(resolve, delay));
161
161
  if (!this._isCurrentSettlementPoll(pollVersion)) return;
162
- let session;
163
162
  try {
164
- session = await this.queryPaymentSession?.refetch();
163
+ await this.queryPaymentSession?.refetch({ bypassPersister: true });
165
164
  } catch (error) {
166
165
  if (isNotFoundError(error)) {
167
166
  this.paymentSessionUnavailable = true;
@@ -171,9 +170,10 @@ export class ControllerPagePayment extends BeanControllerPageBase {
171
170
  throw error;
172
171
  }
173
172
  if (!this._isCurrentSettlementPoll(pollVersion)) return;
174
- const sessionState = session?.data?.state;
173
+ const session = this.queryPaymentSession?.data;
174
+ const sessionState = session?.state;
175
175
  this.pendingSessionState = sessionState;
176
- this.pendingNextAction = session?.data?.nextAction;
176
+ this.pendingNextAction = session?.nextAction;
177
177
  const isSessionTerminal = ['succeeded', 'failed', 'cancelled', 'expired'].includes(
178
178
  sessionState ?? '',
179
179
  );
@@ -33,7 +33,9 @@
33
33
  "prepack": "clean-package",
34
34
  "postpack": "clean-package restore"
35
35
  },
36
- "dependencies": {},
36
+ "dependencies": {
37
+ "zova-module-basic-markdown": "^5.0.0"
38
+ },
37
39
  "devDependencies": {
38
40
  "clean-package": "^2.2.0",
39
41
  "rimraf": "^6.1.3"
@@ -6,6 +6,42 @@ export type ApiSchemaTestVonaDtoUserCreate = components['schemas']['test-vona.dt
6
6
  export type ApiSchemaTestVonaDtoUserCreatePartial = Partial<ApiSchemaTestVonaDtoUserCreate>;
7
7
  export type ApiSchemaTestVonaEntityProduct = components['schemas']['test-vona.entity.product'];
8
8
  export type ApiSchemaTestVonaEntityProductPartial = Partial<ApiSchemaTestVonaEntityProduct>;
9
+ export type ApiSchemaAImageDtoImageUploadPolicyResponse =
10
+ components['schemas']['a-image.dto.imageUploadPolicyResponse'];
11
+ export type ApiSchemaAImageDtoImageUploadPolicyResponsePartial =
12
+ Partial<ApiSchemaAImageDtoImageUploadPolicyResponse>;
13
+ export type ApiSchemaAImageDtoImageUploadPolicyRequest =
14
+ components['schemas']['a-image.dto.imageUploadPolicyRequest'];
15
+ export type ApiSchemaAImageDtoImageUploadPolicyRequestPartial =
16
+ Partial<ApiSchemaAImageDtoImageUploadPolicyRequest>;
17
+ export type ApiSchemaAImageDtoImageUploadResponse =
18
+ components['schemas']['a-image.dto.imageUploadResponse'];
19
+ export type ApiSchemaAImageDtoImageUploadResponsePartial =
20
+ Partial<ApiSchemaAImageDtoImageUploadResponse>;
21
+ export type ApiSchemaAImageDtoImageDirectUploadResponse =
22
+ components['schemas']['a-image.dto.imageDirectUploadResponse'];
23
+ export type ApiSchemaAImageDtoImageDirectUploadResponsePartial =
24
+ Partial<ApiSchemaAImageDtoImageDirectUploadResponse>;
25
+ export type ApiSchemaAImageDtoImageDirectUploadRequest =
26
+ components['schemas']['a-image.dto.imageDirectUploadRequest'];
27
+ export type ApiSchemaAImageDtoImageDirectUploadRequestPartial =
28
+ Partial<ApiSchemaAImageDtoImageDirectUploadRequest>;
29
+ export type ApiSchemaAImageDtoImageDirectUploadFinalizeResponse =
30
+ components['schemas']['a-image.dto.imageDirectUploadFinalizeResponse'];
31
+ export type ApiSchemaAImageDtoImageDirectUploadFinalizeResponsePartial =
32
+ Partial<ApiSchemaAImageDtoImageDirectUploadFinalizeResponse>;
33
+ export type ApiSchemaAImageDtoImageDirectUploadFinalizeRequest =
34
+ components['schemas']['a-image.dto.imageDirectUploadFinalizeRequest'];
35
+ export type ApiSchemaAImageDtoImageDirectUploadFinalizeRequestPartial =
36
+ Partial<ApiSchemaAImageDtoImageDirectUploadFinalizeRequest>;
37
+ export type ApiSchemaAImageDtoImageUploadUrlRequest =
38
+ components['schemas']['a-image.dto.imageUploadUrlRequest'];
39
+ export type ApiSchemaAImageDtoImageUploadUrlRequestPartial =
40
+ Partial<ApiSchemaAImageDtoImageUploadUrlRequest>;
41
+ export type ApiSchemaAImageDtoImageTransformOptions_2d063d28bc7243bed02ebd8bddf1212a93c6305b =
42
+ components['schemas']['a-image.dto.imageTransformOptions_2d063d28bc7243bed02ebd8bddf1212a93c6305b'];
43
+ export type ApiSchemaAImageDtoImageTransformOptions_2d063d28bc7243bed02ebd8bddf1212a93c6305bPartial =
44
+ Partial<ApiSchemaAImageDtoImageTransformOptions_2d063d28bc7243bed02ebd8bddf1212a93c6305b>;
9
45
  export type ApiSchemaACaptchaDtoCaptchaData = components['schemas']['a-captcha.dto.captchaData'];
10
46
  export type ApiSchemaACaptchaDtoCaptchaDataPartial = Partial<ApiSchemaACaptchaDtoCaptchaData>;
11
47
  export type ApiSchemaAPayDtoPaymentSessionView =
@@ -43,42 +79,6 @@ export type ApiSchemaCommerceMemberDtoAddressView_2d063d28bc7243bed02ebd8bddf121
43
79
  components['schemas']['commerce-member.dto.addressView_2d063d28bc7243bed02ebd8bddf1212a93c6305b_425dbecccd52e19e24888f99e1b1670233afa875'];
44
80
  export type ApiSchemaCommerceMemberDtoAddressView_2d063d28bc7243bed02ebd8bddf1212a93c6305b_425dbecccd52e19e24888f99e1b1670233afa875Partial =
45
81
  Partial<ApiSchemaCommerceMemberDtoAddressView_2d063d28bc7243bed02ebd8bddf1212a93c6305b_425dbecccd52e19e24888f99e1b1670233afa875>;
46
- export type ApiSchemaAImageDtoImageUploadPolicyResponse =
47
- components['schemas']['a-image.dto.imageUploadPolicyResponse'];
48
- export type ApiSchemaAImageDtoImageUploadPolicyResponsePartial =
49
- Partial<ApiSchemaAImageDtoImageUploadPolicyResponse>;
50
- export type ApiSchemaAImageDtoImageUploadPolicyRequest =
51
- components['schemas']['a-image.dto.imageUploadPolicyRequest'];
52
- export type ApiSchemaAImageDtoImageUploadPolicyRequestPartial =
53
- Partial<ApiSchemaAImageDtoImageUploadPolicyRequest>;
54
- export type ApiSchemaAImageDtoImageUploadResponse =
55
- components['schemas']['a-image.dto.imageUploadResponse'];
56
- export type ApiSchemaAImageDtoImageUploadResponsePartial =
57
- Partial<ApiSchemaAImageDtoImageUploadResponse>;
58
- export type ApiSchemaAImageDtoImageDirectUploadResponse =
59
- components['schemas']['a-image.dto.imageDirectUploadResponse'];
60
- export type ApiSchemaAImageDtoImageDirectUploadResponsePartial =
61
- Partial<ApiSchemaAImageDtoImageDirectUploadResponse>;
62
- export type ApiSchemaAImageDtoImageDirectUploadRequest =
63
- components['schemas']['a-image.dto.imageDirectUploadRequest'];
64
- export type ApiSchemaAImageDtoImageDirectUploadRequestPartial =
65
- Partial<ApiSchemaAImageDtoImageDirectUploadRequest>;
66
- export type ApiSchemaAImageDtoImageDirectUploadFinalizeResponse =
67
- components['schemas']['a-image.dto.imageDirectUploadFinalizeResponse'];
68
- export type ApiSchemaAImageDtoImageDirectUploadFinalizeResponsePartial =
69
- Partial<ApiSchemaAImageDtoImageDirectUploadFinalizeResponse>;
70
- export type ApiSchemaAImageDtoImageDirectUploadFinalizeRequest =
71
- components['schemas']['a-image.dto.imageDirectUploadFinalizeRequest'];
72
- export type ApiSchemaAImageDtoImageDirectUploadFinalizeRequestPartial =
73
- Partial<ApiSchemaAImageDtoImageDirectUploadFinalizeRequest>;
74
- export type ApiSchemaAImageDtoImageUploadUrlRequest =
75
- components['schemas']['a-image.dto.imageUploadUrlRequest'];
76
- export type ApiSchemaAImageDtoImageUploadUrlRequestPartial =
77
- Partial<ApiSchemaAImageDtoImageUploadUrlRequest>;
78
- export type ApiSchemaAImageDtoImageTransformOptions_2d063d28bc7243bed02ebd8bddf1212a93c6305b =
79
- components['schemas']['a-image.dto.imageTransformOptions_2d063d28bc7243bed02ebd8bddf1212a93c6305b'];
80
- export type ApiSchemaAImageDtoImageTransformOptions_2d063d28bc7243bed02ebd8bddf1212a93c6305bPartial =
81
- Partial<ApiSchemaAImageDtoImageTransformOptions_2d063d28bc7243bed02ebd8bddf1212a93c6305b>;
82
82
  export type ApiSchemaHomeUserDtoAccountCurrent =
83
83
  components['schemas']['home-user.dto.accountCurrent'];
84
84
  export type ApiSchemaHomeUserDtoAccountCurrentPartial = Partial<ApiSchemaHomeUserDtoAccountCurrent>;
@@ -302,10 +302,10 @@ export type ApiSchemaCommerceTradeEntityStockBalance =
302
302
  components['schemas']['commerce-trade.entity.stockBalance'];
303
303
  export type ApiSchemaCommerceTradeEntityStockBalancePartial =
304
304
  Partial<ApiSchemaCommerceTradeEntityStockBalance>;
305
- export type ApiSchemaCommerceTradeDtoStockAdjust_0aab216abd3467dd07f61c69172266c2441af477 =
306
- components['schemas']['commerce-trade.dto.stockAdjust_0aab216abd3467dd07f61c69172266c2441af477'];
307
- export type ApiSchemaCommerceTradeDtoStockAdjust_0aab216abd3467dd07f61c69172266c2441af477Partial =
308
- Partial<ApiSchemaCommerceTradeDtoStockAdjust_0aab216abd3467dd07f61c69172266c2441af477>;
305
+ export type ApiSchemaCommerceTradeDtoStockAdjust_6a7c2f0bb21a25da3048650f263577ae4467750e =
306
+ components['schemas']['commerce-trade.dto.stockAdjust_6a7c2f0bb21a25da3048650f263577ae4467750e'];
307
+ export type ApiSchemaCommerceTradeDtoStockAdjust_6a7c2f0bb21a25da3048650f263577ae4467750ePartial =
308
+ Partial<ApiSchemaCommerceTradeDtoStockAdjust_6a7c2f0bb21a25da3048650f263577ae4467750e>;
309
309
  export type ApiSchemaCommerceTradeDtoStockBalanceSelectRes =
310
310
  components['schemas']['commerce-trade.dto.stockBalanceSelectRes'];
311
311
  export type ApiSchemaCommerceTradeDtoStockBalanceSelectResPartial =
@@ -463,10 +463,10 @@ export type ApiSchemaAImageDtoImageView_a83c3e638bca4b30ec8675860cdc52d66f6a16d1
463
463
  components['schemas']['a-image.dto.imageView_a83c3e638bca4b30ec8675860cdc52d66f6a16d1_2d063d28bc7243bed02ebd8bddf1212a93c6305b_efb37794d7c03c65122279f90d79919f009c34e5_1816ff740d81c738ec055c7038bbd93beb9405a7_537cd6552a384183a9457fb6a920bbae337277f6'];
464
464
  export type ApiSchemaAImageDtoImageView_a83c3e638bca4b30ec8675860cdc52d66f6a16d1_2d063d28bc7243bed02ebd8bddf1212a93c6305b_efb37794d7c03c65122279f90d79919f009c34e5_1816ff740d81c738ec055c7038bbd93beb9405a7_537cd6552a384183a9457fb6a920bbae337277f6Partial =
465
465
  Partial<ApiSchemaAImageDtoImageView_a83c3e638bca4b30ec8675860cdc52d66f6a16d1_2d063d28bc7243bed02ebd8bddf1212a93c6305b_efb37794d7c03c65122279f90d79919f009c34e5_1816ff740d81c738ec055c7038bbd93beb9405a7_537cd6552a384183a9457fb6a920bbae337277f6>;
466
- export type ApiSchemaTrainingStudentDtoStudentView_2d063d28bc7243bed02ebd8bddf1212a93c6305b_4e7e5941f704425ce1be04de1885c36427ccc436 =
467
- components['schemas']['training-student.dto.studentView_2d063d28bc7243bed02ebd8bddf1212a93c6305b_4e7e5941f704425ce1be04de1885c36427ccc436'];
468
- export type ApiSchemaTrainingStudentDtoStudentView_2d063d28bc7243bed02ebd8bddf1212a93c6305b_4e7e5941f704425ce1be04de1885c36427ccc436Partial =
469
- Partial<ApiSchemaTrainingStudentDtoStudentView_2d063d28bc7243bed02ebd8bddf1212a93c6305b_4e7e5941f704425ce1be04de1885c36427ccc436>;
466
+ export type ApiSchemaTrainingStudentDtoStudentView_2d063d28bc7243bed02ebd8bddf1212a93c6305b_93b863fbe913f9389386c3f524075f08b39f48ac =
467
+ components['schemas']['training-student.dto.studentView_2d063d28bc7243bed02ebd8bddf1212a93c6305b_93b863fbe913f9389386c3f524075f08b39f48ac'];
468
+ export type ApiSchemaTrainingStudentDtoStudentView_2d063d28bc7243bed02ebd8bddf1212a93c6305b_93b863fbe913f9389386c3f524075f08b39f48acPartial =
469
+ Partial<ApiSchemaTrainingStudentDtoStudentView_2d063d28bc7243bed02ebd8bddf1212a93c6305b_93b863fbe913f9389386c3f524075f08b39f48ac>;
470
470
  export type ApiSchemaTrainingStudentDtoStudentUpdate =
471
471
  components['schemas']['training-student.dto.studentUpdate'];
472
472
  export type ApiSchemaTrainingStudentDtoStudentUpdatePartial =