@avakhula/ui 0.0.352 → 0.0.353

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 (83) hide show
  1. package/.prettierrc.json +0 -0
  2. package/.storybook/intelliboardTheme.js +0 -0
  3. package/.storybook/manager.js +0 -0
  4. package/.storybook/scss-loader.scss +0 -0
  5. package/.storybook/withSource.js +0 -0
  6. package/README.md +0 -0
  7. package/dist/index.js +7098 -6710
  8. package/dist/index.umd.cjs +72 -72
  9. package/dist/style.css +1 -1
  10. package/index.html +0 -0
  11. package/package.json +4 -3
  12. package/src/App.vue +13 -69
  13. package/src/EventEmmiter.js +0 -0
  14. package/src/assets/scss/mixins.scss +0 -0
  15. package/src/assets/scss/reset.scss +0 -0
  16. package/src/assets/scss/style.scss +0 -0
  17. package/src/assets/scss/typography.scss +0 -0
  18. package/src/components/Alert/Alert.vue +5 -0
  19. package/src/components/Alert/alert.scss +6 -1
  20. package/src/components/Badge/Badge.stories.js +0 -0
  21. package/src/components/Button/Button.stories.js +0 -0
  22. package/src/components/Button/constants.js +0 -0
  23. package/src/components/ButtonGroup/ButtonGroup.vue +0 -0
  24. package/src/components/Chips/Chips.stories.js +30 -0
  25. package/src/components/Chips/Chips.vue +125 -0
  26. package/src/components/Dropdown/Dropdown.spec.js +0 -0
  27. package/src/components/Dropdown/DropdownDivider.vue +0 -0
  28. package/src/components/Dropdown/DropdownList.vue +0 -0
  29. package/src/components/Dropdown/constants.js +0 -0
  30. package/src/components/Form/CharactersCount.vue +10 -7
  31. package/src/components/Form/Checkbox/Checkbox.vue +2 -1
  32. package/src/components/Form/DatePicker/DatePicker.vue +32 -11
  33. package/src/components/Form/DatePicker/Icons/chevron-back.js +0 -0
  34. package/src/components/Form/DatePicker/Icons/chevron-forward.js +0 -0
  35. package/src/components/Form/FormGroup/FormGroup.stories.js +0 -0
  36. package/src/components/Form/FormGroup/FormGroupSet.stories.js +0 -0
  37. package/src/components/Form/FormGroup/FormGroupSet.vue +0 -0
  38. package/src/components/Form/Input/Input.vue +2 -2
  39. package/src/components/Form/PhoneInput/PhoneInput.vue +26 -21
  40. package/src/components/Form/PhoneInput/phoneInput.scss +4 -5
  41. package/src/components/Form/Radio/Radio.vue +3 -3
  42. package/src/components/Form/TextEditor/TextEditor.vue +46 -4
  43. package/src/components/Form/TextEditor/icons/svg/chevron-down.svg +0 -0
  44. package/src/components/Form/TextEditor/icons/toolbarIcons.js +0 -0
  45. package/src/components/Form/TextEditor/plugins/alphabetList.js +0 -0
  46. package/src/components/Form/TextEditor/textEditor.scss +50 -26
  47. package/src/components/Form/Textarea/Textarea.spec.js +0 -0
  48. package/src/components/Form/Textarea/textarea.scss +7 -1
  49. package/src/components/Icon.vue +0 -0
  50. package/src/components/IconButton/IconButton.stories.js +0 -0
  51. package/src/components/IconButton/constants.js +0 -0
  52. package/src/components/Modal/Modal.vue +6 -4
  53. package/src/components/Pagination/Pagination.stories.js +0 -0
  54. package/src/components/Pagination/Pagination.vue +2 -2
  55. package/src/components/Popover/Popover.stories.js +0 -0
  56. package/src/components/ProgressBar/ProgressBar.stories.js +0 -0
  57. package/src/components/Sorting/constants.js +0 -0
  58. package/src/components/SplitButton/SplitButtonItem.vue +0 -0
  59. package/src/components/SplitButton/constants.js +0 -0
  60. package/src/components/Table/Cells/Cell.vue +0 -0
  61. package/src/components/Table/Cells/CheckboxCell.vue +0 -0
  62. package/src/components/Table/Row.vue +0 -0
  63. package/src/components/Table/Table.stories.js +0 -0
  64. package/src/components/Table/Table.vue +0 -0
  65. package/src/components/Tabs/Tab.vue +0 -0
  66. package/src/components/TagPill/TagPill.vue +0 -0
  67. package/src/components/TagPill/constants.js +0 -0
  68. package/src/components/ToggleTip/ToggleTip.stories.js +0 -0
  69. package/src/components/ToggleTip/ToggleTip.vue +0 -0
  70. package/src/components/Tooltip/Tooltip.stories.js +0 -0
  71. package/src/components/TreeSelect/Select.vue +17 -4
  72. package/src/components/TreeSelect/mixins/InfinityLoaderMixin.js +40 -0
  73. package/src/constants/events.js +0 -0
  74. package/src/constants/keyCodes.js +0 -0
  75. package/src/directives/outside/outside.js +0 -0
  76. package/src/directives/tooltip/tooltip.js +15 -0
  77. package/src/helpers/generateUID.js +0 -0
  78. package/src/helpers/getHrefFromID.js +0 -0
  79. package/src/helpers/multiLineOverflows.js +0 -0
  80. package/src/index.js +2 -0
  81. package/src/stories/link.stories.js +0 -0
  82. package/static/Logo.svg +0 -0
  83. package/vite.config.js +0 -0
