@yaebal/fmt 0.0.1 → 0.0.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.
- package/lib/index.test.js +6 -6
- package/lib/index.test.js.map +1 -1
- package/package.json +2 -2
- package/src/index.test.ts +7 -7
package/lib/index.test.js
CHANGED
|
@@ -13,9 +13,9 @@ test("html: basic tags map to entities", () => {
|
|
|
13
13
|
});
|
|
14
14
|
});
|
|
15
15
|
test("html: link carries href, spoiler variants", () => {
|
|
16
|
-
assert.deepEqual(html `<a href="https://
|
|
16
|
+
assert.deepEqual(html `<a href="https://yaeb.al">go</a>`, {
|
|
17
17
|
text: "go",
|
|
18
|
-
entities: [{ type: "text_link", offset: 0, length: 2, url: "https://
|
|
18
|
+
entities: [{ type: "text_link", offset: 0, length: 2, url: "https://yaeb.al" }],
|
|
19
19
|
});
|
|
20
20
|
assert.deepEqual(htmlToEntities("<tg-spoiler>s</tg-spoiler>"), {
|
|
21
21
|
text: "s",
|
|
@@ -64,9 +64,9 @@ test("md: inline code and fenced pre with language", () => {
|
|
|
64
64
|
});
|
|
65
65
|
});
|
|
66
66
|
test("md: link", () => {
|
|
67
|
-
assert.deepEqual(md `see [docs](https://
|
|
67
|
+
assert.deepEqual(md `see [docs](https://yaeb.al)`, {
|
|
68
68
|
text: "see docs",
|
|
69
|
-
entities: [{ type: "text_link", offset: 4, length: 4, url: "https://
|
|
69
|
+
entities: [{ type: "text_link", offset: 4, length: 4, url: "https://yaeb.al" }],
|
|
70
70
|
});
|
|
71
71
|
});
|
|
72
72
|
test("md: interpolated string is literal (delimiters not parsed)", () => {
|
|
@@ -78,11 +78,11 @@ test("md: backslash escapes a delimiter", () => {
|
|
|
78
78
|
assert.deepEqual(mdToEntities("2 \\* 3 = 6"), { text: "2 * 3 = 6", entities: [] });
|
|
79
79
|
});
|
|
80
80
|
test("md: nested formatting keeps correct offsets", () => {
|
|
81
|
-
const r = md `**bold ${"and"} [more](https://
|
|
81
|
+
const r = md `**bold ${"and"} [more](https://yaeb.al)**`;
|
|
82
82
|
assert.equal(r.text, "bold and more");
|
|
83
83
|
const boldE = r.entities.find((e) => e.type === "bold");
|
|
84
84
|
const link = r.entities.find((e) => e.type === "text_link");
|
|
85
85
|
assert.deepEqual(boldE, { type: "bold", offset: 0, length: 13 });
|
|
86
|
-
assert.deepEqual(link, { type: "text_link", offset: 9, length: 4, url: "https://
|
|
86
|
+
assert.deepEqual(link, { type: "text_link", offset: 9, length: 4, url: "https://yaeb.al" });
|
|
87
87
|
});
|
|
88
88
|
//# sourceMappingURL=index.test.js.map
|
package/lib/index.test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../src/index.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAEpE,IAAI,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAC7C,MAAM,CAAC,SAAS,CAAC,IAAI,CAAA,WAAW,EAAE;QACjC,IAAI,EAAE,IAAI;QACV,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;KAClD,CAAC,CAAC;IAEH,MAAM,CAAC,SAAS,CAAC,IAAI,CAAA,cAAc,EAAE;QACpC,IAAI,EAAE,OAAO;QACb,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;KACpD,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2CAA2C,EAAE,GAAG,EAAE;IACtD,MAAM,CAAC,SAAS,CAAC,IAAI,CAAA,
|
|
1
|
+
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../src/index.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yaebal/fmt",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.2",
|
|
4
4
|
"description": "yaebal fmt — html`` and md`` tagged templates that parse into telegram entities with auto-escaped interpolation.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./lib/index.js",
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"src"
|
|
17
17
|
],
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"@yaebal/core": "0.0.
|
|
19
|
+
"@yaebal/core": "0.0.5"
|
|
20
20
|
},
|
|
21
21
|
"devDependencies": {
|
|
22
22
|
"@types/node": "latest"
|
package/src/index.test.ts
CHANGED
|
@@ -8,7 +8,7 @@ test("html: basic tags map to entities", () => {
|
|
|
8
8
|
text: "hi",
|
|
9
9
|
entities: [{ type: "bold", offset: 0, length: 2 }],
|
|
10
10
|
});
|
|
11
|
-
|
|
11
|
+
|
|
12
12
|
assert.deepEqual(html`a <i>b</i> c`, {
|
|
13
13
|
text: "a b c",
|
|
14
14
|
entities: [{ type: "italic", offset: 2, length: 1 }],
|
|
@@ -16,9 +16,9 @@ test("html: basic tags map to entities", () => {
|
|
|
16
16
|
});
|
|
17
17
|
|
|
18
18
|
test("html: link carries href, spoiler variants", () => {
|
|
19
|
-
assert.deepEqual(html`<a href="https://
|
|
19
|
+
assert.deepEqual(html`<a href="https://yaeb.al">go</a>`, {
|
|
20
20
|
text: "go",
|
|
21
|
-
entities: [{ type: "text_link", offset: 0, length: 2, url: "https://
|
|
21
|
+
entities: [{ type: "text_link", offset: 0, length: 2, url: "https://yaeb.al" }],
|
|
22
22
|
});
|
|
23
23
|
|
|
24
24
|
assert.deepEqual(htmlToEntities("<tg-spoiler>s</tg-spoiler>"), {
|
|
@@ -77,9 +77,9 @@ test("md: inline code and fenced pre with language", () => {
|
|
|
77
77
|
});
|
|
78
78
|
|
|
79
79
|
test("md: link", () => {
|
|
80
|
-
assert.deepEqual(md`see [docs](https://
|
|
80
|
+
assert.deepEqual(md`see [docs](https://yaeb.al)`, {
|
|
81
81
|
text: "see docs",
|
|
82
|
-
entities: [{ type: "text_link", offset: 4, length: 4, url: "https://
|
|
82
|
+
entities: [{ type: "text_link", offset: 4, length: 4, url: "https://yaeb.al" }],
|
|
83
83
|
});
|
|
84
84
|
});
|
|
85
85
|
|
|
@@ -95,7 +95,7 @@ test("md: backslash escapes a delimiter", () => {
|
|
|
95
95
|
});
|
|
96
96
|
|
|
97
97
|
test("md: nested formatting keeps correct offsets", () => {
|
|
98
|
-
const r = md`**bold ${"and"} [more](https://
|
|
98
|
+
const r = md`**bold ${"and"} [more](https://yaeb.al)**`;
|
|
99
99
|
|
|
100
100
|
assert.equal(r.text, "bold and more");
|
|
101
101
|
|
|
@@ -103,5 +103,5 @@ test("md: nested formatting keeps correct offsets", () => {
|
|
|
103
103
|
const link = r.entities.find((e) => e.type === "text_link");
|
|
104
104
|
|
|
105
105
|
assert.deepEqual(boldE, { type: "bold", offset: 0, length: 13 });
|
|
106
|
-
assert.deepEqual(link, { type: "text_link", offset: 9, length: 4, url: "https://
|
|
106
|
+
assert.deepEqual(link, { type: "text_link", offset: 9, length: 4, url: "https://yaeb.al" });
|
|
107
107
|
});
|