inertia-bootstrap-forms 2.1.16 → 2.1.18

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.
package/index.d.ts CHANGED
@@ -126,7 +126,43 @@ export const CheckboxButtonInput: DefineComponent<{
126
126
  },
127
127
  }, {}, any>;
128
128
  export const CheckboxInput: DefineComponent<{}, {}, any>;
129
- export const CheckboxToggle: DefineComponent<{}, {}, any>;
129
+ export const CheckboxToggle: DefineComponent<{
130
+ name: {
131
+ type: String,
132
+ required: true,
133
+ },
134
+ id: {
135
+ type: String,
136
+ default: '',
137
+ required: false,
138
+ },
139
+ value: {
140
+ type: [String, Number],
141
+ default: 'yes',
142
+ required: false,
143
+ },
144
+ checked: {
145
+ type: [Boolean],
146
+ default: '',
147
+ },
148
+ type: {
149
+ type: String,
150
+ default: 'checkbox',
151
+ required: false,
152
+ },
153
+ disabled: {
154
+ type: Boolean,
155
+ default: false,
156
+ },
157
+ readonly: {
158
+ type: Boolean,
159
+ default: false,
160
+ },
161
+ hideInput: {
162
+ type: Boolean,
163
+ default: false,
164
+ }
165
+ }, {}, any>;
130
166
  export const SwitchInput: DefineComponent<{}, {}, any>;
131
167
  export const countryCodes: any;
132
168
  export const EditorInput: DefineComponent<{
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "inertia-bootstrap-forms",
3
- "version": "2.1.16",
3
+ "version": "2.1.18",
4
4
  "description": "Create bootstrap forms with inertia and twitter bootstrap",
5
5
  "main": "dist/inertia-bootstrap-forms.cjs.js",
6
6
  "module": "dist/inertia-bootstrap-forms.es.js",
@@ -17,11 +17,24 @@ export default defineComponent({
17
17
  default: 'yes',
18
18
  required: false,
19
19
  },
20
+ checked: {
21
+ type: [Boolean],
22
+ default: '',
23
+ },
20
24
  type: {
21
25
  type: String,
22
26
  default: 'checkbox',
23
27
  required: false,
24
28
  },
29
+ disabled: {
30
+ type: Boolean,
31
+ default: false,
32
+ required: false,
33
+ },
34
+ readonly: {
35
+ type: Boolean,
36
+ default: false,
37
+ },
25
38
  hideInput: {
26
39
  type: Boolean,
27
40
  default: false,
@@ -31,7 +44,7 @@ export default defineComponent({
31
44
  inputID() {
32
45
  return this.form.getID(this) + (this.value || '');
33
46
  },
34
- selectedValue(){
47
+ selectedValue() {
35
48
  return (this.modelValue && typeof this.modelValue == 'object') ? Object.values(this.modelValue) : (this.modelValue ? [this.modelValue] : null)
36
49
  }
37
50
  },
@@ -62,15 +75,22 @@ export default defineComponent({
62
75
  })
63
76
  </script>
64
77
  <template>
65
- <label class="form-check-toggle" :class="{'form-check-toggle--active': (selectedValue || []).includes(value), 'is-invalid': form?.errors[name]}" :for="inputID">
78
+ <label class="form-check-toggle"
79
+ :class="{
80
+ 'form-check-toggle--active': (selectedValue || []).includes(value),
81
+ 'disabled': disabled,
82
+ 'is-invalid': form?.errors[name]
83
+ }" :for="inputID">
66
84
  <input
67
85
  :name="name"
68
86
  :id="inputID"
69
87
  v-model="modelValue"
70
88
  :class="{'is-invalid': form?.errors[name], 'form-check-toggle--input-hide': hideInput}"
71
- :disabled="form?.processing"
89
+ :disabled="form?.processing || disabled"
72
90
  :type="type"
73
91
  :value="value"
92
+ :checked="checked"
93
+ :readonly="readonly"
74
94
  @change="e => $emit('change', e)"
75
95
  class="form-check-toggle--input form-check-input">
76
96
  <slot/>
@@ -103,7 +123,7 @@ export default defineComponent({
103
123
  }
104
124
 
105
125
  .form-check-toggle.form-check-toggle--active,
106
- .form-check-toggle:has(input:checked){
126
+ .form-check-toggle:has(input:checked) {
107
127
  background-color: var(--bs-warning-bg-subtle, #ffda6a);
108
128
  border-color: var(--bs-warning-border-subtle, var(--bs-alert-border-color, #fff0c3));
109
129
  }