renusify 1.1.5 → 1.2.1

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.
Files changed (79) hide show
  1. package/components/app/notify/notification.vue +2 -1
  2. package/components/app/toast/index.vue +7 -2
  3. package/components/app/toast/toast.vue +2 -0
  4. package/components/bar/bottomNavigationCircle.vue +1 -0
  5. package/components/bar/scss/bottomNav.scss +1 -1
  6. package/components/bar/toolbar/laptop.vue +4 -4
  7. package/components/bar/toolbar/mixin.js +1 -2
  8. package/components/bar/toolbar/mobile.vue +5 -4
  9. package/components/breadcrumb/index.vue +1 -0
  10. package/components/button/buttonConfirm.vue +1 -1
  11. package/components/button/buttonGroup.vue +1 -0
  12. package/components/button/style.scss +1 -0
  13. package/components/calendar/index.vue +1 -0
  14. package/components/calendar/month.vue +1 -0
  15. package/components/calendar/year.vue +1 -0
  16. package/components/chat/chatInput.vue +1 -0
  17. package/components/chat/chatMsg.vue +1 -0
  18. package/components/chat/index.vue +1 -0
  19. package/components/chip/index.vue +1 -0
  20. package/components/codeEditor/index.vue +0 -2
  21. package/components/codeEditor/run.vue +1 -58
  22. package/components/confirm/index.vue +1 -0
  23. package/components/countdown/index.vue +1 -0
  24. package/components/float/index.vue +1 -0
  25. package/components/form/address.vue +2 -1
  26. package/components/form/camInput.vue +2 -1
  27. package/components/form/check-input.vue +1 -1
  28. package/components/form/checkbox.vue +1 -1
  29. package/components/form/colorPicker/index.vue +1 -0
  30. package/components/form/colorPicker/picker.vue +1 -0
  31. package/components/form/datePicker/index.vue +349 -348
  32. package/components/form/datePicker/month.vue +1 -0
  33. package/components/form/datePicker/year.vue +1 -0
  34. package/components/form/fileUploader/index.vue +1 -0
  35. package/components/form/fileUploader/single.vue +1 -0
  36. package/components/form/form.vue +1 -0
  37. package/components/form/group-input.vue +5 -4
  38. package/components/form/input.vue +253 -1
  39. package/components/form/inputTel/index.vue +1 -0
  40. package/components/form/json/JsonView.vue +95 -94
  41. package/components/form/json/index.vue +2 -0
  42. package/components/form/mask-input.vue +1 -0
  43. package/components/form/number.vue +1 -0
  44. package/components/form/password.vue +121 -121
  45. package/components/form/radioInput.vue +1 -0
  46. package/components/form/range.vue +1 -0
  47. package/components/form/rating.vue +13 -1
  48. package/components/form/select.vue +61 -2
  49. package/components/form/switch.vue +64 -2
  50. package/components/form/text-area.vue +1 -1
  51. package/components/form/text-editor/index.vue +5 -2
  52. package/components/form/text-input.vue +1 -1
  53. package/components/form/timepicker/index.vue +2 -1
  54. package/components/form/timepicker/range.vue +2 -1
  55. package/components/form/timepicker/timepicker.vue +2 -1
  56. package/components/form/unique/index.vue +1 -0
  57. package/components/form/unit-input.vue +2 -1
  58. package/components/formCreator/index.vue +5 -4
  59. package/components/html2pdf/index.vue +1 -0
  60. package/components/list/index.vue +3 -2
  61. package/components/map/index.vue +1 -0
  62. package/components/map/route.vue +1 -0
  63. package/components/map/select.vue +1 -0
  64. package/components/menu/index.vue +1 -0
  65. package/components/modal/index.vue +1 -0
  66. package/components/searchBox/index.vue +1 -1
  67. package/components/slider/index.vue +1 -0
  68. package/components/table/crud/footer.vue +1 -1
  69. package/components/table/crud/header.vue +10 -4
  70. package/components/table/crud/index.vue +1 -0
  71. package/components/tabs/index.vue +1 -0
  72. package/components/tree/index.vue +2 -1
  73. package/components/tree/tree-element.vue +3 -2
  74. package/package.json +1 -1
  75. package/style/colors.scss +1 -1
  76. package/components/form/scss/input.scss +0 -249
  77. package/components/form/scss/rating.scss +0 -9
  78. package/components/form/scss/select.scss +0 -55
  79. package/components/form/scss/switch.scss +0 -68
