diff --git a/.node-version b/.node-version new file mode 100644 index 0000000..2789c26 --- /dev/null +++ b/.node-version @@ -0,0 +1 @@ +v20.13.0 diff --git a/esbuild.config.mjs b/esbuild.config.mjs index b13282b..30ff448 100644 --- a/esbuild.config.mjs +++ b/esbuild.config.mjs @@ -1,15 +1,14 @@ +import builtins from "builtin-modules"; import esbuild from "esbuild"; import process from "process"; -import builtins from "builtin-modules"; -const banner = -`/* +const banner = `/* THIS IS A GENERATED/BUNDLED FILE BY ESBUILD if you want to view the source, please visit the github repository of this plugin */ `; -const prod = (process.argv[2] === "production"); +const prod = process.argv[2] === "production"; const context = await esbuild.context({ banner: { @@ -31,7 +30,8 @@ const context = await esbuild.context({ "@lezer/common", "@lezer/highlight", "@lezer/lr", - ...builtins], + ...builtins, + ], format: "cjs", target: "es2018", logLevel: "info", @@ -45,4 +45,4 @@ if (prod) { process.exit(0); } else { await context.watch(); -} \ No newline at end of file +} diff --git a/main.ts b/main.ts index 2d07212..86b8f5b 100644 --- a/main.ts +++ b/main.ts @@ -1,134 +1,26 @@ -import { App, Editor, MarkdownView, Modal, Notice, Plugin, PluginSettingTab, Setting } from 'obsidian'; - -// Remember to rename these classes and interfaces! - -interface MyPluginSettings { - mySetting: string; -} - -const DEFAULT_SETTINGS: MyPluginSettings = { - mySetting: 'default' -} - -export default class MyPlugin extends Plugin { - settings: MyPluginSettings; +import { MarkdownView, Plugin } from "obsidian"; +export default class ObsidianHeti extends Plugin { async onload() { - await this.loadSettings(); - - // This creates an icon in the left ribbon. - const ribbonIconEl = this.addRibbonIcon('dice', 'Sample Plugin', (evt: MouseEvent) => { - // Called when the user clicks the icon. - new Notice('This is a notice!'); - }); - // Perform additional things with the ribbon - ribbonIconEl.addClass('my-plugin-ribbon-class'); - - // This adds a status bar item to the bottom of the app. Does not work on mobile apps. - const statusBarItemEl = this.addStatusBarItem(); - statusBarItemEl.setText('Status Bar Text'); - - // This adds a simple command that can be triggered anywhere - this.addCommand({ - id: 'open-sample-modal-simple', - name: 'Open sample modal (simple)', - callback: () => { - new SampleModal(this.app).open(); - } - }); - // This adds an editor command that can perform some operation on the current editor instance - this.addCommand({ - id: 'sample-editor-command', - name: 'Sample editor command', - editorCallback: (editor: Editor, view: MarkdownView) => { - console.log(editor.getSelection()); - editor.replaceSelection('Sample Editor Command'); - } - }); - // This adds a complex command that can check whether the current state of the app allows execution of the command - this.addCommand({ - id: 'open-sample-modal-complex', - name: 'Open sample modal (complex)', - checkCallback: (checking: boolean) => { - // Conditions to check - const markdownView = this.app.workspace.getActiveViewOfType(MarkdownView); - if (markdownView) { - // If checking is true, we're simply "checking" if the command can be run. - // If checking is false, then we want to actually perform the operation. - if (!checking) { - new SampleModal(this.app).open(); - } - - // This command will only show up in Command Palette when the check function returns true - return true; - } - } - }); - - // This adds a settings tab so the user can configure various aspects of the plugin - this.addSettingTab(new SampleSettingTab(this.app, this)); - - // If the plugin hooks up any global DOM events (on parts of the app that doesn't belong to this plugin) - // Using this function will automatically remove the event listener when this plugin is disabled. - this.registerDomEvent(document, 'click', (evt: MouseEvent) => { - console.log('click', evt); - }); - - // When registering intervals, this function will automatically clear the interval when the plugin is disabled. - this.registerInterval(window.setInterval(() => console.log('setInterval'), 5 * 60 * 1000)); + // styles in style.css + this.addLayoutChangeListener(); } - onunload() { + onunload() {} + addLayoutChangeListener() { + this.registerEvent( + this.app.workspace.on("active-leaf-change", () => { + this.applyStyles(); + }) + ); } - async loadSettings() { - this.settings = Object.assign({}, DEFAULT_SETTINGS, await this.loadData()); - } - - async saveSettings() { - await this.saveData(this.settings); - } -} - -class SampleModal extends Modal { - constructor(app: App) { - super(app); - } - - onOpen() { - const {contentEl} = this; - contentEl.setText('Woah!'); - } - - onClose() { - const {contentEl} = this; - contentEl.empty(); - } -} - -class SampleSettingTab extends PluginSettingTab { - plugin: MyPlugin; - - constructor(app: App, plugin: MyPlugin) { - super(app, plugin); - this.plugin = plugin; - } - - display(): void { - const {containerEl} = this; - - containerEl.empty(); - - new Setting(containerEl) - .setName('Setting #1') - .setDesc('It\'s a secret') - .addText(text => text - .setPlaceholder('Enter your secret') - .setValue(this.plugin.settings.mySetting) - .onChange(async (value) => { - this.plugin.settings.mySetting = value; - await this.plugin.saveSettings(); - })); + applyStyles() { + const markdownView = + this.app.workspace.getActiveViewOfType(MarkdownView); + if (!markdownView) return; + const contentView = markdownView.contentEl; + contentView.classList.add("heti"); } } diff --git a/manifest.json b/manifest.json index dfa940e..e990ea9 100644 --- a/manifest.json +++ b/manifest.json @@ -1,6 +1,6 @@ { - "id": "sample-plugin", - "name": "Sample Plugin", + "id": "heti", + "name": "heti", "version": "1.0.0", "minAppVersion": "0.15.0", "description": "Demonstrates some of the capabilities of the Obsidian API.", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 0000000..8603d97 --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,1263 @@ +lockfileVersion: '6.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +devDependencies: + '@types/node': + specifier: ^16.11.6 + version: 16.18.97 + '@typescript-eslint/eslint-plugin': + specifier: 5.29.0 + version: 5.29.0(@typescript-eslint/parser@5.29.0)(eslint@8.57.0)(typescript@4.7.4) + '@typescript-eslint/parser': + specifier: 5.29.0 + version: 5.29.0(eslint@8.57.0)(typescript@4.7.4) + builtin-modules: + specifier: 3.3.0 + version: 3.3.0 + esbuild: + specifier: 0.17.3 + version: 0.17.3 + obsidian: + specifier: latest + version: 1.5.7-1(@codemirror/state@6.4.1)(@codemirror/view@6.26.3) + tslib: + specifier: 2.4.0 + version: 2.4.0 + typescript: + specifier: 4.7.4 + version: 4.7.4 + +packages: + + /@codemirror/state@6.4.1: + resolution: {integrity: sha512-QkEyUiLhsJoZkbumGZlswmAhA7CBU02Wrz7zvH4SrcifbsqwlXShVXg65f3v/ts57W3dqyamEriMhij1Z3Zz4A==} + dev: true + + /@codemirror/view@6.26.3: + resolution: {integrity: sha512-gmqxkPALZjkgSxIeeweY/wGQXBfwTUaLs8h7OKtSwfbj9Ct3L11lD+u1sS7XHppxFQoMDiMDp07P9f3I2jWOHw==} + dependencies: + '@codemirror/state': 6.4.1 + style-mod: 4.1.2 + w3c-keyname: 2.2.8 + dev: true + + /@esbuild/android-arm64@0.17.3: + resolution: {integrity: sha512-XvJsYo3dO3Pi4kpalkyMvfQsjxPWHYjoX4MDiB/FUM4YMfWcXa5l4VCwFWVYI1+92yxqjuqrhNg0CZg3gSouyQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-arm@0.17.3: + resolution: {integrity: sha512-1Mlz934GvbgdDmt26rTLmf03cAgLg5HyOgJN+ZGCeP3Q9ynYTNMn2/LQxIl7Uy+o4K6Rfi2OuLsr12JQQR8gNg==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-x64@0.17.3: + resolution: {integrity: sha512-nuV2CmLS07Gqh5/GrZLuqkU9Bm6H6vcCspM+zjp9TdQlxJtIe+qqEXQChmfc7nWdyr/yz3h45Utk1tUn8Cz5+A==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-arm64@0.17.3: + resolution: {integrity: sha512-01Hxaaat6m0Xp9AXGM8mjFtqqwDjzlMP0eQq9zll9U85ttVALGCGDuEvra5Feu/NbP5AEP1MaopPwzsTcUq1cw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-x64@0.17.3: + resolution: {integrity: sha512-Eo2gq0Q/er2muf8Z83X21UFoB7EU6/m3GNKvrhACJkjVThd0uA+8RfKpfNhuMCl1bKRfBzKOk6xaYKQZ4lZqvA==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-arm64@0.17.3: + resolution: {integrity: sha512-CN62ESxaquP61n1ZjQP/jZte8CE09M6kNn3baos2SeUfdVBkWN5n6vGp2iKyb/bm/x4JQzEvJgRHLGd5F5b81w==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-x64@0.17.3: + resolution: {integrity: sha512-feq+K8TxIznZE+zhdVurF3WNJ/Sa35dQNYbaqM/wsCbWdzXr5lyq+AaTUSER2cUR+SXPnd/EY75EPRjf4s1SLg==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm64@0.17.3: + resolution: {integrity: sha512-JHeZXD4auLYBnrKn6JYJ0o5nWJI9PhChA/Nt0G4MvLaMrvXuWnY93R3a7PiXeJQphpL1nYsaMcoV2QtuvRnF/g==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm@0.17.3: + resolution: {integrity: sha512-CLP3EgyNuPcg2cshbwkqYy5bbAgK+VhyfMU7oIYyn+x4Y67xb5C5ylxsNUjRmr8BX+MW3YhVNm6Lq6FKtRTWHQ==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ia32@0.17.3: + resolution: {integrity: sha512-FyXlD2ZjZqTFh0sOQxFDiWG1uQUEOLbEh9gKN/7pFxck5Vw0qjWSDqbn6C10GAa1rXJpwsntHcmLqydY9ST9ZA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-loong64@0.17.3: + resolution: {integrity: sha512-OrDGMvDBI2g7s04J8dh8/I7eSO+/E7nMDT2Z5IruBfUO/RiigF1OF6xoH33Dn4W/OwAWSUf1s2nXamb28ZklTA==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-mips64el@0.17.3: + resolution: {integrity: sha512-DcnUpXnVCJvmv0TzuLwKBC2nsQHle8EIiAJiJ+PipEVC16wHXaPEKP0EqN8WnBe0TPvMITOUlP2aiL5YMld+CQ==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ppc64@0.17.3: + resolution: {integrity: sha512-BDYf/l1WVhWE+FHAW3FzZPtVlk9QsrwsxGzABmN4g8bTjmhazsId3h127pliDRRu5674k1Y2RWejbpN46N9ZhQ==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-riscv64@0.17.3: + resolution: {integrity: sha512-WViAxWYMRIi+prTJTyV1wnqd2mS2cPqJlN85oscVhXdb/ZTFJdrpaqm/uDsZPGKHtbg5TuRX/ymKdOSk41YZow==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-s390x@0.17.3: + resolution: {integrity: sha512-Iw8lkNHUC4oGP1O/KhumcVy77u2s6+KUjieUqzEU3XuWJqZ+AY7uVMrrCbAiwWTkpQHkr00BuXH5RpC6Sb/7Ug==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-x64@0.17.3: + resolution: {integrity: sha512-0AGkWQMzeoeAtXQRNB3s4J1/T2XbigM2/Mn2yU1tQSmQRmHIZdkGbVq2A3aDdNslPyhb9/lH0S5GMTZ4xsjBqg==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/netbsd-x64@0.17.3: + resolution: {integrity: sha512-4+rR/WHOxIVh53UIQIICryjdoKdHsFZFD4zLSonJ9RRw7bhKzVyXbnRPsWSfwybYqw9sB7ots/SYyufL1mBpEg==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/openbsd-x64@0.17.3: + resolution: {integrity: sha512-cVpWnkx9IYg99EjGxa5Gc0XmqumtAwK3aoz7O4Dii2vko+qXbkHoujWA68cqXjhh6TsLaQelfDO4MVnyr+ODeA==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/sunos-x64@0.17.3: + resolution: {integrity: sha512-RxmhKLbTCDAY2xOfrww6ieIZkZF+KBqG7S2Ako2SljKXRFi+0863PspK74QQ7JpmWwncChY25JTJSbVBYGQk2Q==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-arm64@0.17.3: + resolution: {integrity: sha512-0r36VeEJ4efwmofxVJRXDjVRP2jTmv877zc+i+Pc7MNsIr38NfsjkQj23AfF7l0WbB+RQ7VUb+LDiqC/KY/M/A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-ia32@0.17.3: + resolution: {integrity: sha512-wgO6rc7uGStH22nur4aLFcq7Wh86bE9cOFmfTr/yxN3BXvDEdCSXyKkO+U5JIt53eTOgC47v9k/C1bITWL/Teg==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-x64@0.17.3: + resolution: {integrity: sha512-FdVl64OIuiKjgXBjwZaJLKp0eaEckifbhn10dXWhysMJkWblg3OEEGKSIyhiD5RSgAya8WzP3DNkngtIg3Nt7g==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@eslint-community/eslint-utils@4.4.0(eslint@8.57.0): + resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + dependencies: + eslint: 8.57.0 + eslint-visitor-keys: 3.4.3 + dev: true + + /@eslint-community/regexpp@4.10.0: + resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + dev: true + + /@eslint/eslintrc@2.1.4: + resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + ajv: 6.12.6 + debug: 4.3.4 + espree: 9.6.1 + globals: 13.24.0 + ignore: 5.3.1 + import-fresh: 3.3.0 + js-yaml: 4.1.0 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + dev: true + + /@eslint/js@8.57.0: + resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true + + /@humanwhocodes/config-array@0.11.14: + resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} + engines: {node: '>=10.10.0'} + dependencies: + '@humanwhocodes/object-schema': 2.0.3 + debug: 4.3.4 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + dev: true + + /@humanwhocodes/module-importer@1.0.1: + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} + dev: true + + /@humanwhocodes/object-schema@2.0.3: + resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} + dev: true + + /@nodelib/fs.scandir@2.1.5: + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + dev: true + + /@nodelib/fs.stat@2.0.5: + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + dev: true + + /@nodelib/fs.walk@1.2.8: + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.17.1 + dev: true + + /@types/codemirror@5.60.8: + resolution: {integrity: sha512-VjFgDF/eB+Aklcy15TtOTLQeMjTo07k7KAjql8OK5Dirr7a6sJY4T1uVBDuTVG9VEmn1uUsohOpYnVfgC6/jyw==} + dependencies: + '@types/tern': 0.23.9 + dev: true + + /@types/estree@1.0.5: + resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + dev: true + + /@types/json-schema@7.0.15: + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + dev: true + + /@types/node@16.18.97: + resolution: {integrity: sha512-4muilE1Lbfn57unR+/nT9AFjWk0MtWi5muwCEJqnOvfRQDbSfLCUdN7vCIg8TYuaANfhLOV85ve+FNpiUsbSRg==} + dev: true + + /@types/tern@0.23.9: + resolution: {integrity: sha512-ypzHFE/wBzh+BlH6rrBgS5I/Z7RD21pGhZ2rltb/+ZrVM1awdZwjx7hE5XfuYgHWk9uvV5HLZN3SloevCAp3Bw==} + dependencies: + '@types/estree': 1.0.5 + dev: true + + /@typescript-eslint/eslint-plugin@5.29.0(@typescript-eslint/parser@5.29.0)(eslint@8.57.0)(typescript@4.7.4): + resolution: {integrity: sha512-kgTsISt9pM53yRFQmLZ4npj99yGl3x3Pl7z4eA66OuTzAGC4bQB5H5fuLwPnqTKU3yyrrg4MIhjF17UYnL4c0w==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + '@typescript-eslint/parser': ^5.0.0 + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/parser': 5.29.0(eslint@8.57.0)(typescript@4.7.4) + '@typescript-eslint/scope-manager': 5.29.0 + '@typescript-eslint/type-utils': 5.29.0(eslint@8.57.0)(typescript@4.7.4) + '@typescript-eslint/utils': 5.29.0(eslint@8.57.0)(typescript@4.7.4) + debug: 4.3.4 + eslint: 8.57.0 + functional-red-black-tree: 1.0.1 + ignore: 5.3.1 + regexpp: 3.2.0 + semver: 7.6.2 + tsutils: 3.21.0(typescript@4.7.4) + typescript: 4.7.4 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/parser@5.29.0(eslint@8.57.0)(typescript@4.7.4): + resolution: {integrity: sha512-ruKWTv+x0OOxbzIw9nW5oWlUopvP/IQDjB5ZqmTglLIoDTctLlAJpAQFpNPJP/ZI7hTT9sARBosEfaKbcFuECw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/scope-manager': 5.29.0 + '@typescript-eslint/types': 5.29.0 + '@typescript-eslint/typescript-estree': 5.29.0(typescript@4.7.4) + debug: 4.3.4 + eslint: 8.57.0 + typescript: 4.7.4 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/scope-manager@5.29.0: + resolution: {integrity: sha512-etbXUT0FygFi2ihcxDZjz21LtC+Eps9V2xVx09zFoN44RRHPrkMflidGMI+2dUs821zR1tDS6Oc9IXxIjOUZwA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + '@typescript-eslint/types': 5.29.0 + '@typescript-eslint/visitor-keys': 5.29.0 + dev: true + + /@typescript-eslint/type-utils@5.29.0(eslint@8.57.0)(typescript@4.7.4): + resolution: {integrity: sha512-JK6bAaaiJozbox3K220VRfCzLa9n0ib/J+FHIwnaV3Enw/TO267qe0pM1b1QrrEuy6xun374XEAsRlA86JJnyg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: '*' + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/utils': 5.29.0(eslint@8.57.0)(typescript@4.7.4) + debug: 4.3.4 + eslint: 8.57.0 + tsutils: 3.21.0(typescript@4.7.4) + typescript: 4.7.4 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/types@5.29.0: + resolution: {integrity: sha512-X99VbqvAXOMdVyfFmksMy3u8p8yoRGITgU1joBJPzeYa0rhdf5ok9S56/itRoUSh99fiDoMtarSIJXo7H/SnOg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true + + /@typescript-eslint/typescript-estree@5.29.0(typescript@4.7.4): + resolution: {integrity: sha512-mQvSUJ/JjGBdvo+1LwC+GY2XmSYjK1nAaVw2emp/E61wEVYEyibRHCqm1I1vEKbXCpUKuW4G7u9ZCaZhJbLoNQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/types': 5.29.0 + '@typescript-eslint/visitor-keys': 5.29.0 + debug: 4.3.4 + globby: 11.1.0 + is-glob: 4.0.3 + semver: 7.6.2 + tsutils: 3.21.0(typescript@4.7.4) + typescript: 4.7.4 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/utils@5.29.0(eslint@8.57.0)(typescript@4.7.4): + resolution: {integrity: sha512-3Eos6uP1nyLOBayc/VUdKZikV90HahXE5Dx9L5YlSd/7ylQPXhLk1BYb29SDgnBnTp+jmSZUU0QxUiyHgW4p7A==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + '@types/json-schema': 7.0.15 + '@typescript-eslint/scope-manager': 5.29.0 + '@typescript-eslint/types': 5.29.0 + '@typescript-eslint/typescript-estree': 5.29.0(typescript@4.7.4) + eslint: 8.57.0 + eslint-scope: 5.1.1 + eslint-utils: 3.0.0(eslint@8.57.0) + transitivePeerDependencies: + - supports-color + - typescript + dev: true + + /@typescript-eslint/visitor-keys@5.29.0: + resolution: {integrity: sha512-Hpb/mCWsjILvikMQoZIE3voc9wtQcS0A9FUw3h8bhr9UxBdtI/tw1ZDZUOXHXLOVMedKCH5NxyzATwnU78bWCQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + '@typescript-eslint/types': 5.29.0 + eslint-visitor-keys: 3.4.3 + dev: true + + /@ungap/structured-clone@1.2.0: + resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} + dev: true + + /acorn-jsx@5.3.2(acorn@8.11.3): + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + acorn: 8.11.3 + dev: true + + /acorn@8.11.3: + resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} + engines: {node: '>=0.4.0'} + hasBin: true + dev: true + + /ajv@6.12.6: + resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.1 + dev: true + + /ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + dev: true + + /ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + dependencies: + color-convert: 2.0.1 + dev: true + + /argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + dev: true + + /array-union@2.1.0: + resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} + engines: {node: '>=8'} + dev: true + + /balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + dev: true + + /brace-expansion@1.1.11: + resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + dev: true + + /braces@3.0.2: + resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} + engines: {node: '>=8'} + dependencies: + fill-range: 7.0.1 + dev: true + + /builtin-modules@3.3.0: + resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} + engines: {node: '>=6'} + dev: true + + /callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + dev: true + + /chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + dev: true + + /color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + dependencies: + color-name: 1.1.4 + dev: true + + /color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + dev: true + + /concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + dev: true + + /cross-spawn@7.0.3: + resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} + engines: {node: '>= 8'} + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + dev: true + + /debug@4.3.4: + resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + dependencies: + ms: 2.1.2 + dev: true + + /deep-is@0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + dev: true + + /dir-glob@3.0.1: + resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} + engines: {node: '>=8'} + dependencies: + path-type: 4.0.0 + dev: true + + /doctrine@3.0.0: + resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} + engines: {node: '>=6.0.0'} + dependencies: + esutils: 2.0.3 + dev: true + + /esbuild@0.17.3: + resolution: {integrity: sha512-9n3AsBRe6sIyOc6kmoXg2ypCLgf3eZSraWFRpnkto+svt8cZNuKTkb1bhQcitBcvIqjNiK7K0J3KPmwGSfkA8g==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + optionalDependencies: + '@esbuild/android-arm': 0.17.3 + '@esbuild/android-arm64': 0.17.3 + '@esbuild/android-x64': 0.17.3 + '@esbuild/darwin-arm64': 0.17.3 + '@esbuild/darwin-x64': 0.17.3 + '@esbuild/freebsd-arm64': 0.17.3 + '@esbuild/freebsd-x64': 0.17.3 + '@esbuild/linux-arm': 0.17.3 + '@esbuild/linux-arm64': 0.17.3 + '@esbuild/linux-ia32': 0.17.3 + '@esbuild/linux-loong64': 0.17.3 + '@esbuild/linux-mips64el': 0.17.3 + '@esbuild/linux-ppc64': 0.17.3 + '@esbuild/linux-riscv64': 0.17.3 + '@esbuild/linux-s390x': 0.17.3 + '@esbuild/linux-x64': 0.17.3 + '@esbuild/netbsd-x64': 0.17.3 + '@esbuild/openbsd-x64': 0.17.3 + '@esbuild/sunos-x64': 0.17.3 + '@esbuild/win32-arm64': 0.17.3 + '@esbuild/win32-ia32': 0.17.3 + '@esbuild/win32-x64': 0.17.3 + dev: true + + /escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + dev: true + + /eslint-scope@5.1.1: + resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} + engines: {node: '>=8.0.0'} + dependencies: + esrecurse: 4.3.0 + estraverse: 4.3.0 + dev: true + + /eslint-scope@7.2.2: + resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + dev: true + + /eslint-utils@3.0.0(eslint@8.57.0): + resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} + engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} + peerDependencies: + eslint: '>=5' + dependencies: + eslint: 8.57.0 + eslint-visitor-keys: 2.1.0 + dev: true + + /eslint-visitor-keys@2.1.0: + resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} + engines: {node: '>=10'} + dev: true + + /eslint-visitor-keys@3.4.3: + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true + + /eslint@8.57.0: + resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + hasBin: true + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) + '@eslint-community/regexpp': 4.10.0 + '@eslint/eslintrc': 2.1.4 + '@eslint/js': 8.57.0 + '@humanwhocodes/config-array': 0.11.14 + '@humanwhocodes/module-importer': 1.0.1 + '@nodelib/fs.walk': 1.2.8 + '@ungap/structured-clone': 1.2.0 + ajv: 6.12.6 + chalk: 4.1.2 + cross-spawn: 7.0.3 + debug: 4.3.4 + doctrine: 3.0.0 + escape-string-regexp: 4.0.0 + eslint-scope: 7.2.2 + eslint-visitor-keys: 3.4.3 + espree: 9.6.1 + esquery: 1.5.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 6.0.1 + find-up: 5.0.0 + glob-parent: 6.0.2 + globals: 13.24.0 + graphemer: 1.4.0 + ignore: 5.3.1 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + is-path-inside: 3.0.3 + js-yaml: 4.1.0 + json-stable-stringify-without-jsonify: 1.0.1 + levn: 0.4.1 + lodash.merge: 4.6.2 + minimatch: 3.1.2 + natural-compare: 1.4.0 + optionator: 0.9.4 + strip-ansi: 6.0.1 + text-table: 0.2.0 + transitivePeerDependencies: + - supports-color + dev: true + + /espree@9.6.1: + resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + acorn: 8.11.3 + acorn-jsx: 5.3.2(acorn@8.11.3) + eslint-visitor-keys: 3.4.3 + dev: true + + /esquery@1.5.0: + resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} + engines: {node: '>=0.10'} + dependencies: + estraverse: 5.3.0 + dev: true + + /esrecurse@4.3.0: + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} + dependencies: + estraverse: 5.3.0 + dev: true + + /estraverse@4.3.0: + resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} + engines: {node: '>=4.0'} + dev: true + + /estraverse@5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} + dev: true + + /esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + dev: true + + /fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + dev: true + + /fast-glob@3.3.2: + resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} + engines: {node: '>=8.6.0'} + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.5 + dev: true + + /fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + dev: true + + /fast-levenshtein@2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + dev: true + + /fastq@1.17.1: + resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} + dependencies: + reusify: 1.0.4 + dev: true + + /file-entry-cache@6.0.1: + resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} + engines: {node: ^10.12.0 || >=12.0.0} + dependencies: + flat-cache: 3.2.0 + dev: true + + /fill-range@7.0.1: + resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} + engines: {node: '>=8'} + dependencies: + to-regex-range: 5.0.1 + dev: true + + /find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + dev: true + + /flat-cache@3.2.0: + resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} + engines: {node: ^10.12.0 || >=12.0.0} + dependencies: + flatted: 3.3.1 + keyv: 4.5.4 + rimraf: 3.0.2 + dev: true + + /flatted@3.3.1: + resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} + dev: true + + /fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + dev: true + + /functional-red-black-tree@1.0.1: + resolution: {integrity: sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==} + dev: true + + /glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + dependencies: + is-glob: 4.0.3 + dev: true + + /glob-parent@6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} + dependencies: + is-glob: 4.0.3 + dev: true + + /glob@7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + dev: true + + /globals@13.24.0: + resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} + engines: {node: '>=8'} + dependencies: + type-fest: 0.20.2 + dev: true + + /globby@11.1.0: + resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} + engines: {node: '>=10'} + dependencies: + array-union: 2.1.0 + dir-glob: 3.0.1 + fast-glob: 3.3.2 + ignore: 5.3.1 + merge2: 1.4.1 + slash: 3.0.0 + dev: true + + /graphemer@1.4.0: + resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + dev: true + + /has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + dev: true + + /ignore@5.3.1: + resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} + engines: {node: '>= 4'} + dev: true + + /import-fresh@3.3.0: + resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} + engines: {node: '>=6'} + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + dev: true + + /imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + dev: true + + /inflight@1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + dev: true + + /inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + dev: true + + /is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + dev: true + + /is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + dependencies: + is-extglob: 2.1.1 + dev: true + + /is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + dev: true + + /is-path-inside@3.0.3: + resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} + engines: {node: '>=8'} + dev: true + + /isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + dev: true + + /js-yaml@4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + hasBin: true + dependencies: + argparse: 2.0.1 + dev: true + + /json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + dev: true + + /json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + dev: true + + /json-stable-stringify-without-jsonify@1.0.1: + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + dev: true + + /keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + dependencies: + json-buffer: 3.0.1 + dev: true + + /levn@0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} + dependencies: + prelude-ls: 1.2.1 + type-check: 0.4.0 + dev: true + + /locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + dependencies: + p-locate: 5.0.0 + dev: true + + /lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + dev: true + + /merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + dev: true + + /micromatch@4.0.5: + resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} + engines: {node: '>=8.6'} + dependencies: + braces: 3.0.2 + picomatch: 2.3.1 + dev: true + + /minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + dependencies: + brace-expansion: 1.1.11 + dev: true + + /moment@2.29.4: + resolution: {integrity: sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==} + dev: true + + /ms@2.1.2: + resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} + dev: true + + /natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + dev: true + + /obsidian@1.5.7-1(@codemirror/state@6.4.1)(@codemirror/view@6.26.3): + resolution: {integrity: sha512-T5ZRuQ1FnfXqEoakTTHVDYvzUEEoT8zSPnQCW31PVgYwG4D4tZCQfKHN2hTz1ifnCe8upvwa6mBTAP2WUA5Vng==} + peerDependencies: + '@codemirror/state': ^6.0.0 + '@codemirror/view': ^6.0.0 + dependencies: + '@codemirror/state': 6.4.1 + '@codemirror/view': 6.26.3 + '@types/codemirror': 5.60.8 + moment: 2.29.4 + dev: true + + /once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + dependencies: + wrappy: 1.0.2 + dev: true + + /optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} + engines: {node: '>= 0.8.0'} + dependencies: + deep-is: 0.1.4 + fast-levenshtein: 2.0.6 + levn: 0.4.1 + prelude-ls: 1.2.1 + type-check: 0.4.0 + word-wrap: 1.2.5 + dev: true + + /p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + dependencies: + yocto-queue: 0.1.0 + dev: true + + /p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + dependencies: + p-limit: 3.1.0 + dev: true + + /parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + dependencies: + callsites: 3.1.0 + dev: true + + /path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + dev: true + + /path-is-absolute@1.0.1: + resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} + engines: {node: '>=0.10.0'} + dev: true + + /path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + dev: true + + /path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + dev: true + + /picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + dev: true + + /prelude-ls@1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + dev: true + + /punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + dev: true + + /queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + dev: true + + /regexpp@3.2.0: + resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} + engines: {node: '>=8'} + dev: true + + /resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + dev: true + + /reusify@1.0.4: + resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + dev: true + + /rimraf@3.0.2: + resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} + hasBin: true + dependencies: + glob: 7.2.3 + dev: true + + /run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + dependencies: + queue-microtask: 1.2.3 + dev: true + + /semver@7.6.2: + resolution: {integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==} + engines: {node: '>=10'} + hasBin: true + dev: true + + /shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + dependencies: + shebang-regex: 3.0.0 + dev: true + + /shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + dev: true + + /slash@3.0.0: + resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} + engines: {node: '>=8'} + dev: true + + /strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + dependencies: + ansi-regex: 5.0.1 + dev: true + + /strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + dev: true + + /style-mod@4.1.2: + resolution: {integrity: sha512-wnD1HyVqpJUI2+eKZ+eo1UwghftP6yuFheBqqe+bWCotBjC2K1YnteJILRMs3SM4V/0dLEW1SC27MWP5y+mwmw==} + dev: true + + /supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + dependencies: + has-flag: 4.0.0 + dev: true + + /text-table@0.2.0: + resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} + dev: true + + /to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + dependencies: + is-number: 7.0.0 + dev: true + + /tslib@1.14.1: + resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} + dev: true + + /tslib@2.4.0: + resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==} + dev: true + + /tsutils@3.21.0(typescript@4.7.4): + resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} + engines: {node: '>= 6'} + peerDependencies: + typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' + dependencies: + tslib: 1.14.1 + typescript: 4.7.4 + dev: true + + /type-check@0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} + dependencies: + prelude-ls: 1.2.1 + dev: true + + /type-fest@0.20.2: + resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} + engines: {node: '>=10'} + dev: true + + /typescript@4.7.4: + resolution: {integrity: sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==} + engines: {node: '>=4.2.0'} + hasBin: true + dev: true + + /uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + dependencies: + punycode: 2.3.1 + dev: true + + /w3c-keyname@2.2.8: + resolution: {integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==} + dev: true + + /which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + dependencies: + isexe: 2.0.0 + dev: true + + /word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + dev: true + + /wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + dev: true + + /yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + dev: true diff --git a/styles.css b/styles.css index 71cc60f..f7edc61 100644 --- a/styles.css +++ b/styles.css @@ -1,8 +1,953 @@ -/* - -This CSS file will be included with your plugin, and -available in the app when your plugin is enabled. - -If your plugin does not need CSS, delete this file. - -*/ +/*! + * Project: Heti + * URL: https://github.com/sivan/heti + * Author: Sivan [sun.sivan@gmail.com] + */ +@font-face { + font-family: "Heti Hei"; + src: "Heti Hei SC", "Heti Hei TC", "Heti Hei JP", "Heti Hei KR"; +} +@font-face { + font-family: "Heti Hei SC"; + src: local("PingFang SC Regular"), local("Heiti SC Regular"), + local("Microsoft YaHei"), local("Source Han Sans CN Regular"), + local("Noto Sans CJK SC Regular"), local("WenQuanYi Micro Hei"), + local("Droid Sans Fallback"); +} +@font-face { + font-family: "Heti Hei TC"; + src: local("PingFang TC Regular"), local("Heiti TC Regular"), + local("Microsoft Jhenghei"), local("Source Han Sans HK Regular"), + local("Source Han Sans TW Regular"), local("Noto Sans CJK TC Regular"), + local("WenQuanYi Micro Hei"), local("Droid Sans Fallback"); +} +@font-face { + font-family: "Heti Hei JP"; + src: local("Hiragino Sans GB W3"), local("Source Han Sans JP Regular"), + local("Noto Sans CJK JP Regular"), local("Droid Sans Fallback"); +} +@font-face { + font-family: "Heti Hei KR"; + src: local("Source Han Sans KR Regular"), local("Noto Sans CJK KR Regular"), + local("Droid Sans Fallback"); +} +@font-face { + font-family: "Heti Hei"; + font-weight: 200; + src: "Heti Hei SC Light", "Heti Hei TC Light", "Heti Hei JP Light", + "Heti Hei KR Light"; +} +@font-face { + font-family: "Heti Hei SC Light"; + font-weight: 200; + src: local("PingFang SC Light"), local("Heiti SC Light"), + "Heti Hei SC Light Fallback", local("Source Han Sans CN Light"), + local("Noto Sans CJK SC Light"); +} +@font-face { + font-family: "Heti Hei TC Light"; + font-weight: 200; + src: local("PingFang TC Light"), local("Heiti TC Light"), + local("Microsoft Jhenghei Light"), local("Source Han Sans HK Light"), + local("Source Han Sans TW Light"), local("Noto Sans CJK TC Light"); +} +@font-face { + font-family: "Heti Hei JP Light"; + font-weight: 200; + src: local("Source Han Sans JP Light"), local("Noto Sans CJK JP Light"); +} +@font-face { + font-family: "Heti Hei KR Light"; + font-weight: 200; + src: local("Source Han Sans KR Light"), local("Noto Sans CJK KR Light"); +} +@font-face { + font-family: "Heti Hei SC Light Fallback"; + font-weight: 200; + src: local("Microsoft YaHei"), local("Droid Sans Fallback"); +} +@font-face { + font-family: "Heti Hei"; + font-weight: 600; + src: "Heti Hei SC Bold", "Heti Hei TC Bold", "Heti Hei JP Bold", + "Heti Hei KR Bold"; +} +@font-face { + font-family: "Heti Hei SC Bold"; + font-weight: 600; + src: local("PingFang SC Medium"), local("Heiti SC Medium"), + "Heti Hei SC Bold Fallback", local("Source Han Sans CN Bold"), + local("Noto Sans CJK SC Bold"); +} +@font-face { + font-family: "Heti Hei TC Bold"; + font-weight: 600; + src: local("PingFang TC Medium"), local("Heiti TC Medium"), + local("Microsoft Jhenghei Bold"), local("Source Han Sans HK Bold"), + local("Source Han Sans TW Bold"), local("Noto Sans CJK TC Bold"); +} +@font-face { + font-family: "Heti Hei JP Bold"; + font-weight: 600; + src: local("Hiragino Sans GB W6"), local("Source Han Sans JP Bold"), + local("Noto Sans CJK JP Bold"); +} +@font-face { + font-family: "Heti Hei KR Bold"; + font-weight: 600; + src: local("Source Han Sans KR Bold"), local("Noto Sans CJK KR Bold"); +} +@font-face { + font-family: "Heti Hei SC Bold Fallback"; + font-weight: 600; + src: local("Microsoft YaHei"), local("Droid Sans Fallback"); +} +@font-face { + font-family: "Heti Hei Black"; + font-weight: 800; + src: "Heti Hei SC Black", "Heti Hei TC Black", "Heti Hei JP Black", + "Heti Hei KR Black"; +} +@font-face { + font-family: "Heti Hei SC Black"; + font-weight: 800; + src: local("Lantinghei SC Heavy"), local("PingFang SC Semibold"), + local("Heiti SC Medium"), "Heti Hei SC Black Fallback", + local("Source Han Sans CN Heavy"), local("Noto Sans CJK SC Heavy"); +} +@font-face { + font-family: "Heti Hei TC Black"; + font-weight: 800; + src: local("Lantinghei TC Heavy"), local("PingFang TC Semibold"), + local("Heiti TC Medium"), local("Microsoft Jhenghei Bold"), + local("Source Han Sans HK Heavy"), local("Source Han Sans TW Heavy"), + local("Noto Sans CJK TC Heavy"); +} +@font-face { + font-family: "Heti Hei JP Black"; + font-weight: 800; + src: local("Hiragino Sans GB W6"), local("Source Han Sans JP Heavy"), + local("Noto Sans CJK JP Heavy"); +} +@font-face { + font-family: "Heti Hei KR Black"; + font-weight: 800; + src: local("Source Han Sans KR Heavy"), local("Noto Sans CJK KR Heavy"); +} +@font-face { + font-family: "Heti Hei SC Black Fallback"; + font-weight: 800; + src: local("Microsoft YaHei"), local("Droid Sans Fallback"); +} +@font-face { + font-family: "Heti Song"; + src: local("Songti SC Regular"), local("Songti TC Regular"), local("SimSun"); +} +@font-face { + font-family: "Heti Song"; + font-weight: 200; + src: local("Songti SC Light"), local("Songti TC Light"), + "Heti Song Light Fallback"; +} +@font-face { + font-family: "Heti Song Light Fallback"; + font-weight: 200; + src: local("SimSun"); +} +@font-face { + font-family: "Heti Song"; + font-weight: 600; + src: local("Songti SC Bold"), local("Songti TC Bold"), + "Heti Song Bold Fallback"; +} +@font-face { + font-family: "Heti Song Bold Fallback"; + font-weight: 600; + src: local("SimSun"); +} +@font-face { + font-family: "Heti Song Black"; + font-weight: 800; + src: local("Songti SC Black"), local("SimSun"); +} +@font-face { + font-family: "Heti Kai"; + src: local("Kaiti SC Regular"), local("Kaiti TC Regular"), local("STKaiti"), + local("Kaiti"), local("BiauKai"); +} +@font-face { + font-family: "Heti Kai"; + font-weight: 600; + src: local("Kaiti SC Bold"), local("Kaiti TC Bold"); +} +@font-face { + font-family: "Heti Kai Bold Fallback"; + font-weight: 600; + src: local("STKaiti"), local("Kaiti") local("BiauKai"); +} +@font-face { + font-family: "Heti Kai Black"; + font-weight: 800; + src: local("Kaiti SC Black"), local("Kaiti TC Black"), local("STKaiti"), + local("Kaiti"); +} +.heti { + max-width: 42em; + font-size: 16px; + font-weight: 400; + -webkit-font-smoothing: subpixel-antialiased; + line-height: 1.5; + overflow-wrap: break-word; + word-wrap: break-word; + hyphens: auto; + letter-spacing: 0.02em; +} +.heti::before, +.heti::after { + content: ""; + display: table; +} +.heti::after { + clear: both; +} +.heti > *:first-child, +.heti section > *:first-child, +.heti td > *:first-child { + margin-block-start: 0 !important; +} +.heti > *:last-child, +.heti section > *:last-child, +.heti td > *:last-child { + margin-block-end: 0 !important; +} +.heti blockquote { + margin-block-start: 12px; + margin-block-end: 24px; + margin-inline-start: 32px; + margin-inline-end: 32px; + padding-block-start: 12px; + padding-block-end: 12px; + padding-inline-start: 16px; + padding-inline-end: 16px; + background-color: rgba(0, 0, 0, 0.054); +} +@media (prefers-color-scheme: dark) { + .heti blockquote { + background-color: rgba(255, 255, 255, 0.054); + } +} +.heti figure { + display: block; + text-align: center; +} +.heti figure > img { + display: block; + margin-inline-start: auto; + margin-inline-end: auto; +} +.heti hr { + width: 30%; + height: 1px; + margin-block-start: 48px; + margin-block-end: 47px; + margin-inline-start: auto; + margin-inline-end: auto; + border: 0; + background-color: #ccc; +} +@media (prefers-color-scheme: dark) { + .heti hr { + background-color: #404040; + } +} +.heti p { + margin-block-start: 12px; + margin-block-end: 24px; + text-align: justify; +} +.heti p:not(:lang(zh)):not(:lang(ja)):not(:lang(kr)), +.heti p:not(:lang(zh)) { + text-align: start; +} +.heti pre { + margin-block-start: 12px; + margin-block-end: 12px; + margin-inline-start: 0; + margin-inline-end: 0; + padding-block-start: 12px; + padding-block-end: 12px; + padding-inline-start: 16px; + padding-inline-end: 16px; + overflow: auto; + font-family: "SFMono-Regular", consolas, "Liberation Mono", menlo, courier, + monospace, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; + white-space: pre; + word-wrap: normal; + border-radius: 4px; + background-color: rgba(0, 0, 0, 0.054); +} +@media (prefers-color-scheme: dark) { + .heti pre { + background-color: rgba(255, 255, 255, 0.054); + } +} +.heti pre code { + margin: 0; + padding: 0; + border: 0; + border-radius: 0; + background-color: rgba(0, 0, 0, 0); + color: inherit; +} +.heti:not(:lang(zh)):not(:lang(ja)):not(:lang(kr)), +.heti:not(:lang(zh)) { + letter-spacing: 0; +} +.heti a, +.heti abbr, +.heti code, +.heti heti-spacing, +.heti [lang="en-US"] { + letter-spacing: normal; +} +.heti h1, +.heti h2, +.heti h3, +.heti h4, +.heti h5, +.heti h6 { + position: relative; + margin: 0; + margin-block-start: 24px; + margin-block-end: 12px; + font-weight: 600; +} +.heti h1 { + margin-block-end: 24px; + font-size: 32px; + line-height: 48px; +} +.heti h2 { + font-size: 24px; + line-height: 36px; +} +.heti h3 { + font-size: 20px; + line-height: 36px; +} +.heti h4 { + font-size: 18px; + line-height: 24px; +} +.heti h5 { + font-size: 16px; + line-height: 24px; +} +.heti h6 { + font-size: 14px; + line-height: 24px; +} +.heti h1, +.heti h2, +.heti h3 { + letter-spacing: 0.05em; +} +.heti h1:not(:lang(zh)):not(:lang(ja)):not(:lang(kr)), +.heti h1:not(:lang(zh)), +.heti h2:not(:lang(zh)):not(:lang(ja)):not(:lang(kr)), +.heti h2:not(:lang(zh)), +.heti h3:not(:lang(zh)):not(:lang(ja)):not(:lang(kr)), +.heti h3:not(:lang(zh)) { + letter-spacing: 0; +} +.heti h1 + h2, +.heti h2 + h3, +.heti h3 + h4, +.heti h4 + h5, +.heti h5 + h6 { + margin-block-start: 12px; +} +.heti ul, +.heti ol, +.heti dl { + margin-block-start: 12px; + margin-block-end: 24px; +} +.heti ul, +.heti ol { + padding-inline-start: 32px; +} +.heti ul ul, +.heti ul ol, +.heti ol ul, +.heti ol ol { + margin-block-start: 0; + margin-block-end: 0; +} +.heti ul { + list-style-type: disc; +} +.heti ol { + list-style-type: decimal; +} +.heti ul ul, +.heti ol ul { + list-style-type: circle; +} +.heti ul ul ul, +.heti ul ol ul, +.heti ol ul ul, +.heti ol ol ul { + list-style-type: square; +} +.heti li { + list-style-type: unset; +} +.heti table { + box-sizing: border-box; + table-layout: fixed; + margin-block-start: 12px; + margin-block-end: 24px; + margin-inline-start: auto; + margin-inline-end: auto; + border-collapse: collapse; + border-width: 1px; + border-style: solid; + border-color: #ccc; + word-break: break-word; +} +@media (prefers-color-scheme: dark) { + .heti table { + border-color: #404040; + } +} +.heti th, +.heti td { + padding-block-start: 6px; + padding-block-end: 6px; + padding-inline-start: 8px; + padding-inline-end: 8px; + border-width: 1px; + border-style: solid; + border-color: #ccc; +} +@media (prefers-color-scheme: dark) { + .heti th, + .heti td { + border-color: #404040; + } +} +.heti caption { + caption-side: bottom; + margin-block-start: 2px; + margin-block-end: -4px; + font-size: 14px; + line-height: 24px; +} +.heti a { + text-decoration: none; +} +.heti a:hover { + padding-block-end: 1px; + border-block-end: 1px solid currentColor; + text-decoration: none; +} +.heti abbr[title] { + padding-block-end: 1px; + border-block-end: 1px dotted; + text-decoration: none; + cursor: help; +} +.heti b, +.heti strong { + font-weight: 600; +} +.heti code { + margin-inline-start: 0.25em; + margin-inline-end: 0.25em; + font-family: "SFMono-Regular", consolas, "Liberation Mono", menlo, courier, + monospace, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; + font-size: 0.875em; +} +.heti dfn { + font-weight: 600; +} +.heti dfn:not(:lang(zh)):not(:lang(ja)):not(:lang(kr)), +.heti dfn:not(:lang(zh)) { + font-weight: 400; +} +.heti em { + font-weight: 600; +} +.heti figcaption { + display: inline-block; + vertical-align: top; + font-size: 14px; + text-align: start; +} +.heti i { + font-style: italic; +} +.heti ins, +.heti u { + padding-block-end: 1px; + border-block-end: 1px solid; + text-decoration: none; +} +.heti mark { + padding-block-start: 2px; + padding-block-end: 2px; + padding-inline-start: 1px; + padding-inline-end: 1px; + margin-inline-start: 1px; + margin-inline-end: 1px; + background-color: rgba(255, 247, 0, 0.88); + color: inherit; +} +@media (prefers-color-scheme: dark) { + .heti mark { + background-color: rgba(77, 74, 0, 0.88); + } +} +.heti q { + quotes: "「" "」" "『" "』"; +} +.heti q:not(:lang(zh)):not(:lang(ja)):not(:lang(kr)), +.heti q:not(:lang(zh)) { + quotes: initial; + quotes: auto; +} +.heti rt { + font-size: 0.875em; + font-weight: 400; +} +.heti small { + font-size: 0.875em; +} +.heti strong { + font-weight: 600; +} +.heti sub, +.heti sup { + position: relative; + margin-inline-start: 0.25em; + margin-inline-end: 0.25em; + font-size: 0.75em; + font-family: "Helvetica Neue", helvetica, arial, "Heti Hei", sans-serif, + "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; + font-style: normal; + line-height: 1; + vertical-align: baseline; +} +.heti sub { + bottom: -0.25em; +} +.heti sup { + top: -0.5em; +} +.heti sup:target, +.heti sup a:target { + background-color: #dbedff; +} +@media (prefers-color-scheme: dark) { + .heti sup:target, + .heti sup a:target { + background-color: #3a6188; + } +} +.heti summary { + padding-inline-start: 1em; + outline: 0; + cursor: pointer; +} +.heti summary::-webkit-details-marker { + width: 0.6em; + margin-inline-end: 0.4em; +} +.heti u[title] { + cursor: help; + border-block-end-width: 3px; + border-block-end-style: double; + border-block-end-color: rgba(0, 0, 0, 0.54); +} +@media (prefers-color-scheme: dark) { + .heti u[title] { + border-block-end-color: rgba(255, 255, 255, 0.54); + } +} +.heti address, +.heti cite, +.heti dfn, +.heti dt, +.heti em { + font-style: normal; +} +.heti address:not(:lang(zh)):not(:lang(ja)):not(:lang(kr)), +.heti address:not(:lang(zh)), +.heti cite:not(:lang(zh)):not(:lang(ja)):not(:lang(kr)), +.heti cite:not(:lang(zh)), +.heti dfn:not(:lang(zh)):not(:lang(ja)):not(:lang(kr)), +.heti dfn:not(:lang(zh)), +.heti dt:not(:lang(zh)):not(:lang(ja)):not(:lang(kr)), +.heti dt:not(:lang(zh)), +.heti em:not(:lang(zh)):not(:lang(ja)):not(:lang(kr)), +.heti em:not(:lang(zh)) { + font-style: italic; +} +.heti abbr[title], +.heti del, +.heti ins, +.heti s, +.heti u { + margin-inline-start: 1px; + margin-inline-end: 1px; +} +.heti, +.heti--sans { + font-family: "Helvetica Neue", helvetica, arial, "Heti Hei", sans-serif, + "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; +} +.heti--serif { + font-family: "Times New Roman", times, "Heti Song", serif, + "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; +} +.heti--classic { + font-family: "Times New Roman", times, "Heti Song", serif, + "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; +} +.heti--classic h1, +.heti--classic h2, +.heti--classic h3, +.heti--classic h4, +.heti--classic h5, +.heti--classic h6 { + font-family: "Times New Roman", times, "Heti Kai Black", serif, + "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; + font-weight: 800; +} +.heti--classic blockquote, +.heti--classic cite, +.heti--classic q { + font-family: "Times New Roman", times, "Heti Kai", serif, + "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; +} +.heti--classic figcaption, +.heti--classic caption, +.heti--classic th { + font-family: "Helvetica Neue", helvetica, arial, "Heti Hei", sans-serif, + "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; +} +.heti--hei { + font-family: "Helvetica Neue", helvetica, arial, "Heti Hei", sans-serif, + "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; +} +.heti--song { + font-family: "Times New Roman", times, "Heti Song", serif, + "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; +} +.heti--kai { + font-family: "Times New Roman", times, "Heti Kai", serif, + "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; +} +.heti--columns-1, +.heti--columns-2, +.heti--columns-3, +.heti--columns-4, +.heti--columns-16em, +.heti--columns-20em, +.heti--columns-24em, +.heti--columns-28em, +.heti--columns-32em, +.heti--columns-36em, +.heti--columns-40em, +.heti--columns-44em, +.heti--columns-48em, +.heti comma { + max-width: none; + column-gap: 2em; +} +.heti--columns-1 p, +.heti--columns-2 p, +.heti--columns-3 p, +.heti--columns-4 p, +.heti--columns-16em p, +.heti--columns-20em p, +.heti--columns-24em p, +.heti--columns-28em p, +.heti--columns-32em p, +.heti--columns-36em p, +.heti--columns-40em p, +.heti--columns-44em p, +.heti--columns-48em p, +.heti comma p { + margin-block-start: 6px; + margin-block-end: 12px; + text-indent: 2em; +} +.heti--columns-1 { + column-count: 1; +} +.heti--columns-2 { + column-count: 2; +} +.heti--columns-3 { + column-count: 3; +} +.heti--columns-4 { + column-count: 4; +} +.heti--columns-16em { + column-width: 16em; +} +.heti--columns-20em { + column-width: 20em; +} +.heti--columns-24em { + column-width: 24em; +} +.heti--columns-28em { + column-width: 28em; +} +.heti--columns-32em { + column-width: 32em; +} +.heti--columns-36em { + column-width: 36em; +} +.heti--columns-40em { + column-width: 40em; +} +.heti--columns-44em { + column-width: 44em; +} +.heti--columns-48em { + column-width: 48em; +} +.heti--vertical { + max-width: none; + max-height: 42em; + writing-mode: vertical-rl; + letter-spacing: 0.125em; +} +.heti--vertical h1, +.heti--vertical h2, +.heti--vertical h3, +.heti--vertical h4, +.heti--vertical h5, +.heti--vertical h6 { + text-align: start; +} +.heti--vertical q { + quotes: "「" "」" "『" "』"; +} +.heti--ancient, +.heti--poetry { + font-family: "Times New Roman", times, "Heti Song", serif, + "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; +} +.heti--ancient h1, +.heti--ancient h2, +.heti--ancient h3, +.heti--ancient h4, +.heti--ancient h5, +.heti--ancient h6, +.heti--poetry h1, +.heti--poetry h2, +.heti--poetry h3, +.heti--poetry h4, +.heti--poetry h5, +.heti--poetry h6 { + font-family: "Times New Roman", times, "Heti Kai Black", serif, + "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; + font-weight: 800; + text-align: center; +} +.heti--ancient h1 .heti-meta, +.heti--ancient h2 .heti-meta, +.heti--ancient h3 .heti-meta, +.heti--ancient h4 .heti-meta, +.heti--ancient h5 .heti-meta, +.heti--ancient h6 .heti-meta, +.heti--poetry h1 .heti-meta, +.heti--poetry h2 .heti-meta, +.heti--poetry h3 .heti-meta, +.heti--poetry h4 .heti-meta, +.heti--poetry h5 .heti-meta, +.heti--poetry h6 .heti-meta { + font-weight: 400; +} +@media screen and (min-width: 640px) { + .heti--ancient h1 .heti-meta, + .heti--ancient h2 .heti-meta, + .heti--ancient h3 .heti-meta, + .heti--ancient h4 .heti-meta, + .heti--ancient h5 .heti-meta, + .heti--ancient h6 .heti-meta, + .heti--poetry h1 .heti-meta, + .heti--poetry h2 .heti-meta, + .heti--poetry h3 .heti-meta, + .heti--poetry h4 .heti-meta, + .heti--poetry h5 .heti-meta, + .heti--poetry h6 .heti-meta { + position: absolute; + line-height: inherit; + text-indent: 0; + display: inline; + margin-block-start: 4px; + margin-inline-start: 8px; + } +} +.heti--ancient .heti-meta, +.heti--poetry .heti-meta { + line-height: 24px; + text-align: center; + text-indent: 0; +} +.heti--ancient p { + text-indent: 2em; +} +.heti--poetry p { + text-align: center; + text-indent: 0; +} +.heti--annotation p { + margin-block-start: 0; + margin-block-end: 0; + line-height: 2.25; + text-indent: 2em; +} +.heti--annotation em { + -webkit-text-emphasis: filled circle; + -webkit-text-emphasis-position: under; + text-emphasis: filled circle; + text-emphasis-position: under right; + font-weight: 400; +} +.heti--annotation em:not(:lang(zh)):not(:lang(ja)):not(:lang(kr)), +.heti--annotation em:not(:lang(zh)) { + -webkit-text-emphasis: none; + text-emphasis: none; +} +.heti--annotation .heti-meta { + margin-block-start: 12px; + margin-block-end: 24px; +} +.heti .heti-meta { + display: block; + text-indent: 0; +} +.heti .heti-verse { + text-align: center; + text-indent: 0; +} +.heti .heti-large { + font-size: 18px; + line-height: 24px; +} +.heti .heti-x-large { + font-size: 20px; + line-height: 30px; + letter-spacing: 0.05em; +} +.heti .heti-small { + font-size: 14px; + line-height: 24px; +} +.heti .heti-x-small { + font-size: 12px; + line-height: 18px; +} +.heti .heti-list-latin { + list-style-type: upper-latin; +} +.heti .heti-list-latin ol { + list-style-type: lower-roman; +} +.heti .heti-list-latin ol ol { + list-style-type: lower-latin; +} +.heti .heti-list-han { + list-style-type: cjk-ideographic; +} +.heti .heti-list-han ol { + list-style-type: decimal; +} +.heti .heti-list-han ol ol { + list-style-type: decimal-leading-zero; +} +.heti .heti-fn { + margin-block-start: 59px; + border-block-start: 1px solid; + border-block-start-color: #ccc; + font-size: 14px; + font-family: "Helvetica Neue", helvetica, arial, "Heti Hei", sans-serif, + "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; + line-height: 24px; +} +@media (prefers-color-scheme: dark) { + .heti .heti-fn { + border-block-start-color: #404040; + } +} +.heti .heti-fn ol { + margin-block-start: 12px; + margin-block-end: 0; +} +.heti .heti-fn li:target { + background-color: #dbedff; +} +@media (prefers-color-scheme: dark) { + .heti .heti-fn li:target { + background-color: #3a6188; + } +} +.heti .heti-hang { + position: absolute; + line-height: inherit; + text-indent: 0; +} +.heti .heti-em { + -webkit-text-emphasis: filled circle; + -webkit-text-emphasis-position: under; + text-emphasis: filled circle; + text-emphasis-position: under right; +} +.heti .heti-em:not(:lang(zh)):not(:lang(ja)):not(:lang(kr)), +.heti .heti-em:not(:lang(zh)) { + -webkit-text-emphasis: none; + text-emphasis: none; +} +.heti .heti-ruby--inline { + display: inline-flex; + flex-direction: column-reverse; + height: 1.5em; + vertical-align: top; +} +.heti .heti-ruby--inline rt { + display: inline; + margin-bottom: -0.25em; + line-height: 1; + text-align: center; +} +.heti heti-spacing { + display: inline; +} +.heti heti-spacing + sup, +.heti heti-spacing + sub { + margin-inline-start: 0; +} +.heti .heti-spacing-start { + margin-inline-end: 0.25em; +} +.heti .heti-spacing-end { + margin-inline-start: 0.25em; +} +.heti heti-adjacent { + display: inline; +} +.heti .heti-adjacent-half { + margin-inline-end: -0.5em; +} +.heti .heti-adjacent-quarter { + margin-inline-end: -0.25em; +}