@shipengine/formik-giger 1.2.2 → 1.2.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,12 +1,11 @@
1
1
  import { NextTypes } from '@shipengine/giger';
2
- import { IMultiSelectOption } from '@shipengine/giger/dist/lib/next/components/MultiSelect/MultiSelect';
3
2
  import { FieldProps } from 'formik';
4
3
 
5
- type MultiSelectProps = FieldProps<IMultiSelectOption[] | undefined> & Omit<NextTypes['MultiSelect'], 'name' | 'value'> & {
6
- options?: IMultiSelectOption[];
4
+ type MultiSelectProps<FormValues = unknown> = FieldProps<NextTypes['IMultiSelectOption'][], FormValues> & Omit<NextTypes['MultiSelect'], 'name' | 'value'> & {
5
+ options?: NextTypes['IMultiSelectOption'][];
7
6
  };
8
- declare function fieldToMultiSelect({ disabled, field: { onBlur: fieldOnBlur, onChange: onFormikChange, ...field }, form: { isSubmitting, touched, errors }, onClickAway, onChange, ...props }: MultiSelectProps): NextTypes['MultiSelect'];
9
- declare function MultiSelect({ options, children, ...props }: MultiSelectProps): JSX.Element;
7
+ declare function fieldToMultiSelect<FormValues = unknown>({ disabled, field: { onBlur: fieldOnBlur, onChange: onFormikChange, ...field }, form: { isSubmitting, touched, errors }, onClickAway, onChange, ...props }: MultiSelectProps<FormValues>): NextTypes['MultiSelect'];
8
+ declare function MultiSelect<FormValues = unknown>({ options, children, ...props }: MultiSelectProps<FormValues>): JSX.Element;
10
9
  declare namespace MultiSelect {
11
10
  var displayName: string;
12
11
  }
@@ -55,11 +55,10 @@ function MultiSelect(_ref2) {
55
55
  const renderedOptions = options ? options.map(option => {
56
56
  var _formikProps$value;
57
57
  return jsx(Next.MultiSelectOption, {
58
- value: option.value,
59
- label: option.label,
58
+ value: option,
60
59
  selected: (_formikProps$value = formikProps.value) === null || _formikProps$value === void 0 ? void 0 : _formikProps$value.some(selectedOption => selectedOption.value === option.value),
61
60
  children: option.label
62
- }, option.label);
61
+ }, option.value);
63
62
  }) : children;
