@tricoteuses/tisseuse 0.1.4 → 0.1.5

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/index.js CHANGED
@@ -1,10 +1,10 @@
1
- const vt = new Intl.DateTimeFormat("fr-FR", {
1
+ const Ot = new Intl.DateTimeFormat("fr-FR", {
2
2
  dateStyle: "long"
3
3
  });
4
- function Vi(e) {
5
- return vt.format(new Date(e)).replace(/^1 /, "1er ");
4
+ function en(e) {
5
+ return Ot.format(new Date(e)).replace(/^1 /, "1er ");
6
6
  }
7
- const mt = [
7
+ const tn = (e, t) => t instanceof Object && !Array.isArray(t) ? Object.keys(t).sort().reduce((n, s) => (n[s] = t[s], n), {}) : t, Et = [
8
8
  [],
9
9
  ["un"],
10
10
  ["du"],
@@ -18,7 +18,7 @@ const mt = [
18
18
  // octo
19
19
  ["nov"]
20
20
  // novo
21
- ], Ge = [
21
+ ], Ee = [
22
22
  [],
23
23
  ["decies"],
24
24
  ["vicies", "vecies"],
@@ -29,7 +29,7 @@ const mt = [
29
29
  ["septuagies"],
30
30
  ["octogies"],
31
31
  ["nonagies"]
32
- ], It = [
32
+ ], Nt = [
33
33
  [],
34
34
  ["semel"],
35
35
  ["bis"],
@@ -40,7 +40,7 @@ const mt = [
40
40
  ["septies"],
41
41
  ["octies"],
42
42
  ["nonies", "novies"]
43
- ], R = [
43
+ ], D = [
44
44
  1e3,
45
45
  "M",
46
46
  900,
@@ -67,7 +67,7 @@ const mt = [
67
67
  "IV",
68
68
  1,
69
69
  "I"
70
- ], de = [
70
+ ], ce = [
71
71
  "dix",
72
72
  "onze",
73
73
  "douze",
@@ -78,7 +78,7 @@ const mt = [
78
78
  "dix-sept",
79
79
  "dix-huit",
80
80
  "dix-neuf"
81
- ], ht = [
81
+ ], Pt = [
82
82
  "",
83
83
  "dix",
84
84
  "vingt",
@@ -89,7 +89,7 @@ const mt = [
89
89
  "soixante-dix",
90
90
  "quatre-vingt",
91
91
  "quatre-vingt-dix"
92
- ], ee = [
92
+ ], ie = [
93
93
  "",
94
94
  "un",
95
95
  "deux",
@@ -101,103 +101,103 @@ const mt = [
101
101
  "huit",
102
102
  "neuf"
103
103
  ];
104
- function H(e) {
104
+ function X(e) {
105
105
  if (!(e < 0)) {
106
106
  if (e === 0)
107
107
  return "zéro";
108
108
  if (e < 10)
109
- return ee[e];
109
+ return ie[e];
110
110
  if (e < 20)
111
- return de[e - 10];
111
+ return ce[e - 10];
112
112
  if (e < 100) {
113
113
  const t = Math.floor(e / 10), n = e % 10;
114
114
  if (t === 7)
115
- return `soixante-${de[n]}`;
115
+ return `soixante-${ce[n]}`;
116
116
  if (t === 9)
117
- return `quatre-vingt-${de[n]}`;
118
- const a = ht[t];
119
- return n === 0 ? a : n === 1 && t !== 8 ? `${a} et ${ee[n]}` : a + `-${ee[n]}`;
117
+ return `quatre-vingt-${ce[n]}`;
118
+ const s = Pt[t];
119
+ return n === 0 ? s : n === 1 && t !== 8 ? `${s} et ${ie[n]}` : s + `-${ie[n]}`;
120
120
  }
121
121
  if (e < 1e3) {
122
122
  const t = Math.floor(e / 100), n = e % 100;
123
- let a = t === 1 ? "cent" : `${ee[t]} cents`;
124
- return n === 0 ? a : (t > 1 && n > 0 && (a = a.slice(0, -1)), `${a} ${H(n)}`);
123
+ let s = t === 1 ? "cent" : `${ie[t]} cents`;
124
+ return n === 0 ? s : (t > 1 && n > 0 && (s = s.slice(0, -1)), `${s} ${X(n)}`);
125
125
  }
126
126
  if (e < 1e6) {
127
- const t = Math.floor(e / 1e3), n = e % 1e3, a = t === 1 ? "mille" : `${H(t)} mille`;
128
- return n === 0 ? a : a + ` ${H(n)}`;
127
+ const t = Math.floor(e / 1e3), n = e % 1e3, s = t === 1 ? "mille" : `${X(t)} mille`;
128
+ return n === 0 ? s : s + ` ${X(n)}`;
129
129
  }
130
130
  throw new Error("Number must be a less than one million.");
131
131
  }
132
132
  }
133
- function* Wi(e) {
133
+ function* nn(e) {
134
134
  e === 1 && (yield "premier", yield "première", yield "unique", yield "Ier", yield "Ière", yield "1er", yield "1ère");
135
- const t = H(e);
135
+ const t = X(e);
136
136
  t !== void 0 && (yield t);
137
- const n = Fe(e);
137
+ const n = Se(e);
138
138
  n !== void 0 && (yield n), yield e.toString();
139
139
  }
140
- function* Ji(e) {
140
+ function* sn(e) {
141
141
  if (!(e <= 0))
142
142
  if (e < 10)
143
- yield* It[e];
143
+ yield* Nt[e];
144
144
  else if (e < 100) {
145
145
  const t = Math.floor(e / 10), n = e % 10;
146
- for (const a of Ge[t])
147
- for (const o of mt[n])
148
- yield `${o}${[2, 8, 9].includes(n) && a[0] !== "o" ? "o" : ""}${a}`;
146
+ for (const s of Ee[t])
147
+ for (const o of Et[n])
148
+ yield `${o}${[2, 8, 9].includes(n) && s[0] !== "o" ? "o" : ""}${s}`;
149
149
  if (t < 9 && [8, 9].includes(n)) {
150
- const a = Ge[t + 1];
151
- for (const o of a)
150
+ const s = Ee[t + 1];
151
+ for (const o of s)
152
152
  yield `${n === 8 ? "duo" : "un"}${o[0] === "o" ? "d" : "de"}${o}`;
153
153
  }
154
154
  } else
155
155
  throw new Error("Number must be a less than 100.");
156
156
  }
157
- function* Yi(e) {
157
+ function* on(e) {
158
158
  if (e === 1)
159
159
  yield "premier", yield "première", yield "Ier", yield "Ière", yield "1er", yield "1ère";
160
160
  else {
161
- const t = Lt(e);
161
+ const t = wt(e);
162
162
  t !== void 0 && (yield t);
163
- const n = Fe(e);
163
+ const n = Se(e);
164
164
  n !== void 0 && (yield `${n}e`, yield `${n}ème`), e > 0 && (yield `${e}e`, yield `${e}ème`), e === 2 && (yield "second", yield "seconde", yield "2nd", yield "2nde");
165
165
  }
166
166
  }
167
- function ne(e) {
167
+ function le(e) {
168
168
  e = e.toUpperCase();
169
169
  let t = 0, n = 0;
170
- for (let a = 0; a < R.length; a += 2)
170
+ for (let s = 0; s < D.length; s += 2)
171
171
  for (; e.substring(
172
172
  t,
173
- t + R[a + 1].length
174
- ) === R[a + 1]; )
175
- n += R[a], t += R[a + 1].length;
173
+ t + D[s + 1].length
174
+ ) === D[s + 1]; )
175
+ n += D[s], t += D[s + 1].length;
176
176
  return n;
177
177
  }
178
- function Lt(e) {
178
+ function wt(e) {
179
179
  if (e <= 0)
180
180
  return;
181
181
  if (e === 1)
182
182
  return "premier";
183
- const t = H(e);
183
+ const t = X(e);
184
184
  if (t === void 0)
185
185
  return;
186
186
  const n = t.match(/(^| )([^ ]+)$/)[2];
187
187
  return n === "un" ? t.slice(0, -2) + "unième" : n === "cinq" ? t.slice(0, -4) + "cinquième" : n === "neuf" ? t.slice(0, -3) + "euvième" : n.endsWith("e") ? t.slice(0, -1) + "ième" : t + "ième";
188
188
  }
189
- function Fe(e) {
189
+ function Se(e) {
190
190
  if (e < 0)
191
191
  return;
192
192
  if (e === 0)
193
193
  return "0I";
194
194
  let t = "";
195
- for (let n = 0; n < R.length; n += 2)
196
- for (; e >= R[n]; )
197
- t += R[n + 1], e -= R[n];
195
+ for (let n = 0; n < D.length; n += 2)
196
+ for (; e >= D[n]; )
197
+ t += D[n + 1], e -= D[n];
198
198
  return t;
199
199
  }
200
- class Ct {
200
+ class Ge {
201
201
  constructor(t, n = 0) {
202
202
  this.input = t, this.offset = n;
203
203
  }
@@ -219,197 +219,197 @@ class Ct {
219
219
  return t === void 0 ? this.input.slice(this.offset, this.offset + this.length) : this.input.slice(t.start, t.stop);
220
220
  }
221
221
  textFromResults(t) {
222
- return t === void 0 ? "" : Ue(t);
222
+ return t === void 0 ? "" : Xe(t);
223
223
  }
224
224
  }
225
225
  const r = (...e) => (t) => {
226
226
  for (const n of e) {
227
- const a = (Array.isArray(n) ? l(n, { exportVariables: !0 }) : n)(t);
228
- if (a !== void 0)
229
- return a;
227
+ const s = (Array.isArray(n) ? l(n, { exportVariables: !0 }) : n)(t);
228
+ if (s !== void 0)
229
+ return s;
230
230
  }
231
231
  }, l = (e, {
232
232
  exportVariables: t,
233
233
  value: n
234
- } = {}) => (a) => {
235
- const o = a.offset, s = a.variables;
236
- a.variables = { ...s };
237
- const u = [], f = [];
238
- for (const c of e) {
239
- const g = (Array.isArray(c) ? l(c, { exportVariables: t }) : c)(a);
240
- if (g === void 0) {
241
- a.length = 0, a.offset = o, a.usedInputs = void 0, a.variables = s;
234
+ } = {}) => (s) => {
235
+ const o = s.offset, a = s.variables;
236
+ s.variables = { ...a };
237
+ const u = [], p = [];
238
+ for (const d of e) {
239
+ const c = (Array.isArray(d) ? l(d, { exportVariables: t }) : d)(s);
240
+ if (c === void 0) {
241
+ s.length = 0, s.offset = o, s.usedInputs = void 0, s.variables = a;
242
242
  return;
243
243
  }
244
- a.usedInputs !== void 0 && u.push(a.usedInputs), f.push(g);
244
+ s.usedInputs !== void 0 && u.push(s.usedInputs), p.push(c);
245
245
  }
246
- a.length = a.offset - o, a.offset -= a.length, a.usedInputs = u.length === 0 ? void 0 : u;
247
- let d;
246
+ s.length = s.offset - o, s.offset -= s.length, s.usedInputs = u.length === 0 ? void 0 : u;
247
+ let f;
248
248
  if (n === void 0)
249
- d = f;
249
+ f = p;
250
250
  else if (typeof n == "function") {
251
- const c = n(f, a);
252
- if (c === void 0) {
253
- a.length = 0, a.offset = o, a.usedInputs = void 0, a.variables = s;
251
+ const d = n(p, s);
252
+ if (d === void 0) {
253
+ s.length = 0, s.offset = o, s.usedInputs = void 0, s.variables = a;
254
254
  return;
255
255
  }
256
- d = c;
256
+ f = d;
257
257
  } else
258
- d = n;
259
- return a.offset += a.length, a.length = 0, t || (a.variables = s), d;
260
- }, O = (e, { value: t }) => (n) => {
261
- const a = n.offset, o = n.variables;
258
+ f = n;
259
+ return s.offset += s.length, s.length = 0, t || (s.variables = a), f;
260
+ }, S = (e, { value: t }) => (n) => {
261
+ const s = n.offset, o = n.variables;
262
262
  n.variables = { ...o };
263
- const s = (Array.isArray(e) ? l(e, { exportVariables: !0 }) : e)(n);
264
- if (s !== void 0) {
265
- if (n.length = n.offset - a, n.offset -= n.length, typeof t == "function") {
266
- const u = t(s, n);
263
+ const a = (Array.isArray(e) ? l(e, { exportVariables: !0 }) : e)(n);
264
+ if (a !== void 0) {
265
+ if (n.length = n.offset - s, n.offset -= n.length, typeof t == "function") {
266
+ const u = t(a, n);
267
267
  if (u === void 0) {
268
- n.length = 0, n.offset = a, n.usedInputs = void 0, n.variables = o;
268
+ n.length = 0, n.offset = s, n.usedInputs = void 0, n.variables = o;
269
269
  return;
270
270
  }
271
271
  return n.offset += n.length, n.length = 0, u;
272
272
  }
273
273
  return n.offset += n.length, n.length = 0, t;
274
274
  }
275
- }, p = (e, {
275
+ }, g = (e, {
276
276
  default: t,
277
277
  value: n
278
- }) => (a) => {
279
- let o = (Array.isArray(e) ? l(e, { exportVariables: !0 }) : e)(a);
278
+ }) => (s) => {
279
+ let o = (Array.isArray(e) ? l(e, { exportVariables: !0 }) : e)(s);
280
280
  if (o === void 0)
281
- o = typeof t == "function" ? t(a) : t;
281
+ o = typeof t == "function" ? t(s) : t;
282
282
  else if (n !== void 0)
283
283
  if (typeof n == "function") {
284
- const s = n(o, a);
285
- if (s === void 0) {
286
- a.length = 0, a.usedInputs = void 0;
284
+ const a = n(o, s);
285
+ if (a === void 0) {
286
+ s.length = 0, s.usedInputs = void 0;
287
287
  return;
288
288
  }
289
- o = s;
289
+ o = a;
290
290
  } else
291
291
  o = n;
292
292
  return o;
293
- }, Zi = (e, t) => (Array.isArray(t) ? l(t) : t)(new Ct(e)), i = (e, {
293
+ }, an = (e, t) => (Array.isArray(t) ? l(t) : t)(new Ge(e)), i = (e, {
294
294
  flags: t,
295
295
  value: n
296
- } = {}) => (a) => {
296
+ } = {}) => (s) => {
297
297
  const o = new RegExp(e, "gy" + (t ?? ""));
298
- o.lastIndex = a.offset;
299
- const s = o.exec(a.input);
300
- if (s === null)
298
+ o.lastIndex = s.offset;
299
+ const a = o.exec(s.input);
300
+ if (a === null)
301
301
  return;
302
- a.length = s[0].length, a.usedInputs = s[0];
302
+ s.length = a[0].length, s.usedInputs = a[0];
303
303
  let u;
304
304
  if (n === void 0)
305
- u = s[0];
305
+ u = a[0];
306
306
  else if (typeof n == "function") {
307
- const f = n(s, a);
308
- if (f === void 0) {
309
- a.length = 0, a.usedInputs = void 0;
307
+ const p = n(a, s);
308
+ if (p === void 0) {
309
+ s.length = 0, s.usedInputs = void 0;
310
310
  return;
311
311
  }
312
- u = f;
312
+ u = p;
313
313
  } else
314
314
  u = n;
315
- return a.offset += a.length, a.length = 0, u;
316
- }, G = (e, {
315
+ return s.offset += s.length, s.length = 0, u;
316
+ }, R = (e, {
317
317
  max: t,
318
318
  min: n,
319
- separator: a,
319
+ separator: s,
320
320
  value: o
321
- } = {}) => (s) => {
322
- const u = s.offset, f = s.variables;
323
- s.variables = { ...f };
324
- const d = [], c = [];
325
- let g = 0;
326
- for (; t === void 0 || g < t; g++) {
327
- const E = (g === 0 || a === void 0 ? Array.isArray(e) ? l(e) : e : l([a, e]))(s);
328
- if (E === void 0)
321
+ } = {}) => (a) => {
322
+ const u = a.offset, p = a.variables;
323
+ a.variables = { ...p };
324
+ const f = [], d = [];
325
+ let c = 0;
326
+ for (; t === void 0 || c < t; c++) {
327
+ const v = (c === 0 || s === void 0 ? Array.isArray(e) ? l(e) : e : l([s, e]))(a);
328
+ if (v === void 0)
329
329
  break;
330
- s.usedInputs !== void 0 && d.push(s.usedInputs), c.push(E);
330
+ a.usedInputs !== void 0 && f.push(a.usedInputs), d.push(v);
331
331
  }
332
- if (n !== void 0 && g < n) {
333
- s.length = 0, s.offset = u, s.usedInputs = void 0, s.variables = f;
332
+ if (n !== void 0 && c < n) {
333
+ a.length = 0, a.offset = u, a.usedInputs = void 0, a.variables = p;
334
334
  return;
335
335
  }
336
- s.length = s.offset - u, s.offset -= s.length, s.usedInputs = d.length === 0 ? void 0 : d;
337
- let m;
336
+ a.length = a.offset - u, a.offset -= a.length, a.usedInputs = f.length === 0 ? void 0 : f;
337
+ let h;
338
338
  if (o === void 0)
339
- m = c;
339
+ h = d;
340
340
  else if (typeof o == "function") {
341
- const E = o(c, s);
342
- if (E === void 0) {
343
- s.length = 0, s.offset = u, s.usedInputs = void 0, s.variables = f;
341
+ const v = o(d, a);
342
+ if (v === void 0) {
343
+ a.length = 0, a.offset = u, a.usedInputs = void 0, a.variables = p;
344
344
  return;
345
345
  }
346
- m = E;
346
+ h = v;
347
347
  } else
348
- m = o;
349
- return s.offset += s.length, s.length = 0, m;
350
- }, Ue = (e) => e.filter((t) => t !== null).map((t) => typeof t == "string" ? t : Ue(t)).join(""), b = (e, t, { value: n } = {}) => (a) => {
351
- const o = a.offset, s = a.variables;
352
- a.variables = { ...s };
353
- const u = (Array.isArray(t) ? l(t, { exportVariables: !0 }) : t)(a);
348
+ h = o;
349
+ return a.offset += a.length, a.length = 0, h;
350
+ }, Xe = (e) => e.filter((t) => t !== null).map((t) => typeof t == "string" ? t : Xe(t)).join(""), L = (e, t, { value: n } = {}) => (s) => {
351
+ const o = s.offset, a = s.variables;
352
+ s.variables = { ...a };
353
+ const u = (Array.isArray(t) ? l(t, { exportVariables: !0 }) : t)(s);
354
354
  if (u === void 0) {
355
- delete a.variables[e];
355
+ delete s.variables[e];
356
356
  return;
357
357
  }
358
358
  if (n === void 0)
359
- return a.variables[e] = u, u;
360
- if (a.length = a.offset - o, a.offset -= a.length, typeof n == "function") {
361
- const f = n(u, a);
362
- if (f === void 0) {
363
- a.length = 0, a.offset = o, a.usedInputs = void 0, a.variables = s, delete a.variables[e];
359
+ return s.variables[e] = u, u;
360
+ if (s.length = s.offset - o, s.offset -= s.length, typeof n == "function") {
361
+ const p = n(u, s);
362
+ if (p === void 0) {
363
+ s.length = 0, s.offset = o, s.usedInputs = void 0, s.variables = a, delete s.variables[e];
364
364
  return;
365
365
  }
366
- return a.offset += a.length, a.length = 0, a.variables[e] = f, f;
366
+ return s.offset += s.length, s.length = 0, s.variables[e] = p, p;
367
367
  }
368
- return a.offset += a.length, a.length = 0, a.variables[e] = n, n;
369
- }, ye = (e, {
368
+ return s.offset += s.length, s.length = 0, s.variables[e] = n, n;
369
+ }, Ne = (e, {
370
370
  value: t
371
371
  } = {}) => (n) => {
372
- let a = e, o = n.offset;
373
- const s = /([\-\/\d\p{Alphabetic}'°]+)($|[^\-\/\d\p{Alphabetic}°]+)/gvy;
374
- s.lastIndex = n.offset;
372
+ let s = e, o = n.offset;
373
+ const a = /([\-\/\d\p{Alphabetic}'°]+)($|[^\-\/\d\p{Alphabetic}°]+)/gvy;
374
+ a.lastIndex = n.offset;
375
375
  const u = [];
376
- let f;
376
+ let p;
377
377
  for (; ; ) {
378
- const g = s.exec(n.input);
379
- if (g === null)
378
+ const c = a.exec(n.input);
379
+ if (c === null)
380
380
  break;
381
- let m = g[1];
382
- if (m = /^[IVX]+$/g.test(m) ? ne(m).toString() : m.toLowerCase().replace(/^no$/, "n°"), m === "constitution" && g[1][0] !== "C")
381
+ let h = c[1];
382
+ if (h = /^[IVX]+$/g.test(h) ? le(h).toString() : h.toLowerCase().replace(/^no$/, "n°"), h === "constitution" && c[1][0] !== "C")
383
383
  break;
384
- const E = a[m];
385
- if (E === void 0)
384
+ const v = s[h];
385
+ if (v === void 0)
386
386
  break;
387
- f = g[2], a = E, o = s.lastIndex, u.push(g[0]);
387
+ p = c[2], s = v, o = a.lastIndex, u.push(c[0]);
388
388
  }
389
- if (a.cid === void 0) {
389
+ if (s.cid === void 0) {
390
390
  n.length = 0, n.usedInputs = void 0;
391
391
  return;
392
392
  }
393
- f && (o -= f.length, u[u.length - 1] = u[u.length - 1].slice(0, -f.length)), n.length = o - n.offset, n.usedInputs = u.length === 0 ? void 0 : u;
394
- const d = { cid: a.cid };
395
- let c;
393
+ p && (o -= p.length, u[u.length - 1] = u[u.length - 1].slice(0, -p.length)), n.length = o - n.offset, n.usedInputs = u.length === 0 ? void 0 : u;
394
+ const f = { cid: s.cid };
395
+ let d;
396
396
  if (t === void 0)
397
- c = d;
397
+ d = f;
398
398
  else if (typeof t == "function") {
399
- const g = t(d, n);
400
- if (g === void 0) {
399
+ const c = t(f, n);
400
+ if (c === void 0) {
401
401
  n.length = 0, n.usedInputs = void 0;
402
402
  return;
403
403
  }
404
- c = g;
404
+ d = c;
405
405
  } else
406
- c = t;
407
- return n.offset = o, n.length = 0, c;
406
+ d = t;
407
+ return n.offset = o, n.length = 0, d;
408
408
  };
409
409
  i(" ?' ?", { value: "'" });
410
- const T = i(" "), pe = i(" ?", { value: "" }), Ot = i("[a-z]"), Xt = i(String.raw`(?=$|\P{Alphabetic})`, {
410
+ const m = i(" "), ve = i(" ?", { value: "" }), $t = i("[a-z]"), _t = i(String.raw`(?=$|\P{Alphabetic})`, {
411
411
  flags: "iv"
412
- }), Be = i("n ?[°o] ?", { flags: "i", value: "n° " }), xe = i("-"), Gt = i(", ?", { value: ", " }), S = i("(, ?| )", { value: ", " }), yt = i(String.raw`^« ?([^»\n]+)`, {
412
+ }), We = i("n ?[°o] ?", { flags: "i", value: "n° " }), Pe = i("-"), Dt = i(", ?", { value: ", " }), N = i("(, ?| )", { value: ", " }), qt = i(String.raw`^« ?([^»\n]+)`, {
413
413
  flags: "dm",
414
414
  value: (e) => {
415
415
  let t = e.indices[1][1];
@@ -420,7 +420,7 @@ const T = i(" "), pe = i(" ?", { value: "" }), Ot = i("[a-z]"), Xt = i(String.ra
420
420
  }
421
421
  };
422
422
  }
423
- }), xt = i(String.raw`« ?(.*?) ?»`, {
423
+ }), Mt = i(String.raw`« ?(.*?) ?»`, {
424
424
  flags: "d",
425
425
  value: (e, t) => ({
426
426
  content: [
@@ -437,7 +437,7 @@ const T = i(" "), pe = i(" ?", { value: "" }), Ot = i("[a-z]"), Xt = i(String.ra
437
437
  }), F = r(
438
438
  l(
439
439
  [
440
- G(yt, {
440
+ R(qt, {
441
441
  separator: i(String.raw`»?\n`),
442
442
  // Remove separators from results.
443
443
  value: (e) => e.map(
@@ -454,48 +454,106 @@ const T = i(" "), pe = i(" ?", { value: "" }), Ot = i("[a-z]"), Xt = i(String.ra
454
454
  })
455
455
  }
456
456
  ),
457
- l([pe, xt], { value: (e) => e[1] })
458
- ), je = r(
457
+ l([ve, Mt], { value: (e) => e[1] })
458
+ );
459
+ function Ft(e, t) {
460
+ let n = 0;
461
+ const s = t.content[0].position, o = t.content.at(-1).position, a = t.content.map(({ position: u }) => e.input.slice(u.start, u.stop)).join(`
462
+ `);
463
+ return {
464
+ input: e.text(t.position),
465
+ output: a,
466
+ sourceMap: [
467
+ {
468
+ inputIndex: t.position.start,
469
+ inputLength: s.start - t.position.start,
470
+ outputIndex: 0,
471
+ outputLength: 0
472
+ },
473
+ ...t.content.slice(0, -1).map(({ position: u }, p) => {
474
+ const f = t.content[p + 1].position, d = n + u.stop - u.start;
475
+ return n = d + 1, {
476
+ inputIndex: u.stop,
477
+ inputLength: f.start - u.stop,
478
+ outputIndex: d,
479
+ outputLength: 1
480
+ // "\n"
481
+ };
482
+ }),
483
+ {
484
+ inputIndex: o.stop,
485
+ inputLength: t.position.stop - o.stop,
486
+ outputIndex: a.length,
487
+ outputLength: 0
488
+ }
489
+ ],
490
+ title: "Conversion de citation"
491
+ };
492
+ }
493
+ const Ye = r(
459
494
  l(
460
495
  [
461
- S,
496
+ N,
462
497
  i("(après|avant) (le mot|les mots) :", { flags: "i" }),
463
498
  F,
464
- S,
499
+ N,
465
500
  r(
466
501
  i("(il )?est (ajouté|inséré)e?", { flags: "i" }),
467
502
  i("sont (ajouté|inséré)e?s", { flags: "i" })
468
503
  )
469
504
  ],
470
- { value: { action: "CREATION", actionInContent: !0 } }
505
+ {
506
+ value: (e) => ({
507
+ action: "CREATION",
508
+ actionInContent: !0,
509
+ originalCitations: [e[2]]
510
+ })
511
+ }
471
512
  ),
472
513
  l(
473
514
  [
474
- S,
515
+ N,
475
516
  r(
476
- l([
477
- p(
478
- l([
479
- i("(après|avant) la référence :", { flags: "i" }),
480
- F,
481
- S
482
- ]),
483
- { default: [] }
484
- ),
485
- r(
486
- i("(il )?est (ajouté|inséré)e?", { flags: "i" }),
487
- i("sont (ajouté|inséré)e?s", { flags: "i" })
488
- )
489
- ]),
490
- i("est complétée?", { flags: "i" }),
491
- i("sont complétée?s", { flags: "i" })
517
+ l(
518
+ [
519
+ g(
520
+ l(
521
+ [
522
+ i("(après|avant) la référence :", { flags: "i" }),
523
+ F,
524
+ N
525
+ ],
526
+ {
527
+ value: (e) => e[1]
528
+ }
529
+ ),
530
+ { default: null }
531
+ ),
532
+ r(
533
+ i("(il )?est (ajouté|inséré)e?", { flags: "i" }),
534
+ i("sont (ajouté|inséré)e?s", { flags: "i" })
535
+ )
536
+ ],
537
+ {
538
+ value: (e) => e[0]
539
+ }
540
+ ),
541
+ i("est complétée?", { flags: "i", value: null }),
542
+ i("sont complétée?s", { flags: "i", value: null })
492
543
  )
493
544
  ],
494
- { value: { action: "CREATION" } }
545
+ {
546
+ value: (e) => {
547
+ const t = {
548
+ action: "CREATION"
549
+ }, n = e[1];
550
+ return n != null && (t.originalCitations = [n]), t;
551
+ }
552
+ }
495
553
  ),
496
554
  l(
497
555
  [
498
- S,
556
+ N,
499
557
  r(
500
558
  i("est ainsi rédigée?", { flags: "i" }),
501
559
  i("est rédigée? (ainsi qu'il|comme) suit", { flags: "i" }),
@@ -507,7 +565,7 @@ const T = i(" "), pe = i(" ?", { value: "" }), Ot = i("[a-z]"), Xt = i(String.ra
507
565
  ),
508
566
  l(
509
567
  [
510
- S,
568
+ N,
511
569
  r(
512
570
  i("est ainsi (modifié|rétabli)e?", { flags: "i" }),
513
571
  i("est (modifié|rétabli)e? (ainsi qu'il|comme) suit", {
@@ -525,86 +583,133 @@ const T = i(" "), pe = i(" ?", { value: "" }), Ot = i("[a-z]"), Xt = i(String.ra
525
583
  ),
526
584
  l(
527
585
  [
528
- S,
586
+ N,
529
587
  r(
530
- l([
531
- r(
532
- i("l'année", { flags: "i" }),
533
- i("la (date|mention|référence)", { flags: "i" }),
534
- i("le (montant|mot|taux)", { flags: "i" }),
535
- i("le tableau intitulé", { flags: "i" }),
536
- i("les mots", { flags: "i" })
537
- ),
538
- i(" ?:"),
539
- F,
540
- T,
541
- r(
542
- i("est ainsi modifiée?", { flags: "i" }),
543
- i("est remplacée?", { flags: "i" }),
544
- i("sont remplacée?s", { flags: "i" })
545
- )
546
- ]),
547
- l([
548
- i("les nombres", { flags: "i" }),
549
- i(" ?:"),
550
- G(F, {
551
- min: 1,
552
- separator: i("(,| et)", { flags: "i" })
553
- }),
554
- T,
555
- i("sont respectivement remplacés", { flags: "i" })
556
- ])
588
+ l(
589
+ [
590
+ r(
591
+ i("l'année", { flags: "i" }),
592
+ i("la (date|mention|référence)", { flags: "i" }),
593
+ i("le (montant|mot|taux)", { flags: "i" }),
594
+ i("le tableau intitulé", { flags: "i" }),
595
+ i("les mots", { flags: "i" })
596
+ ),
597
+ i(" ?:"),
598
+ F,
599
+ m,
600
+ r(
601
+ i("est ainsi modifiée?", { flags: "i" }),
602
+ i("est remplacée?", { flags: "i" }),
603
+ i("sont remplacée?s", { flags: "i" })
604
+ )
605
+ ],
606
+ {
607
+ value: (e) => [
608
+ e[2]
609
+ ]
610
+ }
611
+ ),
612
+ l(
613
+ [
614
+ i("les nombres", { flags: "i" }),
615
+ i(" ?:"),
616
+ R(F, {
617
+ min: 1,
618
+ separator: i("(,| et)", { flags: "i" }),
619
+ value: (e) => e.map(
620
+ (t) => Array.isArray(t) ? t[1] : t
621
+ )
622
+ }),
623
+ m,
624
+ i("sont respectivement remplacés", { flags: "i" })
625
+ ],
626
+ {
627
+ value: (e) => e[2]
628
+ }
629
+ )
557
630
  )
558
631
  ],
559
- { value: { action: "MODIFICATION", actionInContent: !0 } }
632
+ {
633
+ value: (e) => ({
634
+ action: "MODIFICATION",
635
+ actionInContent: !0,
636
+ originalCitations: e[1]
637
+ })
638
+ }
560
639
  ),
561
640
  l(
562
641
  [
563
- S,
642
+ N,
564
643
  r(
565
- i("est supprimée la (mention|référence)", { flags: "i" }),
566
- l([
567
- i("la (mention|référence)", { flags: "i" }),
568
- i(" ?:"),
569
- F,
570
- T,
571
- i("est supprimée", { flags: "i" })
572
- ]),
573
- l([
574
- i("les mots", { flags: "i" }),
575
- i(" ?:"),
576
- F,
577
- T,
578
- i("sont supprimés", { flags: "i" })
579
- ]),
580
- l([
581
- i("les références", { flags: "i" }),
582
- i(" ?:"),
583
- F,
584
- T,
585
- i("sont supprimées", { flags: "i" })
586
- ])
644
+ i("est supprimée la (mention|référence)", {
645
+ flags: "i",
646
+ value: null
647
+ }),
648
+ l(
649
+ [
650
+ i("la (mention|référence)", { flags: "i" }),
651
+ i(" ?:"),
652
+ F,
653
+ m,
654
+ i("est supprimée", { flags: "i" })
655
+ ],
656
+ {
657
+ value: (e) => e[2]
658
+ }
659
+ ),
660
+ l(
661
+ [
662
+ i("les mots", { flags: "i" }),
663
+ i(" ?:"),
664
+ F,
665
+ m,
666
+ i("sont supprimés", { flags: "i" })
667
+ ],
668
+ {
669
+ value: (e) => e[2]
670
+ }
671
+ ),
672
+ l(
673
+ [
674
+ i("les références", { flags: "i" }),
675
+ i(" ?:"),
676
+ F,
677
+ m,
678
+ i("sont supprimées", { flags: "i" })
679
+ ],
680
+ {
681
+ value: (e) => e[2]
682
+ }
683
+ )
587
684
  )
588
685
  ],
589
- { value: { action: "SUPPRESSION", actionInContent: !0 } }
686
+ {
687
+ value: (e) => {
688
+ const t = {
689
+ action: "SUPPRESSION",
690
+ actionInContent: !0
691
+ };
692
+ return e[1] != null && (t.originalCitations = [e[1]]), t;
693
+ }
694
+ }
590
695
  ),
591
- l([S, i("est (abrogé|supprimé)e?", { flags: "i" })], {
696
+ l([N, i("est (abrogé|supprimé)e?", { flags: "i" })], {
592
697
  value: { action: "SUPPRESSION" }
593
698
  })
594
699
  );
595
- function ae(e, t) {
700
+ function Y(e, t) {
596
701
  throw `Unexpected type ${e}: ${t}`;
597
702
  }
598
- const Qi = [
703
+ const ln = [
599
704
  ",",
600
705
  "à",
601
706
  "et",
602
707
  "ou",
603
708
  "sauf"
604
- ], bt = [
709
+ ], Ut = [
605
710
  "DIRECTIVE_EURO",
606
711
  "REGLEMENTEUROPEEN"
607
- ], St = [
712
+ ], jt = [
608
713
  "ARRETE",
609
714
  "CIRCULAIRE",
610
715
  "CODE",
@@ -615,7 +720,7 @@ const Qi = [
615
720
  "LOI_CONSTIT",
616
721
  "LOI_ORGANIQUE",
617
722
  "ORDONNANCE"
618
- ], Dt = ["CONVENTION"], At = [
723
+ ], kt = ["CONVENTION"], Ze = [
619
724
  "partie",
620
725
  "livre",
621
726
  "titre",
@@ -626,17 +731,17 @@ const Qi = [
626
731
  "paragraphe",
627
732
  "sous-paragraphe",
628
733
  "sous-sous-paragraphe"
629
- ], Ki = [
630
- ...bt,
631
- ...St,
632
- ...Dt
633
- ], Nt = ["item", "alinéa", "phrase"], en = [
734
+ ], rn = [
735
+ ...Ut,
736
+ ...jt,
737
+ ...kt
738
+ ], Qe = ["item", "alinéa", "phrase"], un = [
634
739
  "après",
635
740
  "avant",
636
741
  "dessous",
637
742
  "dessus"
638
743
  ];
639
- function Rt(e) {
744
+ function Ke(e) {
640
745
  switch (e.type) {
641
746
  case "alinéa":
642
747
  case "article":
@@ -663,67 +768,67 @@ function Rt(e) {
663
768
  case "reference_et_action":
664
769
  return !1;
665
770
  default:
666
- ae("isTextAstAtomicReference", e);
771
+ Y("isTextAstAtomicReference", e);
667
772
  }
668
773
  }
669
- function tn(e) {
670
- return At.includes(e.type);
774
+ function fn(e) {
775
+ return Ze.includes(e.type);
671
776
  }
672
- function nn(e) {
673
- return Nt.includes(e.type);
777
+ function dn(e) {
778
+ return Qe.includes(e.type);
674
779
  }
675
- const be = {
780
+ const we = {
676
781
  ",": 1,
677
782
  à: 3,
678
783
  et: 1,
679
784
  ou: 1,
680
785
  sauf: 2
681
- }, D = (e, t) => {
682
- if (!Rt(e) && e.type !== "parent-enfant")
786
+ }, P = (e, t) => {
787
+ if (!Ke(e) && e.type !== "parent-enfant")
683
788
  switch (e.type) {
684
789
  case "bounded-interval":
685
790
  return {
686
791
  ...e,
687
- first: D(e.first, t),
688
- last: D(e.last, t)
792
+ first: P(e.first, t),
793
+ last: P(e.last, t)
689
794
  // Don't update position,
690
795
  };
691
796
  case "counted-interval":
692
797
  return {
693
798
  ...e,
694
- first: D(e.first, t)
799
+ first: P(e.first, t)
695
800
  // Don't update position,
696
801
  };
697
802
  case "enumeration":
698
803
  return {
699
804
  ...e,
700
- left: D(e.left, t),
701
- right: D(e.right, t)
805
+ left: P(e.left, t),
806
+ right: P(e.right, t)
702
807
  // Don't update position,
703
808
  };
704
809
  case "exclusion":
705
810
  return {
706
811
  ...e,
707
- left: D(e.left, t)
812
+ left: P(e.left, t)
708
813
  // Don't add child to right, because it is excluded.
709
814
  // Don't update position,
710
815
  };
711
816
  case "reference_et_action":
712
817
  return {
713
818
  ...e,
714
- reference: D(e.reference, t)
819
+ reference: P(e.reference, t)
715
820
  // Don't update position,
716
821
  };
717
822
  default:
718
- ae("Neither AtomicReference nor ParentChild", e);
823
+ Y("Neither AtomicReference nor ParentChild", e);
719
824
  }
720
825
  if (e.type === "parent-enfant") {
721
826
  if (e.parent.type === "texte")
722
- for (const n of y(t))
827
+ for (const n of C(t))
723
828
  n.type === "article" && delete n.implicitText;
724
829
  return {
725
830
  ...e,
726
- child: D(e.child, t),
831
+ child: P(e.child, t),
727
832
  position: {
728
833
  start: t.position.start,
729
834
  stop: e.position.stop
@@ -731,7 +836,7 @@ const be = {
731
836
  };
732
837
  }
733
838
  if (e.type === "texte")
734
- for (const n of y(t))
839
+ for (const n of C(t))
735
840
  n.type === "article" && delete n.implicitText;
736
841
  return {
737
842
  child: t,
@@ -742,9 +847,9 @@ const be = {
742
847
  },
743
848
  type: "parent-enfant"
744
849
  };
745
- }, $ = (e, t, n) => {
850
+ }, U = (e, t, n) => {
746
851
  for (; t.length > 0; )
747
- e = ke(
852
+ e = Je(
748
853
  e,
749
854
  t,
750
855
  n,
@@ -754,104 +859,115 @@ const be = {
754
859
  ...e,
755
860
  position: n
756
861
  };
757
- }, ke = (e, t, n, a) => {
758
- if (t.length > a) {
759
- const [o, s] = t[a], u = be[o], f = t[a + 1]?.[0], d = f === void 0 ? 0 : be[f];
760
- if (u < d)
761
- t[a][1] = ke(
762
- s,
862
+ }, Je = (e, t, n, s) => {
863
+ if (t.length > s) {
864
+ const [o, a] = t[s], u = we[o], p = t[s + 1]?.[0], f = p === void 0 ? 0 : we[p];
865
+ if (u < f)
866
+ t[s][1] = Je(
867
+ a,
763
868
  t,
764
869
  {
765
- start: s.position.start,
870
+ start: a.position.start,
766
871
  stop: n.stop
767
872
  },
768
- a + 1
873
+ s + 1
769
874
  );
770
875
  else {
771
876
  if (o === "sauf") {
772
- let c;
773
- for (let g = e; g.type === "enumeration"; g = g.right)
774
- c = g;
775
- c === void 0 ? e = {
877
+ let d;
878
+ for (let c = e; c.type === "enumeration"; c = c.right)
879
+ d = c;
880
+ d === void 0 ? e = {
776
881
  left: e,
777
882
  position: {
778
883
  start: e.position.start,
779
- stop: s.position.stop
884
+ stop: a.position.stop
780
885
  },
781
- right: s,
886
+ right: a,
782
887
  type: "exclusion"
783
- } : c.right = {
784
- left: c.right,
888
+ } : d.right = {
889
+ left: d.right,
785
890
  position: {
786
- start: c.right.position.start,
787
- stop: s.position.stop
891
+ start: d.right.position.start,
892
+ stop: a.position.stop
788
893
  },
789
- right: s,
894
+ right: a,
790
895
  type: "exclusion"
791
896
  };
792
- } else if (e.type !== "texte" && s.type === "parent-enfant" && s.parent.type === "texte") {
793
- for (const c of y(e))
794
- c.type === "article" && delete c.implicitText;
795
- e = {
796
- ...s,
797
- child: o === "à" ? {
798
- first: e,
799
- last: s.child,
800
- position: {
801
- start: e.position.start,
802
- stop: s.child.position.stop
897
+ } else {
898
+ const d = E(e), c = E(a), h = G(
899
+ d,
900
+ c
901
+ );
902
+ let v;
903
+ if (d === c)
904
+ v = !0;
905
+ else if (h === c && a.type === "parent-enfant") {
906
+ v = !1;
907
+ for (const y of C(e))
908
+ y.type === "article" && delete y.implicitText;
909
+ e = {
910
+ ...a,
911
+ child: o === "à" ? {
912
+ first: e,
913
+ last: a.child,
914
+ position: {
915
+ start: e.position.start,
916
+ stop: a.child.position.stop
917
+ },
918
+ type: "bounded-interval"
919
+ } : {
920
+ coordinator: o,
921
+ left: e,
922
+ right: a.child,
923
+ position: {
924
+ start: e.position.start,
925
+ stop: a.child.position.stop
926
+ },
927
+ type: "enumeration"
803
928
  },
804
- type: "bounded-interval"
805
- } : {
806
- coordinator: o,
807
- left: e,
808
- right: s.child,
809
929
  position: {
810
930
  start: e.position.start,
811
- stop: s.child.position.stop
812
- },
813
- type: "enumeration"
814
- },
815
- position: {
816
- start: e.position.start,
817
- stop: s.position.stop
818
- }
819
- };
820
- } else if (e.type === "parent-enfant" && e.parent.type === "texte" && s.type !== "texte") {
821
- for (const c of y(s))
822
- c.type === "article" && delete c.implicitText;
823
- e = {
824
- ...e,
825
- child: o === "à" ? {
826
- first: e.child,
827
- last: s,
828
- position: {
829
- start: e.child.position.start,
830
- stop: s.position.stop
931
+ stop: a.position.stop
932
+ }
933
+ };
934
+ } else if (h === d && e.type === "parent-enfant") {
935
+ v = !1;
936
+ for (const y of C(a))
937
+ y.type === "article" && delete y.implicitText;
938
+ e = {
939
+ ...e,
940
+ child: o === "à" ? {
941
+ first: e.child,
942
+ last: a,
943
+ position: {
944
+ start: e.child.position.start,
945
+ stop: a.position.stop
946
+ },
947
+ type: "bounded-interval"
948
+ } : {
949
+ coordinator: o,
950
+ left: e.child,
951
+ right: a,
952
+ position: {
953
+ start: e.child.position.start,
954
+ stop: a.position.stop
955
+ },
956
+ type: "enumeration"
831
957
  },
832
- type: "bounded-interval"
833
- } : {
834
- coordinator: o,
835
- left: e.child,
836
- right: s,
837
958
  position: {
838
- start: e.child.position.start,
839
- stop: s.position.stop
840
- },
841
- type: "enumeration"
842
- },
843
- position: {
844
- start: e.position.start,
845
- stop: s.position.stop
846
- }
847
- };
848
- } else
849
- e = o === "à" ? {
959
+ start: e.position.start,
960
+ stop: a.position.stop
961
+ }
962
+ };
963
+ } else
964
+ v = !0;
965
+ v && (e = o === "à" ? {
850
966
  first: e,
851
- last: s,
967
+ last: a,
852
968
  position: {
853
969
  start: e.position.start,
854
- stop: s.position.stop
970
+ stop: a.position.stop
855
971
  },
856
972
  type: "bounded-interval"
857
973
  } : {
@@ -859,45 +975,88 @@ const be = {
859
975
  left: e,
860
976
  position: {
861
977
  start: e.position.start,
862
- stop: s.position.stop
978
+ stop: a.position.stop
863
979
  },
864
- right: s,
980
+ right: a,
865
981
  type: "enumeration"
866
- };
867
- t.splice(a, 1);
982
+ });
983
+ }
984
+ t.splice(s, 1);
868
985
  }
869
986
  }
870
987
  return e;
871
- }, se = (e, t, n) => {
872
- for (const a of t) {
873
- if (a.type === "texte")
874
- for (const o of y(e))
988
+ }, re = (e, t, n) => {
989
+ for (const s of t) {
990
+ if (s.type === "texte")
991
+ for (const o of C(e))
875
992
  o.type === "article" && delete o.implicitText;
876
993
  e = {
877
994
  child: e,
878
- parent: a,
995
+ parent: s,
879
996
  position: {
880
997
  start: e.position.start,
881
- stop: a.position.stop
998
+ stop: s.position.stop
882
999
  },
883
1000
  type: "parent-enfant"
884
1001
  };
885
1002
  }
886
1003
  return e.position = n, e;
1004
+ }, G = (e, t) => {
1005
+ for (const n of [
1006
+ "texte",
1007
+ ...Ze,
1008
+ "article",
1009
+ ...Qe
1010
+ // "incomplete-header",
1011
+ ])
1012
+ if ([e, t].includes(n))
1013
+ return n;
1014
+ return "incomplete-header";
1015
+ }, E = (e) => {
1016
+ if (Ke(e))
1017
+ return e.type;
1018
+ switch (e.type) {
1019
+ case "bounded-interval":
1020
+ return G(
1021
+ E(e.first),
1022
+ E(e.last)
1023
+ );
1024
+ case "counted-interval":
1025
+ return E(e.first);
1026
+ case "enumeration":
1027
+ return G(
1028
+ E(e.left),
1029
+ E(e.right)
1030
+ );
1031
+ case "exclusion":
1032
+ return G(
1033
+ E(e.left),
1034
+ E(e.right)
1035
+ );
1036
+ case "parent-enfant":
1037
+ return G(
1038
+ E(e.parent),
1039
+ E(e.child)
1040
+ );
1041
+ case "reference_et_action":
1042
+ return E(e.reference);
1043
+ default:
1044
+ Y("getReferenceHighestAtomicType reference.type", e);
1045
+ }
887
1046
  };
888
- function* C(e) {
1047
+ function* A(e) {
889
1048
  switch (e.type) {
890
1049
  case "bounded-interval": {
891
- yield* C(e.first), yield* C(e.last);
1050
+ yield* A(e.first), yield* A(e.last);
892
1051
  break;
893
1052
  }
894
1053
  case "counted-interval": {
895
- yield* C(e.first);
1054
+ yield* A(e.first);
896
1055
  break;
897
1056
  }
898
1057
  case "enumeration":
899
1058
  case "exclusion": {
900
- yield* C(e.left), yield* C(e.right);
1059
+ yield* A(e.left), yield* A(e.right);
901
1060
  break;
902
1061
  }
903
1062
  case "parent-enfant": {
@@ -905,89 +1064,66 @@ function* C(e) {
905
1064
  break;
906
1065
  }
907
1066
  case "reference_et_action": {
908
- yield* C(e.reference);
1067
+ yield* A(e.reference);
909
1068
  break;
910
1069
  }
911
1070
  default:
912
1071
  yield e;
913
1072
  }
914
1073
  }
915
- function* B(e) {
916
- switch (e.type) {
917
- case "bounded-interval": {
918
- yield* B(e.first), yield* B(e.last);
919
- break;
920
- }
921
- case "counted-interval": {
922
- yield* B(e.first);
923
- break;
924
- }
925
- case "enumeration":
926
- case "exclusion": {
927
- yield* B(e.left), yield* B(e.right);
928
- break;
929
- }
930
- case "reference_et_action": {
931
- yield* B(e.reference);
932
- break;
933
- }
934
- default:
935
- yield e;
936
- }
937
- }
938
- function* y(e) {
1074
+ function* C(e) {
939
1075
  switch (e.type) {
940
1076
  case "bounded-interval": {
941
- yield* y(e.first), yield* y(e.last);
1077
+ yield* C(e.first), yield* C(e.last);
942
1078
  break;
943
1079
  }
944
1080
  case "counted-interval": {
945
- yield* y(e.first);
1081
+ yield* C(e.first);
946
1082
  break;
947
1083
  }
948
1084
  case "enumeration":
949
1085
  case "exclusion": {
950
- yield* y(e.left), yield* y(e.right);
1086
+ yield* C(e.left), yield* C(e.right);
951
1087
  break;
952
1088
  }
953
1089
  case "parent-enfant": {
954
- yield* y(e.parent), yield* y(e.child);
1090
+ yield* C(e.parent), yield* C(e.child);
955
1091
  break;
956
1092
  }
957
1093
  case "reference_et_action": {
958
- yield* y(e.reference);
1094
+ yield* C(e.reference);
959
1095
  break;
960
1096
  }
961
1097
  default:
962
1098
  yield e;
963
1099
  }
964
1100
  }
965
- function* w(e) {
1101
+ function* _(e) {
966
1102
  switch (yield e, e.type) {
967
1103
  case "bounded-interval": {
968
- yield* w(e.first), yield* w(e.last);
1104
+ yield* _(e.first), yield* _(e.last);
969
1105
  break;
970
1106
  }
971
1107
  case "counted-interval": {
972
- yield* w(e.first);
1108
+ yield* _(e.first);
973
1109
  break;
974
1110
  }
975
1111
  case "enumeration":
976
1112
  case "exclusion": {
977
- yield* w(e.left), yield* w(e.right);
1113
+ yield* _(e.left), yield* _(e.right);
978
1114
  break;
979
1115
  }
980
1116
  case "parent-enfant": {
981
- yield* w(e.parent), yield* w(e.child);
1117
+ yield* _(e.parent), yield* _(e.child);
982
1118
  break;
983
1119
  }
984
1120
  case "reference_et_action": {
985
- yield* w(e.reference);
1121
+ yield* _(e.reference);
986
1122
  break;
987
1123
  }
988
1124
  }
989
1125
  }
990
- const oe = i("(èm)?e"), Pt = r(
1126
+ const ue = i("(èm)?e"), Bt = r(
991
1127
  i("1er", {
992
1128
  value: (e, t) => ({
993
1129
  position: t.position(),
@@ -1002,28 +1138,28 @@ const oe = i("(èm)?e"), Pt = r(
1002
1138
  value: 1
1003
1139
  })
1004
1140
  }),
1005
- l([i(String.raw`\d+`), p(oe, { default: "" })], {
1141
+ l([i(String.raw`\d+`), g(ue, { default: "" })], {
1006
1142
  value: (e, t) => ({
1007
1143
  position: t.position(),
1008
1144
  text: t.text(),
1009
1145
  value: parseInt(e[0])
1010
1146
  })
1011
1147
  })
1012
- ), fe = i(String.raw`\d+`, {
1148
+ ), me = i(String.raw`\d+`, {
1013
1149
  value: (e) => parseInt(e[0])
1014
- }), qt = r(
1150
+ }), Ht = r(
1015
1151
  i("1er", { value: 1 }),
1016
- l([i(String.raw`\d+`), oe], {
1152
+ l([i(String.raw`\d+`), ue], {
1017
1153
  value: (e) => parseInt(e[0])
1018
1154
  })
1019
- ), wt = i(String.raw`[IVXLCDM]+`, {
1020
- value: (e) => ne(e[0])
1021
- }), an = r(
1155
+ ), et = i(String.raw`[IVXLCDM]+`, {
1156
+ value: (e) => le(e[0])
1157
+ }), pn = r(
1022
1158
  i("Ier", { value: 1 }),
1023
- l([i(String.raw`[IVXLCDM]+`), oe], {
1024
- value: (e) => ne(e[0])
1159
+ l([i(String.raw`[IVXLCDM]+`), ue], {
1160
+ value: (e) => le(e[0])
1025
1161
  })
1026
- ), $t = r(
1162
+ ), zt = r(
1027
1163
  i("0I", {
1028
1164
  value: (e, t) => ({
1029
1165
  position: t.position(),
@@ -1038,14 +1174,14 @@ const oe = i("(èm)?e"), Pt = r(
1038
1174
  value: 1
1039
1175
  })
1040
1176
  }),
1041
- l([i(String.raw`[IVXLCDM]+`), p(oe, { default: "" })], {
1177
+ l([i(String.raw`[IVXLCDM]+`), g(ue, { default: "" })], {
1042
1178
  value: (e, t) => ({
1043
1179
  position: t.position(),
1044
1180
  text: t.text(),
1045
- value: ne(e[0])
1181
+ value: le(e[0])
1046
1182
  })
1047
1183
  })
1048
- ), Mt = r(
1184
+ ), Vt = r(
1049
1185
  i("dix", { flags: "i", value: 10 }),
1050
1186
  i("onze?", { flags: "i", value: 11 }),
1051
1187
  i("douze?", { flags: "i", value: 12 }),
@@ -1053,7 +1189,7 @@ const oe = i("(èm)?e"), Pt = r(
1053
1189
  i("quatorze?", { flags: "i", value: 14 }),
1054
1190
  i("quinze?", { flags: "i", value: 15 }),
1055
1191
  i("seize?", { flags: "i", value: 16 })
1056
- ), _t = r(
1192
+ ), Gt = r(
1057
1193
  i("vingt", { flags: "i", value: 20 }),
1058
1194
  i("trente?", { flags: "i", value: 30 }),
1059
1195
  i("quarante?", { flags: "i", value: 40 }),
@@ -1064,7 +1200,7 @@ const oe = i("(èm)?e"), Pt = r(
1064
1200
  i("huitante?", { flags: "i", value: 80 }),
1065
1201
  i("octante?", { flags: "i", value: 80 }),
1066
1202
  i("nonante?", { flags: "i", value: 90 })
1067
- ), Se = r(
1203
+ ), $e = r(
1068
1204
  i("une?", { flags: "i", value: 1 }),
1069
1205
  i("deux", { flags: "i", value: 2 }),
1070
1206
  i("trois", { flags: "i", value: 3 }),
@@ -1074,15 +1210,15 @@ const oe = i("(èm)?e"), Pt = r(
1074
1210
  i("sept", { flags: "i", value: 7 }),
1075
1211
  i("huit", { flags: "i", value: 8 }),
1076
1212
  i("neu[fv]", { flags: "i", value: 9 })
1077
- ), ze = l(
1213
+ ), tt = l(
1078
1214
  [
1079
- b(
1215
+ L(
1080
1216
  "centaines",
1081
- p(
1217
+ g(
1082
1218
  [
1083
- b(
1219
+ L(
1084
1220
  "centaine",
1085
- p([Se, xe], {
1221
+ g([$e, Pe], {
1086
1222
  default: 0,
1087
1223
  value: (e) => e[0]
1088
1224
  })
@@ -1095,28 +1231,28 @@ const oe = i("(èm)?e"), Pt = r(
1095
1231
  }
1096
1232
  )
1097
1233
  ),
1098
- b(
1234
+ L(
1099
1235
  "dizaines",
1100
- p(_t, { default: 0 })
1236
+ g(Gt, { default: 0 })
1101
1237
  ),
1102
- p(i("-(et-)?", { flags: "i" }), { default: "" }),
1103
- b("dix", p(Mt, { default: 0 })),
1104
- p(xe, { default: "" }),
1105
- b("unite", p(Se, { default: 0 }))
1238
+ g(i("-(et-)?", { flags: "i" }), { default: "" }),
1239
+ L("dix", g(Vt, { default: 0 })),
1240
+ g(Pe, { default: "" }),
1241
+ L("unite", g($e, { default: 0 }))
1106
1242
  ],
1107
1243
  {
1108
1244
  value: (e, { variables: t }) => t.centaines + t.dizaines + t.dix + t.unite
1109
1245
  }
1110
- ), He = r(
1246
+ ), it = r(
1111
1247
  i("premi(er|ère)", { flags: "i", value: 1 }),
1112
1248
  i("seconde?", { flags: "i", value: 2 }),
1113
- l([ze, i("ième", { flags: "i" })], {
1249
+ l([tt, i("ième", { flags: "i" })], {
1114
1250
  value: (e) => e[0]
1115
1251
  })
1116
- ), Ft = r(
1117
- qt,
1118
- He
1119
- ), le = O(
1252
+ ), Xt = r(
1253
+ Ht,
1254
+ it
1255
+ ), fe = S(
1120
1256
  r(
1121
1257
  // Mustt be first:
1122
1258
  i("quinquagies", { flags: "i", value: 50 }),
@@ -1125,9 +1261,9 @@ const oe = i("(èm)?e"), Pt = r(
1125
1261
  i("octogies", { flags: "i", value: 80 }),
1126
1262
  l(
1127
1263
  [
1128
- b(
1264
+ L(
1129
1265
  "unites",
1130
- p(
1266
+ g(
1131
1267
  r(
1132
1268
  i("unde?", { flags: "i", value: -1 }),
1133
1269
  i("duode?", { flags: "i", value: -2 }),
@@ -1144,7 +1280,7 @@ const oe = i("(èm)?e"), Pt = r(
1144
1280
  { default: 0 }
1145
1281
  )
1146
1282
  ),
1147
- b(
1283
+ L(
1148
1284
  "dizaines",
1149
1285
  r(
1150
1286
  i("decies", { flags: "i", value: 10 }),
@@ -1183,13 +1319,13 @@ const oe = i("(èm)?e"), Pt = r(
1183
1319
  value: e
1184
1320
  })
1185
1321
  }
1186
- ), Ve = i("(aux|des|les)( |(?=dite?s ))", {
1322
+ ), nt = i("(aux|des|les)( |(?=dite?s ))", {
1187
1323
  flags: "i"
1188
- }), We = r(
1324
+ }), st = r(
1189
1325
  i("(au|du|le)( |(?=dit ))", { flags: "i" }),
1190
1326
  i("([àa] )?la( |(?=dite ))", { flags: "i" }),
1191
1327
  i("([àa] )?l'", { flags: "i" })
1192
- ), Je = l(
1328
+ ), ot = l(
1193
1329
  [
1194
1330
  r(
1195
1331
  i(" de (?=ce(tte)?s )", { flags: "i" }),
@@ -1197,7 +1333,7 @@ const oe = i("(èm)?e"), Pt = r(
1197
1333
  )
1198
1334
  ],
1199
1335
  { value: "des" }
1200
- ), re = O(
1336
+ ), de = S(
1201
1337
  r(
1202
1338
  i(" de (?=ce(tte|t)? )", { flags: "i" }),
1203
1339
  i(" de l'", { flags: "i" }),
@@ -1205,7 +1341,7 @@ const oe = i("(èm)?e"), Pt = r(
1205
1341
  i(" du( |(?=dit ))", { flags: "i" })
1206
1342
  ),
1207
1343
  { value: "de" }
1208
- ), me = i("dite?s ", { flags: "i", value: !0 }), ue = i("dite? ", { flags: "i", value: !0 }), W = r(
1344
+ ), Te = i("dite?s ", { flags: "i", value: !0 }), pe = i("dite? ", { flags: "i", value: !0 }), Z = r(
1209
1345
  i("derni(er|ère)s", {
1210
1346
  flags: "i",
1211
1347
  value: (e, t) => ({
@@ -1232,7 +1368,7 @@ const oe = i("(èm)?e"), Pt = r(
1232
1368
  flags: "i",
1233
1369
  value: { relative: "+∞" }
1234
1370
  })
1235
- ), J = r(
1371
+ ), Q = r(
1236
1372
  i("antépénultième", {
1237
1373
  flags: "i",
1238
1374
  value: (e, t) => ({
@@ -1284,102 +1420,102 @@ const oe = i("(èm)?e"), Pt = r(
1284
1420
  flags: "i",
1285
1421
  value: { relative: 1 }
1286
1422
  })
1287
- ), Ie = i("ci ?- ?(après|avant|dessous|dessus)", {
1423
+ ), be = i("ci ?- ?(après|avant|dessous|dessus)", {
1288
1424
  flags: "i",
1289
1425
  value: (e) => `ci-${e[1]}`
1290
- }), ge = l([T, Ie], {
1426
+ }), he = l([m, be], {
1291
1427
  value: (e) => e[1]
1292
- }), De = i(" précitée?", {
1428
+ }), _e = i(" précitée?", {
1293
1429
  flags: "i"
1294
- }), Ye = r(
1295
- Ie,
1296
- W
1297
- ), he = l(
1430
+ }), at = r(
1431
+ be,
1432
+ Z
1433
+ ), Le = l(
1298
1434
  [
1299
- p(
1435
+ g(
1300
1436
  i("ces ", {
1301
1437
  flags: "i"
1302
1438
  }),
1303
1439
  { default: "" }
1304
1440
  ),
1305
- W
1441
+ Z
1306
1442
  ],
1307
1443
  { value: (e) => e[1] }
1308
- ), Ut = r(
1309
- Ie,
1310
- J
1311
- ), Le = l(
1444
+ ), Wt = r(
1445
+ be,
1446
+ Q
1447
+ ), Ae = l(
1312
1448
  [
1313
- p(
1449
+ g(
1314
1450
  i("ce(tte|t)? ", {
1315
1451
  flags: "i"
1316
1452
  }),
1317
1453
  { default: "" }
1318
1454
  ),
1319
- J
1455
+ Q
1320
1456
  ],
1321
1457
  { value: (e) => e[1] }
1322
- ), M = r(
1458
+ ), j = r(
1323
1459
  l(
1324
1460
  [
1325
- T,
1326
- b(
1461
+ m,
1462
+ L(
1327
1463
  "etOu",
1328
1464
  r(
1329
1465
  i("et", { flags: "i" }),
1330
1466
  i("ou", { flags: "i" })
1331
1467
  )
1332
1468
  ),
1333
- T
1469
+ m
1334
1470
  ],
1335
1471
  { value: (e, { variables: t }) => t.etOu }
1336
1472
  ),
1337
1473
  l(
1338
1474
  [
1339
- Gt,
1340
- p(
1475
+ Dt,
1476
+ g(
1341
1477
  [
1342
- b(
1478
+ L(
1343
1479
  "etOu",
1344
1480
  r(
1345
1481
  i("et", { flags: "i" }),
1346
1482
  i("ou", { flags: "i" })
1347
1483
  )
1348
1484
  ),
1349
- T
1485
+ m
1350
1486
  ],
1351
1487
  { default: "" }
1352
1488
  )
1353
1489
  ],
1354
1490
  { value: (e, { variables: t }) => t.etOu ?? "," }
1355
1491
  )
1356
- ), Bt = l(
1357
- [S, i("à l'exception ", { flags: "i" })],
1492
+ ), Yt = l(
1493
+ [N, i("à l'exception ", { flags: "i" })],
1358
1494
  { value: "sauf" }
1359
- ), Y = i(" à ", { flags: "i", value: "à" }), Ze = r(
1495
+ ), K = i(" à ", { flags: "i", value: "à" }), lt = r(
1360
1496
  i("alinéa", { flags: "i", value: "alinéa" }),
1361
1497
  i("phrase", { flags: "i", value: "phrase" })
1362
- ), jt = l(
1363
- [Ze, i("s", { flags: "i" })],
1498
+ ), Zt = l(
1499
+ [lt, i("s", { flags: "i" })],
1364
1500
  { value: (e) => e[0] }
1365
- ), kt = l(
1501
+ ), Qt = l(
1366
1502
  [
1367
1503
  r(
1368
- O(wt, {
1504
+ S(et, {
1369
1505
  value: (e, t) => ({
1370
1506
  position: t.position(),
1371
1507
  text: t.text(),
1372
1508
  value: e
1373
1509
  })
1374
1510
  }),
1375
- O(Ot, {
1511
+ S($t, {
1376
1512
  value: (e, t) => ({
1377
1513
  position: t.position(),
1378
1514
  text: e,
1379
1515
  value: e.charCodeAt(0) - 97 + 1
1380
1516
  })
1381
1517
  }),
1382
- l([fe, i("[°o]?", { flags: "i" })], {
1518
+ l([me, i("[°o]?", { flags: "i" })], {
1383
1519
  value: (e, t) => ({
1384
1520
  position: t.position(),
1385
1521
  text: t.text(),
@@ -1387,32 +1523,32 @@ const oe = i("(èm)?e"), Pt = r(
1387
1523
  })
1388
1524
  })
1389
1525
  ),
1390
- p([T, le], { default: null }),
1391
- Xt
1526
+ g([m, fe], { default: null }),
1527
+ _t
1392
1528
  ],
1393
1529
  {
1394
1530
  value: (e, t) => {
1395
- const n = e[0], a = e[1]?.[1];
1531
+ const n = e[0], s = e[1]?.[1];
1396
1532
  return {
1397
- index: n.value + (a === void 0 ? 0 : a.value / 1e3),
1398
- num: `${n.text}${a === void 0 ? "" : ` ${a.text}`}`,
1533
+ index: n.value + (s === void 0 ? 0 : s.value / 1e3),
1534
+ num: `${n.text}${s === void 0 ? "" : ` ${s.text}`}`,
1399
1535
  position: t.position(),
1400
1536
  type: "item"
1401
1537
  };
1402
1538
  }
1403
1539
  }
1404
- ), Qe = l(
1540
+ ), rt = l(
1405
1541
  [
1406
1542
  r(
1407
- O(He, {
1543
+ S(it, {
1408
1544
  value: (e) => ({ index: e })
1409
1545
  }),
1410
- O(J, {
1546
+ S(Q, {
1411
1547
  value: (e) => e
1412
1548
  })
1413
1549
  ),
1414
- T,
1415
- Ze
1550
+ m,
1551
+ lt
1416
1552
  ],
1417
1553
  {
1418
1554
  value: (e, t) => ({
@@ -1421,15 +1557,15 @@ const oe = i("(èm)?e"), Pt = r(
1421
1557
  type: e[2]
1422
1558
  })
1423
1559
  }
1424
- ), te = r(Qe, kt), j = l(
1560
+ ), ne = r(rt, Qt), H = l(
1425
1561
  [
1426
- ze,
1427
- T,
1428
- O(W, {
1562
+ tt,
1563
+ m,
1564
+ S(Z, {
1429
1565
  value: (e) => e
1430
1566
  }),
1431
- T,
1432
- jt
1567
+ m,
1568
+ Zt
1433
1569
  ],
1434
1570
  {
1435
1571
  value: (e, t) => ({
@@ -1442,148 +1578,148 @@ const oe = i("(èm)?e"), Pt = r(
1442
1578
  type: "counted-interval"
1443
1579
  })
1444
1580
  }
1445
- ), zt = l(
1581
+ ), Kt = l(
1446
1582
  [
1447
- j,
1448
- G([
1449
- r(M, Y),
1450
- r(Qe, j)
1583
+ H,
1584
+ R([
1585
+ r(j, K),
1586
+ r(rt, H)
1451
1587
  ])
1452
1588
  ],
1453
1589
  {
1454
- value: (e, t) => $(
1590
+ value: (e, t) => U(
1455
1591
  e[0],
1456
1592
  e[1],
1457
1593
  t.position()
1458
1594
  )
1459
1595
  }
1460
- ), Ce = l(
1596
+ ), Re = l(
1461
1597
  [
1462
- r(te, j),
1463
- G([
1464
- r(M, Y),
1465
- r(te, j)
1598
+ r(ne, H),
1599
+ R([
1600
+ r(j, K),
1601
+ r(ne, H)
1466
1602
  ])
1467
1603
  ],
1468
1604
  {
1469
- value: (e, t) => $(
1605
+ value: (e, t) => U(
1470
1606
  e[0],
1471
1607
  e[1],
1472
1608
  t.position()
1473
1609
  )
1474
1610
  }
1475
- ), Ht = l(
1611
+ ), Jt = l(
1476
1612
  [
1477
- r(te, j),
1478
- G(
1613
+ r(ne, H),
1614
+ R(
1479
1615
  [
1480
- r(M, Y),
1481
- r(te, j)
1616
+ r(j, K),
1617
+ r(ne, H)
1482
1618
  ],
1483
1619
  { min: 1 }
1484
1620
  )
1485
1621
  ],
1486
1622
  {
1487
- value: (e, t) => $(
1623
+ value: (e, t) => U(
1488
1624
  e[0],
1489
1625
  e[1],
1490
1626
  t.position()
1491
1627
  )
1492
1628
  }
1493
- ), Ke = r(
1494
- zt,
1495
- Ht
1496
- ), et = l(
1629
+ ), ut = r(
1630
+ Kt,
1631
+ Jt
1632
+ ), ft = l(
1497
1633
  [
1498
- T,
1634
+ m,
1499
1635
  i(String.raw`\(`),
1500
- pe,
1501
- Ce,
1502
- pe,
1636
+ ve,
1637
+ Re,
1638
+ ve,
1503
1639
  i(String.raw`\)`)
1504
1640
  ],
1505
1641
  { value: (e) => e[3] }
1506
- ), tt = r(
1507
- l([re, Ce], { value: (e) => e[1] }),
1508
- l([Je, Ke], { value: (e) => e[1] }),
1509
- et
1510
- ), it = l(
1642
+ ), dt = r(
1643
+ l([de, Re], { value: (e) => e[1] }),
1644
+ l([ot, ut], { value: (e) => e[1] }),
1645
+ ft
1646
+ ), pt = l(
1511
1647
  [
1512
- p(ue, { default: null }),
1513
- Ce,
1514
- G(tt)
1648
+ g(pe, { default: null }),
1649
+ Re,
1650
+ R(dt)
1515
1651
  ],
1516
1652
  {
1517
- value: (e, t) => se(
1653
+ value: (e, t) => re(
1518
1654
  e[1],
1519
1655
  e[2],
1520
1656
  t.position()
1521
1657
  )
1522
1658
  }
1523
- ), nt = l(
1659
+ ), ct = l(
1524
1660
  [
1525
- p(me, { default: null }),
1526
- p(
1527
- l([he, T], {
1661
+ g(Te, { default: null }),
1662
+ g(
1663
+ l([Le, m], {
1528
1664
  value: (e) => e[0]
1529
1665
  }),
1530
1666
  { default: null }
1531
1667
  ),
1532
- Ke,
1533
- G(tt)
1668
+ ut,
1669
+ R(dt)
1534
1670
  ],
1535
1671
  {
1536
- value: (e, t) => se(
1672
+ value: (e, t) => re(
1537
1673
  e[2],
1538
1674
  e[3],
1539
1675
  t.position()
1540
1676
  )
1541
1677
  }
1542
- ), at = l([We, it], {
1678
+ ), gt = l([st, pt], {
1543
1679
  value: (e, t) => ({
1544
1680
  ...e[1],
1545
1681
  position: t.position()
1546
1682
  })
1547
- }), st = l([Ve, nt], {
1683
+ }), vt = l([nt, ct], {
1548
1684
  value: (e, t) => ({
1549
1685
  ...e[1],
1550
1686
  position: t.position()
1551
1687
  })
1552
- }), Vt = l(
1688
+ }), ei = l(
1553
1689
  [
1554
- nt,
1555
- G([M, r(st, at)])
1690
+ ct,
1691
+ R([j, r(vt, gt)])
1556
1692
  ],
1557
1693
  {
1558
- value: (e, t) => $(
1694
+ value: (e, t) => U(
1559
1695
  e[0],
1560
1696
  e[1],
1561
1697
  t.position()
1562
1698
  )
1563
1699
  }
1564
- ), Wt = l(
1700
+ ), ti = l(
1565
1701
  [
1566
- it,
1567
- G([M, r(st, at)])
1702
+ pt,
1703
+ R([j, r(vt, gt)])
1568
1704
  ],
1569
1705
  {
1570
- value: (e, t) => $(
1706
+ value: (e, t) => U(
1571
1707
  e[0],
1572
1708
  e[1],
1573
1709
  t.position()
1574
1710
  )
1575
1711
  }
1576
- ), ot = r(
1712
+ ), mt = r(
1577
1713
  i("annexe", { flags: "i", value: "annexe" }),
1578
1714
  i("exécution", { flags: "i", value: "exécution" }),
1579
1715
  i("liminaire", { flags: "i", value: "liminaire" }),
1580
1716
  i("préambule", { flags: "i", value: "préambule" }),
1581
1717
  i("préliminaire", { flags: "i", value: "préliminaire" }),
1582
1718
  i("unique", { flags: "i", value: "unique" })
1583
- ), lt = l(
1719
+ ), ht = l(
1584
1720
  [
1585
1721
  i(String.raw`\*?\*?`),
1586
- p(
1722
+ g(
1587
1723
  [
1588
1724
  r(
1589
1725
  [i(String.raw`L\.?O`, { value: "LO" }), i(String.raw`\*?`)],
@@ -1596,20 +1732,20 @@ const oe = i("(èm)?e"), Pt = r(
1596
1732
  )
1597
1733
  ],
1598
1734
  { value: (e, t) => t.textFromResults(e) }
1599
- ), Jt = r(
1735
+ ), ii = r(
1600
1736
  l(
1601
1737
  [
1602
- lt,
1738
+ ht,
1603
1739
  i(String.raw`\d+`),
1604
- p(i("(ème|e?r?)", { value: "" }), { default: "" }),
1605
- G([
1606
- r(i(" ?- ?"), i(String.raw` ?\.`), T),
1740
+ g(i("(ème|e?r?)", { value: "" }), { default: "" }),
1741
+ R([
1742
+ r(i(" ?- ?"), i(String.raw` ?\.`), m),
1607
1743
  r(
1608
1744
  [
1609
1745
  i(String.raw`[\dA-Z]+`),
1610
- p(i("(ème|e?r?)", { value: "" }), { default: "" })
1746
+ g(i("(ème|e?r?)", { value: "" }), { default: "" })
1611
1747
  ],
1612
- O(le, {
1748
+ S(fe, {
1613
1749
  value: (e) => e.text
1614
1750
  })
1615
1751
  )
@@ -1617,21 +1753,21 @@ const oe = i("(èm)?e"), Pt = r(
1617
1753
  ],
1618
1754
  { value: (e, t) => t.textFromResults(e) }
1619
1755
  ),
1620
- ot
1621
- ), Yt = r(
1756
+ mt
1757
+ ), ni = r(
1622
1758
  l(
1623
1759
  [
1624
- lt,
1760
+ ht,
1625
1761
  i(String.raw`\d+`),
1626
- p(i("(ème|e?r?)", { value: "" }), { default: "" }),
1627
- G([
1628
- r(i("-"), i(String.raw` ?\.`), T),
1762
+ g(i("(ème|e?r?)", { value: "" }), { default: "" }),
1763
+ R([
1764
+ r(i("-"), i(String.raw` ?\.`), m),
1629
1765
  r(
1630
1766
  [
1631
1767
  i(String.raw`[\dA-Z]+`),
1632
- p(i("(ème|e?r?)", { value: "" }), { default: "" })
1768
+ g(i("(ème|e?r?)", { value: "" }), { default: "" })
1633
1769
  ],
1634
- O(le, {
1770
+ S(fe, {
1635
1771
  value: (e) => e.text
1636
1772
  })
1637
1773
  )
@@ -1639,11 +1775,11 @@ const oe = i("(èm)?e"), Pt = r(
1639
1775
  ],
1640
1776
  { value: (e, t) => t.textFromResults(e) }
1641
1777
  ),
1642
- ot
1643
- ), sn = l(
1778
+ mt
1779
+ ), si = l(
1644
1780
  [
1645
1781
  l(
1646
- [i(String.raw`^art\. `, { flags: "im" }), Yt],
1782
+ [i(String.raw`^art\. `, { flags: "im" }), ni],
1647
1783
  {
1648
1784
  value: (e, t) => ({
1649
1785
  definition: !0,
@@ -1658,10 +1794,10 @@ const oe = i("(èm)?e"), Pt = r(
1658
1794
  {
1659
1795
  value: (e) => e[0]
1660
1796
  }
1661
- ), ie = r(
1797
+ ), se = r(
1662
1798
  l(
1663
1799
  [
1664
- l([Jt, p(ge, { default: null })], {
1800
+ l([ii, g(he, { default: null })], {
1665
1801
  value: (e, t) => ({
1666
1802
  ...e[1] ? { localizationAdverb: e[1] } : {},
1667
1803
  num: e[0],
@@ -1669,13 +1805,13 @@ const oe = i("(èm)?e"), Pt = r(
1669
1805
  type: "article"
1670
1806
  })
1671
1807
  }),
1672
- p(et, { default: null })
1808
+ g(ft, { default: null })
1673
1809
  ],
1674
1810
  {
1675
1811
  value: (e, t) => {
1676
- const n = e[0], a = e[1];
1677
- return a === null ? n : {
1678
- child: a,
1812
+ const n = e[0], s = e[1];
1813
+ return s === null ? n : {
1814
+ child: s,
1679
1815
  parent: n,
1680
1816
  position: t.position(),
1681
1817
  type: "parent-enfant"
@@ -1683,53 +1819,53 @@ const oe = i("(èm)?e"), Pt = r(
1683
1819
  }
1684
1820
  }
1685
1821
  ),
1686
- O(J, {
1822
+ S(Q, {
1687
1823
  value: (e, t) => ({
1688
1824
  ...e,
1689
1825
  position: t.position(),
1690
1826
  type: "article"
1691
1827
  })
1692
1828
  })
1693
- ), Zt = O(W, {
1829
+ ), oi = S(Z, {
1694
1830
  value: (e, t) => ({
1695
1831
  ...e,
1696
1832
  position: t.position(),
1697
1833
  type: "article"
1698
1834
  })
1699
- }), Qt = l(
1835
+ }), ai = l(
1700
1836
  [
1701
- ie,
1702
- G(
1837
+ se,
1838
+ R(
1703
1839
  [
1704
- r(M, Y),
1705
- r(Zt, ie)
1840
+ r(j, K),
1841
+ r(oi, se)
1706
1842
  ],
1707
1843
  { min: 1 }
1708
1844
  )
1709
1845
  ],
1710
1846
  {
1711
- value: (e, t) => $(
1847
+ value: (e, t) => U(
1712
1848
  e[0],
1713
1849
  e[1],
1714
1850
  t.position()
1715
1851
  )
1716
1852
  }
1717
- ), Ae = r(
1718
- Qt,
1719
- O(Ye, {
1853
+ ), De = r(
1854
+ ai,
1855
+ S(at, {
1720
1856
  value: (e, t) => ({
1721
1857
  ...e,
1722
1858
  position: t.position(),
1723
1859
  type: "article"
1724
1860
  })
1725
1861
  })
1726
- ), Kt = r(
1862
+ ), li = r(
1727
1863
  l(
1728
1864
  [
1729
- he,
1730
- T,
1865
+ Le,
1866
+ m,
1731
1867
  i("articles", { flags: "i" }),
1732
- p([T, Ae], { default: [] })
1868
+ g([m, De], { default: [] })
1733
1869
  ],
1734
1870
  {
1735
1871
  value: (e, t) => {
@@ -1737,46 +1873,46 @@ const oe = i("(èm)?e"), Pt = r(
1737
1873
  position: t.position(),
1738
1874
  type: "article"
1739
1875
  };
1740
- for (const a of C(n))
1741
- a.type === "incomplete-header" && (a.type = "article"), a.index === void 0 && a.relative === void 0 && Object.assign(a, e[0]);
1876
+ for (const s of A(n))
1877
+ s.type === "incomplete-header" && (s.type = "article"), s.index === void 0 && s.relative === void 0 && Object.assign(s, e[0]);
1742
1878
  return { ...n, position: t.position() };
1743
1879
  }
1744
1880
  }
1745
1881
  ),
1746
- l([i("articles", { flags: "i" }), T, Ae], {
1882
+ l([i("articles", { flags: "i" }), m, De], {
1747
1883
  value: (e, t) => ({
1748
1884
  ...e[2],
1749
1885
  position: t.position()
1750
1886
  })
1751
1887
  })
1752
- ), ei = l(
1753
- [p(me, { default: !1 }), Kt],
1888
+ ), ri = l(
1889
+ [g(Te, { default: !1 }), li],
1754
1890
  {
1755
1891
  value: (e, t) => {
1756
1892
  const n = e[1];
1757
1893
  if (e[0])
1758
- for (const a of C(
1894
+ for (const s of A(
1759
1895
  n
1760
1896
  ))
1761
- a.ofTheSaid = !0;
1897
+ s.ofTheSaid = !0;
1762
1898
  if (t.currentText !== void 0)
1763
- for (const a of C(
1899
+ for (const s of A(
1764
1900
  n
1765
1901
  ))
1766
- a.implicitText === void 0 && (a.implicitText = t.currentText);
1902
+ s.implicitText === void 0 && (s.implicitText = t.currentText);
1767
1903
  return delete t.currentArticle, {
1768
1904
  ...n,
1769
1905
  position: t.position()
1770
1906
  };
1771
1907
  }
1772
1908
  }
1773
- ), ti = r(
1909
+ ), ui = r(
1774
1910
  l(
1775
1911
  [
1776
- Le,
1777
- T,
1912
+ Ae,
1913
+ m,
1778
1914
  i("article", { flags: "i" }),
1779
- p([T, ie], { default: [] })
1915
+ g([m, se], { default: [] })
1780
1916
  ],
1781
1917
  {
1782
1918
  value: (e, t) => {
@@ -1784,45 +1920,54 @@ const oe = i("(èm)?e"), Pt = r(
1784
1920
  position: t.position(),
1785
1921
  type: "article"
1786
1922
  };
1787
- for (const a of C(n))
1788
- a.type === "incomplete-header" && (a.type = "article"), a.index === void 0 && a.relative === void 0 && Object.assign(a, e[0]);
1923
+ for (const s of A(n))
1924
+ s.type === "incomplete-header" && (s.type = "article"), s.index === void 0 && s.relative === void 0 && Object.assign(s, e[0]);
1789
1925
  return { ...n, position: t.position() };
1790
1926
  }
1791
1927
  }
1792
1928
  ),
1793
- l([i("article", { flags: "i" }), T, ie], {
1929
+ l([i("article", { flags: "i" }), m, se], {
1794
1930
  value: (e, t) => ({
1795
1931
  ...e[2],
1796
1932
  position: t.position()
1797
1933
  })
1798
1934
  })
1799
- ), ii = l(
1800
- [p(ue, { default: null }), ti],
1935
+ ), fi = l(
1936
+ [g(pe, { default: null }), ui],
1801
1937
  {
1802
1938
  value: (e, t) => {
1803
1939
  const n = e[1];
1804
1940
  if (e[0])
1805
- for (const o of C(
1941
+ for (const o of A(
1806
1942
  n
1807
1943
  ))
1808
1944
  o.ofTheSaid = !0;
1809
1945
  if (t.currentText !== void 0)
1810
- for (const o of C(
1946
+ for (const o of A(
1811
1947
  n
1812
1948
  ))
1813
1949
  o.implicitText === void 0 && (o.implicitText = t.currentText);
1814
- const a = {
1950
+ const s = {
1815
1951
  ...n,
1816
1952
  position: t.position()
1817
1953
  };
1818
- return t.currentArticle = a.type === "parent-enfant" ? a.parent : a, a;
1954
+ return t.currentArticle = s.type === "parent-enfant" ? s.parent : s, s;
1819
1955
  }
1820
1956
  }
1821
- ), ni = i(String.raw`[12]\d{3}`), ai = r(
1957
+ ), qe = i(String.raw`[12]\d{3}`), di = S(
1958
+ r(et, i(String.raw`1[0-4]|\d`)),
1959
+ {
1960
+ value: (e) => Se(parseInt(e))
1961
+ }
1962
+ ), Me = r(
1822
1963
  i("1er", { flags: "i", value: "01" }),
1823
- i(String.raw`([12]\d|3[01])`, { value: (e) => e[0] }),
1964
+ i(String.raw`[12]\d|3[01]`, { value: (e) => e[0] }),
1824
1965
  i(String.raw`\d`, { value: (e) => "0" + e[0] })
1825
- ), si = r(
1966
+ ), pi = r(
1967
+ i("1er", { flags: "i", value: "1" }),
1968
+ i(String.raw`[12]\d|30`, { value: (e) => e[0] }),
1969
+ i(String.raw`\d`, { value: (e) => e[0] })
1970
+ ), ci = r(
1826
1971
  i("janvier", { flags: "i", value: "01" }),
1827
1972
  i("février", { flags: "i", value: "02" }),
1828
1973
  i("mars", { flags: "i", value: "03" }),
@@ -1835,22 +1980,95 @@ const oe = i("(èm)?e"), Pt = r(
1835
1980
  i("octobre", { flags: "i", value: "10" }),
1836
1981
  i("novembre", { flags: "i", value: "11" }),
1837
1982
  i("décembre", { flags: "i", value: "12" })
1838
- ), oi = l(
1983
+ ), gi = r(
1984
+ i("vendémiaire", { flags: "i", value: "vendémiaire" }),
1985
+ i("brumaire", { flags: "i", value: "brumaire" }),
1986
+ i("frimaire", { flags: "i", value: "frimaire" }),
1987
+ i("nivôse", { flags: "i", value: "nivôse" }),
1988
+ i("pluviôse", { flags: "i", value: "pluviôse" }),
1989
+ i("ventôse", { flags: "i", value: "ventôse" }),
1990
+ i("germinal", { flags: "i", value: "germinal" }),
1991
+ i("floréal", { flags: "i", value: "floréal" }),
1992
+ i("prairial", { flags: "i", value: "prairial" }),
1993
+ i("messidor", { flags: "i", value: "messidor" }),
1994
+ i("thermidor", { flags: "i", value: "thermidor" }),
1995
+ i("fructidor", { flags: "i", value: "fructidor" })
1996
+ ), Fe = r(
1997
+ l(
1998
+ [
1999
+ L("jour", Me),
2000
+ m,
2001
+ L("mois", ci),
2002
+ m,
2003
+ L("annee", qe)
2004
+ ],
2005
+ {
2006
+ value: (e, { variables: t }) => `${t.annee}-${t.mois}-${t.jour}`
2007
+ }
2008
+ ),
2009
+ l(
2010
+ [
2011
+ L("jour", Me),
2012
+ i("-"),
2013
+ L(
2014
+ "mois",
2015
+ r(
2016
+ i(String.raw`1[0-2]`, { value: (e) => e[0] }),
2017
+ i(String.raw`0?(\d)`, { value: (e) => "0" + e[1] })
2018
+ )
2019
+ ),
2020
+ i("-"),
2021
+ L("annee", qe)
2022
+ ],
2023
+ {
2024
+ value: (e, { variables: t }) => `${t.annee}-${t.mois}-${t.jour}`
2025
+ }
2026
+ )
2027
+ ), vi = l(
1839
2028
  [
1840
- b("jour", ai),
1841
- T,
1842
- b("mois", si),
1843
- T,
1844
- b("annee", ni)
2029
+ L("jour", pi),
2030
+ m,
2031
+ L("mois", gi),
2032
+ i(" an ", { flags: "i" }),
2033
+ L("annee", di)
1845
2034
  ],
1846
2035
  {
1847
- value: (e, { variables: t }) => `${t.annee}-${t.mois}-${t.jour}`
2036
+ value: (e, { variables: t }) => `${t.jour} ${t.mois} an ${t.annee}`
1848
2037
  }
1849
- ), Oe = l([i("du ", { flags: "i" }), oi], {
1850
- value: (e) => e[1]
1851
- }), rt = l([T, Oe], {
2038
+ ), Ce = l(
2039
+ [
2040
+ g(i("du ", { flags: "i" }), { default: null }),
2041
+ r(
2042
+ l(
2043
+ [
2044
+ vi,
2045
+ g(
2046
+ l([i(String.raw` \(`), Fe, i(String.raw`\)`)], {
2047
+ value: (e) => e[1]
2048
+ }),
2049
+ { default: null }
2050
+ )
2051
+ ],
2052
+ {
2053
+ value: (e) => {
2054
+ const t = {
2055
+ dateCalendrierRepublicain: e[0]
2056
+ }, n = e[1];
2057
+ return n !== null && (t.date = n), t;
2058
+ }
2059
+ }
2060
+ ),
2061
+ S(Fe, {
2062
+ value: (e) => ({ date: e })
2063
+ })
2064
+ )
2065
+ ],
2066
+ {
2067
+ value: (e) => e[1]
2068
+ }
2069
+ ), It = l([m, Ce], {
1852
2070
  value: (e) => e[1]
1853
- }), V = r(
2071
+ }), W = r(
1854
2072
  i("chapitre", { flags: "i", value: "chapitre" }),
1855
2073
  i("livre(?! des procédures fiscales)", { flags: "i", value: "livre" }),
1856
2074
  i("paragraphe", { flags: "i", value: "paragraphe" }),
@@ -1861,16 +2079,16 @@ const oe = i("(èm)?e"), Pt = r(
1861
2079
  i("sous-sous-paragraphe", { flags: "i", value: "sous-sous-paragraphe" }),
1862
2080
  i("sous-titre", { flags: "i", value: "sous-titre" }),
1863
2081
  i("titre", { flags: "i", value: "titre" })
1864
- ), Ne = l(
1865
- [V, i("s", { flags: "i" })],
2082
+ ), Ue = l(
2083
+ [W, i("s", { flags: "i" })],
1866
2084
  { value: (e) => e[0] }
1867
- ), li = r(
2085
+ ), mi = r(
1868
2086
  i("arrêtés", { flags: "i" }),
1869
2087
  i("législative", { flags: "i" }),
1870
2088
  l(
1871
2089
  [
1872
2090
  i("réglementaire( ancienne)? ", { flags: "i" }),
1873
- p(
2091
+ g(
1874
2092
  [
1875
2093
  i(" [-:] ", { flags: "i" }),
1876
2094
  r(i("arrêtés", { flags: "i" }), [
@@ -1889,10 +2107,10 @@ const oe = i("(èm)?e"), Pt = r(
1889
2107
  ],
1890
2108
  { value: (e, t) => t.textFromResults(e) }
1891
2109
  )
1892
- ), ut = l(
2110
+ ), yt = l(
1893
2111
  [
1894
- r($t, Pt),
1895
- p([T, le], { default: null })
2112
+ r(zt, Bt),
2113
+ g([m, fe], { default: null })
1896
2114
  ],
1897
2115
  {
1898
2116
  value: (e) => {
@@ -1903,12 +2121,12 @@ const oe = i("(èm)?e"), Pt = r(
1903
2121
  };
1904
2122
  }
1905
2123
  }
1906
- ), on = l(
2124
+ ), hi = l(
1907
2125
  [
1908
2126
  i("^", { flags: "m" }),
1909
- V,
1910
- T,
1911
- ut,
2127
+ W,
2128
+ m,
2129
+ yt,
1912
2130
  i("$", { flags: "m" })
1913
2131
  ],
1914
2132
  {
@@ -1919,8 +2137,8 @@ const oe = i("(èm)?e"), Pt = r(
1919
2137
  type: e[1]
1920
2138
  })
1921
2139
  }
1922
- ), Ee = r(
1923
- l([ut, p(ge, { default: "" })], {
2140
+ ), Ie = r(
2141
+ l([yt, g(he, { default: "" })], {
1924
2142
  value: (e, t) => ({
1925
2143
  ...e[0],
1926
2144
  ...e[1] ? { localizationAdverb: e[1] } : {},
@@ -1928,7 +2146,7 @@ const oe = i("(èm)?e"), Pt = r(
1928
2146
  type: "incomplete-header"
1929
2147
  })
1930
2148
  }),
1931
- l([li, p(ge, { default: "" })], {
2149
+ l([mi, g(he, { default: "" })], {
1932
2150
  value: (e, t) => ({
1933
2151
  ...e[1] ? { localizationAdverb: e[1] } : {},
1934
2152
  num: e[0],
@@ -1936,29 +2154,29 @@ const oe = i("(èm)?e"), Pt = r(
1936
2154
  type: "incomplete-header"
1937
2155
  })
1938
2156
  }),
1939
- O(J, {
2157
+ S(Q, {
1940
2158
  value: (e, t) => ({
1941
2159
  ...e,
1942
2160
  position: t.position(),
1943
2161
  type: "incomplete-header"
1944
2162
  })
1945
2163
  })
1946
- ), Re = r(
1947
- Ee,
1948
- O(Ut, {
2164
+ ), je = r(
2165
+ Ie,
2166
+ S(Wt, {
1949
2167
  value: (e, t) => ({
1950
2168
  ...e,
1951
2169
  position: t.position(),
1952
2170
  type: "incomplete-header"
1953
2171
  })
1954
2172
  })
1955
- ), ri = r(
2173
+ ), Ii = r(
1956
2174
  l(
1957
2175
  [
1958
- Le,
1959
- T,
1960
- V,
1961
- p([T, Re], { default: [] })
2176
+ Ae,
2177
+ m,
2178
+ W,
2179
+ g([m, je], { default: [] })
1962
2180
  ],
1963
2181
  {
1964
2182
  value: (e, t) => {
@@ -1966,90 +2184,90 @@ const oe = i("(èm)?e"), Pt = r(
1966
2184
  position: t.position(),
1967
2185
  type: e[2]
1968
2186
  };
1969
- for (const a of C(
2187
+ for (const s of A(
1970
2188
  n
1971
2189
  ))
1972
- a.type = e[2], a.index === void 0 && a.relative === void 0 && Object.assign(a, e[0]);
2190
+ s.type = e[2], s.index === void 0 && s.relative === void 0 && Object.assign(s, e[0]);
1973
2191
  return { ...n, position: t.position() };
1974
2192
  }
1975
2193
  }
1976
2194
  ),
1977
- l([Ft, T, V], {
2195
+ l([Xt, m, W], {
1978
2196
  value: (e, t) => ({
1979
2197
  index: e[0],
1980
2198
  position: t.position(),
1981
2199
  type: e[2]
1982
2200
  })
1983
2201
  }),
1984
- l([V, T, Re], {
2202
+ l([W, m, je], {
1985
2203
  value: (e, t) => {
1986
2204
  const n = e[2];
1987
- for (const a of C(
2205
+ for (const s of A(
1988
2206
  n
1989
2207
  ))
1990
- a.type = e[0];
2208
+ s.type = e[0];
1991
2209
  return {
1992
2210
  ...n,
1993
2211
  position: t.position()
1994
2212
  };
1995
2213
  }
1996
2214
  })
1997
- ), ui = l(
1998
- [p(ue, { default: !1 }), ri],
2215
+ ), yi = l(
2216
+ [g(pe, { default: !1 }), Ii],
1999
2217
  {
2000
2218
  value: (e, t) => {
2001
2219
  const n = e[1];
2002
2220
  if (e[0])
2003
- for (const a of C(
2221
+ for (const s of A(
2004
2222
  n
2005
2223
  ))
2006
- a.ofTheSaid = !0;
2224
+ s.ofTheSaid = !0;
2007
2225
  return {
2008
2226
  ...n,
2009
2227
  position: t.position()
2010
2228
  };
2011
2229
  }
2012
2230
  }
2013
- ), di = l(
2231
+ ), xi = l(
2014
2232
  [
2015
- Ee,
2016
- G([
2017
- r(M, Y),
2233
+ Ie,
2234
+ R([
2235
+ r(j, K),
2018
2236
  r(
2019
- l([W], {
2237
+ l([Z], {
2020
2238
  value: (e, t) => ({
2021
2239
  ...e[0],
2022
2240
  position: t.position(),
2023
2241
  type: "incomplete-header"
2024
2242
  })
2025
2243
  }),
2026
- Ee
2244
+ Ie
2027
2245
  )
2028
2246
  ])
2029
2247
  ],
2030
2248
  {
2031
- value: (e, t) => $(
2249
+ value: (e, t) => U(
2032
2250
  e[0],
2033
2251
  e[1],
2034
2252
  t.position()
2035
2253
  )
2036
2254
  }
2037
- ), Pe = r(
2038
- di,
2039
- O(Ye, {
2255
+ ), ke = r(
2256
+ xi,
2257
+ S(at, {
2040
2258
  value: (e, t) => ({
2041
2259
  ...e,
2042
2260
  position: t.position(),
2043
2261
  type: "incomplete-header"
2044
2262
  })
2045
2263
  })
2046
- ), ci = r(
2264
+ ), Si = r(
2047
2265
  l(
2048
2266
  [
2049
- he,
2050
- T,
2051
- Ne,
2052
- p([T, Pe], { default: [] })
2267
+ Le,
2268
+ m,
2269
+ Ue,
2270
+ g([m, ke], { default: [] })
2053
2271
  ],
2054
2272
  {
2055
2273
  value: (e, t) => {
@@ -2057,59 +2275,54 @@ const oe = i("(èm)?e"), Pt = r(
2057
2275
  position: t.position(),
2058
2276
  type: e[2]
2059
2277
  };
2060
- for (const a of C(
2278
+ for (const s of A(
2061
2279
  n
2062
2280
  ))
2063
- a.type = e[2], a.index === void 0 && a.relative === void 0 && Object.assign(a, e[0]);
2281
+ s.type = e[2], s.index === void 0 && s.relative === void 0 && Object.assign(s, e[0]);
2064
2282
  return { ...n, position: t.position() };
2065
2283
  }
2066
2284
  }
2067
2285
  ),
2068
- l([Ne, T, Pe], {
2286
+ l([Ue, m, ke], {
2069
2287
  value: (e, t) => {
2070
2288
  const n = e[2];
2071
- for (const a of C(
2289
+ for (const s of A(
2072
2290
  n
2073
2291
  ))
2074
- a.type = e[0];
2292
+ s.type = e[0];
2075
2293
  return {
2076
2294
  ...n,
2077
2295
  position: t.position()
2078
2296
  };
2079
2297
  }
2080
2298
  })
2081
- ), pi = l(
2082
- [p(me, { default: !1 }), ci],
2299
+ ), Ti = l(
2300
+ [g(Te, { default: !1 }), Si],
2083
2301
  {
2084
2302
  value: (e, t) => {
2085
2303
  const n = e[1];
2086
2304
  if (e[0])
2087
- for (const a of C(
2305
+ for (const s of A(
2088
2306
  n
2089
2307
  ))
2090
- a.ofTheSaid = !0;
2308
+ s.ofTheSaid = !0;
2091
2309
  return {
2092
2310
  ...n,
2093
2311
  position: t.position()
2094
2312
  };
2095
2313
  }
2096
2314
  }
2097
- ), fi = { LEGITEXT000006069574: { nature: "CODE", title: "Code général des impôts, annexe III" }, LEGITEXT000006072026: { nature: "CODE", title: "Code monétaire et financier" }, LEGITEXT000006074069: { nature: "CODE", title: "Code de l'action sociale et des familles" }, LEGITEXT000006071646: { nature: "CODE", title: "Code du blé" }, LEGITEXT000005634379: { nature: "CODE", title: "Code de commerce" }, LEGITEXT000006074234: { nature: "CODE", title: "Code de l'aviation civile" }, LEGITEXT000006072360: { nature: "CODE", title: "Code de déontologie vétérinaire" }, LEGITEXT000006072665: { nature: "CODE", title: "Code de la santé publique" }, LEGITEXT000006074237: { nature: "CODE", title: "Code du domaine public fluvial et de la navigation intérieure" }, LEGITEXT000006069565: { nature: "CODE", title: "Code de la consommation" }, LEGITEXT000025244092: { nature: "CODE", title: "Code forestier (nouveau)" }, LEGITEXT000006074068: { nature: "CODE", title: "Code des pensions militaires d'invalidité et des victimes de guerre" }, LEGITEXT000006069472: { nature: "CODE", title: "Code de la consommation des boissons et des mesures contre l'alcoolisme applicable dans la collectivité territoriale de Mayotte" }, LEGITEXT000006069583: { nature: "CODE", title: "Livre des procédures fiscales" }, LEGITEXT000006070208: { nature: "CODE", title: "Code du domaine de l'Etat" }, LEGITEXT000023086525: { nature: "CODE", title: "Code des transports" }, LEGITEXT000006070239: { nature: "CODE", title: "Code électoral" }, LEGITEXT000006071367: { nature: "CODE", title: "Code rural et de la pêche maritime" }, LEGITEXT000006070721: { nature: "CODE", title: "Code civil" }, LEGITEXT000037701019: { nature: "CODE", title: "Code de la commande publique" }, LEGITEXT000006070302: { nature: "CODE", title: "Code des pensions civiles et militaires de retraite" }, LEGITEXT000006069441: { nature: "CODE", title: "Code de commerce (ancien)" }, LEGITEXT000006074510: { nature: "CODE", title: "Code de déontologie des professionnels de l'expertise comptable" }, LEGITEXT000006070933: { nature: "CODE", title: "Code de justice administrative" }, LEGITEXT000006073422: { nature: "CODE", title: "Code des caisses d'épargne" }, LEGITEXT000006071154: { nature: "CODE", title: "Code de procédure pénale" }, LEGITEXT000006075115: { nature: "CODE", title: "Code des débits de boissons et des mesures contre l'alcoolisme" }, LEGITEXT000006069564: { nature: "CODE", title: "Code des marchés publics (édition 2001)" }, LEGITEXT000006070162: { nature: "CODE", title: "Code des communes" }, LEGITEXT000006071007: { nature: "CODE", title: "Code de la légion d'honneur et de la médaille militaire" }, LEGITEXT000006070666: { nature: "CODE", title: "Code des instruments monétaires et des médailles" }, LEGITEXT000006070716: { nature: "CODE", title: "Code de procédure civile" }, LEGITEXT000025024948: { nature: "CODE", title: "Code des procédures civiles d'exécution" }, LEGITEXT000044416551: { nature: "CODE", title: "Code général de la fonction publique" }, LEGITEXT000006069568: { nature: "CODE", title: "Code général des impôts, annexe I" }, LEGITEXT000006071103: { nature: "CODE", title: "Code de déontologie de la profession de commissaire aux comptes" }, LEGITEXT000006070633: { nature: "CODE", title: "Code général des collectivités territoriales" }, LEGITEXT000006071071: { nature: "CODE", title: "Code de déontologie de la police nationale" }, LEGITEXT000006071344: { nature: "CODE", title: "Code des tribunaux administratifs et des cours administratives d'appel" }, LEGITEXT000006074096: { nature: "CODE", title: "Code de la construction et de l'habitation" }, LEGITEXT000044595989: { nature: "CODE", title: "Code des impositions sur les biens et services" }, LEGITEXT000006074236: { nature: "CODE", title: "Code du patrimoine" }, LEGITEXT000006070249: { nature: "CODE", title: "Code des juridictions financières" }, LEGITEXT000006069562: { nature: "CODE", title: "Code des marchés publics (édition 1964)" }, LEGITEXT000006071657: { nature: "CODE", title: "Code du vin" }, LEGITEXT000006069569: { nature: "CODE", title: "Code général des impôts, annexe II" }, LEGITEXT000006070882: { nature: "CODE", title: "Code de l'industrie cinématographique" }, LEGITEXT000006072635: { nature: "CODE", title: "Code de déontologie des sages-femmes" }, LEGITEXT000006071335: { nature: "CODE", title: "Code du service national" }, LEGITEXT000006070159: { nature: "CODE", title: "Code de déontologie des agents de police municipale" }, LEGITEXT000006070719: { nature: "CODE", title: "Code pénal" }, LEGITEXT000006074232: { nature: "CODE", title: "Code de déontologie des architectes" }, LEGITEXT000025503132: { nature: "CODE", title: "Code de la sécurité intérieure" }, LEGITEXT000006072052: { nature: "CODE", title: "Code du travail applicable à Mayotte" }, LEGITEXT000023983208: { nature: "CODE", title: "Code de l'énergie" }, LEGITEXT000006074947: { nature: "CODE", title: "Code de la route (ancien)" }, LEGITEXT000006071785: { nature: "CODE", title: "Code minier" }, LEGITEXT000006074066: { nature: "CODE", title: "Code des pensions de retraite des marins français du commerce, de pêche ou de plaisance" }, LEGITEXT000006072050: { nature: "CODE", title: "Code du travail" }, LEGITEXT000006074235: { nature: "CODE", title: "Code du domaine de l'Etat et des collectivités publiques applicable à la collectivité territoriale de Mayotte" }, LEGITEXT000006070158: { nature: "CODE", title: "Code de l'entrée et du séjour des étrangers et du droit d'asile" }, LEGITEXT000006074228: { nature: "CODE", title: "Code de la route" }, LEGITEXT000031366350: { nature: "CODE", title: "Code des relations entre le public et l'administration" }, LEGITEXT000006073984: { nature: "CODE", title: "Code des assurances" }, LEGITEXT000006070299: { nature: "CODE", title: "Code général de la propriété des personnes publiques" }, LEGITEXT000006071645: { nature: "CODE", title: "Code des douanes de Mayotte" }, LEGITEXT000006070300: { nature: "CODE", title: "Code des communes de la Nouvelle-Calédonie" }, LEGITEXT000006071164: { nature: "CODE", title: "Code de l'organisation judiciaire" }, LEGITEXT000006071014: { nature: "CODE", title: "Code de l'enseignement technique" }, LEGITEXT000006071360: { nature: "CODE", title: "Code de justice militaire (nouveau)" }, LEGITEXT000006073189: { nature: "CODE", title: "Code de la sécurité sociale" }, LEGITEXT000006074075: { nature: "CODE", title: "Code de l'urbanisme" }, LEGITEXT000006074224: { nature: "CODE", title: "Code de l'expropriation pour cause d'utilité publique" }, LEGITEXT000006072051: { nature: "CODE", title: "Code du travail maritime" }, LEGITEXT000006070987: { nature: "CODE", title: "Code des postes et des communications électroniques" }, LEGITEXT000005627819: { nature: "CODE", title: "Code des marchés publics (édition 2006)" }, LEGITEXT000006071318: { nature: "CODE", title: "Code du sport" }, LEGITEXT000006074220: { nature: "CODE", title: "Code de l'environnement" }, LEGITEXT000006075116: { nature: "CODE", title: "Code de l'artisanat" }, LEGITEXT000020908868: { nature: "CODE", title: "Code du cinéma et de l'image animée" }, LEGITEXT000006070884: { nature: "CODE", title: "Code de justice militaire" }, LEGITEXT000006070667: { nature: "CODE", title: "Code de la voirie routière" }, LEGITEXT000006071307: { nature: "CODE", title: "Code de la défense" }, LEGITEXT000006072637: { nature: "CODE", title: "Code de la famille et de l'aide sociale" }, LEGITEXT000006074233: { nature: "CODE", title: "Code des ports maritimes" }, LEGITEXT000006074067: { nature: "CODE", title: "Code de la mutualité" }, LEGITEXT000006074073: { nature: "CODE", title: "Code du tourisme" }, LEGITEXT000006072636: { nature: "CODE", title: "Code de déontologie des chirurgiens-dentistes" }, LEGITEXT000023501962: { nature: "CODE", title: "Code minier (nouveau)" }, LEGITEXT000006071188: { nature: "CODE", title: "Code disciplinaire et pénal de la marine marchande" }, LEGITEXT000006071191: { nature: "CODE", title: "Code de l'éducation" }, LEGITEXT000006071570: { nature: "CODE", title: "Code des douanes" }, LEGITEXT000006071366: { nature: "CODE", title: "Code rural (ancien)" }, LEGITEXT000045476241: { nature: "CODE", title: "Code pénitentiaire" }, LEGITEXT000006071189: { nature: "CODE", title: "Code de la nationalité française" }, LEGITEXT000006071737: { nature: "CODE", title: "Code de l'Office national interprofessionnel du blé" }, LEGITEXT000006072634: { nature: "CODE", title: "Code de déontologie médicale" }, LEGITEXT000006069414: { nature: "CODE", title: "Code de la propriété intellectuelle" }, LEGITEXT000006069576: { nature: "CODE", title: "Code général des impôts, annexe IV" }, LEGITEXT000006069577: { nature: "CODE", title: "Code général des impôts" }, LEGITEXT000006071190: { nature: "CODE", title: "Code de la recherche" }, LEGITEXT000039086952: { nature: "CODE", title: "Code de la justice pénale des mineurs" }, LEGITEXT000006071029: { nature: "CODE", title: "Code pénal (ancien)" }, LEGITEXT000006072666: { nature: "CODE", title: "Code des marchés publics (édition 2004)" }, LEGITEXT000006070680: { nature: "CODE", title: "Code de procédure civile" }, LEGITEXT000006072664: { nature: "CODE", title: "Code de déontologie des médecins" }, LEGITEXT000006071556: { nature: "CODE", title: "Code forestier de Mayotte" }, LEGITEXT000006071514: { nature: "CODE", title: "Code forestier" }, JORFTEXT000000571356: { nature: "CONSTITUTION", title: "Constitution du 4 octobre 1958" }, JORFTEXT000000868390: { nature: "CONSTITUTION", title: "Constitution du 27 octobre 1946" }, LEGITEXT000006071195: { nature: "CONSTITUTION", title: "Constitution du 4 novembre 1848" } }, gi = { code: { général: { des: { impôts: { annexe: { 1: { cid: "LEGITEXT000006069568" }, 2: { cid: "LEGITEXT000006069569" }, 3: { cid: "LEGITEXT000006069574" }, 4: { cid: "LEGITEXT000006069576" } }, cid: "LEGITEXT000006069577" }, collectivités: { territoriales: { cid: "LEGITEXT000006070633" } } }, de: { la: { fonction: { publique: { cid: "LEGITEXT000044416551" } }, propriété: { des: { personnes: { publiques: { cid: "LEGITEXT000006070299" } } } } } } }, monétaire: { et: { financier: { cid: "LEGITEXT000006072026" } } }, de: { "l'action": { sociale: { et: { des: { familles: { cid: "LEGITEXT000006074069" } } } } }, commerce: { cid: "LEGITEXT000005634379", ancien: { cid: "LEGITEXT000006069441" } }, "l'aviation": { civile: { cid: "LEGITEXT000006074234" } }, déontologie: { vétérinaire: { cid: "LEGITEXT000006072360" }, des: { professionnels: { de: { "l'expertise": { comptable: { cid: "LEGITEXT000006074510" } } } }, "sages-femmes": { cid: "LEGITEXT000006072635" }, agents: { de: { police: { municipale: { cid: "LEGITEXT000006070159" } } } }, architectes: { cid: "LEGITEXT000006074232" }, "chirurgiens-dentistes": { cid: "LEGITEXT000006072636" }, médecins: { cid: "LEGITEXT000006072664" } }, de: { la: { profession: { de: { commissaire: { aux: { comptes: { cid: "LEGITEXT000006071103" } } } } }, police: { nationale: { cid: "LEGITEXT000006071071" } } } }, médicale: { cid: "LEGITEXT000006072634" } }, la: { santé: { publique: { cid: "LEGITEXT000006072665" } }, consommation: { cid: "LEGITEXT000006069565", des: { boissons: { et: { des: { mesures: { contre: { "l'alcoolisme": { applicable: { dans: { la: { collectivité: { territoriale: { de: { mayotte: { cid: "LEGITEXT000006069472" } } } } } } } } } } } } } } }, commande: { publique: { cid: "LEGITEXT000037701019" } }, légion: { "d'honneur": { de: { la: { médaille: { militaire: { et: { de: { "l'ordre": { national: { du: { mérite: { cid: "LEGITEXT000006071007" } } } } } } } } } }, et: { de: { la: { médaille: { militaire: { cid: "LEGITEXT000006071007" } } } } } } }, construction: { et: { de: { "l'habitation": { cid: "LEGITEXT000006074096" } } } }, sécurité: { intérieure: { cid: "LEGITEXT000025503132" }, sociale: { cid: "LEGITEXT000006073189" } }, route: { ancien: { cid: "LEGITEXT000006074947" }, cid: "LEGITEXT000006074228" }, voirie: { routière: { cid: "LEGITEXT000006070667" } }, défense: { cid: "LEGITEXT000006071307" }, famille: { et: { de: { "l'aide": { sociale: { cid: "LEGITEXT000006072637" } } } } }, mutualité: { cid: "LEGITEXT000006074067" }, nationalité: { française: { cid: "LEGITEXT000006071189" } }, propriété: { intellectuelle: { cid: "LEGITEXT000006069414" } }, recherche: { cid: "LEGITEXT000006071190" }, justice: { pénale: { des: { mineurs: { cid: "LEGITEXT000039086952" } } } } }, justice: { administrative: { cid: "LEGITEXT000006070933" }, militaire: { nouveau: { cid: "LEGITEXT000006071360" }, cid: "LEGITEXT000006070884" } }, procédure: { pénale: { cid: "LEGITEXT000006071154" }, civile: { cid: ["LEGITEXT000006070716", "LEGITEXT000006070680"] } }, "l'industrie": { cinématographique: { cid: "LEGITEXT000006070882" } }, "l'énergie": { cid: "LEGITEXT000023983208" }, "l'entrée": { et: { du: { séjour: { des: { étrangers: { et: { du: { droit: { "d'asile": { cid: "LEGITEXT000006070158" } } } } } } } } } }, "l'organisation": { judiciaire: { cid: "LEGITEXT000006071164" } }, "l'enseignement": { technique: { cid: "LEGITEXT000006071014" } }, "l'urbanisme": { cid: "LEGITEXT000006074075" }, "l'expropriation": { pour: { cause: { "d'utilité": { publique: { cid: "LEGITEXT000006074224" } } } } }, "l'environnement": { cid: "LEGITEXT000006074220" }, "l'artisanat": { cid: "LEGITEXT000006075116" }, "l'éducation": { cid: "LEGITEXT000006071191" }, "l'office": { national: { interprofessionnel: { du: { blé: { cid: "LEGITEXT000006071737" } } } } } }, du: { blé: { cid: "LEGITEXT000006071646" }, domaine: { public: { fluvial: { et: { de: { la: { navigation: { intérieure: { cid: "LEGITEXT000006074237" } } } } } } }, de: { "l'etat": { cid: "LEGITEXT000006070208", et: { des: { collectivités: { publiques: { applicable: { à: { la: { collectivité: { territoriale: { de: { mayotte: { cid: "LEGITEXT000006074235" } } } } } } } } } } } } } }, patrimoine: { cid: "LEGITEXT000006074236" }, vin: { cid: "LEGITEXT000006071657" }, service: { national: { cid: "LEGITEXT000006071335" } }, travail: { applicable: { à: { mayotte: { cid: "LEGITEXT000006072052" } } }, cid: "LEGITEXT000006072050", maritime: { cid: "LEGITEXT000006072051" } }, sport: { cid: "LEGITEXT000006071318" }, cinéma: { et: { de: { "l'image": { animée: { cid: "LEGITEXT000020908868" } } } } }, tourisme: { cid: "LEGITEXT000006074073" } }, forestier: { nouveau: { cid: "LEGITEXT000025244092" }, de: { mayotte: { cid: "LEGITEXT000006071556" } }, cid: "LEGITEXT000006071514" }, des: { pensions: { militaires: { "d'invalidité": { et: { des: { victimes: { de: { la: { guerre: { cid: "LEGITEXT000006074068" } }, guerre: { cid: "LEGITEXT000006074068" } } } } } } }, civiles: { et: { militaires: { de: { retraite: { cid: "LEGITEXT000006070302" } } } } }, de: { retraite: { des: { marins: { français: { du: { commerce: { de: { pêche: { ou: { de: { plaisance: { cid: "LEGITEXT000006074066" } } } } } } } } } } } } }, transports: { cid: "LEGITEXT000023086525" }, caisses: { "d'épargne": { cid: "LEGITEXT000006073422" } }, débits: { de: { boissons: { et: { des: { mesures: { contre: { "l'alcoolisme": { cid: "LEGITEXT000006075115" } } } } } } } }, marchés: { publics: { édition: { 1964: { cid: "LEGITEXT000006069562" }, 2001: { cid: "LEGITEXT000006069564" }, 2004: { cid: "LEGITEXT000006072666" }, 2006: { cid: "LEGITEXT000005627819" } } } }, communes: { cid: "LEGITEXT000006070162", de: { la: { "nouvelle-calédonie": { cid: "LEGITEXT000006070300" } } } }, instruments: { monétaires: { et: { des: { médailles: { cid: "LEGITEXT000006070666" } } } } }, procédures: { civiles: { "d'exécution": { cid: "LEGITEXT000025024948" } } }, tribunaux: { administratifs: { et: { des: { cours: { administratives: { "d'appel": { cid: "LEGITEXT000006071344" } } } } } } }, impositions: { sur: { les: { biens: { et: { services: { cid: "LEGITEXT000044595989" } } } } } }, juridictions: { financières: { cid: "LEGITEXT000006070249" } }, relations: { entre: { le: { public: { et: { "l'administration": { cid: "LEGITEXT000031366350" } } } } } }, assurances: { cid: "LEGITEXT000006073984" }, douanes: { de: { mayotte: { cid: "LEGITEXT000006071645" } }, cid: "LEGITEXT000006071570" }, postes: { et: { des: { communications: { électroniques: { cid: "LEGITEXT000006070987" } } } } }, ports: { maritimes: { cid: "LEGITEXT000006074233" } } }, électoral: { cid: "LEGITEXT000006070239" }, rural: { nouveau: { cid: "LEGITEXT000006071367" }, et: { de: { la: { pêche: { maritime: { cid: "LEGITEXT000006071367" } } } } }, ancien: { cid: "LEGITEXT000006071366" } }, civil: { cid: "LEGITEXT000006070721" }, pénal: { cid: "LEGITEXT000006070719", ancien: { cid: "LEGITEXT000006071029" } }, minier: { cid: "LEGITEXT000006071785", nouveau: { cid: "LEGITEXT000023501962" } }, disciplinaire: { et: { pénal: { de: { la: { marine: { marchande: { cid: "LEGITEXT000006071188" } } } } } } }, pénitentiaire: { cid: "LEGITEXT000045476241" } }, livre: { des: { procédures: { fiscales: { cid: "LEGITEXT000006069583" } } } }, constitution: { cid: "JORFTEXT000000571356" } }, Ei = {}, Ti = { CONSTITUTION: { "1958-10-04": ["JORFTEXT000000571356"], "1946-10-27": ["JORFTEXT000000868390"], "1848-11-04": ["LEGITEXT000006071195"] } }, vi = {}, Z = {
2098
- textInfosByCid: fi,
2099
- textCidByOtherTitleWordsTree: gi,
2100
- textCidByStandardTitleWordsTree: Ei,
2101
- textsCidsByNatureAndDate: Ti,
2102
- textsCidsByNatureAndNum: vi
2103
- }, ce = Z.textInfosByCid ?? {}, mi = Z.textCidByOtherTitleWordsTree ?? {}, Ii = Z.textCidByStandardTitleWordsTree ?? {}, hi = Z.textsCidsByNatureAndDate ?? {}, Li = Z.textsCidsByNatureAndNum ?? {}, dt = O(
2315
+ ), J = {}, ge = J.textInfosByCid ?? {}, bi = J.textCidByOtherTitleWordsTree ?? {}, Li = J.textCidByTitleRestWordsTree ?? {}, Ai = J.textsCidsByNatureAndDate ?? {}, Ri = J.textsCidsByNatureAndNum ?? {}, oe = S(
2104
2316
  r(
2105
- i("arrêté", { flags: "i", value: "ARRETE" }),
2106
- i("circulaire", { flags: "i", value: "CIRCULAIRE" }),
2317
+ i("arrêtés?", { flags: "i", value: "ARRETE" }),
2318
+ i("circulaires?", { flags: "i", value: "CIRCULAIRE" }),
2107
2319
  // JORFTEXT000000702211 Code professionnel local du 26 juillet 1900 pour l'Alsace et la Moselle
2108
2320
  i("code professionnel local", { flags: "i", value: "LOI" }),
2109
2321
  i("code", { flags: "i", value: "CODE" }),
2110
2322
  i("Constitution", { value: "CONSTITUTION" }),
2111
2323
  i("décret-loi", { flags: "i", value: "DECRET_LOI" }),
2112
- i("décret", { flags: "i", value: "DECRET" }),
2324
+ i("décrets?", { flags: "i", value: "DECRET" }),
2325
+ i("livre(?= des procédures fiscales)", { flags: "i", value: "CODE" }),
2113
2326
  i("loi constitutionnelle", {
2114
2327
  flags: "i",
2115
2328
  value: "LOI_CONSTIT"
@@ -2134,16 +2347,17 @@ const oe = i("(èm)?e"), Pt = r(
2134
2347
  })
2135
2348
  }
2136
2349
  ), Ci = l(
2137
- [Be, i(String.raw`\d+(-\d+)?`)],
2350
+ [g(We, { default: null }), i(String.raw`\d+(-\d+)?`)],
2138
2351
  {
2139
2352
  value: (e) => e[1]
2140
2353
  }
2141
- ), qe = r(
2142
- l([Ci, p(rt, { default: "" })], {
2143
- value: (e) => e[1] ? { date: e[1], num: e[0] } : { num: e[0] }
2144
- }),
2145
- O(Oe, {
2146
- value: (e) => ({ date: e })
2354
+ ), ae = r(
2355
+ Ce,
2356
+ l([Ci, g(It, { default: null })], {
2357
+ value: (e) => e[1] === null ? { num: e[0] } : {
2358
+ ...e[1],
2359
+ num: e[0]
2360
+ }
2147
2361
  })
2148
2362
  );
2149
2363
  i(
@@ -2157,35 +2371,100 @@ i(
2157
2371
  })
2158
2372
  }
2159
2373
  );
2160
- const Oi = p(
2374
+ const xt = g(
2161
2375
  r(
2162
2376
  i(" de la République française", { flags: "i" }),
2163
2377
  i(" du pays", { flags: "i" })
2164
2378
  ),
2165
2379
  { default: null }
2166
- ), we = r(
2380
+ ), cn = r(
2381
+ l(
2382
+ [
2383
+ oe,
2384
+ xt,
2385
+ m,
2386
+ ae,
2387
+ i(".*")
2388
+ ],
2389
+ {
2390
+ value: (e) => {
2391
+ const t = {
2392
+ ...e[0],
2393
+ ...e[3]
2394
+ }, n = e[4].trim() || void 0;
2395
+ return n !== void 0 && (t.titleRest = n), t;
2396
+ }
2397
+ }
2398
+ ),
2399
+ l(
2400
+ [
2401
+ oe,
2402
+ i("[^()]+"),
2403
+ i(String.raw`\( ?`),
2404
+ ae,
2405
+ i(String.raw` ?\)`)
2406
+ ],
2407
+ {
2408
+ value: (e) => {
2409
+ const t = {
2410
+ ...e[0],
2411
+ ...e[3]
2412
+ }, n = e[1].trim() || void 0;
2413
+ return n !== void 0 && (t.titleRest = n), t;
2414
+ }
2415
+ }
2416
+ ),
2417
+ l(
2418
+ [
2419
+ r(
2420
+ i("code", { flags: "i", value: "CODE" }),
2421
+ i("livre(?= des procédures fiscales)", {
2422
+ flags: "i",
2423
+ value: "CODE"
2424
+ })
2425
+ ),
2426
+ i(".+")
2427
+ ],
2428
+ {
2429
+ value: (e) => {
2430
+ const t = {
2431
+ ...e[0]
2432
+ }, n = e[1].trim() || void 0;
2433
+ return n !== void 0 && (t.titleRest = n), t;
2434
+ }
2435
+ }
2436
+ )
2437
+ ), Be = r(
2167
2438
  l(
2168
2439
  [
2169
- dt,
2170
- Oi,
2171
- p([T, qe], {
2440
+ oe,
2441
+ xt,
2442
+ g([m, ae], {
2172
2443
  default: null,
2173
2444
  value: (e) => e[1]
2174
2445
  }),
2175
- p(
2446
+ g(
2176
2447
  [
2177
- T,
2178
- ye(Ii)
2448
+ m,
2449
+ S(
2450
+ Ne(Li),
2451
+ {
2452
+ value: (e, t) => ({
2453
+ ...e,
2454
+ titleRest: t.text()
2455
+ })
2456
+ }
2457
+ )
2179
2458
  ],
2180
2459
  {
2181
2460
  default: null,
2182
2461
  value: (e) => e[1]
2183
2462
  }
2184
2463
  ),
2185
- p(
2464
+ g(
2186
2465
  [
2187
2466
  i(String.raw` ?\( ?`),
2188
- qe,
2467
+ ae,
2189
2468
  i(String.raw` ?\)`)
2190
2469
  ],
2191
2470
  {
@@ -2193,38 +2472,39 @@ const Oi = p(
2193
2472
  value: (e) => e[1]
2194
2473
  }
2195
2474
  ),
2196
- p(De, { default: "" })
2475
+ g(_e, { default: "" })
2197
2476
  ],
2198
2477
  {
2199
2478
  value: (e) => {
2200
- const { nature: t, type: n } = e[0], { date: a, num: o } = e[2] ?? e[4] ?? {}, { cid: s } = e[3] ?? {};
2201
- if (s === void 0 && a === void 0 && o === void 0)
2479
+ const { nature: t, type: n } = e[0], { date: s, num: o } = e[2] ?? e[4] ?? {}, { cid: a, titleRest: u } = e[3] ?? {};
2480
+ if (a === void 0 && s === void 0 && o === void 0)
2202
2481
  return;
2203
- let u = /* @__PURE__ */ new Set();
2204
- if (a !== void 0) {
2205
- const c = hi[t]?.[a];
2206
- c !== void 0 && (u = u.size === 0 ? new Set(c) : u.intersection(new Set(c)));
2482
+ let p = /* @__PURE__ */ new Set();
2483
+ if (s !== void 0) {
2484
+ const c = Ai[t]?.[s];
2485
+ c !== void 0 && (p = p.size === 0 ? new Set(c) : p.intersection(new Set(c)));
2207
2486
  }
2208
2487
  if (o !== void 0) {
2209
- const c = Li[t]?.[o];
2210
- c !== void 0 && (u = u.size === 0 ? new Set(c) : u.intersection(new Set(c)));
2488
+ const c = Ri[t]?.[o];
2489
+ c !== void 0 && (p = p.size === 0 ? new Set(c) : p.intersection(new Set(c)));
2211
2490
  }
2212
- if (s !== void 0) {
2213
- const c = Array.isArray(s) ? s : [s];
2214
- u = u.size === 0 ? new Set(c) : u.intersection(
2491
+ if (a !== void 0) {
2492
+ const c = Array.isArray(a) ? a : [a];
2493
+ p = p.size === 0 ? new Set(c) : p.intersection(
2215
2494
  new Set(
2216
- c.filter((g) => ce[g].nature === t)
2495
+ c.filter((h) => ge[h].nature === t)
2217
2496
  )
2218
2497
  );
2219
2498
  }
2220
- const f = u.size === 1 ? u.values().next().value : void 0, d = f === void 0 ? void 0 : ce[f];
2499
+ const f = p.size === 1 ? p.values().next().value : void 0, d = f === void 0 ? void 0 : ge[f];
2221
2500
  return Object.fromEntries(
2222
2501
  Object.entries({
2223
2502
  cid: f,
2224
- date: a,
2503
+ date: s,
2225
2504
  nature: t ?? d?.nature,
2226
2505
  num: o,
2227
2506
  title: d?.title,
2507
+ titleRest: u,
2228
2508
  type: n
2229
2509
  }).filter(([, c]) => c !== void 0)
2230
2510
  );
@@ -2233,51 +2513,52 @@ const Oi = p(
2233
2513
  ),
2234
2514
  l(
2235
2515
  [
2236
- ye(mi),
2237
- p(De, { default: "" })
2516
+ Ne(bi),
2517
+ g(_e, { default: "" })
2238
2518
  ],
2239
2519
  {
2240
2520
  value: (e) => {
2241
- const { cid: t } = e[0], n = typeof t == "string" ? ce[t] : void 0;
2521
+ const { cid: t } = e[0], n = typeof t == "string" ? ge[t] : void 0;
2242
2522
  return Object.fromEntries(
2243
2523
  Object.entries({
2244
2524
  cid: t,
2245
2525
  ...n ?? {},
2246
2526
  type: "texte"
2247
- }).filter(([, a]) => a !== void 0)
2527
+ }).filter(([, s]) => s !== void 0)
2248
2528
  );
2249
2529
  }
2250
2530
  }
2251
2531
  )
2252
- ), Xi = l(
2532
+ ), Oi = l(
2253
2533
  [
2254
- fe,
2534
+ me,
2255
2535
  i("/"),
2256
- fe,
2257
- p(i(" ?/ ?(CEE?)", { value: (e) => e[1] }), {
2536
+ me,
2537
+ g(i(" ?/ ?(CEE?)", { value: (e) => e[1] }), {
2258
2538
  default: ""
2259
2539
  })
2260
2540
  ],
2261
2541
  {
2262
2542
  value: (e) => `${e[0]}/${e[2]}${e[3] ? `/${e[3]}` : ""}`
2263
2543
  }
2264
- ), Gi = l(
2265
- [p(Be, { default: "" }), Xi],
2544
+ ), Ei = l(
2545
+ [g(We, { default: "" }), Oi],
2266
2546
  { value: (e) => e[1] }
2267
- ), yi = r(
2268
- l([Gi, p(rt, { default: "" })], {
2269
- value: (e) => e[1] ? { date: e[1], num: e[0] } : { num: e[0] }
2547
+ ), Ni = r(
2548
+ l([Ei, g(It, { default: null })], {
2549
+ value: (e) => e[1] === null ? { num: e[0] } : {
2550
+ ...e[1],
2551
+ num: e[0]
2552
+ }
2270
2553
  }),
2271
- O(Oe, {
2272
- value: (e) => ({ date: e })
2273
- })
2274
- ), ct = l(
2554
+ Ce
2555
+ ), St = l(
2275
2556
  [
2276
2557
  r(
2277
2558
  i("directive", { flags: "i", value: "DIRECTIVE_EURO" }),
2278
2559
  i("règlement", { flags: "i", value: "REGLEMENTEUROPEEN" })
2279
2560
  ),
2280
- p(i(String.raw` \(UE\)`, { flags: "i" }), { default: "" })
2561
+ g(i(String.raw` \(UE\)`, { flags: "i" }), { default: "" })
2281
2562
  ],
2282
2563
  {
2283
2564
  value: (e) => ({
@@ -2286,35 +2567,35 @@ const Oi = p(
2286
2567
  type: "texte"
2287
2568
  })
2288
2569
  }
2289
- ), $e = l(
2290
- [ct, T, yi],
2570
+ ), He = l(
2571
+ [St, m, Ni],
2291
2572
  {
2292
2573
  value: (e) => ({
2293
2574
  ...e[2],
2294
2575
  ...e[0]
2295
2576
  })
2296
2577
  }
2297
- ), Me = i("convention", {
2578
+ ), ze = i("convention", {
2298
2579
  flags: "i",
2299
2580
  value: {
2300
2581
  nature: "CONVENTION",
2301
2582
  legislation: "international",
2302
2583
  type: "texte"
2303
2584
  }
2304
- }), xi = l(
2585
+ }), Pi = l(
2305
2586
  [
2306
- p(ue, { default: !1 }),
2587
+ g(pe, { default: !1 }),
2307
2588
  r(
2308
2589
  l(
2309
2590
  [
2310
- Le,
2311
- T,
2591
+ Ae,
2592
+ m,
2312
2593
  r(
2313
- we,
2314
- $e,
2315
- Me,
2316
- dt,
2317
- ct
2594
+ Be,
2595
+ He,
2596
+ ze,
2597
+ oe,
2598
+ St
2318
2599
  )
2319
2600
  ],
2320
2601
  {
@@ -2324,9 +2605,9 @@ const Oi = p(
2324
2605
  })
2325
2606
  }
2326
2607
  ),
2327
- we,
2328
- $e,
2329
- Me
2608
+ Be,
2609
+ He,
2610
+ ze
2330
2611
  )
2331
2612
  ],
2332
2613
  {
@@ -2339,78 +2620,78 @@ const Oi = p(
2339
2620
  return t.currentText = n, n;
2340
2621
  }
2341
2622
  }
2342
- ), bi = r(ei, pi), Te = r(ii, ui, xi), pt = l(
2623
+ ), wi = r(ri, Ti), ye = r(fi, yi, Pi), Tt = l(
2343
2624
  [
2344
- bi,
2345
- G(
2346
- l([re, Te], {
2625
+ wi,
2626
+ R(
2627
+ l([de, ye], {
2347
2628
  value: (e) => e[1]
2348
2629
  })
2349
2630
  )
2350
2631
  ],
2351
2632
  {
2352
- value: (e, t) => se(
2633
+ value: (e, t) => re(
2353
2634
  e[0],
2354
2635
  e[1],
2355
2636
  t.position()
2356
2637
  )
2357
2638
  }
2358
- ), ft = l(
2639
+ ), bt = l(
2359
2640
  [
2360
- Te,
2361
- G(
2362
- l([re, Te], {
2641
+ ye,
2642
+ R(
2643
+ l([de, ye], {
2363
2644
  value: (e) => e[1]
2364
2645
  })
2365
2646
  )
2366
2647
  ],
2367
2648
  {
2368
- value: (e, t) => se(
2649
+ value: (e, t) => re(
2369
2650
  e[0],
2370
2651
  e[1],
2371
2652
  t.position()
2372
2653
  )
2373
2654
  }
2374
- ), Si = l(
2375
- [Je, pt],
2655
+ ), $i = l(
2656
+ [ot, Tt],
2376
2657
  { value: (e) => e[1] }
2377
- ), Di = l(
2378
- [re, ft],
2658
+ ), _i = l(
2659
+ [de, bt],
2379
2660
  { value: (e) => e[1] }
2380
- ), gt = r(
2381
- Di,
2382
- Si
2383
- ), Ai = r(
2661
+ ), Lt = r(
2662
+ _i,
2663
+ $i
2664
+ ), Di = r(
2384
2665
  l(
2385
- [Vt, p(gt, { default: null })],
2666
+ [ei, g(Lt, { default: null })],
2386
2667
  {
2387
2668
  value: (e) => {
2388
2669
  const t = e[0], n = e[1];
2389
- return n === null ? t : D(n, t);
2670
+ return n === null ? t : P(n, t);
2390
2671
  }
2391
2672
  }
2392
2673
  ),
2393
- pt
2394
- ), Ni = r(
2674
+ Tt
2675
+ ), qi = r(
2395
2676
  l(
2396
- [Wt, p(gt, { default: null })],
2677
+ [ti, g(Lt, { default: null })],
2397
2678
  {
2398
2679
  value: (e) => {
2399
2680
  const t = e[0], n = e[1];
2400
- return n === null ? t : D(n, t);
2681
+ return n === null ? t : P(n, t);
2401
2682
  }
2402
2683
  }
2403
2684
  ),
2404
- ft
2405
- ), Ri = l(
2685
+ bt
2686
+ ), Mi = l(
2406
2687
  [
2407
2688
  l(
2408
2689
  [
2409
- Ve,
2410
- Ai,
2411
- p(
2690
+ nt,
2691
+ Di,
2692
+ g(
2412
2693
  [
2413
- p(i(" modifiée?s", { flags: "i" }), { default: "" }),
2694
+ g(i(" modifiée?s", { flags: "i" }), { default: "" }),
2414
2695
  i(" susvisée?s", { flags: "i" })
2415
2696
  ],
2416
2697
  { default: "" }
@@ -2424,7 +2705,7 @@ const Oi = p(
2424
2705
  })
2425
2706
  }
2426
2707
  ),
2427
- p(je, { default: null })
2708
+ g(Ye, { default: null })
2428
2709
  ],
2429
2710
  {
2430
2711
  value: (e, t) => e[1] === null ? e[0] : {
@@ -2434,15 +2715,15 @@ const Oi = p(
2434
2715
  type: "reference_et_action"
2435
2716
  }
2436
2717
  }
2437
- ), Pi = l(
2718
+ ), Fi = l(
2438
2719
  [
2439
2720
  l(
2440
2721
  [
2441
- We,
2442
- Ni,
2443
- p(
2722
+ st,
2723
+ qi,
2724
+ g(
2444
2725
  [
2445
- p(i(" modifiée?", { flags: "i" }), { default: "" }),
2726
+ g(i(" modifiée?", { flags: "i" }), { default: "" }),
2446
2727
  i(" susvisée?", { flags: "i" })
2447
2728
  ],
2448
2729
  { default: "" }
@@ -2450,7 +2731,7 @@ const Oi = p(
2450
2731
  // optional(regExp(String.raw` \([^)]+\)`, { flags: "i" }), {
2451
2732
  // default: "",
2452
2733
  // }),
2453
- p(i(String.raw`, ?qui devient [^,]+ ","`, { flags: "i" }), {
2734
+ g(i(String.raw`, ?qui devient [^,]+ ","`, { flags: "i" }), {
2454
2735
  default: ""
2455
2736
  })
2456
2737
  ],
@@ -2461,7 +2742,7 @@ const Oi = p(
2461
2742
  })
2462
2743
  }
2463
2744
  ),
2464
- p(je, { default: null })
2745
+ g(Ye, { default: null })
2465
2746
  ],
2466
2747
  {
2467
2748
  value: (e, t) => e[1] === null ? e[0] : {
@@ -2471,54 +2752,54 @@ const Oi = p(
2471
2752
  type: "reference_et_action"
2472
2753
  }
2473
2754
  }
2474
- ), _e = r(
2475
- Pi,
2476
- Ri
2477
- ), ln = l(
2755
+ ), Ve = r(
2756
+ Fi,
2757
+ Mi
2758
+ ), Ui = l(
2478
2759
  [
2479
- _e,
2480
- G([
2481
- r(Bt, M),
2482
- _e
2760
+ Ve,
2761
+ R([
2762
+ r(Yt, j),
2763
+ Ve
2483
2764
  ])
2484
2765
  ],
2485
2766
  {
2486
- value: (e, t) => $(
2767
+ value: (e, t) => U(
2487
2768
  e[0],
2488
2769
  e[1],
2489
2770
  t.position()
2490
2771
  )
2491
2772
  }
2492
- ), ve = /^<\/?(!DOCTYPE|\?XML|[A-Z][A-Z0-9]*)/i;
2493
- function qi(e, t) {
2773
+ ), xe = /^<\/?(!DOCTYPE|\?XML|[A-Z][A-Z0-9]*)/i;
2774
+ function ji(e, t) {
2494
2775
  return (n) => {
2495
- const a = [];
2776
+ const s = [];
2496
2777
  let o = n;
2497
- for (const s of t) {
2498
- const u = s(o);
2499
- (u.transformations !== void 0 || u.sourceMap.length !== 0) && (a.push(u), o = u.output);
2778
+ for (const a of t) {
2779
+ const u = a(o);
2780
+ (u.transformations !== void 0 || u.sourceMap.length !== 0) && (s.push(u), o = u.output);
2500
2781
  }
2501
- return { input: n, output: o, title: e, transformations: a };
2782
+ return { input: n, output: o, title: e, transformations: s };
2502
2783
  };
2503
2784
  }
2504
- function* Xe(e) {
2785
+ function* Oe(e) {
2505
2786
  if (e.transformations === void 0)
2506
2787
  yield e;
2507
2788
  else
2508
2789
  for (const t of e.transformations)
2509
- yield* Xe(t);
2790
+ yield* Oe(t);
2510
2791
  }
2511
- function* wi(e) {
2792
+ function* ki(e) {
2512
2793
  const t = [
2513
- ...Xe(e)
2794
+ ...Oe(e)
2514
2795
  ].reverse();
2515
2796
  let n = {
2516
2797
  position: { start: 0, stop: 0 }
2517
2798
  };
2518
- const a = t.map(
2519
- (s) => {
2520
- const u = $i(
2521
- s
2799
+ const s = t.map(
2800
+ (a) => {
2801
+ const u = Bi(
2802
+ a
2522
2803
  );
2523
2804
  return u.next(n), u;
2524
2805
  }
@@ -2528,19 +2809,19 @@ function* wi(e) {
2528
2809
  n = {
2529
2810
  position: o
2530
2811
  };
2531
- for (const s of a) {
2532
- const u = s.next(n);
2812
+ for (const a of s) {
2813
+ const u = a.next(n);
2533
2814
  if (u.done)
2534
2815
  return;
2535
2816
  n = u.value;
2536
2817
  }
2537
2818
  o = yield n;
2538
2819
  }
2539
- for (const s of a)
2540
- s.next(void 0);
2820
+ for (const a of s)
2821
+ a.next(void 0);
2541
2822
  }
2542
- function* $i(e) {
2543
- let t, n = "looking_for_start_segment", a = yield {
2823
+ function* Bi(e) {
2824
+ let t, n = "looking_for_start_segment", s = yield {
2544
2825
  position: { start: 0, stop: 0 }
2545
2826
  };
2546
2827
  const o = [
@@ -2553,35 +2834,35 @@ function* $i(e) {
2553
2834
  outputLength: 0
2554
2835
  }
2555
2836
  ];
2556
- for (const [s, u] of o.entries())
2557
- for (let f = !1; !f; ) {
2558
- if (a === void 0)
2837
+ for (const [a, u] of o.entries())
2838
+ for (let p = !1; !p; ) {
2839
+ if (s === void 0)
2559
2840
  return;
2560
- let { position: d } = a, c, g, m, E;
2841
+ let { position: f } = s, d, c, h, v;
2561
2842
  switch (n) {
2562
2843
  case "looking_for_start_segment": {
2563
- const X = o[s + 1];
2564
- X !== void 0 && X.outputIndex + X.outputLength <= d.start ? f = !0 : (t = s, n = "looking_for_stop_segment");
2844
+ const y = o[a + 1];
2845
+ y !== void 0 && y.outputIndex + y.outputLength <= f.start ? p = !0 : (t = a, n = "looking_for_stop_segment");
2565
2846
  break;
2566
2847
  }
2567
2848
  case "looking_for_stop_segment": {
2568
- if (u.outputIndex < d.stop)
2569
- f = !0;
2849
+ if (u.outputIndex < f.stop)
2850
+ p = !0;
2570
2851
  else {
2571
- const X = o[t], P = s, I = u;
2572
- let h = d.start < X.outputIndex + X.outputLength ? t : t + 1, v = d.stop > I.outputIndex ? P : P - 1;
2573
- for (let U = !0; U; ) {
2574
- U = !1, c = void 0, g = void 0, m = void 0, E = void 0;
2575
- for (let Q = h; Q <= v; Q++) {
2576
- const _ = o[Q].matchingSegmentIndex;
2577
- if (_ !== void 0) {
2578
- if (_ + 1 < h) {
2579
- let k = !1;
2580
- const N = o[_ + 1];
2581
- if (N.openingTag !== void 0 && N.outputIndex + N.outputLength < d.start) {
2582
- const z = N.openingTag.match(ve);
2583
- if (z !== null) {
2584
- const q = z[1], K = q.toUpperCase();
2852
+ const y = o[t], q = a, x = u;
2853
+ let T = f.start < y.outputIndex + y.outputLength ? t : t + 1, I = f.stop > x.outputIndex ? q : q - 1;
2854
+ for (let B = !0; B; ) {
2855
+ B = !1, d = void 0, c = void 0, h = void 0, v = void 0;
2856
+ for (let ee = T; ee <= I; ee++) {
2857
+ const k = o[ee].matchingSegmentIndex;
2858
+ if (k !== void 0) {
2859
+ if (k + 1 < T) {
2860
+ let z = !1;
2861
+ const $ = o[k + 1];
2862
+ if ($.openingTag !== void 0 && $.outputIndex + $.outputLength < f.start) {
2863
+ const V = $.openingTag.match(xe);
2864
+ if (V !== null) {
2865
+ const M = V[1], te = M.toUpperCase();
2585
2866
  [
2586
2867
  "B",
2587
2868
  "EM",
@@ -2590,24 +2871,24 @@ function* $i(e) {
2590
2871
  "STRONG",
2591
2872
  "SUB",
2592
2873
  "SUP"
2593
- ].includes(K) && (m = `${m ?? ""}</${q}>`, c = `${N.openingTag}${c ?? ""}`, k = !0);
2874
+ ].includes(te) && (h = `${h ?? ""}</${M}>`, d = `${$.openingTag}${d ?? ""}`, z = !0);
2594
2875
  }
2595
2876
  }
2596
- if (!k) {
2597
- c = void 0, m = void 0, h = _ + 1, d = {
2598
- start: o[h].outputIndex,
2599
- stop: d.stop
2600
- }, U = !0;
2877
+ if (!z) {
2878
+ d = void 0, h = void 0, T = k + 1, f = {
2879
+ start: o[T].outputIndex,
2880
+ stop: f.stop
2881
+ }, B = !0;
2601
2882
  break;
2602
2883
  }
2603
2884
  }
2604
- if (_ + 1 > v) {
2605
- let k = !1;
2606
- const N = o[Q], z = o[_ + 1];
2607
- if (N.openingTag !== void 0 && d.stop < z.outputIndex) {
2608
- const q = N.openingTag.match(ve);
2609
- if (q !== null) {
2610
- const K = q[1], Tt = K.toUpperCase();
2885
+ if (k + 1 > I) {
2886
+ let z = !1;
2887
+ const $ = o[ee], V = o[k + 1];
2888
+ if ($.openingTag !== void 0 && f.stop < V.outputIndex) {
2889
+ const M = $.openingTag.match(xe);
2890
+ if (M !== null) {
2891
+ const te = M[1], Ct = te.toUpperCase();
2611
2892
  [
2612
2893
  "B",
2613
2894
  "EM",
@@ -2616,68 +2897,68 @@ function* $i(e) {
2616
2897
  "STRONG",
2617
2898
  "SUB",
2618
2899
  "SUP"
2619
- ].includes(Tt) && (g = `${g ?? ""}</${K}>`, E = `${N.openingTag}${E ?? ""}`, k = !0);
2900
+ ].includes(Ct) && (c = `${c ?? ""}</${te}>`, v = `${$.openingTag}${v ?? ""}`, z = !0);
2620
2901
  }
2621
2902
  }
2622
- if (!k) {
2623
- g = void 0, E = void 0, v = _ + 1;
2624
- const q = o[v];
2625
- d = {
2626
- start: d.start,
2627
- stop: q.outputIndex + q.outputLength
2628
- }, U = !0;
2903
+ if (!z) {
2904
+ c = void 0, v = void 0, I = k + 1;
2905
+ const M = o[I];
2906
+ f = {
2907
+ start: f.start,
2908
+ stop: M.outputIndex + M.outputLength
2909
+ }, B = !0;
2629
2910
  break;
2630
2911
  }
2631
2912
  }
2632
2913
  }
2633
2914
  }
2634
2915
  }
2635
- const L = o[h - 1], A = L.inputIndex + L.inputLength + d.start - (L.outputIndex + L.outputLength), x = o[v], Et = x.inputIndex + x.inputLength + d.stop - (x.outputIndex + x.outputLength);
2636
- a = yield Object.fromEntries(
2916
+ const b = o[T - 1], w = b.inputIndex + b.inputLength + f.start - (b.outputIndex + b.outputLength), O = o[I], Rt = O.inputIndex + O.inputLength + f.stop - (O.outputIndex + O.outputLength);
2917
+ s = yield Object.fromEntries(
2637
2918
  Object.entries({
2638
- innerPrefix: `${c ?? ""}${a.innerPrefix ?? ""}` || void 0,
2639
- innerSuffix: `${a.innerSuffix ?? ""}${g ?? ""}` || void 0,
2640
- outerPrefix: `${a.outerPrefix ?? ""}${m ?? ""}` || void 0,
2641
- outerSuffix: `${E ?? ""}${a.outerSuffix ?? ""}` || void 0,
2919
+ innerPrefix: `${d ?? ""}${s.innerPrefix ?? ""}` || void 0,
2920
+ innerSuffix: `${s.innerSuffix ?? ""}${c ?? ""}` || void 0,
2921
+ outerPrefix: `${s.outerPrefix ?? ""}${h ?? ""}` || void 0,
2922
+ outerSuffix: `${v ?? ""}${s.outerSuffix ?? ""}` || void 0,
2642
2923
  position: {
2643
- start: A,
2644
- stop: Et
2924
+ start: w,
2925
+ stop: Rt
2645
2926
  }
2646
- }).filter(([, U]) => U !== void 0)
2927
+ }).filter(([, B]) => B !== void 0)
2647
2928
  ), n = "looking_for_start_segment";
2648
2929
  }
2649
2930
  break;
2650
2931
  }
2651
2932
  default:
2652
- ae(
2933
+ Y(
2653
2934
  "iterOriginalMergedPositionsFromTransformedUsingTransformationLeaf.state",
2654
2935
  n
2655
2936
  );
2656
2937
  }
2657
2938
  }
2658
2939
  }
2659
- function rn(e, t) {
2660
- const n = wi(e);
2661
- return n.next({ start: 0, stop: 0 }), t.map((a) => {
2662
- const o = n.next(a);
2940
+ function Hi(e, t) {
2941
+ const n = ki(e);
2942
+ return n.next({ start: 0, stop: 0 }), t.map((s) => {
2943
+ const o = n.next(s);
2663
2944
  if (o.done)
2664
2945
  throw new Error(
2665
- `Reverse transformation of position failed: ${a}`
2946
+ `Reverse transformation of position failed: ${s}`
2666
2947
  );
2667
2948
  return o.value;
2668
2949
  });
2669
2950
  }
2670
- function un(e, t) {
2951
+ function gn(e, t) {
2671
2952
  for (const { sourceMap: n } of [
2672
- ...Xe(e)
2953
+ ...Oe(e)
2673
2954
  ].reverse())
2674
- t = Mi(
2955
+ t = zi(
2675
2956
  n,
2676
2957
  t
2677
2958
  );
2678
2959
  return t;
2679
2960
  }
2680
- function Mi(e, t) {
2961
+ function zi(e, t) {
2681
2962
  const n = [];
2682
2963
  e = [
2683
2964
  { inputIndex: 0, inputLength: 0, outputIndex: 0, outputLength: 0 },
@@ -2689,57 +2970,158 @@ function Mi(e, t) {
2689
2970
  outputLength: 0
2690
2971
  }
2691
2972
  ];
2692
- let a = 0, o = e[a];
2693
- for (const s of t) {
2694
- let { start: u } = s;
2695
- const { stop: f } = s;
2696
- e: for (let d = !1; !d; ) {
2697
- for (; o.outputIndex + o.outputLength <= u; a++, o = e[a]) ;
2698
- let c = a;
2699
- const g = e[c - 1];
2700
- let m = g.inputIndex + g.inputLength + u - (g.outputIndex + g.outputLength), E;
2701
- for (E = c - 1; e[E + 1].outputIndex < f; E++) ;
2702
- const X = e[E];
2703
- let P = X.inputIndex + X.inputLength + f - (X.outputIndex + X.outputLength);
2704
- for (let I = c; I <= E; I++) {
2705
- const h = e[I], v = h.matchingSegmentIndex;
2706
- if (v !== void 0) {
2707
- if (v + 1 < c) {
2708
- const L = e[v + 1];
2709
- if (L.outputIndex < u) {
2710
- h.inputIndex > m && n.push({
2711
- start: m,
2712
- stop: h.inputIndex
2713
- }), u = h.outputIndex + h.outputLength;
2714
- for (let A = I, x = h; x.outputIndex + x.outputLength === u; A++, x = e[A])
2715
- a = A;
2973
+ let s = 0, o = e[s];
2974
+ for (const a of t) {
2975
+ let { start: u } = a;
2976
+ const { stop: p } = a;
2977
+ e: for (let f = !1; !f; ) {
2978
+ for (; o.outputIndex + o.outputLength <= u; s++, o = e[s]) ;
2979
+ let d = s;
2980
+ const c = e[d - 1];
2981
+ let h = c.inputIndex + c.inputLength + u - (c.outputIndex + c.outputLength), v;
2982
+ for (v = d - 1; e[v + 1].outputIndex < p; v++) ;
2983
+ const y = e[v];
2984
+ let q = y.inputIndex + y.inputLength + p - (y.outputIndex + y.outputLength);
2985
+ for (let x = d; x <= v; x++) {
2986
+ const T = e[x], I = T.matchingSegmentIndex;
2987
+ if (I !== void 0) {
2988
+ if (I + 1 < d) {
2989
+ const b = e[I + 1];
2990
+ if (b.outputIndex < u) {
2991
+ T.inputIndex > h && n.push({
2992
+ start: h,
2993
+ stop: T.inputIndex
2994
+ }), u = T.outputIndex + T.outputLength;
2995
+ for (let w = x, O = T; O.outputIndex + O.outputLength === u; w++, O = e[w])
2996
+ s = w;
2716
2997
  continue e;
2717
2998
  }
2718
- c = v + 1, m = L.inputIndex;
2719
- } else if (v + 1 > E) {
2720
- const L = e[v + 1];
2721
- if (L.outputIndex + L.outputLength > f) {
2722
- h.inputIndex > m && n.push({
2723
- start: m,
2724
- stop: h.inputIndex
2725
- }), u = h.outputIndex + h.outputLength;
2726
- for (let A = I, x = h; x.outputIndex + x.outputLength === u; A++, x = e[A])
2727
- a = A;
2999
+ d = I + 1, h = b.inputIndex;
3000
+ } else if (I + 1 > v) {
3001
+ const b = e[I + 1];
3002
+ if (b.outputIndex + b.outputLength > p) {
3003
+ T.inputIndex > h && n.push({
3004
+ start: h,
3005
+ stop: T.inputIndex
3006
+ }), u = T.outputIndex + T.outputLength;
3007
+ for (let w = x, O = T; O.outputIndex + O.outputLength === u; w++, O = e[w])
3008
+ s = w;
2728
3009
  continue e;
2729
3010
  }
2730
- E = v + 1, P = L.inputIndex + L.inputLength;
3011
+ v = I + 1, q = b.inputIndex + b.inputLength;
2731
3012
  }
2732
3013
  }
2733
3014
  }
2734
3015
  n.push({
2735
- start: m,
2736
- stop: P
2737
- }), d = !0;
3016
+ start: h,
3017
+ stop: q
3018
+ }), f = !0;
2738
3019
  }
2739
3020
  }
2740
3021
  return n;
2741
3022
  }
2742
- const _i = {
3023
+ function* Vi(e, t) {
3024
+ const n = Ft(e, t), s = new Ge(n.output);
3025
+ for (let o of At(s)) {
3026
+ o = structuredClone(o);
3027
+ for (const a of _(o)) {
3028
+ const u = a.position;
3029
+ if (u === void 0)
3030
+ continue;
3031
+ const p = Hi(
3032
+ n,
3033
+ [u]
3034
+ );
3035
+ if (p.length !== 1)
3036
+ throw new Error(
3037
+ `Reverse transformation of position in citation to absolute position failed: ${u} has been tranformed to ${p}`
3038
+ );
3039
+ a.position = p[0].position;
3040
+ }
3041
+ yield o;
3042
+ }
3043
+ }
3044
+ function* At(e) {
3045
+ let t;
3046
+ const n = new RegExp(
3047
+ String.raw`
3048
+ (?:
3049
+ ^ # début de ligne
3050
+ (?:
3051
+ # Référence à un texte
3052
+ arrêtés?
3053
+ |circulaires?
3054
+ |code
3055
+ |constitution
3056
+ |décret-loi
3057
+ |décrets?
3058
+ # Note : "|livre des procédures fiscales" est traité par la définition de "livre" ci-dessous.
3059
+ |loi
3060
+ |ordonnance
3061
+
3062
+ # Définition d'un article ou d'une division
3063
+ |art\.
3064
+ |chapitre
3065
+ |livre
3066
+ |paragraphe
3067
+ |partie"
3068
+ |section
3069
+ |sous-paragraphe
3070
+ |sous-section
3071
+ |sous-sous-paragraphe
3072
+ |sous-titre
3073
+ |titre
3074
+ )
3075
+ (?= )
3076
+ )
3077
+ |(?<=^|\P{Alphabetic})(?:
3078
+ (?:«) # citation
3079
+ |(?:au|le|du)(?:dit)?(?= )
3080
+ |(?:[àa] +)?la(?:dite)?(?= )
3081
+ |(?:[àa] +)?(?:l')
3082
+ |(?:aux|les|des)(?:dits)?(?= )
3083
+ )
3084
+ `.replace(/\s+#.*$/gm, "").replace(/^\s+/gm, "").replace(/\n/g, "").replace(/\\n/g, `
3085
+ `),
3086
+ "gimv"
3087
+ );
3088
+ for (; (t = n.exec(e.input)) !== null; ) {
3089
+ const s = t.index;
3090
+ if (e.offset = s, t[0] === "«") {
3091
+ const o = F(e);
3092
+ if (o === void 0)
3093
+ continue;
3094
+ yield* Vi(e, o), n.lastIndex = o.position.stop;
3095
+ } else if (t[0].toLowerCase() === "art.") {
3096
+ const o = si(e);
3097
+ if (o === void 0)
3098
+ continue;
3099
+ yield o, n.lastIndex = o.position.stop;
3100
+ } else if ([
3101
+ "chapitre",
3102
+ "livre",
3103
+ "paragraphe",
3104
+ "partie",
3105
+ "section",
3106
+ "sous-paragraphe",
3107
+ "sous-section",
3108
+ "sous-sous-paragraphe",
3109
+ "sous-titre",
3110
+ "titre"
3111
+ ].includes(t[0].toLowerCase())) {
3112
+ const o = hi(e);
3113
+ if (o === void 0)
3114
+ continue;
3115
+ yield o, n.lastIndex = o.position.stop;
3116
+ } else {
3117
+ const o = Ui(e);
3118
+ if (o === void 0)
3119
+ continue;
3120
+ yield o, n.lastIndex = o.position.stop;
3121
+ }
3122
+ }
3123
+ }
3124
+ const vn = (e) => [...At(e)], Gi = {
2743
3125
  amp: "&",
2744
3126
  apos: "'",
2745
3127
  asymp: "≈",
@@ -2757,38 +3139,38 @@ const _i = {
2757
3139
  reg: "®",
2758
3140
  trade: "™"
2759
3141
  };
2760
- function Fi({
3142
+ function Xi({
2761
3143
  removeAWithHref: e
2762
3144
  } = {}) {
2763
3145
  return (t) => {
2764
- let n = 0, a = 0, o = [], s = [];
2765
- const u = [], f = "Conversion des éléments HTML en texte";
3146
+ let n = 0, s = 0, o = [], a = [];
3147
+ const u = [], p = "Conversion des éléments HTML en texte";
2766
3148
  for (; n < t.length; ) {
2767
- const d = t.indexOf("<", n);
2768
- if (d === -1)
3149
+ const f = t.indexOf("<", n);
3150
+ if (f === -1)
2769
3151
  return o.push(t.slice(n).replace(/[\n\r]/g, " ")), {
2770
3152
  input: t,
2771
3153
  output: o.join(""),
2772
- sourceMap: s,
2773
- title: f
3154
+ sourceMap: a,
3155
+ title: p
2774
3156
  };
2775
- const c = t.indexOf(">", d);
2776
- if (c === -1)
3157
+ const d = t.indexOf(">", f);
3158
+ if (d === -1)
2777
3159
  return o.push(t.slice(n).replace(/[\n\r]/g, " ")), {
2778
3160
  input: t,
2779
3161
  output: o.join(""),
2780
- sourceMap: s,
2781
- title: f
3162
+ sourceMap: a,
3163
+ title: p
2782
3164
  };
2783
- const g = t.slice(d, c + 1), m = g.startsWith("</"), E = g.length, X = g.match(ve);
2784
- if (X === null) {
3165
+ const c = t.slice(f, d + 1), h = c.startsWith("</"), v = c.length, y = c.match(xe);
3166
+ if (y === null) {
2785
3167
  o.push(
2786
- t.slice(n, c + 1).replace(/[\n\r]/g, " ")
2787
- ), n = c + 1;
3168
+ t.slice(n, d + 1).replace(/[\n\r]/g, " ")
3169
+ ), n = d + 1;
2788
3170
  continue;
2789
3171
  }
2790
- const I = X[1].toUpperCase();
2791
- if (g.endsWith("/>") || [
3172
+ const x = y[1].toUpperCase();
3173
+ if (c.endsWith("/>") || [
2792
3174
  "!DOCTYPE",
2793
3175
  "?XML",
2794
3176
  "AREA",
@@ -2805,100 +3187,100 @@ function Fi({
2805
3187
  "SOURCE",
2806
3188
  "TRACK",
2807
3189
  "WBR"
2808
- ].includes(I))
2809
- if (m)
2810
- d > n && o.push(
2811
- t.slice(n, d).replace(/[\n\r]/g, " ")
2812
- ), s.push({
2813
- inputIndex: d,
2814
- inputLength: E,
2815
- outputIndex: d + a,
3190
+ ].includes(x))
3191
+ if (h)
3192
+ f > n && o.push(
3193
+ t.slice(n, f).replace(/[\n\r]/g, " ")
3194
+ ), a.push({
3195
+ inputIndex: f,
3196
+ inputLength: v,
3197
+ outputIndex: f + s,
2816
3198
  outputLength: 0
2817
- }), a -= E;
2818
- else if (["BR", "HR"].includes(I)) {
2819
- d > n && o.push(
2820
- t.slice(n, d).replace(/[\n\r]/g, " ")
3199
+ }), s -= v;
3200
+ else if (["BR", "HR"].includes(x)) {
3201
+ f > n && o.push(
3202
+ t.slice(n, f).replace(/[\n\r]/g, " ")
2821
3203
  );
2822
- const v = c + 1 - d;
3204
+ const I = d + 1 - f;
2823
3205
  o.push(`
2824
- `), s.push({
2825
- inputIndex: d,
2826
- inputLength: v,
2827
- openingTag: g,
2828
- outputIndex: d + a,
3206
+ `), a.push({
3207
+ inputIndex: f,
3208
+ inputLength: I,
3209
+ openingTag: c,
3210
+ outputIndex: f + s,
2829
3211
  outputLength: 1
2830
- }), a += 1 - v;
2831
- } else ["!DOCTYPE", "?XML", "COL", "IMG", "INPUT"].includes(I) ? (d > n && o.push(
2832
- t.slice(n, d).replace(/[\n\r]/g, " ")
2833
- ), s.push({
2834
- inputIndex: d,
2835
- inputLength: E,
2836
- openingTag: g,
2837
- outputIndex: d + a,
3212
+ }), s += 1 - I;
3213
+ } else ["!DOCTYPE", "?XML", "COL", "IMG", "INPUT"].includes(x) ? (f > n && o.push(
3214
+ t.slice(n, f).replace(/[\n\r]/g, " ")
3215
+ ), a.push({
3216
+ inputIndex: f,
3217
+ inputLength: v,
3218
+ openingTag: c,
3219
+ outputIndex: f + s,
2838
3220
  outputLength: 0
2839
- }), a -= E) : o.push(
2840
- t.slice(n, c + 1).replace(/[\n\r]/g, " ")
3221
+ }), s -= v) : o.push(
3222
+ t.slice(n, d + 1).replace(/[\n\r]/g, " ")
2841
3223
  );
2842
- else if (m) {
2843
- const v = u.at(-1);
2844
- if (I === v?.name)
2845
- switch (u.pop(), v.action) {
3224
+ else if (h) {
3225
+ const I = u.at(-1);
3226
+ if (x === I?.name)
3227
+ switch (u.pop(), I.action) {
2846
3228
  case void 0: {
2847
3229
  o.push(
2848
- t.slice(n, c + 1).replace(/[\n\r]/g, " ")
3230
+ t.slice(n, d + 1).replace(/[\n\r]/g, " ")
2849
3231
  );
2850
3232
  break;
2851
3233
  }
2852
3234
  case "ignore": {
2853
- o = v.outputFragments, a = v.outputOffset, s = v.sourceMap;
2854
- const L = c + 1 - v.inputIndex;
2855
- s.push({
2856
- inputIndex: v.inputIndex,
2857
- inputLength: L,
2858
- outputIndex: v.inputIndex + a,
3235
+ o = I.outputFragments, s = I.outputOffset, a = I.sourceMap;
3236
+ const b = d + 1 - I.inputIndex;
3237
+ a.push({
3238
+ inputIndex: I.inputIndex,
3239
+ inputLength: b,
3240
+ outputIndex: I.inputIndex + s,
2859
3241
  outputLength: 0
2860
- }), a = a - L;
3242
+ }), s = s - b;
2861
3243
  break;
2862
3244
  }
2863
3245
  case "keep_content": {
2864
3246
  o.push(
2865
- t.slice(n, d).replace(/[\n\r]/g, " ")
2866
- ), v.closingTagReplacement.length !== 0 && o.push(v.closingTagReplacement);
2867
- const L = c + 1 - d;
2868
- s[v.openingSegmentIndex].matchingSegmentIndex = s.length, s.push({
2869
- inputIndex: d,
2870
- inputLength: L,
2871
- matchingSegmentIndex: v.openingSegmentIndex,
2872
- outputIndex: d + a,
2873
- outputLength: v.closingTagReplacement.length
2874
- }), a += v.closingTagReplacement.length - L;
3247
+ t.slice(n, f).replace(/[\n\r]/g, " ")
3248
+ ), I.closingTagReplacement.length !== 0 && o.push(I.closingTagReplacement);
3249
+ const b = d + 1 - f;
3250
+ a[I.openingSegmentIndex].matchingSegmentIndex = a.length, a.push({
3251
+ inputIndex: f,
3252
+ inputLength: b,
3253
+ matchingSegmentIndex: I.openingSegmentIndex,
3254
+ outputIndex: f + s,
3255
+ outputLength: I.closingTagReplacement.length
3256
+ }), s += I.closingTagReplacement.length - b;
2875
3257
  break;
2876
3258
  }
2877
3259
  default:
2878
- ae("TagInfos.action", v);
3260
+ Y("TagInfos.action", I);
2879
3261
  }
2880
3262
  else
2881
- d > n && o.push(
2882
- t.slice(n, d).replace(/[\n\r]/g, " ")
2883
- ), s.push({
2884
- inputIndex: d,
2885
- inputLength: E,
2886
- outputIndex: d + a,
3263
+ f > n && o.push(
3264
+ t.slice(n, f).replace(/[\n\r]/g, " ")
3265
+ ), a.push({
3266
+ inputIndex: f,
3267
+ inputLength: v,
3268
+ outputIndex: f + s,
2887
3269
  outputLength: 0
2888
- }), a -= E;
2889
- } else if (["COLGROUP", "HEAD", "SCRIPT", "STYLE"].includes(I) || e && I === "A" && / href=/i.test(g))
2890
- d > n && o.push(
2891
- t.slice(n, d).replace(/[\n\r]/g, " ")
3270
+ }), s -= v;
3271
+ } else if (["COLGROUP", "HEAD", "SCRIPT", "STYLE"].includes(x) || e && x === "A" && / href=/i.test(c))
3272
+ f > n && o.push(
3273
+ t.slice(n, f).replace(/[\n\r]/g, " ")
2892
3274
  ), u.push({
2893
3275
  action: "ignore",
2894
- inputIndex: d,
2895
- name: I,
3276
+ inputIndex: f,
3277
+ name: x,
2896
3278
  // Backup outputFragments, outputOffset & sourceMap, because
2897
3279
  // every changes made inside ignored element will be ignored.
2898
3280
  outputFragments: o,
2899
- outputOffset: a,
2900
- sourceMap: s
2901
- }), o = [], s = [];
3281
+ outputOffset: s,
3282
+ sourceMap: a
3283
+ }), o = [], a = [];
2902
3284
  else if ([
2903
3285
  "A",
2904
3286
  // When removeAWithHref is false or no href
@@ -2918,22 +3300,22 @@ function Fi({
2918
3300
  "THEAD",
2919
3301
  "TR",
2920
3302
  "UL"
2921
- ].includes(I)) {
2922
- d > n && o.push(
2923
- t.slice(n, d).replace(/[\n\r]/g, " ")
3303
+ ].includes(x)) {
3304
+ f > n && o.push(
3305
+ t.slice(n, f).replace(/[\n\r]/g, " ")
2924
3306
  );
2925
- const v = s.length;
2926
- s.push({
2927
- inputIndex: d,
2928
- inputLength: E,
2929
- openingTag: g,
2930
- outputIndex: d + a,
3307
+ const I = a.length;
3308
+ a.push({
3309
+ inputIndex: f,
3310
+ inputLength: v,
3311
+ openingTag: c,
3312
+ outputIndex: f + s,
2931
3313
  outputLength: 0
2932
- }), a -= E, u.push({
3314
+ }), s -= v, u.push({
2933
3315
  action: "keep_content",
2934
3316
  closingTagReplacement: "",
2935
- name: I,
2936
- openingSegmentIndex: v
3317
+ name: x,
3318
+ openingSegmentIndex: I
2937
3319
  });
2938
3320
  } else if ([
2939
3321
  "CAPTION",
@@ -2951,115 +3333,115 @@ function Fi({
2951
3333
  "P",
2952
3334
  "TD",
2953
3335
  "TH"
2954
- ].includes(I)) {
2955
- d > n && o.push(
2956
- t.slice(n, d).replace(/[\n\r]/g, " ")
3336
+ ].includes(x)) {
3337
+ f > n && o.push(
3338
+ t.slice(n, f).replace(/[\n\r]/g, " ")
2957
3339
  ), o.push(`
2958
3340
  `);
2959
- const v = s.length;
2960
- s.push({
2961
- inputIndex: d,
2962
- inputLength: E,
2963
- openingTag: g,
2964
- outputIndex: d + a,
3341
+ const I = a.length;
3342
+ a.push({
3343
+ inputIndex: f,
3344
+ inputLength: v,
3345
+ openingTag: c,
3346
+ outputIndex: f + s,
2965
3347
  outputLength: 1
2966
- }), a += 1 - E, u.push({
3348
+ }), s += 1 - v, u.push({
2967
3349
  action: "keep_content",
2968
3350
  closingTagReplacement: `
2969
3351
  `,
2970
- name: I,
2971
- openingSegmentIndex: v
3352
+ name: x,
3353
+ openingSegmentIndex: I
2972
3354
  });
2973
3355
  } else
2974
3356
  o.push(
2975
- t.slice(n, c + 1).replace(/[\n\r]/g, " ")
3357
+ t.slice(n, d + 1).replace(/[\n\r]/g, " ")
2976
3358
  ), u.push({
2977
- name: I
3359
+ name: x
2978
3360
  });
2979
- n = c + 1;
3361
+ n = d + 1;
2980
3362
  }
2981
3363
  return {
2982
3364
  input: t,
2983
3365
  output: o.join(""),
2984
- sourceMap: s,
2985
- title: f
3366
+ sourceMap: a,
3367
+ title: p
2986
3368
  };
2987
3369
  };
2988
3370
  }
2989
- function Ui(e) {
3371
+ function Wi(e) {
2990
3372
  let t = 0;
2991
- const n = [], a = e.replace(
3373
+ const n = [], s = e.replace(
2992
3374
  /&(amp|apos|asymp|copy|deg|euro|gt|lt|mdash|nbsp|ndash|ne|pound|quot|reg|trade);/gi,
2993
- (o, s, u) => {
2994
- const f = _i[s.toLowerCase()];
3375
+ (o, a, u) => {
3376
+ const p = Gi[a.toLowerCase()];
2995
3377
  return n.push({
2996
3378
  inputIndex: u,
2997
3379
  inputLength: o.length,
2998
3380
  outputIndex: u + t,
2999
- outputLength: f.length
3000
- }), t += f.length - o.length, f;
3381
+ outputLength: p.length
3382
+ }), t += p.length - o.length, p;
3001
3383
  }
3002
3384
  );
3003
3385
  return {
3004
3386
  input: e,
3005
- output: a,
3387
+ output: s,
3006
3388
  sourceMap: n,
3007
3389
  title: "Décodage des entités HTML nommées"
3008
3390
  };
3009
3391
  }
3010
- function Bi(e) {
3392
+ function Yi(e) {
3011
3393
  let t = 0;
3012
- const n = [], a = e.replace(
3394
+ const n = [], s = e.replace(
3013
3395
  /&#(?:(\d+)|x([0-9A-F]+));/gi,
3014
- (o, s, u, f) => {
3015
- const d = parseInt(
3016
- s ?? u,
3017
- s === void 0 ? 16 : 10
3018
- ), c = String.fromCharCode(d);
3396
+ (o, a, u, p) => {
3397
+ const f = parseInt(
3398
+ a ?? u,
3399
+ a === void 0 ? 16 : 10
3400
+ ), d = String.fromCharCode(f);
3019
3401
  return n.push({
3020
- inputIndex: f,
3402
+ inputIndex: p,
3021
3403
  inputLength: o.length,
3022
- outputIndex: f + t,
3023
- outputLength: c.length
3024
- }), t += c.length - o.length, c;
3404
+ outputIndex: p + t,
3405
+ outputLength: d.length
3406
+ }), t += d.length - o.length, d;
3025
3407
  }
3026
3408
  );
3027
3409
  return {
3028
3410
  input: e,
3029
- output: a,
3411
+ output: s,
3030
3412
  sourceMap: n,
3031
3413
  title: "Décodage des entités HTML numériques"
3032
3414
  };
3033
3415
  }
3034
- function ji(e, t) {
3416
+ function Zi(e, t) {
3035
3417
  return (n) => {
3036
- const a = [], o = n.replaceAll(e, (u, ...f) => {
3037
- const d = f.at(-2);
3038
- let c = t;
3039
- for (const [g, m] of f.slice(0, -2).entries())
3040
- c = c.replaceAll(`$${g + 1}`, m);
3041
- return a.push({
3042
- inputIndex: d,
3418
+ const s = [], o = n.replaceAll(e, (u, ...p) => {
3419
+ const f = p.at(-2);
3420
+ let d = t;
3421
+ for (const [c, h] of p.slice(0, -2).entries())
3422
+ d = d.replaceAll(`$${c + 1}`, h);
3423
+ return s.push({
3424
+ inputIndex: f,
3043
3425
  inputLength: u.length,
3044
3426
  // Note: `outputIndex` is added below.
3045
- outputLength: c.length
3046
- }), c;
3427
+ outputLength: d.length
3428
+ }), d;
3047
3429
  });
3048
- let s = 0;
3049
- for (const u of a)
3050
- u.outputIndex = u.inputIndex + s, s += u.outputLength - u.inputLength;
3430
+ let a = 0;
3431
+ for (const u of s)
3432
+ u.outputIndex = u.inputIndex + a, a += u.outputLength - u.inputLength;
3051
3433
  return {
3052
3434
  input: n,
3053
3435
  output: o,
3054
- sourceMap: a,
3436
+ sourceMap: s,
3055
3437
  title: `Remplacement de ${e} par ${JSON.stringify(t)}`
3056
3438
  };
3057
3439
  };
3058
3440
  }
3059
- function ki(e) {
3441
+ function Qi(e) {
3060
3442
  const t = [];
3061
3443
  let n = e;
3062
- for (const [a, o] of [
3444
+ for (const [s, o] of [
3063
3445
  // Note: The most englobing patterns must be first.
3064
3446
  // Remove HTML comment.
3065
3447
  [/<!--.*?-->/gs, ""],
@@ -3079,8 +3461,8 @@ function ki(e) {
3079
3461
  // - \uF061-\uF06A are right-half circled numbers 0-9.
3080
3462
  [/[\uF031-\uF039\uF041-\uF054\uF061-\uF06A]/g, ""]
3081
3463
  ]) {
3082
- const s = ji(a, o)(n);
3083
- s.sourceMap.length !== 0 && (t.push(s), n = s.output);
3464
+ const a = Zi(s, o)(n);
3465
+ a.sourceMap.length !== 0 && (t.push(a), n = a.output);
3084
3466
  }
3085
3467
  return {
3086
3468
  input: e,
@@ -3089,22 +3471,22 @@ function ki(e) {
3089
3471
  transformations: t
3090
3472
  };
3091
3473
  }
3092
- function dn({
3474
+ function mn({
3093
3475
  removeAWithHref: e
3094
3476
  } = {}) {
3095
- return (t) => qi("Simplification du HTML", [
3096
- Ui,
3097
- Bi,
3098
- ki,
3099
- Hi,
3100
- Fi({ removeAWithHref: e }),
3101
- zi
3477
+ return (t) => ji("Simplification du HTML", [
3478
+ Wi,
3479
+ Yi,
3480
+ Qi,
3481
+ Ji,
3482
+ Xi({ removeAWithHref: e }),
3483
+ Ki
3102
3484
  ])(t);
3103
3485
  }
3104
- function zi(e) {
3486
+ function Ki(e) {
3105
3487
  const t = [];
3106
3488
  let n = e;
3107
- for (const [a, o, s] of [
3489
+ for (const [s, o, a] of [
3108
3490
  ["Remplacement des espaces multiples par une espace unique", / +/g, " "],
3109
3491
  ["Suppression d'une espace en début de ligne", /^ /gm, ""],
3110
3492
  ["Suppression d'une espace en fin de ligne", / $/gm, ""],
@@ -3118,24 +3500,24 @@ function zi(e) {
3118
3500
  ["Suppression d'un saut de ligne en fin de texte", /\n$/g, ""]
3119
3501
  ]) {
3120
3502
  let u = 0;
3121
- const f = [], d = n.replaceAll(o, (c, ...g) => {
3122
- const m = g.at(-2);
3123
- let E = s;
3124
- for (const [X, P] of g.slice(0, -2).entries())
3125
- E = E.replaceAll(`$${X + 1}`, P);
3126
- return f.push({
3127
- inputIndex: m,
3128
- inputLength: c.length,
3129
- outputIndex: m + u,
3130
- outputLength: E.length
3131
- }), u += E.length - c.length, E;
3503
+ const p = [], f = n.replaceAll(o, (d, ...c) => {
3504
+ const h = c.at(-2);
3505
+ let v = a;
3506
+ for (const [y, q] of c.slice(0, -2).entries())
3507
+ v = v.replaceAll(`$${y + 1}`, q);
3508
+ return p.push({
3509
+ inputIndex: h,
3510
+ inputLength: d.length,
3511
+ outputIndex: h + u,
3512
+ outputLength: v.length
3513
+ }), u += v.length - d.length, v;
3132
3514
  });
3133
- f.length !== 0 && (t.push({
3515
+ p.length !== 0 && (t.push({
3134
3516
  input: n,
3135
- output: d,
3136
- sourceMap: f,
3137
- title: a
3138
- }), n = d);
3517
+ output: f,
3518
+ sourceMap: p,
3519
+ title: s
3520
+ }), n = f);
3139
3521
  }
3140
3522
  return {
3141
3523
  input: e,
@@ -3144,10 +3526,10 @@ function zi(e) {
3144
3526
  transformations: t
3145
3527
  };
3146
3528
  }
3147
- function Hi(e) {
3529
+ function Ji(e) {
3148
3530
  const t = [];
3149
3531
  let n = e;
3150
- for (const [o, s] of [
3532
+ for (const [o, a] of [
3151
3533
  // Replace U+00A0 (no-break space) and tab with a normal space.
3152
3534
  [/[ \t]/g, " "],
3153
3535
  // Replace three non-ASCII dashes (U+2010, U+2011, U+2013 et U+00B7) with a minus sign.
@@ -3160,21 +3542,21 @@ function Hi(e) {
3160
3542
  // But Légifrance uses a classic I…
3161
3543
  ["İ", "I"]
3162
3544
  ])
3163
- n = n.replaceAll(o, (u, ...f) => {
3164
- const d = f.at(-2), c = {
3165
- inputIndex: d,
3545
+ n = n.replaceAll(o, (u, ...p) => {
3546
+ const f = p.at(-2), d = {
3547
+ inputIndex: f,
3166
3548
  inputLength: 1,
3167
- outputIndex: d,
3549
+ outputIndex: f,
3168
3550
  // Note: `outputIndex` is added below.
3169
3551
  outputLength: 1
3170
- }, g = t.findIndex(
3171
- (m) => m.inputIndex > d
3552
+ }, c = t.findIndex(
3553
+ (h) => h.inputIndex > f
3172
3554
  );
3173
- return g === -1 ? t.push(c) : t.splice(g, 0, c), s;
3555
+ return c === -1 ? t.push(d) : t.splice(c, 0, d), a;
3174
3556
  });
3175
- let a = 0;
3557
+ let s = 0;
3176
3558
  for (const o of t)
3177
- o.outputIndex = o.inputIndex + a, a += o.outputLength - o.inputLength;
3559
+ o.outputIndex = o.inputIndex + s, s += o.outputLength - o.inputLength;
3178
3560
  return {
3179
3561
  input: e,
3180
3562
  output: n,
@@ -3182,124 +3564,115 @@ function Hi(e) {
3182
3564
  title: "Simplification des caractères unicodes"
3183
3565
  };
3184
3566
  }
3185
- function cn(e, t = !1) {
3186
- if (e === void 0)
3187
- return;
3188
- const n = t ? /[&"<]/g : /[&<]/g;
3189
- n.lastIndex = 0;
3190
- let a = "", o = 0;
3191
- for (; n.test(e); ) {
3192
- const s = n.lastIndex - 1, u = e[s];
3193
- a += e.substring(o, s) + (u === "&" ? "&amp;" : u === '"' ? "&quot;" : "&lt;"), o = s + 1;
3194
- }
3195
- return a + e.substring(o);
3196
- }
3197
3567
  export {
3198
- Ct as TextParserContext,
3199
- je as action,
3200
- D as addChildLeftToLastChild,
3201
- qt as adjectifNumeralOrdinalCourt,
3202
- le as adverbeMultiplicatifLatin,
3203
- Ie as adverbeRelatif,
3568
+ Ge as TextParserContext,
3569
+ Ye as action,
3570
+ P as addChildLeftToLastChild,
3571
+ Ht as adjectifNumeralOrdinalCourt,
3572
+ fe as adverbeMultiplicatifLatin,
3573
+ be as adverbeRelatif,
3204
3574
  r as alternatives,
3205
- ii as article,
3206
- ei as articles,
3207
- at as auPortion,
3208
- st as auxPortions,
3575
+ fi as article,
3576
+ ri as articles,
3577
+ gt as auPortion,
3578
+ vt as auxPortions,
3209
3579
  l as chain,
3210
- qi as chainTransformers,
3580
+ ji as chainTransformers,
3211
3581
  F as citation,
3212
- yt as citationLigne,
3213
- xt as citationSimple,
3214
- Qi as compoundReferencesSeparators,
3215
- O as convert,
3216
- Fi as convertHtmlElementsToText,
3217
- $ as createEnumerationOrBoundedInterval,
3218
- se as createParentChildTreeFromReferences,
3219
- oi as date,
3220
- Ui as decodeNamedHtmlEntities,
3221
- Bi as decodeNumericHtmlEntities,
3222
- sn as definitionArticle,
3223
- on as definitionDivision,
3224
- ie as designationArticle,
3225
- Ee as designationDivision,
3226
- me as ditPluriel,
3227
- ue as ditSingulier,
3228
- ui as division,
3229
- At as divisionTypes,
3230
- pi as divisions,
3231
- Oe as duDate,
3232
- cn as escapeHtml,
3233
- T as espace,
3234
- ge as espaceAdverbeRelatif,
3235
- bt as europeanLawNatures,
3236
- Vi as formatLongDate,
3237
- St as frenchLawNatures,
3238
- yi as identificationTexteEuropeen,
3239
- Dt as internationalLawNatures,
3240
- Ve as introPluriel,
3241
- We as introSingulier,
3242
- Rt as isTextAstAtomicReference,
3243
- tn as isTextAstDivision,
3244
- nn as isTextAstPortion,
3245
- C as iterAtomicFirstParentReferences,
3246
- B as iterAtomicOrParentChildReferences,
3247
- y as iterAtomicReferences,
3248
- Wi as iterCardinalNumeralFormsFromNumber,
3249
- w as iterIncludedReferences,
3250
- Ji as iterLatinMultiplicativeAdverbsFromNumber,
3251
- Yi as iterOrdinalNumeralFormsFromNumber,
3252
- wi as iterOriginalMergedPositionsFromTransformed,
3253
- Ki as lawNatures,
3254
- Ot as lettreAsciiMinuscule,
3255
- Je as liaisonPluriel,
3256
- re as liaisonSingulier,
3257
- Qt as listeArticles,
3258
- en as localizationAdverbs,
3259
- V as natureDivisionSingulier,
3260
- dt as natureTexteFrancais,
3261
- Jt as nomArticle,
3262
- ot as nomSpecialArticle,
3263
- Pt as nombreAsTextAstNumber,
3264
- fe as nombreCardinal,
3265
- wt as nombreRomainCardinal,
3266
- an as nombreRomainOrdinal,
3267
- $t as nombreRomainOu0iAsTextAstNumber,
3268
- Xt as nonLettre,
3269
- ne as numberFromRomanNumeral,
3270
- Be as numero,
3271
- ut as numeroDivision,
3272
- qe as numeroEtOuDateTexteFrancais,
3273
- kt as numeroPortion,
3274
- Gi as numeroTexteEuropeen,
3582
+ qt as citationLigne,
3583
+ Mt as citationSimple,
3584
+ ln as compoundReferencesSeparators,
3585
+ S as convert,
3586
+ Xi as convertHtmlElementsToText,
3587
+ U as createEnumerationOrBoundedInterval,
3588
+ re as createParentChildTreeFromReferences,
3589
+ Fe as date,
3590
+ Wi as decodeNamedHtmlEntities,
3591
+ Yi as decodeNumericHtmlEntities,
3592
+ si as definitionArticle,
3593
+ hi as definitionDivision,
3594
+ cn as definitionTexteFrancais,
3595
+ se as designationArticle,
3596
+ Ie as designationDivision,
3597
+ Te as ditPluriel,
3598
+ pe as ditSingulier,
3599
+ yi as division,
3600
+ Ze as divisionTypes,
3601
+ Ti as divisions,
3602
+ Ce as duDate,
3603
+ m as espace,
3604
+ he as espaceAdverbeRelatif,
3605
+ Ut as europeanLawNatures,
3606
+ en as formatLongDate,
3607
+ jt as frenchLawNatures,
3608
+ vn as getReferences,
3609
+ Ni as identificationTexteEuropeen,
3610
+ kt as internationalLawNatures,
3611
+ nt as introPluriel,
3612
+ st as introSingulier,
3613
+ Ke as isTextAstAtomicReference,
3614
+ fn as isTextAstDivision,
3615
+ dn as isTextAstPortion,
3616
+ A as iterAtomicFirstParentReferences,
3617
+ C as iterAtomicReferences,
3618
+ nn as iterCardinalNumeralFormsFromNumber,
3619
+ Vi as iterCitationReferences,
3620
+ _ as iterIncludedReferences,
3621
+ sn as iterLatinMultiplicativeAdverbsFromNumber,
3622
+ on as iterOrdinalNumeralFormsFromNumber,
3623
+ ki as iterOriginalMergedPositionsFromTransformed,
3624
+ At as iterReferences,
3625
+ tn as jsonReplacer,
3626
+ rn as lawNatures,
3627
+ $t as lettreAsciiMinuscule,
3628
+ ot as liaisonPluriel,
3629
+ de as liaisonSingulier,
3630
+ ai as listeArticles,
3631
+ un as localizationAdverbs,
3632
+ W as natureDivisionSingulier,
3633
+ oe as natureTexteFrancais,
3634
+ ii as nomArticle,
3635
+ mt as nomSpecialArticle,
3636
+ Bt as nombreAsTextAstNumber,
3637
+ me as nombreCardinal,
3638
+ et as nombreRomainCardinal,
3639
+ pn as nombreRomainOrdinal,
3640
+ zt as nombreRomainOu0iAsTextAstNumber,
3641
+ _t as nonLettre,
3642
+ le as numberFromRomanNumeral,
3643
+ We as numero,
3644
+ yt as numeroDivision,
3645
+ ae as numeroEtOuDateTexteFrancais,
3646
+ Qt as numeroPortion,
3647
+ Ei as numeroTexteEuropeen,
3275
3648
  Ci as numeroTexteFrancais,
3276
- p as optional,
3277
- Oi as optionalEspaceDuTerritoire,
3278
- Lt as ordinalNumeralFromNumber,
3279
- rn as originalMergedPositionsFromTransformed,
3280
- un as originalSplitPositionsFromTransformed,
3281
- Zi as parseText,
3282
- Nt as portionTypes,
3283
- nt as portions,
3284
- ln as reference,
3649
+ g as optional,
3650
+ xt as optionalEspaceDuTerritoire,
3651
+ wt as ordinalNumeralFromNumber,
3652
+ Hi as originalMergedPositionsFromTransformed,
3653
+ gn as originalSplitPositionsFromTransformed,
3654
+ an as parseText,
3655
+ Qe as portionTypes,
3656
+ ct as portions,
3657
+ Ui as reference,
3285
3658
  i as regExp,
3286
- he as relatifPlurielPrepose,
3287
- Le as relatifSingulierPrepose,
3288
- G as repeat,
3289
- ji as replacePattern,
3290
- ki as replacePatterns,
3291
- Fe as romanNumeralFromNumber,
3292
- dn as simplifyHtml,
3293
- zi as simplifyText,
3294
- Hi as simplifyUnicodeCharacters,
3295
- xi as texte,
3296
- $e as texteEuropeen,
3297
- we as texteFrancais,
3298
- Me as texteInternational,
3299
- Qe as unePortion,
3300
- ft as uniteBasePreciseeSingulier,
3301
- Te as uniteBaseSingulier,
3302
- b as variable,
3303
- S as virguleOuEspace,
3304
- ye as wordsTree
3659
+ Le as relatifPlurielPrepose,
3660
+ Ae as relatifSingulierPrepose,
3661
+ R as repeat,
3662
+ Zi as replacePattern,
3663
+ Qi as replacePatterns,
3664
+ Se as romanNumeralFromNumber,
3665
+ mn as simplifyHtml,
3666
+ Ki as simplifyText,
3667
+ Ji as simplifyUnicodeCharacters,
3668
+ Pi as texte,
3669
+ He as texteEuropeen,
3670
+ Be as texteFrancais,
3671
+ ze as texteInternational,
3672
+ rt as unePortion,
3673
+ bt as uniteBasePreciseeSingulier,
3674
+ ye as uniteBaseSingulier,
3675
+ L as variable,
3676
+ N as virguleOuEspace,
3677
+ Ne as wordsTree
3305
3678
  };