25 lines
625 B
JavaScript
25 lines
625 B
JavaScript
/**
|
|
* Copyright (c) HashiCorp, Inc.
|
|
* SPDX-License-Identifier: MPL-2.0
|
|
*/
|
|
|
|
import Model, { attr } from '@ember-data/model';
|
|
import { withExpandedAttributes } from 'vault/decorators/model-expanded-attributes';
|
|
|
|
@withExpandedAttributes()
|
|
export default class NamespaceModel extends Model {
|
|
@attr('string', {
|
|
validationAttr: 'pathIsValid',
|
|
invalidMessage: 'You have entered and invalid path please only include letters, numbers, -, ., and _.',
|
|
})
|
|
path;
|
|
|
|
get pathIsValid() {
|
|
return this.path && this.path.match(/^[\w\d-.]+$/g);
|
|
}
|
|
|
|
get fields() {
|
|
return ['path'].map((f) => this.allByKey[f]);
|
|
}
|
|
}
|