package/index.html CHANGED
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@avakhula/ui",
3
- "version": "0.0.352",
3
+ "version": "0.0.353",
4
4
  "main": "dist/index.js",
5
5
  "module": "dist/index.umd.cjs",
6
6
  "source": "src/index.js",
@@ -11,7 +11,7 @@
11
11
  "registry": "https://registry.npmjs.org/"
12
12
  },
13
13
  "scripts": {
14
- "dev": "vite",
14
+ "dev": "vite --port 3006",
15
15
  "build": "vite build",
16
16
  "preview": "vite preview",
17
17
  "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs --ignore-path .gitignore",
@@ -23,6 +23,7 @@
23
23
  "dependencies": {
24
24
  "@vueup/vue-quill": "^1.2.0",
25
25
  "mitt": "^3.0.0",
26
+ "quill-placeholder-module": "^0.3.1",
26
27
  "vue": "^3.2.45"
27
28
  },
28
29
  "devDependencies": {
@@ -60,6 +61,6 @@
60
61
  "vite": "^4.0.0",
61
62
  "vitest": "^0.28.4",
62
63
  "vue-loader": "^16.8.3",
63
- "vue-tel-input": "^8.1.1"
64
+ "vue-tel-input": "^9.1.4"
64
65
  }
65
66
  }
package/src/App.vue CHANGED
@@ -1,76 +1,20 @@
1
1
  <template>
2
- <ib-select :options="opt" :is-multiple="false"
3
- :show-clear-button="false" :style="{ width: '400px' }">
4
- <template v-slot:triggerContent="{ selectedCount }">
5
- {{ selectedCount }}
2
+ <chips :active="true" @click="() => console.log('hello click')">
3
+ <template #icon>
4
+ <icon name="people-outline" />
6
5
  </template>
7
- </ib-select>
8
-
9
- <ib-phone-input></ib-phone-input>
10
-
11
-
6
+ Users
7
+ </chips>
12
8
  </template>
13
9
 
14
10
  <script>
15
- import IbSelect from "./components/TreeSelect/Select.vue";
16
- import label from "@/components/Form/Label/Label.vue";
17
- import {IbCheckboxGroup} from "./index.js";
18
- import {IbRadio} from "./index.js";
19
- import IbToggle from "@/components/Form/Toggle/Toggle.vue";
20
- import {IbPhoneInput} from "./index.js";
21
- const testData1 = [
22
- {
23
- disable: false,
24
- active: false,
25
- id: "2024-06-12 23:59:59.999999",
26
- title: "One Day",
27
- isDisabled: false,
28
- showTooltipByDefault: true
29
- },
30
- {
31
- disable: false,
32
- active: false,
33
- id: "2024-06-18 23:59:59.999999",
34
- title: "One Week",
35
- isDisabled: false
36
- },
37
- {
38
- disable: false,
39
- active: false,
40
- id: "2024-06-25 23:59:59.999999",
41
- title: "Two Weeks",
42
- isDisabled: true
43
- },
44
- {
45
- disable: false,
46
- active: false,
47
- id: "2024-07-11 23:59:59.999999",
48
- title: "One Month",
49
- isDisabled: true,
50
- disableTooltip: 'disable 123',
51
- showTooltipByDefault: true
52
- },
53
- {
54
- disable: false,
55
- active: true,
56
- id: "2025-02-01 23:59:59.999999",
57
- title: "All Time",
58
- isDisabled: true,
59
- disableTooltip: 'disable 123'
60
- }
61
- ]
11
+ import Chips from "./components/Chips/Chips.vue";
12
+ import Icon from "./components/Icon.vue";
62
13
  export default {
63
- computed: {
64
- label() {
65
- return label
66
- }
14
+ components: {
15
+ Chips,
16
+ Icon,
67
17
  },
68
- data() {
69
- return {
70
- opt: testData1,
71
- checked: '1'
72
- }
73
- },
74
- components: {IbToggle, IbSelect, IbCheckboxGroup, IbRadio, IbPhoneInput}
75
- }
76
- </script>
18
+ };
19
+ </script>
20
+
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -6,6 +6,7 @@
6
6
  <b v-if="title?.length" class="ib-alert-title">
