@maycombhq/atticus 2.0.0-beta.18 → 2.0.0-beta.21
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/bin.js +8 -4
- package/dist/{chunk-MUSJJ6CQ.js → chunk-265LWMOA.js} +16 -16
- package/dist/chunk-26WBY34Y.js +37 -0
- package/dist/{chunk-6H5JG5GL.js → chunk-26Z7OGQW.js} +63 -30
- package/dist/{chunk-4REDBQOZ.js → chunk-2D7PWSOK.js} +20 -20
- package/dist/{chunk-YPH6ZJ6R.js → chunk-2HH3UCZM.js} +4 -4
- package/dist/{chunk-RTUUX7PX.js → chunk-2HTEMYTB.js} +12 -26
- package/dist/{chunk-EHQUY26D.js → chunk-2UCRFXFZ.js} +11 -11
- package/dist/{chunk-ILDGIXNH.js → chunk-2V2ZPQQU.js} +81 -13
- package/dist/{chunk-YSEZQ6D3.js → chunk-36RY7ZXM.js} +107 -64
- package/dist/{chunk-QXFDM2FZ.js → chunk-37WE3LS2.js} +3 -3
- package/dist/{chunk-BAXM3JFQ.js → chunk-3AQ2R5NL.js} +1212 -754
- package/dist/chunk-3G6S7LAA.js +43 -0
- package/dist/{chunk-7TOAS7KI.js → chunk-3J5I7ZOU.js} +4 -4
- package/dist/{chunk-TAKAEJRD.js → chunk-3LZ6P5EP.js} +1 -1
- package/dist/chunk-3SSTNB4E.js +191 -0
- package/dist/chunk-3TD6S4TC.js +49 -0
- package/dist/{chunk-UUL6ZGMU.js → chunk-3UTYPHN3.js} +1 -1
- package/dist/{chunk-6AP2ZUUM.js → chunk-3WON4G3M.js} +2 -2
- package/dist/{chunk-AXY6LBW4.js → chunk-42EPP7OB.js} +12 -12
- package/dist/{chunk-QKMDT7VU.js → chunk-455SYIIE.js} +2 -2
- package/dist/{chunk-MFUFB3LN.js → chunk-4B6BT75O.js} +110 -20
- package/dist/{chunk-75MYLZSB.js → chunk-4CLK2RJO.js} +7 -7
- package/dist/chunk-4CYTJ5TZ.js +38 -0
- package/dist/{chunk-IH7RANGB.js → chunk-4D62IZII.js} +5 -5
- package/dist/{chunk-2QMZOCWN.js → chunk-4FOAYLI4.js} +14 -7
- package/dist/{chunk-V3UEPUHT.js → chunk-4KNOJC6J.js} +294 -215
- package/dist/{chunk-O6ILVBYB.js → chunk-4PYC2UGC.js} +1 -1
- package/dist/{chunk-EZBAS5BL.js → chunk-4SLBCEPD.js} +82 -50
- package/dist/{chunk-VIRTPODJ.js → chunk-4TKVU2I2.js} +6 -14
- package/dist/{chunk-IVCDU443.js → chunk-4WXRPQDE.js} +281 -51
- package/dist/{chunk-RMEEHH24.js → chunk-5CMPVC3N.js} +24 -24
- package/dist/chunk-5G7ILBUG.js +66 -0
- package/dist/{chunk-Z75XDWQR.js → chunk-5PV7S2ZP.js} +3 -3
- package/dist/{chunk-WWPC2AZ2.js → chunk-5QUOPNLN.js} +4 -4
- package/dist/{chunk-7OVH2L7L.js → chunk-5TDRBOAV.js} +5 -5
- package/dist/{chunk-YXUIUOQZ.js → chunk-5WERBKLE.js} +199 -63
- package/dist/{chunk-6WNNXEG6.js → chunk-62DLJSLV.js} +8 -8
- package/dist/{chunk-KCQS52TH.js → chunk-64AADMTW.js} +99 -25
- package/dist/{chunk-KLRUXRPN.js → chunk-67BP7HXL.js} +17 -17
- package/dist/chunk-6DQYZU2W.js +379 -0
- package/dist/{chunk-RONDYDMQ.js → chunk-6EXDI5GI.js} +51 -34
- package/dist/chunk-6FNAKCET.js +38 -0
- package/dist/{chunk-6SNEA73E.js → chunk-75ASLHBT.js} +21 -15
- package/dist/{chunk-EFT4KM6K.js → chunk-75ZOZFGH.js} +18 -18
- package/dist/{chunk-B3KW7EQW.js → chunk-77O633L5.js} +12 -12
- package/dist/{chunk-TLDL2ZZI.js → chunk-7AB6OWTV.js} +3 -3
- package/dist/{chunk-R5YXY6NT.js → chunk-7CZHUZBL.js} +25 -25
- package/dist/{chunk-F4D4G2A6.js → chunk-7FHNFCHK.js} +306 -125
- package/dist/{chunk-CC5RNYZF.js → chunk-7FUIVIBG.js} +19 -9
- package/dist/{chunk-UBTOSSNK.js → chunk-7QPCGTPS.js} +21 -21
- package/dist/{chunk-CDLTRJ4N.js → chunk-A2G72UI4.js} +7 -7
- package/dist/{chunk-YGSOQ5LX.js → chunk-AE4P57KK.js} +23 -17
- package/dist/{chunk-PGQL5YGH.js → chunk-AHW3RY3X.js} +7 -7
- package/dist/chunk-AM6FP6JW.js +43 -0
- package/dist/{chunk-DYNC6BAQ.js → chunk-AOCWFA7T.js} +93 -10
- package/dist/{chunk-CYX36GKZ.js → chunk-API5TOUB.js} +1 -1
- package/dist/{chunk-BJ5T3KDF.js → chunk-AZDITBCT.js} +3 -3
- package/dist/{chunk-U6GZSUMC.js → chunk-BA2HUMDN.js} +25 -3
- package/dist/chunk-BA3U7ALS.js +99 -0
- package/dist/{chunk-63565QTF.js → chunk-BC6KKZ67.js} +5 -5
- package/dist/{chunk-XO5RQKNM.js → chunk-BEPCKDCP.js} +1843 -577
- package/dist/{chunk-KUH62AQ3.js → chunk-BPPU3PW7.js} +4 -4
- package/dist/{chunk-52ULYRV4.js → chunk-BVWWPBKD.js} +18 -18
- package/dist/{chunk-R2FGEBIU.js → chunk-BXZ4PKIT.js} +13 -11
- package/dist/{chunk-4BU26GFB.js → chunk-C7CEK3KW.js} +4 -4
- package/dist/chunk-CFH3QH26.js +29 -0
- package/dist/chunk-CG6CULP6.js +170 -0
- package/dist/chunk-CLD4RVTA.js +45 -0
- package/dist/{chunk-BU543ZEC.js → chunk-CNPY4NTZ.js} +13 -13
- package/dist/{chunk-PLBIWEPV.js → chunk-CNU5Q2D5.js} +32 -31
- package/dist/{chunk-JTYYEYRR.js → chunk-COYN3UAN.js} +124 -21
- package/dist/{chunk-TNCROWPQ.js → chunk-CPK7QSBG.js} +10 -10
- package/dist/{chunk-43E6XX67.js → chunk-D2WSW4GU.js} +1 -1
- package/dist/{chunk-SHEUEHKC.js → chunk-D57MFJPP.js} +3 -3
- package/dist/chunk-D5KV5PSK.js +45 -0
- package/dist/chunk-D5MASS4I.js +48 -0
- package/dist/{chunk-TQYBXDVH.js → chunk-DCWN3HFV.js} +1 -1
- package/dist/{chunk-FF4IGX4Z.js → chunk-DDJPM5YX.js} +2 -2
- package/dist/chunk-DN4A2Q2O.js +57 -0
- package/dist/{chunk-4ZCFCIEL.js → chunk-DUPZPDCJ.js} +52 -16
- package/dist/{chunk-CUJ5TIEB.js → chunk-E2VXBSIR.js} +4 -4
- package/dist/{chunk-BX47X5DJ.js → chunk-E57AOFYN.js} +13 -13
- package/dist/{chunk-SSTI7GAV.js → chunk-ECLXZWAG.js} +12 -12
- package/dist/{chunk-KYK3TA4Q.js → chunk-EDZ45WIR.js} +14 -14
- package/dist/chunk-EFCQSMXB.js +37 -0
- package/dist/{chunk-YC2K3FJG.js → chunk-EZIN5E5B.js} +8 -8
- package/dist/{chunk-MIZNACDI.js → chunk-F6H2RJ3N.js} +1 -1
- package/dist/{chunk-EMZVHDJP.js → chunk-FAJDKNSD.js} +7 -3
- package/dist/chunk-FGAGWYZB.js +47 -0
- package/dist/{chunk-KBGQ3IAM.js → chunk-FLVZFTLQ.js} +18 -18
- package/dist/{chunk-2NNXLH53.js → chunk-FQ6WH6PB.js} +22 -7
- package/dist/{chunk-QWSLMVHI.js → chunk-FRHD22WM.js} +61 -23
- package/dist/{chunk-5MEN4SM5.js → chunk-FVMPFCDS.js} +4 -4
- package/dist/{chunk-KLRZKW7Y.js → chunk-FY3QIRTL.js} +3 -3
- package/dist/{chunk-B3SWPNJF.js → chunk-FYBF5MB2.js} +13 -11
- package/dist/{chunk-CVZCW3NI.js → chunk-G5YJBNDZ.js} +14 -5
- package/dist/{chunk-U6EPS5PF.js → chunk-G6IQYM25.js} +5 -5
- package/dist/chunk-G6X4YL4D.js +161 -0
- package/dist/{chunk-DOSX3MRW.js → chunk-GC2VK3JT.js} +25 -25
- package/dist/{chunk-EEWBTFRP.js → chunk-GCS3FZOB.js} +27 -3
- package/dist/{chunk-6H6OPNEP.js → chunk-GDZB57IU.js} +5 -5
- package/dist/chunk-GIFMBCTW.js +221 -0
- package/dist/{chunk-X5WYPIH3.js → chunk-GK4PYVEC.js} +18 -8
- package/dist/{chunk-VBSJ5NRB.js → chunk-GNWAOVFQ.js} +5 -5
- package/dist/{chunk-TXFDQRBL.js → chunk-GS76RXQE.js} +11 -11
- package/dist/{chunk-U3YC4RGC.js → chunk-GSGIZ2OO.js} +23 -23
- package/dist/chunk-GUYL7RMK.js +60 -0
- package/dist/{chunk-AZYBHPV4.js → chunk-GX74YWR7.js} +14 -13
- package/dist/{chunk-YY7VP7KW.js → chunk-HE3HRDNZ.js} +2 -2
- package/dist/{chunk-Z7HYYDZM.js → chunk-HGHRSF3E.js} +14 -13
- package/dist/{chunk-Q2X4IREC.js → chunk-HK3VOHIE.js} +106 -36
- package/dist/{chunk-P5JYMO7Y.js → chunk-HS4BGB4G.js} +22 -22
- package/dist/{chunk-IOW6BF3U.js → chunk-HSZMPH5T.js} +798 -141
- package/dist/{chunk-L3T33FA7.js → chunk-HWD4JPU7.js} +4 -2
- package/dist/{chunk-7NYCH5HY.js → chunk-HXXP2NTE.js} +6 -6
- package/dist/{chunk-7S7OFVIU.js → chunk-I2A3Z5AK.js} +4 -4
- package/dist/{chunk-WQSDKX7M.js → chunk-ICHDSWEY.js} +7 -7
- package/dist/chunk-IFFRGC3N.js +31 -0
- package/dist/{chunk-HMZQAIR5.js → chunk-IFHDV6KQ.js} +24 -17
- package/dist/chunk-J2O4LFVI.js +80 -0
- package/dist/chunk-J5AAZ6OJ.js +161 -0
- package/dist/{chunk-CVRWAG76.js → chunk-JAABT3DA.js} +3 -3
- package/dist/chunk-JITJP64K.js +34 -0
- package/dist/chunk-JKIGL3XQ.js +162 -0
- package/dist/chunk-JRVNXLZP.js +615 -0
- package/dist/chunk-JRXHON4E.js +41 -0
- package/dist/{chunk-XFCK5B27.js → chunk-JS6WMC3J.js} +8 -8
- package/dist/chunk-JU4QNJSR.js +62 -0
- package/dist/{chunk-IPSFMTK2.js → chunk-JYMIB5XY.js} +152 -42
- package/dist/{chunk-L336AJCZ.js → chunk-JYTIHTIK.js} +8 -6
- package/dist/{chunk-VEJYZEPC.js → chunk-K332XW7K.js} +135 -16
- package/dist/{chunk-KCF7TFOE.js → chunk-K6JB6XTX.js} +11 -11
- package/dist/{chunk-LFIIX4OV.js → chunk-KDAHXQIE.js} +46 -34
- package/dist/chunk-KYZMRSPS.js +93 -0
- package/dist/chunk-L4CESDPB.js +22 -0
- package/dist/{chunk-3LR4522O.js → chunk-LEBR5NHW.js} +14 -14
- package/dist/{chunk-US3QZU23.js → chunk-LIJJCBQI.js} +67 -7
- package/dist/{chunk-XLHL6WTI.js → chunk-LIRVU3HW.js} +16 -16
- package/dist/{chunk-BAT4CBB7.js → chunk-LN77DXBM.js} +19 -10
- package/dist/{chunk-E5FM44EJ.js → chunk-LNWEWYCM.js} +2474 -315
- package/dist/{chunk-TX4OGZKU.js → chunk-LO3BLMVG.js} +3 -3
- package/dist/{chunk-RUOGHYSK.js → chunk-LPV6T362.js} +5 -5
- package/dist/{chunk-2T5CQH4R.js → chunk-LQH4P45K.js} +1 -1
- package/dist/chunk-LU4MQVAL.js +41 -0
- package/dist/{chunk-HW4RRIJA.js → chunk-LWDNKE4X.js} +12 -10
- package/dist/chunk-M4H2UG4R.js +218 -0
- package/dist/{chunk-CANMOOE6.js → chunk-M6D2U3YM.js} +3 -3
- package/dist/{chunk-AB5E5HCN.js → chunk-MD7KUEJ3.js} +14 -272
- package/dist/{chunk-ENTAAEDK.js → chunk-MMZUN7ZO.js} +20 -20
- package/dist/{chunk-L4MHJG3I.js → chunk-MZGRDONP.js} +46 -36
- package/dist/{chunk-IYI2S6BB.js → chunk-N3RUGTGV.js} +18 -18
- package/dist/{chunk-WZRCGGXG.js → chunk-NCB6656Z.js} +7 -7
- package/dist/{chunk-SBE773JU.js → chunk-NRQ65LTQ.js} +5 -5
- package/dist/{chunk-NRPMPZWJ.js → chunk-NTAVOWYD.js} +117 -18
- package/dist/{chunk-UJBZS5I7.js → chunk-NYOABJNK.js} +36 -27
- package/dist/{chunk-LXAPJ3BL.js → chunk-O4IKAIZ2.js} +24 -20
- package/dist/{chunk-MMB2OHUY.js → chunk-ODMBPDDV.js} +48 -13
- package/dist/chunk-OKUB6RJA.js +533 -0
- package/dist/{chunk-MKFYQQ5Q.js → chunk-OMPENNWY.js} +4 -1
- package/dist/chunk-OPQZISG3.js +25 -0
- package/dist/{chunk-ROJMXG4E.js → chunk-OV57AHCG.js} +24 -24
- package/dist/{chunk-7KGXDIWV.js → chunk-OZJ3JLYI.js} +9 -8
- package/dist/{chunk-G5BYKJIM.js → chunk-P2VBXX7N.js} +11 -10
- package/dist/{chunk-YK6CSODO.js → chunk-PAINMSID.js} +4353 -1106
- package/dist/chunk-PKJAV25S.js +43 -0
- package/dist/{chunk-R5MNPIMD.js → chunk-PNQLCRSS.js} +4 -4
- package/dist/{chunk-3SMMFQED.js → chunk-PQH56YF6.js} +37 -5
- package/dist/chunk-PRTBPXYA.js +50 -0
- package/dist/{chunk-FF4ZMLSL.js → chunk-PRW3HXM3.js} +2 -2
- package/dist/chunk-PRZ7KMWL.js +42 -0
- package/dist/{chunk-IFV6MKYV.js → chunk-PTQ3ZALZ.js} +42 -4
- package/dist/{chunk-ELQSLAP6.js → chunk-PUEWDYGP.js} +2 -2
- package/dist/{chunk-F2ZCZYIK.js → chunk-Q26LDIUV.js} +12 -11
- package/dist/chunk-Q46QDDMF.js +277 -0
- package/dist/chunk-QBNWF5ZU.js +19 -0
- package/dist/{chunk-ANETFNTV.js → chunk-QE527XRY.js} +24 -21
- package/dist/{chunk-QNMLLYTN.js → chunk-QHJJMZLX.js} +397 -32
- package/dist/chunk-QJCJOMW3.js +425 -0
- package/dist/{chunk-3HOONZUE.js → chunk-QKMRFNMA.js} +15 -15
- package/dist/{chunk-7S6VJ643.js → chunk-QOOEYDNJ.js} +101 -13
- package/dist/{chunk-4YNKN4DF.js → chunk-QSIDVFB7.js} +20 -18
- package/dist/{chunk-2IT7SIJY.js → chunk-RA33EYS4.js} +19 -18
- package/dist/{chunk-P7NV3FEJ.js → chunk-RALY3E5U.js} +4 -4
- package/dist/{chunk-6NESNLVU.js → chunk-S2RY3BOD.js} +35 -21
- package/dist/chunk-SB5GRUFM.js +54 -0
- package/dist/{chunk-EUQHM2CH.js → chunk-SH27FYPF.js} +18 -18
- package/dist/chunk-T74WQQGS.js +40 -0
- package/dist/{chunk-LGDW4G73.js → chunk-TGVVUKTG.js} +2 -2
- package/dist/chunk-THN26IEF.js +48 -0
- package/dist/{chunk-ZV2VCBMQ.js → chunk-TJH2EUAZ.js} +18 -12
- package/dist/{chunk-NGT5LLSE.js → chunk-TQ4TG57V.js} +6 -6
- package/dist/{chunk-WEDXFJPG.js → chunk-TQTRWENN.js} +12 -12
- package/dist/{chunk-ZRWS54RI.js → chunk-TSM6T6GQ.js} +23 -23
- package/dist/{chunk-KET7KOVE.js → chunk-TW3KOSQK.js} +15 -7
- package/dist/{chunk-RBXDHCN7.js → chunk-TWQRPM76.js} +2 -2
- package/dist/{chunk-IO6DQCZX.js → chunk-TYD6I4CZ.js} +4 -4
- package/dist/{chunk-5NLJH6R4.js → chunk-U3NBK4EU.js} +56 -17
- package/dist/{chunk-U542BJME.js → chunk-UDXWIPCB.js} +7 -7
- package/dist/{chunk-OSB6AKF2.js → chunk-UEVZZZU2.js} +4 -4
- package/dist/{chunk-5ZV7BK22.js → chunk-UF4UHCIG.js} +2 -2
- package/dist/{chunk-PHJOOL6U.js → chunk-UFE36WJH.js} +4 -4
- package/dist/{chunk-IHRP4OYV.js → chunk-URIKUID7.js} +12 -12
- package/dist/chunk-UYLBRRFK.js +1106 -0
- package/dist/chunk-UZACEG2C.js +515 -0
- package/dist/{chunk-LR4XBH4L.js → chunk-VAMHOHUU.js} +12 -12
- package/dist/{chunk-S5PSGAQ2.js → chunk-VUVGX5L2.js} +1 -1
- package/dist/{chunk-2TG2QGKW.js → chunk-VYOCPTUB.js} +18 -16
- package/dist/{chunk-VTEDQ6GY.js → chunk-WAZEXEJH.js} +175 -3
- package/dist/{chunk-UTSFKZ72.js → chunk-WCEF7H6L.js} +3 -3
- package/dist/{chunk-DXPUYG5L.js → chunk-WEOMJHPV.js} +12 -12
- package/dist/{chunk-NFKBU2UH.js → chunk-WFU77T3A.js} +5 -5
- package/dist/chunk-WIWTJMMR.js +292 -0
- package/dist/{chunk-MRFSUAJH.js → chunk-WNTIOBOG.js} +18 -18
- package/dist/{chunk-UROTYIGJ.js → chunk-X2CUXTWU.js} +6 -6
- package/dist/chunk-X7EMBM5X.js +34 -0
- package/dist/{chunk-OO5TKEAG.js → chunk-XEQCQO66.js} +8 -8
- package/dist/{chunk-NBQO75XT.js → chunk-XG4WJHLQ.js} +17 -1
- package/dist/{chunk-ZQC7MNQB.js → chunk-XOL3GFW2.js} +101 -30
- package/dist/{chunk-GXDATVSY.js → chunk-XQ3YZ4QW.js} +22 -22
- package/dist/{chunk-GTW54D3D.js → chunk-Y6K3CJBU.js} +726 -88
- package/dist/{chunk-CQCAJI6G.js → chunk-YAH5IQAL.js} +5 -5
- package/dist/{chunk-U6TD7UOH.js → chunk-YBOVNMHC.js} +51 -14
- package/dist/{chunk-OJICVOZH.js → chunk-YF5DZCPN.js} +79 -39
- package/dist/chunk-YIGBJNH4.js +37 -0
- package/dist/{chunk-7C7OZARH.js → chunk-YJ3TBOTK.js} +25 -25
- package/dist/{chunk-HXFSM4LG.js → chunk-YKTE2RU3.js} +2 -2
- package/dist/{chunk-7IM4BVVH.js → chunk-YO2PKTXT.js} +268 -36
- package/dist/{chunk-Z3UU7XV6.js → chunk-YTTNTQOX.js} +15 -15
- package/dist/{chunk-2ZICHO3V.js → chunk-YWAKDNMH.js} +183 -33
- package/dist/{chunk-OXOSJXOI.js → chunk-YZDZOEV4.js} +4 -4
- package/dist/{chunk-MRCETHW5.js → chunk-Z3QFH7YG.js} +4 -4
- package/dist/{chunk-5KZTRD4V.js → chunk-Z6VLC5X4.js} +17 -17
- package/dist/{chunk-EDURU5DF.js → chunk-ZFQMMU5Y.js} +2 -2
- package/dist/{chunk-3GLDB4IT.js → chunk-ZKYRDV7A.js} +12 -12
- package/dist/{chunk-GBGJ6WSO.js → chunk-ZLS6PU2O.js} +3 -3
- package/dist/{chunk-JZOOX3PQ.js → chunk-ZOSD4FXV.js} +3 -3
- package/dist/chunk-ZPDDEVQX.js +47 -0
- package/dist/{chunk-2TTSX7NB.js → chunk-ZQLRCA2V.js} +7 -7
- package/dist/{chunk-ESP3RUUR.js → chunk-ZX7235KR.js} +128 -54
- package/dist/{chunk-MH4XG5XS.js → chunk-ZZFHLRQW.js} +18 -16
- package/dist/files.json +559 -439
- package/dist/packages/sdk/npm/index.js +4679 -2672
- package/dist/packages/ui/dist/assets/{elk-api-BuFBvNyV.js → elk-api-CowTnhEJ.js} +2 -2
- package/dist/packages/ui/dist/assets/index-Dw20IRhQ.css +1 -0
- package/dist/packages/ui/dist/assets/index-z2wv0d5d.js +47 -0
- package/dist/packages/ui/dist/index.html +2 -2
- package/package.json +3 -3
- package/dist/chunk-25TJC2CL.js +0 -48
- package/dist/chunk-3Q5RHGCA.js +0 -47
- package/dist/chunk-4W7FOGAB.js +0 -41
- package/dist/chunk-6AF3CVJT.js +0 -48
- package/dist/chunk-A3KEXFQS.js +0 -34
- package/dist/chunk-BAUINGGJ.js +0 -41
- package/dist/chunk-BOFUCRJX.js +0 -47
- package/dist/chunk-GGKGILIP.js +0 -54
- package/dist/chunk-IKN6C67W.js +0 -53
- package/dist/chunk-K7MYVIFK.js +0 -54
- package/dist/chunk-KHA5LVPE.js +0 -34
- package/dist/chunk-LSXGM6MB.js +0 -37
- package/dist/chunk-M54TDRM3.js +0 -29
- package/dist/chunk-M5GF4NAB.js +0 -45
- package/dist/chunk-UTZGBCXE.js +0 -38
- package/dist/chunk-UVTSMBM4.js +0 -43
- package/dist/chunk-XXE3S3OG.js +0 -44
- package/dist/chunk-YJRQCUVJ.js +0 -43
- package/dist/chunk-ZFTK4BDN.js +0 -41
- package/dist/chunk-ZMARAW37.js +0 -38
- package/dist/packages/ui/dist/assets/index-C5QnK82A.css +0 -1
- package/dist/packages/ui/dist/assets/index-CQ0a1cBg.js +0 -29
|
@@ -5,13 +5,14 @@ var __atticusUrl = (p) => new URL("./" + p, import.meta.url).href;
|
|
|
5
5
|
var __atticusPath = (p) => __atticusFileURLToPath(__atticusUrl(p));
|
|
6
6
|
import {
|
|
7
7
|
parseXml
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-TWQRPM76.js";
|
|
9
9
|
import {
|
|
10
|
+
JOINED_BY_PERSON,
|
|
10
11
|
ZipError,
|
|
11
12
|
peekZip,
|
|
12
13
|
readZip,
|
|
13
14
|
require_dist
|
|
14
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-PAINMSID.js";
|
|
15
16
|
import {
|
|
16
17
|
__toESM
|
|
17
18
|
} from "./chunk-TV45EUGM.js";
|
|
@@ -92,9 +93,9 @@ function isoDate(value) {
|
|
|
92
93
|
return !Number.isNaN(d.getTime()) && d.toISOString().startsWith(m[0]) ? m[0] : void 0;
|
|
93
94
|
}
|
|
94
95
|
function sourceDocument(fileName, content, docType, source, meta = {}) {
|
|
95
|
-
const
|
|
96
|
-
const version =
|
|
97
|
-
const author =
|
|
96
|
+
const clean2 = (s) => s && s.trim() ? s.trim() : void 0;
|
|
97
|
+
const version = clean2(meta.version);
|
|
98
|
+
const author = clean2(meta.author);
|
|
98
99
|
return {
|
|
99
100
|
schemaVersion: 1,
|
|
100
101
|
kind: "SourceDocument",
|
|
@@ -630,7 +631,7 @@ function reconcile(input) {
|
|
|
630
631
|
add({
|
|
631
632
|
key: i.id,
|
|
632
633
|
type: "code-only",
|
|
633
|
-
summary: `In code ${i.from} ${what} ${i.to}${i.sync === "async" ? "" : ` (${i.method ?? ""} ${i.normalizedPath}`.trimEnd() + ")"}${i.confidence === "inferred" ? ", seen at one end only" : ""}; the diagram doesn't show it.`,
|
|
634
|
+
summary: `In code ${i.from} ${what} ${i.to}${i.sync === "async" ? "" : ` (${i.method ?? ""} ${i.normalizedPath}`.trimEnd() + ")"}${i.confidence === "inferred" && !i.flags?.includes(JOINED_BY_PERSON) ? ", seen at one end only" : ""}; the diagram doesn't show it.`,
|
|
634
635
|
records: [i.id],
|
|
635
636
|
suggestion: {
|
|
636
637
|
text: `Add it to the diagram, or record why it is left out`,
|
|
@@ -1739,7 +1740,7 @@ function readHtml(src) {
|
|
|
1739
1740
|
}
|
|
1740
1741
|
if (!meta.date)
|
|
1741
1742
|
delete meta.date;
|
|
1742
|
-
const
|
|
1743
|
+
const clean2 = src.replace(/<!--[\s\S]*?-->/g, blank).replace(/<!\[CDATA\[[\s\S]*?\]\]>/g, blank).replace(/<![^>]*>|<\?[\s\S]*?\?>/g, blank).replace(/<(script|style|noscript|template|svg)\b[\s\S]*?<\/\1\s*>/gi, blank).replace(/<head\b[\s\S]*?<\/head\s*>/gi, blank);
|
|
1743
1744
|
const s = new Sections();
|
|
1744
1745
|
const tables = [];
|
|
1745
1746
|
let line = "";
|
|
@@ -1752,7 +1753,7 @@ function readHtml(src) {
|
|
|
1752
1753
|
let lineNo = 1;
|
|
1753
1754
|
const lineAt = (to) => {
|
|
1754
1755
|
for (; pos < to; pos++)
|
|
1755
|
-
if (
|
|
1756
|
+
if (clean2.charCodeAt(pos) === 10)
|
|
1756
1757
|
lineNo++;
|
|
1757
1758
|
return lineNo;
|
|
1758
1759
|
};
|
|
@@ -1779,8 +1780,8 @@ function readHtml(src) {
|
|
|
1779
1780
|
line += t;
|
|
1780
1781
|
}
|
|
1781
1782
|
};
|
|
1782
|
-
for (let m = tag.exec(
|
|
1783
|
-
text(
|
|
1783
|
+
for (let m = tag.exec(clean2); m; m = tag.exec(clean2)) {
|
|
1784
|
+
text(clean2.slice(last, m.index), last);
|
|
1784
1785
|
last = tag.lastIndex;
|
|
1785
1786
|
const close = m[1] === "/";
|
|
1786
1787
|
const name = m[2].toLowerCase();
|
|
@@ -1832,7 +1833,7 @@ function readHtml(src) {
|
|
|
1832
1833
|
else if (BLOCK.has(name) && !heading && cell === void 0)
|
|
1833
1834
|
flush();
|
|
1834
1835
|
}
|
|
1835
|
-
text(
|
|
1836
|
+
text(clean2.slice(last), last);
|
|
1836
1837
|
flush();
|
|
1837
1838
|
return {
|
|
1838
1839
|
...title ? { title } : {},
|
|
@@ -1884,7 +1885,11 @@ function wordText(p) {
|
|
|
1884
1885
|
out += "\n";
|
|
1885
1886
|
else if (c.name === "noBreakHyphen")
|
|
1886
1887
|
out += "-";
|
|
1887
|
-
else if (c.name
|
|
1888
|
+
else if (c.name === "AlternateContent") {
|
|
1889
|
+
const one = elements(c).find((x) => x.name === "Choice") ?? elements(c).find((x) => x.name === "Fallback");
|
|
1890
|
+
if (one)
|
|
1891
|
+
walk(one);
|
|
1892
|
+
} else if (c.name !== "pPr" && c.name !== "rPr" && c.name !== "del" && c.name !== "moveFrom")
|
|
1888
1893
|
walk(c);
|
|
1889
1894
|
}
|
|
1890
1895
|
};
|
|
@@ -2036,29 +2041,60 @@ var colIndex = (ref2) => {
|
|
|
2036
2041
|
return n - 1;
|
|
2037
2042
|
};
|
|
2038
2043
|
var stringItem = (si) => elements(si).flatMap((c) => c.name === "t" ? [c] : c.name === "r" ? childrenNamed(c, "t") : []).map(textOf).join("");
|
|
2039
|
-
function readXlsx(zip) {
|
|
2044
|
+
function readXlsx(zip, maxCells = MAX_CELLS) {
|
|
2040
2045
|
const wb = need(zip, "xl/workbook.xml");
|
|
2041
2046
|
const rels = relationships(zip.text("xl/_rels/workbook.xml.rels"));
|
|
2042
2047
|
const shared = childrenNamed(parseXmlTree(zip.text("xl/sharedStrings.xml") ?? ""), "si").map(stringItem);
|
|
2043
2048
|
const { title, meta } = coreProps(zip);
|
|
2044
2049
|
const s = new Sections();
|
|
2045
2050
|
const tables = [];
|
|
2051
|
+
const notes = [];
|
|
2052
|
+
let budget = maxCells;
|
|
2053
|
+
let unread = false;
|
|
2046
2054
|
findAll(child(wb, "sheets"), "sheet").forEach((sheet, i) => {
|
|
2055
|
+
const name = sheet.attrs.name ?? `Sheet ${i + 1}`;
|
|
2047
2056
|
const target = rels.get(relId(sheet) ?? "");
|
|
2048
2057
|
const part = target ? resolvePart("xl", target) : void 0;
|
|
2049
2058
|
const doc = part ? parseXmlTree(zip.text(part) ?? "") : void 0;
|
|
2050
2059
|
const rows = [];
|
|
2051
2060
|
let prev;
|
|
2061
|
+
let squeezed = false;
|
|
2052
2062
|
for (const row of findAll(child(doc, "sheetData"), "row")) {
|
|
2063
|
+
if (budget <= 0) {
|
|
2064
|
+
if (childrenNamed(row, "c").length)
|
|
2065
|
+
unread = true;
|
|
2066
|
+
if (unread)
|
|
2067
|
+
break;
|
|
2068
|
+
continue;
|
|
2069
|
+
}
|
|
2053
2070
|
const r = Number(row.attrs.r) || (prev ?? 0) + 1;
|
|
2071
|
+
if (r > EXCEL_ROWS) {
|
|
2072
|
+
notes.push(`${name}: row ${r} is past Excel's last row; skipped.`);
|
|
2073
|
+
continue;
|
|
2074
|
+
}
|
|
2054
2075
|
if (prev !== void 0)
|
|
2055
|
-
for (let k = prev + 1; k < r; k++)
|
|
2076
|
+
for (let k = prev + 1; k < Math.min(r, prev + 1 + MAX_GAP); k++)
|
|
2056
2077
|
rows.push([]);
|
|
2057
2078
|
prev = r;
|
|
2058
2079
|
const cells2 = [];
|
|
2059
2080
|
let next = 0;
|
|
2081
|
+
let shift = 0;
|
|
2060
2082
|
for (const c of childrenNamed(row, "c")) {
|
|
2061
|
-
const
|
|
2083
|
+
const col = c.attrs.r ? colIndex(c.attrs.r) : next;
|
|
2084
|
+
if (col >= EXCEL_COLUMNS)
|
|
2085
|
+
continue;
|
|
2086
|
+
if (budget <= 0) {
|
|
2087
|
+
unread = true;
|
|
2088
|
+
break;
|
|
2089
|
+
}
|
|
2090
|
+
budget--;
|
|
2091
|
+
next = col + 1;
|
|
2092
|
+
let at = Math.max(0, col - shift);
|
|
2093
|
+
if (at - cells2.length > MAX_GAP) {
|
|
2094
|
+
shift += at - cells2.length - MAX_GAP;
|
|
2095
|
+
at = cells2.length + MAX_GAP;
|
|
2096
|
+
squeezed = true;
|
|
2097
|
+
}
|
|
2062
2098
|
const v = textOf(child(c, "v"));
|
|
2063
2099
|
let value;
|
|
2064
2100
|
switch (c.attrs.t) {
|
|
@@ -2077,31 +2113,61 @@ function readXlsx(zip) {
|
|
|
2077
2113
|
while (cells2.length < at)
|
|
2078
2114
|
cells2.push("");
|
|
2079
2115
|
cells2[at] = value;
|
|
2080
|
-
next = at + 1;
|
|
2081
2116
|
}
|
|
2082
2117
|
while (cells2.length && cells2.at(-1) === "")
|
|
2083
2118
|
cells2.pop();
|
|
2084
2119
|
rows.push(cells2);
|
|
2085
2120
|
}
|
|
2121
|
+
if (squeezed)
|
|
2122
|
+
notes.push(`${name}: more than ${MAX_GAP} blank columns between cells were left out.`);
|
|
2086
2123
|
tables.push(rows);
|
|
2087
|
-
s.heading(
|
|
2124
|
+
s.heading(name, 1, { page: i + 1 });
|
|
2088
2125
|
for (const r of rows)
|
|
2089
2126
|
s.add(r.join(" "));
|
|
2090
2127
|
});
|
|
2091
|
-
|
|
2128
|
+
if (unread)
|
|
2129
|
+
notes.push(`The workbook has more than ${maxCells} cells; the rest wasn't read.`);
|
|
2130
|
+
return { ...title ? { title } : {}, sections: s.done(), tables, meta, notes };
|
|
2092
2131
|
}
|
|
2132
|
+
var EXCEL_ROWS = 1048576;
|
|
2133
|
+
var EXCEL_COLUMNS = 16384;
|
|
2134
|
+
var MAX_GAP = 1e3;
|
|
2135
|
+
var MAX_CELLS = 2e6;
|
|
2093
2136
|
|
|
2094
2137
|
// packages/ingestors/dist/pdf.js
|
|
2095
2138
|
import { constants, inflateSync } from "node:zlib";
|
|
2096
2139
|
var NO_TEXT = "No text was found in this PDF. It may be a scanned image, so a person needs to read it.";
|
|
2097
2140
|
var MAX_STREAM = 64 * 1024 * 1024;
|
|
2141
|
+
var MAX_DECODED = 256 * 1024 * 1024;
|
|
2142
|
+
var MAX_PACKED = 1e5;
|
|
2143
|
+
var MAX_PAGES = 1e4;
|
|
2144
|
+
var MAX_TEXT = 64 * 1024 * 1024;
|
|
2098
2145
|
var refs = (s) => [...s.matchAll(/(\d+)\s+\d+\s+R\b/g)].map((m) => Number(m[1]));
|
|
2099
2146
|
var ref = (dict, key) => {
|
|
2100
2147
|
const m = new RegExp(`/${key}\\s+(\\d+)\\s+\\d+\\s+R\\b`).exec(dict);
|
|
2101
2148
|
return m ? Number(m[1]) : void 0;
|
|
2102
2149
|
};
|
|
2103
2150
|
var isType = (dict, type) => new RegExp(`/Type\\s*/${type}(?![A-Za-z])`).test(dict);
|
|
2104
|
-
|
|
2151
|
+
var tooMuch = () => new ReadError(`This PDF's streams inflate to more than ${MAX_DECODED / 1024 / 1024} MB, so it isn't read`);
|
|
2152
|
+
function decodeStream(o, d) {
|
|
2153
|
+
if (d.cache.has(o))
|
|
2154
|
+
return d.cache.get(o);
|
|
2155
|
+
if (o.stream && d.left <= 0)
|
|
2156
|
+
throw tooMuch();
|
|
2157
|
+
const max = Math.min(MAX_STREAM, d.left);
|
|
2158
|
+
const out = decodeOnce(o, max);
|
|
2159
|
+
if (out === "too-big") {
|
|
2160
|
+
if (max < MAX_STREAM)
|
|
2161
|
+
throw tooMuch();
|
|
2162
|
+
d.cache.set(o, void 0);
|
|
2163
|
+
return void 0;
|
|
2164
|
+
}
|
|
2165
|
+
d.cache.set(o, out);
|
|
2166
|
+
if (out)
|
|
2167
|
+
d.left -= out.length;
|
|
2168
|
+
return out;
|
|
2169
|
+
}
|
|
2170
|
+
function decodeOnce(o, max) {
|
|
2105
2171
|
if (!o.stream)
|
|
2106
2172
|
return void 0;
|
|
2107
2173
|
const filter = /\/Filter\s*(\[[^\]]*\]|\/\w+)/.exec(o.dict)?.[1];
|
|
@@ -2110,20 +2176,23 @@ function decodeStream(o) {
|
|
|
2110
2176
|
const names = filter.match(/\/\w+/g) ?? [];
|
|
2111
2177
|
if (names.length !== 1 || names[0] !== "/FlateDecode")
|
|
2112
2178
|
return void 0;
|
|
2179
|
+
const big = (e) => e.code === "ERR_BUFFER_TOO_LARGE";
|
|
2113
2180
|
try {
|
|
2114
|
-
return inflateSync(o.stream, { maxOutputLength:
|
|
2115
|
-
} catch {
|
|
2181
|
+
return inflateSync(o.stream, { maxOutputLength: max });
|
|
2182
|
+
} catch (e) {
|
|
2183
|
+
if (big(e))
|
|
2184
|
+
return "too-big";
|
|
2116
2185
|
try {
|
|
2117
2186
|
return inflateSync(o.stream, {
|
|
2118
2187
|
finishFlush: constants.Z_SYNC_FLUSH,
|
|
2119
|
-
maxOutputLength:
|
|
2188
|
+
maxOutputLength: max
|
|
2120
2189
|
});
|
|
2121
|
-
} catch {
|
|
2122
|
-
return void 0;
|
|
2190
|
+
} catch (e2) {
|
|
2191
|
+
return big(e2) ? "too-big" : void 0;
|
|
2123
2192
|
}
|
|
2124
2193
|
}
|
|
2125
2194
|
}
|
|
2126
|
-
function objects(src, bytes) {
|
|
2195
|
+
function objects(src, bytes, d) {
|
|
2127
2196
|
const out = /* @__PURE__ */ new Map();
|
|
2128
2197
|
const re = /(\d+)\s+(\d+)\s+obj\b/g;
|
|
2129
2198
|
for (let m = re.exec(src); m; m = re.exec(src)) {
|
|
@@ -2156,12 +2225,14 @@ function objects(src, bytes) {
|
|
|
2156
2225
|
for (const o of [...out.values()]) {
|
|
2157
2226
|
if (!isType(o.dict, "ObjStm"))
|
|
2158
2227
|
continue;
|
|
2159
|
-
const data = decodeStream(o)?.toString("latin1");
|
|
2160
|
-
const n = Number(/\/N\s+(\d+)/.exec(o.dict)?.[1] ?? 0);
|
|
2228
|
+
const data = decodeStream(o, d)?.toString("latin1");
|
|
2161
2229
|
const first = Number(/\/First\s+(\d+)/.exec(o.dict)?.[1] ?? 0);
|
|
2162
|
-
if (!data
|
|
2230
|
+
if (!data)
|
|
2163
2231
|
continue;
|
|
2164
2232
|
const head = data.slice(0, first).trim().split(/\s+/).map(Number);
|
|
2233
|
+
const n = Math.min(Number(/\/N\s+(\d+)/.exec(o.dict)?.[1] ?? 0), Math.floor(head.length / 2), MAX_PACKED);
|
|
2234
|
+
if (!n)
|
|
2235
|
+
continue;
|
|
2165
2236
|
for (let k = 0; k < n; k++) {
|
|
2166
2237
|
const num = head[2 * k];
|
|
2167
2238
|
const off = first + head[2 * k + 1];
|
|
@@ -2230,28 +2301,86 @@ function readLiteral(src, i) {
|
|
|
2230
2301
|
return [src.slice(i, k), k + 1];
|
|
2231
2302
|
}
|
|
2232
2303
|
function hexBytes(h) {
|
|
2233
|
-
const
|
|
2234
|
-
const even =
|
|
2304
|
+
const clean2 = h.replace(/[^0-9a-fA-F]/g, "");
|
|
2305
|
+
const even = clean2.length % 2 ? clean2 + "0" : clean2;
|
|
2235
2306
|
const out = [];
|
|
2236
2307
|
for (let i = 0; i < even.length; i += 2)
|
|
2237
2308
|
out.push(parseInt(even.slice(i, i + 2), 16));
|
|
2238
2309
|
return out;
|
|
2239
2310
|
}
|
|
2240
|
-
function
|
|
2311
|
+
function parseToUnicode(cmap) {
|
|
2312
|
+
const map = /* @__PURE__ */ new Map();
|
|
2313
|
+
const utf16 = (h) => {
|
|
2314
|
+
const b = hexBytes(h);
|
|
2315
|
+
let out = "";
|
|
2316
|
+
for (let i = 0; i + 1 < b.length; i += 2)
|
|
2317
|
+
out += String.fromCharCode(b[i] << 8 | b[i + 1]);
|
|
2318
|
+
return out;
|
|
2319
|
+
};
|
|
2320
|
+
const space = /begincodespacerange\s*<([0-9a-fA-F]+)>/.exec(cmap)?.[1];
|
|
2321
|
+
const bytes = space && space.length <= 2 ? 1 : 2;
|
|
2322
|
+
for (const block of cmap.matchAll(/beginbfchar([\s\S]*?)endbfchar/g))
|
|
2323
|
+
for (const m of block[1].matchAll(/<([0-9a-fA-F]+)>\s*<([0-9a-fA-F]*)>/g))
|
|
2324
|
+
map.set(parseInt(m[1], 16), utf16(m[2]));
|
|
2325
|
+
for (const block of cmap.matchAll(/beginbfrange([\s\S]*?)endbfrange/g))
|
|
2326
|
+
for (const m of block[1].matchAll(/<([0-9a-fA-F]+)>\s*<([0-9a-fA-F]+)>\s*(?:<([0-9a-fA-F]*)>|\[([^\]]*)\])/g)) {
|
|
2327
|
+
const lo = parseInt(m[1], 16);
|
|
2328
|
+
const hi = Math.min(parseInt(m[2], 16), lo + 65535);
|
|
2329
|
+
if (m[3] !== void 0) {
|
|
2330
|
+
const start = utf16(m[3]);
|
|
2331
|
+
const last = start.charCodeAt(start.length - 1);
|
|
2332
|
+
for (let c = lo; c <= hi; c++)
|
|
2333
|
+
map.set(c, start.slice(0, -1) + String.fromCharCode(last + (c - lo)));
|
|
2334
|
+
} else {
|
|
2335
|
+
const each = [...m[4].matchAll(/<([0-9a-fA-F]*)>/g)].map((x) => utf16(x[1]));
|
|
2336
|
+
each.forEach((t, k) => lo + k <= hi && map.set(lo + k, t));
|
|
2337
|
+
}
|
|
2338
|
+
}
|
|
2339
|
+
return { map, bytes };
|
|
2340
|
+
}
|
|
2341
|
+
function fontText(b, f) {
|
|
2342
|
+
if (!f?.map)
|
|
2343
|
+
return bytesText(b);
|
|
2344
|
+
let out = "";
|
|
2345
|
+
for (let i = 0; i < b.length; i += f.bytes) {
|
|
2346
|
+
const code = f.bytes === 2 ? b[i] << 8 | (b[i + 1] ?? 0) : b[i];
|
|
2347
|
+
out += f.map.get(code) ?? (f.bytes === 1 ? String.fromCharCode(code) : "");
|
|
2348
|
+
}
|
|
2349
|
+
return clean(out);
|
|
2350
|
+
}
|
|
2351
|
+
function clean(s) {
|
|
2352
|
+
let out = "";
|
|
2353
|
+
for (const ch of s) {
|
|
2354
|
+
const c = ch.charCodeAt(0);
|
|
2355
|
+
if (c >= 32 ? c !== 127 : c === 9 || c === 10 || c === 13)
|
|
2356
|
+
out += ch;
|
|
2357
|
+
}
|
|
2358
|
+
return out;
|
|
2359
|
+
}
|
|
2360
|
+
function contentText(src, fonts = /* @__PURE__ */ new Map(), said = {}) {
|
|
2241
2361
|
const lines = [];
|
|
2242
2362
|
let cur = "";
|
|
2363
|
+
let font;
|
|
2243
2364
|
const newline = () => {
|
|
2244
2365
|
if (cur.trim())
|
|
2245
2366
|
lines.push(cur.replace(/\s+/g, " ").trim());
|
|
2246
2367
|
cur = "";
|
|
2247
2368
|
};
|
|
2369
|
+
const text = (b) => {
|
|
2370
|
+
if (font?.unreadable) {
|
|
2371
|
+
if (b.length)
|
|
2372
|
+
said.unreadable = true;
|
|
2373
|
+
return "";
|
|
2374
|
+
}
|
|
2375
|
+
return fontText(b, font);
|
|
2376
|
+
};
|
|
2248
2377
|
const show = (tok) => {
|
|
2249
2378
|
if (tok?.t === "str")
|
|
2250
|
-
cur +=
|
|
2379
|
+
cur += text(tok.v);
|
|
2251
2380
|
else if (tok?.t === "arr")
|
|
2252
2381
|
for (const x of tok.v) {
|
|
2253
2382
|
if (x.t === "str")
|
|
2254
|
-
cur +=
|
|
2383
|
+
cur += text(x.v);
|
|
2255
2384
|
else if (x.t === "num" && x.v < -200)
|
|
2256
2385
|
cur += " ";
|
|
2257
2386
|
}
|
|
@@ -2289,7 +2418,7 @@ function contentText(src) {
|
|
|
2289
2418
|
i++;
|
|
2290
2419
|
} else if (c === "/") {
|
|
2291
2420
|
const m = /^\/[^\s/[\]()<>{}%]*/.exec(src.slice(i, i + 128));
|
|
2292
|
-
push({ t: "
|
|
2421
|
+
push({ t: "name", v: m[0].slice(1) });
|
|
2293
2422
|
i += m[0].length;
|
|
2294
2423
|
} else {
|
|
2295
2424
|
const m = /^[+-]?(\d+\.?\d*|\.\d+)/.exec(src.slice(i, i + 32));
|
|
@@ -2323,6 +2452,11 @@ function contentText(src) {
|
|
|
2323
2452
|
lastY = y;
|
|
2324
2453
|
break;
|
|
2325
2454
|
}
|
|
2455
|
+
case "Tf": {
|
|
2456
|
+
const name = stack[stack.length - 2];
|
|
2457
|
+
font = name?.t === "name" ? fonts.get(name.v) : void 0;
|
|
2458
|
+
break;
|
|
2459
|
+
}
|
|
2326
2460
|
case "Tj":
|
|
2327
2461
|
case "TJ":
|
|
2328
2462
|
show(stack.at(-1));
|
|
@@ -2368,7 +2502,13 @@ function pdfDate(s) {
|
|
|
2368
2502
|
function readPdf(bytes) {
|
|
2369
2503
|
const buf = Buffer.from(bytes.buffer, bytes.byteOffset, bytes.byteLength);
|
|
2370
2504
|
const src = buf.toString("latin1");
|
|
2371
|
-
const
|
|
2505
|
+
const decoding = {
|
|
2506
|
+
cache: /* @__PURE__ */ new Map(),
|
|
2507
|
+
texts: /* @__PURE__ */ new Map(),
|
|
2508
|
+
left: MAX_DECODED,
|
|
2509
|
+
textLeft: MAX_TEXT
|
|
2510
|
+
};
|
|
2511
|
+
const objs = objects(src, buf, decoding);
|
|
2372
2512
|
const trailers = [...src.matchAll(/trailer\s*(<<[\s\S]*?>>)/g)].map((m) => m[1]);
|
|
2373
2513
|
for (const o of objs.values())
|
|
2374
2514
|
if (isType(o.dict, "XRef"))
|
|
@@ -2428,18 +2568,109 @@ function readPdf(bytes) {
|
|
|
2428
2568
|
pages2.push(n);
|
|
2429
2569
|
}
|
|
2430
2570
|
const s = new Sections();
|
|
2571
|
+
if (pages2.length > MAX_PAGES) {
|
|
2572
|
+
notes.push(`This PDF has ${pages2.length} pages; the first ${MAX_PAGES} are read.`);
|
|
2573
|
+
pages2.length = MAX_PAGES;
|
|
2574
|
+
}
|
|
2575
|
+
const dictOf = (owner, key) => {
|
|
2576
|
+
const r = ref(owner, key);
|
|
2577
|
+
if (r !== void 0)
|
|
2578
|
+
return objs.get(r)?.dict;
|
|
2579
|
+
const at = new RegExp(`/${key}\\s*<<`).exec(owner);
|
|
2580
|
+
if (!at)
|
|
2581
|
+
return void 0;
|
|
2582
|
+
let depth = 0;
|
|
2583
|
+
for (let k = at.index + at[0].length - 2; k < owner.length - 1; k++) {
|
|
2584
|
+
if (owner[k] === "<" && owner[k + 1] === "<") {
|
|
2585
|
+
depth++;
|
|
2586
|
+
k++;
|
|
2587
|
+
} else if (owner[k] === ">" && owner[k + 1] === ">") {
|
|
2588
|
+
if (--depth === 0)
|
|
2589
|
+
return owner.slice(at.index + at[0].length - 2, k + 2);
|
|
2590
|
+
k++;
|
|
2591
|
+
}
|
|
2592
|
+
}
|
|
2593
|
+
return void 0;
|
|
2594
|
+
};
|
|
2595
|
+
const fontCache = /* @__PURE__ */ new Map();
|
|
2596
|
+
const fontOf = (no) => {
|
|
2597
|
+
const had = fontCache.get(no);
|
|
2598
|
+
if (had)
|
|
2599
|
+
return had;
|
|
2600
|
+
const d = objs.get(no)?.dict ?? "";
|
|
2601
|
+
const type0 = /\/Subtype\s*\/Type0\b/.test(d);
|
|
2602
|
+
const tu = ref(d, "ToUnicode");
|
|
2603
|
+
const cmap = tu !== void 0 ? objs.get(tu) : void 0;
|
|
2604
|
+
const text = cmap ? decodeStream(cmap, decoding)?.toString("latin1") : void 0;
|
|
2605
|
+
const f = text ? (() => {
|
|
2606
|
+
const t = parseToUnicode(text);
|
|
2607
|
+
return { map: t.map, bytes: type0 ? 2 : 1 };
|
|
2608
|
+
})() : type0 ? { bytes: 2, unreadable: true } : { bytes: 1 };
|
|
2609
|
+
fontCache.set(no, f);
|
|
2610
|
+
return f;
|
|
2611
|
+
};
|
|
2612
|
+
const pageFonts = (pageDict) => {
|
|
2613
|
+
const out = /* @__PURE__ */ new Map();
|
|
2614
|
+
let d = pageDict;
|
|
2615
|
+
for (let up = 0; d && up < 32; up++) {
|
|
2616
|
+
const res = dictOf(d, "Resources");
|
|
2617
|
+
const fd = res ? dictOf(res, "Font") : void 0;
|
|
2618
|
+
if (fd) {
|
|
2619
|
+
for (const m of fd.matchAll(/\/([^\s/[\]()<>{}%]+)\s+(\d+)\s+\d+\s+R\b/g))
|
|
2620
|
+
if (!out.has(m[1]))
|
|
2621
|
+
out.set(m[1], fontOf(Number(m[2])));
|
|
2622
|
+
break;
|
|
2623
|
+
}
|
|
2624
|
+
const parent = ref(d, "Parent");
|
|
2625
|
+
d = parent !== void 0 ? objs.get(parent)?.dict : void 0;
|
|
2626
|
+
}
|
|
2627
|
+
return out;
|
|
2628
|
+
};
|
|
2629
|
+
let unreadablePages = 0;
|
|
2431
2630
|
pages2.forEach((n, i) => {
|
|
2432
2631
|
const dict = objs.get(n).dict;
|
|
2632
|
+
const fonts = pageFonts(dict);
|
|
2633
|
+
const key = [...fonts].map(([k, f]) => `${k}:${f.map ? "m" : f.unreadable ? "u" : "l"}`).join(",");
|
|
2634
|
+
const said = {};
|
|
2433
2635
|
const contents = /\/Contents\s*(\[[^\]]*\]|\d+\s+\d+\s+R)/.exec(dict)?.[1] ?? "";
|
|
2434
2636
|
let streams = refs(contents);
|
|
2435
2637
|
if (streams.length === 1 && !objs.get(streams[0])?.stream)
|
|
2436
2638
|
streams = refs(objs.get(streams[0])?.dict ?? "");
|
|
2437
|
-
const text = streams.map((r) => objs.get(r)).
|
|
2639
|
+
const text = streams.map((r) => objs.get(r)).flatMap((o) => {
|
|
2640
|
+
if (!o)
|
|
2641
|
+
return [];
|
|
2642
|
+
let byFonts = decoding.texts.get(o);
|
|
2643
|
+
if (!byFonts)
|
|
2644
|
+
decoding.texts.set(o, byFonts = /* @__PURE__ */ new Map());
|
|
2645
|
+
let hit = byFonts.get(key);
|
|
2646
|
+
if (!hit) {
|
|
2647
|
+
const t = decodeStream(o, decoding)?.toString("latin1");
|
|
2648
|
+
const one = {};
|
|
2649
|
+
hit = {
|
|
2650
|
+
lines: t === void 0 ? [] : contentText(t, fonts, one),
|
|
2651
|
+
unreadable: !!one.unreadable
|
|
2652
|
+
};
|
|
2653
|
+
byFonts.set(key, hit);
|
|
2654
|
+
}
|
|
2655
|
+
if (hit.unreadable)
|
|
2656
|
+
said.unreadable = true;
|
|
2657
|
+
const lines = hit.lines;
|
|
2658
|
+
decoding.textLeft -= lines.reduce((n2, l) => n2 + l.length, 0);
|
|
2659
|
+
if (decoding.textLeft < 0)
|
|
2660
|
+
throw new ReadError(`This PDF's pages hold more than ${MAX_TEXT / 1024 / 1024} MB of text, so it isn't read`);
|
|
2661
|
+
return lines;
|
|
2662
|
+
});
|
|
2663
|
+
if (said.unreadable)
|
|
2664
|
+
unreadablePages++;
|
|
2438
2665
|
s.heading("", 0, { page: i + 1 });
|
|
2439
2666
|
for (const l of text)
|
|
2440
2667
|
s.add(l);
|
|
2441
2668
|
});
|
|
2442
2669
|
const sections = s.done();
|
|
2670
|
+
if (unreadablePages) {
|
|
2671
|
+
notes.push(`${unreadablePages} page${unreadablePages === 1 ? "" : "s"} of this PDF use a font with no map to letters, so some text wasn't read. A person needs to read ${unreadablePages === 1 ? "it" : "them"}.`);
|
|
2672
|
+
meta.flags = ["needs-reading"];
|
|
2673
|
+
}
|
|
2443
2674
|
if (!sections.length) {
|
|
2444
2675
|
notes.push(NO_TEXT);
|
|
2445
2676
|
meta.flags = ["needs-reading"];
|
|
@@ -2882,6 +3113,7 @@ var TRAFFIC_SOURCES = {
|
|
|
2882
3113
|
export {
|
|
2883
3114
|
curatedAliases,
|
|
2884
3115
|
resolveNames,
|
|
3116
|
+
labelText,
|
|
2885
3117
|
readDrawio,
|
|
2886
3118
|
drawioIngestor,
|
|
2887
3119
|
reconcile,
|
|
@@ -16,22 +16,22 @@ import {
|
|
|
16
16
|
featureSuggestLinks,
|
|
17
17
|
featureSuggestNames,
|
|
18
18
|
featureTag
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-A2G72UI4.js";
|
|
20
20
|
import "./chunk-VOGCSYOI.js";
|
|
21
|
-
import "./chunk-
|
|
22
|
-
import "./chunk-
|
|
23
|
-
import "./chunk-
|
|
24
|
-
import "./chunk-
|
|
25
|
-
import "./chunk-
|
|
26
|
-
import "./chunk-
|
|
27
|
-
import "./chunk-
|
|
28
|
-
import "./chunk-
|
|
29
|
-
import "./chunk-
|
|
30
|
-
import "./chunk-
|
|
31
|
-
import "./chunk-
|
|
32
|
-
import "./chunk-
|
|
33
|
-
import "./chunk-
|
|
34
|
-
import "./chunk-
|
|
21
|
+
import "./chunk-HSZMPH5T.js";
|
|
22
|
+
import "./chunk-D2WSW4GU.js";
|
|
23
|
+
import "./chunk-4KNOJC6J.js";
|
|
24
|
+
import "./chunk-4SLBCEPD.js";
|
|
25
|
+
import "./chunk-64AADMTW.js";
|
|
26
|
+
import "./chunk-JYMIB5XY.js";
|
|
27
|
+
import "./chunk-CPK7QSBG.js";
|
|
28
|
+
import "./chunk-YO2PKTXT.js";
|
|
29
|
+
import "./chunk-TWQRPM76.js";
|
|
30
|
+
import "./chunk-XOL3GFW2.js";
|
|
31
|
+
import "./chunk-QHJJMZLX.js";
|
|
32
|
+
import "./chunk-7AB6OWTV.js";
|
|
33
|
+
import "./chunk-PAINMSID.js";
|
|
34
|
+
import "./chunk-ODMBPDDV.js";
|
|
35
35
|
import "./chunk-TV45EUGM.js";
|
|
36
36
|
export {
|
|
37
37
|
catalogMigrate,
|