@castlabs/ui 4.18.6 → 4.19.0

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.
@@ -2625,7 +2625,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
2625
2625
  name: 'ClUI',
2626
2626
  computed: {
2627
2627
  version: function () {
2628
- return "4.18.6" ?? 0;
2628
+ return "4.19.0" ?? 0;
2629
2629
  }
2630
2630
  }
2631
2631
  }));
@@ -4045,15 +4045,15 @@ ClDropzone_template.install = Vue => {
4045
4045
  Vue.component(ClDropzone_template.name ?? 'ClNoName', ClDropzone_template);
4046
4046
  };
4047
4047
  /* harmony default export */ var ClDropzone = (ClDropzone_template);
4048
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/form/ClField/template.vue?vue&type=template&id=747d9c1a&ts=true
4048
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/form/ClField/template.vue?vue&type=template&id=18037b9c&ts=true
4049
4049
 
4050
- const templatevue_type_template_id_747d9c1a_ts_true_hoisted_1 = ["for"];
4051
- const templatevue_type_template_id_747d9c1a_ts_true_hoisted_2 = {
4050
+ const templatevue_type_template_id_18037b9c_ts_true_hoisted_1 = ["for"];
4051
+ const templatevue_type_template_id_18037b9c_ts_true_hoisted_2 = {
4052
4052
  key: 0,
4053
4053
  class: "required"
4054
4054
  };
4055
- const templatevue_type_template_id_747d9c1a_ts_true_hoisted_3 = ["id", "disabled", "required", "autofocus", "placeholder"];
4056
- const templatevue_type_template_id_747d9c1a_ts_true_hoisted_4 = ["id", "disabled", "required", "autofocus"];
4055
+ const templatevue_type_template_id_18037b9c_ts_true_hoisted_3 = ["id", "disabled", "required", "autofocus", "placeholder"];
4056
+ const templatevue_type_template_id_18037b9c_ts_true_hoisted_4 = ["id", "disabled", "required", "autofocus"];
4057
4057
  const _hoisted_5 = ["id", "type", "placeholder", "minlength", "maxlength", "pattern", "disabled", "required", "autofocus"];
4058
4058
  const _hoisted_6 = ["id", "for"];
4059
4059
  const _hoisted_7 = {
@@ -4063,14 +4063,14 @@ const _hoisted_8 = {
4063
4063
  key: 1,
4064
4064
  class: "valid-feedback valid-feedback-none"
4065
4065
  };
4066
- function templatevue_type_template_id_747d9c1a_ts_true_render(_ctx, _cache, $props, $setup, $data, $options) {
4066
+ function templatevue_type_template_id_18037b9c_ts_true_render(_ctx, _cache, $props, $setup, $data, $options) {
4067
4067
  return (0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)(external_vue_namespaceObject.Fragment, null, [_ctx.label ? ((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("label", {
4068
4068
  key: 0,
4069
4069
  for: _ctx.$uid,
4070
4070
  class: (0,external_vue_namespaceObject.normalizeClass)(["form-label", {
4071
4071
  disabled: _ctx.disabled
4072
4072
  }])
4073
- }, [(0,external_vue_namespaceObject.createTextVNode)((0,external_vue_namespaceObject.toDisplayString)(_ctx.label), 1), _ctx.required ? ((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("span", templatevue_type_template_id_747d9c1a_ts_true_hoisted_2, "*")) : (0,external_vue_namespaceObject.createCommentVNode)("", true)], 10, templatevue_type_template_id_747d9c1a_ts_true_hoisted_1)) : (0,external_vue_namespaceObject.createCommentVNode)("", true), _ctx.type === 'textarea' ? (0,external_vue_namespaceObject.withDirectives)(((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("textarea", (0,external_vue_namespaceObject.mergeProps)({
4073
+ }, [(0,external_vue_namespaceObject.createTextVNode)((0,external_vue_namespaceObject.toDisplayString)(_ctx.label), 1), _ctx.required ? ((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("span", templatevue_type_template_id_18037b9c_ts_true_hoisted_2, "*")) : (0,external_vue_namespaceObject.createCommentVNode)("", true)], 10, templatevue_type_template_id_18037b9c_ts_true_hoisted_1)) : (0,external_vue_namespaceObject.createCommentVNode)("", true), _ctx.type === 'textarea' ? (0,external_vue_namespaceObject.withDirectives)(((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("textarea", (0,external_vue_namespaceObject.mergeProps)({
4074
4074
  key: 1,
4075
4075
  id: _ctx.$uid
4076
4076
  }, _ctx.$attrs, {
@@ -4081,29 +4081,27 @@ function templatevue_type_template_id_747d9c1a_ts_true_render(_ctx, _cache, $pro
4081
4081
  required: _ctx.required,
4082
4082
  autofocus: _ctx.autofocus,
4083
4083
  placeholder: _ctx.placeholder,
4084
- onInput: _cache[1] || (_cache[1] = $event => _ctx.$emit('update:modelValue', _ctx.modelValue)),
4085
- onBlur: _cache[2] || (_cache[2] =
4086
- //@ts-ignore
4087
- (...args) => _ctx.validate && _ctx.validate(...args))
4088
- }), null, 16, templatevue_type_template_id_747d9c1a_ts_true_hoisted_3)), [[external_vue_namespaceObject.vModelText, _ctx.modelValue]]) : _ctx.type === 'select' ? (0,external_vue_namespaceObject.withDirectives)(((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("select", (0,external_vue_namespaceObject.mergeProps)({
4084
+ onInput: _cache[1] || (_cache[1] = $event => _ctx.validate()),
4085
+ onChange: _cache[2] || (_cache[2] = $event => _ctx.validate()),
4086
+ onBlur: _cache[3] || (_cache[3] = $event => _ctx.validate(true))
4087
+ }), null, 16, templatevue_type_template_id_18037b9c_ts_true_hoisted_3)), [[external_vue_namespaceObject.vModelText, _ctx.modelValue]]) : _ctx.type === 'select' ? (0,external_vue_namespaceObject.withDirectives)(((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("select", (0,external_vue_namespaceObject.mergeProps)({
4089
4088
  key: 2,
4090
4089
  id: _ctx.$uid,
4091
- "onUpdate:modelValue": _cache[3] || (_cache[3] = $event => _ctx.modelValue = $event),
4090
+ "onUpdate:modelValue": _cache[4] || (_cache[4] = $event => _ctx.modelValue = $event),
4092
4091
  class: ["form-select", _ctx.clazz],
4093
4092
  disabled: _ctx.disabled,
4094
4093
  required: _ctx.required,
4095
4094
  autofocus: _ctx.autofocus
4096
4095
  }, _ctx.$attrs, {
4097
- onChange: _cache[4] || (_cache[4] = $event => _ctx.validate()),
4098
- onBlur: _cache[5] || (_cache[5] =
4099
- //@ts-ignore
4100
- (...args) => _ctx.validate && _ctx.validate(...args))
4101
- }), [(0,external_vue_namespaceObject.renderSlot)(_ctx.$slots, "default")], 16, templatevue_type_template_id_747d9c1a_ts_true_hoisted_4)), [[external_vue_namespaceObject.vModelSelect, _ctx.modelValue]]) : (0,external_vue_namespaceObject.withDirectives)(((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("input", (0,external_vue_namespaceObject.mergeProps)({
4096
+ onInput: _cache[5] || (_cache[5] = $event => _ctx.validate()),
4097
+ onChange: _cache[6] || (_cache[6] = $event => _ctx.validate()),
4098
+ onBlur: _cache[7] || (_cache[7] = $event => _ctx.validate(true))
4099
+ }), [(0,external_vue_namespaceObject.renderSlot)(_ctx.$slots, "default")], 16, templatevue_type_template_id_18037b9c_ts_true_hoisted_4)), [[external_vue_namespaceObject.vModelSelect, _ctx.modelValue]]) : (0,external_vue_namespaceObject.withDirectives)(((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("input", (0,external_vue_namespaceObject.mergeProps)({
4102
4100
  key: 3,
4103
4101
  id: _ctx.$uid
4104
4102
  }, _ctx.$attrs, {
4105
4103
  ref: "input",
4106
- "onUpdate:modelValue": _cache[6] || (_cache[6] = $event => _ctx.modelValue = $event),
4104
+ "onUpdate:modelValue": _cache[8] || (_cache[8] = $event => _ctx.modelValue = $event),
4107
4105
  type: _ctx.type,
4108
4106
  class: _ctx.clazz,
4109
4107
  placeholder: _ctx.placeholder,
@@ -4113,11 +4111,9 @@ function templatevue_type_template_id_747d9c1a_ts_true_render(_ctx, _cache, $pro
4113
4111
  disabled: _ctx.disabled,
4114
4112
  required: _ctx.required,
4115
4113
  autofocus: _ctx.autofocus,
4116
- onInput: _cache[7] || (_cache[7] = $event => _ctx.$emit('update:modelValue', _ctx.modelValue)),
4117
- onChange: _cache[8] || (_cache[8] = $event => _ctx.changed(_ctx.modelValue)),
4118
- onBlur: _cache[9] || (_cache[9] =
4119
- //@ts-ignore
4120
- (...args) => _ctx.validate && _ctx.validate(...args))
4114
+ onInput: _cache[9] || (_cache[9] = $event => _ctx.validate()),
4115
+ onChange: _cache[10] || (_cache[10] = $event => _ctx.validate()),
4116
+ onBlur: _cache[11] || (_cache[11] = $event => _ctx.validate(true))
4121
4117
  }), null, 16, _hoisted_5)), [[external_vue_namespaceObject.vModelDynamic, _ctx.modelValue]]), _ctx.type === 'file' ? ((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("label", {
4122
4118
  key: 4,
4123
4119
  id: `${_ctx.$uid}-companion`,
@@ -4132,7 +4128,7 @@ function templatevue_type_template_id_747d9c1a_ts_true_render(_ctx, _cache, $pro
4132
4128
  }])
4133
4129
  }, (0,external_vue_namespaceObject.toDisplayString)(_ctx.help), 3)) : ((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("p", _hoisted_8))], 64)) : (0,external_vue_namespaceObject.createCommentVNode)("", true)], 64);
4134
4130
  }
4135
- ;// ./src/components/form/ClField/template.vue?vue&type=template&id=747d9c1a&ts=true
4131
+ ;// ./src/components/form/ClField/template.vue?vue&type=template&id=18037b9c&ts=true
4136
4132
 
4137
4133
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/form/ClField/template.vue?vue&type=script&lang=ts
4138
4134
 
@@ -4205,13 +4201,13 @@ function templatevue_type_template_id_747d9c1a_ts_true_render(_ctx, _cache, $pro
4205
4201
  default: undefined
4206
4202
  }
4207
4203
  },
4208
- emits: ['update:valid', 'update:modelValue'],
4204
+ emits: ['valid', 'invalid', 'changed', 'update:modelValue'],
4209
4205
  data() {
4210
4206
  return {
4211
4207
  valid: true,
4212
- modelValue: this.value || '',
4213
- invalidMessage: this.error || 'Input invalid.',
4214
- filePlaceholder: this.placeholder || 'Please select ...'
4208
+ modelValue: this.value ?? '',
4209
+ invalidMessage: this.error ?? 'Input invalid.',
4210
+ filePlaceholder: this.placeholder ?? 'Please select ...'
4215
4211
  };
4216
4212
  },
4217
4213
  computed: {
@@ -4234,72 +4230,69 @@ function templatevue_type_template_id_747d9c1a_ts_true_render(_ctx, _cache, $pro
4234
4230
  if (this.prevalidate) this.validate();
4235
4231
  },
4236
4232
  methods: {
4237
- runAutotrim: function (value) {
4233
+ runAutotrim: function () {
4238
4234
  if (this.autotrim) {
4239
4235
  const input = this.$refs.input;
4240
- input.value = (value ?? input.value).trim();
4236
+ input.value = input.value.trim();
4241
4237
  this.modelValue = input.value;
4242
- this.$emit('update:modelValue', this.modelValue);
4243
- }
4244
- },
4245
- changed: function (value) {
4246
- this.runAutotrim(value);
4247
- if (this.type === 'file') {
4248
- this.filePlaceholder = value.replace(/.*[/\\]/, '');
4249
- this.validate();
4250
4238
  }
4251
4239
  },
4252
4240
  focus: function () {
4253
4241
  this.$nextTick(() => {
4254
4242
  ;
4255
- this.$refs.input.focus();
4243
+ this.$refs.input?.focus();
4256
4244
  });
4257
4245
  },
4258
- validate: function () {
4259
- this.runAutotrim();
4246
+ validate: function (trim = false) {
4247
+ this.valid = true;
4248
+ if (trim && this.autotrim) this.runAutotrim();
4249
+ if (this.type === 'file') {
4250
+ this.filePlaceholder = this.modelValue.replace(/.*[/\\]/, '');
4251
+ }
4260
4252
  if (this.required && (this.modelValue?.length ?? 0) <= 0) {
4261
- this.invalidMessage = 'This field may not be blank.';
4262
- this.valid = false;
4253
+ this.setInvalid('This field may not be blank.');
4263
4254
  } else {
4264
4255
  switch (this.type) {
4265
4256
  case 'email':
4266
- this.valid = this.validateEMail();
4257
+ this.validateEMail();
4267
4258
  break;
4268
4259
  default:
4269
- this.valid = this.validateText();
4260
+ this.validateText();
4270
4261
  }
4271
4262
  }
4272
- this.$emit('update:valid', this.valid);
4273
- this.$emit('update:modelValue', this.modelValue);
4263
+ if (this.valid) this.setValid(this.modelValue);
4274
4264
  },
4275
4265
  validateText: function () {
4276
- if (this.minlength && (this.modelValue?.length ?? 0) < Number(this.minlength)) {
4277
- this.invalidMessage = this.error || `Please enter at least ${this.minlength} characters.`;
4278
- return false;
4266
+ const minlength = Number(this.minlength);
4267
+ const maxlength = Number(this.maxlength);
4268
+ if (this.minlength && (this.modelValue?.length ?? 0) < minlength) {
4269
+ this.setInvalid(this.error ?? `Please enter at least ${minlength} character` + (minlength > 1 ? 's.' : '.'));
4279
4270
  }
4280
- if (this.maxlength && (this.modelValue?.length ?? 0) > Number(this.maxlength)) {
4281
- this.invalidMessage = this.error || `Please enter at most ${this.minlength} characters.`;
4282
- return false;
4271
+ if (this.maxlength && (this.modelValue?.length ?? 0) > maxlength) {
4272
+ this.setInvalid(this.error ?? `Please enter at most ${maxlength} character` + (minlength > 1 ? 's.' : '.'));
4283
4273
  }
4284
4274
  if (this.pattern && !new RegExp(this.pattern, 'g').test(this.modelValue)) {
4285
- this.invalidMessage = this.error || 'Input invalid.';
4286
- return false;
4275
+ this.setInvalid(this.error);
4287
4276
  }
4288
- return true;
4289
4277
  },
4290
4278
  validateEMail: function () {
4291
- this.invalidMessage = 'Please enter a valid email address.';
4292
- return /^[^\s@]+@[^\s@]+\.[^\s@]+[^\s@.]$/.test(this.modelValue);
4279
+ if (!/^[^\s@]+@[^\s@]+\.[^\s@]+[^\s@.]$/.test(this.modelValue)) {
4280
+ this.setInvalid('Please enter a valid email address.');
4281
+ }
4293
4282
  },
4294
4283
  setValid: function (value = '') {
4295
4284
  this.valid = true;
4296
4285
  this.modelValue = value;
4297
- this.$emit('update:valid', this.valid);
4286
+ this.$emit('update:modelValue', this.modelValue);
4287
+ this.$emit('valid', this.help ?? '');
4288
+ this.$emit('changed', this.modelValue);
4298
4289
  },
4299
4290
  setInvalid: function (message) {
4300
4291
  this.valid = false;
4301
- this.invalidMessage = message;
4302
- this.$emit('update:valid', this.valid);
4292
+ this.invalidMessage = message ?? 'Input invalid.';
4293
+ this.$emit('update:modelValue', this.modelValue);
4294
+ this.$emit('invalid', this.invalidMessage);
4295
+ this.$emit('changed', this.modelValue);
4303
4296
  }
4304
4297
  }
4305
4298
  }));
@@ -4311,7 +4304,7 @@ function templatevue_type_template_id_747d9c1a_ts_true_render(_ctx, _cache, $pro
4311
4304
 
4312
4305
 
4313
4306
  ;
4314
- const ClField_template_exports_ = /*#__PURE__*/(0,exportHelper/* default */.A)(ClField_templatevue_type_script_lang_ts, [['render',templatevue_type_template_id_747d9c1a_ts_true_render]])
4307
+ const ClField_template_exports_ = /*#__PURE__*/(0,exportHelper/* default */.A)(ClField_templatevue_type_script_lang_ts, [['render',templatevue_type_template_id_18037b9c_ts_true_render]])
4315
4308
 
4316
4309
  /* harmony default export */ var ClField_template = (ClField_template_exports_);
4317
4310
  ;// ./src/components/form/ClField/index.ts
@@ -4424,31 +4417,31 @@ ClFieldCheck_template.install = Vue => {
4424
4417
  Vue.component(ClFieldCheck_template.name ?? 'ClNoName', ClFieldCheck_template);
4425
4418
  };
4426
4419
  /* harmony default export */ var ClFieldCheck = (ClFieldCheck_template);
4427
- ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/form/ClFieldGroup/template.vue?vue&type=template&id=9e079810&ts=true
4420
+ ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!./node_modules/vue-loader/dist/templateLoader.js??ruleSet[1].rules[4]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/form/ClFieldGroup/template.vue?vue&type=template&id=576088e6&ts=true
4428
4421
 
4429
- const templatevue_type_template_id_9e079810_ts_true_hoisted_1 = {
4422
+ const templatevue_type_template_id_576088e6_ts_true_hoisted_1 = {
4430
4423
  key: 0,
4431
4424
  class: "form-label"
4432
4425
  };
4433
- const templatevue_type_template_id_9e079810_ts_true_hoisted_2 = {
4426
+ const templatevue_type_template_id_576088e6_ts_true_hoisted_2 = {
4434
4427
  key: 0,
4435
4428
  class: "required"
4436
4429
  };
4437
- const templatevue_type_template_id_9e079810_ts_true_hoisted_3 = {
4430
+ const templatevue_type_template_id_576088e6_ts_true_hoisted_3 = {
4438
4431
  class: "invalid-feedback"
4439
4432
  };
4440
- const templatevue_type_template_id_9e079810_ts_true_hoisted_4 = {
4433
+ const templatevue_type_template_id_576088e6_ts_true_hoisted_4 = {
4441
4434
  key: 1,
4442
4435
  class: "valid-feedback"
4443
4436
  };
4444
- function templatevue_type_template_id_9e079810_ts_true_render(_ctx, _cache, $props, $setup, $data, $options) {
4445
- return (0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)(external_vue_namespaceObject.Fragment, null, [_ctx.label ? ((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("label", templatevue_type_template_id_9e079810_ts_true_hoisted_1, [(0,external_vue_namespaceObject.createTextVNode)((0,external_vue_namespaceObject.toDisplayString)(_ctx.label), 1), _ctx.required ? ((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("span", templatevue_type_template_id_9e079810_ts_true_hoisted_2, "*")) : (0,external_vue_namespaceObject.createCommentVNode)("", true)])) : (0,external_vue_namespaceObject.createCommentVNode)("", true), (0,external_vue_namespaceObject.createElementVNode)("div", {
4437
+ function templatevue_type_template_id_576088e6_ts_true_render(_ctx, _cache, $props, $setup, $data, $options) {
4438
+ return (0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)(external_vue_namespaceObject.Fragment, null, [_ctx.label ? ((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("label", templatevue_type_template_id_576088e6_ts_true_hoisted_1, [(0,external_vue_namespaceObject.createTextVNode)((0,external_vue_namespaceObject.toDisplayString)(_ctx.label), 1), _ctx.required ? ((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("span", templatevue_type_template_id_576088e6_ts_true_hoisted_2, "*")) : (0,external_vue_namespaceObject.createCommentVNode)("", true)])) : (0,external_vue_namespaceObject.createCommentVNode)("", true), (0,external_vue_namespaceObject.createElementVNode)("div", {
4446
4439
  class: (0,external_vue_namespaceObject.normalizeClass)(["input-group", {
4447
4440
  invalid: !_ctx.valid
4448
4441
  }])
4449
- }, [(0,external_vue_namespaceObject.renderSlot)(_ctx.$slots, "default")], 2), (0,external_vue_namespaceObject.createElementVNode)("p", templatevue_type_template_id_9e079810_ts_true_hoisted_3, (0,external_vue_namespaceObject.toDisplayString)(_ctx.invalidMessage), 1), _ctx.help ? ((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("p", templatevue_type_template_id_9e079810_ts_true_hoisted_4, (0,external_vue_namespaceObject.toDisplayString)(_ctx.help), 1)) : (0,external_vue_namespaceObject.createCommentVNode)("", true)], 64);
4442
+ }, [(0,external_vue_namespaceObject.renderSlot)(_ctx.$slots, "default")], 2), (0,external_vue_namespaceObject.createElementVNode)("p", templatevue_type_template_id_576088e6_ts_true_hoisted_3, (0,external_vue_namespaceObject.toDisplayString)(_ctx.invalidMessage), 1), _ctx.help ? ((0,external_vue_namespaceObject.openBlock)(), (0,external_vue_namespaceObject.createElementBlock)("p", templatevue_type_template_id_576088e6_ts_true_hoisted_4, (0,external_vue_namespaceObject.toDisplayString)(_ctx.help), 1)) : (0,external_vue_namespaceObject.createCommentVNode)("", true)], 64);
4450
4443
  }
4451
- ;// ./src/components/form/ClFieldGroup/template.vue?vue&type=template&id=9e079810&ts=true
4444
+ ;// ./src/components/form/ClFieldGroup/template.vue?vue&type=template&id=576088e6&ts=true
4452
4445
 
4453
4446
  ;// ./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib/index.js!./node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/components/form/ClFieldGroup/template.vue?vue&type=script&lang=ts
4454
4447
 
@@ -4473,22 +4466,20 @@ function templatevue_type_template_id_9e079810_ts_true_render(_ctx, _cache, $pro
4473
4466
  default: false
4474
4467
  }
4475
4468
  },
4476
- emits: ['update:valid'],
4477
4469
  data() {
4478
4470
  return {
4479
4471
  valid: true,
4480
- invalidMessage: this.error || 'Input invalid.'
4472
+ invalidMessage: this.error ?? 'Input invalid.'
4481
4473
  };
4482
4474
  },
4483
4475
  methods: {
4484
4476
  setValid: function () {
4485
4477
  this.valid = true;
4486
- this.$emit('update:valid', this.valid);
4478
+ this.invalidMessage = 'Input invalid.';
4487
4479
  },
4488
4480
  setInvalid: function (message) {
4489
4481
  this.valid = false;
4490
- this.invalidMessage = message;
4491
- this.$emit('update:valid', this.valid);
4482
+ this.invalidMessage = message ?? 'Input invalid.';
4492
4483
  }
4493
4484
  }
4494
4485
  }));
@@ -4500,7 +4491,7 @@ function templatevue_type_template_id_9e079810_ts_true_render(_ctx, _cache, $pro
4500
4491
 
4501
4492
 
4502
4493
  ;
4503
- const ClFieldGroup_template_exports_ = /*#__PURE__*/(0,exportHelper/* default */.A)(ClFieldGroup_templatevue_type_script_lang_ts, [['render',templatevue_type_template_id_9e079810_ts_true_render]])
4494
+ const ClFieldGroup_template_exports_ = /*#__PURE__*/(0,exportHelper/* default */.A)(ClFieldGroup_templatevue_type_script_lang_ts, [['render',templatevue_type_template_id_576088e6_ts_true_render]])
4504
4495
 
4505
4496
  /* harmony default export */ var ClFieldGroup_template = (ClFieldGroup_template_exports_);
4506
4497
  ;// ./src/components/form/ClFieldGroup/index.ts