7
7
  {{ title }}
8
8
  </b>
9
+ <slot name="title"></slot>
9
10
  </span>
10
11
 
11
12
  <span class="text-content">
@@ -54,6 +55,10 @@ export default {
54
55
  type: String,
55
56
  default: "",
56
57
  },
58
+ additionalTitleText: {
59
+ type: String,
60
+ default: "",
61
+ },
57
62
  },
58
63
  mounted() {
59
64
  this.checkHeight();
@@ -82,6 +82,7 @@ $alert-success-secondary-color: $green-50;
82
82
 
83
83
  .text-content {
84
84
  @include Ib-H5-regular;
85
+ margin-left: 3px;
85
86
  }
86
87
 
87
88
  &.large {
@@ -109,6 +110,7 @@ $alert-success-secondary-color: $green-50;
109
110
  margin-bottom: 5px;
110
111
  padding-left: 0!important;
111
112
  word-break: break-word;
113
+ margin-left: 3px;
112
114
  }
113
115
 
114
116
  & + .close-button {
@@ -138,10 +140,13 @@ $alert-success-secondary-color: $green-50;
138
140
  }
139
141
 
140
142
  &-title {
141
- margin-right: 5px;
142
143
  @include Ib-H4-medium;
143
144
  }
144
145
 
146
+ &-additional-text {
147
+ margin-right: 5px;
148
+ }
149
+
145
150
  &-icon {
146
151
  display: inline-block;
147
152
  font-size: 20px;
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1,30 @@
1
+ import IbChips from "./Chips.vue";
2
+ import Icon from "../Icon.vue";
3
+
4
+ export default {
5
+ title: "Chips",
6
+ component: IbChips,
7
+ }
8
+
9
+ const Template = (args) => ({
10
+ components: { IbChips },
11
+ setup() {
12
+ return { args };
13
+ },
14
+ template: '<ib-chips v-bind="args">Total Visits: 0-20</ib-chips>',
15
+ });
16
+
17
+ const TemplateWithIcon = (args) => ({
18
+ components: { IbChips, Icon },
19
+ setup() {
20
+ return { args };
21
+ },
22
+ template: '<ib-chips v-bind="args"><template #icon><icon name="people-outline" /></template>Users</ib-chips>',
23
+ });
24
+
25
+ export const Default = Template.bind({});
26
+ Default.args = {};
27
+
28
+ export const ChipsWithIcon = TemplateWithIcon.bind({});
29
+ ChipsWithIcon.args = {};
30
+
@@ -0,0 +1,125 @@
1
+ <template>
2
+ <button
3
+ :class="{
4
+ 'ib-chips': true,
5
+ 'ib-chips-active': active,
6
+ 'ib-chips-error': error,
7
+ 'ib-chips-disabled': disabled,
8
+ }"
9
+ :disabled="disabled"
10
+ >
11
+ <span v-if="hasIcon" class="ib-chips-icon-wrapper">
12
+ <slot class="ib-chips-icon" name="icon" />
13
+ </span>
14
+
15
+ <slot />
16
+
17
+ <span class="ib-chips-close-wrapper" v-if="showCloseIcon">
18
+ <icon class="ib-chips-icon" name="close-outline" />
19
+ </span>
20
+ </button>
21
+ </template>
22
+
23
+ <script>
24
+ import Icon from "../Icon.vue";
25
+
26
+ export default {
27
+ props: {
28
+ showCloseIcon: {
29
+ type: Boolean,
30
+ default: false,
31
+ },
32
+ active: {
33
+ type: Boolean,
34
+ default: false,
35
+ },
36
+ error: {
37
+ type: Boolean,
38
+ default: false,
39
+ },
40
+ disabled: {
41
+ type: Boolean,
42
+ default: false,
43
+ },
44
+ },
45
+ computed: {
46
+ hasIcon() {
47
+ return this.$slots?.icon;
48
+ },
49
+ },
50
+ components: {
51
+ Icon,
52
+ },
53
+ };
54
+ </script>
55
+ <style lang="scss" scoped>
56
+ @import "../../assets/scss/variables/colors.scss";
57
+ @import "../../assets/scss/typography.scss";
58
+ @import "../../assets/scss/mixins.scss";
59
+
60
+ .ib-chips {
61
+ @include Ib-H4-medium;
62
+ padding: 8.5px 10px;
63
+ border: 2px solid transparent;
64
+ border-radius: 4px;
65
+ height: 36px;
66
+ display: flex;
67
+ align-items: center;
68
+ background-color: $gray-100;
69
+ color: $neutral-600;
70
+ cursor: pointer;
71
+ transition: all 0.3s;
72
+
73
+ .ib-chips-close-wrapper,
74
+ .ib-chips-icon-wrapper {
75
+ width: 16px;
76
+ height: 16px;
77
+ }
78
+
79
+ .ib-chips-icon-wrapper {
80
+ margin-right: 5px;
81
+ }
82
+ .ib-chips-close-wrapper {
83
+ margin-left: 5px;
84
+ }
85
+
86
+ .ib-chips-icon {
87
+ color: inherit;
88
+ font-size: 16px;
89
+ }
90
+
91
+ &.ib-chips-active {
92
+ background-color: $blue-200;
93
+ color: $blue-800;
94
+ }
95
+
96
+ &.ib-chips-error {
97
+ border-color: $red-800;
98
+ color: $red-800;
99
+ background-color: $red-50;
100
+ }
101
+
102
+ &.ib-chips-disabled {
103
+ border-color: transparent!important;
104
+ color: $neutral-500!important;
105
+ background-color: $gray-100!important;
106
+ cursor: default;
107
+ }
108
+
109
+ &:hover {
110
+ border-color: $blue-300;
111
+ background-color: $blue-100;
112
+ color: $blue-700;
113
+ }
114
+
115
+ &:active {
116
+ border-color: transparent;
117
+ background-color: $blue-200;
118
+ color: $blue-900;
119
+ }
120
+
121
+ &:focus {
122
+ @include focus(2px);
123
+ }
124
+ }
125
+ </style>
File without changes
File without changes
File without changes
File without changes
@@ -3,17 +3,13 @@
3
3
  <template v-if="!characterLength">
4
4
  <p class="val-limit">Max {{ characterLimit }}</p>
5
5
  </template>
6
- <template v-else-if="characterLimit > characterLength">
7
- <p class="val-length">{{ characterLimit - characterLength }}</p>
6
+ <template v-else-if="characterLimit >= characterLength">
7
+ <p class="val-length">{{ characterLength }}</p>
8
8
  /
9
9
  <p class="val-limit">{{ characterLimit }}</p>
10
10
  </template>
11
- <template v-else-if="characterLimit === characterLength">0</template>
12
-
13
11
  <template v-else>
14
- <p class="val-length val-limited">
15
- {{ characterLimit - characterLength }}
16
- </p>
12
+ <p class="val-length error">{{ characterLimit - characterLength }}</p>
17
13
  </template>
18
14
  </div>
19
15
  </template>
@@ -51,5 +47,12 @@ $textarea-character-count-limited-color: $red-900;
51
47
  color: $textarea-character-count-limited-color;
52
48
  }
