@inseefr/lunatic 3.5.0-rc.2 → 3.5.0-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.
@@ -1,5 +1,5 @@
1
1
  import type { LunaticSource } from '../type.source';
2
- import type { LunaticData } from '../use-lunatic/type';
2
+ import type { LunaticData, PageTag } from '../use-lunatic/type';
3
3
  import { type ReactNode } from 'react';
4
4
  type ArticulationItem = {
5
5
  label: string;
@@ -13,12 +13,12 @@ type Item = {
13
13
  cells: {
14
14
  label: string;
15
15
  value: ReactNode;
16
- page?: string;
17
16
  }[];
18
17
  progress: number;
18
+ page: PageTag;
19
19
  };
20
20
  /**
21
- * Hook to get articulation state
21
+ * Retrieve the articulation state
22
22
  *
23
23
  * ## Why this hook
24
24
  *
@@ -50,7 +50,7 @@ type Item = {
50
50
  * - source is the ID of the roundabout component
51
51
  * - items define the field to extract from the roundabout data
52
52
  */
53
- export declare function useArticulation(source: LunaticSource & {
53
+ export declare function getArticulation(source: LunaticSource & {
54
54
  articulation: Articulation;
55
55
  }, data: LunaticData): {
56
56
  items: Item[];
@@ -1,12 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useArticulation = useArticulation;
3
+ exports.getArticulation = getArticulation;
4
4
  const reducerInitializer_1 = require("../use-lunatic/reducer/reducerInitializer");
5
- const react_1 = require("react");
6
- const array_1 = require("../utils/array");
7
- const number_1 = require("../utils/number");
5
+ const array_1 = require("./array");
6
+ const number_1 = require("./number");
8
7
  /**
9
- * Hook to get articulation state
8
+ * Retrieve the articulation state
10
9
  *
11
10
  * ## Why this hook
12
11
  *
@@ -38,19 +37,14 @@ const number_1 = require("../utils/number");
38
37
  * - source is the ID of the roundabout component
39
38
  * - items define the field to extract from the roundabout data
40
39
  */
41
- function useArticulation(source, data) {
42
- const roundabout = (0, react_1.useMemo)(() => findComponentById(source.components, source.articulation.source), [source]);
43
- const { variables } = (0, react_1.useMemo)(() => (0, reducerInitializer_1.reducerInitializer)({ source, data }), [source, data]);
44
- const iterations = (0, react_1.useMemo)(() => (0, number_1.forceInt)(variables.run(roundabout?.iterations.value ?? '0')),
45
- // eslint-disable-next-line react-hooks/exhaustive-deps
46
- [source, data]);
47
- const rows = (0, react_1.useMemo)(() => {
48
- return (0, array_1.times)(iterations, (k) => source.articulation.items.map((item) => ({
49
- label: item.label,
50
- value: variables.run(item.value, { iteration: [k] }),
51
- })));
52
- // eslint-disable-next-line react-hooks/exhaustive-deps
53
- }, [source, data, iterations, roundabout?.progressVariable]);
40
+ function getArticulation(source, data) {
41
+ const roundabout = findComponentById(source.components, source.articulation.source);
42
+ const { variables } = (0, reducerInitializer_1.reducerInitializer)({ source, data });
43
+ const iterations = (0, number_1.forceInt)(variables.run(roundabout?.iterations.value ?? '0'));
44
+ const rows = (0, array_1.times)(iterations, (k) => source.articulation.items.map((item) => ({
45
+ label: item.label,
46
+ value: variables.run(item.value, { iteration: [k] }),
47
+ })));
54
48
  if (!roundabout) {
55
49
  return {
56
50
  items: [],
@@ -60,7 +54,9 @@ function useArticulation(source, data) {
60
54
  items: rows.map((row, k) => ({
61
55
  cells: row,
62
56
  progress: (0, number_1.forceInt)(variables.get(roundabout.progressVariable, [k]) ?? -1),
63
- page: roundabout.page ? `${roundabout.page}.1#${k + 1}` : '1',
57
+ page: (roundabout.page
58
+ ? `${roundabout.page}.1#${k + 1}`
59
+ : '1'),
64
60
  })),
65
61
  };
66
62
  }
@@ -78,4 +74,4 @@ function findComponentById(components, id) {
78
74
  }
79
75
  return null;
80
76
  }
81
- //# sourceMappingURL=useArticulation.js.map
77
+ //# sourceMappingURL=getArticulation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getArticulation.js","sourceRoot":"","sources":["../src/utils/getArticulation.ts"],"names":[],"mappings":";;AA+DA,0CAmCC;AA5FD,kFAA+E;AAE/E,mCAAgC;AAChC,qCAAoC;AAqBpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,SAAgB,eAAe,CAC9B,MAAsD,EACtD,IAAiB;IAEjB,MAAM,UAAU,GAAG,iBAAiB,CACnC,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,YAAY,CAAC,MAAM,CAC1B,CAAC;IACF,MAAM,EAAE,SAAS,EAAE,GAAG,IAAA,uCAAkB,EAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3D,MAAM,UAAU,GAAG,IAAA,iBAAQ,EAC1B,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,KAAK,IAAI,GAAG,CAAC,CAClD,CAAC;IAEF,MAAM,IAAI,GAAG,IAAA,aAAK,EAAC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CACpC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACxC,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAc;KACjE,CAAC,CAAC,CACH,CAAC;IAEF,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,OAAO;YACN,KAAK,EAAE,EAAE;SACT,CAAC;IACH,CAAC;IAED,OAAO;QACN,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YAC5B,KAAK,EAAE,GAAG;YACV,QAAQ,EAAE,IAAA,iBAAQ,EAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACzE,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI;gBACrB,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE;gBACjC,CAAC,CAAC,GAAG,CAAY;SAClB,CAAC,CAAC;KACH,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACzB,UAAiC,EACjC,EAAU;IAEV,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;QAC5B,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,aAAa,KAAK,YAAY,EAAE,CAAC;YAClE,OAAO,CAAC,CAAC;QACV,CAAC;QACD,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,iBAAiB,CAAC,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YAClD,IAAI,KAAK,EAAE,CAAC;gBACX,OAAO,KAAK,CAAC;YACd,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useArticulation.js","sourceRoot":"","sources":["../../src/hooks/useArticulation.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useArticulation.js","sourceRoot":"","sources":["../src/hooks/useArticulation.ts"],"names":[],"mappings":";;AA+DA,0CA0CC;AAnGD,kFAA+E;AAC/E,iCAAgD;AAChD,0CAAuC;AACvC,4CAA2C;AAqB3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,SAAgB,eAAe,CAC9B,MAAsD,EACtD,IAAiB;IAEjB,MAAM,UAAU,GAAG,IAAA,eAAO,EACzB,GAAG,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,EACtE,CAAC,MAAM,CAAC,CACR,CAAC;IACF,MAAM,EAAE,SAAS,EAAE,GAAG,IAAA,eAAO,EAC5B,GAAG,EAAE,CAAC,IAAA,uCAAkB,EAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAC1C,CAAC,MAAM,EAAE,IAAI,CAAC,CACd,CAAC;IAEF,MAAM,UAAU,GAAG,IAAA,eAAO,EACzB,GAAG,EAAE,CAAC,IAAA,iBAAQ,EAAC,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC;IAClE,uDAAuD;IACvD,CAAC,MAAM,EAAE,IAAI,CAAC,CACd,CAAC;IAEF,MAAM,IAAI,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE;QACzB,OAAO,IAAA,aAAK,EAAC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAC9B,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACxC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAc;SACjE,CAAC,CAAC,CACH,CAAC;QACF,uDAAuD;IACxD,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAE7D,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,OAAO;YACN,KAAK,EAAE,EAAE;SACT,CAAC;IACH,CAAC;IAED,OAAO;QACN,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YAC5B,KAAK,EAAE,GAAG;YACV,QAAQ,EAAE,IAAA,iBAAQ,EAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACzE,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG;SAC7D,CAAC,CAAC;KACH,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACzB,UAAiC,EACjC,EAAU;IAEV,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;QAC5B,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,aAAa,KAAK,YAAY,EAAE,CAAC;YAClE,OAAO,CAAC,CAAC;QACV,CAAC;QACD,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,iBAAiB,CAAC,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YAClD,IAAI,KAAK,EAAE,CAAC;gBACX,OAAO,KAAK,CAAC;YACd,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,IAAI,CAAC;AACb,CAAC"}