64
63
  return jsx(Next.MultiSelect, {
65
64
  ...formikProps,
@@ -1 +1 @@
1
- {"version":3,"file":"MultiSelect.js","sources":["../../src/MultiSelect.tsx"],"sourcesContent":["import { Next, NextTypes } from '@shipengine/giger';\nimport { IMultiSelectOption } from '@shipengine/giger/dist/lib/next/components/MultiSelect/MultiSelect';\nimport { FieldProps, getIn } from 'formik';\n\nexport type MultiSelectProps = FieldProps<IMultiSelectOption[] | undefined> &\n Omit<NextTypes['MultiSelect'], 'name' | 'value'> & {\n options?: IMultiSelectOption[];\n };\n\nexport function fieldToMultiSelect({\n disabled,\n field: { onBlur: fieldOnBlur, onChange: onFormikChange, ...field },\n form: { isSubmitting, touched, errors },\n onClickAway,\n onChange,\n ...props\n}: MultiSelectProps): NextTypes['MultiSelect'] {\n const handleChange = (fieldName: string, value: IMultiSelectOption[]) => {\n onChange?.(fieldName, value);\n onFormikChange({ target: { name: field.name, value } });\n };\n\n const handleClickAway = (name: string, values: IMultiSelectOption[]) => {\n onClickAway?.(name, values);\n fieldOnBlur({ target: { name: field.name } });\n };\n\n return {\n isInvalid: getIn(touched, field.name) && !!getIn(errors, field.name),\n disabled: disabled || isSubmitting,\n onClickAway: handleClickAway,\n onChange: handleChange,\n ...field,\n ...props,\n };\n}\n\nexport function MultiSelect({ options, children, ...props }: MultiSelectProps): JSX.Element {\n const formikProps = fieldToMultiSelect(props);\n\n const renderedOptions = options\n ? options.map((option) => {\n return (\n <Next.MultiSelectOption\n key={option.label}\n value={option.value}\n label={option.label}\n selected={formikProps.value?.some(\n (selectedOption: IMultiSelectOption) => selectedOption.value === option.value\n )}\n >\n {option.label}\n </Next.MultiSelectOption>\n );\n })\n : children;\n\n return <Next.MultiSelect {...formikProps}>{renderedOptions}</Next.MultiSelect>;\n}\n\nMultiSelect.displayName = 'FormikMultiSelect';\n"],"names":["fieldToMultiSelect","_ref","disabled","field","onBlur","fieldOnBlur","onChange","onFormikChange","form","isSubmitting","touched","errors","onClickAway","props","handleChange","fieldName","value","target","name","handleClickAway","values","isInvalid","getIn","MultiSelect","_ref2","options","children","formikProps","renderedOptions","map","option","_formikProps$value","_jsx","Next","MultiSelectOption","label","selected","some","selectedOption","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"MultiSelect.js","sources":["../../src/MultiSelect.tsx"],"sourcesContent":["import { Next, NextTypes } from '@shipengine/giger';\nimport { FieldProps, getIn } from 'formik';\n\nexport type MultiSelectProps<FormValues = unknown> = FieldProps<NextTypes['IMultiSelectOption'][], FormValues> &\n Omit<NextTypes['MultiSelect'], 'name' | 'value'> & {\n options?: NextTypes['IMultiSelectOption'][];\n };\n\nexport function fieldToMultiSelect<FormValues = unknown>({\n disabled,\n field: { onBlur: fieldOnBlur, onChange: onFormikChange, ...field },\n form: { isSubmitting, touched, errors },\n onClickAway,\n onChange,\n ...props\n}: MultiSelectProps<FormValues>): NextTypes['MultiSelect'] {\n const handleChange = (fieldName: string, value: NextTypes['IMultiSelectOption'][]) => {\n onChange?.(fieldName, value);\n onFormikChange({ target: { name: field.name, value } });\n };\n\n const handleClickAway = (name: string, values: NextTypes['IMultiSelectOption'][]) => {\n onClickAway?.(name, values);\n fieldOnBlur({ target: { name: field.name } });\n };\n\n return {\n isInvalid: getIn(touched, field.name) && !!getIn(errors, field.name),\n disabled: disabled || isSubmitting,\n onClickAway: handleClickAway,\n onChange: handleChange,\n ...field,\n ...props,\n };\n}\n\nexport function MultiSelect<FormValues = unknown>({\n options,\n children,\n ...props\n}: MultiSelectProps<FormValues>): JSX.Element {\n const formikProps = fieldToMultiSelect<FormValues>(props);\n\n const renderedOptions = options\n ? options.map((option) => {\n return (\n <Next.MultiSelectOption\n key={option.value}\n value={option}\n selected={formikProps.value?.some(\n (selectedOption: NextTypes['IMultiSelectOption']) => selectedOption.value === option.value\n )}\n >\n {option.label}\n </Next.MultiSelectOption>\n );\n })\n : children;\n\n return <Next.MultiSelect {...formikProps}>{renderedOptions}</Next.MultiSelect>;\n}\n\nMultiSelect.displayName = 'FormikMultiSelect';\n"],"names":["fieldToMultiSelect","_ref","disabled","field","onBlur","fieldOnBlur","onChange","onFormikChange","form","isSubmitting","touched","errors","onClickAway","props","handleChange","fieldName","value","target","name","handleClickAway","values","isInvalid","getIn","MultiSelect","_ref2","options","children","formikProps","renderedOptions","map","option","_formikProps$value","_jsx","Next","MultiSelectOption","selected","some","selectedOption","label","displayName"],"mappings":";;;;AAQO,SAASA,kBAAkBA,CAAAC,IAAA,EAOyB;EAAA,IAPF;IACrDC,QAAQ;AACRC,IAAAA,KAAK,EAAE;AAAEC,MAAAA,MAAM,EAAEC,WAAW;AAAEC,MAAAA,QAAQ,EAAEC,cAAc;MAAE,GAAGJ,KAAAA;KAAO;AAClEK,IAAAA,IAAI,EAAE;MAAEC,YAAY;MAAEC,OAAO;AAAEC,MAAAA,MAAAA;KAAQ;IACvCC,WAAW;IACXN,QAAQ;IACR,GAAGO,KAAAA;AACuB,GAAC,GAAAZ,IAAA,CAAA;AAC3B,EAAA,MAAMa,YAAY,GAAGA,CAACC,SAAiB,EAAEC,KAAwC,KAAK;IAClFV,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAARA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,QAAQ,CAAGS,SAAS,EAAEC,KAAK,CAAC,CAAA;AAC5BT,IAAAA,cAAc,CAAC;AAAEU,MAAAA,MAAM,EAAE;QAAEC,IAAI,EAAEf,KAAK,CAACe,IAAI;AAAEF,QAAAA,KAAAA;AAAM,OAAA;AAAE,KAAC,CAAC,CAAA;GAC1D,CAAA;AAED,EAAA,MAAMG,eAAe,GAAGA,CAACD,IAAY,EAAEE,MAAyC,KAAK;IACjFR,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAXA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,WAAW,CAAGM,IAAI,EAAEE,MAAM,CAAC,CAAA;AAC3Bf,IAAAA,WAAW,CAAC;AAAEY,MAAAA,MAAM,EAAE;QAAEC,IAAI,EAAEf,KAAK,CAACe,IAAAA;AAAK,OAAA;AAAE,KAAC,CAAC,CAAA;GAChD,CAAA;EAED,OAAO;AACHG,IAAAA,SAAS,EAAEC,KAAK,CAACZ,OAAO,EAAEP,KAAK,CAACe,IAAI,CAAC,IAAI,CAAC,CAACI,KAAK,CAACX,MAAM,EAAER,KAAK,CAACe,IAAI,CAAC;IACpEhB,QAAQ,EAAEA,QAAQ,IAAIO,YAAY;AAClCG,IAAAA,WAAW,EAAEO,eAAe;AAC5Bb,IAAAA,QAAQ,EAAEQ,YAAY;AACtB,IAAA,GAAGX,KAAK;IACR,GAAGU,KAAAA;GACN,CAAA;AACL,CAAA;AAEO,SAASU,WAAWA,CAAAC,KAAA,EAImB;EAAA,IAJI;IAC9CC,OAAO;IACPC,QAAQ;IACR,GAAGb,KAAAA;AACuB,GAAC,GAAAW,KAAA,CAAA;AAC3B,EAAA,MAAMG,WAAW,GAAG3B,kBAAkB,CAAaa,KAAK,CAAC,CAAA;EAEzD,MAAMe,eAAe,GAAGH,OAAO,GACzBA,OAAO,CAACI,GAAG,CAAEC,MAAM,IAAK;AAAA,IAAA,IAAAC,kBAAA,CAAA;AACpB,IAAA,OACIC,GAAA,CAACC,IAAI,CAACC,iBAAiB,EAAA;AAEnBlB,MAAAA,KAAK,EAAEc,MAAO;MACdK,QAAQ,EAAA,CAAAJ,kBAAA,GAAEJ,WAAW,CAACX,KAAK,MAAA,IAAA,IAAAe,kBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAjBA,kBAAA,CAAmBK,IAAI,CAC5BC,cAA+C,IAAKA,cAAc,CAACrB,KAAK,KAAKc,MAAM,CAACd,KACzF,CAAE;MAAAU,QAAA,EAEDI,MAAM,CAACQ,KAAAA;KANHR,EAAAA,MAAM,CAACd,KAOQ,CAAC,CAAA;GAEhC,CAAC,GACFU,QAAQ,CAAA;AAEd,EAAA,OAAOM,GAAA,CAACC,IAAI,CAACV,WAAW,EAAA;AAAA,IAAA,GAAKI,WAAW;AAAAD,IAAAA,QAAA,EAAGE,eAAAA;AAAe,GAAmB,CAAC,CAAA;AAClF,CAAA;AAEAL,WAAW,CAACgB,WAAW,GAAG,mBAAmB;;;;"}
@@ -1,12 +1,11 @@
1
1
  import { NextTypes } from '@shipengine/giger';
2
- import { IMultiSelectOption } from '@shipengine/giger/dist/lib/next/components/MultiSelect/MultiSelect';
3
2
  import { FieldProps } from 'formik';
4
3
 
5
- type MultiSelectProps = FieldProps<IMultiSelectOption[] | undefined> & Omit<NextTypes['MultiSelect'], 'name' | 'value'> & {
6
- options?: IMultiSelectOption[];
4
+ type MultiSelectProps<FormValues = unknown> = FieldProps<NextTypes['IMultiSelectOption'][], FormValues> & Omit<NextTypes['MultiSelect'], 'name' | 'value'> & {
5
+ options?: NextTypes['IMultiSelectOption'][];
7
6
  };
8
- declare function fieldToMultiSelect({ disabled, field: { onBlur: fieldOnBlur, onChange: onFormikChange, ...field }, form: { isSubmitting, touched, errors }, onClickAway, onChange, ...props }: MultiSelectProps): NextTypes['MultiSelect'];
9
- declare function MultiSelect({ options, children, ...props }: MultiSelectProps): JSX.Element;
7
+ declare function fieldToMultiSelect<FormValues = unknown>({ disabled, field: { onBlur: fieldOnBlur, onChange: onFormikChange, ...field }, form: { isSubmitting, touched, errors }, onClickAway, onChange, ...props }: MultiSelectProps<FormValues>): NextTypes['MultiSelect'];
8
+ declare function MultiSelect<FormValues = unknown>({ options, children, ...props }: MultiSelectProps<FormValues>): JSX.Element;
10
9
  declare namespace MultiSelect {
11
10
  var displayName: string;
12
11
  }
@@ -59,11 +59,10 @@ function MultiSelect(_ref2) {
59
59
  const renderedOptions = options ? options.map(option => {
60
60
  var _formikProps$value;
61
61
  return jsxRuntime.jsx(giger.Next.MultiSelectOption, {
62
- value: option.value,
63
- label: option.label,
62
+ value: option,
64
63
  selected: (_formikProps$value = formikProps.value) === null || _formikProps$value === void 0 ? void 0 : _formikProps$value.some(selectedOption => selectedOption.value === option.value),
65
64
  children: option.label
66
- }, option.label);
65
+ }, option.value);
67
66
  }) : children;
68
67
  return jsxRuntime.jsx(giger.Next.MultiSelect, {
69
68
  ...formikProps,
@@ -1 +1 @@
1
- {"version":3,"file":"MultiSelect.js","sources":["../../src/MultiSelect.tsx"],"sourcesContent":["import { Next, NextTypes } from '@shipengine/giger';\nimport { IMultiSelectOption } from '@shipengine/giger/dist/lib/next/components/MultiSelect/MultiSelect';\nimport { FieldProps, getIn } from 'formik';\n\nexport type MultiSelectProps = FieldProps<IMultiSelectOption[] | undefined> &\n Omit<NextTypes['MultiSelect'], 'name' | 'value'> & {\n options?: IMultiSelectOption[];\n };\n\nexport function fieldToMultiSelect({\n disabled,\n field: { onBlur: fieldOnBlur, onChange: onFormikChange, ...field },\n form: { isSubmitting, touched, errors },\n onClickAway,\n onChange,\n ...props\n}: MultiSelectProps): NextTypes['MultiSelect'] {\n const handleChange = (fieldName: string, value: IMultiSelectOption[]) => {\n onChange?.(fieldName, value);\n onFormikChange({ target: { name: field.name, value } });\n };\n\n const handleClickAway = (name: string, values: IMultiSelectOption[]) => {\n onClickAway?.(name, values);\n fieldOnBlur({ target: { name: field.name } });\n };\n\n return {\n isInvalid: getIn(touched, field.name) && !!getIn(errors, field.name),\n disabled: disabled || isSubmitting,\n onClickAway: handleClickAway,\n onChange: handleChange,\n ...field,\n ...props,\n };\n}\n\nexport function MultiSelect({ options, children, ...props }: MultiSelectProps): JSX.Element {\n const formikProps = fieldToMultiSelect(props);\n\n const renderedOptions = options\n ? options.map((option) => {\n return (\n <Next.MultiSelectOption\n key={option.label}\n value={option.value}\n label={option.label}\n selected={formikProps.value?.some(\n (selectedOption: IMultiSelectOption) => selectedOption.value === option.value\n )}\n >\n {option.label}\n </Next.MultiSelectOption>\n );\n })\n : children;\n\n return <Next.MultiSelect {...formikProps}>{renderedOptions}</Next.MultiSelect>;\n}\n\nMultiSelect.displayName = 'FormikMultiSelect';\n"],"names":["fieldToMultiSelect","_ref","disabled","field","onBlur","fieldOnBlur","onChange","onFormikChange","form","isSubmitting","touched","errors","onClickAway","props","handleChange","fieldName","value","target","name","handleClickAway","values","isInvalid","getIn","MultiSelect","_ref2","options","children","formikProps","renderedOptions","map","option","_formikProps$value","_jsx","Next","MultiSelectOption","label","selected","some","selectedOption","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"MultiSelect.js","sources":["../../src/MultiSelect.tsx"],"sourcesContent":["import { Next, NextTypes } from '@shipengine/giger';\nimport { FieldProps, getIn } from 'formik';\n\nexport type MultiSelectProps<FormValues = unknown> = FieldProps<NextTypes['IMultiSelectOption'][], FormValues> &\n Omit<NextTypes['MultiSelect'], 'name' | 'value'> & {\n options?: NextTypes['IMultiSelectOption'][];\n };\n\nexport function fieldToMultiSelect<FormValues = unknown>({\n disabled,\n field: { onBlur: fieldOnBlur, onChange: onFormikChange, ...field },\n form: { isSubmitting, touched, errors },\n onClickAway,\n onChange,\n ...props\n}: MultiSelectProps<FormValues>): NextTypes['MultiSelect'] {\n const handleChange = (fieldName: string, value: NextTypes['IMultiSelectOption'][]) => {\n onChange?.(fieldName, value);\n onFormikChange({ target: { name: field.name, value } });\n };\n\n const handleClickAway = (name: string, values: NextTypes['IMultiSelectOption'][]) => {\n onClickAway?.(name, values);\n fieldOnBlur({ target: { name: field.name } });\n };\n\n return {\n isInvalid: getIn(touched, field.name) && !!getIn(errors, field.name),\n disabled: disabled || isSubmitting,\n onClickAway: handleClickAway,\n onChange: handleChange,\n ...field,\n ...props,\n };\n}\n\nexport function MultiSelect<FormValues = unknown>({\n options,\n children,\n ...props\n}: MultiSelectProps<FormValues>): JSX.Element {\n const formikProps = fieldToMultiSelect<FormValues>(props);\n\n const renderedOptions = options\n ? options.map((option) => {\n return (\n <Next.MultiSelectOption\n key={option.value}\n value={option}\n selected={formikProps.value?.some(\n (selectedOption: NextTypes['IMultiSelectOption']) => selectedOption.value === option.value\n )}\n >\n {option.label}\n </Next.MultiSelectOption>\n );\n })\n : children;\n\n return <Next.MultiSelect {...formikProps}>{renderedOptions}</Next.MultiSelect>;\n}\n\nMultiSelect.displayName = 'FormikMultiSelect';\n"],"names":["fieldToMultiSelect","_ref","disabled","field","onBlur","fieldOnBlur","onChange","onFormikChange","form","isSubmitting","touched","errors","onClickAway","props","handleChange","fieldName","value","target","name","handleClickAway","values","isInvalid","getIn","MultiSelect","_ref2","options","children","formikProps","renderedOptions","map","option","_formikProps$value","_jsx","Next","MultiSelectOption","selected","some","selectedOption","label","displayName"],"mappings":";;;;;;;;AAQO,SAASA,kBAAkBA,CAAAC,IAAA,EAOyB;EAAA,IAPF;IACrDC,QAAQ;AACRC,IAAAA,KAAK,EAAE;AAAEC,MAAAA,MAAM,EAAEC,WAAW;AAAEC,MAAAA,QAAQ,EAAEC,cAAc;MAAE,GAAGJ,KAAAA;KAAO;AAClEK,IAAAA,IAAI,EAAE;MAAEC,YAAY;MAAEC,OAAO;AAAEC,MAAAA,MAAAA;KAAQ;IACvCC,WAAW;IACXN,QAAQ;IACR,GAAGO,KAAAA;AACuB,GAAC,GAAAZ,IAAA,CAAA;AAC3B,EAAA,MAAMa,YAAY,GAAGA,CAACC,SAAiB,EAAEC,KAAwC,KAAK;IAClFV,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAARA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,QAAQ,CAAGS,SAAS,EAAEC,KAAK,CAAC,CAAA;AAC5BT,IAAAA,cAAc,CAAC;AAAEU,MAAAA,MAAM,EAAE;QAAEC,IAAI,EAAEf,KAAK,CAACe,IAAI;AAAEF,QAAAA,KAAAA;AAAM,OAAA;AAAE,KAAC,CAAC,CAAA;GAC1D,CAAA;AAED,EAAA,MAAMG,eAAe,GAAGA,CAACD,IAAY,EAAEE,MAAyC,KAAK;IACjFR,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAXA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,WAAW,CAAGM,IAAI,EAAEE,MAAM,CAAC,CAAA;AAC3Bf,IAAAA,WAAW,CAAC;AAAEY,MAAAA,MAAM,EAAE;QAAEC,IAAI,EAAEf,KAAK,CAACe,IAAAA;AAAK,OAAA;AAAE,KAAC,CAAC,CAAA;GAChD,CAAA;EAED,OAAO;AACHG,IAAAA,SAAS,EAAEC,YAAK,CAACZ,OAAO,EAAEP,KAAK,CAACe,IAAI,CAAC,IAAI,CAAC,CAACI,YAAK,CAACX,MAAM,EAAER,KAAK,CAACe,IAAI,CAAC;IACpEhB,QAAQ,EAAEA,QAAQ,IAAIO,YAAY;AAClCG,IAAAA,WAAW,EAAEO,eAAe;AAC5Bb,IAAAA,QAAQ,EAAEQ,YAAY;AACtB,IAAA,GAAGX,KAAK;IACR,GAAGU,KAAAA;GACN,CAAA;AACL,CAAA;AAEO,SAASU,WAAWA,CAAAC,KAAA,EAImB;EAAA,IAJI;IAC9CC,OAAO;IACPC,QAAQ;IACR,GAAGb,KAAAA;AACuB,GAAC,GAAAW,KAAA,CAAA;AAC3B,EAAA,MAAMG,WAAW,GAAG3B,kBAAkB,CAAaa,KAAK,CAAC,CAAA;EAEzD,MAAMe,eAAe,GAAGH,OAAO,GACzBA,OAAO,CAACI,GAAG,CAAEC,MAAM,IAAK;AAAA,IAAA,IAAAC,kBAAA,CAAA;AACpB,IAAA,OACIC,cAAA,CAACC,UAAI,CAACC,iBAAiB,EAAA;AAEnBlB,MAAAA,KAAK,EAAEc,MAAO;MACdK,QAAQ,EAAA,CAAAJ,kBAAA,GAAEJ,WAAW,CAACX,KAAK,MAAA,IAAA,IAAAe,kBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAjBA,kBAAA,CAAmBK,IAAI,CAC5BC,cAA+C,IAAKA,cAAc,CAACrB,KAAK,KAAKc,MAAM,CAACd,KACzF,CAAE;MAAAU,QAAA,EAEDI,MAAM,CAACQ,KAAAA;KANHR,EAAAA,MAAM,CAACd,KAOQ,CAAC,CAAA;GAEhC,CAAC,GACFU,QAAQ,CAAA;AAEd,EAAA,OAAOM,cAAA,CAACC,UAAI,CAACV,WAAW,EAAA;AAAA,IAAA,GAAKI,WAAW;AAAAD,IAAAA,QAAA,EAAGE,eAAAA;AAAe,GAAmB,CAAC,CAAA;AAClF,CAAA;AAEAL,WAAW,CAACgB,WAAW,GAAG,mBAAmB;;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shipengine/formik-giger",
3
- "version": "1.2.2",
3
+ "version": "1.2.3",
4
4
  "description": "A package providing formik bindings for Giger",
5
5
  "homepage": "https://github.com/shipengine/giger",
6
6
  "sideEffects": false,
@@ -33,9 +33,9 @@
33
33
  "postpublish": "packlink-scripts metrics"
34
34
  },
35
35
  "devDependencies": {
36
- "@shipengine/giger": "^1.4.2",
36
+ "@shipengine/giger": "^1.4.3",
37
37
  "formik": "^2.4.2",
38
- "test-utils": "^2.7.11",
38
+ "test-utils": "^2.7.12",
39
39
  "yup": "0.32.11"
40
40
  },
41
41
  "dependencies": {
@@ -49,5 +49,5 @@
49
49
  "formik": ">=2.2.9",
50
50
  "react": "^16.14.0 || ^17.0.0 || ^18.0.0"
51
51
  },
52
- "gitHead": "c8f353a8db291d224ed3116866a48bf3d91cfd54"
52
+ "gitHead": "dc29792ba772f775fa928476de5f6058c7ca4ba8"
53
53
  }