53
49
  }
50
+
51
+ .val-length,
52
+ .val-limit {
53
+ &.error {
54
+ color: $textarea-character-count-limited-color;
55
+ }
56
+ }
54
57
  }
55
58
  </style>
@@ -1,9 +1,10 @@
1
1
  <template>
2
- <div role="checkbox" class="ib-checkbox-wrapper" :class="this.$attrs.class" :aria-checked="checked ? true : false">
2
+ <div role="checkbox" class="ib-checkbox-wrapper" :class="this.$attrs.class">
3
3
  <label
4
4
  v-bind="attrs"
5
5
  :for="id"
6
6
  :tabindex="disabled | disableFocus ? -1 : 0"
7
+ :aria-checked="checked ? true : false"
7
8
  @click.prevent.stop="onChange"
8
9
  @keypress.prevent="onChange"
9
10
  >
@@ -18,11 +18,15 @@
18
18
  {{ label }}
19
19
  </ib-label>
20
20
  <div class="input-wrapper" @click="open" :class="{ active: isOpen }">
21
- <input
22
- :placeholder="placeholder"
23
- ref="date"
24
- class="date-picker-input"
25
- />
21
+ <label :aria-label="ariaLabel">
22
+ <input
23
+ :placeholder="placeholder"
24
+ :name="name"
25
+ ref="date"
26
+ id="date"
27
+ class="date-picker-input"
28
+ />
29
+ </label>
26
30
 
