@tricoteuses/tisseuse 0.17.0 → 0.17.2

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.
@@ -10252,17 +10252,14 @@ function Kp(e) {
10252
10252
  return n;
10253
10253
  }
10254
10254
  function qp(e) {
10255
- let t = Kp(Hp(e));
10256
- if (t.length === 0) return t;
10257
- let n = t[0];
10258
- if (n?.kind === "single" && n.steps.length > 1) {
10259
- let [e, t] = n.steps;
10260
- if (e?.type === "item" && typeof e.num == "string" && /^\d+$/.test(e.num) && t?.type === "item" && typeof t.num == "string" && /°/.test(t.num)) return [n, {
10255
+ return Kp(Hp(e)).flatMap((e) => {
10256
+ if (e.kind !== "single") return [e];
10257
+ let [t, n] = e.steps;
10258
+ return t?.type === "item" && typeof t.num == "string" && jp(t.num) === 102 && n?.type === "item" && typeof n.num == "string" && jp(n.num) === 103 ? [e, {
10261
10259
  kind: "single",
10262
- steps: n.steps.slice(1)
10263
- }];
10264
- }
10265
- return t;
10260
+ steps: e.steps.slice(1)
10261
+ }] : [e];
10262
+ });
10266
10263
  }
10267
10264
  function Jp(e, t) {
10268
10265
  if (t.num !== void 0 && e.num !== void 0) {
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { At as e, B as t, Bt as n, Ct as r, Dt as i, Et as a, F as o, Ft as s, G as c, Gt as l, H as u, Ht as d, I as f, It as p, J as m, Jt as ee, K as te, Kt as ne, L as re, Lt as ie, Mt as ae, N as oe, Nt as se, Ot as ce, P as le, Pt as ue, Q as de, R as fe, Rt as pe, St as me, T as he, Tt as ge, U as _e, Ut as ve, V as ye, Vt as be, W as xe, Wt as Se, X as Ce, Xt as we, Y as Te, Yt as Ee, Z as De, Zt as Oe, _ as ke, _t as Ae, a as h, at as je, b as Me, bt as Ne, c as Pe, d as g, dt as Fe, et as Ie, f as Le, ft as Re, g as ze, gt as Be, ht as Ve, i as He, it as Ue, kt as We, l as Ge, lt as Ke, mt as qe, n as Je, nt as Ye, o as _, ot as Xe, p as Ze, pt as Qe, q as $e, qt as et, r as v, rt as tt, s as nt, st as rt, t as it, tt as at, u as ot, ut as st, v as ct, vt as lt, wt as y, xt as ut, y as dt, yt as ft, z as pt, zt as mt } from "./html-UaTiLfCR.js";
1
+ import { At as e, B as t, Bt as n, Ct as r, Dt as i, Et as a, F as o, Ft as s, G as c, Gt as l, H as u, Ht as d, I as f, It as p, J as m, Jt as ee, K as te, Kt as ne, L as re, Lt as ie, Mt as ae, N as oe, Nt as se, Ot as ce, P as le, Pt as ue, Q as de, R as fe, Rt as pe, St as me, T as he, Tt as ge, U as _e, Ut as ve, V as ye, Vt as be, W as xe, Wt as Se, X as Ce, Xt as we, Y as Te, Yt as Ee, Z as De, Zt as Oe, _ as ke, _t as Ae, a as h, at as je, b as Me, bt as Ne, c as Pe, d as g, dt as Fe, et as Ie, f as Le, ft as Re, g as ze, gt as Be, ht as Ve, i as He, it as Ue, kt as We, l as Ge, lt as Ke, mt as qe, n as Je, nt as Ye, o as _, ot as Xe, p as Ze, pt as Qe, q as $e, qt as et, r as v, rt as tt, s as nt, st as rt, t as it, tt as at, u as ot, ut as st, v as ct, vt as lt, wt as y, xt as ut, y as dt, yt as ft, z as pt, zt as mt } from "./html-BEYFJ4nz.js";
2
2
  import { $ as ht, A as gt, C as _t, D as vt, Dt as b, E as yt, Et as x, F as bt, Ft as xt, H as St, I as Ct, It as wt, J as Tt, K as Et, L as S, Lt as C, M as Dt, Mt as Ot, N as kt, Nt as w, O as At, Ot as T, P as jt, Pt as Mt, Q as Nt, R as E, S as Pt, St as Ft, T as It, Tt as D, V as Lt, W as Rt, X as zt, Y as Bt, Z as Vt, _ as Ht, b as O, bt as Ut, c as Wt, ct as Gt, d as Kt, dt as qt, et as k, f as Jt, ft as Yt, g as Xt, h as Zt, j as Qt, jt as A, k as j, l as $t, m as en, mt as tn, n as nn, ot as rn, p as an, pt as on, q as sn, r as cn, rt as ln, s as un, t as dn, tt as fn, u as pn, ut as mn, v as hn, vt as M, w as gn, wt as _n, x as vn, xt as yn, y as N } from "./resolver-CuP8arVX.js";
3
3
  //#region ../../node_modules/@tricoteuses/legifrance/dist/legal/index.js
4
4
  function bn(e, t) {
package/dist/server.js CHANGED
@@ -1,4 +1,4 @@
1
- import { $ as e, A as t, C as n, D as r, Dt as i, E as a, Et as o, I as s, M as c, O as l, Ot as u, Q as d, Rt as f, S as p, Tt as m, V as h, Y as g, b as _, c as v, ct as y, g as b, h as x, j as S, jt as C, k as ee, m as te, n as ne, ot as re, p as ie, rt as ae, s as oe, t as se, u as ce, v as le, w as ue, x as de, xt as fe, z as pe, zt as me } from "./html-UaTiLfCR.js";
1
+ import { $ as e, A as t, C as n, D as r, Dt as i, E as a, Et as o, I as s, M as c, O as l, Ot as u, Q as d, Rt as f, S as p, Tt as m, V as h, Y as g, b as _, c as v, ct as y, g as b, h as x, j as S, jt as C, k as ee, m as te, n as ne, ot as re, p as ie, rt as ae, s as oe, t as se, u as ce, v as le, w as ue, x as de, xt as fe, z as pe, zt as me } from "./html-BEYFJ4nz.js";
2
2
  import { Dt as w, Et as T, F as he, I as ge, N as _e, Nt as E, O as ve, Tt as D, ct as ye, et as be, ht as xe, jt as O, k as Se, kt as Ce, n as we, o as Te, r as Ee, t as De, vt as k } from "./resolver-CuP8arVX.js";
3
3
  import * as Oe from "node:crypto";
4
4
  import { createHash as ke } from "node:crypto";
@@ -1359,15 +1359,27 @@ function dn(e, t) {
1359
1359
  if (!n.includes("«") || !n.includes("»") || e(t).find("table").length > 0) return;
1360
1360
  let r = e(t).find("tr").get().filter((n) => e(n).closest("table").get(0) === t);
1361
1361
  if (r.length === 0) return;
1362
- let i = r.map((t) => {
1363
- let n = e(t).children("td,th").get();
1364
- return n.length >= 3 ? [n[0], n.at(-1)] : [];
1362
+ let i = 0, a = 0, o = r.map((t, n) => {
1363
+ let o = e(t).children("td,th").get(), s = i === 0, c = a === 0;
1364
+ if (i > 0 && i--, a > 0 && a--, o.length < 1 + Number(s) + Number(c)) return [];
1365
+ let l = s ? o[0] : void 0, u = c ? o.at(-1) : void 0;
1366
+ if (l) {
1367
+ let t = Number(e(l).attr("rowspan") ?? "1");
1368
+ if (!Number.isInteger(t) || t < 1 || t > r.length - n || t > 1 && M(e(l).text()) !== "«") return [];
1369
+ i = t - 1;
1370
+ }
1371
+ if (u) {
1372
+ let t = Number(e(u).attr("rowspan") ?? "1");
1373
+ if (!Number.isInteger(t) || t < 1 || t > r.length - n || t > 1 && !/^»\s*;?$/u.test(M(e(u).text()))) return [];
1374
+ a = t - 1;
1375
+ }
1376
+ return [l, u];
1365
1377
  });
1366
- if (i.some((e) => e.length !== 2)) return;
1367
- let a = i.map(([t]) => M(e(t).text())), o = i.map(([, t]) => M(e(t).text()));
1368
- if (!(a.filter((e) => e === "«").length !== 1 || o.filter((e) => /^»\s*;?$/u.test(e)).length !== 1 || a.some((e) => e !== "" && e !== "«") || o.some((e) => e !== "" && !/^»\s*;?$/u.test(e)) || i.some(([t, n]) => [t, n].some((t) => e(t).attr("colspan") !== void 0 || e(t).attr("rowspan") !== void 0))) && !(a.indexOf("«") > o.findIndex((e) => e.startsWith("»")))) {
1378
+ if (o.some((e) => e.length !== 2)) return;
1379
+ let s = o.map(([t]) => t ? M(e(t).text()) : ""), c = o.map(([, t]) => t ? M(e(t).text()) : "");
1380
+ if (!(s.filter((e) => e === "«").length !== 1 || c.filter((e) => /^»\s*;?$/u.test(e)).length !== 1 || s.some((e) => e !== "" && e !== "«") || c.some((e) => e !== "" && !/^»\s*;?$/u.test(e)) || o.some(([t, n]) => [t, n].some((t) => t && e(t).attr("colspan") !== void 0))) && !(s.indexOf("«") > c.findIndex((e) => e.startsWith("»")))) {
1369
1381
  e(t).addClass("akn-quoted-table");
1370
- for (let [t, n] of i) e(t).addClass("akn-quote-column"), e(n).addClass("akn-quote-column");
1382
+ for (let [t, n] of o) t && e(t).addClass("akn-quote-column"), n && e(n).addClass("akn-quote-column");
1371
1383
  }
1372
1384
  }
1373
1385
  function fn(e, t) {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tricoteuses/tisseuse",
3
3
  "description": "Find links in/to French legislative documents",
4
- "version": "0.17.0",
4
+ "version": "0.17.2",
5
5
  "keywords": [
6
6
  "Assemblée nationale",
7
7
  "France",