@saas-ui/forms 0.6.1 → 0.6.2
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.md +6 -0
- package/dist/yup/index.d.ts +2 -0
- package/dist/yup/index.d.ts.map +1 -0
- package/dist/yup/index.js.map +1 -1
- package/dist/yup/index.modern.js.map +1 -1
- package/dist/yup/yup-resolver.d.ts +29 -0
- package/dist/yup/yup-resolver.d.ts.map +1 -0
- package/package.json +1 -1
- package/yup/package.json +1 -8
- package/dist/yup/src/yup/src/index.d.ts +0 -2
- package/dist/yup/src/yup/src/index.d.ts.map +0 -1
- package/dist/yup/src/yup/src/yup.d.ts +0 -25
- package/dist/yup/src/yup/src/yup.d.ts.map +0 -1
package/CHANGELOG.md
CHANGED
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../yup/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA"}
|
package/dist/yup/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../yup/src/yup.ts"],"sourcesContent":["import { reach, AnyObjectSchema } from 'yup'\nimport { yupResolver } from '@hookform/resolvers/yup'\n\nimport { FieldProps } from '
|
1
|
+
{"version":3,"file":"index.js","sources":["../../yup/src/yup-resolver.ts"],"sourcesContent":["import { reach, AnyObjectSchema } from 'yup'\nimport { yupResolver } from '@hookform/resolvers/yup'\n\nimport { FieldProps } from '@saas-ui/forms'\n\nexport { yupResolver }\n\nexport type Options = {\n min?: number\n max?: number\n}\n\n// @TODO get proper typings for the schema fields\nconst getType = (field: any) => {\n if (field.spec.meta?.type) {\n return field.spec.meta.type\n }\n\n switch (field.type) {\n case 'array':\n return 'array'\n case 'object':\n return 'object'\n case 'number':\n return 'number'\n case 'date':\n return 'date'\n case 'string':\n default:\n return 'text'\n }\n}\n\nconst getArrayOption = (field: any, name: string) => {\n for (const test of field.tests) {\n if (test.OPTIONS?.params[name]) return test.OPTIONS.params[name]\n }\n}\n\n/**\n * A helper function to render forms automatically based on a Yup schema\n *\n * @param schema The Yup schema\n * @returns {FieldProps[]}\n */\nexport const getFieldsFromSchema = (schema: AnyObjectSchema): FieldProps[] => {\n const fields = []\n\n let schemaFields: Record<string, any> = {}\n if (schema.type === 'array') {\n /* @ts-ignore this is actually valid */\n schemaFields = schema.innerType.fields\n } else {\n schemaFields = schema.fields\n }\n\n for (const name in schemaFields) {\n const field = schemaFields[name]\n\n const options: Options = {}\n if (field.type === 'array') {\n options.min = getArrayOption(field, 'min')\n options.max = getArrayOption(field, 'max')\n }\n\n fields.push({\n name,\n label: field.spec.label || name,\n type: getType(field),\n ...options,\n })\n }\n return fields\n}\n\nexport const getNestedSchema = (schema: AnyObjectSchema, path: string) => {\n return reach(schema, path)\n}\n\nexport const yupFieldResolver = (schema: AnyObjectSchema) => {\n return {\n getFields() {\n return getFieldsFromSchema(schema)\n },\n getNestedFields(name: string) {\n return getFieldsFromSchema(getNestedSchema(schema, name))\n },\n }\n}\n\nexport const yupForm = (\n schema: AnyObjectSchema,\n schemaOptions = {},\n resolverOptions = {}\n) => {\n return {\n schema,\n resolver: yupResolver(schema, schemaOptions, resolverOptions),\n fieldResolver: yupFieldResolver(schema),\n }\n}\n"],"names":["getType","field","spec","meta","_field$spec$meta","type","getArrayOption","name","tests","test","OPTIONS","_test$OPTIONS","params","getFieldsFromSchema","schema","schemaFields","fields","innerType","options","min","max","push","label","getNestedSchema","path","reach","yupFieldResolver","getFields","getNestedFields","schemaOptions","resolverOptions","resolver","yupResolver","fieldResolver"],"mappings":"oXAaA,IAAMA,EAAU,SAACC,SACf,YAAIA,EAAMC,KAAKC,OAAXC,EAAiBC,KACnB,OAAOJ,EAAMC,KAAKC,KAAKE,KAGzB,OAAQJ,EAAMI,MACZ,IAAK,QACH,MAAO,QACT,IAAK,SACH,MAAO,SACT,IAAK,SACH,MAAO,SACT,IAAK,OACH,MAAO,OAET,QACE,MAAO,SAIPC,EAAiB,SAACL,EAAYM,GAClC,srBAAmBN,EAAMO,sBAAO,OAArBC,UACT,YAAIA,EAAKC,UAALC,EAAcC,OAAOL,GAAO,OAAOE,EAAKC,QAAQE,OAAOL,KAUlDM,EAAsB,SAACC,GAClC,IAEIC,EAFEC,EAAS,GAUf,IAAK,IAAMT,KALTQ,EAFkB,UAAhBD,EAAOT,KAEMS,EAAOG,UAAUD,OAEjBF,EAAOE,OAGS,CAC/B,IAAMf,EAAQc,EAAaR,GAErBW,EAAmB,GACN,UAAfjB,EAAMI,OACRa,EAAQC,IAAMb,EAAeL,EAAO,OACpCiB,EAAQE,IAAMd,EAAeL,EAAO,QAGtCe,EAAOK,QACLd,KAAAA,EACAe,MAAOrB,EAAMC,KAAKoB,OAASf,EAC3BF,KAAML,EAAQC,IACXiB,IAGP,OAAOF,GAGIO,EAAkB,SAACT,EAAyBU,GACvD,OAAOC,QAAMX,EAAQU,IAGVE,EAAmB,SAACZ,GAC/B,MAAO,CACLa,qBACE,OAAOd,EAAoBC,IAE7Bc,yBAAgBrB,GACd,OAAOM,EAAoBU,EAAgBT,EAAQP,4MAKlC,SACrBO,EACAe,EACAC,GAEA,gBAHAD,IAAAA,EAAgB,aAChBC,IAAAA,EAAkB,IAEX,CACLhB,OAAAA,EACAiB,SAAUC,cAAYlB,EAAQe,EAAeC,GAC7CG,cAAeP,EAAiBZ"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.modern.js","sources":["../../yup/src/yup.ts"],"sourcesContent":["import { reach, AnyObjectSchema } from 'yup'\nimport { yupResolver } from '@hookform/resolvers/yup'\n\nimport { FieldProps } from '
|
1
|
+
{"version":3,"file":"index.modern.js","sources":["../../yup/src/yup-resolver.ts"],"sourcesContent":["import { reach, AnyObjectSchema } from 'yup'\nimport { yupResolver } from '@hookform/resolvers/yup'\n\nimport { FieldProps } from '@saas-ui/forms'\n\nexport { yupResolver }\n\nexport type Options = {\n min?: number\n max?: number\n}\n\n// @TODO get proper typings for the schema fields\nconst getType = (field: any) => {\n if (field.spec.meta?.type) {\n return field.spec.meta.type\n }\n\n switch (field.type) {\n case 'array':\n return 'array'\n case 'object':\n return 'object'\n case 'number':\n return 'number'\n case 'date':\n return 'date'\n case 'string':\n default:\n return 'text'\n }\n}\n\nconst getArrayOption = (field: any, name: string) => {\n for (const test of field.tests) {\n if (test.OPTIONS?.params[name]) return test.OPTIONS.params[name]\n }\n}\n\n/**\n * A helper function to render forms automatically based on a Yup schema\n *\n * @param schema The Yup schema\n * @returns {FieldProps[]}\n */\nexport const getFieldsFromSchema = (schema: AnyObjectSchema): FieldProps[] => {\n const fields = []\n\n let schemaFields: Record<string, any> = {}\n if (schema.type === 'array') {\n /* @ts-ignore this is actually valid */\n schemaFields = schema.innerType.fields\n } else {\n schemaFields = schema.fields\n }\n\n for (const name in schemaFields) {\n const field = schemaFields[name]\n\n const options: Options = {}\n if (field.type === 'array') {\n options.min = getArrayOption(field, 'min')\n options.max = getArrayOption(field, 'max')\n }\n\n fields.push({\n name,\n label: field.spec.label || name,\n type: getType(field),\n ...options,\n })\n }\n return fields\n}\n\nexport const getNestedSchema = (schema: AnyObjectSchema, path: string) => {\n return reach(schema, path)\n}\n\nexport const yupFieldResolver = (schema: AnyObjectSchema) => {\n return {\n getFields() {\n return getFieldsFromSchema(schema)\n },\n getNestedFields(name: string) {\n return getFieldsFromSchema(getNestedSchema(schema, name))\n },\n }\n}\n\nexport const yupForm = (\n schema: AnyObjectSchema,\n schemaOptions = {},\n resolverOptions = {}\n) => {\n return {\n schema,\n resolver: yupResolver(schema, schemaOptions, resolverOptions),\n fieldResolver: yupFieldResolver(schema),\n }\n}\n"],"names":["getType","field","spec","meta","_field$spec$meta","type","getArrayOption","name","test","tests","OPTIONS","_test$OPTIONS","params","getFieldsFromSchema","schema","fields","schemaFields","innerType","options","min","max","push","label","getNestedSchema","path","reach","yupFieldResolver","getFields","getNestedFields","yupForm","schemaOptions","resolverOptions","resolver","yupResolver","fieldResolver"],"mappings":"mVAaA,MAAMA,EAAWC,UACf,YAAIA,EAAMC,KAAKC,OAAXC,EAAiBC,KACnB,OAAOJ,EAAMC,KAAKC,KAAKE,KAGzB,OAAQJ,EAAMI,MACZ,IAAK,QACH,MAAO,QACT,IAAK,SACH,MAAO,SACT,IAAK,SACH,MAAO,SACT,IAAK,OACH,MAAO,OAET,QACE,MAAO,SAIPC,EAAiB,CAACL,EAAYM,KAClC,IAAK,MAAMC,KAAQP,EAAMQ,MAAO,OAC9B,YAAID,EAAKE,UAALC,EAAcC,OAAOL,GAAO,OAAOC,EAAKE,QAAQE,OAAOL,KAUlDM,EAAuBC,IAClC,MAAMC,EAAS,GAEf,IAAIC,EAAoC,GAGtCA,EAFkB,UAAhBF,EAAOT,KAEMS,EAAOG,UAAUF,OAEjBD,EAAOC,OAGxB,IAAK,MAAMR,KAAQS,EAAc,CAC/B,MAAMf,EAAQe,EAAaT,GAErBW,EAAmB,GACN,UAAfjB,EAAMI,OACRa,EAAQC,IAAMb,EAAeL,EAAO,OACpCiB,EAAQE,IAAMd,EAAeL,EAAO,QAGtCc,EAAOM,QACLd,KAAAA,EACAe,MAAOrB,EAAMC,KAAKoB,OAASf,EAC3BF,KAAML,EAAQC,IACXiB,IAGP,OAAOH,GAGIQ,EAAkB,CAACT,EAAyBU,IAChDC,EAAMX,EAAQU,GAGVE,EAAoBZ,IACxB,CACLa,UAAS,IACAd,EAAoBC,GAE7Bc,gBAAgBrB,GACPM,EAAoBU,EAAgBT,EAAQP,MAK5CsB,EAAU,CACrBf,EACAgB,EAAgB,GAChBC,EAAkB,MAEX,CACLjB,OAAAA,EACAkB,SAAUC,EAAYnB,EAAQgB,EAAeC,GAC7CG,cAAeR,EAAiBZ"}
|
@@ -0,0 +1,29 @@
|
|
1
|
+
import { AnyObjectSchema } from 'yup';
|
2
|
+
import { yupResolver } from '@hookform/resolvers/yup';
|
3
|
+
import { FieldProps } from '@saas-ui/forms';
|
4
|
+
export { yupResolver };
|
5
|
+
export declare type Options = {
|
6
|
+
min?: number;
|
7
|
+
max?: number;
|
8
|
+
};
|
9
|
+
/**
|
10
|
+
* A helper function to render forms automatically based on a Yup schema
|
11
|
+
*
|
12
|
+
* @param schema The Yup schema
|
13
|
+
* @returns {FieldProps[]}
|
14
|
+
*/
|
15
|
+
export declare const getFieldsFromSchema: (schema: AnyObjectSchema) => FieldProps[];
|
16
|
+
export declare const getNestedSchema: (schema: AnyObjectSchema, path: string) => any;
|
17
|
+
export declare const yupFieldResolver: (schema: AnyObjectSchema) => {
|
18
|
+
getFields(): FieldProps<import("@saas-ui/forms").FieldValues, string>[];
|
19
|
+
getNestedFields(name: string): FieldProps<import("@saas-ui/forms").FieldValues, string>[];
|
20
|
+
};
|
21
|
+
export declare const yupForm: (schema: AnyObjectSchema, schemaOptions?: {}, resolverOptions?: {}) => {
|
22
|
+
schema: AnyObjectSchema;
|
23
|
+
resolver: <TFieldValues extends import("@saas-ui/forms").FieldValues, TContext>(values: import("react-hook-form").UnpackNestedValue<TFieldValues>, context: TContext | undefined, options: import("react-hook-form").ResolverOptions<TFieldValues>) => Promise<import("react-hook-form").ResolverResult<TFieldValues>>;
|
24
|
+
fieldResolver: {
|
25
|
+
getFields(): FieldProps<import("@saas-ui/forms").FieldValues, string>[];
|
26
|
+
getNestedFields(name: string): FieldProps<import("@saas-ui/forms").FieldValues, string>[];
|
27
|
+
};
|
28
|
+
};
|
29
|
+
//# sourceMappingURL=yup-resolver.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"yup-resolver.d.ts","sourceRoot":"","sources":["../../yup/src/yup-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,eAAe,EAAE,MAAM,KAAK,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAE3C,OAAO,EAAE,WAAW,EAAE,CAAA;AAEtB,oBAAY,OAAO,GAAG;IACpB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,CAAA;AA6BD;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,+BAA8B,UAAU,EA4BvE,CAAA;AAED,eAAO,MAAM,eAAe,kCAAmC,MAAM,QAEpE,CAAA;AAED,eAAO,MAAM,gBAAgB;;0BAKH,MAAM;CAI/B,CAAA;AAED,eAAO,MAAM,OAAO;;;;;8BANM,MAAM;;CAgB/B,CAAA"}
|
package/package.json
CHANGED
package/yup/package.json
CHANGED
@@ -4,16 +4,9 @@
|
|
4
4
|
"version": "1.0.0",
|
5
5
|
"private": true,
|
6
6
|
"source": "./src/index.ts",
|
7
|
-
"exports": {
|
8
|
-
".": {
|
9
|
-
"require": "./../dist/yup/index.js",
|
10
|
-
"types": "./../dist/yup/src/index.d.ts",
|
11
|
-
"default": "./../dist/yup/index.modern.js"
|
12
|
-
}
|
13
|
-
},
|
14
7
|
"main": "../dist/yup/index.js",
|
15
8
|
"module": "../dist/yup/index.modern.js",
|
16
|
-
"types": "../dist/yup/
|
9
|
+
"types": "../dist/yup/index.d.ts",
|
17
10
|
"author": "Eelco Wiersma <eelco@appulse.nl>",
|
18
11
|
"license": "MIT",
|
19
12
|
"peerDependencies": {
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../yup/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAA"}
|
@@ -1,25 +0,0 @@
|
|
1
|
-
import { AnyObjectSchema } from 'yup';
|
2
|
-
import { yupResolver } from '@hookform/resolvers/yup';
|
3
|
-
import { FieldProps } from '../../src/field';
|
4
|
-
export { yupResolver };
|
5
|
-
/**
|
6
|
-
* A helper function to render forms automatically based on a Yup schema
|
7
|
-
*
|
8
|
-
* @param schema The Yup schema
|
9
|
-
* @returns {FieldProps[]}
|
10
|
-
*/
|
11
|
-
export declare const getFieldsFromSchema: (schema: AnyObjectSchema) => FieldProps[];
|
12
|
-
export declare const getNestedSchema: (schema: AnyObjectSchema, path: string) => any;
|
13
|
-
export declare const yupFieldResolver: (schema: AnyObjectSchema) => {
|
14
|
-
getFields(): FieldProps<import("react-hook-form").FieldValues, string>[];
|
15
|
-
getNestedFields(name: string): FieldProps<import("react-hook-form").FieldValues, string>[];
|
16
|
-
};
|
17
|
-
export declare const yupForm: (schema: AnyObjectSchema, schemaOptions?: {}, resolverOptions?: {}) => {
|
18
|
-
schema: AnyObjectSchema;
|
19
|
-
resolver: <TFieldValues extends import("react-hook-form").FieldValues, TContext>(values: import("react-hook-form").UnpackNestedValue<TFieldValues>, context: TContext | undefined, options: import("react-hook-form").ResolverOptions<TFieldValues>) => Promise<import("react-hook-form").ResolverResult<TFieldValues>>;
|
20
|
-
fieldResolver: {
|
21
|
-
getFields(): FieldProps<import("react-hook-form").FieldValues, string>[];
|
22
|
-
getNestedFields(name: string): FieldProps<import("react-hook-form").FieldValues, string>[];
|
23
|
-
};
|
24
|
-
};
|
25
|
-
//# sourceMappingURL=yup.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"yup.d.ts","sourceRoot":"","sources":["../../../../../yup/src/yup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,eAAe,EAAE,MAAM,KAAK,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAE5C,OAAO,EAAE,WAAW,EAAE,CAAA;AAkCtB;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,+BAA8B,UAAU,EA4BvE,CAAA;AAED,eAAO,MAAM,eAAe,kCAAmC,MAAM,QAEpE,CAAA;AAED,eAAO,MAAM,gBAAgB;;0BAKH,MAAM;CAI/B,CAAA;AAED,eAAO,MAAM,OAAO;;;;;8BANM,MAAM;;CAgB/B,CAAA"}
|