27
31
  <ib-icon name="today-outline" class="calendar-icon" />
28
32
  </div>
@@ -46,12 +50,14 @@
46
50
  @click="openEndDate"
47
51
  :class="{ active: isOpenEndDate }"
48
52
  >
49
- <input
50
- class="date-picker-input"
51
- :placeholder="endDatePlaceholder"
52
- ref="toDate"
53
- />
54
-
53
+ <label :aria-label="endDateAriaLabel">
54
+ <input
55
+ class="date-picker-input"
56
+ :placeholder="endDatePlaceholder"
57
+ @keydown="onKeydownEndField"
58
+ ref="toDate"
59
+ />
60
+ </label>
55
61
  <ib-icon name="today-outline" class="calendar-icon" />
56
62
  </div>
57
63
 
@@ -106,6 +112,14 @@ export default {
106
112
  type: String,
107
113
  default: SINGLE_MODE,
108
114
  },
115
+ ariaLabel: {
116
+ type: String,
117
+ required: true,
118
+ },
119
+ endDateAriaLabel: {
120
+ type: String,
121
+ required: true,
122
+ },
109
123
  label: {
110
124
  type: String,
111
125
  default: "",
@@ -142,6 +156,8 @@ export default {
142
156
  this.initFlatpickr();
143
157
  },
144
158
  modelValue() {
159
+ if (JSON.stringify(this.modelValue) === JSON.stringify(this.data)) return;
160
+
145
161
  const value = this.modelValue[0] && this.modelValue[1] ? this.modelValue : [];
146
162
  this.flat?.setDate(value, true);
147
163
  },
@@ -232,6 +248,11 @@ export default {
232
248
  this.close();
233
249
  }
234
250
  },
