@contentrain/wp-import 0.10.2 → 0.10.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.d.mts +1 -0
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +32 -2
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.d.mts
CHANGED
|
@@ -162,6 +162,7 @@ declare function phpUnserialize(str: string): unknown;
|
|
|
162
162
|
declare function tryUnserialize(s: string): UnserializeResult;
|
|
163
163
|
//#endregion
|
|
164
164
|
//#region src/core.d.ts
|
|
165
|
+
/** Plain text from markup: tags out first (so `<b>` survives as text), then references decoded. */
|
|
165
166
|
declare const strip: (s: unknown) => string;
|
|
166
167
|
/** Entry id: deterministic hex from a stable key (model:slug style). */
|
|
167
168
|
declare const hexId: (s: string) => string;
|
package/dist/index.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/wxr.ts","../src/rest.ts","../src/contentrain.ts","../src/comments.ts","../src/php-unserialize.ts","../src/core.ts","../src/delta.ts"],"mappings":";;;;UA2BiB,QAAA;EACf,UAAA;IAAc,QAAA;IAAkB,OAAA;IAAiB,MAAA;IAAgB,IAAA;EAAA;EACjE,UAAA;EACA,gBAAA;EACA,MAAA,EAAQ,MAAA;AAAA;AAAA,UAGO,cAAA;EACf,GAAA,EAAK,KAAA;EACL,KAAA,EAAO,QAAA;AAAA;AAAA,iBAiBa,QAAA,CAAS,KAAA,WAAgB,QAAA,EAAU,IAAA;EAAS,IAAA;AAAA,IAAkB,OAAA,CAAQ,cAAA;;;UCnC3E,iBAAA;EACf,MAAA;;EAEA,SAAA,UAAmB,KAAA;EDMI;;;;;;;;ECGvB,IAAA;IAAS,IAAA;IAAc,WAAA;EAAA;EACvB,OAAA;EDAc;AAGhB;;;;ECGE,WAAA;EDFK;;;;ECOL,QAAA;EACA,IAAA;AAAA;AAAA,UAGe,gBAAA;EACf,GAAA,EAAK,KAAA;EACL,QAAA;EDKkF;;;;;;;;ECIlF,UAAA;IAAc,MAAA;IAA0C,SAAA;EAAA;;;AAvC1D;;;;;;;;;;EAoDE,IAAA;AAAA;AAAA,iBA2EoB,cAAA,CAAe,OAAA,EAAS,iBAAA,GAAoB,OAAA,CAAQ,gBAAA;;;UCrHzD,YAAA;EACf,cAAA;EACA,aAAA;EACA,cAAA;EACA,WAAA,EAAa,MAAA;EACb,UAAA,EAAY,MAAA;EFFE;EEId,WAAA,EAAa,MAAA;EFPC;EESd,mBAAA,EAAqB,MAAA;EFT4B;EEWjD,mBAAA,EAAqB,MAAA;EFVrB;EEYA,oBAAA;EACA,aAAA;EACA,iBAAA;EACA,MAAA,EAAQ,MAAA;IAAiB,IAAA;IAAc,MAAA;IAAgB,MAAA;IAAgB,OAAA;EAAA;EFTvE;EEWA,OAAA;EFVA;EEYA,kBAAA;EFZe;;AAiBjB;;;;EEEE,yBAAA;EFFkF;;;;EEOlF,kBAAA;AAAA;AAAA,UAGe,iBAAA;EACf,KAAA,EAAO,MAAA;EACP,gBAAA,EAAkB,cAAA;EAClB,MAAA,EAAQ,YAAA;AAAA;AAAA,iBA0CM,gBAAA,CAAiB,GAAA,EAAK,KAAA,EAAO,IAAA;EAAS,SAAA;AAAA,IAAuB,iBAAA;;;;;;AFjF7E;;;iBGbgB,cAAA,CAAe,GAAA,EAAK,KAAA;EAAU,QAAA,EAAU,UAAA;EAAc,QAAA,EAAU,WAAA,CAAY,cAAA;AAAA;AAAA,iBAgB5E,mBAAA,CAAoB,GAAA,EAAK,KAAA,EAAO,OAAA,EAAS,cAAA,EAAgB,IAAA;EAAS,YAAA;AAAA,IAA0B,cAAA;;iBAiB5F,iBAAA,CAAkB,GAAA,EAAK,cAAA,GAAiB,eAAA;;;UC3CvC,iBAAA;EACf,EAAA;EACA,UAAA;EACA,KAAA;EACA,KAAA;AAAA;AAAA,iBAGc,eAAA,CAAgB,CAAA,YAAa,CAAA;AAAA,iBAI7B,cAAA,CAAe,GAAA;;iBAyFf,cAAA,CAAe,CAAA,WAAY,iBAAA
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/wxr.ts","../src/rest.ts","../src/contentrain.ts","../src/comments.ts","../src/php-unserialize.ts","../src/core.ts","../src/delta.ts"],"mappings":";;;;UA2BiB,QAAA;EACf,UAAA;IAAc,QAAA;IAAkB,OAAA;IAAiB,MAAA;IAAgB,IAAA;EAAA;EACjE,UAAA;EACA,gBAAA;EACA,MAAA,EAAQ,MAAA;AAAA;AAAA,UAGO,cAAA;EACf,GAAA,EAAK,KAAA;EACL,KAAA,EAAO,QAAA;AAAA;AAAA,iBAiBa,QAAA,CAAS,KAAA,WAAgB,QAAA,EAAU,IAAA;EAAS,IAAA;AAAA,IAAkB,OAAA,CAAQ,cAAA;;;UCnC3E,iBAAA;EACf,MAAA;;EAEA,SAAA,UAAmB,KAAA;EDMI;;;;;;;;ECGvB,IAAA;IAAS,IAAA;IAAc,WAAA;EAAA;EACvB,OAAA;EDAc;AAGhB;;;;ECGE,WAAA;EDFK;;;;ECOL,QAAA;EACA,IAAA;AAAA;AAAA,UAGe,gBAAA;EACf,GAAA,EAAK,KAAA;EACL,QAAA;EDKkF;;;;;;;;ECIlF,UAAA;IAAc,MAAA;IAA0C,SAAA;EAAA;;;AAvC1D;;;;;;;;;;EAoDE,IAAA;AAAA;AAAA,iBA2EoB,cAAA,CAAe,OAAA,EAAS,iBAAA,GAAoB,OAAA,CAAQ,gBAAA;;;UCrHzD,YAAA;EACf,cAAA;EACA,aAAA;EACA,cAAA;EACA,WAAA,EAAa,MAAA;EACb,UAAA,EAAY,MAAA;EFFE;EEId,WAAA,EAAa,MAAA;EFPC;EESd,mBAAA,EAAqB,MAAA;EFT4B;EEWjD,mBAAA,EAAqB,MAAA;EFVrB;EEYA,oBAAA;EACA,aAAA;EACA,iBAAA;EACA,MAAA,EAAQ,MAAA;IAAiB,IAAA;IAAc,MAAA;IAAgB,MAAA;IAAgB,OAAA;EAAA;EFTvE;EEWA,OAAA;EFVA;EEYA,kBAAA;EFZe;;AAiBjB;;;;EEEE,yBAAA;EFFkF;;;;EEOlF,kBAAA;AAAA;AAAA,UAGe,iBAAA;EACf,KAAA,EAAO,MAAA;EACP,gBAAA,EAAkB,cAAA;EAClB,MAAA,EAAQ,YAAA;AAAA;AAAA,iBA0CM,gBAAA,CAAiB,GAAA,EAAK,KAAA,EAAO,IAAA;EAAS,SAAA;AAAA,IAAuB,iBAAA;;;;;;AFjF7E;;;iBGbgB,cAAA,CAAe,GAAA,EAAK,KAAA;EAAU,QAAA,EAAU,UAAA;EAAc,QAAA,EAAU,WAAA,CAAY,cAAA;AAAA;AAAA,iBAgB5E,mBAAA,CAAoB,GAAA,EAAK,KAAA,EAAO,OAAA,EAAS,cAAA,EAAgB,IAAA;EAAS,YAAA;AAAA,IAA0B,cAAA;;iBAiB5F,iBAAA,CAAkB,GAAA,EAAK,cAAA,GAAiB,eAAA;;;UC3CvC,iBAAA;EACf,EAAA;EACA,UAAA;EACA,KAAA;EACA,KAAA;AAAA;AAAA,iBAGc,eAAA,CAAgB,CAAA,YAAa,CAAA;AAAA,iBAI7B,cAAA,CAAe,GAAA;;iBAyFf,cAAA,CAAe,CAAA,WAAY,iBAAA;;;;cCzE9B,KAAA,GAAS,CAAA;;cAGT,KAAA,GAAS,CAAA;;cAcT,KAAA,GAAS,CAAA;;ALdtB;;;;;;;;cK6Ca,UAAA,EAAU,MAAA;;cAIV,WAAA,EAAW,MAAA;;cAOX,UAAA,GAAc,CAAA;AAAA,cAGd,OAAA,GAAW,CAAA;;;;UC1EP,UAAA;EACf,KAAA,EAAO,MAAA;EACP,gBAAA,EAAkB,cAAA;AAAA;AAAA,UAGH,oBAAA;ENOD;EMLd,KAAA,EAAO,eAAA;ENEO;EMAd,KAAA,EAAO,UAAA;ENA0C;EMEjD,QAAA,GAAW,UAAA;ENDX;;;;;EMOA,UAAA;ENFe;;;;EMOf,SAAA;AAAA;AAAA,cAGW,kBAAA;AAAA,cACA,iBAAA;;;ANQb;;;;;;;;;;iBM8NgB,eAAA,CAAgB,KAAA,EAAO,oBAAA,GAAuB,eAAA;;iBAkC9C,uBAAA,CAAwB,IAAA,EAAM,eAAA"}
|
package/dist/index.mjs
CHANGED
|
@@ -112,7 +112,37 @@ function tryUnserialize(s) {
|
|
|
112
112
|
//#endregion
|
|
113
113
|
//#region src/core.ts
|
|
114
114
|
const norm = (s) => String(s ?? "").replace(/\s+/g, " ").trim();
|
|
115
|
-
const
|
|
115
|
+
const ENTITIES = {
|
|
116
|
+
amp: "&",
|
|
117
|
+
lt: "<",
|
|
118
|
+
gt: ">",
|
|
119
|
+
quot: "\"",
|
|
120
|
+
apos: "'",
|
|
121
|
+
nbsp: " ",
|
|
122
|
+
hellip: "…",
|
|
123
|
+
mdash: "—",
|
|
124
|
+
ndash: "–",
|
|
125
|
+
rsquo: "’",
|
|
126
|
+
lsquo: "‘",
|
|
127
|
+
rdquo: "”",
|
|
128
|
+
ldquo: "“"
|
|
129
|
+
};
|
|
130
|
+
/**
|
|
131
|
+
* Decode character references once: `&lt;` is `<`, not `<`. A plain-text field
|
|
132
|
+
* is escaped where it is printed (Astro's text escaping), so a reference left in it
|
|
133
|
+
* would print as `&hellip;`. An unknown name or a code point out of range stays.
|
|
134
|
+
*/
|
|
135
|
+
const decodeEntities = (s) => s.replace(/&(?:#(\d+)|#x([0-9a-f]+)|([a-z]+));/gi, (m, dec, hex, name) => {
|
|
136
|
+
if (name !== void 0) return ENTITIES[name] ?? ENTITIES[name.toLowerCase()] ?? m;
|
|
137
|
+
const code = dec !== void 0 ? Number(dec) : Number.parseInt(hex, 16);
|
|
138
|
+
try {
|
|
139
|
+
return String.fromCodePoint(code);
|
|
140
|
+
} catch {
|
|
141
|
+
return m;
|
|
142
|
+
}
|
|
143
|
+
});
|
|
144
|
+
/** Plain text from markup: tags out first (so `<b>` survives as text), then references decoded. */
|
|
145
|
+
const strip = (s) => norm(decodeEntities(String(s ?? "").replace(/<[^>]*>/g, " ")));
|
|
116
146
|
/** Entry id: deterministic hex from a stable key (model:slug style). */
|
|
117
147
|
const hexId = (s) => createHash("sha1").update(s).digest("hex").slice(0, 24);
|
|
118
148
|
const sortDeep = (v) => Array.isArray(v) ? v.map(sortDeep) : v && typeof v === "object" ? Object.fromEntries(Object.keys(v).toSorted().map((k) => [k, sortDeep(v[k])])) : v;
|
|
@@ -2875,7 +2905,7 @@ function rawToContentrain(raw, opts) {
|
|
|
2875
2905
|
open_in_new_tab: i.target_attr === "_blank"
|
|
2876
2906
|
};
|
|
2877
2907
|
if (i.parent && !i.parent_unresolved) e.parent = itemRef(i.parent);
|
|
2878
|
-
if (i.target.kind === "url" && i.url) e.url = i.url;
|
|
2908
|
+
if ((i.target.kind === "url" || i.target.kind === "archive") && i.url) e.url = i.url;
|
|
2879
2909
|
if (i.target.kind === "post" && i.target.resolved && i.target.id != null) {
|
|
2880
2910
|
const pe = postEntry.get(i.target.id);
|
|
2881
2911
|
if (pe) e.target = toTarget.ref(pe);
|