@bagelink/vue 1.2.7 → 1.2.11

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/dist/index.cjs CHANGED
@@ -217,8 +217,8 @@ const _sfc_main$1j = /* @__PURE__ */ vue.defineComponent({
217
217
  });
218
218
  const bind3 = vue.computed(() => {
219
219
  const obj = {};
220
- if (props2.to) obj.to = props2.to;
221
- else if (props2.href) obj.href = props2.href;
220
+ if (props2.to && !props2.disabled) obj.to = props2.to;
221
+ else if (props2.href && !props2.disabled) obj.href = props2.href;
222
222
  if (!props2.to && !props2.href) {
223
223
  obj.role = props2.role;
224
224
  obj.type = props2.type;
@@ -275,7 +275,7 @@ const _sfc_main$1j = /* @__PURE__ */ vue.defineComponent({
275
275
  };
276
276
  }
277
277
  });
278
- const Btn = /* @__PURE__ */ _export_sfc(_sfc_main$1j, [["__scopeId", "data-v-5a91aa12"]]);
278
+ const Btn = /* @__PURE__ */ _export_sfc(_sfc_main$1j, [["__scopeId", "data-v-b609e748"]]);
279
279
  const _hoisted_1$17 = ["dismissable"];
280
280
  const _hoisted_2$R = { class: "m-0" };
281
281
  const _sfc_main$1i = /* @__PURE__ */ vue.defineComponent({
@@ -15523,8 +15523,11 @@ function findBglFieldById(id, _schema) {
15523
15523
  }
15524
15524
  function arrField(id, label, schemaOrType, options) {
15525
15525
  const attrs = { delete: true, add: true, ...options };
15526
- if (typeof schemaOrType === "string") attrs.type = schemaOrType;
15527
- else attrs.schema = schemaOrType;
15526
+ if (typeof schemaOrType === "string") {
15527
+ attrs.type = schemaOrType;
15528
+ } else {
15529
+ attrs.schema = schemaOrType;
15530
+ }
15528
15531
  return {
15529
15532
  label,
15530
15533
  id,
package/dist/index.mjs CHANGED
@@ -215,8 +215,8 @@ const _sfc_main$1j = /* @__PURE__ */ defineComponent({
215
215
  });
216
216
  const bind3 = computed(() => {
217
217
  const obj = {};
218
- if (props2.to) obj.to = props2.to;
219
- else if (props2.href) obj.href = props2.href;
218
+ if (props2.to && !props2.disabled) obj.to = props2.to;
219
+ else if (props2.href && !props2.disabled) obj.href = props2.href;
220
220
  if (!props2.to && !props2.href) {
221
221
  obj.role = props2.role;
222
222
  obj.type = props2.type;
@@ -273,7 +273,7 @@ const _sfc_main$1j = /* @__PURE__ */ defineComponent({
273
273
  };
274
274
  }
275
275
  });
276
- const Btn = /* @__PURE__ */ _export_sfc(_sfc_main$1j, [["__scopeId", "data-v-5a91aa12"]]);
276
+ const Btn = /* @__PURE__ */ _export_sfc(_sfc_main$1j, [["__scopeId", "data-v-b609e748"]]);
277
277
  const _hoisted_1$17 = ["dismissable"];
278
278
  const _hoisted_2$R = { class: "m-0" };
279
279
  const _sfc_main$1i = /* @__PURE__ */ defineComponent({
@@ -15521,8 +15521,11 @@ function findBglFieldById(id, _schema) {
15521
15521
  }
15522
15522
  function arrField(id, label, schemaOrType, options) {
15523
15523
  const attrs = { delete: true, add: true, ...options };
15524
- if (typeof schemaOrType === "string") attrs.type = schemaOrType;
15525
- else attrs.schema = schemaOrType;
15524
+ if (typeof schemaOrType === "string") {
15525
+ attrs.type = schemaOrType;
15526
+ } else {
15527
+ attrs.schema = schemaOrType;
15528
+ }
15526
15529
  return {
15527
15530
  label,
15528
15531
  id,
package/dist/style.css CHANGED
@@ -55,62 +55,62 @@
55
55
  text-decoration: underline;
56
56
  }
57
57
 
58
- .bgl_btn[data-v-5a91aa12] {
58
+ .bgl_btn[data-v-b609e748] {
59
59
  --btn-bg: var(--bgl-primary);
60
60
  --btn-color: var(--bgl-light-text);
61
61
  --btn-flat-color: var(--bgl-text-color);
62
62
  }
63
- .bgl_btn-green[data-v-5a91aa12] {
63
+ .bgl_btn-green[data-v-b609e748] {
64
64
  --btn-bg: var(--bgl-green);
65
65
  --btn-color: var(--bgl-light-text);
66
66
  --btn-flat-color: var(--bgl-green);
67
67
  }
68
- .bgl_btn-yellow[data-v-5a91aa12] {
68
+ .bgl_btn-yellow[data-v-b609e748] {
69
69
  --btn-bg: var(--bgl-yellow);
70
70
  --btn-color: var(--bgl-black);
71
71
  --btn-flat-color: var(--bgl-yellow);
72
72
  }
73
- .bgl_btn-blue[data-v-5a91aa12] {
73
+ .bgl_btn-blue[data-v-b609e748] {
74
74
  --btn-bg: var(--bgl-blue);
75
75
  --btn-color: var(--bgl-light-text);
76
76
  --btn-flat-color: var(--bgl-blue);
77
77
  }
78
- .bgl_btn-primary[data-v-5a91aa12] {
78
+ .bgl_btn-primary[data-v-b609e748] {
79
79
  --btn-bg: var(--bgl-primary);
80
80
  --btn-color: var(--bgl-light-text);
81
81
  --btn-flat-color: var(--bgl-primary);
82
82
  }
83
- .bgl_btn-red[data-v-5a91aa12] {
83
+ .bgl_btn-red[data-v-b609e748] {
84
84
  --btn-bg: var(--bgl-red);
85
85
  --btn-color: var(--bgl-light-text);
86
86
  --btn-flat-color: var(--bgl-red);
87
87
  }
88
- .bgl_btn-white[data-v-5a91aa12] {
88
+ .bgl_btn-white[data-v-b609e748] {
89
89
  --btn-bg: var(--bgl-white);
90
90
  --btn-color: var(--bgl-black);
91
91
  --btn-flat-color: var(--bgl-white);
92
92
  }
93
- .bgl_btn-black[data-v-5a91aa12] {
93
+ .bgl_btn-black[data-v-b609e748] {
94
94
  --btn-bg: var(--bgl-black);
95
95
  --btn-color: var(--bgl-light-text);
96
96
  --btn-flat-color: var(--bgl-black);
97
97
  }
98
- .bgl_btn-gray[data-v-5a91aa12] {
98
+ .bgl_btn-gray[data-v-b609e748] {
99
99
  --btn-bg: var(--bgl-gray-light);
100
100
  --btn-color: var(--bgl-black);
101
101
  --btn-flat-color: var(--bgl-gray);
102
102
  }
103
- .bgl_btn-light[data-v-5a91aa12] {
103
+ .bgl_btn-light[data-v-b609e748] {
104
104
  --btn-bg: var(--bgl-primary-light);
105
105
  --btn-color: var(--bgl-primary);
106
106
  --btn-flat-color: var(--bgl-primary-light);
107
107
  }
108
- .bgl_btn-gray-light[data-v-5a91aa12] {
108
+ .bgl_btn-gray-light[data-v-b609e748] {
109
109
  --btn-bg: var(--bgl-gray-light);
110
110
  --btn-color: var(--bgl-gray);
111
111
  --btn-flat-color: var(--bgl-gray-light);
112
112
  }
113
- .bgl_btn[data-v-5a91aa12] {
113
+ .bgl_btn[data-v-b609e748] {
114
114
  padding-left: var(--btn-padding);
115
115
  padding-right: var(--btn-padding);
116
116
  transition: var(--bgl-transition);
@@ -118,7 +118,7 @@
118
118
  color: var(--btn-color);
119
119
  text-decoration: none;
120
120
  }
121
- .bgl_btn.bgl_btn-icon[data-v-5a91aa12] {
121
+ .bgl_btn.bgl_btn-icon[data-v-b609e748] {
122
122
  padding-left: 0;
123
123
  padding-right: 0;
124
124
  height: var(--btn-height);
@@ -127,73 +127,73 @@
127
127
  font-size: 1rem;
128
128
  flex-shrink: 0;
129
129
  }
130
- a[data-v-5a91aa12] {
130
+ a[data-v-b609e748] {
131
131
  text-decoration: none;
132
132
  }
133
- .bgl_btn-flex[data-v-5a91aa12] {
133
+ .bgl_btn-flex[data-v-b609e748] {
134
134
  display: flex;
135
135
  align-items: center;
136
136
  gap: 0.5rem;
137
137
  justify-content: center;
138
138
  height: 100%;
139
139
  }
140
- .bgl_btn .bgl_btn-icon[data-v-5a91aa12]{
140
+ .bgl_btn .bgl_btn-icon[data-v-b609e748]{
141
141
  font-size: calc(var(--input-font-size) * 1.3);
142
142
  }
143
- .bgl_btn[data-v-5a91aa12]:hover,
144
- .bgl_btn-icon[data-v-5a91aa12]:hover {
143
+ .bgl_btn[data-v-b609e748]:hover,
144
+ .bgl_btn-icon[data-v-b609e748]:hover {
145
145
  filter: var(--bgl-hover-filter);
146
146
  }
147
- .bgl_btn[data-v-5a91aa12]:active:not(:disabled),
148
- .bgl_btn-icon[data-v-5a91aa12]:active:not(:disabled) {
147
+ .bgl_btn[data-v-b609e748]:active:not(:disabled),
148
+ .bgl_btn-icon[data-v-b609e748]:active:not(:disabled) {
149
149
  filter: var(--bgl-active-filter);
150
150
  }
151
- .bgl_btn.bgl_btn_flat[data-v-5a91aa12] {
151
+ .bgl_btn.bgl_btn_flat[data-v-b609e748] {
152
152
  background: transparent;
153
153
  color: var(--btn-flat-color);
154
154
  }
155
- .bgl_btn_flat[data-v-5a91aa12]:hover:not(:disabled),
156
- .bgl_btn-icon.bgl_btn_flat[data-v-5a91aa12]:hover:not(:disabled) {
155
+ .bgl_btn_flat[data-v-b609e748]:hover:not(:disabled),
156
+ .bgl_btn-icon.bgl_btn_flat[data-v-b609e748]:hover:not(:disabled) {
157
157
  background: var(--bgl-gray-20);
158
158
  }
159
- .bgl_btn.bgl_btn_flat[data-v-5a91aa12]:active:not(:disabled),
160
- .bgl_btn-icon.bgl_btn_flat[data-v-5a91aa12]:active:not(:disabled) {
159
+ .bgl_btn.bgl_btn_flat[data-v-b609e748]:active:not(:disabled),
160
+ .bgl_btn-icon.bgl_btn_flat[data-v-b609e748]:active:not(:disabled) {
161
161
  background: var(--bgl-gray-40);
162
162
  }
163
- .bgl_btn.thin[data-v-5a91aa12] {
163
+ .bgl_btn.thin[data-v-b609e748] {
164
164
  padding-inline: calc(var(--btn-padding) / 3);
165
165
  border-radius: calc(var(--btn-border-radius) / 1.5);
166
166
  }
167
- .bgl_btn.round[data-v-5a91aa12] {
167
+ .bgl_btn.round[data-v-b609e748] {
168
168
  border-radius: 1000px;
169
169
  }
170
- .bgl_btn-icon.thin[data-v-5a91aa12] {
170
+ .bgl_btn-icon.thin[data-v-b609e748] {
171
171
  height: calc(var(--btn-height) / 1.5);
172
172
  width: calc(var(--btn-height) / 1.5);
173
173
  line-height: normal;
174
174
  }
175
- .bgl_btn-icon.thin .bgl_btn-flex[data-v-5a91aa12] {
175
+ .bgl_btn-icon.thin .bgl_btn-flex[data-v-b609e748] {
176
176
  height: 100%;
177
177
  }
178
- [dir="rtl"] .bgl_btn-icon[data-v-5a91aa12]{
178
+ [dir="rtl"] .bgl_btn-icon[data-v-b609e748]{
179
179
  transform: rotateY(180deg);
180
180
  }
181
- [dir="rtl"] .ltr .bgl_btn-icon[data-v-5a91aa12]{
181
+ [dir="rtl"] .ltr .bgl_btn-icon[data-v-b609e748]{
182
182
  transform: rotateY(0deg);
183
183
  }
184
- .bgl_btn-border[data-v-5a91aa12], .bgl_btn-icon.bgl_btn_flat.bgl_btn-border[data-v-5a91aa12] {
184
+ .bgl_btn-border[data-v-b609e748], .bgl_btn-icon.bgl_btn_flat.bgl_btn-border[data-v-b609e748] {
185
185
  border: 1px solid var(--btn-flat-color);
186
186
  background: transparent;
187
187
  color: var(--btn-flat-color);
188
188
  }
189
- .bgl_btn-border[data-v-5a91aa12]:hover {
189
+ .bgl_btn-border[data-v-b609e748]:hover {
190
190
  color: var(--btn-flat-color);
191
191
  }
192
- .bgl_btn-border[data-v-5a91aa12]:active:not(:disabled) {
192
+ .bgl_btn-border[data-v-b609e748]:active:not(:disabled) {
193
193
  filter: brightness(80%);
194
194
  }
195
- .bgl_btn[data-v-5a91aa12]:disabled {
196
- opacity: 0.6;
195
+ .bgl_btn[data-v-b609e748]:disabled, .bgl_btn[disabled=true][data-v-b609e748] {
196
+ opacity: 0.7;
197
197
  filter: grayscale(0.3);
198
198
  cursor: not-allowed;
199
199
  }
@@ -16,13 +16,14 @@ export type BagelFieldOptions<T> = (string | ({
16
16
  })[] | ((val: any, rowData?: T) => void));
17
17
  export type GenericAssertFn<T> = (val: any, row?: T) => boolean;
18
18
  export type TypedAssertFn<T, K> = (K extends keyof T ? (val?: FieldVal<T, K>, row?: T) => boolean : GenericAssertFn<T>);
19
- export type VIfType<T, K> = string | boolean | TypedAssertFn<T, K>;
19
+ export type VIfType<T, P> = string | boolean | ((val?: FieldVal<T, P>, rowData?: T) => boolean);
20
20
  export type ValidationFn<T, K> = (val: FieldVal<T, K>, rowData?: T) => string | undefined;
21
21
  export type NonArrayMethodKeys<T> = Exclude<keyof T, keyof any[] | symbol>;
22
22
  export type Path<T> = {
23
23
  [K in NonArrayMethodKeys<T> & (string | number)]: T[K] extends object ? (`${K}` | (Path<T[K]> extends infer Rest ? Rest extends string | number ? `${K}.${Rest}` : never : never)) : `${K}`;
24
24
  }[NonArrayMethodKeys<T> & (string | number)];
25
25
  export type FieldVal<T, P> = P extends `${infer Key}.${infer Rest}` ? Key extends keyof T ? FieldVal<T[Key], Rest> : never : P extends keyof T ? T[P] : never;
26
+ export type ArrayFieldVal<T, P, FV = FieldVal<T, P>> = (FV extends Array<infer U> ? U : FV extends object ? FV : never);
26
27
  export type SchemaChildrenT<T> = (Field<T> | string | VNode)[];
27
28
  export interface BaseBagelField<T, P> {
28
29
  '$el'?: any;
@@ -1 +1 @@
1
- {"version":3,"file":"BagelForm.d.ts","sourceRoot":"","sources":["../../src/types/BagelForm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BagelForm.d.ts","sourceRoot":"","sources":["../../src/types/BagelForm.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { BaseBagelField, BglFormSchemaT, Field, InputBagelField, Option, SchemaChildrenT, SelectBagelField, VIfType } from '..';
1
+ import { ArrayFieldVal, BaseBagelField, BglFormSchemaT, Field, InputBagelField, Option, Path, SchemaChildrenT, SelectBagelField, VIfType } from '..';
2
2
  import { UploadInputProps } from '../components/form/inputs/Upload/upload.types';
3
3
  interface InputOptions<T, K> {
4
4
  required?: boolean;
@@ -40,34 +40,20 @@ interface NumFieldOptions<T, K> extends InputOptions<T, K> {
40
40
  useGrouping?: boolean;
41
41
  }
42
42
  type RichTextOptions<T, K> = InputOptions<T, K>;
43
- export declare function getBaseField<T extends {
44
- [key: string]: any;
45
- }, P>(id?: P, labelOrRest?: string | Partial<BaseBagelField<T, P>>, rest?: Partial<BaseBagelField<T, P>>): BaseBagelField<T, P>;
46
- export declare function richText<T extends {
47
- [key: string]: any;
48
- }, P>(id: P, label?: string, options?: RichTextOptions<T, P>): BaseBagelField<T, P>;
49
- export declare function txtField<T extends {
50
- [key: string]: any;
51
- }, P>(id: P, label?: string, options?: TextInputOptions<T, P> & Partial<BaseBagelField<T, P>>): BaseBagelField<T, P> | InputBagelField<T>;
52
- export declare function selectField<T extends {
53
- [key: string]: any;
54
- }, P>(id: P, label?: string, options?: Option[] | (() => Option[]), config?: SlctInputOptions<T, P>): BaseBagelField<T, P> | SelectBagelField<T>;
43
+ export declare function getBaseField<T, P extends Path<T>>(id?: P, labelOrRest?: string | Partial<BaseBagelField<T, P>>, rest?: Partial<BaseBagelField<T, P>>): BaseBagelField<T, P>;
44
+ export declare function richText<T, P extends Path<T>>(id: P, label?: string, options?: RichTextOptions<T, P>): BaseBagelField<T, P>;
45
+ export declare function txtField<T, P extends Path<T>>(id: P, label?: string, options?: TextInputOptions<T, P> & Partial<BaseBagelField<T, P>>): BaseBagelField<T, P> | InputBagelField<T>;
46
+ export declare function selectField<T, P extends Path<T>>(id: P, label?: string, options?: Option[] | (() => Option[]), config?: SlctInputOptions<T, P>): BaseBagelField<T, P> | SelectBagelField<T>;
55
47
  export declare const slctField: typeof selectField;
56
48
  interface CheckInputOptions<T, K> extends InputOptions<T, K> {
57
49
  value?: string;
58
50
  }
59
- export declare function checkField<T extends {
60
- [key: string]: any;
61
- }, P>(id: P, label?: string, options?: CheckInputOptions<T, P>): BaseBagelField<T, P>;
62
- export declare function dateField<T extends {
63
- [key: string]: any;
64
- }, P>(id: P, label?: string, options?: DateOptions<T, P>): BaseBagelField<T, P>;
65
- export declare function numField<T extends {
66
- [key: string]: any;
67
- }, P>(id: P, label?: string, options?: NumFieldOptions<T, P>): BaseBagelField<T, P>;
51
+ export declare function checkField<T, P extends Path<T>>(id: P, label?: string, options?: CheckInputOptions<T, P>): BaseBagelField<T, P>;
52
+ export declare function dateField<T, P extends Path<T>>(id: P, label?: string, options?: DateOptions<T, P>): BaseBagelField<T, P>;
53
+ export declare function numField<T, P extends Path<T>>(id: P, label?: string, options?: NumFieldOptions<T, P>): BaseBagelField<T, P>;
68
54
  export declare function frmRow<T>(...children: SchemaChildrenT<T>): Field<T>;
69
55
  export type UploadOptions<T, K> = InputOptions<T, K> & UploadInputProps;
70
- export declare function uploadField<T, P>(id: P, label?: string, options?: UploadOptions<T, P>): BaseBagelField<T, P>;
56
+ export declare function uploadField<T, P extends Path<T>>(id: P, label?: string, options?: UploadOptions<T, P>): BaseBagelField<T, P>;
71
57
  interface RangeOptions<T, K> extends InputOptions<T, K> {
72
58
  min?: number;
73
59
  max?: number;
@@ -76,9 +62,7 @@ interface RangeOptions<T, K> extends InputOptions<T, K> {
76
62
  multiRange?: boolean;
77
63
  formatValue?: (value: number) => string;
78
64
  }
79
- export declare function rangeField<T extends {
80
- [key: string]: any;
81
- }, P>(id: P, label?: string, options?: RangeOptions<T, P>): BaseBagelField<T, P>;
65
+ export declare function rangeField<T, P extends Path<T>>(id: P, label?: string, options?: RangeOptions<T, P>): BaseBagelField<T, P>;
82
66
  export declare function bglForm<T>(idOrField?: string | Field<T>, ...schema: Field<T>[]): {
83
67
  $el: string;
84
68
  id: string;
@@ -92,25 +76,19 @@ export declare function bglForm<T>(idOrField?: string | Field<T>, ...schema: Fie
92
76
  };
93
77
  id?: undefined;
94
78
  };
95
- export declare function telField<T extends {
96
- [key: string]: any;
97
- }, P>(id: P, label?: string, options?: {
79
+ export declare function telField<T, P extends Path<T>>(id: P, label?: string, options?: {
98
80
  [key: string]: any;
99
81
  }): BaseBagelField<T, P>;
100
- export declare function colorField<T extends {
101
- [key: string]: any;
102
- }, P>(id: P, label?: string, options?: {
82
+ export declare function colorField<T, P extends Path<T>>(id: P, label?: string, options?: {
103
83
  [key: string]: any;
104
84
  }): BaseBagelField<T, P>;
105
85
  export declare function findBglFieldById<T>(id: string, _schema: BglFormSchemaT<T>): Field<T> | undefined;
106
- interface ArrayFieldOptions<T, K> extends InputOptions<T, K> {
86
+ export interface ArrayFieldOptions<T, K> extends InputOptions<T, K> {
107
87
  delete?: boolean;
108
88
  add?: boolean;
109
89
  }
110
- type ArrayType = 'number' | 'text';
111
- export declare function arrField<T extends {
112
- [key: string]: any;
113
- }, P>(id: P, label: string, schemaOrType: BglFormSchemaT<T> | ArrayType, options?: ArrayFieldOptions<T, P>): BaseBagelField<T, P>;
90
+ export type ArrayType = 'number' | 'text';
91
+ export declare function arrField<T, P extends Path<T>>(id: P, label: string, schemaOrType: BglFormSchemaT<ArrayFieldVal<T, P>> | ArrayType, options?: ArrayFieldOptions<T, P>): BaseBagelField<T, P>;
114
92
  export declare function useForm(): {
115
93
  txtField: typeof txtField;
116
94
  selectField: typeof selectField;
@@ -1 +1 @@
1
- {"version":3,"file":"BagelFormUtils.d.ts","sourceRoot":"","sources":["../../src/utils/BagelFormUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BagelFormUtils.d.ts","sourceRoot":"","sources":["../../src/utils/BagelFormUtils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bagelink/vue",
3
3
  "type": "module",
4
- "version": "1.2.7",
4
+ "version": "1.2.11",
5
5
  "description": "Bagel core sdk packages",
6
6
  "author": {
7
7
  "name": "Neveh Allon",
@@ -49,8 +49,8 @@ const isComponent = $computed(() => {
49
49
 
50
50
  const bind = $computed(() => {
51
51
  const obj: { [key: string]: any } = {}
52
- if (props.to) obj.to = props.to
53
- else if (props.href) obj.href = props.href
52
+ if (props.to && !props.disabled) obj.to = props.to
53
+ else if (props.href && !props.disabled) obj.href = props.href
54
54
  if (!props.to && !props.href) {
55
55
  obj.role = props.role
56
56
  obj.type = props.type
@@ -257,8 +257,8 @@ a {
257
257
  filter: brightness(80%);
258
258
  }
259
259
 
260
- .bgl_btn:disabled {
261
- opacity: 0.6;
260
+ .bgl_btn:disabled, .bgl_btn[disabled=true] {
261
+ opacity: 0.7;
262
262
  filter: grayscale(0.3);
263
263
  cursor: not-allowed;
264
264
  }
@@ -33,7 +33,9 @@ export type TypedAssertFn<T, K> = (
33
33
  GenericAssertFn<T>
34
34
  )
35
35
 
36
- export type VIfType<T, K> = string | boolean | TypedAssertFn<T, K>
36
+ // export type VIfType<T, K> = string | boolean | TypedAssertFn<T, K>
37
+
38
+ export type VIfType<T, P> = string | boolean | ((val?: FieldVal<T, P>, rowData?: T) => boolean)
37
39
 
38
40
  export type ValidationFn<T, K> = (
39
41
  val: FieldVal<T, K>,
@@ -70,6 +72,18 @@ export type FieldVal<T, P> =
70
72
  P extends keyof T ?
71
73
  T[P] : never
72
74
 
75
+ export type ArrayFieldVal<
76
+ T,
77
+ P,
78
+ FV = FieldVal<T, P>
79
+ > = (
80
+ FV extends Array<infer U> ?
81
+ U :
82
+ FV extends object ?
83
+ FV :
84
+ never
85
+ )
86
+
73
87
  export type SchemaChildrenT<T> = (Field<T> | string | VNode)[]
74
88
 
75
89
  export interface BaseBagelField<T, P> {
@@ -1,4 +1,4 @@
1
- import type { BaseBagelField, BglFormSchemaT, Field, InputBagelField, Option, SchemaChildrenT, SelectBagelField, VIfType } from '@bagelink/vue'
1
+ import type { ArrayFieldVal, Attributes, BaseBagelField, BglFormSchemaT, Field, InputBagelField, Option, Path, SchemaChildrenT, SelectBagelField, VIfType } from '@bagelink/vue'
2
2
  import type { UploadInputProps } from '../components/form/inputs/Upload/upload.types'
3
3
 
4
4
  interface InputOptions<T, K> {
@@ -47,7 +47,7 @@ interface NumFieldOptions<T, K> extends InputOptions<T, K> {
47
47
 
48
48
  type RichTextOptions<T, K> = InputOptions<T, K>
49
49
 
50
- export function getBaseField<T extends { [key: string]: any }, P>(
50
+ export function getBaseField<T, P extends Path<T>>(
51
51
  id?: P,
52
52
  labelOrRest: string | Partial<BaseBagelField<T, P>> = {},
53
53
  rest: Partial<BaseBagelField<T, P>> = {}
@@ -56,7 +56,7 @@ export function getBaseField<T extends { [key: string]: any }, P>(
56
56
  return { id, label: labelOrRest, ...rest }
57
57
  }
58
58
 
59
- export function richText<T extends { [key: string]: any }, P>(
59
+ export function richText<T, P extends Path<T>>(
60
60
  id: P,
61
61
  label?: string,
62
62
  options?: RichTextOptions<T, P>,
@@ -75,7 +75,7 @@ export function richText<T extends { [key: string]: any }, P>(
75
75
  }
76
76
  }
77
77
 
78
- export function txtField<T extends { [key: string]: any }, P>(
78
+ export function txtField<T, P extends Path<T>>(
79
79
  id: P,
80
80
  label?: string,
81
81
  options?: TextInputOptions<T, P> & Partial<BaseBagelField<T, P>>,
@@ -104,7 +104,7 @@ export function txtField<T extends { [key: string]: any }, P>(
104
104
  }
105
105
  }
106
106
 
107
- export function selectField<T extends { [key: string]: any }, P>(
107
+ export function selectField<T, P extends Path<T>>(
108
108
  id: P,
109
109
  label?: string,
110
110
  options?: Option[] | (() => Option[]),
@@ -137,7 +137,7 @@ interface CheckInputOptions<T, K> extends InputOptions<T, K> {
137
137
  value?: string
138
138
  }
139
139
 
140
- export function checkField<T extends { [key: string]: any }, P>(
140
+ export function checkField<T, P extends Path<T>>(
141
141
  id: P,
142
142
  label?: string,
143
143
  options?: CheckInputOptions<T, P>,
@@ -154,7 +154,7 @@ export function checkField<T extends { [key: string]: any }, P>(
154
154
  }
155
155
  }
156
156
 
157
- export function dateField<T extends { [key: string]: any }, P>(
157
+ export function dateField<T, P extends Path<T>>(
158
158
  id: P,
159
159
  label?: string,
160
160
  options?: DateOptions<T, P>,
@@ -179,7 +179,7 @@ export function dateField<T extends { [key: string]: any }, P>(
179
179
  }
180
180
  }
181
181
 
182
- export function numField<T extends { [key: string]: any }, P>(
182
+ export function numField<T, P extends Path<T>>(
183
183
  id: P,
184
184
  label?: string,
185
185
  options?: NumFieldOptions<T, P>,
@@ -218,7 +218,7 @@ export function frmRow<T>(...children: SchemaChildrenT<T>): Field<T> {
218
218
 
219
219
  export type UploadOptions<T, K> = InputOptions<T, K> & UploadInputProps
220
220
 
221
- export function uploadField<T, P>(id: P, label?: string, options?: UploadOptions<T, P>): BaseBagelField<T, P> {
221
+ export function uploadField<T, P extends Path<T>>(id: P, label?: string, options?: UploadOptions<T, P>): BaseBagelField<T, P> {
222
222
  return {
223
223
  $el: 'upload',
224
224
  id,
@@ -239,7 +239,7 @@ interface RangeOptions<T, K> extends InputOptions<T, K> {
239
239
  formatValue?: (value: number) => string
240
240
  }
241
241
 
242
- export function rangeField<T extends { [key: string]: any }, P>(
242
+ export function rangeField<T, P extends Path<T>>(
243
243
  id: P,
244
244
  label?: string,
245
245
  options?: RangeOptions <T, P>
@@ -279,7 +279,7 @@ export function bglForm<T>(idOrField?: string | Field<T>, ...schema: Field<T>[])
279
279
  }
280
280
  }
281
281
 
282
- export function telField<T extends { [key: string]: any }, P>(
282
+ export function telField<T, P extends Path<T>>(
283
283
  id: P,
284
284
  label?: string,
285
285
  options?: { [key: string]: any }
@@ -294,7 +294,7 @@ export function telField<T extends { [key: string]: any }, P>(
294
294
  }
295
295
  }
296
296
 
297
- export function colorField<T extends { [key: string]: any }, P>(
297
+ export function colorField<T, P extends Path<T>>(
298
298
  id: P,
299
299
  label?: string,
300
300
  options?: { [key: string]: any }
@@ -323,22 +323,27 @@ export function findBglFieldById<T>(id: string, _schema: BglFormSchemaT<T>): Fie
323
323
  return undefined
324
324
  }
325
325
 
326
- interface ArrayFieldOptions<T, K> extends InputOptions<T, K> {
326
+ export interface ArrayFieldOptions<T, K> extends InputOptions<T, K> {
327
327
  delete?: boolean
328
328
  add?: boolean
329
329
  }
330
330
 
331
- type ArrayType = 'number' | 'text'
331
+ export type ArrayType = 'number' | 'text'
332
332
 
333
- export function arrField<T extends { [key: string]: any }, P>(
333
+ export function arrField<T, P extends Path<T>>(
334
334
  id: P,
335
335
  label: string,
336
- schemaOrType: BglFormSchemaT<T> | ArrayType,
336
+ schemaOrType: BglFormSchemaT<ArrayFieldVal<T, P>> | ArrayType,
337
337
  options?: ArrayFieldOptions<T, P>
338
338
  ): BaseBagelField<T, P> {
339
- const attrs: { [key: string]: any } = { delete: true, add: true, ...options }
340
- if (typeof schemaOrType === 'string') attrs.type = schemaOrType
341
- else attrs.schema = schemaOrType
339
+ const attrs: Attributes<T> = { delete: true, add: true, ...options }
340
+
341
+ if (typeof schemaOrType === 'string') {
342
+ attrs.type = schemaOrType
343
+ } else {
344
+ attrs.schema = schemaOrType
345
+ }
346
+
342
347
  return {
343
348
  label,
344
349
  id,
@@ -348,8 +353,7 @@ export function arrField<T extends { [key: string]: any }, P>(
348
353
  attrs,
349
354
  }
350
355
  }
351
-
352
- // export function updateBagelSchemaWithErrorResponse<T extends { [key: string]: any }>(
356
+ // export function updateBagelSchemaWithErrorResponse<T>(
353
357
  // schema: BglFormSchemaT<T>,
354
358
  // invalidFieldId: Record<string, string[]>,
355
359
  // ) {