@newskit-render/shared-components 4.26.1 → 4.27.0-alpha.0

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.
@@ -0,0 +1,3 @@
1
+ import { FormRef } from 'newskit';
2
+ import React from 'react';
3
+ export declare const Form: React.ForwardRefExoticComponent<import("newskit").FormProps & import("./types").FormStateProviderProps & React.RefAttributes<FormRef>>;
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
24
+ var __importDefault = (this && this.__importDefault) || function (mod) {
25
+ return (mod && mod.__esModule) ? mod : { "default": mod };
26
+ };
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ exports.Form = void 0;
29
+ var newskit_1 = require("newskit");
30
+ var react_1 = __importDefault(require("react"));
31
+ var react_2 = require("react");
32
+ var FormStateProvider_1 = require("./FormStateProvider");
33
+ exports.Form = (0, react_2.forwardRef)(function (_a, ref) {
34
+ var children = _a.children, onValidation = _a.onFormValidate, rest = __rest(_a, ["children", "onFormValidate"]);
35
+ return (react_1.default.createElement(newskit_1.Form, __assign({}, rest, { ref: ref }),
36
+ react_1.default.createElement(FormStateProvider_1.FormStateProvider, { onFormValidate: onValidation }, children)));
37
+ });
38
+ //# sourceMappingURL=Form.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Form.js","sourceRoot":"","sources":["../../../src/FormComponent/Form.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mCAAsD;AACtD,gDAAyB;AACzB,+BAAkC;AAClC,yDAAkE;AAErD,QAAA,IAAI,GAAG,IAAA,kBAAU,EAC5B,UAAC,EAAmD,EAAE,GAAG;IAAtD,IAAA,QAAQ,cAAA,EAAkB,YAAY,oBAAA,EAAK,IAAI,cAAjD,8BAAmD,CAAF;IAChD,OAAO,CACL,8BAAC,cAAW,eAAK,IAAI,IAAE,GAAG,EAAE,GAAG;QAC7B,8BAAC,qCAAiB,IAAC,cAAc,EAAE,YAAY,IAC5C,QAAQ,CACS,CACR,CACf,CAAA;AACH,CAAC,CACF,CAAA"}
@@ -50,9 +50,10 @@ var FormGrid_1 = require("./FormGrid");
50
50
  var yup_1 = require("@hookform/resolvers/yup");
51
51
  var utils_1 = require("../utils");
52
52
  var lodash_unescape_1 = __importDefault(require("lodash.unescape"));
