@iotize/ionic
Version:
Iotize specific building blocks on top of @ionic/angular.
44 lines • 5.07 kB
JavaScript
import { MONITORING_COMPONENTS_METADATA } from './metadata';
function getExtendsClassName(target) {
const proto = Object.getPrototypeOf(target);
return proto.constructor.name !== 'Object'
? proto.constructor.name
: undefined;
}
/**
* @deprecated
*/
export function AppGenField(options) {
return function (target, propertyKey, descriptor) {
const componentId = target.constructor.name;
if (!MONITORING_COMPONENTS_METADATA[componentId]) {
let fields = {};
MONITORING_COMPONENTS_METADATA[componentId] = {
fields,
decorator: undefined,
extends: getExtendsClassName(target),
};
}
MONITORING_COMPONENTS_METADATA[componentId].fields[propertyKey] = {
decorator: options,
};
};
}
/**
* @deprecated
*/
export function MonitoringAppGenComponent(decorator) {
return function (constructor) {
if (!MONITORING_COMPONENTS_METADATA[constructor.name]) {
MONITORING_COMPONENTS_METADATA[constructor.name] = {
decorator,
fields: {},
extends: getExtendsClassName(constructor.prototype),
};
}
else {
MONITORING_COMPONENTS_METADATA[constructor.name].decorator = decorator;
}
};
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2lvdGl6ZS1pb25pYy9tb25pdG9yaW5nL3NyYy9saWIvbWV0YWRhdGEvZGVjb3JhdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFNUQsU0FBUyxtQkFBbUIsQ0FBQyxNQUFXO0lBQ3RDLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFNUMsT0FBTyxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksS0FBSyxRQUFRO1FBQ3hDLENBQUMsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUk7UUFDeEIsQ0FBQyxDQUFDLFNBQVMsQ0FBQztBQUNoQixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsV0FBVyxDQUFDLE9BQXlCO0lBQ25ELE9BQU8sVUFDTCxNQUFXLEVBQ1gsV0FBbUIsRUFDbkIsVUFBK0I7UUFFL0IsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFDNUMsSUFBSSxDQUFDLDhCQUE4QixDQUFDLFdBQVcsQ0FBQyxFQUFFO1lBQ2hELElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztZQUNoQiw4QkFBOEIsQ0FBQyxXQUFXLENBQUMsR0FBRztnQkFDNUMsTUFBTTtnQkFDTixTQUFTLEVBQUUsU0FBUztnQkFDcEIsT0FBTyxFQUFFLG1CQUFtQixDQUFDLE1BQU0sQ0FBQzthQUNyQyxDQUFDO1NBQ0g7UUFDRCw4QkFBOEIsQ0FBQyxXQUFXLENBQUMsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUc7WUFDaEUsU0FBUyxFQUFFLE9BQU87U0FDbkIsQ0FBQztJQUNKLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sVUFBVSx5QkFBeUIsQ0FDdkMsU0FBb0M7SUFFcEMsT0FBTyxVQUFVLFdBQWdCO1FBQy9CLElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDckQsOEJBQThCLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHO2dCQUNqRCxTQUFTO2dCQUNULE1BQU0sRUFBRSxFQUFFO2dCQUNWLE9BQU8sRUFBRSxtQkFBbUIsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDO2FBQ3BELENBQUM7U0FDSDthQUFNO1lBQ0wsOEJBQThCLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7U0FDeEU7SUFDSCxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXBwR2VuRmllbGRQYXJhbSwgTW9uaXRvcmluZ0FwcEdlbkNvbXBvbmVudCB9IGZyb20gJy4vZGVmaW5pdGlvbnMnO1xuaW1wb3J0IHsgTU9OSVRPUklOR19DT01QT05FTlRTX01FVEFEQVRBIH0gZnJvbSAnLi9tZXRhZGF0YSc7XG5cbmZ1bmN0aW9uIGdldEV4dGVuZHNDbGFzc05hbWUodGFyZ2V0OiBhbnkpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICBjb25zdCBwcm90byA9IE9iamVjdC5nZXRQcm90b3R5cGVPZih0YXJnZXQpO1xuXG4gIHJldHVybiBwcm90by5jb25zdHJ1Y3Rvci5uYW1lICE9PSAnT2JqZWN0J1xuICAgID8gcHJvdG8uY29uc3RydWN0b3IubmFtZVxuICAgIDogdW5kZWZpbmVkO1xufVxuXG4vKipcbiAqIEBkZXByZWNhdGVkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBBcHBHZW5GaWVsZChvcHRpb25zOiBBcHBHZW5GaWVsZFBhcmFtKSB7XG4gIHJldHVybiBmdW5jdGlvbiAoXG4gICAgdGFyZ2V0OiBhbnksXG4gICAgcHJvcGVydHlLZXk6IHN0cmluZyxcbiAgICBkZXNjcmlwdG9yPzogUHJvcGVydHlEZXNjcmlwdG9yXG4gICkge1xuICAgIGNvbnN0IGNvbXBvbmVudElkID0gdGFyZ2V0LmNvbnN0cnVjdG9yLm5hbWU7XG4gICAgaWYgKCFNT05JVE9SSU5HX0NPTVBPTkVOVFNfTUVUQURBVEFbY29tcG9uZW50SWRdKSB7XG4gICAgICBsZXQgZmllbGRzID0ge307XG4gICAgICBNT05JVE9SSU5HX0NPTVBPTkVOVFNfTUVUQURBVEFbY29tcG9uZW50SWRdID0ge1xuICAgICAgICBmaWVsZHMsXG4gICAgICAgIGRlY29yYXRvcjogdW5kZWZpbmVkLFxuICAgICAgICBleHRlbmRzOiBnZXRFeHRlbmRzQ2xhc3NOYW1lKHRhcmdldCksXG4gICAgICB9O1xuICAgIH1cbiAgICBNT05JVE9SSU5HX0NPTVBPTkVOVFNfTUVUQURBVEFbY29tcG9uZW50SWRdLmZpZWxkc1twcm9wZXJ0eUtleV0gPSB7XG4gICAgICBkZWNvcmF0b3I6IG9wdGlvbnMsXG4gICAgfTtcbiAgfTtcbn1cblxuLyoqXG4gKiBAZGVwcmVjYXRlZFxuICovXG5leHBvcnQgZnVuY3Rpb24gTW9uaXRvcmluZ0FwcEdlbkNvbXBvbmVudChcbiAgZGVjb3JhdG9yOiBNb25pdG9yaW5nQXBwR2VuQ29tcG9uZW50XG4pIHtcbiAgcmV0dXJuIGZ1bmN0aW9uIChjb25zdHJ1Y3RvcjogYW55KSB7XG4gICAgaWYgKCFNT05JVE9SSU5HX0NPTVBPTkVOVFNfTUVUQURBVEFbY29uc3RydWN0b3IubmFtZV0pIHtcbiAgICAgIE1PTklUT1JJTkdfQ09NUE9ORU5UU19NRVRBREFUQVtjb25zdHJ1Y3Rvci5uYW1lXSA9IHtcbiAgICAgICAgZGVjb3JhdG9yLFxuICAgICAgICBmaWVsZHM6IHt9LFxuICAgICAgICBleHRlbmRzOiBnZXRFeHRlbmRzQ2xhc3NOYW1lKGNvbnN0cnVjdG9yLnByb3RvdHlwZSksXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICBNT05JVE9SSU5HX0NPTVBPTkVOVFNfTUVUQURBVEFbY29uc3RydWN0b3IubmFtZV0uZGVjb3JhdG9yID0gZGVjb3JhdG9yO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==