Update model request interface and references

This commit is contained in:
gconsidine
2017-11-09 17:01:32 -05:00
parent 4cd2f93c31
commit e8fd40ace0
15 changed files with 260 additions and 209 deletions

View File

@@ -45,6 +45,7 @@ module.exports = {
ignoreTemplateLiterals: true, ignoreTemplateLiterals: true,
}], }],
'no-continue': 'off', 'no-continue': 'off',
'no-debugger': 'off',
'no-mixed-operators': 'off', 'no-mixed-operators': 'off',
'no-param-reassign': 'off', 'no-param-reassign': 'off',
'no-plusplus': 'off', 'no-plusplus': 'off',

View File

@@ -42,7 +42,7 @@ function AddCredentialsController (models, $state, strings) {
vm.form.save = data => { vm.form.save = data => {
data.user = me.get('id'); data.user = me.get('id');
return credential.request('post', data); return credential.request('post', { data });
}; };
vm.form.onSaveSuccess = res => { vm.form.onSaveSuccess = res => {

View File

@@ -88,7 +88,7 @@ function EditCredentialsController (models, $state, $scope, strings) {
data.user = me.get('id'); data.user = me.get('id');
credential.unset('inputs'); credential.unset('inputs');
return credential.request('put', data); return credential.request('put', { data });
}; };
vm.form.onSaveSuccess = () => { vm.form.onSaveSuccess = () => {

View File

@@ -2,33 +2,44 @@ let $http;
let $q; let $q;
let cache; let cache;
function request (method, resource) { function request (method, resource, config) {
if (Array.isArray(method)) { let req = this.parseRequestConfig(method, resource, config);
const promises = method.map((_method_, i) =>
this.request(_method_, Array.isArray(resource) ? resource[i] : resource)); if (Array.isArray(req.method)) {
const promises = req.method.map((_method, i) => {
const _resource = Array.isArray(req.resource) ? req.resource[i] : req.resource;
req = this.parseRequestConfig(_method, _resource, config);
if (this.isCacheable(req)) {
return this.requestWithCache(req);
}
return this.request(req);
});
return $q.all(promises); return $q.all(promises);
} }
if (this.isCacheable(method, resource)) { if (this.isCacheable(req)) {
return this.requestWithCache(method, resource); return this.requestWithCache(req);
} }
return this.http[method](resource); return this.http[req.method](req);
} }
function requestWithCache (method, resource) { function requestWithCache (config) {
const key = cache.createKey(method, this.path, resource); const key = cache.createKey(config.method, this.path, config.resource);
return cache.get(key) return cache.get(key)
.then(data => { .then(data => {
if (data) { if (data) {
this.model[method.toUpperCase()] = data; this.model[config.method.toUpperCase()] = data;
return data; return data;
} }
return this.http[method](resource) return this.http[config.method](config)
.then(res => { .then(res => {
cache.put(key, res.data); cache.put(key, res.data);
@@ -77,22 +88,22 @@ function search (params, config) {
}); });
} }
function httpGet (resource, config) { function httpGet (config = {}) {
const req = { const req = {
method: 'GET', method: 'GET',
url: this.path url: this.path
}; };
if (config && config.params) { if (config.params) {
req.params = config.params; req.params = config.params;
} }
if (typeof resource === 'object') { if (typeof config.resource === 'object') {
this.model.GET = resource; this.model.GET = config.resource;
return $q.resolve(); return $q.resolve();
} else if (resource) { } else if (config.resource) {
req.url = `${this.path}${resource}/`; req.url = `${this.path}${config.resource}/`;
} }
return $http(req) return $http(req)
@@ -103,40 +114,51 @@ function httpGet (resource, config) {
}); });
} }
function httpPost (data) { function httpPost (config = {}) {
const req = { const req = {
method: 'POST', method: 'POST',
url: this.path, url: this.path,
data data: config.data
}; };
return $http(req).then(res => { return $http(req)
this.model.GET = res.data; .then(res => {
this.model.GET = res.data;
return res; return res;
}); });
} }
function httpPut (changes) { function httpPatch (config = {}) {
const model = Object.assign(this.get(), changes); const req = {
method: 'PUT',
url: `${this.path}${this.get('id')}/`,
data: config.changes
};
return $http(req);
}
function httpPut (config = {}) {
const model = _.merge(this.get(), config.data);
const req = { const req = {
method: 'PUT', method: 'PUT',
url: `${this.path}${model.id}/`, url: `${this.path}${this.get('id')}/`,
data: model data: model
}; };
return $http(req).then(res => res); return $http(req);
} }
function httpOptions (resource) { function httpOptions (config = {}) {
const req = { const req = {
method: 'OPTIONS', method: 'OPTIONS',
url: this.path url: this.path
}; };
if (resource) { if (config.resource) {
req.url = `${this.path}${resource}/`; req.url = `${this.path}${config.resource}/`;
} }
return $http(req) return $http(req)
@@ -147,17 +169,17 @@ function httpOptions (resource) {
}); });
} }
function httpDelete (resource) { function httpDelete (config = {}) {
const req = { const req = {
method: 'DELETE', method: 'DELETE',
url: this.path url: this.path
}; };
if (resource) { if (config.resource) {
req.url = `${this.path}${resource}/`; req.url = `${this.path}${config.resource}/`;
} }
return $http(req).then(res => res); return $http(req);
} }
function options (keys) { function options (keys) {
@@ -367,29 +389,19 @@ function graft (id) {
} }
function getDependentResourceCounts (id) { function getDependentResourceCounts (id) {
if (this.setDependentResources) { this.setDependentResources(id);
this.setDependentResources(id);
} else {
return Promise.resolve([]);
}
const dependentResourcePromises = []; const promises = [];
this.dependentResources.forEach(dependentResource => { this.dependentResources.forEach(resource => {
const config = {}; promises.push(resource.model.request('get', resource.params)
.then(res => ({
if (dependentResource.params) { label: resource.model.label,
config.params = dependentResource.params; count: res.data.count
}
dependentResourcePromises.push(dependentResource.model.http.get(undefined, config)
.then((val) => ({
label: dependentResource.model.label,
count: val.data.count
}))); })));
}); });
return Promise.all(dependentResourcePromises); return Promise.all(promises);
} }
/** /**
@@ -401,20 +413,22 @@ function getDependentResourceCounts (id) {
* @arg {string=} method - Populate the model with `GET` or `OPTIONS` data. * @arg {string=} method - Populate the model with `GET` or `OPTIONS` data.
* @arg {(string|Object)=} resource - An `id` reference to a particular * @arg {(string|Object)=} resource - An `id` reference to a particular
* resource or an existing model's data. * resource or an existing model's data.
* @arg {boolean=} isGraft - Create a new instance from existing model data. * @arg {config=} config - Create a new instance from existing model data.
* *
* @returns {(Object|Promise)} - Returns a reference to the model instance * @returns {(Object|Promise)} - Returns a reference to the model instance
* if an empty instance or graft is created. Otherwise, a promise yielding * if an empty instance or graft is created. Otherwise, a promise yielding
* a model instance is returned. * a model instance is returned.
*/ */
function create (method, resource, isGraft, config) { function create (method, resource, config) {
if (!method) { const req = this.parseRequestConfig(method, resource, config);
if (!req || !req.method) {
return this; return this;
} }
this.promise = this.request(method, resource, config); this.promise = this.request(req);
if (isGraft) { if (req.graft) {
return this; return this;
} }
@@ -422,6 +436,40 @@ function create (method, resource, isGraft, config) {
.then(() => this); .then(() => this);
} }
function parseRequestConfig (method, resource, config) {
if (!method) {
return null;
}
let req = {};
if (Array.isArray(method)) {
if (Array.isArray(resource)) {
req.resource = resource;
} else if (typeof resource === 'object') {
req = resource;
}
req.method = method;
} else if (typeof method === 'string') {
if (typeof resource === 'object') {
req = resource;
} else {
req.resource = resource;
}
req.method = method;
} else if (typeof method === 'object') {
req = method;
} else {
req = config;
req.method = method;
req.resource = resource;
}
return req;
}
/** /**
* Base functionality for API interaction. * Base functionality for API interaction.
* *
@@ -444,6 +492,7 @@ function BaseModel (path, settings) {
this.match = match; this.match = match;
this.normalizePath = normalizePath; this.normalizePath = normalizePath;
this.options = options; this.options = options;
this.parseRequestConfig = parseRequestConfig;
this.request = request; this.request = request;
this.requestWithCache = requestWithCache; this.requestWithCache = requestWithCache;
this.search = search; this.search = search;
@@ -455,6 +504,7 @@ function BaseModel (path, settings) {
this.http = { this.http = {
get: httpGet.bind(this), get: httpGet.bind(this),
options: httpOptions.bind(this), options: httpOptions.bind(this),
patch: httpPatch.bind(this),
post: httpPost.bind(this), post: httpPost.bind(this),
put: httpPut.bind(this), put: httpPut.bind(this),
delete: httpDelete.bind(this) delete: httpDelete.bind(this)

View File

@@ -1,5 +1,5 @@
let $log; let $log;
let BaseModel; let Base;
function getTruncatedVersion () { function getTruncatedVersion () {
let version; let version;
@@ -17,18 +17,18 @@ function isOpen () {
return this.get('license_info.license_type') === 'open'; return this.get('license_info.license_type') === 'open';
} }
function ConfigModel (method, resource, graft) { function ConfigModel (method, resource, config) {
BaseModel.call(this, 'config', { cache: true }); Base.call(this, 'config', { cache: true });
this.Constructor = ConfigModel; this.Constructor = ConfigModel;
this.getTruncatedVersion = getTruncatedVersion; this.getTruncatedVersion = getTruncatedVersion;
this.isOpen = isOpen; this.isOpen = isOpen;
return this.create(method, resource, graft); return this.create(method, resource, config);
} }
function ConfigModelLoader (_BaseModel_, _$log_) { function ConfigModelLoader (BaseModel, _$log_) {
BaseModel = _BaseModel_; Base = BaseModel;
$log = _$log_; $log = _$log_;
return ConfigModel; return ConfigModel;

View File

@@ -1,11 +1,11 @@
const ENCRYPTED_VALUE = '$encrypted$'; const ENCRYPTED_VALUE = '$encrypted$';
let BaseModel; let Base;
let ProjectModel; let Project;
let JobTemplateModel; let JobTemplate;
let InventoryModel; let Inventory;
let InventorySourceModel; let InventorySource;
let ModelsStrings; let strings;
function createFormSchema (method, config) { function createFormSchema (method, config) {
if (!config) { if (!config) {
@@ -48,26 +48,26 @@ function assignInputGroupValues (inputs) {
function setDependentResources (id) { function setDependentResources (id) {
this.dependentResources = [ this.dependentResources = [
{ {
model: new ProjectModel(), model: new Project(),
params: { params: {
credential: id credential: id
} }
}, },
{ {
model: new JobTemplateModel(), model: new JobTemplate(),
params: { params: {
credential: id, credential: id,
ask_credential_on_launch: false ask_credential_on_launch: false
} }
}, },
{ {
model: new InventoryModel(), model: new Inventory(),
params: { params: {
insights_credential: id insights_credential: id
} }
}, },
{ {
model: new InventorySourceModel(), model: new InventorySource(),
params: { params: {
credential: id credential: id
} }
@@ -75,32 +75,32 @@ function setDependentResources (id) {
]; ];
} }
function CredentialModel (method, resource, graft) { function CredentialModel (method, resource, config) {
BaseModel.call(this, 'credentials'); Base.call(this, 'credentials');
this.Constructor = CredentialModel; this.Constructor = CredentialModel;
this.createFormSchema = createFormSchema.bind(this); this.createFormSchema = createFormSchema.bind(this);
this.assignInputGroupValues = assignInputGroupValues.bind(this); this.assignInputGroupValues = assignInputGroupValues.bind(this);
this.setDependentResources = setDependentResources.bind(this); this.setDependentResources = setDependentResources.bind(this);
this.label = ModelsStrings.get('labels.CREDENTIAL'); this.label = strings.get('labels.CREDENTIAL');
return this.create(method, resource, graft); return this.create(method, resource, config);
} }
function CredentialModelLoader ( function CredentialModelLoader (
_BaseModel_, BaseModel,
_ProjectModel_, ProjectModel,
_JobTemplateModel_, JobTemplateModel,
_InventoryModel_, InventoryModel,
_InventorySourceModel_, InventorySourceModel,
_ModelsStrings_ ModelsStrings
) { ) {
BaseModel = _BaseModel_; Base = BaseModel;
ProjectModel = _ProjectModel_; Project = ProjectModel;
JobTemplateModel = _JobTemplateModel_; JobTemplate = JobTemplateModel;
InventoryModel = _InventoryModel_; Inventory = InventoryModel;
InventorySourceModel = _InventorySourceModel_; InventorySource = InventorySourceModel;
ModelsStrings = _ModelsStrings_; strings = ModelsStrings;
return CredentialModel; return CredentialModel;
} }

View File

@@ -1,6 +1,6 @@
let BaseModel; let Base;
let CredentialModel; let Credential;
let ModelsStrings; let strings;
function categorizeByKind () { function categorizeByKind () {
const group = {}; const group = {};
@@ -35,7 +35,7 @@ function mergeInputProperties () {
function setDependentResources (id) { function setDependentResources (id) {
this.dependentResources = [ this.dependentResources = [
{ {
model: new CredentialModel(), model: new Credential(),
params: { params: {
credential_type: id credential_type: id
} }
@@ -43,26 +43,26 @@ function setDependentResources (id) {
]; ];
} }
function CredentialTypeModel (method, resource, graft) { function CredentialTypeModel (method, resource, config) {
BaseModel.call(this, 'credential_types'); Base.call(this, 'credential_types');
this.Constructor = CredentialTypeModel; this.Constructor = CredentialTypeModel;
this.categorizeByKind = categorizeByKind.bind(this); this.categorizeByKind = categorizeByKind.bind(this);
this.mergeInputProperties = mergeInputProperties.bind(this); this.mergeInputProperties = mergeInputProperties.bind(this);
this.setDependentResources = setDependentResources.bind(this); this.setDependentResources = setDependentResources.bind(this);
this.label = ModelsStrings.get('labels.CREDENTIAL_TYPE'); this.label = strings.get('labels.CREDENTIAL_TYPE');
return this.create(method, resource, graft); return this.create(method, resource, config);
} }
function CredentialTypeModelLoader ( function CredentialTypeModelLoader (
_BaseModel_, BaseModel,
_CredentialModel_, CredentialModel,
_ModelsStrings_ ModelsStrings
) { ) {
BaseModel = _BaseModel_; Base = BaseModel;
CredentialModel = _CredentialModel_; Credential = CredentialModel;
ModelsStrings = _ModelsStrings_; strings = ModelsStrings;
return CredentialTypeModel; return CredentialTypeModel;
} }

View File

@@ -1,11 +1,11 @@
let BaseModel; let Base;
let JobTemplateModel; let JobTemplate;
let ModelsStrings; let strings;
function setDependentResources (id) { function setDependentResources (id) {
this.dependentResources = [ this.dependentResources = [
{ {
model: new JobTemplateModel(), model: new JobTemplate(),
params: { params: {
inventory: id inventory: id
} }
@@ -13,24 +13,24 @@ function setDependentResources (id) {
]; ];
} }
function InventoryModel (method, resource, graft) { function InventoryModel (method, resource, config) {
BaseModel.call(this, 'inventories'); Base.call(this, 'inventories');
this.Constructor = InventoryModel; this.Constructor = InventoryModel;
this.setDependentResources = setDependentResources.bind(this); this.setDependentResources = setDependentResources.bind(this);
this.label = ModelsStrings.get('labels.INVENTORY'); this.label = strings.get('labels.INVENTORY');
return this.create(method, resource, graft); return this.create(method, resource, config);
} }
function InventoryModelLoader ( function InventoryModelLoader (
_BaseModel_, BaseModel,
_JobTemplateModel_, JobTemplateModel,
_ModelsStrings_ ModelsStrings
) { ) {
BaseModel = _BaseModel_; Base = BaseModel;
JobTemplateModel = _JobTemplateModel_; JobTemplate = JobTemplateModel;
ModelsStrings = _ModelsStrings_; strings = ModelsStrings;
return InventoryModel; return InventoryModel;
} }

View File

@@ -1,11 +1,11 @@
let BaseModel; let Base;
let InventorySourceModel; let InventorySource;
let ModelsStrings; let strings;
function setDependentResources (id) { function setDependentResources (id) {
this.dependentResources = [ this.dependentResources = [
{ {
model: new InventorySourceModel(), model: new InventorySource(),
params: { params: {
source_script: id source_script: id
} }
@@ -13,24 +13,24 @@ function setDependentResources (id) {
]; ];
} }
function InventoryScriptModel (method, resource, graft) { function InventoryScriptModel (method, resource, config) {
BaseModel.call(this, 'inventory_scripts'); Base.call(this, 'inventory_scripts');
this.Constructor = InventoryScriptModel; this.Constructor = InventoryScriptModel;
this.setDependentResources = setDependentResources.bind(this); this.setDependentResources = setDependentResources.bind(this);
this.label = ModelsStrings.get('labels.INVENTORY_SCRIPT'); this.label = strings.get('labels.INVENTORY_SCRIPT');
return this.create(method, resource, graft); return this.create(method, resource, config);
} }
function InventoryScriptModelLoader ( function InventoryScriptModelLoader (
_BaseModel_, BaseModel,
_InventorySourceModel_, InventorySourceModel,
_ModelsStrings_ ModelsStrings
) { ) {
BaseModel = _BaseModel_; Base = BaseModel;
InventorySourceModel = _InventorySourceModel_; InventorySource = InventorySourceModel;
ModelsStrings = _ModelsStrings_; strings = ModelsStrings;
return InventoryScriptModel; return InventoryScriptModel;
} }

View File

@@ -1,11 +1,11 @@
let BaseModel; let Base;
let WorkflowJobTemplateNodeModel; let WorkflowJobTemplateNode;
let ModelsStrings; let strings;
function setDependentResources (id) { function setDependentResources (id) {
this.dependentResources = [ this.dependentResources = [
{ {
model: new WorkflowJobTemplateNodeModel(), model: new WorkflowJobTemplateNode(),
params: { params: {
unified_job_template: id unified_job_template: id
} }
@@ -13,24 +13,24 @@ function setDependentResources (id) {
]; ];
} }
function InventorySourceModel (method, resource, graft) { function InventorySourceModel (method, resource, config) {
BaseModel.call(this, 'inventory_sources'); Base.call(this, 'inventory_sources');
this.Constructor = InventorySourceModel; this.Constructor = InventorySourceModel;
this.label = strings.get('labels.INVENTORY_SOURCE');
this.setDependentResources = setDependentResources.bind(this); this.setDependentResources = setDependentResources.bind(this);
this.label = ModelsStrings.get('labels.INVENTORY_SOURCE');
return this.create(method, resource, graft); return this.create(method, resource, config);
} }
function InventorySourceModelLoader ( function InventorySourceModelLoader (
_BaseModel_, BaseModel,
_WorkflowJobTemplateNodeModel_, WorkflowJobTemplateNodeModel,
_ModelsStrings_ ModelsStrings
) { ) {
BaseModel = _BaseModel_; Base = BaseModel;
WorkflowJobTemplateNodeModel = _WorkflowJobTemplateNodeModel_; WorkflowJobTemplateNode = WorkflowJobTemplateNodeModel;
ModelsStrings = _ModelsStrings_; strings = ModelsStrings;
return InventorySourceModel; return InventorySourceModel;
} }

View File

@@ -1,11 +1,11 @@
let BaseModel; let Base;
let WorkflowJobTemplateNodeModel; let WorkflowJobTemplateNode;
let ModelsStrings; let strings;
function setDependentResources (id) { function setDependentResources (id) {
this.dependentResources = [ this.dependentResources = [
{ {
model: new WorkflowJobTemplateNodeModel(), model: new WorkflowJobTemplateNode(),
params: { params: {
unified_job_template: id unified_job_template: id
} }
@@ -13,24 +13,24 @@ function setDependentResources (id) {
]; ];
} }
function JobTemplateModel (method, resource, graft) { function JobTemplateModel (method, resource, config) {
BaseModel.call(this, 'job_templates'); Base.call(this, 'job_templates');
this.Constructor = JobTemplateModel; this.Constructor = JobTemplateModel;
this.setDependentResources = setDependentResources.bind(this); this.setDependentResources = setDependentResources.bind(this);
this.label = ModelsStrings.get('labels.JOB_TEMPLATE'); this.label = strings.get('labels.JOB_TEMPLATE');
return this.create(method, resource, graft); return this.create(method, resource, config);
} }
function JobTemplateModelLoader ( function JobTemplateModelLoader (
_BaseModel_, BaseModel,
_WorkflowJobTemplateNodeModel_, WorkflowJobTemplateNodeModel,
_ModelsStrings_ ModelsStrings
) { ) {
BaseModel = _BaseModel_; Base = BaseModel;
WorkflowJobTemplateNodeModel = _WorkflowJobTemplateNodeModel_; WorkflowJobTemplateNode = WorkflowJobTemplateNodeModel;
ModelsStrings = _ModelsStrings_; strings = ModelsStrings;
return JobTemplateModel; return JobTemplateModel;
} }

View File

@@ -1,11 +1,11 @@
let BaseModel; let Base;
function MeModel (method, resource, graft) { function MeModel (method, resource, config) {
BaseModel.call(this, 'me'); Base.call(this, 'me');
this.Constructor = MeModel; this.Constructor = MeModel;
return this.create(method, resource, graft) return this.create(method, resource, config)
.then(() => { .then(() => {
if (this.has('results')) { if (this.has('results')) {
_.merge(this.model.GET, this.get('results[0]')); _.merge(this.model.GET, this.get('results[0]'));
@@ -16,8 +16,8 @@ function MeModel (method, resource, graft) {
}); });
} }
function MeModelLoader (_BaseModel_) { function MeModelLoader (BaseModel) {
BaseModel = _BaseModel_; Base = BaseModel;
return MeModel; return MeModel;
} }

View File

@@ -1,21 +1,21 @@
let BaseModel; let Base;
let ModelsStrings; let strings;
function OrganizationModel (method, resource, graft) { function OrganizationModel (method, resource, config) {
BaseModel.call(this, 'organizations'); Base.call(this, 'organizations');
this.Constructor = OrganizationModel; this.Constructor = OrganizationModel;
this.label = ModelsStrings.get('labels.ORGANIZATION'); this.label = strings.get('labels.ORGANIZATION');
return this.create(method, resource, graft); return this.create(method, resource, config);
} }
function OrganizationModelLoader ( function OrganizationModelLoader (
_BaseModel_, BaseModel,
_ModelsStrings_ ModelsStrings
) { ) {
BaseModel = _BaseModel_; Base = BaseModel;
ModelsStrings = _ModelsStrings_; strings = ModelsStrings;
return OrganizationModel; return OrganizationModel;
} }

View File

@@ -1,25 +1,25 @@
let BaseModel; let Base;
let JobTemplateModel; let JobTemplate;
let WorkflowJobTemplateNodeModel; let WorkflowJobTemplateNode;
let InventorySourceModel; let InventorySource;
let ModelsStrings; let strings;
function setDependentResources (id) { function setDependentResources (id) {
this.dependentResources = [ this.dependentResources = [
{ {
model: new JobTemplateModel(), model: new JobTemplate(),
params: { params: {
project: id project: id
} }
}, },
{ {
model: new WorkflowJobTemplateNodeModel(), model: new WorkflowJobTemplateNode(),
params: { params: {
unified_job_template: id unified_job_template: id
} }
}, },
{ {
model: new InventorySourceModel(), model: new InventorySource(),
params: { params: {
source_project: id source_project: id
} }
@@ -27,28 +27,28 @@ function setDependentResources (id) {
]; ];
} }
function ProjectModel (method, resource, graft) { function ProjectModel (method, resource, config) {
BaseModel.call(this, 'projects'); Base.call(this, 'projects');
this.Constructor = ProjectModel; this.Constructor = ProjectModel;
this.setDependentResources = setDependentResources.bind(this); this.setDependentResources = setDependentResources.bind(this);
this.label = ModelsStrings.get('labels.PROJECT'); this.label = strings.get('labels.PROJECT');
return this.create(method, resource, graft); return this.create(method, resource, config);
} }
function ProjectModelLoader ( function ProjectModelLoader (
_BaseModel_, BaseModel,
_JobTemplateModel_, JobTemplateModel,
_WorkflowJobTemplateNodeModel_, WorkflowJobTemplateNodeModel,
_InventorySourceModel_, InventorySourceModel,
_ModelsStrings_ ModelsStrings
) { ) {
BaseModel = _BaseModel_; Base = BaseModel;
JobTemplateModel = _JobTemplateModel_; JobTemplate = JobTemplateModel;
WorkflowJobTemplateNodeModel = _WorkflowJobTemplateNodeModel_; WorkflowJobTemplateNode = WorkflowJobTemplateNodeModel;
InventorySourceModel = _InventorySourceModel_; InventorySource = InventorySourceModel;
ModelsStrings = _ModelsStrings_; strings = ModelsStrings;
return ProjectModel; return ProjectModel;
} }

View File

@@ -1,21 +1,21 @@
let BaseModel; let Base;
let ModelsStrings; let strings;
function WorkflowJobTemplateNodeModel (method, resource, graft) { function WorkflowJobTemplateNodeModel (method, resource, config) {
BaseModel.call(this, 'workflow_job_template_nodes'); Base.call(this, 'workflow_job_template_nodes');
this.Constructor = WorkflowJobTemplateNodeModel; this.Constructor = WorkflowJobTemplateNodeModel;
this.label = ModelsStrings.get('labels.WORKFLOW_JOB_TEMPLATE_NODE'); this.label = strings.get('labels.WORKFLOW_JOB_TEMPLATE_NODE');
return this.create(method, resource, graft); return this.create(method, resource, config);
} }
function WorkflowJobTemplateNodeModelLoader ( function WorkflowJobTemplateNodeModelLoader (
_BaseModel_, BaseModel,
_ModelsStrings_ ModelsStrings
) { ) {
BaseModel = _BaseModel_; Base = BaseModel;
ModelsStrings = _ModelsStrings_; strings = ModelsStrings;
return WorkflowJobTemplateNodeModel; return WorkflowJobTemplateNodeModel;
} }