zng-tool
v0.0.16
Published
```typescript import { useHttpRequest, withWrapper, WrapperType } from "zng-tool"; export const httpRequest = useHttpRequest( withWrapper(WrapperType.Timeout, 5000), withWrapper(WrapperType.Before, (config) => { const token = localStorage.getItem(
Maintainers
Readme
import { useHttpRequest, withWrapper, WrapperType } from "zng-tool";
export const httpRequest = useHttpRequest(
withWrapper(WrapperType.Timeout, 5000),
withWrapper(WrapperType.Before, (config) => {
const token = localStorage.getItem("token");
if (token) {
config.headers.token = "Bearer " + token;
}
return config;
})
);
const channelListTransform = (rs: Common<ChannelItem[]>): ChannelList[] => {
if (rs.data === null || rs.data.length === 0) {
return [];
}
return rs.data.map<ChannelList>((item) => ({
channelId: item.channelId,
channelName: item.channelName,
classItems: item.channelClass.map<ClassList>((val) => ({
columnId: val.columnId,
columnName: val.columnName,
})),
}));
};
export const channelList = async () => {
return await httpRequest.httpGet(
"uri",
{},
withWrapper(WrapperType.Transform, channelListTransform)
);
};
export interface ChannelList {
channelId: number;
channelName: string;
classItems: ClassList[];
}
export interface ClassList {
columnId: number;
columnName: string;
}
export interface ChannelItem {
channelId: number;
channelName: string;
channelClass: ChannelClass[];
}
export interface ChannelClass {
columnId: number;
columnName: string;
isFocus: boolean;
isCanFocus: boolean;
}