@dooboostore/simple-boot-http-server-ssr
Version:
front end SPA frameworks SSR
67 lines • 3.55 kB
JavaScript
import { __decorate, __metadata } from "tslib";
import { getSim, Sim } from '@dooboostore/simple-boot/decorators/SimDecorator';
import { makeIntentHeaderBySymbol } from '../codes/HttpHeaders';
import { ConvertUtils } from '@dooboostore/core/convert/ConvertUtils';
import { ApiService } from '@dooboostore/simple-boot/fetch/ApiService';
let SymbolIntentApiServiceProxy = class SymbolIntentApiServiceProxy {
constructor(apiService) {
this.apiService = apiService;
}
get(target, prop, receiver) {
const simConfig = getSim(target);
const apiService = this.apiService;
const value = Reflect.get(target, prop, receiver);
if (typeof value === 'function' && (simConfig === null || simConfig === void 0 ? void 0 : simConfig.symbol)) {
return function (...args) {
const f = value;
const p = (userConfig) => {
var _a;
const headers = Object.assign(Object.assign({}, ((_a = userConfig === null || userConfig === void 0 ? void 0 : userConfig.headers) !== null && _a !== void 0 ? _a : {})), makeIntentHeaderBySymbol(simConfig.symbol));
if (userConfig === null || userConfig === void 0 ? void 0 : userConfig.multipartFormData) {
return apiService.post({
target: `/${String(prop)}`,
config: {
bypassTransform: userConfig === null || userConfig === void 0 ? void 0 : userConfig.bypassTransform,
transformText: userConfig === null || userConfig === void 0 ? void 0 : userConfig.transformText,
fetch: {
credentials: 'include',
headers: headers,
body: ConvertUtils.toFormData(userConfig === null || userConfig === void 0 ? void 0 : userConfig.body)
}
}
});
}
else {
return apiService.postJson({
target: `/${String(prop)}`,
config: {
bypassTransform: userConfig === null || userConfig === void 0 ? void 0 : userConfig.bypassTransform,
transformText: userConfig === null || userConfig === void 0 ? void 0 : userConfig.transformText,
fetch: {
credentials: 'include',
headers: headers,
body: userConfig === null || userConfig === void 0 ? void 0 : userConfig.body
}
}
});
}
};
args.push(p);
return Reflect.apply(f, target, args);
// return f.apply(target, args);
};
}
return Reflect.get(target, prop, receiver);
}
apply(target, thisArg, argArray) {
console.log('SymbolIntentApiServiceProxy apply');
// @ts-ignore
return Reflect.apply(target, thisArg, argArray);
}
};
SymbolIntentApiServiceProxy = __decorate([
Sim,
__metadata("design:paramtypes", [ApiService])
], SymbolIntentApiServiceProxy);
export { SymbolIntentApiServiceProxy };
//# sourceMappingURL=SymbolIntentApiServiceProxy.js.map