251
+ onKeydownEndField(e) {
252
+ if (e.key === "ArrowDown") {
253
+ this.flat.selectedDateElem.focus();
254
+ }
255
+ },
235
256
  triggerChange() {
236
257
  setTimeout(() => {
237
258
  if (this.pickerOptions.mode === "range") {
File without changes
@@ -7,7 +7,7 @@
7
7
 
8
8
  <input
9
9
  v-bind="attrs"
10
- v-model="actualValue"
10
+ v-model.trim="actualValue"
11
11
  ref="field"
12
12
  :aria-invalid="hasErrorState ? true : false"
13
13
  :readonly="readonly"
@@ -23,7 +23,7 @@
23
23
  <ib-icon-button
24
24
  kind="ghost"
25
25
  class="button-clear"
26
- :disabled="readonly || disabled"
26
+ :disabled="disabled"
27
27
  :help-text="clearButtonMessage"
28
28
  prevent-default
29
29
  type="button"
@@ -8,9 +8,9 @@
8
8
  v-model="phone"
9
9
  v-bind="$attrs"
10
10
  @country-changed="countryChanged"
11
- :input-options="{ name: inputName, id: inputName }"
11
+ :input-options="{ name: inputName, id: inputName, autocomplete: 'off' }"
12
12
  :auto-default-country="autoDefaultCountry"
13
- :dropdown-options="{ showSearchBox: true, showFlags: true }"
13
+ :dropdown-options="{ showSearchBox: true, showFlags: true, tabindex: 0 }"
14
14
  :defaultCountry="defaultCountry"
15
15
  :ignoredCountries="ignoredCountries"
16
16
  :class="{ error: error || errorMessage.length }"
@@ -24,14 +24,19 @@
24
24
  </template>
25
25
 
26
26
  <script>
27
- import { VueTelInput } from "vue-tel-input";
28
27
  import IbIcon from "../../Icon.vue";
29
28
  import IbAlert from "../../Alert/Alert.vue";
30
29
  import { OutsideDirective as Outside } from "../../../directives/outside/outside";
30
+ import { VueTelInput } from 'vue-tel-input';
31
+ import 'vue-tel-input/vue-tel-input.css'
31
32
 
32
33
  export default {
33
34
  directives: { Outside },
34
35
  props: {
36
+ modelValue: {
37
+ type: String
38
+ },
39
+ value: String,
35
40
  inputName: {
36
41
  type: String,
37
42
  default: "phone",
@@ -40,10 +45,6 @@ export default {
40
45
  type: Boolean,
41
46
  default: true,
42
47
  },
43
- value: {
44
- type: String,
45
- default: "",
46
- },
47
48
  ignoredCountries: {
48
49
  type: Array,
49
50
  default: () => [],
@@ -57,6 +58,7 @@ export default {
57
58
  default: "",
58
59
  },
59
60
  },
61
+ emits: ['update:modelValue', 'onReady'],
60
62
  components: {
61
63
  VueTelInput,
62
64
  IbAlert,
@@ -65,16 +67,24 @@ export default {
65
67
  data() {
66
68
  return {
67
69
  vueTel: null,
68
- phone: "",
69
70
  dialCode: "",
70
71
  defaultCountry: "US",
72
+ allowChange: false
71
73
  };
72
74
  },
73
75
  mounted() {
74
76
  this.vueTel = this.$refs.vueTel;
75
77
 
76
- if (this.value) {
77
- this.phone = this.value[0] === "+" ? this.value : "+" + this.value;
78
+ this.$emit('onReady');
79
+ },
80
+ computed: {
81
+ phone: {
82
+ get() {
83
+ return this.modelValue
84
+ },
85
+ set(value) {
86
+ this.$emit('update:modelValue', value)
87
+ }
78
88
  }
79
89
  },
80
90
  methods: {
@@ -83,15 +93,11 @@ export default {
83
93
  this.vueTel.choose(value);
84
94
  });
85
95
 
86
- this.phone = "+" + data.dialCode;
87
-
88
- // if (!this.phone || this.phone.length - 1 < this.dialCode.length) {
89
- // console.log('1')
90
- // this.phone = "+" + data.dialCode;
91
- // } else if (this.dialCode) {
92
- // console.log(2)
93
- // this.phone = this.phone.replace(this.dialCode, data.dialCode);
94
- // }
96
+ if (!this.phone || this.phone.length - 1 < this.dialCode.length) {
97
+ this.phone = "+" + data.dialCode;
98
+ } else if (this.dialCode) {
99
+ this.phone = this.phone.replace(this.dialCode, data.dialCode);
100
+ }
95
101
  this.dialCode = data.dialCode;
96
102
  },
97
103
  clickOutside() {
@@ -105,5 +111,4 @@ export default {
105
111
 
106
112
  <style lang="scss">
107
113
  @import "./phoneInput.scss";
108
- </style>
109
- <style src="vue-tel-input/vue-tel-input.css"></style>
114
+ </style>
@@ -100,11 +100,10 @@ $dropdown-item-selected-border-color: $blue-900;
100
100
  .vti__input {
101
101
  background-color: transparent;
102
102
  width: 100%;
103
- margin: 0;
104
- margin-bottom: 6.5px;
105
- border-left: 0px;
106
- border-right: 0px;
107
- border-top: 0px;
103
+ margin: 0 0 6.5px;
104
+ border-left: 0;
105
+ border-right: 0;
106
+ border-top: 0;
108
107
  border-radius: 0;
109
108
 
110
109
  &::placeholder {
@@ -44,7 +44,7 @@ export default {
44
44
  },
45
45
  },
46
46
  value: {
47
- type: String,
47
+ type: [String, Number],
48
48
  required: true,
49
49
  },
50
50
  disabled: {
@@ -73,8 +73,8 @@ export default {
73
73
  },
74
74
  },
75
75
  methods: {
76
- checkHandler($event) {
77
- this.$emit('update:modelValue', $event.target.value)
76
+ checkHandler() {
77
+ this.$emit('update:modelValue', this.value)
78
78
  if (!this.disabled) {
79
79
  this.checked = !this.checked;
80
80
  this.$globalEvents.$emit(`radio:update:${this.name}`, this.uid);