@wavemaker/app-rn-runtime 11.4.0-next.28701 → 11.4.0-rc.121
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.
- app-rn-runtime/actions/navigation-action.js +14 -2
- app-rn-runtime/actions/navigation-action.js.map +1 -1
- app-rn-runtime/components/advanced/carousel/carousel.styles.js.map +1 -1
- app-rn-runtime/components/basic/anchor/anchor.styles.js.map +1 -1
- app-rn-runtime/components/basic/audio/audio.component.js +13 -5
- app-rn-runtime/components/basic/audio/audio.component.js.map +1 -1
- app-rn-runtime/components/basic/button/button.component.js.map +1 -1
- app-rn-runtime/components/basic/buttongroup/buttongroup.component.js.map +1 -1
- app-rn-runtime/components/basic/buttongroup/buttongroup.styles.js.map +1 -1
- app-rn-runtime/components/basic/custom/custom.component.js.map +1 -1
- app-rn-runtime/components/basic/icon/icon.component.js.map +1 -1
- app-rn-runtime/components/basic/label/label.component.js.map +1 -1
- app-rn-runtime/components/basic/label/label.styles.js.map +1 -1
- app-rn-runtime/components/basic/picture/picture.component.js +5 -9
- app-rn-runtime/components/basic/picture/picture.component.js.map +1 -1
- app-rn-runtime/components/basic/picture/picture.styles.js.map +1 -1
- app-rn-runtime/components/chart/basechart.component.js +6 -2
- app-rn-runtime/components/chart/basechart.component.js.map +1 -1
- app-rn-runtime/components/chart/basechart.props.js +1 -0
- app-rn-runtime/components/chart/basechart.props.js.map +1 -1
- app-rn-runtime/components/chart/basechart.styles.js +17 -0
- app-rn-runtime/components/chart/basechart.styles.js.map +1 -1
- app-rn-runtime/components/chart/donut-chart/donut-chart.props.js +0 -1
- app-rn-runtime/components/chart/donut-chart/donut-chart.props.js.map +1 -1
- app-rn-runtime/components/chart/legend/legend.component.js +36 -0
- app-rn-runtime/components/chart/legend/legend.component.js.map +1 -0
- app-rn-runtime/components/chart/pie-chart/pie-chart.component.js +119 -40
- app-rn-runtime/components/chart/pie-chart/pie-chart.component.js.map +1 -1
- app-rn-runtime/components/chart/pie-chart/pie-chart.props.js +1 -2
- app-rn-runtime/components/chart/pie-chart/pie-chart.props.js.map +1 -1
- app-rn-runtime/components/container/accordion/accordion.component.js +18 -6
- app-rn-runtime/components/container/accordion/accordion.component.js.map +1 -1
- app-rn-runtime/components/container/accordion/accordionpane/accordionpane.component.js +8 -2
- app-rn-runtime/components/container/accordion/accordionpane/accordionpane.component.js.map +1 -1
- app-rn-runtime/components/container/container.component.js.map +1 -1
- app-rn-runtime/components/container/linearlayout/linearlayout.component.js +1 -0
- app-rn-runtime/components/container/linearlayout/linearlayout.component.js.map +1 -1
- app-rn-runtime/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js +2 -2
- app-rn-runtime/components/container/linearlayout/linearlayoutitem/linearlayoutitem.component.js.map +1 -1
- app-rn-runtime/components/data/card/card.styles.js.map +1 -1
- app-rn-runtime/components/data/form/form-action/form-action.component.js +1 -0
- app-rn-runtime/components/data/form/form-action/form-action.component.js.map +1 -1
- app-rn-runtime/components/data/form/form-action/form-action.props.js +3 -1
- app-rn-runtime/components/data/form/form-action/form-action.props.js.map +1 -1
- app-rn-runtime/components/data/form/form-field/form-field.component.js +21 -0
- app-rn-runtime/components/data/form/form-field/form-field.component.js.map +1 -1
- app-rn-runtime/components/data/form/form-field/form-field.props.js +8 -0
- app-rn-runtime/components/data/form/form-field/form-field.props.js.map +1 -1
- app-rn-runtime/components/data/form/form.component.js +93 -2
- app-rn-runtime/components/data/form/form.component.js.map +1 -1
- app-rn-runtime/components/data/form/form.props.js +2 -0
- app-rn-runtime/components/data/form/form.props.js.map +1 -1
- app-rn-runtime/components/data/form/form.styles.js +6 -0
- app-rn-runtime/components/data/form/form.styles.js.map +1 -1
- app-rn-runtime/components/data/list/list.styles.js.map +1 -1
- app-rn-runtime/components/data/liveform/liveform.component.js +102 -0
- app-rn-runtime/components/data/liveform/liveform.component.js.map +1 -0
- app-rn-runtime/components/dialogs/alertdialog/alertdialog.styles.js.map +1 -1
- app-rn-runtime/components/input/baseinput/baseinput.component.js +2 -2
- app-rn-runtime/components/input/baseinput/baseinput.component.js.map +1 -1
- app-rn-runtime/components/input/checkbox/checkbox.props.js +1 -1
- app-rn-runtime/components/input/checkbox/checkbox.props.js.map +1 -1
- app-rn-runtime/components/input/checkbox/checkbox.styles.js.map +1 -1
- app-rn-runtime/components/input/checkboxset/checkboxset.styles.js.map +1 -1
- app-rn-runtime/components/input/epoch/base-datetime.component.js.map +1 -1
- app-rn-runtime/components/input/epoch/datetime/datetime.styles.js.map +1 -1
- app-rn-runtime/components/input/radioset/radioset.component.js +3 -1
- app-rn-runtime/components/input/radioset/radioset.component.js.map +1 -1
- app-rn-runtime/components/input/radioset/radioset.styles.js +8 -0
- app-rn-runtime/components/input/radioset/radioset.styles.js.map +1 -1
- app-rn-runtime/components/input/select/select.component.js +13 -1
- app-rn-runtime/components/input/select/select.component.js.map +1 -1
- app-rn-runtime/components/input/select/select.styles.js +8 -1
- app-rn-runtime/components/input/select/select.styles.js.map +1 -1
- app-rn-runtime/components/input/text/text.styles.js.map +1 -1
- app-rn-runtime/components/input/textarea/textarea.styles.js.map +1 -1
- app-rn-runtime/components/navigation/appnavbar/appnavbar.styles.js.map +1 -1
- app-rn-runtime/components/navigation/menu/menu.component.js.map +1 -1
- app-rn-runtime/components/navigation/menu/menu.styles.js.map +1 -1
- app-rn-runtime/components/navigation/popover/popover.styles.js.map +1 -1
- app-rn-runtime/core/base.component.js +11 -4
- app-rn-runtime/core/base.component.js.map +1 -1
- app-rn-runtime/core/formatters.js.map +1 -1
- app-rn-runtime/core/i18n.service.js.map +1 -1
- app-rn-runtime/core/props.provider.js +1 -1
- app-rn-runtime/core/props.provider.js.map +1 -1
- app-rn-runtime/core/utils.js +19 -0
- app-rn-runtime/core/utils.js.map +1 -1
- app-rn-runtime/package.json +39 -39
- app-rn-runtime/runtime/base-fragment.component.js +16 -3
- app-rn-runtime/runtime/base-fragment.component.js.map +1 -1
- app-rn-runtime/runtime/base-prefab.component.js +4 -2
- app-rn-runtime/runtime/base-prefab.component.js.map +1 -1
- app-rn-runtime/runtime/services/app-i18n.service.js +6 -3
- app-rn-runtime/runtime/services/app-i18n.service.js.map +1 -1
- app-rn-runtime/runtime/watcher.js +3 -1
- app-rn-runtime/runtime/watcher.js.map +1 -1
- app-rn-runtime/styles/theme.js +4 -2
- app-rn-runtime/styles/theme.js.map +1 -1
- app-rn-runtime/styles/theme.variables.js +5 -1
- app-rn-runtime/styles/theme.variables.js.map +1 -1
- app-rn-runtime/variables/http.service.js +6 -2
- app-rn-runtime/variables/http.service.js.map +1 -1
- app-rn-runtime/variables/live-variable.js +115 -0
- app-rn-runtime/variables/live-variable.js.map +1 -0
- app-rn-runtime/variables/service-variable.js +6 -1
- app-rn-runtime/variables/service-variable.js.map +1 -1
- app-rn-runtime/variables/utils/variable.utils.js.map +1 -1
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
3
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
4
|
+
import { isEqual, isUndefined, isFunction, forEach, isEmpty } from 'lodash';
|
|
5
|
+
import { LiveVariable as _LiveVariable } from '@wavemaker/variables/src/model/variable/live-variable';
|
|
6
|
+
import httpService from '@wavemaker/app-rn-runtime/variables/http.service';
|
|
7
|
+
import injector from '@wavemaker/app-rn-runtime/core/injector';
|
|
8
|
+
import { deepCopy } from '@wavemaker/app-rn-runtime/core/utils';
|
|
9
|
+
import Formatters from '@wavemaker/app-rn-runtime/core/formatters';
|
|
10
|
+
var _LiveVariableEvents = /*#__PURE__*/function (_LiveVariableEvents) {
|
|
11
|
+
_LiveVariableEvents["BEFORE_INVOKE"] = "beforeInvoke";
|
|
12
|
+
return _LiveVariableEvents;
|
|
13
|
+
}(_LiveVariableEvents || {});
|
|
14
|
+
export class LiveVariable extends _LiveVariable {
|
|
15
|
+
constructor(config) {
|
|
16
|
+
const variableConfig = {
|
|
17
|
+
name: config.name,
|
|
18
|
+
dataSet: config.paramProvider(),
|
|
19
|
+
inputFields: config.paramProvider(),
|
|
20
|
+
filterExpressions: config.filterExpressions,
|
|
21
|
+
filterFields: config.paramProvider(),
|
|
22
|
+
isList: config.isList,
|
|
23
|
+
maxResults: config.maxResults,
|
|
24
|
+
_context: config._context,
|
|
25
|
+
operation: config.operation,
|
|
26
|
+
type: config.type,
|
|
27
|
+
autoUpdate: config.autoUpdate,
|
|
28
|
+
liveSource: config.liveSource,
|
|
29
|
+
orderBy: config.orderBy,
|
|
30
|
+
category: config.category,
|
|
31
|
+
properties: config.properties,
|
|
32
|
+
propertiesMap: config.propertiesMap,
|
|
33
|
+
tableName: config.tableName,
|
|
34
|
+
tableType: config.tableType,
|
|
35
|
+
relatedTables: config.relatedTables,
|
|
36
|
+
httpClientService: httpService,
|
|
37
|
+
onSuccess: (context, args) => {
|
|
38
|
+
return config.onSuccess && config.onSuccess(args.variable, args.data, args.options);
|
|
39
|
+
},
|
|
40
|
+
onCanUpdate: (context, args) => {
|
|
41
|
+
return config.onCanUpdate && config.onCanUpdate(args.variable, args.data, args.options);
|
|
42
|
+
},
|
|
43
|
+
onBeforeUpdate: (context, args) => {
|
|
44
|
+
return config.onBeforeUpdate && config.onBeforeUpdate(args.variable, args.dataFilter || args.inputData, args.options);
|
|
45
|
+
},
|
|
46
|
+
onResult: (context, args) => {
|
|
47
|
+
return config.onResult && config.onResult(args.variable, args.data, args.options);
|
|
48
|
+
},
|
|
49
|
+
onBeforeDatasetReady: (context, args) => {
|
|
50
|
+
return config.onBeforeDatasetReady && config.onBeforeDatasetReady(args.variable, args.data, args.options);
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
if (config.onError) {
|
|
54
|
+
variableConfig.onError = (context, args) => {
|
|
55
|
+
return config.onError && config.onError(args.variable, args.data, args.options);
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
super(variableConfig);
|
|
59
|
+
this.config = config;
|
|
60
|
+
_defineProperty(this, "params", {});
|
|
61
|
+
_defineProperty(this, "filters", {});
|
|
62
|
+
_defineProperty(this, "appConfig", injector.get('APP_CONFIG'));
|
|
63
|
+
this.dateFormatter = Formatters.get('toDate');
|
|
64
|
+
this.init();
|
|
65
|
+
}
|
|
66
|
+
setFilterExpValue(filter) {
|
|
67
|
+
var _this$filterExpressio;
|
|
68
|
+
(_this$filterExpressio = this.filterExpressions) === null || _this$filterExpressio === void 0 ? void 0 : _this$filterExpressio.rules.forEach(r => {
|
|
69
|
+
r.value = filter[r.target];
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
invokeOnParamChange() {
|
|
73
|
+
const last = this.params;
|
|
74
|
+
const latest = this.config.paramProvider();
|
|
75
|
+
if (this.config.operation === 'read') {
|
|
76
|
+
const lastFilter = this.filters;
|
|
77
|
+
const latestFilter = this.config.filterProvider && this.config.filterProvider();
|
|
78
|
+
if (!isEqual(lastFilter, latestFilter)) {
|
|
79
|
+
this.setFilterExpValue(latestFilter);
|
|
80
|
+
if (this.autoUpdate && !isEmpty(latestFilter) && isFunction(this.update)) {
|
|
81
|
+
this.filters = latestFilter;
|
|
82
|
+
this.invoke();
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
if (!isEqual(last, latest)) {
|
|
87
|
+
if (this.config.operation === 'read') {
|
|
88
|
+
forEach(latest, (val, key) => {
|
|
89
|
+
this.filterFields[key] = {
|
|
90
|
+
'value': val
|
|
91
|
+
};
|
|
92
|
+
});
|
|
93
|
+
} else {
|
|
94
|
+
this.inputFields = latest;
|
|
95
|
+
}
|
|
96
|
+
/* if auto-update set for the variable with read operation only, get its data */
|
|
97
|
+
// @ts-ignore
|
|
98
|
+
if (this.autoUpdate && !isUndefined(latest) && isFunction(this[this.config.operation + 'Record'])) {
|
|
99
|
+
this.invoke();
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
return Promise.resolve(this);
|
|
103
|
+
}
|
|
104
|
+
listRecords(options, onSuccess, onError) {
|
|
105
|
+
this.filters = this.config.filterProvider && this.config.filterProvider();
|
|
106
|
+
if (options) {
|
|
107
|
+
this.filters = deepCopy({}, this.filters, options.filterFields ? options.filterFields : options);
|
|
108
|
+
}
|
|
109
|
+
options = options || {};
|
|
110
|
+
options.filterFields = this.filters;
|
|
111
|
+
this.setFilterExpValue(this.filters);
|
|
112
|
+
return super.listRecords(options, onSuccess, onError);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=live-variable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["isEqual","isUndefined","isFunction","forEach","isEmpty","LiveVariable","_LiveVariable","httpService","injector","deepCopy","Formatters","_LiveVariableEvents","constructor","config","variableConfig","name","dataSet","paramProvider","inputFields","filterExpressions","filterFields","isList","maxResults","_context","operation","type","autoUpdate","liveSource","orderBy","category","properties","propertiesMap","tableName","tableType","relatedTables","httpClientService","onSuccess","context","args","variable","data","options","onCanUpdate","onBeforeUpdate","dataFilter","inputData","onResult","onBeforeDatasetReady","onError","_defineProperty","get","dateFormatter","init","setFilterExpValue","filter","_this$filterExpressio","rules","r","value","target","invokeOnParamChange","last","params","latest","lastFilter","filters","latestFilter","filterProvider","update","invoke","val","key","Promise","resolve","listRecords"],"sources":["live-variable.ts"],"sourcesContent":["import { VariableConfig, VariableEvents } from './base-variable';\nimport { isEqual, isUndefined, isFunction, forEach, isEmpty } from 'lodash';\nimport AppConfig from '@wavemaker/app-rn-runtime/core/AppConfig';\nimport { LiveVariable as _LiveVariable } from '@wavemaker/variables/src/model/variable/live-variable';\nimport httpService from '@wavemaker/app-rn-runtime/variables/http.service';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\nimport { deepCopy } from '@wavemaker/app-rn-runtime/core/utils';\nimport Formatters from '@wavemaker/app-rn-runtime/core/formatters';\n\nexport interface LiveVariableConfig extends VariableConfig {\n baseUrl: string;\n maxResults: number;\n _context: any;\n onCanUpdate: any;\n onBeforeUpdate: any;\n onResult: any;\n onBeforeDatasetReady: any;\n inFlightBehavior: string;\n type: string;\n autoUpdate: boolean;\n orderBy: string;\n category: string;\n liveSource: string;\n propertiesMap: any;\n properties: any;\n tableName: string;\n tableType: string;\n relatedTables: any;\n filterExpressions: any;\n filterProvider: any;\n}\n\nenum _LiveVariableEvents {\n BEFORE_INVOKE = 'beforeInvoke'\n}\nexport type LiveVariableEvents = _LiveVariableEvents | VariableEvents;\n\nexport class LiveVariable extends _LiveVariable {\n params: any = {};\n filters: any = {};\n public appConfig = injector.get<AppConfig>('APP_CONFIG');\n\n constructor(public config: LiveVariableConfig) {\n const variableConfig: any = {\n name: config.name,\n dataSet: config.paramProvider(),\n inputFields: config.paramProvider(),\n filterExpressions: config.filterExpressions,\n filterFields: config.paramProvider(),\n isList: config.isList,\n maxResults: config.maxResults,\n _context: config._context,\n operation: config.operation,\n type: config.type,\n autoUpdate: config.autoUpdate,\n liveSource: config.liveSource,\n orderBy: config.orderBy,\n category: config.category,\n properties: config.properties,\n propertiesMap: config.propertiesMap,\n tableName: config.tableName,\n tableType: config.tableType,\n relatedTables: config.relatedTables,\n httpClientService: httpService,\n onSuccess: (context: any, args: any) => {\n return config.onSuccess && config.onSuccess(args.variable, args.data, args.options);\n },\n onCanUpdate: (context: any, args: any) => {\n return config.onCanUpdate && config.onCanUpdate(args.variable, args.data, args.options);\n },\n onBeforeUpdate: (context: any, args: any) => {\n return config.onBeforeUpdate && config.onBeforeUpdate(args.variable, args.dataFilter || args.inputData, args.options);\n },\n onResult: (context: any, args: any) => {\n return config.onResult && config.onResult(args.variable, args.data, args.options);\n },\n onBeforeDatasetReady: (context: any, args: any) => {\n return config.onBeforeDatasetReady && config.onBeforeDatasetReady(args.variable, args.data, args.options);\n }\n }\n if (config.onError) {\n variableConfig.onError = (context: any, args: any) => {\n return config.onError && config.onError(args.variable, args.data, args.options);\n };\n }\n super(variableConfig);\n this.dateFormatter = Formatters.get('toDate');\n this.init();\n }\n\n setFilterExpValue(filter: any) {\n this.filterExpressions?.rules.forEach((r: any) => {\n r.value = filter[r.target];\n });\n }\n\n invokeOnParamChange() {\n const last = this.params;\n const latest = this.config.paramProvider();\n if (this.config.operation === 'read') {\n const lastFilter = this.filters;\n const latestFilter = this.config.filterProvider && this.config.filterProvider();\n if (!isEqual(lastFilter, latestFilter)) {\n this.setFilterExpValue(latestFilter);\n if (this.autoUpdate && !isEmpty(latestFilter) && isFunction(this.update)) {\n this.filters = latestFilter;\n this.invoke();\n }\n }\n }\n if (!isEqual(last, latest)) {\n if (this.config.operation === 'read') {\n forEach(latest, (val: any, key: any) => {\n this.filterFields[key] = {\n 'value': val\n };\n });\n } else {\n this.inputFields = latest;\n }\n /* if auto-update set for the variable with read operation only, get its data */\n // @ts-ignore\n if (this.autoUpdate && !isUndefined(latest) && isFunction(this[this.config.operation + 'Record'])) {\n this.invoke();\n }\n }\n return Promise.resolve(this);\n }\n\n listRecords(options? : any, onSuccess?: Function, onError?: Function) {\n this.filters = this.config.filterProvider && this.config.filterProvider();\n if (options) {\n this.filters = deepCopy({} as any, this.filters, options.filterFields ? options.filterFields : options);\n }\n options = options || {};\n options.filterFields = this.filters;\n this.setFilterExpValue(this.filters);\n return super.listRecords(options, onSuccess, onError);\n }\n\n}\n"],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ var _ServiceVariableEvents = /*#__PURE__*/function (_ServiceVariableEvents) {
|
|
|
13
13
|
}(_ServiceVariableEvents || {});
|
|
14
14
|
export class ServiceVariable extends _ServiceVariable {
|
|
15
15
|
constructor(config) {
|
|
16
|
-
|
|
16
|
+
let variableConfig = {
|
|
17
17
|
name: config.name,
|
|
18
18
|
dataSet: config.paramProvider(),
|
|
19
19
|
dataBinding: {},
|
|
@@ -50,6 +50,11 @@ export class ServiceVariable extends _ServiceVariable {
|
|
|
50
50
|
return config.onBeforeDatasetReady && config.onBeforeDatasetReady(args.variable, args.data, args.options);
|
|
51
51
|
}
|
|
52
52
|
};
|
|
53
|
+
if (config.onError) {
|
|
54
|
+
variableConfig.onError = (context, args) => {
|
|
55
|
+
return config.onError && config.onError(args.variable, args.data, args.options);
|
|
56
|
+
};
|
|
57
|
+
}
|
|
53
58
|
super(variableConfig);
|
|
54
59
|
this.config = config;
|
|
55
60
|
_defineProperty(this, "cancelTokenSource", void 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["VariableEvents","isEqual","deepCopy","ServiceVariable","_ServiceVariable","httpService","injector","_ServiceVariableEvents","constructor","config","variableConfig","name","dataSet","paramProvider","dataBinding","isList","service","serviceType","maxResults","_context","operation","operationId","serviceInfo","getServiceInfo","httpClientService","onSuccess","context","args","notify","AFTER_INVOKE","variable","data","options","SUCCESS","onError","ERROR","onCanUpdate","onBeforeUpdate","BEFORE_INVOKE","inputData","onResult","onBeforeDatasetReady","_defineProperty","get","subscribe","invokeOnParamChange","last","params","latest","invoke","Promise","resolve","doNext","currentPage","reject","onDataUpdated","appConfig","refresh","inputFields","console","error"],"sources":["service-variable.ts"],"sourcesContent":["import { VariableConfig, VariableEvents } from './base-variable';\nimport { isEqual, assignIn } from 'lodash';\nimport AppConfig from '@wavemaker/app-rn-runtime/core/AppConfig';\nimport { deepCopy } from '@wavemaker/app-rn-runtime/core/utils';\nimport { ServiceVariable as _ServiceVariable } from '@wavemaker/variables/src/model/variable/service-variable';\nimport httpService from '@wavemaker/app-rn-runtime/variables/http.service';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\n\nexport interface ServiceVariableConfig extends VariableConfig {\n baseUrl: string;\n maxResults: number;\n _context: any;\n serviceType: string;\n onCanUpdate: any;\n onBeforeUpdate: any;\n onResult: any;\n onBeforeDatasetReady: any;\n inFlightBehavior: string;\n getServiceInfo: Function;\n}\n\nenum _ServiceVariableEvents {\n BEFORE_INVOKE = 'beforeInvoke'\n}\nexport type ServiceVariableEvents = _ServiceVariableEvents | VariableEvents;\n\nexport class ServiceVariable extends _ServiceVariable {\n private cancelTokenSource: any;\n params: any = {};\n public appConfig = injector.get<AppConfig>('APP_CONFIG');\n\n constructor(public config: ServiceVariableConfig) {\n const variableConfig = {\n name: config.name,\n dataSet: config.paramProvider(),\n dataBinding: {},\n isList: config.isList,\n service: config.service,\n serviceType: config.serviceType,\n maxResults: config.maxResults,\n _context: config._context,\n operation: config.operation,\n operationId: config.operationId,\n serviceInfo: config.getServiceInfo(),\n httpClientService: httpService,\n onSuccess: (context: any, args: any) => {\n this.notify(VariableEvents.AFTER_INVOKE, [args.variable, args.data, args.options]);\n this.notify(VariableEvents.SUCCESS, [args.variable, args.data, args.options]);\n return config.onSuccess && config.onSuccess(args.variable, args.data, args.options);\n },\n onError: (context: any, args: any) => {\n this.notify(VariableEvents.AFTER_INVOKE, [args.variable, args.data, args.options]);\n this.notify(VariableEvents.ERROR, [args.variable, args.data, args.options]);\n return config.onError && config.onError(args.variable, args.data, args.options);\n },\n onCanUpdate: (context: any, args: any) => {\n return config.onCanUpdate && config.onCanUpdate(args.variable, args.data, args.options);\n },\n onBeforeUpdate: (context: any, args: any) => {\n this.notify(VariableEvents.BEFORE_INVOKE, [args.variable, args.inputData, args.options]);\n return config.onBeforeUpdate && config.onBeforeUpdate(args.variable, args.inputData, args.options);\n },\n onResult: (context: any, args: any) => {\n return config.onResult && config.onResult(args.variable, args.data, args.options);\n },\n onBeforeDatasetReady: (context: any, args: any) => {\n return config.onBeforeDatasetReady && config.onBeforeDatasetReady(args.variable, args.data, args.options);\n }\n }\n super(variableConfig);\n this.subscribe(VariableEvents.AFTER_INVOKE, () => {\n this.dataBinding = {};\n });\n }\n\n invokeOnParamChange() {\n const last = this.params;\n const latest = this.config.paramProvider();\n if (!isEqual(last, latest)) {\n this.invoke(latest);\n }\n return Promise.resolve(this);\n }\n\n public doNext(currentPage: number) {\n // this.invoke({\n // page: currentPage\n // });\n return Promise.reject(this);\n }\n\n onDataUpdated() {\n this.appConfig.refresh(false);\n }\n\n invoke(options? : any, onSuccess?: Function, onError?: Function) {\n this.params = this.config.paramProvider();\n this.params = deepCopy({} as any, this.params, this.dataBinding);\n if (options) {\n this.params = deepCopy({} as any, this.params, options.inputFields ? options.inputFields : options);\n }\n options = options || {};\n options.inputFields = this.params;\n // service definitions data depends on whether user logged in or not\n // Try to get the latest definition\n this.serviceInfo = this.config.getServiceInfo();\n if (!this.serviceInfo) {\n console.error(`Service Info is missing for (${this.name}) variable.`)\n }\n return super.invoke(options, onSuccess, onError);\n }\n\n // cancel($file?: any) {\n // // CHecks if there is any pending requests in the queue\n // if ($queue.requestsQueue.has(this)) {\n // // If the request is a File upload request then modify the elements associated with file upload\n // // else unsubscribe from the observable on the variable.\n // if (false) {\n // // $file._uploadProgress.unsubscribe();\n // // $file.status = 'abort';\n // // this.totalFilesCount--;\n // // initiateCallback(VARIABLE_CONSTANTS.EVENT.ABORT, variable, $file);\n // // if (!this.isFileUploadInProgress(variable.dataBinding) && this.totalFilesCount === 0) {\n // // $queue.process(variable);\n // // // notify inflight variable\n // // this.notifyInflight(variable, false);\n // // }\n // } else {\n // if (true) {\n // this.cancelTokenSource.cancel();\n // $queue.process(this);\n // // notify inflight variable\n // //this.notifyInflight(variable, false);\n // }\n // }\n // }\n // }\n\n // setInput(key: any, val?: any, options?: any) {\n // this.params = merge({}, this.config.paramProvider(), _setInput(this.params, key, val, options));\n // return this.params;\n // }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["VariableEvents","isEqual","deepCopy","ServiceVariable","_ServiceVariable","httpService","injector","_ServiceVariableEvents","constructor","config","variableConfig","name","dataSet","paramProvider","dataBinding","isList","service","serviceType","maxResults","_context","operation","operationId","serviceInfo","getServiceInfo","httpClientService","onSuccess","context","args","notify","AFTER_INVOKE","variable","data","options","SUCCESS","onError","ERROR","onCanUpdate","onBeforeUpdate","BEFORE_INVOKE","inputData","onResult","onBeforeDatasetReady","_defineProperty","get","subscribe","invokeOnParamChange","last","params","latest","invoke","Promise","resolve","doNext","currentPage","reject","onDataUpdated","appConfig","refresh","inputFields","console","error"],"sources":["service-variable.ts"],"sourcesContent":["import { VariableConfig, VariableEvents } from './base-variable';\nimport { isEqual, assignIn } from 'lodash';\nimport AppConfig from '@wavemaker/app-rn-runtime/core/AppConfig';\nimport { deepCopy } from '@wavemaker/app-rn-runtime/core/utils';\nimport { ServiceVariable as _ServiceVariable } from '@wavemaker/variables/src/model/variable/service-variable';\nimport httpService from '@wavemaker/app-rn-runtime/variables/http.service';\nimport injector from '@wavemaker/app-rn-runtime/core/injector';\n\nexport interface ServiceVariableConfig extends VariableConfig {\n baseUrl: string;\n maxResults: number;\n _context: any;\n serviceType: string;\n onCanUpdate: any;\n onBeforeUpdate: any;\n onResult: any;\n onBeforeDatasetReady: any;\n inFlightBehavior: string;\n getServiceInfo: Function;\n}\n\nenum _ServiceVariableEvents {\n BEFORE_INVOKE = 'beforeInvoke'\n}\nexport type ServiceVariableEvents = _ServiceVariableEvents | VariableEvents;\n\nexport class ServiceVariable extends _ServiceVariable {\n private cancelTokenSource: any;\n params: any = {};\n public appConfig = injector.get<AppConfig>('APP_CONFIG');\n\n constructor(public config: ServiceVariableConfig) {\n let variableConfig: any = {\n name: config.name,\n dataSet: config.paramProvider(),\n dataBinding: {},\n isList: config.isList,\n service: config.service,\n serviceType: config.serviceType,\n maxResults: config.maxResults,\n _context: config._context,\n operation: config.operation,\n operationId: config.operationId,\n serviceInfo: config.getServiceInfo(),\n httpClientService: httpService,\n onSuccess: (context: any, args: any) => {\n this.notify(VariableEvents.AFTER_INVOKE, [args.variable, args.data, args.options]);\n this.notify(VariableEvents.SUCCESS, [args.variable, args.data, args.options]);\n return config.onSuccess && config.onSuccess(args.variable, args.data, args.options);\n },\n onError: (context: any, args: any) => {\n this.notify(VariableEvents.AFTER_INVOKE, [args.variable, args.data, args.options]);\n this.notify(VariableEvents.ERROR, [args.variable, args.data, args.options]);\n return config.onError && config.onError(args.variable, args.data, args.options);\n },\n onCanUpdate: (context: any, args: any) => {\n return config.onCanUpdate && config.onCanUpdate(args.variable, args.data, args.options);\n },\n onBeforeUpdate: (context: any, args: any) => {\n this.notify(VariableEvents.BEFORE_INVOKE, [args.variable, args.inputData, args.options]);\n return config.onBeforeUpdate && config.onBeforeUpdate(args.variable, args.inputData, args.options);\n },\n onResult: (context: any, args: any) => {\n return config.onResult && config.onResult(args.variable, args.data, args.options);\n },\n onBeforeDatasetReady: (context: any, args: any) => {\n return config.onBeforeDatasetReady && config.onBeforeDatasetReady(args.variable, args.data, args.options);\n }\n }\n if (config.onError) {\n variableConfig.onError = (context: any, args: any) => {\n return config.onError && config.onError(args.variable, args.data, args.options);\n };\n }\n super(variableConfig);\n this.subscribe(VariableEvents.AFTER_INVOKE, () => {\n this.dataBinding = {};\n });\n }\n\n invokeOnParamChange() {\n const last = this.params;\n const latest = this.config.paramProvider();\n if (!isEqual(last, latest)) {\n this.invoke(latest);\n }\n return Promise.resolve(this);\n }\n\n public doNext(currentPage: number) {\n // this.invoke({\n // page: currentPage\n // });\n return Promise.reject(this);\n }\n\n onDataUpdated() {\n this.appConfig.refresh(false);\n }\n\n invoke(options? : any, onSuccess?: Function, onError?: Function) {\n this.params = this.config.paramProvider();\n this.params = deepCopy({} as any, this.params, this.dataBinding);\n if (options) {\n this.params = deepCopy({} as any, this.params, options.inputFields ? options.inputFields : options);\n }\n options = options || {};\n options.inputFields = this.params;\n // service definitions data depends on whether user logged in or not\n // Try to get the latest definition\n this.serviceInfo = this.config.getServiceInfo();\n if (!this.serviceInfo) {\n console.error(`Service Info is missing for (${this.name}) variable.`)\n }\n return super.invoke(options, onSuccess, onError);\n }\n\n // cancel($file?: any) {\n // // CHecks if there is any pending requests in the queue\n // if ($queue.requestsQueue.has(this)) {\n // // If the request is a File upload request then modify the elements associated with file upload\n // // else unsubscribe from the observable on the variable.\n // if (false) {\n // // $file._uploadProgress.unsubscribe();\n // // $file.status = 'abort';\n // // this.totalFilesCount--;\n // // initiateCallback(VARIABLE_CONSTANTS.EVENT.ABORT, variable, $file);\n // // if (!this.isFileUploadInProgress(variable.dataBinding) && this.totalFilesCount === 0) {\n // // $queue.process(variable);\n // // // notify inflight variable\n // // this.notifyInflight(variable, false);\n // // }\n // } else {\n // if (true) {\n // this.cancelTokenSource.cancel();\n // $queue.process(this);\n // // notify inflight variable\n // //this.notifyInflight(variable, false);\n // }\n // }\n // }\n // }\n\n // setInput(key: any, val?: any, options?: any) {\n // this.params = merge({}, this.config.paramProvider(), _setInput(this.params, key, val, options));\n // return this.params;\n // }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forEach","get","isNumber","isObject","isEqual","omit","keys","_setInput","targetObj","key","val","options","lastKey","paramObj","type","parseInt","indexOf","split","pop","findValueOf","join","paramVal","paramKey","obj","create","parts","skipProcessing","part","length","subParts","match","subPart","shift","push","undefined","_key","tempObj","getValidJSON","value","content","parsedIntValue","isNaN","JSON","parse","e","parseErrors","errors","errMsg","error","errorDetails","i","parseError","errorObj","message","replace","parameters","template","map","regEx","isPageable","pageable","first","last","number","numberOfElements","size","sort","totalElements","totalPages","paginatedObj"],"sources":["variable.utils.ts"],"sourcesContent":["import { forEach, get, isNumber, isObject, isEqual, omit, keys } from \"lodash\";\n/**\n * sets the value against passed key on the \"inputFields\" object in the variable\n * @param targetObj: the object in which the key, value is to be set\n * @param variable\n * @param key: can be:\n * - a string e.g. \"username\"\n * - an object, e.g. {\"username\": \"john\", \"ssn\": \"11111\"}\n * @param val\n * - if key is string, the value against it (for that data type)\n * - if key is object, not required\n * @param options\n * @returns {any}\n */\n\nexport const _setInput = (targetObj: any, key: any, val: any, options?: any) => {\n targetObj = targetObj || {};\n let keys,\n lastKey,\n paramObj: any = {};\n\n // content type check\n if (isObject(options)) {\n // @ts-ignore\n switch (options.type) {\n case 'file':\n //val = getBlob(val, options.contentType);\n break;\n case 'number':\n val = isNumber(val) ? val : parseInt(val, 10);\n break;\n }\n }\n\n if (isObject(key)) {\n // check if the passed parameter is an object itself\n paramObj = key;\n } else if (key.indexOf('.') > -1) {\n // check for '.' in key e.g. 'employee.department'\n keys = key.split('.');\n lastKey = keys.pop();\n // Finding the object based on the key\n targetObj = findValueOf(targetObj, keys.join('.'), true);\n key = lastKey;\n paramObj[key] = val;\n } else {\n paramObj[key] = val;\n }\n\n forEach(paramObj, function (paramVal, paramKey) {\n targetObj[paramKey] = paramVal;\n });\n return targetObj;\n}\n\n/*\n * Util method to find the value of a key in the object\n * if key not found and create is true, an object is created against that node\n * Examples:\n * var a = {\n * b: {\n * c : {\n * d: 'test'\n * }\n * }\n * }\n * Utils.findValue(a, 'b.c.d') --> 'test'\n * Utils.findValue(a, 'b.c') --> {d: 'test'}\n * Utils.findValue(a, 'e') --> undefined\n * Utils.findValue(a, 'e', true) --> {} and a will become:\n * {\n * b: {\n * c : {\n * d: 'test'\n * }\n * },\n * e: {\n * }\n * }\n */\nexport const findValueOf = (obj: any, key: any, create?: any) => {\n\n if (!obj || !key) {\n return;\n }\n\n if (!create) {\n return get(obj, key);\n }\n\n const parts = key.split('.'),\n keys: any = [];\n\n let skipProcessing;\n\n // @ts-ignore\n parts.forEach((part: any) => {\n if (!parts.length) { // if the part of a key is not valid, skip the processing.\n skipProcessing = true;\n return false;\n }\n\n const subParts = part.match(/\\w+/g);\n let subPart;\n\n while (subParts.length) {\n subPart = subParts.shift();\n keys.push({ 'key': subPart, 'value': subParts.length ? [] : {} }); // determine whether to create an array or an object\n }\n });\n\n if (skipProcessing) {\n return undefined;\n }\n\n keys.forEach((_key: any) => {\n let tempObj = obj[_key.key];\n if (!isObject(tempObj)) {\n tempObj = getValidJSON(tempObj);\n if (!tempObj) {\n tempObj = _key.value;\n }\n }\n obj[_key.key] = tempObj;\n obj = tempObj;\n });\n\n return obj;\n};\n\nexport const getValidJSON = (content: any) => {\n if (!content) {\n return undefined;\n }\n try {\n const parsedIntValue = parseInt(content, 10);\n /*obtaining json from editor content string*/\n return isObject(content) || !isNaN(parsedIntValue) ? content : JSON.parse(content);\n } catch (e) {\n /*terminating execution if new variable object is not valid json.*/\n return undefined;\n }\n}\n\nexport const parseErrors = (errors: any) => {\n let errMsg = '';\n if (errors && errors.error && errors.error.length) {\n errors.error.forEach((errorDetails: any, i: Number) => {\n errMsg += parseError(errorDetails) + (i > 0 ? '\\n' : '');\n });\n }\n return errMsg;\n}\n\nexport const parseError = (errorObj: any) => {\n let errMsg;\n errMsg = errorObj.message ? replace(errorObj.message, errorObj.parameters, true) : ((errorObj.parameters && errorObj.parameters[0]) || '');\n return errMsg;\n}\n\n/*\n * Util method to replace patterns in string with object keys or array values\n * Examples:\n * Utils.replace('Hello, ${first} ${last} !', {first: 'wavemaker', last: 'ng'}) --> Hello, wavemaker ng\n * Utils.replace('Hello, ${0} ${1} !', ['wavemaker','ng']) --> Hello, wavemaker ng\n * Examples if parseError is true:\n * Utils.replace('Hello, {0} {1} !', ['wavemaker','ng']) --> Hello, wavemaker ng\n */\nexport const replace = (template: any, map: any, parseError?: boolean) => {\n let regEx = /\\$\\{([^\\}]+)\\}/g;\n if (!template) {\n return;\n }\n if (parseError) {\n regEx = /\\{([^\\}]+)\\}/g;\n }\n\n return template.replace(regEx, function (match: any, key: any) {\n return get(map, key);\n });\n};\n\n/*Function to check whether the specified object is a pageable object or not.*/\nexport const isPageable = (obj: any): boolean => {\n const pageable = {\n content: [],\n first: true,\n last: true,\n number: 0,\n numberOfElements: 10,\n size: 20,\n sort: null,\n totalElements: 10,\n totalPages: 1\n };\n // paginated object may or may not contain 'empty' property. In either case, Pageable should return as true.\n const paginatedObj = omit(obj, 'empty');\n return isEqual(keys(pageable), keys(paginatedObj).sort());\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["forEach","get","isNumber","isObject","isEqual","omit","keys","_setInput","targetObj","key","val","options","lastKey","paramObj","type","parseInt","indexOf","split","pop","findValueOf","join","paramVal","paramKey","obj","create","parts","skipProcessing","part","length","subParts","match","subPart","shift","push","undefined","_key","tempObj","getValidJSON","value","content","parsedIntValue","isNaN","JSON","parse","e","parseErrors","errors","errMsg","error","errorDetails","i","parseError","errorObj","message","replace","parameters","template","map","regEx","isPageable","pageable","first","last","number","numberOfElements","size","sort","totalElements","totalPages","paginatedObj"],"sources":["variable.utils.ts"],"sourcesContent":["import { forEach, get, isNumber, isObject, isEqual, omit, keys } from \"lodash\";\n/**\n * sets the value against passed key on the \"inputFields\" object in the variable\n * @param targetObj: the object in which the key, value is to be set\n * @param variable\n * @param key: can be:\n * - a string e.g. \"username\"\n * - an object, e.g. {\"username\": \"john\", \"ssn\": \"11111\"}\n * @param val\n * - if key is string, the value against it (for that data type)\n * - if key is object, not required\n * @param options\n * @returns {any}\n */\n\nexport const _setInput = (targetObj: any, key: any, val: any, options?: any) => {\n targetObj = targetObj || {};\n let keys,\n lastKey,\n paramObj: any = {};\n\n // content type check\n if (isObject(options)) {\n // @ts-ignore\n switch (options.type) {\n case 'file':\n //val = getBlob(val, options.contentType);\n break;\n case 'number':\n val = isNumber(val) ? val : parseInt(val, 10);\n break;\n }\n }\n\n if (isObject(key)) {\n // check if the passed parameter is an object itself\n paramObj = key;\n } else if (key.indexOf('.') > -1) {\n // check for '.' in key e.g. 'employee.department'\n keys = key.split('.');\n lastKey = keys.pop();\n // Finding the object based on the key\n targetObj = findValueOf(targetObj, keys.join('.'), true);\n key = lastKey;\n paramObj[key] = val;\n } else {\n paramObj[key] = val;\n }\n\n forEach(paramObj, function (paramVal, paramKey) {\n targetObj[paramKey] = paramVal;\n });\n return targetObj;\n}\n\n/*\n * Util method to find the value of a key in the object\n * if key not found and create is true, an object is created against that node\n * Examples:\n * var a = {\n * b: {\n * c : {\n * d: 'test'\n * }\n * }\n * }\n * Utils.findValue(a, 'b.c.d') --> 'test'\n * Utils.findValue(a, 'b.c') --> {d: 'test'}\n * Utils.findValue(a, 'e') --> undefined\n * Utils.findValue(a, 'e', true) --> {} and a will become:\n * {\n * b: {\n * c : {\n * d: 'test'\n * }\n * },\n * e: {\n * }\n * }\n */\nexport const findValueOf = (obj: any, key: any, create?: any) => {\n\n if (!obj || !key) {\n return;\n }\n\n if (!create) {\n return get(obj, key);\n }\n\n const parts = key.split('.'),\n keys: any = [];\n\n let skipProcessing;\n\n // @ts-ignore\n parts.forEach((part: any) => {\n if (!parts.length) { // if the part of a key is not valid, skip the processing.\n skipProcessing = true;\n return false;\n }\n\n const subParts = part.match(/\\w+/g);\n let subPart;\n\n while (subParts.length) {\n subPart = subParts.shift();\n keys.push({ 'key': subPart, 'value': subParts.length ? [] : {} }); // determine whether to create an array or an object\n }\n });\n\n if (skipProcessing) {\n return undefined;\n }\n\n keys.forEach((_key: any) => {\n let tempObj = obj[_key.key];\n if (!isObject(tempObj)) {\n tempObj = getValidJSON(tempObj);\n if (!tempObj) {\n tempObj = _key.value;\n }\n }\n obj[_key.key] = tempObj;\n obj = tempObj;\n });\n\n return obj;\n};\n\nexport const getValidJSON = (content: any) => {\n if (!content) {\n return undefined;\n }\n try {\n const parsedIntValue = parseInt(content, 10);\n /*obtaining json from editor content string*/\n return isObject(content) || !isNaN(parsedIntValue) ? content : JSON.parse(content);\n } catch (e) {\n /*terminating execution if new variable object is not valid json.*/\n return undefined;\n }\n}\n\nexport const parseErrors = (errors: any) => {\n let errMsg = '';\n if (errors && errors.error && errors.error.length) {\n errors.error.forEach((errorDetails: any, i: number) => {\n errMsg += parseError(errorDetails) + (i > 0 ? '\\n' : '');\n });\n }\n return errMsg;\n}\n\nexport const parseError = (errorObj: any) => {\n let errMsg;\n errMsg = errorObj.message ? replace(errorObj.message, errorObj.parameters, true) : ((errorObj.parameters && errorObj.parameters[0]) || '');\n return errMsg;\n}\n\n/*\n * Util method to replace patterns in string with object keys or array values\n * Examples:\n * Utils.replace('Hello, ${first} ${last} !', {first: 'wavemaker', last: 'ng'}) --> Hello, wavemaker ng\n * Utils.replace('Hello, ${0} ${1} !', ['wavemaker','ng']) --> Hello, wavemaker ng\n * Examples if parseError is true:\n * Utils.replace('Hello, {0} {1} !', ['wavemaker','ng']) --> Hello, wavemaker ng\n */\nexport const replace = (template: any, map: any, parseError?: boolean) => {\n let regEx = /\\$\\{([^\\}]+)\\}/g;\n if (!template) {\n return;\n }\n if (parseError) {\n regEx = /\\{([^\\}]+)\\}/g;\n }\n\n return template.replace(regEx, function (match: any, key: any) {\n return get(map, key);\n });\n};\n\n/*Function to check whether the specified object is a pageable object or not.*/\nexport const isPageable = (obj: any): boolean => {\n const pageable = {\n content: [],\n first: true,\n last: true,\n number: 0,\n numberOfElements: 10,\n size: 20,\n sort: null,\n totalElements: 10,\n totalPages: 1\n };\n // paginated object may or may not contain 'empty' property. In either case, Pageable should return as true.\n const paginatedObj = omit(obj, 'empty');\n return isEqual(keys(pageable), keys(paginatedObj).sort());\n};\n"],"mappings":"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"}
|