@tiptap/extension-underline 3.20.1 → 3.20.3
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/package.json +3 -3
- package/dist/index.cjs +0 -106
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.cts +0 -38
- package/dist/index.d.ts +0 -38
- package/dist/index.js +0 -79
- package/dist/index.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tiptap/extension-underline",
|
|
3
3
|
"description": "underline extension for tiptap",
|
|
4
|
-
"version": "3.20.
|
|
4
|
+
"version": "3.20.3",
|
|
5
5
|
"homepage": "https://tiptap.dev",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"tiptap",
|
|
@@ -31,10 +31,10 @@
|
|
|
31
31
|
"dist"
|
|
32
32
|
],
|
|
33
33
|
"devDependencies": {
|
|
34
|
-
"@tiptap/core": "^3.20.
|
|
34
|
+
"@tiptap/core": "^3.20.3"
|
|
35
35
|
},
|
|
36
36
|
"peerDependencies": {
|
|
37
|
-
"@tiptap/core": "^3.20.
|
|
37
|
+
"@tiptap/core": "^3.20.3"
|
|
38
38
|
},
|
|
39
39
|
"repository": {
|
|
40
40
|
"type": "git",
|
package/dist/index.cjs
DELETED
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
|
|
20
|
-
// src/index.ts
|
|
21
|
-
var index_exports = {};
|
|
22
|
-
__export(index_exports, {
|
|
23
|
-
Underline: () => Underline,
|
|
24
|
-
default: () => index_default
|
|
25
|
-
});
|
|
26
|
-
module.exports = __toCommonJS(index_exports);
|
|
27
|
-
|
|
28
|
-
// src/underline.ts
|
|
29
|
-
var import_core = require("@tiptap/core");
|
|
30
|
-
var Underline = import_core.Mark.create({
|
|
31
|
-
name: "underline",
|
|
32
|
-
addOptions() {
|
|
33
|
-
return {
|
|
34
|
-
HTMLAttributes: {}
|
|
35
|
-
};
|
|
36
|
-
},
|
|
37
|
-
parseHTML() {
|
|
38
|
-
return [
|
|
39
|
-
{
|
|
40
|
-
tag: "u"
|
|
41
|
-
},
|
|
42
|
-
{
|
|
43
|
-
style: "text-decoration",
|
|
44
|
-
consuming: false,
|
|
45
|
-
getAttrs: (style) => style.includes("underline") ? {} : false
|
|
46
|
-
}
|
|
47
|
-
];
|
|
48
|
-
},
|
|
49
|
-
renderHTML({ HTMLAttributes }) {
|
|
50
|
-
return ["u", (0, import_core.mergeAttributes)(this.options.HTMLAttributes, HTMLAttributes), 0];
|
|
51
|
-
},
|
|
52
|
-
parseMarkdown(token, helpers) {
|
|
53
|
-
return helpers.applyMark(this.name || "underline", helpers.parseInline(token.tokens || []));
|
|
54
|
-
},
|
|
55
|
-
renderMarkdown(node, helpers) {
|
|
56
|
-
return `++${helpers.renderChildren(node)}++`;
|
|
57
|
-
},
|
|
58
|
-
markdownTokenizer: {
|
|
59
|
-
name: "underline",
|
|
60
|
-
level: "inline",
|
|
61
|
-
start(src) {
|
|
62
|
-
return src.indexOf("++");
|
|
63
|
-
},
|
|
64
|
-
tokenize(src, _tokens, lexer) {
|
|
65
|
-
const rule = /^(\+\+)([\s\S]+?)(\+\+)/;
|
|
66
|
-
const match = rule.exec(src);
|
|
67
|
-
if (!match) {
|
|
68
|
-
return void 0;
|
|
69
|
-
}
|
|
70
|
-
const innerContent = match[2].trim();
|
|
71
|
-
return {
|
|
72
|
-
type: "underline",
|
|
73
|
-
raw: match[0],
|
|
74
|
-
text: innerContent,
|
|
75
|
-
tokens: lexer.inlineTokens(innerContent)
|
|
76
|
-
};
|
|
77
|
-
}
|
|
78
|
-
},
|
|
79
|
-
addCommands() {
|
|
80
|
-
return {
|
|
81
|
-
setUnderline: () => ({ commands }) => {
|
|
82
|
-
return commands.setMark(this.name);
|
|
83
|
-
},
|
|
84
|
-
toggleUnderline: () => ({ commands }) => {
|
|
85
|
-
return commands.toggleMark(this.name);
|
|
86
|
-
},
|
|
87
|
-
unsetUnderline: () => ({ commands }) => {
|
|
88
|
-
return commands.unsetMark(this.name);
|
|
89
|
-
}
|
|
90
|
-
};
|
|
91
|
-
},
|
|
92
|
-
addKeyboardShortcuts() {
|
|
93
|
-
return {
|
|
94
|
-
"Mod-u": () => this.editor.commands.toggleUnderline(),
|
|
95
|
-
"Mod-U": () => this.editor.commands.toggleUnderline()
|
|
96
|
-
};
|
|
97
|
-
}
|
|
98
|
-
});
|
|
99
|
-
|
|
100
|
-
// src/index.ts
|
|
101
|
-
var index_default = Underline;
|
|
102
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
103
|
-
0 && (module.exports = {
|
|
104
|
-
Underline
|
|
105
|
-
});
|
|
106
|
-
//# sourceMappingURL=index.cjs.map
|
package/dist/index.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/underline.ts"],"sourcesContent":["import { Underline } from './underline.js'\n\nexport * from './underline.js'\n\nexport default Underline\n","import { Mark, mergeAttributes } from '@tiptap/core'\n\nexport interface UnderlineOptions {\n /**\n * HTML attributes to add to the underline element.\n * @default {}\n * @example { class: 'foo' }\n */\n HTMLAttributes: Record<string, any>\n}\n\ndeclare module '@tiptap/core' {\n interface Commands<ReturnType> {\n underline: {\n /**\n * Set an underline mark\n * @example editor.commands.setUnderline()\n */\n setUnderline: () => ReturnType\n /**\n * Toggle an underline mark\n * @example editor.commands.toggleUnderline()\n */\n toggleUnderline: () => ReturnType\n /**\n * Unset an underline mark\n * @example editor.commands.unsetUnderline()\n */\n unsetUnderline: () => ReturnType\n }\n }\n}\n\n/**\n * This extension allows you to create underline text.\n * @see https://www.tiptap.dev/api/marks/underline\n */\nexport const Underline = Mark.create<UnderlineOptions>({\n name: 'underline',\n\n addOptions() {\n return {\n HTMLAttributes: {},\n }\n },\n\n parseHTML() {\n return [\n {\n tag: 'u',\n },\n {\n style: 'text-decoration',\n consuming: false,\n getAttrs: style => ((style as string).includes('underline') ? {} : false),\n },\n ]\n },\n\n renderHTML({ HTMLAttributes }) {\n return ['u', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0]\n },\n\n parseMarkdown(token, helpers) {\n return helpers.applyMark(this.name || 'underline', helpers.parseInline(token.tokens || []))\n },\n\n renderMarkdown(node, helpers) {\n return `++${helpers.renderChildren(node)}++`\n },\n\n markdownTokenizer: {\n name: 'underline',\n level: 'inline',\n start(src) {\n return src.indexOf('++')\n },\n tokenize(src, _tokens, lexer) {\n const rule = /^(\\+\\+)([\\s\\S]+?)(\\+\\+)/\n const match = rule.exec(src)\n\n if (!match) {\n return undefined\n }\n\n const innerContent = match[2].trim()\n\n return {\n type: 'underline',\n raw: match[0],\n text: innerContent,\n tokens: lexer.inlineTokens(innerContent),\n }\n },\n },\n\n addCommands() {\n return {\n setUnderline:\n () =>\n ({ commands }) => {\n return commands.setMark(this.name)\n },\n toggleUnderline:\n () =>\n ({ commands }) => {\n return commands.toggleMark(this.name)\n },\n unsetUnderline:\n () =>\n ({ commands }) => {\n return commands.unsetMark(this.name)\n },\n }\n },\n\n addKeyboardShortcuts() {\n return {\n 'Mod-u': () => this.editor.commands.toggleUnderline(),\n 'Mod-U': () => this.editor.commands.toggleUnderline(),\n }\n },\n})\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,kBAAsC;AAqC/B,IAAM,YAAY,iBAAK,OAAyB;AAAA,EACrD,MAAM;AAAA,EAEN,aAAa;AACX,WAAO;AAAA,MACL,gBAAgB,CAAC;AAAA,IACnB;AAAA,EACF;AAAA,EAEA,YAAY;AACV,WAAO;AAAA,MACL;AAAA,QACE,KAAK;AAAA,MACP;AAAA,MACA;AAAA,QACE,OAAO;AAAA,QACP,WAAW;AAAA,QACX,UAAU,WAAW,MAAiB,SAAS,WAAW,IAAI,CAAC,IAAI;AAAA,MACrE;AAAA,IACF;AAAA,EACF;AAAA,EAEA,WAAW,EAAE,eAAe,GAAG;AAC7B,WAAO,CAAC,SAAK,6BAAgB,KAAK,QAAQ,gBAAgB,cAAc,GAAG,CAAC;AAAA,EAC9E;AAAA,EAEA,cAAc,OAAO,SAAS;AAC5B,WAAO,QAAQ,UAAU,KAAK,QAAQ,aAAa,QAAQ,YAAY,MAAM,UAAU,CAAC,CAAC,CAAC;AAAA,EAC5F;AAAA,EAEA,eAAe,MAAM,SAAS;AAC5B,WAAO,KAAK,QAAQ,eAAe,IAAI,CAAC;AAAA,EAC1C;AAAA,EAEA,mBAAmB;AAAA,IACjB,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM,KAAK;AACT,aAAO,IAAI,QAAQ,IAAI;AAAA,IACzB;AAAA,IACA,SAAS,KAAK,SAAS,OAAO;AAC5B,YAAM,OAAO;AACb,YAAM,QAAQ,KAAK,KAAK,GAAG;AAE3B,UAAI,CAAC,OAAO;AACV,eAAO;AAAA,MACT;AAEA,YAAM,eAAe,MAAM,CAAC,EAAE,KAAK;AAEnC,aAAO;AAAA,QACL,MAAM;AAAA,QACN,KAAK,MAAM,CAAC;AAAA,QACZ,MAAM;AAAA,QACN,QAAQ,MAAM,aAAa,YAAY;AAAA,MACzC;AAAA,IACF;AAAA,EACF;AAAA,EAEA,cAAc;AACZ,WAAO;AAAA,MACL,cACE,MACA,CAAC,EAAE,SAAS,MAAM;AAChB,eAAO,SAAS,QAAQ,KAAK,IAAI;AAAA,MACnC;AAAA,MACF,iBACE,MACA,CAAC,EAAE,SAAS,MAAM;AAChB,eAAO,SAAS,WAAW,KAAK,IAAI;AAAA,MACtC;AAAA,MACF,gBACE,MACA,CAAC,EAAE,SAAS,MAAM;AAChB,eAAO,SAAS,UAAU,KAAK,IAAI;AAAA,MACrC;AAAA,IACJ;AAAA,EACF;AAAA,EAEA,uBAAuB;AACrB,WAAO;AAAA,MACL,SAAS,MAAM,KAAK,OAAO,SAAS,gBAAgB;AAAA,MACpD,SAAS,MAAM,KAAK,OAAO,SAAS,gBAAgB;AAAA,IACtD;AAAA,EACF;AACF,CAAC;;;ADtHD,IAAO,gBAAQ;","names":[]}
|
package/dist/index.d.cts
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { Mark } from '@tiptap/core';
|
|
2
|
-
|
|
3
|
-
interface UnderlineOptions {
|
|
4
|
-
/**
|
|
5
|
-
* HTML attributes to add to the underline element.
|
|
6
|
-
* @default {}
|
|
7
|
-
* @example { class: 'foo' }
|
|
8
|
-
*/
|
|
9
|
-
HTMLAttributes: Record<string, any>;
|
|
10
|
-
}
|
|
11
|
-
declare module '@tiptap/core' {
|
|
12
|
-
interface Commands<ReturnType> {
|
|
13
|
-
underline: {
|
|
14
|
-
/**
|
|
15
|
-
* Set an underline mark
|
|
16
|
-
* @example editor.commands.setUnderline()
|
|
17
|
-
*/
|
|
18
|
-
setUnderline: () => ReturnType;
|
|
19
|
-
/**
|
|
20
|
-
* Toggle an underline mark
|
|
21
|
-
* @example editor.commands.toggleUnderline()
|
|
22
|
-
*/
|
|
23
|
-
toggleUnderline: () => ReturnType;
|
|
24
|
-
/**
|
|
25
|
-
* Unset an underline mark
|
|
26
|
-
* @example editor.commands.unsetUnderline()
|
|
27
|
-
*/
|
|
28
|
-
unsetUnderline: () => ReturnType;
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* This extension allows you to create underline text.
|
|
34
|
-
* @see https://www.tiptap.dev/api/marks/underline
|
|
35
|
-
*/
|
|
36
|
-
declare const Underline: Mark<UnderlineOptions, any>;
|
|
37
|
-
|
|
38
|
-
export { Underline, type UnderlineOptions, Underline as default };
|
package/dist/index.d.ts
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { Mark } from '@tiptap/core';
|
|
2
|
-
|
|
3
|
-
interface UnderlineOptions {
|
|
4
|
-
/**
|
|
5
|
-
* HTML attributes to add to the underline element.
|
|
6
|
-
* @default {}
|
|
7
|
-
* @example { class: 'foo' }
|
|
8
|
-
*/
|
|
9
|
-
HTMLAttributes: Record<string, any>;
|
|
10
|
-
}
|
|
11
|
-
declare module '@tiptap/core' {
|
|
12
|
-
interface Commands<ReturnType> {
|
|
13
|
-
underline: {
|
|
14
|
-
/**
|
|
15
|
-
* Set an underline mark
|
|
16
|
-
* @example editor.commands.setUnderline()
|
|
17
|
-
*/
|
|
18
|
-
setUnderline: () => ReturnType;
|
|
19
|
-
/**
|
|
20
|
-
* Toggle an underline mark
|
|
21
|
-
* @example editor.commands.toggleUnderline()
|
|
22
|
-
*/
|
|
23
|
-
toggleUnderline: () => ReturnType;
|
|
24
|
-
/**
|
|
25
|
-
* Unset an underline mark
|
|
26
|
-
* @example editor.commands.unsetUnderline()
|
|
27
|
-
*/
|
|
28
|
-
unsetUnderline: () => ReturnType;
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* This extension allows you to create underline text.
|
|
34
|
-
* @see https://www.tiptap.dev/api/marks/underline
|
|
35
|
-
*/
|
|
36
|
-
declare const Underline: Mark<UnderlineOptions, any>;
|
|
37
|
-
|
|
38
|
-
export { Underline, type UnderlineOptions, Underline as default };
|
package/dist/index.js
DELETED
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
// src/underline.ts
|
|
2
|
-
import { Mark, mergeAttributes } from "@tiptap/core";
|
|
3
|
-
var Underline = Mark.create({
|
|
4
|
-
name: "underline",
|
|
5
|
-
addOptions() {
|
|
6
|
-
return {
|
|
7
|
-
HTMLAttributes: {}
|
|
8
|
-
};
|
|
9
|
-
},
|
|
10
|
-
parseHTML() {
|
|
11
|
-
return [
|
|
12
|
-
{
|
|
13
|
-
tag: "u"
|
|
14
|
-
},
|
|
15
|
-
{
|
|
16
|
-
style: "text-decoration",
|
|
17
|
-
consuming: false,
|
|
18
|
-
getAttrs: (style) => style.includes("underline") ? {} : false
|
|
19
|
-
}
|
|
20
|
-
];
|
|
21
|
-
},
|
|
22
|
-
renderHTML({ HTMLAttributes }) {
|
|
23
|
-
return ["u", mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0];
|
|
24
|
-
},
|
|
25
|
-
parseMarkdown(token, helpers) {
|
|
26
|
-
return helpers.applyMark(this.name || "underline", helpers.parseInline(token.tokens || []));
|
|
27
|
-
},
|
|
28
|
-
renderMarkdown(node, helpers) {
|
|
29
|
-
return `++${helpers.renderChildren(node)}++`;
|
|
30
|
-
},
|
|
31
|
-
markdownTokenizer: {
|
|
32
|
-
name: "underline",
|
|
33
|
-
level: "inline",
|
|
34
|
-
start(src) {
|
|
35
|
-
return src.indexOf("++");
|
|
36
|
-
},
|
|
37
|
-
tokenize(src, _tokens, lexer) {
|
|
38
|
-
const rule = /^(\+\+)([\s\S]+?)(\+\+)/;
|
|
39
|
-
const match = rule.exec(src);
|
|
40
|
-
if (!match) {
|
|
41
|
-
return void 0;
|
|
42
|
-
}
|
|
43
|
-
const innerContent = match[2].trim();
|
|
44
|
-
return {
|
|
45
|
-
type: "underline",
|
|
46
|
-
raw: match[0],
|
|
47
|
-
text: innerContent,
|
|
48
|
-
tokens: lexer.inlineTokens(innerContent)
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
},
|
|
52
|
-
addCommands() {
|
|
53
|
-
return {
|
|
54
|
-
setUnderline: () => ({ commands }) => {
|
|
55
|
-
return commands.setMark(this.name);
|
|
56
|
-
},
|
|
57
|
-
toggleUnderline: () => ({ commands }) => {
|
|
58
|
-
return commands.toggleMark(this.name);
|
|
59
|
-
},
|
|
60
|
-
unsetUnderline: () => ({ commands }) => {
|
|
61
|
-
return commands.unsetMark(this.name);
|
|
62
|
-
}
|
|
63
|
-
};
|
|
64
|
-
},
|
|
65
|
-
addKeyboardShortcuts() {
|
|
66
|
-
return {
|
|
67
|
-
"Mod-u": () => this.editor.commands.toggleUnderline(),
|
|
68
|
-
"Mod-U": () => this.editor.commands.toggleUnderline()
|
|
69
|
-
};
|
|
70
|
-
}
|
|
71
|
-
});
|
|
72
|
-
|
|
73
|
-
// src/index.ts
|
|
74
|
-
var index_default = Underline;
|
|
75
|
-
export {
|
|
76
|
-
Underline,
|
|
77
|
-
index_default as default
|
|
78
|
-
};
|
|
79
|
-
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/underline.ts","../src/index.ts"],"sourcesContent":["import { Mark, mergeAttributes } from '@tiptap/core'\n\nexport interface UnderlineOptions {\n /**\n * HTML attributes to add to the underline element.\n * @default {}\n * @example { class: 'foo' }\n */\n HTMLAttributes: Record<string, any>\n}\n\ndeclare module '@tiptap/core' {\n interface Commands<ReturnType> {\n underline: {\n /**\n * Set an underline mark\n * @example editor.commands.setUnderline()\n */\n setUnderline: () => ReturnType\n /**\n * Toggle an underline mark\n * @example editor.commands.toggleUnderline()\n */\n toggleUnderline: () => ReturnType\n /**\n * Unset an underline mark\n * @example editor.commands.unsetUnderline()\n */\n unsetUnderline: () => ReturnType\n }\n }\n}\n\n/**\n * This extension allows you to create underline text.\n * @see https://www.tiptap.dev/api/marks/underline\n */\nexport const Underline = Mark.create<UnderlineOptions>({\n name: 'underline',\n\n addOptions() {\n return {\n HTMLAttributes: {},\n }\n },\n\n parseHTML() {\n return [\n {\n tag: 'u',\n },\n {\n style: 'text-decoration',\n consuming: false,\n getAttrs: style => ((style as string).includes('underline') ? {} : false),\n },\n ]\n },\n\n renderHTML({ HTMLAttributes }) {\n return ['u', mergeAttributes(this.options.HTMLAttributes, HTMLAttributes), 0]\n },\n\n parseMarkdown(token, helpers) {\n return helpers.applyMark(this.name || 'underline', helpers.parseInline(token.tokens || []))\n },\n\n renderMarkdown(node, helpers) {\n return `++${helpers.renderChildren(node)}++`\n },\n\n markdownTokenizer: {\n name: 'underline',\n level: 'inline',\n start(src) {\n return src.indexOf('++')\n },\n tokenize(src, _tokens, lexer) {\n const rule = /^(\\+\\+)([\\s\\S]+?)(\\+\\+)/\n const match = rule.exec(src)\n\n if (!match) {\n return undefined\n }\n\n const innerContent = match[2].trim()\n\n return {\n type: 'underline',\n raw: match[0],\n text: innerContent,\n tokens: lexer.inlineTokens(innerContent),\n }\n },\n },\n\n addCommands() {\n return {\n setUnderline:\n () =>\n ({ commands }) => {\n return commands.setMark(this.name)\n },\n toggleUnderline:\n () =>\n ({ commands }) => {\n return commands.toggleMark(this.name)\n },\n unsetUnderline:\n () =>\n ({ commands }) => {\n return commands.unsetMark(this.name)\n },\n }\n },\n\n addKeyboardShortcuts() {\n return {\n 'Mod-u': () => this.editor.commands.toggleUnderline(),\n 'Mod-U': () => this.editor.commands.toggleUnderline(),\n }\n },\n})\n","import { Underline } from './underline.js'\n\nexport * from './underline.js'\n\nexport default Underline\n"],"mappings":";AAAA,SAAS,MAAM,uBAAuB;AAqC/B,IAAM,YAAY,KAAK,OAAyB;AAAA,EACrD,MAAM;AAAA,EAEN,aAAa;AACX,WAAO;AAAA,MACL,gBAAgB,CAAC;AAAA,IACnB;AAAA,EACF;AAAA,EAEA,YAAY;AACV,WAAO;AAAA,MACL;AAAA,QACE,KAAK;AAAA,MACP;AAAA,MACA;AAAA,QACE,OAAO;AAAA,QACP,WAAW;AAAA,QACX,UAAU,WAAW,MAAiB,SAAS,WAAW,IAAI,CAAC,IAAI;AAAA,MACrE;AAAA,IACF;AAAA,EACF;AAAA,EAEA,WAAW,EAAE,eAAe,GAAG;AAC7B,WAAO,CAAC,KAAK,gBAAgB,KAAK,QAAQ,gBAAgB,cAAc,GAAG,CAAC;AAAA,EAC9E;AAAA,EAEA,cAAc,OAAO,SAAS;AAC5B,WAAO,QAAQ,UAAU,KAAK,QAAQ,aAAa,QAAQ,YAAY,MAAM,UAAU,CAAC,CAAC,CAAC;AAAA,EAC5F;AAAA,EAEA,eAAe,MAAM,SAAS;AAC5B,WAAO,KAAK,QAAQ,eAAe,IAAI,CAAC;AAAA,EAC1C;AAAA,EAEA,mBAAmB;AAAA,IACjB,MAAM;AAAA,IACN,OAAO;AAAA,IACP,MAAM,KAAK;AACT,aAAO,IAAI,QAAQ,IAAI;AAAA,IACzB;AAAA,IACA,SAAS,KAAK,SAAS,OAAO;AAC5B,YAAM,OAAO;AACb,YAAM,QAAQ,KAAK,KAAK,GAAG;AAE3B,UAAI,CAAC,OAAO;AACV,eAAO;AAAA,MACT;AAEA,YAAM,eAAe,MAAM,CAAC,EAAE,KAAK;AAEnC,aAAO;AAAA,QACL,MAAM;AAAA,QACN,KAAK,MAAM,CAAC;AAAA,QACZ,MAAM;AAAA,QACN,QAAQ,MAAM,aAAa,YAAY;AAAA,MACzC;AAAA,IACF;AAAA,EACF;AAAA,EAEA,cAAc;AACZ,WAAO;AAAA,MACL,cACE,MACA,CAAC,EAAE,SAAS,MAAM;AAChB,eAAO,SAAS,QAAQ,KAAK,IAAI;AAAA,MACnC;AAAA,MACF,iBACE,MACA,CAAC,EAAE,SAAS,MAAM;AAChB,eAAO,SAAS,WAAW,KAAK,IAAI;AAAA,MACtC;AAAA,MACF,gBACE,MACA,CAAC,EAAE,SAAS,MAAM;AAChB,eAAO,SAAS,UAAU,KAAK,IAAI;AAAA,MACrC;AAAA,IACJ;AAAA,EACF;AAAA,EAEA,uBAAuB;AACrB,WAAO;AAAA,MACL,SAAS,MAAM,KAAK,OAAO,SAAS,gBAAgB;AAAA,MACpD,SAAS,MAAM,KAAK,OAAO,SAAS,gBAAgB;AAAA,IACtD;AAAA,EACF;AACF,CAAC;;;ACtHD,IAAO,gBAAQ;","names":[]}
|