@gisce/react-ooui 1.0.17 → 1.0.19

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":"MultiSelection.d.ts","sourceRoot":"","sources":["MultiSelection.tsx"],"names":[],"mappings":";AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAKtC,eAAO,MAAM,cAAc,UAAW,WAAW,gBAShD,CAAC;AAEF,aAAK,mBAAmB,GAAG,WAAW,GAAG;IACvC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAAW,mBAAmB,gBAgD7D,CAAC"}
1
+ {"version":3,"file":"MultiSelection.d.ts","sourceRoot":"","sources":["MultiSelection.tsx"],"names":[],"mappings":";AAMA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAKtC,eAAO,MAAM,cAAc,UAAW,WAAW,gBAShD,CAAC;AAEF,aAAK,mBAAmB,GAAG,WAAW,GAAG;IACvC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAAW,mBAAmB,gBAqD7D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Container.d.ts","sourceRoot":"","sources":["Container.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,IAAI,aAAa,EAAiB,MAAM,aAAa,CAAC;AAYxE,aAAK,KAAK,GAAG;IACX,SAAS,EAAE,aAAa,CAAC;IACzB,mBAAmB,EAAE,OAAO,CAAC;CAC9B,CAAC;AAEF,QAAA,MAAM,SAAS,UAAW,KAAK,KAAG,MAAM,YAgFvC,CAAC;AAEF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"Container.d.ts","sourceRoot":"","sources":["Container.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,IAAI,aAAa,EAAiB,MAAM,aAAa,CAAC;AAYxE,aAAK,KAAK,GAAG;IACX,SAAS,EAAE,aAAa,CAAC;IACzB,mBAAmB,EAAE,OAAO,CAAC;CAC9B,CAAC;AAEF,QAAA,MAAM,SAAS,UAAW,KAAK,KAAG,MAAM,YA8EvC,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Form.d.ts","sourceRoot":"","sources":["Form.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAiCf,OAAO,EAAE,QAAQ,EAAgB,MAAM,SAAS,CAAC;AAiBjD,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,CAAC;IAC9B,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACxE,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;CACpB,CAAC;;AAi+BF,wBAAgC"}
1
+ {"version":3,"file":"Form.d.ts","sourceRoot":"","sources":["Form.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAiCf,OAAO,EAAE,QAAQ,EAAgB,MAAM,SAAS,CAAC;AAiBjD,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,CAAC;IAC9B,eAAe,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACxE,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;CACpB,CAAC;;AAg+BF,wBAAgC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gisce/react-ooui",
3
- "version": "1.0.17",
3
+ "version": "1.0.19",
4
4
  "files": [
5
5
  "dist",
6
6
  "src",
@@ -33,7 +33,7 @@
33
33
  },
34
34
  "dependencies": {
35
35
  "@ant-design/plots": "^1.0.9",
36
- "@gisce/ooui": "^0.17.5",
36
+ "@gisce/ooui": "^0.17.6",
37
37
  "@gisce/react-formiga-table": "^0.5.0",
38
38
  "@monaco-editor/react": "^4.4.5",
39
39
  "@tabler/icons": "^1.96.0",
@@ -0,0 +1,25 @@
1
+ import React from "react";
2
+
3
+ import { Form } from "../..";
4
+ import LocaleProvider from "../../context/LocaleContext";
5
+
6
+ export default {
7
+ title: "Components/Widgets/Forms/ActivacioContracte",
8
+ };
9
+
10
+ export const Default = (): React.ReactElement => {
11
+ return (
12
+ <LocaleProvider lang="en_US">
13
+ <Form
14
+ id={6}
15
+ model={"giscedata.polissa.crear.contracte"}
16
+ onCancel={() => {
17
+ console.log();
18
+ }}
19
+ onSubmitSucceed={(value: any) => {
20
+ console.log();
21
+ }}
22
+ />
23
+ </LocaleProvider>
24
+ );
25
+ };
@@ -14,6 +14,7 @@ import attachment from "./models/attachment";
14
14
  import crm_case from "./models/crm_case";
15
15
  import form_with_gridfiber from "./models/form_with_gridfiber";
16
16
  import partner_category from "./models/res_partner_category";
17
+ import activacioContracte from "./models/activacioContracte";
17
18
 
18
19
  const allModels = [
19
20
  cups,
@@ -32,6 +33,7 @@ const allModels = [
32
33
  crm_case,
33
34
  form_with_gridfiber,
34
35
  partner_category,
36
+ activacioContracte,
35
37
  ];
36
38
 
37
39
  const getMock = (model: string) => {
@@ -0,0 +1,112 @@
1
+ export default {
2
+ model: "giscedata.polissa.crear.contracte",
3
+ exampleValues: {
4
+ id: 6,
5
+ accio: "nou",
6
+ data_final: undefined,
7
+ duracio: undefined,
8
+ data_firma_contracte: "2017-06-01 00:00:00",
9
+ data_inici: "2022-10-05",
10
+ first_onchange: true,
11
+ observacions:
12
+ "Cambios realizados detectados autom\u00e1ticamente:\n\u2022 C\u00f3digo DH: E2 \u2192 G0\n\u2022 C\u00f3digo Tarifa: 2A \u2192 2T\n",
13
+ state: "ok",
14
+ parent_id: undefined,
15
+ },
16
+ form: {
17
+ arch: '<form string="Activación del contrato">\n <field name="state" invisible="1"/>\n <field name="first_onchange" invisible="1"/>\n <group colspan="4" col="4" attrs="{\'invisible\': [(\'state\', \'=\', \'fail\')]}">\n <field name="accio"/>\n <group colspan="4" col="4" attrs="{\'invisible\': [(\'accio\', \'=\', \'modificar\')]}">\n <label string="Solo cambiar para fechas inferiores a la fecha mostrada, si no se escogerá ésta, ya que es la fecha final del contrato vigente" colspan="4"/>\n <field name="data_inici" attrs="{\'required\': [(\'accio\', \'=\', \'nou\')]}" on_change="onchange_duracio_first(data_inici, duracio, first_onchange, context)"/>\n <field name="duracio" attrs="{\'required\': [(\'accio\', \'=\', \'nou\')]}" on_change="onchange_duracio_first(data_inici, duracio, first_onchange, context)"/>\n <field name="data_final" attrs="{\'required\': [(\'accio\', \'=\', \'nou\')]}"/>\n <field name="data_firma_contracte"/>\n </group>\n <separator colspan="4" string="Observaciones"/>\n <field name="observacions" colspan="4" required="1" nolabel="1" width="600" height="120"/>\n <group col="2" colspan="4">\n <button icon="gtk-cancel" special="cancel" string="Cancelar" name="action_cancel" type="object"/>\n <button icon="gtk-ok" name="action_crear_contracte" string="Crear contrato" type="object"/>\n </group>\n </group>\n <group colspan="4" col="4" attrs="{\'invisible\': [(\'state\', \'=\', \'ok\')]}">\n <group col="1" colspan="1" rowspan="2">\n <image name="gtk-dialog-warning"/>\n </group>\n <group colspan="3" col="3">\n <label colspan="3" string="&lt;b&gt;Atención!&lt;/b&gt;"/>\n <label colspan="3" string="Este contrato tiene modificaciones contractuales en estado &lt;b&gt;pendiente&lt;/b&gt;. No se puede crear otra sin cancelarlas"/>\n <button icon="gtk-close" special="cancel" string="Cerrar" name="action_cancel" type="object"/>\n </group>\n </group>\n </form>',
18
+ field_parent: false,
19
+ fields: {
20
+ accio: {
21
+ required: true,
22
+ selection: [
23
+ ["modificar", "Modificar el contrato existente"],
24
+ ["nou", "Crear una modificaci\u00f3n contractual nueva"],
25
+ ],
26
+ string: "Acci\u00f3n",
27
+ type: "selection",
28
+ views: {},
29
+ },
30
+ data_final: { string: "Fecha final", type: "date", views: {} },
31
+ data_firma_contracte: {
32
+ string: "Fecha firma",
33
+ type: "datetime",
34
+ views: {},
35
+ },
36
+ data_inici: {
37
+ string: "Fecha de activaci\u00f3n",
38
+ type: "date",
39
+ views: {},
40
+ },
41
+ duracio: {
42
+ selection: [
43
+ ["actual", "Final del contrato actual"],
44
+ ["nou", "Nuevo periodo completo de contrato"],
45
+ ],
46
+ string: "Duraci\u00f3n",
47
+ type: "selection",
48
+ views: {},
49
+ },
50
+ first_onchange: { string: "First onchange", type: "boolean", views: {} },
51
+ observacions: {
52
+ required: true,
53
+ string: "Observaciones",
54
+ type: "text",
55
+ views: {},
56
+ },
57
+ state: {
58
+ selection: [
59
+ ["ok", "OK"],
60
+ ["fail", "Error"],
61
+ ],
62
+ string: "Estado",
63
+ type: "selection",
64
+ views: {},
65
+ },
66
+ },
67
+ model: "giscedata.polissa.crear.contracte",
68
+ name: "giscedata.polissa.crear.contracte.form",
69
+ search_fields: { primary: [], secondary: [] },
70
+ toolbar: {
71
+ action: [],
72
+ print: [
73
+ {
74
+ datas: { model: "giscedata.polissa.crear.contracte" },
75
+ id: -1,
76
+ model: "giscedata.polissa.crear.contracte",
77
+ name: "Export to XLSX",
78
+ report_name: "printscreen.list",
79
+ string: "Export to XLSX",
80
+ type: "ir.actions.report.xml",
81
+ },
82
+ ],
83
+ relate: [
84
+ {
85
+ auto_refresh: 0,
86
+ context: "{'active_test': False}",
87
+ domain: "[('id', '=', active_id)]",
88
+ groups_id: [],
89
+ id: -1,
90
+ limit: 0,
91
+ name: "giscedata.polissa.crear.contracte",
92
+ res_model: "giscedata.polissa.crear.contracte",
93
+ src_model: "giscedata.polissa.crear.contracte",
94
+ string: "giscedata.polissa.crear.contracte",
95
+ target: "current",
96
+ type: "ir.actions.act_window",
97
+ usage: "",
98
+ view_id: false,
99
+ view_ids: [],
100
+ view_mode: "tree,form",
101
+ view_type: "form",
102
+ views: [
103
+ [false, "tree"],
104
+ [false, "form"],
105
+ ],
106
+ },
107
+ ],
108
+ },
109
+ type: "form",
110
+ view_id: 476,
111
+ },
112
+ };
@@ -59,6 +59,11 @@ export const MultiSelectionInput = (props: SelectionInputProps) => {
59
59
  return entry && entry[0];
60
60
  });
61
61
 
62
+ if (keysForChangedValues.length === 0) {
63
+ onChange?.(undefined);
64
+ return;
65
+ }
66
+
62
67
  onChange?.(keysForChangedValues);
63
68
  }
64
69
 
@@ -56,7 +56,7 @@ const Container = (props: Props): React.ReactElement => {
56
56
  firstRow = firstRow.concat(rowWithEmptiesToFit);
57
57
  }
58
58
 
59
- return rowWithEmptiesToFit.map((item: Widget, j: number) => {
59
+ return rowWithEmptiesToFit.map((item: Widget) => {
60
60
  // We check if we have any label+field inside the container.
61
61
  // In this scenario, we must format the grid accordingly
62
62
  // Otherwise, the grid will divide uniformly
@@ -64,11 +64,9 @@ const Container = (props: Props): React.ReactElement => {
64
64
  fieldInRows = true;
65
65
  }
66
66
 
67
- const itemRowIndex = row.indexOf(item);
68
-
69
67
  return (
70
68
  <div
71
- key={`${i.toString()}-${itemRowIndex.toString()}`}
69
+ key={item.key}
72
70
  style={{
73
71
  ...getSpanStyleForItem({ item, responsiveBehaviour }),
74
72
  minWidth: 0,
@@ -995,7 +995,6 @@ function Form(props: FormProps, ref: any) {
995
995
  debouncedCheckFieldsChanges({ elementHasLostFocus: false });
996
996
  }}
997
997
  component={false}
998
- preserve={false}
999
998
  >
1000
999
  {formOoui && (
1001
1000
  <Container