@gisce/react-ooui 1.1.65 → 1.1.66

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.
@@ -3,6 +3,6 @@ import { ButtonGroup as ButtonGroupOoui } from "@gisce/ooui";
3
3
  declare type ButtonGroupProps = {
4
4
  ooui: ButtonGroupOoui;
5
5
  };
6
- export declare const ButtonGroup: (props: ButtonGroupProps) => JSX.Element;
6
+ export declare const ButtonGroup: (props: ButtonGroupProps) => JSX.Element | null | undefined;
7
7
  export {};
8
8
  //# sourceMappingURL=ButtonGroup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonGroup.d.ts","sourceRoot":"","sources":["ButtonGroup.tsx"],"names":[],"mappings":";AAIA,OAAO,EACL,WAAW,IAAI,eAAe,EAG/B,MAAM,aAAa,CAAC;AAQrB,aAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,eAAe,CAAC;CACvB,CAAC;AAMF,eAAO,MAAM,WAAW,UAAW,gBAAgB,gBAoElD,CAAC"}
1
+ {"version":3,"file":"ButtonGroup.d.ts","sourceRoot":"","sources":["ButtonGroup.tsx"],"names":[],"mappings":";AAKA,OAAO,EACL,WAAW,IAAI,eAAe,EAG/B,MAAM,aAAa,CAAC;AAQrB,aAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,eAAe,CAAC;CACvB,CAAC;AAQF,eAAO,MAAM,WAAW,UAAW,gBAAgB,mCA2ElD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gisce/react-ooui",
3
- "version": "1.1.65",
3
+ "version": "1.1.66",
4
4
  "files": [
5
5
  "dist",
6
6
  "src",
@@ -36,7 +36,7 @@
36
36
  },
37
37
  "dependencies": {
38
38
  "@ant-design/plots": "^1.0.9",
39
- "@gisce/ooui": "^0.19.5",
39
+ "@gisce/ooui": "^0.19.6",
40
40
  "@gisce/react-formiga-table": "^0.5.0",
41
41
  "@monaco-editor/react": "^4.4.5",
42
42
  "@tabler/icons-react": "^2.11.0",
@@ -2,6 +2,7 @@ import React, { useContext, useState } from "react";
2
2
  import Field from "@/common/Field";
3
3
  import { DownOutlined } from "@ant-design/icons";
4
4
  import { Dropdown, Menu } from "antd";
5
+ import { Button } from "@/widgets/base/Button";
5
6
  import {
6
7
  ButtonGroup as ButtonGroupOoui,
7
8
  Button as ButtonOoui,
@@ -20,6 +21,8 @@ type ButtonGroupProps = {
20
21
 
21
22
  type ItemsProps = {
22
23
  ooui: ButtonOoui[];
24
+ executeButtonAction: any,
25
+ lang: string
23
26
  };
24
27
 
25
28
  export const ButtonGroup = (props: ButtonGroupProps) => {
@@ -73,27 +76,37 @@ export const ButtonGroup = (props: ButtonGroupProps) => {
73
76
 
74
77
  onClick_confirm();
75
78
  }
76
-
77
- return (
78
- <Field ooui={new FieldOoui({ ...{ ooui } })}>
79
- <Dropdown.Button
80
- disabled={!activated || readOnly}
81
- onClick={onClick}
82
- icon={<DownOutlined />}
83
- type={primary ? "primary" : undefined}
84
- //danger={danger ? true : undefined} This works but typescript
85
- // doesn't accept
86
- overlay={Items({ooui: secondaryButtons})}
87
- >
88
- {getButtonIcon()}
89
- {caption}
90
- </Dropdown.Button>
91
- </Field>
92
- );
79
+ if (ooui.buttons.length === 0) {
80
+ return null;
81
+ } else if (ooui.buttons.length > 1) {
82
+ return (
83
+ <Field ooui={new FieldOoui({ ...{ ooui } })}>
84
+ <Dropdown.Button
85
+ disabled={!activated || readOnly}
86
+ onClick={onClick}
87
+ icon={<DownOutlined />}
88
+ type={primary ? "primary" : undefined}
89
+ //danger={danger ? true : undefined} This works but typescript
90
+ // doesn't accept
91
+ overlay={<Items ooui={secondaryButtons} executeButtonAction={executeButtonAction} lang={lang} /> }
92
+ >
93
+ {getButtonIcon()}
94
+ {caption}
95
+ </Dropdown.Button>
96
+ </Field>
97
+ );
98
+ } else if (defaultButton) {
99
+ return (
100
+ <Button ooui={defaultButton} />
101
+ )
102
+ }
93
103
  };
94
104
 
95
105
  const Items = (props: ItemsProps) => {
96
- const { ooui } = props;
106
+ const { ooui, executeButtonAction, lang } = props;
107
+ if (!ooui) {
108
+ return null;
109
+ }
97
110
  const items = ooui.map((button) => {
98
111
  const {
99
112
  id,
@@ -106,10 +119,7 @@ const Items = (props: ItemsProps) => {
106
119
  readOnly,
107
120
  danger,
108
121
  } = button;
109
- const formContext = useContext(FormContext) as FormContextType;
110
- const { executeButtonAction } = formContext || {};
111
122
  const [isRunning, setIsRunning] = useState<boolean>(false);
112
- const { lang } = useContext(LocaleContext) as LocaleContextType;
113
123
 
114
124
  async function onClick_confirm() {
115
125
  setIsRunning(true);