remark-flexible-toc 1.1.1 → 1.2.1

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/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2023 ipikuka
3
+ Copyright (c) 2025 ipikuka
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -1,22 +1,22 @@
1
1
  # remark-flexible-toc
2
2
 
3
- [![NPM version][badge-npm-version]][npm-package-url]
4
- [![NPM downloads][badge-npm-download]][npm-package-url]
5
- [![Build][badge-build]][github-workflow-url]
6
- [![codecov](https://codecov.io/gh/ipikuka/remark-flexible-toc/graph/badge.svg?token=QBNX6L8W2G)](https://codecov.io/gh/ipikuka/remark-flexible-toc)
7
- [![type-coverage](https://img.shields.io/badge/dynamic/json.svg?label=type-coverage&prefix=%E2%89%A5&suffix=%&query=$.typeCoverage.atLeast&uri=https%3A%2F%2Fraw.githubusercontent.com%2Fipikuka%2Fremark-flexible-toc%2Fmaster%2Fpackage.json)](https://github.com/ipikuka/remark-flexible-toc)
8
- [![typescript][badge-typescript]][typescript-url]
9
- [![License][badge-license]][github-license-url]
3
+ [![npm version][badge-npm-version]][url-npm-package]
4
+ [![npm downloads][badge-npm-download]][url-npm-package]
5
+ [![publish to npm][badge-publish-to-npm]][url-publish-github-actions]
6
+ [![code-coverage][badge-codecov]][url-codecov]
7
+ [![type-coverage][badge-type-coverage]][url-github-package]
8
+ [![typescript][badge-typescript]][url-typescript]
9
+ [![license][badge-license]][url-license]
10
10
 
11
- This package is a [unified][unified] ([remark][remark]) plugin to expose the table of contents via `Vfile.data` or via an option reference in markdown.
11
+ This package is a [**unified**][unified] ([**remark**][remark]) plugin **to expose the table of contents via `Vfile.data` or via an option reference in markdown.**
12
12
 
13
- **[unified][unified]** is a project that transforms content with abstract syntax trees (ASTs) using the new parser **[micromark][micromark]**. **[remark][remark]** adds support for markdown to unified. **[mdast][mdast]** is the Markdown Abstract Syntax Tree (AST) which is a specification for representing markdown in a syntax tree.
13
+ [**unified**][unified] is a project that transforms content with abstract syntax trees (ASTs) using the new parser [**micromark**][micromark]. [**remark**][remark] adds support for markdown to unified. [**mdast**][mdast] is the Markdown Abstract Syntax Tree (AST) which is a specification for representing markdown in a syntax tree.
14
14
 
15
- **This plugin is a remark plugin that doesn't transform the mdast but gets info from the mdast.**
15
+ **This plugin is a remark plugin that doesn't transform the MDAST but gets info from the MDAST.**
16
16
 
17
17
  ## When should I use this?
18
18
 
19
- This plugin `remark-flexible-toc` is useful if you want to get the table of contents (TOC) from the markdown/MDX document. The `remark-flexible-toc` exposes the table of contents (TOC) in two ways:
19
+ **`remark-flexible-toc`** is useful if you want to get the table of contents (TOC) from the markdown/MDX document. It exposes the table of contents (TOC) in two ways:
20
20
  + by adding the `toc` into the `Vfile.data`
21
21
  + by mutating a reference array if provided in the options
22
22
 
@@ -264,7 +264,7 @@ type TocItem = {
264
264
  > [!NOTE]
265
265
  > If there is a remark plugin before the `remark-flexible-toc` in the plugin chain, which provides custom id for headings like `remark-heading-id`, that custom id takes precedence for `href`.
266
266
 
267
- The `remark-flexible-toc` uses the `github-slugger` internally for producing unique links. Then, it is possible you to use [`rehype-slug`](https://github.com/rehypejs/rehype-slug) (forIDs on headings) and [`rehype-autolink-headings`](https://github.com/rehypejs/rehype-autolink-headings) (for anchors that link-to-self) because they use the same `github-slugger`.
267
+ The `remark-flexible-toc` uses the `github-slugger` internally for producing unique links. Then, it is possible you to use [**rehype-slug**][rehype-slug] (forIDs on headings) and [**rehype-autolink-headings**][rehype-autolink-headings] (for anchors that link-to-self) because they use the same `github-slugger`.
268
268
 
269
269
  As an example for the unique heading links (notice the same heading texts).
270
270
 
@@ -352,9 +352,7 @@ This plugin does not modify the `mdast` (markdown abstract syntax tree), collect
352
352
 
353
353
  ## Types
354
354
 
355
- This package is fully typed with [TypeScript][typescript].
356
-
357
- The plugin exports the types `FlexibleTocOptions`, `HeadingParent`, `HeadingDepth`, `TocItem`.
355
+ This package is fully typed with [TypeScript][url-typescript]. The plugin exports the types `FlexibleTocOptions`, `HeadingParent`, `HeadingDepth`, `TocItem`.
358
356
 
359
357
  ## Compatibility
360
358
 
@@ -391,6 +389,10 @@ I like to contribute the Unified / Remark / MDX ecosystem, so I recommend you to
391
389
  – Rehype plugin to add language information as a property to `pre` element
392
390
  - [`rehype-highlight-code-lines`](https://www.npmjs.com/package/rehype-highlight-code-lines)
393
391
  – Rehype plugin to add line numbers to code blocks and allow highlighting of desired code lines
392
+ - [`rehype-code-meta`](https://www.npmjs.com/package/rehype-code-meta)
393
+ – Rehype plugin to copy `code.data.meta` to `code.properties.metastring`
394
+ - [`rehype-image-toolkit`](https://www.npmjs.com/package/rehype-image-toolkit)
395
+ – Rehype plugin to enhance Markdown image syntax `![]()` and Markdown/MDX media elements (`<img>`, `<audio>`, `<video>`) by auto-linking bracketed or parenthesized image URLs, wrapping them in `<figure>` with optional captions, unwrapping images/videos/audio from paragraph, parsing directives in title for styling and adding attributes, and dynamically converting images into `<video>` or `<audio>` elements based on file extension.
394
396
 
395
397
  ### My Recma Plugins
396
398
 
@@ -398,41 +400,44 @@ I like to contribute the Unified / Remark / MDX ecosystem, so I recommend you to
398
400
  – Recma plugin to set the default value `() => null` for the Components in MDX in case of missing or not provided so as not to throw an error
399
401
  - [`recma-mdx-change-props`](https://www.npmjs.com/package/recma-mdx-change-props)
400
402
  – Recma plugin to change the `props` parameter into the `_props` in the `function _createMdxContent(props) {/* */}` in the compiled source in order to be able to use `{props.foo}` like expressions. It is useful for the `next-mdx-remote` or `next-mdx-remote-client` users in `nextjs` applications.
403
+ - [`recma-mdx-change-imports`](https://www.npmjs.com/package/recma-mdx-change-imports)
404
+ – Recma plugin to convert import declarations for assets and media with relative links into variable declarations with string URLs, enabling direct asset URL resolution in compiled MDX.
405
+ - [`recma-mdx-import-media`](https://www.npmjs.com/package/recma-mdx-import-media)
406
+ – Recma plugin to turn media relative paths into import declarations for both markdown and html syntax in MDX.
407
+ - [`recma-mdx-import-react`](https://www.npmjs.com/package/recma-mdx-import-react)
408
+ – Recma plugin to ensure getting `React` instance from the arguments and to make the runtime props `{React, jsx, jsxs, jsxDev, Fragment}` is available in the dynamically imported components in the compiled source of MDX.
409
+ - [`recma-mdx-html-override`](https://www.npmjs.com/package/recma-mdx-html-override)
410
+ – Recma plugin to allow selected raw HTML elements to be overridden via MDX components.
411
+ - [`recma-mdx-interpolate`](https://www.npmjs.com/package/recma-mdx-interpolate)
412
+ – Recma plugin to enable interpolation of identifiers wrapped in curly braces within the `alt`, `src`, `href`, and `title` attributes of markdown link and image syntax in MDX.
401
413
 
402
414
  ## License
403
415
 
404
416
  [MIT License](./LICENSE) © ipikuka
405
417
 
406
- ### Keywords
407
-
408
- 🟩 [unified][unifiednpm] 🟩 [remark][remarknpm] 🟩 [remark plugin][remarkpluginnpm] 🟩 [mdast][mdastnpm] 🟩 [markdown][markdownnpm] 🟩 [mdx][mdxnpm] 🟩 [remark toc][remarktocnpm] 🟩 [remark table of contents][remarktableofcontentsnpm]
409
-
410
-
411
- [unifiednpm]: https://www.npmjs.com/search?q=keywords:unified
412
- [remarknpm]: https://www.npmjs.com/search?q=keywords:remark
413
- [remarkpluginnpm]: https://www.npmjs.com/search?q=keywords:remark%20plugin
414
- [mdastnpm]: https://www.npmjs.com/search?q=keywords:mdast
415
- [markdownnpm]: https://www.npmjs.com/search?q=keywords:markdown
416
- [mdxnpm]: https://www.npmjs.com/search?q=keywords:mdx
417
- [remarktocnpm]: https://www.npmjs.com/search?q=keywords:remark%20toc
418
- [remarktableofcontentsnpm]: https://www.npmjs.com/search?q=keywords:remark%20table%20of%20contents
419
-
420
418
  [unified]: https://github.com/unifiedjs/unified
419
+ [micromark]: https://github.com/micromark/micromark
421
420
  [remark]: https://github.com/remarkjs/remark
422
421
  [remarkplugins]: https://github.com/remarkjs/remark/blob/main/doc/plugins.md
423
422
  [mdast]: https://github.com/syntax-tree/mdast
424
- [micromark]: https://github.com/micromark/micromark
425
- [typescript]: https://www.typescriptlang.org/
423
+ [rehype-slug]: https://github.com/rehypejs/rehype-slug
424
+ [rehype-autolink-headings]: https://github.com/rehypejs/rehype-autolink-headings
426
425
 
427
426
  [badge-npm-version]: https://img.shields.io/npm/v/remark-flexible-toc
428
427
  [badge-npm-download]:https://img.shields.io/npm/dt/remark-flexible-toc
429
- [npm-package-url]: https://www.npmjs.com/package/remark-flexible-toc
428
+ [url-npm-package]: https://www.npmjs.com/package/remark-flexible-toc
429
+ [url-github-package]: https://github.com/ipikuka/remark-flexible-toc
430
430
 
431
431
  [badge-license]: https://img.shields.io/github/license/ipikuka/remark-flexible-toc
432
- [github-license-url]: https://github.com/ipikuka/remark-flexible-toc/blob/main/LICENSE
432
+ [url-license]: https://github.com/ipikuka/remark-flexible-toc/blob/main/LICENSE
433
433
 
434
- [badge-build]: https://github.com/ipikuka/remark-flexible-toc/actions/workflows/publish.yml/badge.svg
435
- [github-workflow-url]: https://github.com/ipikuka/remark-flexible-toc/actions/workflows/publish.yml
434
+ [badge-publish-to-npm]: https://github.com/ipikuka/remark-flexible-toc/actions/workflows/publish.yml/badge.svg
435
+ [url-publish-github-actions]: https://github.com/ipikuka/remark-flexible-toc/actions/workflows/publish.yml
436
436
 
437
437
  [badge-typescript]: https://img.shields.io/npm/types/remark-flexible-toc
438
- [typescript-url]: https://www.typescriptlang.org/
438
+ [url-typescript]: https://www.typescriptlang.org/
439
+
440
+ [badge-codecov]: https://codecov.io/gh/ipikuka/remark-flexible-toc/graph/badge.svg?token=QBNX6L8W2G
441
+ [url-codecov]: https://codecov.io/gh/ipikuka/remark-flexible-toc
442
+
443
+ [badge-type-coverage]: https://img.shields.io/badge/dynamic/json.svg?label=type-coverage&prefix=%E2%89%A5&suffix=%&query=$.typeCoverage.atLeast&uri=https%3A%2F%2Fraw.githubusercontent.com%2Fipikuka%2Fremark-flexible-toc%2Fmaster%2Fpackage.json
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"root":["../../src/index.ts"],"version":"5.9.2"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "remark-flexible-toc",
3
- "version": "1.1.1",
3
+ "version": "1.2.1",
4
4
  "description": "Remark plugin to expose the table of contents via Vfile.data or via an option reference",
5
5
  "type": "module",
6
6
  "exports": "./dist/esm/index.js",
@@ -35,11 +35,11 @@
35
35
  "markdown",
36
36
  "MDX",
37
37
  "plugin",
38
- "remark-plugin",
38
+ "remark plugin",
39
39
  "TOC",
40
40
  "table of contents",
41
- "remark-toc",
42
- "remark-flexible-toc"
41
+ "remark toc",
42
+ "remark flexible toc"
43
43
  ],
44
44
  "author": "ipikuka <talatkuyuk@gmail.com>",
45
45
  "license": "MIT",
@@ -48,35 +48,39 @@
48
48
  "url": "https://github.com/ipikuka/remark-flexible-toc/issues"
49
49
  },
50
50
  "devDependencies": {
51
- "@types/dedent": "^0.7.2",
52
- "@types/node": "^20.14.8",
51
+ "@eslint/js": "^9.35.0",
52
+ "@types/node": "^24.3.1",
53
53
  "@types/remark-heading-id": "^1.0.0",
54
- "@typescript-eslint/eslint-plugin": "^7.13.1",
55
- "@typescript-eslint/parser": "^7.13.1",
56
- "@vitest/coverage-v8": "^1.6.0",
57
- "dedent": "^1.5.3",
58
- "eslint": "^8.57.0",
59
- "eslint-config-prettier": "^9.1.0",
60
- "eslint-plugin-prettier": "^5.1.3",
61
- "prettier": "^3.3.2",
62
- "rehype-format": "^5.0.0",
63
- "rehype-stringify": "^10.0.0",
64
- "remark-gfm": "^4.0.0",
54
+ "@vitest/coverage-v8": "^3.2.4",
55
+ "@vitest/eslint-plugin": "^1.3.9",
56
+ "dedent": "^1.7.0",
57
+ "eslint": "^9.35.0",
58
+ "eslint-config-prettier": "^10.1.8",
59
+ "eslint-plugin-prettier": "^5.5.4",
60
+ "globals": "^16.3.0",
61
+ "prettier": "^3.6.2",
62
+ "rehype-format": "^5.0.1",
63
+ "rehype-stringify": "^10.0.1",
64
+ "remark-gfm": "^4.0.1",
65
65
  "remark-heading-id": "^1.0.1",
66
66
  "remark-parse": "^11.0.0",
67
- "remark-rehype": "^11.1.0",
68
- "rimraf": "^5.0.7",
69
- "type-coverage": "^2.29.0",
70
- "typescript": "^5.5",
71
- "vitest": "^1.4.0"
67
+ "remark-rehype": "^11.1.2",
68
+ "rimraf": "^6.0.1",
69
+ "type-coverage": "^2.29.7",
70
+ "typescript": "^5.9.2",
71
+ "typescript-eslint": "^8.43.0",
72
+ "unified": "^11.0.5",
73
+ "vitest": "^3.2.4"
72
74
  },
73
75
  "dependencies": {
74
76
  "@types/mdast": "^4.0.4",
75
77
  "github-slugger": "^2.0.0",
76
78
  "mdast-util-to-string": "^4.0.0",
77
- "unified": "^11.0.5",
78
79
  "unist-util-visit": "^5.0.0"
79
80
  },
81
+ "peerDependencies": {
82
+ "unified": "^11"
83
+ },
80
84
  "sideEffects": false,
81
85
  "typeCoverage": {
82
86
  "atLeast": 100,
package/src/index.ts CHANGED
@@ -4,10 +4,8 @@ import { visit, CONTINUE } from "unist-util-visit";
4
4
  import GithubSlugger from "github-slugger";
5
5
  import { toString } from "mdast-util-to-string";
6
6
 
7
- // eslint-disable-next-line @typescript-eslint/ban-types
8
7
  export type Prettify<T> = { [K in keyof T]: T[K] } & {};
9
8
 
10
- // eslint-disable-next-line @typescript-eslint/ban-types
11
9
  export type PartiallyRequired<T, K extends keyof T> = Omit<T, K> & Required<Pick<T, K>>;
12
10
 
13
11
  export type HeadingParent =