53
+ var Form_1 = require("./Form");
53
54
  var FormComponent = function (_a) {
54
55
  var _b, _c;
55
- var infoPanel = _a.infoPanel, _d = _a.validationSchemaKey, validationSchemaKey = _d === void 0 ? '' : _d, fields = _a.fields, buttonGroupProps = _a.buttonGroupProps, _e = _a.disable, disable = _e === void 0 ? false : _e, inputText = _a.inputText, labelObject = _a.labelObject, text = _a.text, textOverriders = _a.textOverriders, _f = _a.validation, validation = _f === void 0 ? {} : _f, handleError = _a.handleError, handleLoading = _a.handleLoading, handleSuccess = _a.handleSuccess, baseUrl = _a.baseUrl, errorMessages = _a.errorMessages, genericErrorMessage = _a.genericErrorMessage, onSubmit = _a.onSubmit, isFooterVisible = _a.isFooterVisible;
56
+ var infoPanel = _a.infoPanel, _d = _a.validationSchemaKey, validationSchemaKey = _d === void 0 ? '' : _d, fields = _a.fields, buttonGroupProps = _a.buttonGroupProps, _e = _a.disable, disable = _e === void 0 ? false : _e, inputText = _a.inputText, labelObject = _a.labelObject, text = _a.text, textOverriders = _a.textOverriders, _f = _a.validation, validation = _f === void 0 ? {} : _f, handleError = _a.handleError, handleLoading = _a.handleLoading, handleSuccess = _a.handleSuccess, baseUrl = _a.baseUrl, errorMessages = _a.errorMessages, genericErrorMessage = _a.genericErrorMessage, onSubmit = _a.onSubmit, isFooterVisible = _a.isFooterVisible, onValidationChange = _a.onValidationChange;
56
57
  var useInlineMessageComponent = (_b = infoPanel === null || infoPanel === void 0 ? void 0 : infoPanel.useInlineMessageComponent) !== null && _b !== void 0 ? _b : true;
57
58
  var fieldSchema = validation[validationSchemaKey];
58
59
  var resolver = (0, yup_1.yupResolver)(fieldSchema);
@@ -84,7 +85,7 @@ var FormComponent = function (_a) {
84
85
  text &&
85
86
  text.map(function (p, i) { return (react_1.default.createElement(newskit_1.Block, { marginBlockEnd: textOverriders === null || textOverriders === void 0 ? void 0 : textOverriders.marginBlockEnd, key: i },
86
87
  react_1.default.createElement(newskit_1.TextBlock, { stylePreset: textOverriders === null || textOverriders === void 0 ? void 0 : textOverriders.stylePreset, typographyPreset: textOverriders === null || textOverriders === void 0 ? void 0 : textOverriders.typographyPreset, dangerouslySetInnerHTML: { __html: p } }))); }),
87
- react_1.default.createElement(newskit_1.Form, { resolver: resolver, onSubmit: function (e) {
88
+ react_1.default.createElement(Form_1.Form, { onFormValidate: onValidationChange, resolver: resolver, onSubmit: function (e) {
88
89
  setLoading(true);
89
90
  if (handleLoading)
90
91
  handleLoading(validationSchemaKey, errorMessages, genericErrorMessage);
@@ -1 +1 @@
1
- {"version":3,"file":"FormComponent.js","sourceRoot":"","sources":["../../../src/FormComponent/FormComponent.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAuC;AACvC,mCAagB;AAChB,8CAA4C;AAE5C,sCAAmD;AACnD,uCAAqC;AACrC,+CAAqD;AACrD,kCAA2C;AAC3C,oEAAsC;AAE/B,IAAM,aAAa,GAAwB,UAAC,EAmBlD;;QAlBC,SAAS,eAAA,EACT,2BAAwB,EAAxB,mBAAmB,mBAAG,EAAE,KAAA,EACxB,MAAM,YAAA,EACN,gBAAgB,sBAAA,EAChB,eAAe,EAAf,OAAO,mBAAG,KAAK,KAAA,EACf,SAAS,eAAA,EACT,WAAW,iBAAA,EACX,IAAI,UAAA,EACJ,cAAc,oBAAA,EACd,kBAAe,EAAf,UAAU,mBAAG,EAAE,KAAA,EACf,WAAW,iBAAA,EACX,aAAa,mBAAA,EACb,aAAa,mBAAA,EACb,OAAO,aAAA,EACP,aAAa,mBAAA,EACb,mBAAmB,yBAAA,EACnB,QAAQ,cAAA,EACR,eAAe,qBAAA;IAEf,IAAM,yBAAyB,GAAG,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,yBAAyB,mCAAI,IAAI,CAAA;IAC9E,IAAM,WAAW,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAA;IACnD,IAAM,QAAQ,GAAG,IAAA,iBAAW,EAAC,WAAW,CAAC,CAAA;IACnC,IAAA,KAAwB,IAAA,gBAAQ,EAAU,KAAK,CAAC,EAA/C,OAAO,QAAA,EAAE,UAAU,QAA4B,CAAA;IACtD,IAAM,MAAM,GAAe,IAAA,kBAAS,GAAE,CAAA;IAC9B,IAAA,SAAS,GAAK,IAAA,4BAAkB,GAAE,UAAzB,CAAyB;IAE1C,IAAM,eAAe,GAAG,UAAC,eAAe;QACtC,UAAU,CAAC,KAAK,CAAC,CAAA;QACjB,IAAI,WAAW;YACb,WAAW,CACT,mBAAmB,EACnB,aAAa,EACb,mBAAmB,EACnB,eAAe,CAChB,CAAA;IACL,CAAC,CAAA;IAED,IAAM,aAAa,GAAG,UAAC,MAAuB;QAC5C,OAAO,CACL,MAAM;YACN,MAAM,CAAC,GAAG,CAAC,UAAC,EAAgB;oBAAd,KAAK,WAAA,EAAE,KAAK,WAAA;gBACxB,OAAO,CACL,8BAAC,eAAK,CAAC,QAAQ,IAAC,GAAG,EAAE,UAAG,KAAK,SAAG,KAAK,CAAE;oBACrC,8BAAC,mBAAS,IAAC,IAAI,EAAE,KAAK;wBACpB,8BAAC,wBAAc,eAAK,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,UAAU,GACtC,WAAW,IAAI,WAAW,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,CACzC;wBACjB,8BAAC,4BAAkB,2BAEf,WAAW,IAAI,WAAW,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,EAEzD,YAAY,EAAE,IAAA,yBAAQ,EAAC,KAAK,CAAW,IACnC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,uBAAuB,IACtC,OAAO,EAAE;gCACP,OAAA,SAAS,CACP,IAAA,wBAAgB,EACd,YAAY,EACZ,kCACE,WAAW,IAAI,WAAW,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,CACvD,CACH,CACF;4BAPD,CAOC,IAEH;wBAEF,8BAAC,gCAAsB,IACrB,SAAS,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,GAGlB,CACf;oBAEZ,8BAAC,eAAK,IAAC,cAAc,EAAC,UAAU,GAAG,CACpB,CAClB,CAAA;YACH,CAAC,CAAC,CACH,CAAA;IACH,CAAC,CAAA;IAED,OAAO,CACL;QACE,8BAAC,gBAAM,IACL,MAAM,MAAE,aAAG,yIAAA,qEAIV,OACD;QACF,8BAAC,mBAAQ,IACP,QAAQ,EAAC,UAAU,EACnB,cAAc,EAAC,UAAU,EACzB,WAAW,EAAC,UAAU,EACtB,eAAe,EAAE,eAAe;YAE/B,IAAI;gBACH,IAAI,CAAC,GAAG,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CACjB,8BAAC,eAAK,IAAC,cAAc,EAAE,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,cAAc,EAAE,GAAG,EAAE,CAAC;oBAC3D,8BAAC,mBAAS,IACR,WAAW,EAAE,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,WAAW,EACxC,gBAAgB,EAAE,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,gBAAgB,EAClD,uBAAuB,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,GACtC,CACI,CACT,EARkB,CAQlB,CAAC;YACJ,8BAAC,cAAI,IACH,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,UAAC,CAAC;oBACV,UAAU,CAAC,IAAI,CAAC,CAAA;oBAChB,IAAI,aAAa;wBACf,aAAa,CACX,mBAAmB,EACnB,aAAa,EACb,mBAAmB,CACpB,CAAA;oBACH,IAAI,CAAC,OAAO,EAAE;wBACZ,QAAQ;4BACN,QAAQ,CACN,CAAC,EACD,mBAAmB,EACnB,MAAM,EACN,eAAe,EACf,aAAa,EACb,OAAO,CACR,CAAA;qBACJ;gBACH,CAAC,EACD,gBAAgB,EAAC,QAAQ,EACzB,cAAc,EAAC,QAAQ;gBAEvB,8BAAC,cAAI,eAAM,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAiC,GACpD,aAAa,CAAC,MAAM,CAAC,CACjB;gBAEP,8DACG,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,KAAI,CACtB,8BAAC,cAAI,eAAM,SAAS,CAAC,cAA0C;oBAC5D,yBAAyB,IAAI,CAC5B,8BAAC,uBAAa,IACZ,IAAI,EAAE,SAAS,CAAC,IAAI,EACpB,KAAK,EAAE,SAAS,CAAC,KAAK,EACtB,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAC5B,SAAS,EAAE,SAAS,CAAC,SAAS,IAAI,EAAE,GACpC,CACH;oBACA,CAAC,yBAAyB,IAAI,CAC7B,8BAAC,eAAK,mBACQ,0BAA0B,EACtC,cAAc,EAAE,MAAA,SAAS,CAAC,SAAS,0CAAE,cAAc,IAElD,SAAS,CAAC,QAAQ,CACb,CACT,CACI,CACR,CACA;gBAEF,gBAAgB,IAAI,CACnB,8BAAC,yBAAW,eAAK,gBAAgB,IAAE,OAAO,EAAE,OAAO,IAAI,CACxD,CACI,CACE,CACV,CACJ,CAAA;AACH,CAAC,CAAA;AApKY,QAAA,aAAa,iBAoKzB"}
1
+ {"version":3,"file":"FormComponent.js","sourceRoot":"","sources":["../../../src/FormComponent/FormComponent.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { FC, PropsWithChildren } from 'react';
2
+ import { FormStateProviderProps } from './types';
3
+ import { FormProps as NewsKitFormProps } from 'newskit';
4
+ export type FormProps = NewsKitFormProps & FormStateProviderProps;
5
+ export declare const FormStateProvider: FC<PropsWithChildren<FormStateProviderProps>>;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.FormStateProvider = void 0;
7
+ var react_1 = require("react");
8
+ var newskit_1 = require("newskit");
9
+ var react_2 = __importDefault(require("react"));
10
+ var FormStateProvider = function (_a) {
11
+ var onValidation = _a.onFormValidate, children = _a.children;
12
+ var formState = (0, newskit_1.useFormContext)().formState;
13
+ (0, react_1.useEffect)(function () {
14
+ if (onValidation)
15
+ onValidation(formState.errors);
16
+ }, [formState]);
17
+ return react_2.default.createElement(react_2.default.Fragment, null, children);
18
+ };
19
+ exports.FormStateProvider = FormStateProvider;
20
+ //# sourceMappingURL=FormStateProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormStateProvider.js","sourceRoot":"","sources":["../../../src/FormComponent/FormStateProvider.tsx"],"names":[],"mappings":";;;;;;AAAA,+BAAwD;AAExD,mCAAuE;AACvE,gDAAyB;AAIlB,IAAM,iBAAiB,GAE1B,UAAC,EAA0C;QAAxB,YAAY,oBAAA,EAAE,QAAQ,cAAA;IACnC,IAAA,SAAS,GAAK,IAAA,wBAAc,GAAE,UAArB,CAAqB;IAEtC,IAAA,iBAAS,EAAC;QACR,IAAI,YAAY;YAAE,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IAClD,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,OAAO,8DAAG,QAAQ,CAAI,CAAA;AACxB,CAAC,CAAA;AAVY,QAAA,iBAAiB,qBAU7B"}
@@ -68,8 +68,15 @@ export interface FormProps extends FormWrapperProps {
68
68
  [x: string]: any;
69
69
  }, validationSchemaKey: string | unknown, router?: any, handleError?: ((overrideMessage?: string) => void) | undefined, handleSuccess?: (() => void) | undefined, redirectUrl?: string | undefined) => Promise<Response>;
70
70
  isFooterVisible?: boolean;
71
+ onValidationChange?: (errors: any) => void;
71
72
  }
72
73
  export interface FormGridProps {
73
74
  isFooterVisible?: boolean;
74
75
  }
76
+ export interface FormErrorsProps {
77
+ [x: string]: string;
78
+ }
79
+ export interface FormStateProviderProps {
80
+ onFormValidate?: (errors: FormErrorsProps) => void;
81
+ }
75
82
  export {};
@@ -0,0 +1,3 @@
1
+ import { FormRef } from 'newskit';
2
+ import React from 'react';
3
+ export declare const Form: React.ForwardRefExoticComponent<import("newskit").FormProps & import("./types").FormStateProviderProps & React.RefAttributes<FormRef>>;
@@ -0,0 +1,32 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ var __rest = (this && this.__rest) || function (s, e) {
13
+ var t = {};
14
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
+ t[p] = s[p];
16
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
+ t[p[i]] = s[p[i]];
20
+ }
21
+ return t;
22
+ };
23
+ import { Form as NewsKitForm } from 'newskit';
24
+ import React from 'react';
25
+ import { forwardRef } from 'react';
26
+ import { FormStateProvider } from './FormStateProvider';
27
+ export var Form = forwardRef(function (_a, ref) {
28
+ var children = _a.children, onValidation = _a.onFormValidate, rest = __rest(_a, ["children", "onFormValidate"]);
29
+ return (React.createElement(NewsKitForm, __assign({}, rest, { ref: ref }),
30
+ React.createElement(FormStateProvider, { onFormValidate: onValidation }, children)));
31
+ });
32
+ //# sourceMappingURL=Form.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Form.js","sourceRoot":"","sources":["../../../src/FormComponent/Form.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAW,IAAI,IAAI,WAAW,EAAE,MAAM,SAAS,CAAA;AACtD,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAClC,OAAO,EAAa,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAElE,MAAM,CAAC,IAAM,IAAI,GAAG,UAAU,CAC5B,UAAC,EAAmD,EAAE,GAAG;IAAtD,IAAA,QAAQ,cAAA,EAAkB,YAAY,oBAAA,EAAK,IAAI,cAAjD,8BAAmD,CAAF;IAChD,OAAO,CACL,oBAAC,WAAW,eAAK,IAAI,IAAE,GAAG,EAAE,GAAG;QAC7B,oBAAC,iBAAiB,IAAC,cAAc,EAAE,YAAY,IAC5C,QAAQ,CACS,CACR,CACf,CAAA;AACH,CAAC,CACF,CAAA"}
@@ -14,16 +14,17 @@ var __assign = (this && this.__assign) || function () {
14
14
  return __assign.apply(this, arguments);
15
15
  };
16
16
  import React, { useState } from 'react';
17
- import { Cell, Form, FormInput, FormInputLabel, FormInputTextField, FormInputAssistiveText, Block, Global, css, InlineMessage, TextBlock, useInstrumentation, } from 'newskit';
17
+ import { Cell, FormInput, FormInputLabel, FormInputTextField, FormInputAssistiveText, Block, Global, css, InlineMessage, TextBlock, useInstrumentation, } from 'newskit';
18
18
  import { ButtonGroup } from '../ButtonGroup';
19
19
  import { useRouter } from 'next/router';
20
20
  import { FormGrid } from './FormGrid';
21
21
  import { yupResolver } from '@hookform/resolvers/yup';
22
22
  import { createClickEvent } from '../utils';
23
23
  import unescape from 'lodash.unescape';
24
+ import { Form } from './Form';
24
25
  export var FormComponent = function (_a) {
25
26
  var _b, _c;
26
- var infoPanel = _a.infoPanel, _d = _a.validationSchemaKey, validationSchemaKey = _d === void 0 ? '' : _d, fields = _a.fields, buttonGroupProps = _a.buttonGroupProps, _e = _a.disable, disable = _e === void 0 ? false : _e, inputText = _a.inputText, labelObject = _a.labelObject, text = _a.text, textOverriders = _a.textOverriders, _f = _a.validation, validation = _f === void 0 ? {} : _f, handleError = _a.handleError, handleLoading = _a.handleLoading, handleSuccess = _a.handleSuccess, baseUrl = _a.baseUrl, errorMessages = _a.errorMessages, genericErrorMessage = _a.genericErrorMessage, onSubmit = _a.onSubmit, isFooterVisible = _a.isFooterVisible;
27
+ var infoPanel = _a.infoPanel, _d = _a.validationSchemaKey, validationSchemaKey = _d === void 0 ? '' : _d, fields = _a.fields, buttonGroupProps = _a.buttonGroupProps, _e = _a.disable, disable = _e === void 0 ? false : _e, inputText = _a.inputText, labelObject = _a.labelObject, text = _a.text, textOverriders = _a.textOverriders, _f = _a.validation, validation = _f === void 0 ? {} : _f, handleError = _a.handleError, handleLoading = _a.handleLoading, handleSuccess = _a.handleSuccess, baseUrl = _a.baseUrl, errorMessages = _a.errorMessages, genericErrorMessage = _a.genericErrorMessage, onSubmit = _a.onSubmit, isFooterVisible = _a.isFooterVisible, onValidationChange = _a.onValidationChange;
27
28
  var useInlineMessageComponent = (_b = infoPanel === null || infoPanel === void 0 ? void 0 : infoPanel.useInlineMessageComponent) !== null && _b !== void 0 ? _b : true;
28
29
  var fieldSchema = validation[validationSchemaKey];
29
30
  var resolver = yupResolver(fieldSchema);
@@ -55,7 +56,7 @@ export var FormComponent = function (_a) {
55
56
  text &&
56
57
  text.map(function (p, i) { return (React.createElement(Block, { marginBlockEnd: textOverriders === null || textOverriders === void 0 ? void 0 : textOverriders.marginBlockEnd, key: i },
57
58
  React.createElement(TextBlock, { stylePreset: textOverriders === null || textOverriders === void 0 ? void 0 : textOverriders.stylePreset, typographyPreset: textOverriders === null || textOverriders === void 0 ? void 0 : textOverriders.typographyPreset, dangerouslySetInnerHTML: { __html: p } }))); }),
58
- React.createElement(Form, { resolver: resolver, onSubmit: function (e) {
59
+ React.createElement(Form, { onFormValidate: onValidationChange, resolver: resolver, onSubmit: function (e) {
59
60
  setLoading(true);
60
61
  if (handleLoading)
61
62
  handleLoading(validationSchemaKey, errorMessages, genericErrorMessage);
@@ -1 +1 @@
1
- {"version":3,"file":"FormComponent.js","sourceRoot":"","sources":["../../../src/FormComponent/FormComponent.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FormComponent.js","sourceRoot":"","sources":["../../../src/FormComponent/FormComponent.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { FC, PropsWithChildren } from 'react';
2
+ import { FormStateProviderProps } from './types';
3
+ import { FormProps as NewsKitFormProps } from 'newskit';
4
+ export type FormProps = NewsKitFormProps & FormStateProviderProps;
5
+ export declare const FormStateProvider: FC<PropsWithChildren<FormStateProviderProps>>;
@@ -0,0 +1,13 @@
1
+ import { useEffect } from 'react';
2
+ import { useFormContext } from 'newskit';
3
+ import React from 'react';
4
+ export var FormStateProvider = function (_a) {
5
+ var onValidation = _a.onFormValidate, children = _a.children;
6
+ var formState = useFormContext().formState;
7
+ useEffect(function () {
8
+ if (onValidation)
9
+ onValidation(formState.errors);
10
+ }, [formState]);
11
+ return React.createElement(React.Fragment, null, children);
12
+ };
13
+ //# sourceMappingURL=FormStateProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormStateProvider.js","sourceRoot":"","sources":["../../../src/FormComponent/FormStateProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAyB,SAAS,EAAE,MAAM,OAAO,CAAA;AAExD,OAAO,EAAE,cAAc,EAAiC,MAAM,SAAS,CAAA;AACvE,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,MAAM,CAAC,IAAM,iBAAiB,GAE1B,UAAC,EAA0C;QAAxB,YAAY,oBAAA,EAAE,QAAQ,cAAA;IACnC,IAAA,SAAS,GAAK,cAAc,EAAE,UAArB,CAAqB;IAEtC,SAAS,CAAC;QACR,IAAI,YAAY;YAAE,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IAClD,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,OAAO,0CAAG,QAAQ,CAAI,CAAA;AACxB,CAAC,CAAA"}
@@ -68,8 +68,15 @@ export interface FormProps extends FormWrapperProps {
68
68
  [x: string]: any;
69
69
  }, validationSchemaKey: string | unknown, router?: any, handleError?: ((overrideMessage?: string) => void) | undefined, handleSuccess?: (() => void) | undefined, redirectUrl?: string | undefined) => Promise<Response>;
70
70
  isFooterVisible?: boolean;
71
+ onValidationChange?: (errors: any) => void;
71
72
  }
72
73
  export interface FormGridProps {
73
74
  isFooterVisible?: boolean;
74
75
  }
76
+ export interface FormErrorsProps {
77
+ [x: string]: string;
78
+ }
79
+ export interface FormStateProviderProps {
80
+ onFormValidate?: (errors: FormErrorsProps) => void;
81
+ }
75
82
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@newskit-render/shared-components",
3
- "version": "4.26.1",
3
+ "version": "4.27.0-alpha.0",
4
4
  "description": "Newskit Render Shared Components",
5
5
  "author": "",
6
6
  "license": "UNLICENSED",