@gisce/react-ooui 1.4.12 → 1.4.13-rc.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.
@@ -1 +1 @@
1
- {"version":3,"file":"Form.d.ts","sourceRoot":"","sources":["Form.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAkCf,OAAO,EAAE,QAAQ,EAAgB,MAAM,SAAS,CAAC;AAmBjD,oBAAY,SAAS,GAAG;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,UAAU,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;IACxC,eAAe,CAAC,EAAE,CAChB,EAAE,CAAC,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,GAAG,EACZ,UAAU,CAAC,EAAE,GAAG,EAChB,iBAAiB,CAAC,EAAE,OAAO,KACxB,IAAI,CAAC;IACV,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;;AAuhCF,wBAAgC"}
1
+ {"version":3,"file":"Form.d.ts","sourceRoot":"","sources":["Form.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAkCf,OAAO,EAAE,QAAQ,EAAgB,MAAM,SAAS,CAAC;AAmBjD,oBAAY,SAAS,GAAG;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,UAAU,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;IACxC,eAAe,CAAC,EAAE,CAChB,EAAE,CAAC,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,GAAG,EACZ,UAAU,CAAC,EAAE,GAAG,EAChB,iBAAiB,CAAC,EAAE,OAAO,KACxB,IAAI,CAAC;IACV,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;;AAqiCF,wBAAgC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gisce/react-ooui",
3
- "version": "1.4.12",
3
+ "version": "1.4.13-rc.0",
4
4
  "files": [
5
5
  "dist",
6
6
  "src",
@@ -705,15 +705,17 @@ function Form(props: FormProps, ref: any) {
705
705
  fields,
706
706
  arch,
707
707
  values,
708
+ operationInProgress = false,
708
709
  }: {
709
710
  arch: string;
710
711
  fields: any;
711
712
  values: any;
713
+ operationInProgress?: boolean;
712
714
  }) => {
713
715
  const ooui = new FormOoui(fields);
714
716
  // TODO: Here we must inject `values` to the ooui parser in order to evaluate arch+values and get the new form container
715
717
  ooui.parse(arch, {
716
- readOnly,
718
+ readOnly: readOnly || operationInProgress,
717
719
  values: convertToPlain2ManyValues(
718
720
  {
719
721
  ...values,
@@ -980,6 +982,15 @@ function Form(props: FormProps, ref: any) {
980
982
  checkFieldsChanges({ elementHasLostFocus: true });
981
983
  }
982
984
 
985
+ function updateOperationInProgress(value: boolean) {
986
+ parseForm({
987
+ fields,
988
+ arch: arch!,
989
+ values: getCurrentValues(fields),
990
+ operationInProgress: value,
991
+ });
992
+ }
993
+
983
994
  async function executeButtonAction({
984
995
  type,
985
996
  action,
@@ -1016,6 +1027,7 @@ function Form(props: FormProps, ref: any) {
1016
1027
  : {};
1017
1028
 
1018
1029
  const updatedContext = { ...context, ...additionalContext };
1030
+ updateOperationInProgress(true);
1019
1031
 
1020
1032
  if (type === "object") {
1021
1033
  await runObjectButton({ action, context: updatedContext });
@@ -1024,7 +1036,9 @@ function Form(props: FormProps, ref: any) {
1024
1036
  } else if (type === "action") {
1025
1037
  await runActionButton({ action, context: updatedContext });
1026
1038
  }
1039
+ updateOperationInProgress(false);
1027
1040
  } catch (err) {
1041
+ updateOperationInProgress(false);
1028
1042
  showErrorDialog(err);
1029
1043
  }
1030
1044
  }