build
This commit is contained in:
parent
34e1f02519
commit
19cd6c541d
|
|
@ -138,7 +138,7 @@ export default function Render(props) {
|
|||
// });
|
||||
// }
|
||||
// }
|
||||
footer: () => _jsxs(Space, { children: [_jsx(ExtraFileCommit, { oakPath: oakFullpath, efPaths: [
|
||||
footer: _jsxs(Space, { children: [_jsx(ExtraFileCommit, { oakPath: oakFullpath, efPaths: [
|
||||
'extraFile$entity$1',
|
||||
], afterCommit: () => {
|
||||
modalInstance.destroy();
|
||||
|
|
|
|||
|
|
@ -0,0 +1,15 @@
|
|||
import { String, Datetime, Boolean } from 'oak-domain/lib/types/DataType';
|
||||
import { EntityShape } from 'oak-domain/lib/types/Entity';
|
||||
type RedirectTo = {
|
||||
pathname: string;
|
||||
props?: Record<string, any>;
|
||||
state?: Record<string, any>;
|
||||
};
|
||||
export interface Schema extends EntityShape {
|
||||
entity: String<32>;
|
||||
entityId: String<64>;
|
||||
expiresAt: Datetime;
|
||||
expired: Boolean;
|
||||
redirectTo: RedirectTo;
|
||||
}
|
||||
export {};
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
const entityDesc = {
|
||||
locales: {
|
||||
zh_CN: {
|
||||
name: '二维码链接',
|
||||
attr: {
|
||||
expired: '已过期',
|
||||
expiresAt: '过期时间',
|
||||
redirectTo: '重定向页面',
|
||||
entity: '关联对象',
|
||||
entityId: '关联对象Id',
|
||||
},
|
||||
action: {
|
||||
cancel: '作废',
|
||||
qrcode: '二维码',
|
||||
},
|
||||
},
|
||||
},
|
||||
};
|
||||
export {};
|
||||
|
|
@ -5,6 +5,7 @@ export declare const ActionDefDict: {
|
|||
account: {
|
||||
ableState: import("oak-domain").ActionDef<import("oak-domain").AbleAction, import("oak-domain").AbleState>;
|
||||
};
|
||||
bridge: {};
|
||||
captcha: {
|
||||
iState: import("oak-domain").ActionDef<string, string>;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
import { ActionDefDict as Modi } from "./Modi/Action";
|
||||
import { ActionDefDict as Account } from "./Account/Action";
|
||||
import { ActionDefDict as Bridge } from "./Bridge/Action";
|
||||
import { ActionDefDict as Captcha } from "./Captcha/Action";
|
||||
import { ActionDefDict as Email } from "./Email/Action";
|
||||
import { ActionDefDict as Message } from "./Message/Action";
|
||||
|
|
@ -17,6 +18,7 @@ import { ActionDefDict as WechatPublicTag } from "./WechatPublicTag/Action";
|
|||
export const ActionDefDict = {
|
||||
modi: Modi,
|
||||
account: Account,
|
||||
bridge: Bridge,
|
||||
captcha: Captcha,
|
||||
email: Email,
|
||||
message: Message,
|
||||
|
|
|
|||
|
|
@ -0,0 +1,6 @@
|
|||
import { GenericAction } from "oak-domain/lib/actions/action";
|
||||
export type IAction = 'cancel' | 'qrcode' | string;
|
||||
export type ParticularAction = IAction;
|
||||
export declare const actions: string[];
|
||||
export type Action = GenericAction | ParticularAction | string;
|
||||
export declare const ActionDefDict: {};
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
export const actions = ["count", "stat", "download", "select", "aggregate", "create", "remove", "update", "cancel", "qrcode"];
|
||||
export const ActionDefDict = {};
|
||||
|
|
@ -0,0 +1,117 @@
|
|||
import { JsonProjection } from "oak-domain/lib/types/DataType";
|
||||
import { Q_DateValue, Q_BooleanValue, Q_StringValue, NodeId, MakeFilter, ExprOp, ExpressionKey, JsonFilter } from "oak-domain/lib/types/Demand";
|
||||
import { OneOf } from "oak-domain/lib/types/Polyfill";
|
||||
import { FormCreateData, FormUpdateData, DeduceAggregation, Operation as OakOperation, Selection as OakSelection, MakeAction as OakMakeAction } from "oak-domain/lib/types/Entity";
|
||||
import { Action, ParticularAction } from "./Action";
|
||||
import { String, Datetime, Boolean } from "oak-domain/lib/types/DataType";
|
||||
import { EntityShape } from "oak-domain/lib/types/Entity";
|
||||
type RedirectTo = {
|
||||
pathname: string;
|
||||
props?: Record<string, any>;
|
||||
state?: Record<string, any>;
|
||||
};
|
||||
export type OpSchema = EntityShape & {
|
||||
entity: String<32>;
|
||||
entityId: String<64>;
|
||||
expiresAt: Datetime;
|
||||
expired: Boolean;
|
||||
redirectTo: RedirectTo;
|
||||
};
|
||||
export type OpAttr = keyof OpSchema;
|
||||
export type Schema = EntityShape & {
|
||||
entity: String<32>;
|
||||
entityId: String<64>;
|
||||
expiresAt: Datetime;
|
||||
expired: Boolean;
|
||||
redirectTo: RedirectTo;
|
||||
} & {
|
||||
[A in ExpressionKey]?: any;
|
||||
};
|
||||
type AttrFilter = {
|
||||
id: Q_StringValue;
|
||||
$$createAt$$: Q_DateValue;
|
||||
$$seq$$: Q_StringValue;
|
||||
$$updateAt$$: Q_DateValue;
|
||||
entity: Q_StringValue;
|
||||
entityId: Q_StringValue;
|
||||
expiresAt: Q_DateValue;
|
||||
expired: Q_BooleanValue;
|
||||
redirectTo: JsonFilter<RedirectTo>;
|
||||
};
|
||||
export type Filter = MakeFilter<AttrFilter & ExprOp<OpAttr | string>>;
|
||||
export type Projection = {
|
||||
"#id"?: NodeId;
|
||||
[k: string]: any;
|
||||
id?: number;
|
||||
$$createAt$$?: number;
|
||||
$$updateAt$$?: number;
|
||||
$$seq$$?: number;
|
||||
entity?: number;
|
||||
entityId?: number;
|
||||
expiresAt?: number;
|
||||
expired?: number;
|
||||
redirectTo?: number | JsonProjection<RedirectTo>;
|
||||
} & Partial<ExprOp<OpAttr | string>>;
|
||||
type BridgeIdProjection = OneOf<{
|
||||
id: number;
|
||||
}>;
|
||||
export type SortAttr = {
|
||||
id: number;
|
||||
} | {
|
||||
$$createAt$$: number;
|
||||
} | {
|
||||
$$seq$$: number;
|
||||
} | {
|
||||
$$updateAt$$: number;
|
||||
} | {
|
||||
entity: number;
|
||||
} | {
|
||||
entityId: number;
|
||||
} | {
|
||||
expiresAt: number;
|
||||
} | {
|
||||
expired: number;
|
||||
} | {
|
||||
redirectTo: number;
|
||||
} | {
|
||||
[k: string]: any;
|
||||
} | OneOf<ExprOp<OpAttr | string>>;
|
||||
export type SortNode = {
|
||||
$attr: SortAttr;
|
||||
$direction?: "asc" | "desc";
|
||||
};
|
||||
export type Sorter = SortNode[];
|
||||
export type SelectOperation<P extends Object = Projection> = OakSelection<"select", P, Filter, Sorter>;
|
||||
export type Selection<P extends Object = Projection> = SelectOperation<P>;
|
||||
export type Aggregation = DeduceAggregation<Projection, Filter, Sorter>;
|
||||
export type CreateOperationData = FormCreateData<Omit<OpSchema, "entity" | "entityId">> & ({
|
||||
entity?: string;
|
||||
entityId?: string;
|
||||
[K: string]: any;
|
||||
});
|
||||
export type CreateSingleOperation = OakOperation<"create", CreateOperationData>;
|
||||
export type CreateMultipleOperation = OakOperation<"create", Array<CreateOperationData>>;
|
||||
export type CreateOperation = CreateSingleOperation | CreateMultipleOperation;
|
||||
export type UpdateOperationData = FormUpdateData<OpSchema> & {
|
||||
[k: string]: any;
|
||||
};
|
||||
export type UpdateOperation = OakOperation<"update" | ParticularAction | string, UpdateOperationData, Filter, Sorter>;
|
||||
export type RemoveOperationData = {};
|
||||
export type RemoveOperation = OakOperation<"remove", RemoveOperationData, Filter, Sorter>;
|
||||
export type Operation = CreateOperation | UpdateOperation | RemoveOperation;
|
||||
export type BridgeIdSubQuery = Selection<BridgeIdProjection>;
|
||||
export type EntityDef = {
|
||||
Schema: Schema;
|
||||
OpSchema: OpSchema;
|
||||
Action: OakMakeAction<Action> | string;
|
||||
Selection: Selection;
|
||||
Aggregation: Aggregation;
|
||||
Operation: Operation;
|
||||
Create: CreateOperation;
|
||||
Update: UpdateOperation;
|
||||
Remove: RemoveOperation;
|
||||
CreateSingle: CreateSingleOperation;
|
||||
CreateMulti: CreateMultipleOperation;
|
||||
ParticularAction: ParticularAction;
|
||||
};
|
||||
export {};
|
||||
|
|
@ -0,0 +1 @@
|
|||
export {};
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
import { StorageDesc } from "oak-domain/lib/types/Storage";
|
||||
import { OpSchema } from "./Schema";
|
||||
export declare const desc: StorageDesc<OpSchema>;
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
import { actions } from "./Action";
|
||||
export const desc = {
|
||||
attributes: {
|
||||
entity: {
|
||||
notNull: true,
|
||||
type: "varchar",
|
||||
params: {
|
||||
length: 32
|
||||
}
|
||||
},
|
||||
entityId: {
|
||||
notNull: true,
|
||||
type: "varchar",
|
||||
params: {
|
||||
length: 64
|
||||
}
|
||||
},
|
||||
expiresAt: {
|
||||
notNull: true,
|
||||
type: "datetime"
|
||||
},
|
||||
expired: {
|
||||
notNull: true,
|
||||
type: "boolean"
|
||||
},
|
||||
redirectTo: {
|
||||
notNull: true,
|
||||
type: "object"
|
||||
}
|
||||
},
|
||||
actionType: "crud",
|
||||
actions
|
||||
};
|
||||
|
|
@ -0,0 +1 @@
|
|||
{ "name": "二维码链接", "attr": { "expired": "已过期", "expiresAt": "过期时间", "redirectTo": "重定向页面", "entity": "关联对象", "entityId": "关联对象Id" }, "action": { "cancel": "作废", "qrcode": "二维码" } }
|
||||
|
|
@ -15,6 +15,7 @@ import { EntityDef as Application } from "./Application/Schema";
|
|||
import { EntityDef as Area } from "./Area/Schema";
|
||||
import { EntityDef as Article } from "./Article/Schema";
|
||||
import { EntityDef as ArticleMenu } from "./ArticleMenu/Schema";
|
||||
import { EntityDef as Bridge } from "./Bridge/Schema";
|
||||
import { EntityDef as Captcha } from "./Captcha/Schema";
|
||||
import { EntityDef as ChangePasswordTemp } from "./ChangePasswordTemp/Schema";
|
||||
import { EntityDef as Domain } from "./Domain/Schema";
|
||||
|
|
@ -66,6 +67,7 @@ export type EntityDict = {
|
|||
area: Area;
|
||||
article: Article;
|
||||
articleMenu: ArticleMenu;
|
||||
bridge: Bridge;
|
||||
captcha: Captcha;
|
||||
changePasswordTemp: ChangePasswordTemp;
|
||||
domain: Domain;
|
||||
|
|
|
|||
|
|
@ -15,6 +15,7 @@ import { desc as applicationDesc } from "./Application/Storage";
|
|||
import { desc as areaDesc } from "./Area/Storage";
|
||||
import { desc as articleDesc } from "./Article/Storage";
|
||||
import { desc as articleMenuDesc } from "./ArticleMenu/Storage";
|
||||
import { desc as bridgeDesc } from "./Bridge/Storage";
|
||||
import { desc as captchaDesc } from "./Captcha/Storage";
|
||||
import { desc as changePasswordTempDesc } from "./ChangePasswordTemp/Storage";
|
||||
import { desc as domainDesc } from "./Domain/Storage";
|
||||
|
|
@ -66,6 +67,7 @@ export const storageSchema = {
|
|||
area: areaDesc,
|
||||
article: articleDesc,
|
||||
articleMenu: articleMenuDesc,
|
||||
bridge: bridgeDesc,
|
||||
captcha: captchaDesc,
|
||||
changePasswordTemp: changePasswordTempDesc,
|
||||
domain: domainDesc,
|
||||
|
|
|
|||
|
|
@ -15,6 +15,7 @@ import * as Application from "./Application/Schema";
|
|||
import * as Area from "./Area/Schema";
|
||||
import * as Article from "./Article/Schema";
|
||||
import * as ArticleMenu from "./ArticleMenu/Schema";
|
||||
import * as Bridge from "./Bridge/Schema";
|
||||
import * as Captcha from "./Captcha/Schema";
|
||||
import * as ChangePasswordTemp from "./ChangePasswordTemp/Schema";
|
||||
import * as Domain from "./Domain/Schema";
|
||||
|
|
@ -239,6 +240,11 @@ export type ArticleMenuIdSubQuery = {
|
|||
entity: "articleMenu";
|
||||
}) | any;
|
||||
};
|
||||
export type BridgeIdSubQuery = {
|
||||
[K in "$in" | "$nin"]?: (Bridge.BridgeIdSubQuery & {
|
||||
entity: "bridge";
|
||||
}) | any;
|
||||
};
|
||||
export type CaptchaIdSubQuery = {
|
||||
[K in "$in" | "$nin"]?: (Captcha.CaptchaIdSubQuery & {
|
||||
entity: "captcha";
|
||||
|
|
|
|||
|
|
@ -141,7 +141,7 @@ function Render(props) {
|
|||
// });
|
||||
// }
|
||||
// }
|
||||
footer: () => (0, jsx_runtime_1.jsxs)(antd_1.Space, { children: [(0, jsx_runtime_1.jsx)(commit_1.default, { oakPath: oakFullpath, efPaths: [
|
||||
footer: (0, jsx_runtime_1.jsxs)(antd_1.Space, { children: [(0, jsx_runtime_1.jsx)(commit_1.default, { oakPath: oakFullpath, efPaths: [
|
||||
'extraFile$entity$1',
|
||||
], afterCommit: () => {
|
||||
modalInstance.destroy();
|
||||
|
|
|
|||
|
|
@ -52,39 +52,6 @@ const Storage_48 = require("./WechatPublicTag/Storage");
|
|||
const Storage_49 = require("./WechatPublicTemplate/Storage");
|
||||
const Storage_50 = require("./WechatQrCode/Storage");
|
||||
const Storage_51 = require("./WechatUser/Storage");
|
||||
const Storage_18 = require("./Captcha/Storage");
|
||||
const Storage_19 = require("./ChangePasswordTemp/Storage");
|
||||
const Storage_20 = require("./Domain/Storage");
|
||||
const Storage_21 = require("./Email/Storage");
|
||||
const Storage_22 = require("./ExtraFile/Storage");
|
||||
const Storage_23 = require("./Livestream/Storage");
|
||||
const Storage_24 = require("./Message/Storage");
|
||||
const Storage_25 = require("./MessageSystem/Storage");
|
||||
const Storage_26 = require("./MessageType/Storage");
|
||||
const Storage_27 = require("./MessageTypeTemplate/Storage");
|
||||
const Storage_28 = require("./Mobile/Storage");
|
||||
const Storage_29 = require("./Notification/Storage");
|
||||
const Storage_30 = require("./Parasite/Storage");
|
||||
const Storage_31 = require("./Platform/Storage");
|
||||
const Storage_32 = require("./ReadRemark/Storage");
|
||||
const Storage_33 = require("./Session/Storage");
|
||||
const Storage_34 = require("./SessionMessage/Storage");
|
||||
const Storage_35 = require("./Station/Storage");
|
||||
const Storage_36 = require("./Subscription/Storage");
|
||||
const Storage_37 = require("./Subway/Storage");
|
||||
const Storage_38 = require("./SubwayStation/Storage");
|
||||
const Storage_39 = require("./System/Storage");
|
||||
const Storage_40 = require("./ToDo/Storage");
|
||||
const Storage_41 = require("./Token/Storage");
|
||||
const Storage_42 = require("./UserSystem/Storage");
|
||||
const Storage_43 = require("./UserWechatPublicTag/Storage");
|
||||
const Storage_44 = require("./WechatLogin/Storage");
|
||||
const Storage_45 = require("./WechatMenu/Storage");
|
||||
const Storage_46 = require("./wechatPublicAutoReply/Storage");
|
||||
const Storage_47 = require("./WechatPublicTag/Storage");
|
||||
const Storage_48 = require("./WechatPublicTemplate/Storage");
|
||||
const Storage_49 = require("./WechatQrCode/Storage");
|
||||
const Storage_50 = require("./WechatUser/Storage");
|
||||
exports.storageSchema = {
|
||||
actionAuth: Storage_1.desc,
|
||||
i18n: Storage_2.desc,
|
||||
|
|
@ -136,38 +103,5 @@ exports.storageSchema = {
|
|||
wechatPublicTag: Storage_48.desc,
|
||||
wechatPublicTemplate: Storage_49.desc,
|
||||
wechatQrCode: Storage_50.desc,
|
||||
wechatUser: Storage_51.desc,
|
||||
captcha: Storage_18.desc,
|
||||
changePasswordTemp: Storage_19.desc,
|
||||
domain: Storage_20.desc,
|
||||
email: Storage_21.desc,
|
||||
extraFile: Storage_22.desc,
|
||||
livestream: Storage_23.desc,
|
||||
message: Storage_24.desc,
|
||||
messageSystem: Storage_25.desc,
|
||||
messageType: Storage_26.desc,
|
||||
messageTypeTemplate: Storage_27.desc,
|
||||
mobile: Storage_28.desc,
|
||||
notification: Storage_29.desc,
|
||||
parasite: Storage_30.desc,
|
||||
platform: Storage_31.desc,
|
||||
readRemark: Storage_32.desc,
|
||||
session: Storage_33.desc,
|
||||
sessionMessage: Storage_34.desc,
|
||||
station: Storage_35.desc,
|
||||
subscription: Storage_36.desc,
|
||||
subway: Storage_37.desc,
|
||||
subwayStation: Storage_38.desc,
|
||||
system: Storage_39.desc,
|
||||
toDo: Storage_40.desc,
|
||||
token: Storage_41.desc,
|
||||
userSystem: Storage_42.desc,
|
||||
userWechatPublicTag: Storage_43.desc,
|
||||
wechatLogin: Storage_44.desc,
|
||||
wechatMenu: Storage_45.desc,
|
||||
wechatPublicAutoReply: Storage_46.desc,
|
||||
wechatPublicTag: Storage_47.desc,
|
||||
wechatPublicTemplate: Storage_48.desc,
|
||||
wechatQrCode: Storage_49.desc,
|
||||
wechatUser: Storage_50.desc
|
||||
wechatUser: Storage_51.desc
|
||||
};
|
||||
|
|
|
|||
|
|
@ -274,7 +274,7 @@ export default function Render(props: WebComponentProps<EntityDict, 'articleMenu
|
|||
// });
|
||||
// }
|
||||
// }
|
||||
footer: () => <Space>
|
||||
footer: <Space>
|
||||
<ExtraFileCommit
|
||||
oakPath={oakFullpath}
|
||||
efPaths={[
|
||||
|
|
|
|||
Loading…
Reference in New Issue