yanki 2.0.8 → 2.0.10

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "yanki",
3
- "version": "2.0.8",
3
+ "version": "2.0.10",
4
4
  "description": "A CLI tool and TypeScript library to turn Markdown into Anki flashcards.",
5
5
  "keywords": [
6
6
  "anki",
@@ -49,16 +49,16 @@
49
49
  "dist/*"
50
50
  ],
51
51
  "dependencies": {
52
- "@shikijs/langs": "^4.0.2",
53
- "@shikijs/rehype": "^4.0.2",
54
- "@shikijs/themes": "^4.0.2",
52
+ "@shikijs/langs": "^4.3.0",
53
+ "@shikijs/rehype": "^4.3.0",
54
+ "@shikijs/themes": "^4.3.0",
55
55
  "@sindresorhus/fnv1a": "^3.1.0",
56
56
  "@sindresorhus/slugify": "^3.0.0",
57
57
  "@stdlib/assert-is-absolute-path": "^0.2.3",
58
58
  "@types/hast": "^3.0.4",
59
59
  "@types/lodash-es": "^4.17.12",
60
60
  "@types/mdast": "^4.0.4",
61
- "@types/node": "~20.11.30",
61
+ "@types/node": "~20.19.43",
62
62
  "@types/unist": "^3.0.3",
63
63
  "@types/yargs": "^17.0.35",
64
64
  "crypto-hash": "^4.0.1",
@@ -70,7 +70,7 @@
70
70
  "mdast-util-from-markdown": "^2.0.3",
71
71
  "micromark-util-sanitize-uri": "^2.0.1",
72
72
  "micromark-util-types": "^2.0.2",
73
- "nanoid": "^5.1.11",
73
+ "nanoid": "^5.1.16",
74
74
  "path-browserify-esm": "^1.0.6",
75
75
  "picocolors": "^1.1.1",
76
76
  "plur": "^6.0.0",
@@ -82,50 +82,50 @@
82
82
  "remark": "^15.0.1",
83
83
  "remark-breaks": "^4.0.0",
84
84
  "remark-denden-ruby": "^0.3.1",
85
- "remark-flexible-markers": "^1.3.4",
85
+ "remark-flexible-markers": "^1.3.5",
86
86
  "remark-frontmatter": "^5.0.0",
87
87
  "remark-gfm": "^4.0.1",
88
88
  "remark-github-beta-blockquote-admonitions": "^3.1.2",
89
89
  "remark-math": "^6.0.0",
90
90
  "remark-parse": "^11.0.0",
91
91
  "remark-rehype": "^11.1.2",
92
- "shiki": "^4.0.2",
92
+ "shiki": "^4.3.0",
93
93
  "slash": "^5.1.0",
94
- "sort-keys": "^6.0.0",
94
+ "sort-keys": "^6.0.1",
95
95
  "strip-ansi": "^7.2.0",
96
- "type-fest": "^5.6.0",
96
+ "type-fest": "^5.7.0",
97
97
  "uint8array-extras": "^1.5.0",
98
98
  "unified": "^11.0.5",
99
99
  "unist-builder": "^4.0.0",
100
100
  "unist-util-visit": "^5.1.0",
101
101
  "untildify": "^6.0.0",
102
102
  "yaml": "^2.9.0",
103
- "yanki-connect": "^4.0.4",
103
+ "yanki-connect": "^4.0.6",
104
104
  "yargs": "^18.0.0"
105
105
  },
106
106
  "devDependencies": {
107
- "@arethetypeswrong/cli": "^0.18.2",
108
- "@kitschpatrol/shared-config": "^7.5.3",
109
- "@vitest/browser-playwright": "^4.1.6",
110
- "@vitest/coverage-v8": "^4.1.6",
107
+ "@arethetypeswrong/cli": "^0.18.4",
108
+ "@kitschpatrol/shared-config": "^8.0.0",
109
+ "@vitest/browser-playwright": "^4.1.9",
110
+ "@vitest/coverage-v8": "^4.1.9",
111
111
  "bumpp": "^11.1.0",
112
112
  "execa": "^9.6.1",
113
- "mdat-plugin-cli-help": "^3.0.0",
114
- "playwright": "^1.60.0",
115
- "publint": "^0.3.20",
113
+ "mdat-plugin-cli-help": "^3.0.2",
114
+ "playwright": "^1.61.1",
115
+ "publint": "^0.3.21",
116
116
  "shx": "^0.4.0",
117
- "tsdown": "^0.22.0",
118
- "tsx": "^4.21.0",
119
- "typescript": "~5.9.3",
120
- "vitest": "^4.1.6"
117
+ "tsdown": "^0.22.3",
118
+ "tsx": "^4.22.4",
119
+ "typescript": "~6.0.3",
120
+ "vitest": "^4.1.9"
121
121
  },
