@gisce/react-ooui 1.1.2-rc.1 → 1.1.2-rc.3
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.
- package/dist/context/ActionViewContext.d.ts.map +1 -1
- package/dist/context/ContentRootContext.d.ts.map +1 -1
- package/dist/helpers/treeHelper.d.ts +1 -2
- package/dist/helpers/treeHelper.d.ts.map +1 -1
- package/dist/react-ooui.es.js +3215 -3225
- package/dist/react-ooui.es.js.map +1 -1
- package/dist/react-ooui.umd.js +15 -15
- package/dist/react-ooui.umd.js.map +1 -1
- package/dist/views/ActionView.d.ts.map +1 -1
- package/dist/views/RootView.d.ts.map +1 -1
- package/dist/widgets/base/Binary.d.ts.map +1 -1
- package/dist/widgets/base/one2many/One2manyInput.d.ts.map +1 -1
- package/dist/widgets/custom/MultiCheckbox.d.ts.map +1 -1
- package/dist/widgets/custom/Tags.d.ts.map +1 -1
- package/package.json +5 -2
- package/src/context/ActionViewContext.tsx +11 -0
- package/src/context/ContentRootContext.tsx +7 -20
- package/src/helpers/treeHelper.ts +0 -17
- package/src/stories/mocks/models/cups.ts +5 -8
- package/src/views/ActionView.tsx +0 -1
- package/src/views/RootView.tsx +5 -1
- package/src/widgets/base/Binary.tsx +2 -1
- package/src/widgets/base/Integer.tsx +1 -1
- package/src/widgets/base/one2many/One2manyInput.tsx +9 -7
- package/src/widgets/custom/MultiCheckbox.tsx +54 -43
- package/src/widgets/custom/Tags.tsx +8 -5
- package/src/.eslintcache +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionView.d.ts","sourceRoot":"","sources":["ActionView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAIf,OAAO,EAIL,eAAe,EAGf,QAAQ,EACT,MAAM,eAAe,CAAC;AAiBvB,aAAK,KAAK,GAAG;IACX,MAAM,EAAE,GAAG,CAAC;IACZ,OAAO,EAAE,GAAG,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAChC,WAAW,EAAE,eAAe,CAAC;IAC7B,iBAAiB,CAAC,EAAE,GAAG,CAAC;IACxB,gBAAgB,CAAC,EAAE,GAAG,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;;
|
|
1
|
+
{"version":3,"file":"ActionView.d.ts","sourceRoot":"","sources":["ActionView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAON,MAAM,OAAO,CAAC;AAIf,OAAO,EAIL,eAAe,EAGf,QAAQ,EACT,MAAM,eAAe,CAAC;AAiBvB,aAAK,KAAK,GAAG;IACX,MAAM,EAAE,GAAG,CAAC;IACZ,OAAO,EAAE,GAAG,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAChC,WAAW,EAAE,eAAe,CAAC;IAC7B,iBAAiB,CAAC,EAAE,GAAG,CAAC;IACxB,gBAAgB,CAAC,EAAE,GAAG,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;;AA0aF,wBAAsC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RootView.d.ts","sourceRoot":"","sources":["RootView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAKN,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"RootView.d.ts","sourceRoot":"","sources":["RootView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAKN,MAAM,OAAO,CAAC;AAcf,aAAK,aAAa,GAAG;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,oBAAY,UAAU,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;;AA0dF,wBAAoC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Binary.d.ts","sourceRoot":"","sources":["Binary.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,aAAa,CAAC;AAmBnD,aAAK,KAAK,GAAG;IACX,IAAI,EAAE,UAAU,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,MAAM,UAAW,KAAK,gBASlC,CAAC;AAEF,UAAU,gBAAgB;IACxB,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;CAChD;AAED,eAAO,MAAM,WAAW,UAAW,gBAAgB,
|
|
1
|
+
{"version":3,"file":"Binary.d.ts","sourceRoot":"","sources":["Binary.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,aAAa,CAAC;AAmBnD,aAAK,KAAK,GAAG;IACX,IAAI,EAAE,UAAU,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,MAAM,UAAW,KAAK,gBASlC,CAAC;AAEF,UAAU,gBAAgB;IACxB,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;CAChD;AAED,eAAO,MAAM,WAAW,UAAW,gBAAgB,gBAkGlD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"One2manyInput.d.ts","sourceRoot":"","sources":["One2manyInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkD,MAAM,OAAO,CAAC;AACvE,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AAWvD,OAAO,EAAE,KAAK,EAAY,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"One2manyInput.d.ts","sourceRoot":"","sources":["One2manyInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkD,MAAM,OAAO,CAAC;AACvE,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AAWvD,OAAO,EAAE,KAAK,EAAY,MAAM,SAAS,CAAC;AAkB1C,aAAK,aAAa,GAAG;IACnB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;CAC5B,CAAC;AAQF,aAAK,YAAY,GAAG;IAClB,SAAS,CAAC,EACN,UAAU,GACV,eAAe,GACf,eAAe,GACf,eAAe,GACf,aAAa,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,aAAa,CAAC,EAAE,GAAG,CAAC;CACrB,CAAC;AAEF,UAAU,kBAAkB;IAC1B,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC1C,KAAK,EAAE,KAAK,CAAC;CACd;AAWD,QAAA,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA4kB/C,CAAC;AAEF,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiCheckbox.d.ts","sourceRoot":"","sources":["MultiCheckbox.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,IAAI,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEjE,OAAO,EAAgB,aAAa,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"MultiCheckbox.d.ts","sourceRoot":"","sources":["MultiCheckbox.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,IAAI,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEjE,OAAO,EAAgB,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAO7E,aAAK,kBAAkB,GAAG;IACxB,IAAI,EAAE,iBAAiB,CAAC;CACzB,CAAC;AAEF,aAAK,uBAAuB,GAAG,kBAAkB,GAAG;IAClD,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;CAC3C,CAAC;AAEF,eAAO,MAAM,aAAa,UAAW,kBAAkB,gBAQtD,CAAC;AAEF,eAAO,MAAM,kBAAkB,UAAW,uBAAuB,gBAsIhE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tags.d.ts","sourceRoot":"","sources":["Tags.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAgB,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAO7E,aAAK,SAAS,GAAG,WAAW,GAAG;IAC7B,IAAI,EAAE,QAAQ,CAAC;CAChB,CAAC;AAEF,aAAK,cAAc,GAAG,SAAS,GAAG;IAChC,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;CAC3C,CAAC;AAEF,eAAO,MAAM,IAAI,UAAW,SAAS,gBAQpC,CAAC;AAEF,eAAO,MAAM,SAAS,UAAW,cAAc,
|
|
1
|
+
{"version":3,"file":"Tags.d.ts","sourceRoot":"","sources":["Tags.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAgB,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAO7E,aAAK,SAAS,GAAG,WAAW,GAAG;IAC7B,IAAI,EAAE,QAAQ,CAAC;CAChB,CAAC;AAEF,aAAK,cAAc,GAAG,SAAS,GAAG;IAChC,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;CAC3C,CAAC;AAEF,eAAO,MAAM,IAAI,UAAW,SAAS,gBAQpC,CAAC;AAEF,eAAO,MAAM,SAAS,UAAW,cAAc,gBAoI9C,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gisce/react-ooui",
|
|
3
|
-
"version": "1.1.2-rc.
|
|
3
|
+
"version": "1.1.2-rc.3",
|
|
4
4
|
"files": [
|
|
5
5
|
"dist",
|
|
6
6
|
"src",
|
|
@@ -23,7 +23,10 @@
|
|
|
23
23
|
"access": "public"
|
|
24
24
|
},
|
|
25
25
|
"scripts": {
|
|
26
|
+
"preminor": "npm version preminor --preid rc",
|
|
26
27
|
"prerelease": "npm version prerelease --preid rc",
|
|
28
|
+
"prepatch": "npm version prepatch --preid rc",
|
|
29
|
+
"premajor": "npm version premajor --preid rc",
|
|
27
30
|
"start": "while :; do vite build --watch --force; done",
|
|
28
31
|
"build:tailwind": "postcss src/tailwind.css -o src/tailwind.generated.css",
|
|
29
32
|
"build": "vite build",
|
|
@@ -33,7 +36,7 @@
|
|
|
33
36
|
},
|
|
34
37
|
"dependencies": {
|
|
35
38
|
"@ant-design/plots": "^1.0.9",
|
|
36
|
-
"@gisce/ooui": "^0.17.
|
|
39
|
+
"@gisce/ooui": "^0.17.7",
|
|
37
40
|
"@gisce/react-formiga-table": "^0.5.0",
|
|
38
41
|
"@monaco-editor/react": "^4.4.5",
|
|
39
42
|
"@tabler/icons": "^1.96.0",
|
|
@@ -128,6 +128,17 @@ const ActionViewProvider = (props: ActionViewProviderProps): any => {
|
|
|
128
128
|
}
|
|
129
129
|
}, [availableViews]);
|
|
130
130
|
|
|
131
|
+
useEffect(() => {
|
|
132
|
+
if (
|
|
133
|
+
previousView?.view_id === currentView.view_id &&
|
|
134
|
+
availableViews.length > 1
|
|
135
|
+
) {
|
|
136
|
+
setPreviousView(
|
|
137
|
+
availableViews.filter((view) => view.view_id !== currentView.view_id)[0]
|
|
138
|
+
);
|
|
139
|
+
}
|
|
140
|
+
}, [currentView]);
|
|
141
|
+
|
|
131
142
|
const callOnFormSave = () => {
|
|
132
143
|
(formRef.current as any)?.submitForm();
|
|
133
144
|
};
|
|
@@ -17,6 +17,7 @@ import {
|
|
|
17
17
|
} from "@/context/TabManagerContext";
|
|
18
18
|
import { FormModal } from "@/widgets/modals/FormModal";
|
|
19
19
|
import { LocaleContext, LocaleContextType } from "@/context/LocaleContext";
|
|
20
|
+
import { transformPlainMany2Ones } from "@/helpers/formHelper";
|
|
20
21
|
|
|
21
22
|
export type ContentRootContextType = {
|
|
22
23
|
processAction: ({
|
|
@@ -95,9 +96,9 @@ const ContentRootProvider = (
|
|
|
95
96
|
return;
|
|
96
97
|
}
|
|
97
98
|
|
|
98
|
-
const { ids
|
|
99
|
+
const { ids } = datas || {};
|
|
99
100
|
|
|
100
|
-
let idsToExecute = ids;
|
|
101
|
+
let idsToExecute = ids || [];
|
|
101
102
|
|
|
102
103
|
const reportContextParsed =
|
|
103
104
|
typeof reportContext === "string"
|
|
@@ -108,23 +109,6 @@ const ContentRootProvider = (
|
|
|
108
109
|
})
|
|
109
110
|
: reportContext;
|
|
110
111
|
|
|
111
|
-
if (!idsToExecute) {
|
|
112
|
-
const results = await ConnectionProvider.getHandler().searchAllIds({
|
|
113
|
-
params: [],
|
|
114
|
-
model: datasource.model || model,
|
|
115
|
-
totalItems: 1,
|
|
116
|
-
context: { ...context, ...reportContextParsed },
|
|
117
|
-
});
|
|
118
|
-
|
|
119
|
-
if (results.length === 0) {
|
|
120
|
-
showErrorDialog("Nothing to print");
|
|
121
|
-
return;
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
idsToExecute = results;
|
|
125
|
-
datas.id = results[0];
|
|
126
|
-
}
|
|
127
|
-
|
|
128
112
|
try {
|
|
129
113
|
const newReportId = await ConnectionProvider.getHandler().createReport({
|
|
130
114
|
model,
|
|
@@ -242,7 +226,10 @@ const ContentRootProvider = (
|
|
|
242
226
|
if (actionData.domain) {
|
|
243
227
|
parsedDomain = await ConnectionProvider.getHandler().evalDomain({
|
|
244
228
|
domain: actionData.domain,
|
|
245
|
-
values: {
|
|
229
|
+
values: transformPlainMany2Ones({
|
|
230
|
+
fields,
|
|
231
|
+
values: { ...values, ...globalValues },
|
|
232
|
+
}),
|
|
246
233
|
context: mergedContext,
|
|
247
234
|
});
|
|
248
235
|
}
|
|
@@ -160,22 +160,6 @@ function sortResults({
|
|
|
160
160
|
return resultsToSort.sort(sortFn);
|
|
161
161
|
}
|
|
162
162
|
|
|
163
|
-
function sortResultsWithOrder(results: any[], order: number[]) {
|
|
164
|
-
if (!order) {
|
|
165
|
-
const sortResultsById = results.sort((a: any, b: any) => {
|
|
166
|
-
return a.id - b.id;
|
|
167
|
-
});
|
|
168
|
-
return sortResultsById;
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
const sortedResults = results.sort((a: any, b: any) => {
|
|
172
|
-
const aIndex = order.indexOf(a.id);
|
|
173
|
-
const bIndex = order.indexOf(b.id);
|
|
174
|
-
return aIndex - bIndex;
|
|
175
|
-
});
|
|
176
|
-
return sortedResults;
|
|
177
|
-
}
|
|
178
|
-
|
|
179
163
|
export {
|
|
180
164
|
getTableColumns,
|
|
181
165
|
getTableItems,
|
|
@@ -184,5 +168,4 @@ export {
|
|
|
184
168
|
itemHasBooleans,
|
|
185
169
|
getColorMap,
|
|
186
170
|
sortResults,
|
|
187
|
-
sortResultsWithOrder,
|
|
188
171
|
};
|
|
@@ -49,8 +49,7 @@ export default {
|
|
|
49
49
|
tv: false,
|
|
50
50
|
},
|
|
51
51
|
form: {
|
|
52
|
-
arch:
|
|
53
|
-
'<form string="CUPS">\n <notebook colspan="4">\n <page string="Corbes"> <group colspan="4"> <group string="Validada" colspan="2"> <field name="bq" string="Última corba"/> <field name="bq" string="Format"/> </group> <group string="Facturada" colspan="2"> <field name="bq" string="Última corba"/> <field name="bq" string="Format"/> </group> <group string="Autoconsumida" colspan="2"> <field name="bq" string="Última corba"/> <field name="bq" string="Format"/> </group> <group string="Generada Neta" colspan="2"> <field name="bq" string="Última corba"/> <field name="bq" string="Format"/> </group> <group string="Quart-Horària" colspan="2"> <field name="bq" string="Última corba"/> <field name="bq" string="Format"/> </group> </group> </page> <page string="General">\n <field name="name" select="1" size="25"/>\n <field name="active" select="1"/>\n <field name="distribuidora_id" domain="[(\'supplier\',\'=\',True)]" context="{\'task\': \'test\'}" required="1" select="1"/>\n <field name="id_municipi" select="1"/>\n <field name="id_provincia"/>\n <field name="id_poblacio" select="1" domain="[(\'municipi_id.id\', \'=\', id_municipi)]"/>\n <field name="dp"/>\n <field name="direccio" select="1" colspan="4"/>\n <field name="polissa_polissa" select="1"/>\n <field name="polissa_comptador" select="1"/>\n <field name="polissa_potencia"/>\n <field name="potencia_adscrita" attrs="{\'readonly\':[(\'force_potencia_adscrita\',\'=\',0)]}"/>\n <field name="force_potencia_adscrita"/>\n <group colspan="4" string="Adreces">\n <notebook colspan="4">\n <page string="Principal">\n <separator string="Zona urbana" colspan="4"/>\n <field name="tv"/>\n <field name="nv" select="1"/>\n <field name="pnp" select="1"/>\n <field name="bq" select="1"/>\n <field name="es" select="1"/>\n <field name="pt" select="1"/>\n <field name="pu" select="1"/>\n <field name="aclarador" colspan="4" select="1"/>\n <separator string="Zona industrial" colspan="4"/>\n <field name="cpo" select="1"/>\n <field name="cpa" select="1"/>\n </page>\n <page string="Cadastre">\n <separator string="Zona urbana" colspan="4"/>\n <field name="catas_np"/>\n <field name="catas_nm"/>\n <field name="ref_catastral" select="1"/>\n <button type="object" name="update_dir_from_ref" string="Obtenir del Cadastre"/>\n <button type="object" name="delete_dir_ref" string="Eliminar dades del Cadastre" confirm="Està segur que vol eliminar les dades que s\'han obtingut del cadastre?"/>\n <field name="catas_ldt" colspan="4"/>\n <field name="catas_tv"/>\n <field name="catas_nv"/>\n <field name="catas_pnp"/>\n <field name="catas_bq"/>\n <field name="catas_es"/>\n <field name="catas_pt"/>\n <field name="catas_pu"/>\n <field name="catas_dp"/>\n <separator string="Zona industrial" colspan="4"/>\n <field name="catas_cpo"/>\n <field name="catas_cpa"/>\n <separator string="Sincronització amb el cadastre" colspan="4"/>\n <label colspan="2" string="Si disposa de la referencia cadastral pot copiar les dades del cadastre a l\'adreça principal mitjançant aquest botó"/>\n <button type="object" name="copy_to_alternative" string="Copiar a la principal"/>\n </page>\n <page string="Notes">\n <field name="notes" colspan="4" nolabel="1"/>\n </page>\n </notebook>\n </group>\n </page>\n <page string="Autoconsum">\n <field name="autoconsum_id" readonly="1" colspan="4"/>\n <field name="coef_repartiment" readonly="1" colspan="4"/>\n </page>\n <page string="Butlletins">\n <field name="butlletins" colspan="4" nolabel="1" context="{\'cups_id\': active_id}"/>\n </page>\n <page string="Històric d\'autoconsums">\n <field name="hist_autoconsum" nolabel="1" context="{\'default_cups_id\': active_id}" readonly="1"/>\n </page>\n <page string="Històric de pòlisses">\n <field name="polisses" nolabel="1" colspan="4">\n </field>\n </page>\n </notebook>\n </form>',
|
|
52
|
+
arch: '<form string="CUPS">\n <notebook colspan="4">\n <page string="Corbes"> <group colspan="4"> <group string="Validada" colspan="2"> <field name="bq" string="Última corba"/> <field name="bq" string="Format"/> </group> <group string="Facturada" colspan="2"> <field name="bq" string="Última corba"/> <field name="bq" string="Format"/> </group> <group string="Autoconsumida" colspan="2"> <field name="bq" string="Última corba"/> <field name="bq" string="Format"/> </group> <group string="Generada Neta" colspan="2"> <field name="bq" string="Última corba"/> <field name="bq" string="Format"/> </group> <group string="Quart-Horària" colspan="2"> <field name="bq" string="Última corba"/> <field name="bq" string="Format"/> </group> </group> </page> <page string="General">\n <field name="name" select="1" size="25"/>\n <field name="active" select="1"/>\n <field name="distribuidora_id" domain="[(\'supplier\',\'=\',True)]" context="{\'task\': \'test\'}" required="1" select="1"/>\n <field name="id_municipi" select="1"/>\n <field name="id_provincia"/>\n <field name="id_poblacio" select="1" domain="[(\'municipi_id.id\', \'=\', id_municipi)]"/>\n <field name="dp"/>\n <field name="direccio" select="1" colspan="4"/>\n <field name="polissa_polissa" select="1"/>\n <field name="polissa_comptador" select="1"/>\n <field name="polissa_potencia"/>\n <field name="potencia_adscrita" attrs="{\'readonly\':[(\'force_potencia_adscrita\',\'=\',0)]}"/>\n <field name="force_potencia_adscrita"/>\n <group colspan="4" string="Adreces">\n <notebook colspan="4">\n <page string="Principal">\n <separator string="Zona urbana" colspan="4"/>\n <field name="tv"/>\n <field name="nv" select="1"/>\n <field name="pnp" select="1"/>\n <field name="bq" select="1"/>\n <field name="es" select="1"/>\n <field name="pt" select="1"/>\n <field name="pu" select="1"/>\n <field name="aclarador" colspan="4" select="1"/>\n <separator string="Zona industrial" colspan="4"/>\n <field name="cpo" select="1"/>\n <field name="cpa" select="1"/>\n </page>\n <page string="Cadastre">\n <separator string="Zona urbana" colspan="4"/>\n <field name="catas_np"/>\n <field name="catas_nm"/>\n <field name="ref_catastral" select="1"/>\n <button type="object" name="update_dir_from_ref" string="Obtenir del Cadastre"/>\n <button type="object" name="delete_dir_ref" string="Eliminar dades del Cadastre" confirm="Està segur que vol eliminar les dades que s\'han obtingut del cadastre?"/>\n <field name="catas_ldt" colspan="4"/>\n <field name="catas_tv"/>\n <field name="catas_nv"/>\n <field name="catas_pnp"/>\n <field name="catas_bq"/>\n <field name="catas_es"/>\n <field name="catas_pt"/>\n <field name="catas_pu"/>\n <field name="catas_dp"/>\n <separator string="Zona industrial" colspan="4"/>\n <field name="catas_cpo"/>\n <field name="catas_cpa"/>\n <separator string="Sincronització amb el cadastre" colspan="4"/>\n <label colspan="2" string="Si disposa de la referencia cadastral pot copiar les dades del cadastre a l\'adreça principal mitjançant aquest botó"/>\n <button type="object" name="copy_to_alternative" string="Copiar a la principal"/>\n </page>\n <page string="Notes">\n <field name="notes" colspan="4" nolabel="1"/>\n </page>\n </notebook>\n </group>\n </page>\n <page string="Autoconsum">\n <field name="autoconsum_id" readonly="1" colspan="4"/>\n <field name="coef_repartiment" readonly="1" colspan="4"/>\n </page>\n <page string="Butlletins">\n <field name="butlletins" colspan="4" nolabel="1" context="{\'cups_id\': active_id}"/>\n </page>\n <page string="Històric d\'autoconsums">\n <field name="hist_autoconsum" nolabel="1" context="{\'default_cups_id\': active_id}" readonly="1"/>\n </page>\n <page string="Històric de pòlisses">\n <field name="polisses" nolabel="1" colspan="4">\n </field>\n </page>\n </notebook>\n </form>',
|
|
54
53
|
field_parent: false,
|
|
55
54
|
fields: {
|
|
56
55
|
aclarador: {
|
|
@@ -113,7 +112,7 @@ export default {
|
|
|
113
112
|
readonly: true,
|
|
114
113
|
size: 5,
|
|
115
114
|
string: "Codi Postal (c)",
|
|
116
|
-
type: "
|
|
115
|
+
type: "integer",
|
|
117
116
|
views: {},
|
|
118
117
|
},
|
|
119
118
|
catas_es: {
|
|
@@ -218,7 +217,7 @@ export default {
|
|
|
218
217
|
dp: {
|
|
219
218
|
size: 5,
|
|
220
219
|
string: "Codi Postal",
|
|
221
|
-
type: "
|
|
220
|
+
type: "float",
|
|
222
221
|
views: {},
|
|
223
222
|
},
|
|
224
223
|
es: {
|
|
@@ -332,8 +331,7 @@ export default {
|
|
|
332
331
|
type: "one2many",
|
|
333
332
|
views: {
|
|
334
333
|
tree: {
|
|
335
|
-
arch:
|
|
336
|
-
'<tree string="Modificacions contractuals">\n <field name="polissa_id"/>\n <field name="comptadors_periode"/>\n <field name="titular"/>\n <field name="tarifa"/>\n <field name="potencia"/>\n <field name="tensio_normalitzada"/>\n <field name="name"/>\n <field name="tipus"/>\n <field name="data_inici"/>\n <field name="data_final"/>\n <field name="state"/>\n </tree>\n ',
|
|
334
|
+
arch: '<tree string="Modificacions contractuals">\n <field name="polissa_id"/>\n <field name="comptadors_periode"/>\n <field name="titular"/>\n <field name="tarifa"/>\n <field name="potencia"/>\n <field name="tensio_normalitzada"/>\n <field name="name"/>\n <field name="tipus"/>\n <field name="data_inici"/>\n <field name="data_final"/>\n <field name="state"/>\n </tree>\n ',
|
|
337
335
|
fields: {
|
|
338
336
|
comptadors_periode: {
|
|
339
337
|
digits: [16, 2],
|
|
@@ -667,8 +665,7 @@ export default {
|
|
|
667
665
|
view_id: 458,
|
|
668
666
|
},
|
|
669
667
|
tree: {
|
|
670
|
-
arch:
|
|
671
|
-
'<tree string="CUPS">\n <field name="distribuidora_id"/>\n <field name="name"/>\n <field name="polissa_polissa"/>\n <field name="polissa_comptador"/>\n <field name="polissa_potencia" sum="Potència contractada (kW)"/>\n <field name="active"/>\n <field name="direccio"/>\n <field name="id_municipi"/>\n </tree>',
|
|
668
|
+
arch: '<tree string="CUPS">\n <field name="distribuidora_id"/>\n <field name="name"/>\n <field name="polissa_polissa"/>\n <field name="polissa_comptador"/>\n <field name="polissa_potencia" sum="Potència contractada (kW)"/>\n <field name="active"/>\n <field name="direccio"/>\n <field name="id_municipi"/>\n </tree>',
|
|
672
669
|
field_parent: false,
|
|
673
670
|
fields: {
|
|
674
671
|
active: {
|
package/src/views/ActionView.tsx
CHANGED
package/src/views/RootView.tsx
CHANGED
|
@@ -15,6 +15,7 @@ import { tForLang } from "@/context/LocaleContext";
|
|
|
15
15
|
import { ShortcutApi } from "@/ui/FavouriteButton";
|
|
16
16
|
import showErrorDialog from "@/ui/ActionErrorDialog";
|
|
17
17
|
import { InitialViewData, ViewType } from "@/types";
|
|
18
|
+
import { transformPlainMany2Ones } from "@/helpers/formHelper";
|
|
18
19
|
|
|
19
20
|
type RootViewProps = {
|
|
20
21
|
children: React.ReactNode;
|
|
@@ -245,7 +246,10 @@ function RootView(props: RootViewProps, ref: any) {
|
|
|
245
246
|
const parsedDomain = domain
|
|
246
247
|
? await ConnectionProvider.getHandler().evalDomain({
|
|
247
248
|
domain: domain,
|
|
248
|
-
values: {
|
|
249
|
+
values: transformPlainMany2Ones({
|
|
250
|
+
fields,
|
|
251
|
+
values: { ...values, ...globalValues },
|
|
252
|
+
}),
|
|
249
253
|
context: { ...rootContext, ...parsedContext },
|
|
250
254
|
})
|
|
251
255
|
: [];
|
|
@@ -62,9 +62,10 @@ export const BinaryInput = (props: BinaryInputProps) => {
|
|
|
62
62
|
const linkSource = `data:${fileType?.mime};base64,${value}`;
|
|
63
63
|
const downloadLink = document.createElement("a");
|
|
64
64
|
const fileName = getFieldValue(filenameField);
|
|
65
|
+
const name = getFieldValue("name");
|
|
65
66
|
|
|
66
67
|
downloadLink.href = linkSource;
|
|
67
|
-
downloadLink.download = fileName;
|
|
68
|
+
downloadLink.download = fileName || name;
|
|
68
69
|
downloadLink.click();
|
|
69
70
|
}
|
|
70
71
|
|
|
@@ -24,7 +24,7 @@ export const Integer = (props: IntegerProps) => {
|
|
|
24
24
|
className={"w-full " + requiredClass}
|
|
25
25
|
disabled={readOnly}
|
|
26
26
|
formatter={(value) => {
|
|
27
|
-
return `${value}`.replace(/[^0-9]+/g, "");
|
|
27
|
+
return `${value}`.replace(/[^0-9\-]+/g, "");
|
|
28
28
|
}}
|
|
29
29
|
onChange={(newValue: any) => {
|
|
30
30
|
const newNumber = newValue as number;
|
|
@@ -25,7 +25,8 @@ import { One2manyTopBar } from "@/widgets/base/one2many/One2manyTopBar";
|
|
|
25
25
|
import { readObjectValues, getNextPendingId } from "@/helpers/one2manyHelper";
|
|
26
26
|
import { SearchModal } from "@/widgets/modals/SearchModal";
|
|
27
27
|
import { LocaleContext, LocaleContextType } from "@/context/LocaleContext";
|
|
28
|
-
import { sortResults
|
|
28
|
+
import { sortResults } from "@/helpers/treeHelper";
|
|
29
|
+
import { transformPlainMany2Ones } from "@/helpers/formHelper";
|
|
29
30
|
|
|
30
31
|
type One2manyValue = {
|
|
31
32
|
fields?: any;
|
|
@@ -78,7 +79,8 @@ const One2manyInput: React.FC<One2manyInputProps> = (
|
|
|
78
79
|
) as One2manyContextType;
|
|
79
80
|
|
|
80
81
|
const formContext = useContext(FormContext) as FormContextType;
|
|
81
|
-
const { activeId, getValues, getContext, domain } =
|
|
82
|
+
const { activeId, getFields, getValues, getContext, domain } =
|
|
83
|
+
formContext || {};
|
|
82
84
|
const { lang, t } = useContext(LocaleContext) as LocaleContextType;
|
|
83
85
|
|
|
84
86
|
const formRef = useRef();
|
|
@@ -162,7 +164,10 @@ const One2manyInput: React.FC<One2manyInputProps> = (
|
|
|
162
164
|
transformedDomain.current = transformDomainForChildWidget({
|
|
163
165
|
domain: await ConnectionProvider.getHandler().evalDomain({
|
|
164
166
|
domain: widgetDomain,
|
|
165
|
-
values:
|
|
167
|
+
values: transformPlainMany2Ones({
|
|
168
|
+
fields: getFields(),
|
|
169
|
+
values: getValues(),
|
|
170
|
+
}),
|
|
166
171
|
context: getContext(),
|
|
167
172
|
}),
|
|
168
173
|
widgetFieldName: fieldName,
|
|
@@ -546,10 +551,7 @@ const One2manyInput: React.FC<One2manyInputProps> = (
|
|
|
546
551
|
...(views.get("form")?.fields || {}),
|
|
547
552
|
},
|
|
548
553
|
})
|
|
549
|
-
:
|
|
550
|
-
itemsToShow.map((item) => item.treeValues),
|
|
551
|
-
originalSortItemIds.current!
|
|
552
|
-
);
|
|
554
|
+
: itemsToShow.map((item) => item.treeValues);
|
|
553
555
|
|
|
554
556
|
if (currentView === "tree") {
|
|
555
557
|
return (
|
|
@@ -4,8 +4,9 @@ import Field from "@/common/Field";
|
|
|
4
4
|
import { One2manyItem, One2manyValue } from "../base/one2many/One2manyInput";
|
|
5
5
|
import useDeepCompareEffect from "use-deep-compare-effect";
|
|
6
6
|
import { FormContext, FormContextType } from "@/context/FormContext";
|
|
7
|
-
import { Alert, Checkbox, Spin, Col, Row, Button, Space
|
|
7
|
+
import { Alert, Checkbox, Spin, Col, Row, Button, Space } from "antd";
|
|
8
8
|
import ConnectionProvider from "@/ConnectionProvider";
|
|
9
|
+
import { transformPlainMany2Ones } from "@/helpers/formHelper";
|
|
9
10
|
|
|
10
11
|
type MultiCheckboxProps = {
|
|
11
12
|
ooui: MultiCheckboxOoui;
|
|
@@ -21,7 +22,7 @@ export const MultiCheckbox = (props: MultiCheckboxProps) => {
|
|
|
21
22
|
|
|
22
23
|
return (
|
|
23
24
|
<Field type={"array"} {...props}>
|
|
24
|
-
<MultiCheckboxInput ooui={ooui}
|
|
25
|
+
<MultiCheckboxInput ooui={ooui} />
|
|
25
26
|
</Field>
|
|
26
27
|
);
|
|
27
28
|
};
|
|
@@ -29,16 +30,15 @@ export const MultiCheckbox = (props: MultiCheckboxProps) => {
|
|
|
29
30
|
export const MultiCheckboxInput = (props: MultiCheckboxInputProps) => {
|
|
30
31
|
const { value, ooui, onChange } = props;
|
|
31
32
|
const { items = [] } = value || {};
|
|
32
|
-
const itemsToShow = items
|
|
33
|
-
(item) => item.operation !== "pendingRemove"
|
|
34
|
-
|
|
33
|
+
const itemsToShow = items
|
|
34
|
+
.filter((item) => item.operation !== "pendingRemove")
|
|
35
|
+
.map((item) => item.id) as number[];
|
|
35
36
|
|
|
36
37
|
const [options, setOptions] = useState<any[]>([]);
|
|
37
38
|
const [error, setError] = useState<string>();
|
|
38
39
|
const [isLoadingOptions, setIsLoadingOptions] = useState<boolean>(false);
|
|
39
40
|
const { relation, context, readOnly, field, columns } = ooui;
|
|
40
41
|
|
|
41
|
-
|
|
42
42
|
const formContext = useContext(FormContext) as FormContextType;
|
|
43
43
|
const { getContext } = formContext || {};
|
|
44
44
|
|
|
@@ -56,13 +56,14 @@ export const MultiCheckboxInput = (props: MultiCheckboxInputProps) => {
|
|
|
56
56
|
setIsLoadingOptions(true);
|
|
57
57
|
let params: any = [];
|
|
58
58
|
if (ooui.domain) {
|
|
59
|
-
const evaluatedDomain = await ConnectionProvider.getHandler().evalDomain(
|
|
60
|
-
|
|
61
|
-
|
|
59
|
+
const evaluatedDomain = await ConnectionProvider.getHandler().evalDomain({
|
|
60
|
+
domain: ooui.domain,
|
|
61
|
+
values: transformPlainMany2Ones({
|
|
62
|
+
fields: formContext?.getFields(),
|
|
62
63
|
values: formContext.getPlainValues(),
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
);
|
|
64
|
+
}),
|
|
65
|
+
context: formContext.getContext(),
|
|
66
|
+
});
|
|
66
67
|
params = [...params, ...evaluatedDomain];
|
|
67
68
|
}
|
|
68
69
|
try {
|
|
@@ -72,35 +73,32 @@ export const MultiCheckboxInput = (props: MultiCheckboxInputProps) => {
|
|
|
72
73
|
fields: [field],
|
|
73
74
|
context: { ...getContext?.(), ...context },
|
|
74
75
|
});
|
|
75
|
-
const options = optionsRead.map((item:any) => {
|
|
76
|
+
const options = optionsRead.map((item: any) => {
|
|
76
77
|
const value = item[field];
|
|
77
78
|
let formattedValue = value;
|
|
78
79
|
if (Array.isArray(value)) {
|
|
79
80
|
formattedValue = value[1];
|
|
80
81
|
}
|
|
81
|
-
return {label: formattedValue, value: item.id}
|
|
82
|
+
return { label: formattedValue, value: item.id };
|
|
82
83
|
});
|
|
83
84
|
setOptions(options);
|
|
84
|
-
|
|
85
85
|
} catch (err) {
|
|
86
|
-
setError(err as any)
|
|
86
|
+
setError(err as any);
|
|
87
87
|
} finally {
|
|
88
88
|
setIsLoadingOptions(false);
|
|
89
89
|
}
|
|
90
90
|
if (error) {
|
|
91
91
|
return <Alert className="mt-10" message={error} type="error" banner />;
|
|
92
92
|
}
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
};
|
|
93
|
+
}
|
|
96
94
|
|
|
97
95
|
const checkAll = () => {
|
|
98
|
-
onChangeSelected(options.map(option => option.value));
|
|
99
|
-
}
|
|
96
|
+
onChangeSelected(options.map((option) => option.value));
|
|
97
|
+
};
|
|
100
98
|
|
|
101
99
|
const uncheckAll = () => {
|
|
102
100
|
onChangeSelected([]);
|
|
103
|
-
}
|
|
101
|
+
};
|
|
104
102
|
|
|
105
103
|
const onChangeSelected = (ids: any[]) => {
|
|
106
104
|
const newItems: One2manyItem[] = items.map((item) => {
|
|
@@ -108,46 +106,59 @@ export const MultiCheckboxInput = (props: MultiCheckboxInputProps) => {
|
|
|
108
106
|
if (item.operation == "pendingRemove") {
|
|
109
107
|
return {
|
|
110
108
|
...item,
|
|
111
|
-
operation: "original"
|
|
112
|
-
}
|
|
109
|
+
operation: "original",
|
|
110
|
+
};
|
|
113
111
|
} else {
|
|
114
|
-
return item
|
|
112
|
+
return item;
|
|
115
113
|
}
|
|
116
114
|
} else {
|
|
117
|
-
return {id: item.id, operation:
|
|
115
|
+
return { id: item.id, operation: "pendingRemove" };
|
|
118
116
|
}
|
|
119
|
-
})
|
|
120
|
-
const currentIds = newItems.map(item => item.id)
|
|
121
|
-
ids.filter(id => !currentIds.includes(id)).map((id) => {
|
|
122
|
-
newItems.push({id, operation: 'pendingLink'});
|
|
123
117
|
});
|
|
118
|
+
const currentIds = newItems.map((item) => item.id);
|
|
119
|
+
ids
|
|
120
|
+
.filter((id) => !currentIds.includes(id))
|
|
121
|
+
.map((id) => {
|
|
122
|
+
newItems.push({ id, operation: "pendingLink" });
|
|
123
|
+
});
|
|
124
124
|
triggerChange(newItems);
|
|
125
125
|
};
|
|
126
126
|
|
|
127
127
|
if (isLoadingOptions && options.length === 0) {
|
|
128
|
-
return <Spin
|
|
128
|
+
return <Spin />;
|
|
129
129
|
}
|
|
130
|
-
|
|
130
|
+
|
|
131
131
|
return (
|
|
132
132
|
<>
|
|
133
133
|
<div className="flex flex-row">
|
|
134
|
-
<Checkbox.Group
|
|
134
|
+
<Checkbox.Group
|
|
135
|
+
value={options.length ? itemsToShow : []}
|
|
136
|
+
disabled={readOnly}
|
|
137
|
+
onChange={onChangeSelected}
|
|
138
|
+
style={{ width: "100%" }}
|
|
139
|
+
>
|
|
135
140
|
<Row>
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
+
{options.map((option) => (
|
|
142
|
+
<Col span={Math.floor(24 / columns)}>
|
|
143
|
+
<Checkbox value={option.value}>{option.label}</Checkbox>
|
|
144
|
+
</Col>
|
|
145
|
+
))}
|
|
141
146
|
</Row>
|
|
142
147
|
</Checkbox.Group>
|
|
143
|
-
{!readOnly &&
|
|
148
|
+
{!readOnly && (
|
|
144
149
|
<Space>
|
|
145
|
-
<Button
|
|
146
|
-
|
|
150
|
+
<Button
|
|
151
|
+
onClick={checkAll}
|
|
152
|
+
disabled={itemsToShow.length == options.length}
|
|
153
|
+
>
|
|
154
|
+
Check all
|
|
155
|
+
</Button>
|
|
156
|
+
<Button onClick={uncheckAll} disabled={itemsToShow.length === 0}>
|
|
157
|
+
Uncheck all
|
|
158
|
+
</Button>
|
|
147
159
|
</Space>
|
|
148
|
-
}
|
|
160
|
+
)}
|
|
149
161
|
</div>
|
|
150
162
|
</>
|
|
151
163
|
);
|
|
152
|
-
|
|
153
164
|
};
|
|
@@ -6,7 +6,7 @@ import { One2manyItem, One2manyValue } from "../base/one2many/One2manyInput";
|
|
|
6
6
|
import useDeepCompareEffect from "use-deep-compare-effect";
|
|
7
7
|
import { FormContext, FormContextType } from "@/context/FormContext";
|
|
8
8
|
import { Alert, Tag as AntTag, Select } from "antd";
|
|
9
|
-
import { colorFromString } from "@/helpers/formHelper";
|
|
9
|
+
import { colorFromString, transformPlainMany2Ones } from "@/helpers/formHelper";
|
|
10
10
|
import ConnectionProvider from "@/ConnectionProvider";
|
|
11
11
|
|
|
12
12
|
type TagsProps = WidgetProps & {
|
|
@@ -65,8 +65,11 @@ export const TagsInput = (props: TagsInputProps) => {
|
|
|
65
65
|
const evaluatedDomain = await ConnectionProvider.getHandler().evalDomain(
|
|
66
66
|
{
|
|
67
67
|
domain: ooui.domain,
|
|
68
|
-
values:
|
|
69
|
-
|
|
68
|
+
values: transformPlainMany2Ones({
|
|
69
|
+
fields: formContext?.getFields(),
|
|
70
|
+
values: formContext.getPlainValues(),
|
|
71
|
+
}),
|
|
72
|
+
context: formContext.getContext(),
|
|
70
73
|
}
|
|
71
74
|
);
|
|
72
75
|
params = [...params, ...evaluatedDomain];
|
|
@@ -87,7 +90,7 @@ export const TagsInput = (props: TagsInputProps) => {
|
|
|
87
90
|
return {label: formattedValue, value: item.id}
|
|
88
91
|
});
|
|
89
92
|
setOptions(options);
|
|
90
|
-
|
|
93
|
+
|
|
91
94
|
} catch (err) {
|
|
92
95
|
setError(err as any)
|
|
93
96
|
} finally {
|
|
@@ -156,5 +159,5 @@ export const TagsInput = (props: TagsInputProps) => {
|
|
|
156
159
|
</div>
|
|
157
160
|
</>
|
|
158
161
|
);
|
|
159
|
-
|
|
162
|
+
|
|
160
163
|
};
|
package/src/.eslintcache
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
[{"/Users/marc/development/react-ooui/src/stories/Button.stories.js":"1","/Users/marc/development/react-ooui/src/stories/Char.stories.js":"2","/Users/marc/development/react-ooui/src/stories/Selection.stories.js":"3","/Users/marc/development/react-ooui/src/stories/ManyToOne.stories.js":"4","/Users/marc/development/react-ooui/src/stories/Checkbox.stories.js":"5","/Users/marc/development/react-ooui/src/widgets/Checkbox.tsx":"6","/Users/marc/development/react-ooui/src/widgets/ManyToOne.tsx":"7","/Users/marc/development/react-ooui/src/widgets/Selection.tsx":"8","/Users/marc/development/react-ooui/src/widgets/Button.tsx":"9","/Users/marc/development/react-ooui/src/widgets/Char.tsx":"10","/Users/marc/development/react-ooui/src/index.ts":"11","/Users/marc/development/react-ooui/src/helpers/TreeHelper.ts":"12","/Users/marc/development/react-ooui/src/widgets/Tree.tsx":"13","/Users/marc/development/react-ooui/src/stories/Tree.stories.js":"14"},{"size":721,"mtime":1611223665948,"results":"15","hashOfConfig":"16"},{"size":432,"mtime":1611223665949,"results":"17","hashOfConfig":"16"},{"size":539,"mtime":1611223665952,"results":"18","hashOfConfig":"16"},{"size":599,"mtime":1611223665950,"results":"19","hashOfConfig":"16"},{"size":464,"mtime":1611223665949,"results":"20","hashOfConfig":"16"},{"size":671,"mtime":1611223665953,"results":"21","hashOfConfig":"16"},{"size":1308,"mtime":1611223665954,"results":"22","hashOfConfig":"16"},{"size":706,"mtime":1611223665954,"results":"23","hashOfConfig":"16"},{"size":639,"mtime":1611223665953,"results":"24","hashOfConfig":"16"},{"size":741,"mtime":1611223665953,"results":"25","hashOfConfig":"16"},{"size":385,"mtime":1611227468105,"results":"26","hashOfConfig":"16"},{"size":1966,"mtime":1611306565063,"results":"27","hashOfConfig":"16"},{"size":1681,"mtime":1611227447728,"results":"28","hashOfConfig":"16"},{"size":3152,"mtime":1611308351200,"results":"29","hashOfConfig":"16"},{"filePath":"30","messages":"31","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"32"},"i1ix4w",{"filePath":"33","messages":"34","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"32"},{"filePath":"35","messages":"36","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"32"},{"filePath":"37","messages":"38","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"32"},{"filePath":"39","messages":"40","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"32"},{"filePath":"41","messages":"42","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"32"},{"filePath":"43","messages":"44","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"32"},{"filePath":"45","messages":"46","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"32"},{"filePath":"47","messages":"48","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"49"},{"filePath":"50","messages":"51","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"32"},{"filePath":"52","messages":"53","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"32"},{"filePath":"54","messages":"55","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"32"},{"filePath":"56","messages":"57","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"32"},{"filePath":"58","messages":"59","errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":"32"},"/Users/marc/development/react-ooui/src/stories/Button.stories.js",[],[],"/Users/marc/development/react-ooui/src/stories/Char.stories.js",[],"/Users/marc/development/react-ooui/src/stories/Selection.stories.js",[],"/Users/marc/development/react-ooui/src/stories/ManyToOne.stories.js",[],"/Users/marc/development/react-ooui/src/stories/Checkbox.stories.js",[],"/Users/marc/development/react-ooui/src/widgets/Checkbox.tsx",[],"/Users/marc/development/react-ooui/src/widgets/ManyToOne.tsx",[],"/Users/marc/development/react-ooui/src/widgets/Selection.tsx",[],"/Users/marc/development/react-ooui/src/widgets/Button.tsx",[],[],"/Users/marc/development/react-ooui/src/widgets/Char.tsx",[],"/Users/marc/development/react-ooui/src/index.ts",[],"/Users/marc/development/react-ooui/src/helpers/TreeHelper.ts",[],"/Users/marc/development/react-ooui/src/widgets/Tree.tsx",[],"/Users/marc/development/react-ooui/src/stories/Tree.stories.js",[]]
|