@@ -1,129 +1,129 @@
1
1
  <template>
2
- <div :class="$r.prefix+'password'" >
3
- <r-input v-bind="$attrs"
4
- :active="active"
5
- :model-value="modelValue"
6
- @click.prevent="handleClick"
7
- :error="errorState"
8
- :preIcon="show?$r.icons.eye_off:$r.icons.eye"
9
- ltr
10
- @preIcon="show=!show"
11
- >
12
- <input :autofocus="autofocus"
13
- :type="show?'text':'password'"
14
- class="pb-0"
15
- @focusin="active=true"
16
- @focusout="active=false"
17
- @input="emit"
18
- autocomplete="no"
19
- ref="input"
20
- v-model="lazyValue"
21
- />
22
- </r-input>
23
- <template v-if="!hideLine">
24
- <div :class="{'color-success-text':hasLength,'color-error-text':!hasLength}">
25
- <r-icon v-if="hasLength" exact v-html="$r.icons.check"></r-icon>
26
- <r-icon v-else v-html="$r.icons.close"></r-icon>
27
- {{$t(['min_length_password',[minLength]])}}
28
- </div>
29
- <div v-if="lowerCase" :class="{'color-success-text':hasLowerCase,'color-error-text':!hasLowerCase}">
30
- <r-icon v-if="hasLowerCase" exact v-html="$r.icons.check"></r-icon>
31
- <r-icon v-else v-html="$r.icons.close"></r-icon>
32
- {{$t('lower_case_password')}}
33
- </div>
34
- <div v-if="number" :class="{'color-success-text':hasNumber,'color-error-text':!hasNumber}">
35
- <r-icon v-if="hasNumber" exact v-html="$r.icons.check"></r-icon>
36
- <r-icon v-else v-html="$r.icons.close"></r-icon>
37
- {{$t('number_password')}}
38
- </div>
39
- <div v-if="upperCase" :class="{'color-success-text':hasUpperCase,'color-error-text':!hasUpperCase}">
40
- <r-icon v-if="hasUpperCase" exact v-html="$r.icons.check"></r-icon>
41
- <r-icon v-else v-html="$r.icons.close"></r-icon>
42
- {{$t('upper_case_password')}}
43
- </div>
44
- <div v-if="specialChar" :class="{'color-success-text':hasSpecialChar,'color-error-text':!hasSpecialChar}">
45
- <r-icon v-if="hasSpecialChar" exact v-html="$r.icons.check"></r-icon>
46
- <r-icon v-else v-html="$r.icons.close"></r-icon>
47
- {{$t('special_char_password')}}
48
- </div>
49
- </template>
50
- </div>
2
+ <div :class="$r.prefix+'password'">
3
+ <r-input v-bind="$attrs"
4
+ :active="active"
5
+ :model-value="modelValue"
6
+ @click.prevent="handleClick"
7
+ :error="errorState"
8
+ :preIcon="show?$r.icons.eye_off:$r.icons.eye"
9
+ ltr
10
+ @preIcon="show=!show"
11
+ >
12
+ <input :autofocus="autofocus"
13
+ :type="show?'text':'password'"
14
+ class="pb-0"
15
+ @focusin="active=true"
16
+ @focusout="active=false"
17
+ @input="emit"
18
+ autocomplete="no"
19
+ ref="input"
20
+ v-model="lazyValue"
21
+ />
22
+ </r-input>
23
+ <template v-if="!hideLine">
24
+ <div :class="{'color-success-text':hasLength,'color-error-text':!hasLength}">
25
+ <r-icon v-if="hasLength" exact v-html="$r.icons.check"></r-icon>
26
+ <r-icon v-else v-html="$r.icons.close"></r-icon>
27
+ {{ $t(['min_length_password', [minLength]]) }}
28
+ </div>
29
+ <div v-if="lowerCase" :class="{'color-success-text':hasLowerCase,'color-error-text':!hasLowerCase}">
30
+ <r-icon v-if="hasLowerCase" exact v-html="$r.icons.check"></r-icon>
31
+ <r-icon v-else v-html="$r.icons.close"></r-icon>
32
+ {{ $t('lower_case_password') }}
33
+ </div>
34
+ <div v-if="number" :class="{'color-success-text':hasNumber,'color-error-text':!hasNumber}">
35
+ <r-icon v-if="hasNumber" exact v-html="$r.icons.check"></r-icon>
36
+ <r-icon v-else v-html="$r.icons.close"></r-icon>
37
+ {{ $t('number_password') }}
38
+ </div>
39
+ <div v-if="upperCase" :class="{'color-success-text':hasUpperCase,'color-error-text':!hasUpperCase}">
40
+ <r-icon v-if="hasUpperCase" exact v-html="$r.icons.check"></r-icon>
41
+ <r-icon v-else v-html="$r.icons.close"></r-icon>
42
+ {{ $t('upper_case_password') }}
43
+ </div>
44
+ <div v-if="specialChar" :class="{'color-success-text':hasSpecialChar,'color-error-text':!hasSpecialChar}">
45
+ <r-icon v-if="hasSpecialChar" exact v-html="$r.icons.check"></r-icon>
46
+ <r-icon v-else v-html="$r.icons.close"></r-icon>
47
+ {{ $t('special_char_password') }}
48
+ </div>
49
+ </template>
50
+ </div>
51
51
  </template>
