32 lines
751 B
JavaScript
32 lines
751 B
JavaScript
/**
|
|
* Copyright (c) HashiCorp, Inc.
|
|
* SPDX-License-Identifier: MPL-2.0
|
|
*/
|
|
|
|
import { assert } from '@ember/debug';
|
|
import Component from '@glimmer/component';
|
|
import { action } from '@ember/object';
|
|
import { tracked } from '@glimmer/tracking';
|
|
|
|
export default class WrapTtlComponent extends Component {
|
|
@tracked
|
|
wrapResponse = true;
|
|
|
|
constructor() {
|
|
super(...arguments);
|
|
assert('`onChange` handler is a required attr in `' + this.toString() + '`.', this.args.onChange);
|
|
}
|
|
|
|
get wrapTTL() {
|
|
const { wrapResponse, ttl } = this;
|
|
return wrapResponse ? ttl : null;
|
|
}
|
|
|
|
@action
|
|
changedValue(ttlObj) {
|
|
this.wrapResponse = ttlObj.enabled;
|
|
this.ttl = ttlObj.goSafeTimeString;
|
|
this.args.onChange(this.wrapTTL);
|
|
}
|
|
}
|