122
122
  "engines": {
123
- "node": ">=20.19.0"
123
+ "node": "^20.19.0 || >=22.12.0"
124
124
  },
125
125
  "devEngines": {
126
126
  "runtime": {
127
127
  "name": "node",
128
- "version": ">=22.18.0"
128
+ "version": ">=24.16.0"
129
129
  }
130
130
  },
131
131
  "scripts": {
@@ -134,7 +134,7 @@
134
134
  "coverage": "vitest run --coverage",
135
135
  "fix": "ksc fix",
136
136
  "lint": "ksc lint",
137
- "release": "bumpp --commit 'Release: %s' && pnpm build && NPM_AUTH_TOKEN=$(op read 'op://Personal/npm/token') && pnpm publish",
137
+ "release": "bumpp --commit 'Release: %s' && pnpm build && NPM_AUTH_TOKEN=$(op read 'op://Personal/npm/token') pnpm publish",
138
138
  "test": "vitest run"
139
139
  }
140
140
  }
package/readme.md CHANGED
@@ -58,7 +58,7 @@ The "Y" prefix in "Yanki" is in the "Yet another" naming tradition; a nod to Ank
58
58
 
59
59
  ## Quick start
60
60
 
61
- Install [Node.js](https://nodejs.org) if you haven't already. (Yanki requires Node 20.11 or newer.)
61
+ Install [Node.js](https://nodejs.org) if you haven't already. (Yanki requires Node 20.19 or newer.)
62
62
 
63
63
  Assuming you have a folder of Markdown note files, the [Anki app](https://apps.ankiweb.net) is open and has the [AnkiConnect](https://ankiweb.net/shared/info/2055492159) add-on installed:
64
64
 
@@ -170,6 +170,8 @@ The most minimal examples to "trigger" different note types are shown below, but
170
170
 
171
171
  You're free to use additional Markdown in your note files to style and structure the front and back of your flashcards.
172
172
 
173
+ Note that you _can not_ mix Anki's native syntax (e.g. `{{c1::...` cloze markup) alongside your Yanki Markdown.
174
+
173
175
  ### Basic
174
176
 
175
177
  A **basic** card is created from any file with a `---`:
@@ -290,7 +292,7 @@ _If you delete one of several implicitly numbered clozes (e.g. `~~hidden~~`) fro
290
292
 
291
293
  ### Dependencies
292
294
 
293
- The `yanki` CLI tool requires Node 20.11+. The exported TypeScript / JavaScript APIs are isomorphic, and can run in both browser-based and Node runtime environments. The Yanki library is ESM-only, is implemented in TypeScript, and bundles a complete set of type definitions.
295
+ The `yanki` CLI tool requires Node 20.19+. The exported TypeScript / JavaScript APIs are isomorphic, and can run in both browser-based and Node runtime environments. The Yanki library is ESM-only, is implemented in TypeScript, and bundles a complete set of type definitions.
294
296
 
295
297
  The tool has been tested on Windows, macOS, and Linux.
296
298
 
@@ -646,6 +648,8 @@ Linux testing was performed with Debian 12 and Ubuntu 22, both running on an arm
646
648
 
647
649
  - The Anki application lets you split the cards from a single note across multiple decks. (E.g. you might have a card with dozens of clozes, some of which you want to study under a different deck.) Yanki does _not_ support this scenario in the notes / cards it manages — it maintains a strict hierarchical relationship in which a note and its cards always live in a single deck. Notes may be deleted / recreated and study progress might be lost if this is attempted.
648
650
 
651
+ - Anki does not let you use cloze syntax in note types that aren't explicitly configured to handle them. For this reason, don't [mix and match native Anki syntax](https://github.com/kitschpatrol/yanki/issues/18) alongside Yanki's Markdown syntax. If you do this, you risk receiving cryptic "cannot create note for unknown reason" errors from AnkiConnect.
652
+
649
653
  ## Maintainers
650
654
 
651
655
  [kitschpatrol](https://github.com/kitschpatrol)
File without changes