52
52
  <script>
53
- export default {
54
- name: 'r-password',
55
- props: {
56
- modelValue: [String, Number],
57
- hideLine: Boolean,
58
- autofocus: Boolean,
59
- lowerCase: {type:Boolean,default:true},
60
- upperCase: Boolean,
61
- specialChar: Boolean,
62
- number: Boolean,
63
- minLength: {type:Number,default:8},
64
- },
65
-
66
- data() {
67
- return {
68
- lazyValue: this.modelValue,
69
- show: false,
70
- active: false,
71
- p: 0,
72
- errorState: false
73
- }
74
- },
75
- computed: {
76
- hasLength(){
77
- if(!this.lazyValue){
78
- return false
79
- }
80
- return this.lazyValue.length>=this.minLength
81
- },
82
- hasUpperCase(){
83
- return new RegExp("^(?=.*[A-Z])").test(this.lazyValue)
84
- },
85
- hasNumber(){
86
- return new RegExp("^(?=.*[0-9])").test(this.lazyValue)
87
- },
88
- hasLowerCase(){
89
- return new RegExp("^(?=.*[a-z])").test(this.lazyValue)
90
- },
91
- hasSpecialChar(){
92
- return new RegExp("^(?=.*[!@#\$%\^&\*])").test(this.lazyValue)
93
- }
94
- },
53
+ export default {
54
+ name: 'r-password',
55
+ props: {
56
+ modelValue: [String, Number],
57
+ hideLine: Boolean,
58
+ autofocus: Boolean,
59
+ lowerCase: {type: Boolean, default: true},
60
+ upperCase: Boolean,
61
+ specialChar: Boolean,
62
+ number: Boolean,
63
+ minLength: {type: Number, default: 8},
64
+ },
65
+ emits: ['update:modelValue'],
66
+ data() {
67
+ return {
68
+ lazyValue: this.modelValue,
69
+ show: false,
70
+ active: false,
71
+ p: 0,
72
+ errorState: false
73
+ }
74
+ },
75
+ computed: {
76
+ hasLength() {
77
+ if (!this.lazyValue) {
78
+ return false
79
+ }
80
+ return this.lazyValue.length >= this.minLength
81
+ },
82
+ hasUpperCase() {
83
+ return new RegExp("^(?=.*[A-Z])").test(this.lazyValue)
84
+ },
85
+ hasNumber() {
86
+ return new RegExp("^(?=.*[0-9])").test(this.lazyValue)
87
+ },
88
+ hasLowerCase() {
89
+ return new RegExp("^(?=.*[a-z])").test(this.lazyValue)
90
+ },
91
+ hasSpecialChar() {
92
+ return new RegExp("^(?=.*[!@#\$%\^&\*])").test(this.lazyValue)
93
+ }
94
+ },
95
95
 
96
- methods: {
97
- check() {
98
- if (!this.hasLength) {
99
- this.errorState = true
100
- }
101
- if (this.lowerCase&&!this.hasLowerCase) {
102
- this.errorState = true
103
- }
104
- if (this.number&&!this.hasNumber) {
105
- this.errorState = true
106
- }
107
- if (this.upperCase&&!this.hasUpperCase) {
108
- this.errorState = true
109
- }
110
- if (this.specialChar&&!this.hasSpecialChar) {
111
- this.errorState = true
112
- }
96
+ methods: {
97
+ check() {
98
+ if (!this.hasLength) {
99
+ this.errorState = true
100
+ }
101
+ if (this.lowerCase && !this.hasLowerCase) {
102
+ this.errorState = true
103
+ }
104
+ if (this.number && !this.hasNumber) {
105
+ this.errorState = true
106
+ }
107
+ if (this.upperCase && !this.hasUpperCase) {
108
+ this.errorState = true
109
+ }
110
+ if (this.specialChar && !this.hasSpecialChar) {
111
+ this.errorState = true
112
+ }
113
113
 
114
- },
115
- handleClick(e) {
116
- this.$refs.input.focus()
117
- },
118
- emit() {
119
- this.$emit('update:modelValue', this.lazyValue)
120
- this.errorState = false
121
- this.msg = null
122
- if (this.lazyValue&& !this.hideLine) {
123
- this.check()
124
- }
125
- }
126
- }
114
+ },
115
+ handleClick(e) {
116
+ this.$refs.input.focus()
117
+ },
118
+ emit() {
119
+ this.$emit('update:modelValue', this.lazyValue)
120
+ this.errorState = false
121
+ this.msg = null
122
+ if (this.lazyValue && !this.hideLine) {
123
+ this.check()
124
+ }
127
125
  }
126
+ }
127
+ }
128
128
 
129
129
  </script>
@@ -34,6 +34,7 @@ export default {
34
34
  translate: Boolean,
35
35
  modelValue: [String, Number, Object]
36
36
  },
37
+ emits:['update:modelValue'],
37
38
  computed: {
38
39
  current() {
39
40
  if (!this.modelValue) {
@@ -77,6 +77,7 @@ export default {
77
77
  isRange: Boolean
78
78
 
79
79
  },
80
+ emits:['update:modelValue'],
80
81
  data() {
81
82
  return {
82
83
  width: 0,
@@ -13,7 +13,6 @@
13
13
  </template>
14
14
 
15
15
  <script>
16
- import './scss/rating.scss'
17
16
 
18
17
  export default {
19
18
  name: 'r-rating',
@@ -32,6 +31,7 @@ export default {
32
31
  modelValue: Number,
33
32
  readonly: Boolean
34
33
  },
34
+ emits:['update:modelValue'],
35
35
  created(){
36
36
  if(!this.$r.icons.star) {
37
37
  this.$r.icons.star = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" preserveAspectRatio="xMidYMid meet" viewBox="0 0 24 24"><path fill="currentColor" d="M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.62L12 2L9.19 8.62L2 9.24l5.45 4.73L5.82 21L12 17.27Z"/></svg>'
@@ -44,3 +44,15 @@ export default {
44
44
  }
45
45
  }
46
46
  </script>
47
+ <style lang="scss">
48
+ @import "../../style/include";
49
+
50
+
51
+ .#{$prefix}rating {
52
+ max-width: 100%;
53
+ white-space: nowrap;
54
+ transition: 1s $primary-transition;
55
+ color: var(--color-text-disabled);
56
+ }
57
+
58
+ </style>
@@ -72,7 +72,6 @@
72
72
  </div>
73
73
  </template>
74
74
  <script>
75
- import './scss/select.scss'
76
75
 
77
76
  export default {
78
77
  name: 'r-select',
@@ -104,6 +103,7 @@ export default {
104
103
  firstSelect: Boolean,
105
104
  headers: Object
106
105
  },
106
+ emits:['update:modelValue','del'],
107
107
  data() {
108
108
  return {
109
109
  apiData: [],
@@ -225,6 +225,7 @@ export default {
225
225
  handleClick() {
226
226
  if (this.$refs.input) {
227
227
  this.$refs.input.focus()
228
+ this.$refs.input.scrollIntoView()
228
229
  } else {
229
230
  this.focusInput(true)
230
231
  }
@@ -270,7 +271,7 @@ export default {
270
271
  val = null
271
272
  }
272
273
 
273
- this.$emit('update:model-value', val)
274
+ this.$emit('update:modelValue', val)
274
275
 
275
276
  },
276
277
  focusInput(val) {
@@ -306,3 +307,61 @@ export default {
306
307
  }
307
308
 
308
309
  </script>
310
+ <style lang="scss">
311
+ @import "../../style/include";
312
+ $min-height:40px;
313
+ .#{$prefix}select-container {
314
+ position: relative;
315
+ .input-control {
316
+ min-height: $min-height;
317
+ height: auto;
318
+ flex-direction: row;
319
+ align-items: center;
320
+ display: flex;
321
+ flex: 1 1;
322
+ flex-wrap: wrap;
323
+ line-height: 24px;
324
+ max-width: 100%;
325
+ min-width: 0;
326
+ }
327
+
328
+ .select-wrap {
329
+ max-width: 100%;
330
+ display: flex;
331
+ flex: 1 1 auto;
332
+ flex-wrap: wrap;
333
+ }
334
+
335
+ input {
336
+ flex: 1 1;
337
+ margin-top: 0;
338
+ min-width: 140px;
339
+ position: relative;
340
+ }
341
+
342
+ .#{$prefix}chip {
343
+ flex: 0 1 auto;
344
+ margin: 4px;
345
+ }
346
+
347
+ .card-select {
348
+ max-height: 0;
349
+ overflow: auto;
350
+ opacity: .5;
351
+ transition: all .3s $primary-transition;
352
+ position: absolute;
353
+ left: 0;
354
+ z-index: map_get($z-index, 'default');
355
+ }
356
+ .to-top{
357
+ bottom: $min-height+2px;
358
+ }
359
+
360
+ .card-select-active {
361
+ transition: all 0.3s $primary-transition;
362
+ max-height: 300px;
363
+ opacity: 1;
364
+ }
365
+ }
366
+
367
+ </style>
@@ -20,7 +20,6 @@
20
20
  </r-input>
21
21
  </template>
22
22
  <script>
23
- import './scss/switch.scss'
24
23
 
25
24
  export default {
26
25
  name: 'r-switch',
@@ -32,7 +31,7 @@
32
31
  type: [Boolean, String]
33
32
  }
34
33
  },
35
-
34
+ emits:['update:modelValue','change'],
36
35
  data() {
37
36
  return {
38
37
  lazyValue: this.modelValue || false
@@ -62,3 +61,66 @@
62
61
  }
63
62
 
64
63
  </script>
64
+ <style lang="scss">
65
+ @import "renusify/style/_include.scss";
66
+
67
+ .#{$prefix}switch {
68
+
69
+ .switch-container {
70
+ display: flex;
71
+ flex-direction: row;
72
+ align-items: center;
73
+ height: 30px;
74
+ }
75
+
76
+ .switch-holder {
77
+ width: 45px;
78
+ height: 13px;
79
+ position: relative;
80
+ display: flex;
81
+ flex-direction: row;
82
+ align-items: center;
83
+ cursor: pointer;
84
+ }
85
+
86
+ .switch-line {
87
+ width: 100%;
88
+ height: 100%;
89
+ border-radius: 10px;
90
+ background-color: var(--color-disabled);
91
+ }
92
+
93
+ .switch-dot {
94
+ position: absolute;
95
+ width: 20px;
96
+ height: 20px;
97
+ border-radius: 50%;
98
+ background-color: #cdcbcb;
99
+ transition: .3s map_get($transition,'fast-in-fast-out');
100
+ @include rtl() {
101
+ right: 0;
102
+ }
103
+ @include ltr() {
104
+ left: 0;
105
+ }
106
+ }
107
+
108
+ .switch-active {
109
+ .switch-line {
110
+ background-color: currentColor;
111
+ opacity: 0.5;
112
+ }
113
+
114
+ .switch-dot {
115
+ background-color: currentColor;
116
+ @include rtl() {
117
+ right: 25px;
118
+ }
119
+ @include ltr() {
120
+ left: 25px;
121
+ }
122
+ }
123
+ }
124
+
125
+ }
126
+ </style>
@@ -31,7 +31,7 @@ export default {
31
31
  default: '7'
32
32
  }
33
33
  },
34
-
34
+ emits:['update:modelValue'],
35
35
  data() {
36
36
  return {
37
37
  lazyValue: this.modelValue,
@@ -37,6 +37,8 @@
37
37
  <r-select-input :label="$t('class','renusify')" :model-value="[...selectElm.classList]"
38
38
  multiple
39
39
  tags
40
+ disableSearch
41
+ justValue
40
42
  @update:model-value="addClass"></r-select-input>
41
43
  </r-col>
42
44
  <r-col class="col-12 ltr">
@@ -183,9 +185,9 @@
183
185
  </template>
184
186
 
185
187
  <script>
186
- import './style.scss'
188
+ import './style.scss'
187
189
 
188
- export default {
190
+ export default {
189
191
  name: 'r-text-editor',
190
192
  inheritAttrs: false,
191
193
  props: {
@@ -200,6 +202,7 @@
200
202
  },
201
203
  headers: Object
202
204
  },
205
+ emits:['update:modelValue'],
203
206
  data() {
204
207
  return {
205
208
  id: 'text_editor_' + this.$helper.uniqueId(12),
@@ -25,7 +25,7 @@ export default {
25
25
  modelValue: [String, Number],
26
26
  autofocus: Boolean,
27
27
  },
28
-
28
+ emits:['update:modelValue'],
29
29
  data () {
30
30
  return {
31
31
  lazyValue: this.modelValue,
@@ -68,6 +68,7 @@ export default {
68
68
  noOverlay: Boolean,
69
69
  modelValue: String
70
70
  },
71
+ emits:['update:modelValue'],
71
72
  data() {
72
73
  return {
73
74
  active: false,
@@ -82,7 +83,7 @@ export default {
82
83
  },
83
84
  methods: {
84
85
  emit() {
85
- this.$emit("update:model-value", this.lazyValue);
86
+ this.$emit("update:modelValue", this.lazyValue);
86
87
  }
87
88
  }
88
89
  };
@@ -75,6 +75,7 @@ export default {
75
75
  noOverlay: Boolean,
76
76
  modelValue: Array
77
77
  },
78
+ emits:['update:modelValue'],
78
79
  data() {
79
80
  return {
80
81
  state: 'from',
@@ -151,7 +152,7 @@ export default {
151
152
 
152
153
  },
153
154
  emit() {
154
- this.$emit("update:model-value", this.lazyValue);
155
+ this.$emit("update:modelValue", this.lazyValue);
155
156
  }
156
157
  }
157
158
  };
@@ -89,6 +89,7 @@ export default {
89
89
  is24Hour: Boolean,
90
90
  modelValue: String
91
91
  },
92
+ emits:['update:modelValue','finish'],
92
93
  data() {
93
94
  return {
94
95
  show: this.is24Hour ? "hours24" : "hours12",
@@ -307,7 +308,7 @@ export default {
307
308
  if (!this.is24Hour) {
308
309
  n += " " + this.meridiem;
309
310
  }
310
- this.$emit("update:model-value", n);
311
+ this.$emit("update:modelValue", n);
311
312
  if ((min !== null && !this.withSec) || sec !== null) {
312
313
  this.$emit("finish", true);
313
314
  }
@@ -24,6 +24,7 @@ export default {
24
24
  },
25
25
  headers: Object
26
26
  },
27
+ emits:['update:modelValue'],
27
28
  data() {
28
29
  return {
29
30
  item: null,
@@ -18,6 +18,7 @@
18
18
  <r-select-input :readonly="disableUnit" :items="units" v-model="unit"
19
19
  @update:model-value="emit" hide justValue :translate="translate"
20
20
  class="mt-0"
21
+ disableSearch
21
22
  firstSelect></r-select-input>
22
23
  </div>
23
24
  </r-input>
@@ -47,7 +48,7 @@ export default {
47
48
  autofocus: Boolean,
48
49
  translate: Boolean
49
50
  },
50
-
51
+ emits:['update:modelValue'],
51
52
  data() {
52
53
  return {
53
54
  lazyValue: this.modelValue.value,
@@ -1,7 +1,6 @@
1
1
  <template>
2
2
  <r-card v-if="!autoSend" class="overflow-auto">
3
3
  <r-container>
4
- <r-message :items="errors" type="error"></r-message>
5
4
  <h1 class="title">{{ title }}</h1>
6
5
  <r-form ref="form" v-model="valid" @submit.prevent="save">
7
6
  <r-row>
@@ -16,7 +15,8 @@
16
15
  </r-col>
17
16
  </template>
18
17
  </r-row>
19
- <r-row class="h-end my-12">
18
+ <r-message :items="errors" type="error"></r-message>
19
+ <div class="text-end my-12">
20
20
  <r-btn @click.prevent="close"
21
21
  class="color-error-text mx-1"
22
22
  outlined
@@ -29,7 +29,7 @@
29
29
  rounded>
30
30
  {{ $t('send', 'renusify') }}
31
31
  </r-btn>
32
- </r-row>
32
+ </div>
33
33
  </r-form>
34
34
  </r-container>
35
35
  </r-card>
@@ -67,6 +67,7 @@ export default {
67
67
  },
68
68
  headers: Object
69
69
  },
70
+ emits:['update:modelValue','ok'],
70
71
  data() {
71
72
  return {
72
73
  loading: false,
@@ -92,7 +93,7 @@ export default {
92
93
  editedItem: {
93
94
  deep: true,
94
95
  handler: function (n) {
95
- this.$emit('update:model-value', n)
96
+ this.$emit('update:modelValue', n)
96
97
  }
97
98
  }
98
99
  },
@@ -60,6 +60,7 @@
60
60
  beforeClass: String,
61
61
  afterClass: String
62
62
  },
63
+ emits:['progress','has-downloaded','before-download'],
63
64
  data() {
64
65
  return {
65
66
  show: true,