@todoist/outline-cli 0.0.1 → 3.0.0

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.
Files changed (108) hide show
  1. package/CHANGELOG.md +359 -0
  2. package/README.md +145 -29
  3. package/dist/commands/account.d.ts +2 -0
  4. package/dist/commands/account.js +107 -0
  5. package/dist/commands/account.js.map +1 -0
  6. package/dist/commands/auth.d.ts +2 -0
  7. package/dist/commands/auth.js +169 -0
  8. package/dist/commands/auth.js.map +1 -0
  9. package/dist/commands/changelog.d.ts +2 -0
  10. package/dist/commands/changelog.js +15 -0
  11. package/dist/commands/changelog.js.map +1 -0
  12. package/dist/commands/collection.d.ts +2 -0
  13. package/dist/commands/collection.js +106 -0
  14. package/dist/commands/collection.js.map +1 -0
  15. package/dist/commands/document.d.ts +2 -0
  16. package/dist/commands/document.js +291 -0
  17. package/dist/commands/document.js.map +1 -0
  18. package/dist/commands/search.d.ts +2 -0
  19. package/dist/commands/search.js +49 -0
  20. package/dist/commands/search.js.map +1 -0
  21. package/dist/commands/skill.d.ts +2 -0
  22. package/dist/commands/skill.js +80 -0
  23. package/dist/commands/skill.js.map +1 -0
  24. package/dist/commands/update/index.d.ts +2 -0
  25. package/dist/commands/update/index.js +14 -0
  26. package/dist/commands/update/index.js.map +1 -0
  27. package/dist/index.d.ts +2 -0
  28. package/dist/index.js +56 -0
  29. package/dist/index.js.map +1 -0
  30. package/dist/lib/api.d.ts +18 -0
  31. package/dist/lib/api.js +107 -0
  32. package/dist/lib/api.js.map +1 -0
  33. package/dist/lib/auth-constants.d.ts +18 -0
  34. package/dist/lib/auth-constants.js +25 -0
  35. package/dist/lib/auth-constants.js.map +1 -0
  36. package/dist/lib/auth-output.d.ts +21 -0
  37. package/dist/lib/auth-output.js +38 -0
  38. package/dist/lib/auth-output.js.map +1 -0
  39. package/dist/lib/auth-pages.d.ts +2 -0
  40. package/dist/lib/auth-pages.js +101 -0
  41. package/dist/lib/auth-pages.js.map +1 -0
  42. package/dist/lib/auth-provider.d.ts +85 -0
  43. package/dist/lib/auth-provider.js +363 -0
  44. package/dist/lib/auth-provider.js.map +1 -0
  45. package/dist/lib/auth.d.ts +73 -0
  46. package/dist/lib/auth.js +188 -0
  47. package/dist/lib/auth.js.map +1 -0
  48. package/dist/lib/config.d.ts +45 -0
  49. package/dist/lib/config.js +20 -0
  50. package/dist/lib/config.js.map +1 -0
  51. package/dist/lib/errors.d.ts +8 -0
  52. package/dist/lib/errors.js +9 -0
  53. package/dist/lib/errors.js.map +1 -0
  54. package/dist/lib/global-args.d.ts +30 -0
  55. package/dist/lib/global-args.js +66 -0
  56. package/dist/lib/global-args.js.map +1 -0
  57. package/dist/lib/markdown.d.ts +2 -0
  58. package/dist/lib/markdown.js +12 -0
  59. package/dist/lib/markdown.js.map +1 -0
  60. package/dist/lib/migrate-auth.d.ts +11 -0
  61. package/dist/lib/migrate-auth.js +92 -0
  62. package/dist/lib/migrate-auth.js.map +1 -0
  63. package/dist/lib/outline-account.d.ts +32 -0
  64. package/dist/lib/outline-account.js +22 -0
  65. package/dist/lib/outline-account.js.map +1 -0
  66. package/dist/lib/output.d.ts +15 -0
  67. package/dist/lib/output.js +85 -0
  68. package/dist/lib/output.js.map +1 -0
  69. package/dist/lib/refs.d.ts +33 -0
  70. package/dist/lib/refs.js +182 -0
  71. package/dist/lib/refs.js.map +1 -0
  72. package/dist/lib/skills/content.d.ts +3 -0
  73. package/dist/lib/skills/content.js +160 -0
  74. package/dist/lib/skills/content.js.map +1 -0
  75. package/dist/lib/skills/create-installer.d.ts +9 -0
  76. package/dist/lib/skills/create-installer.js +77 -0
  77. package/dist/lib/skills/create-installer.js.map +1 -0
  78. package/dist/lib/skills/index.d.ts +5 -0
  79. package/dist/lib/skills/index.js +40 -0
  80. package/dist/lib/skills/index.js.map +1 -0
  81. package/dist/lib/skills/types.d.ts +10 -0
  82. package/dist/lib/skills/types.js +2 -0
  83. package/dist/lib/skills/types.js.map +1 -0
  84. package/dist/lib/skills/update-installed.d.ts +6 -0
  85. package/dist/lib/skills/update-installed.js +23 -0
  86. package/dist/lib/skills/update-installed.js.map +1 -0
  87. package/dist/lib/spinner.d.ts +2 -0
  88. package/dist/lib/spinner.js +5 -0
  89. package/dist/lib/spinner.js.map +1 -0
  90. package/dist/lib/user-records.d.ts +21 -0
  91. package/dist/lib/user-records.js +126 -0
  92. package/dist/lib/user-records.js.map +1 -0
  93. package/dist/lib/user-ref-store.d.ts +16 -0
  94. package/dist/lib/user-ref-store.js +37 -0
  95. package/dist/lib/user-ref-store.js.map +1 -0
  96. package/dist/postinstall.d.ts +1 -0
  97. package/dist/postinstall.js +16 -0
  98. package/dist/postinstall.js.map +1 -0
  99. package/dist/transport/fetch-with-retry.d.ts +15 -0
  100. package/dist/transport/fetch-with-retry.js +144 -0
  101. package/dist/transport/fetch-with-retry.js.map +1 -0
  102. package/dist/transport/http-dispatcher.d.ts +37 -0
  103. package/dist/transport/http-dispatcher.js +95 -0
  104. package/dist/transport/http-dispatcher.js.map +1 -0
  105. package/package.json +71 -8
  106. package/scripts/check-skill-sync.js +40 -0
  107. package/scripts/postinstall.js +12 -0
  108. package/scripts/sync-skill.js +30 -0
package/package.json CHANGED
@@ -1,10 +1,73 @@
1
1
  {
2
- "name": "@todoist/outline-cli",
3
- "version": "0.0.1",
4
- "description": "OIDC trusted publishing setup package for @todoist/outline-cli",
5
- "keywords": [
6
- "oidc",
7
- "trusted-publishing",
8
- "setup"
9
- ]
2
+ "name": "@todoist/outline-cli",
3
+ "version": "3.0.0",
4
+ "description": "CLI for the Outline wiki/knowledge base API",
5
+ "type": "module",
6
+ "bin": {
7
+ "ol": "./dist/index.js"
8
+ },
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "https://github.com/todoist/outline-cli.git"
12
+ },
13
+ "publishConfig": {
14
+ "access": "public",
15
+ "provenance": true
16
+ },
17
+ "homepage": "https://github.com/todoist/outline-cli#readme",
18
+ "bugs": {
19
+ "url": "https://github.com/todoist/outline-cli/issues"
20
+ },
21
+ "files": [
22
+ "dist",
23
+ "scripts",
24
+ "CHANGELOG.md"
25
+ ],
26
+ "scripts": {
27
+ "build": "tsc",
28
+ "dev": "tsc --watch",
29
+ "type-check": "tsc --noEmit",
30
+ "lint:check": "oxlint src",
31
+ "lint:write": "oxlint src --fix",
32
+ "format": "oxfmt",
33
+ "format:check": "oxfmt --check",
34
+ "test": "vitest run",
35
+ "test:watch": "vitest",
36
+ "postinstall": "node scripts/postinstall.js",
37
+ "check:skill-sync": "node scripts/check-skill-sync.js",
38
+ "sync:skill": "npm run build && node scripts/sync-skill.js",
39
+ "prepublishOnly": "npm run build && npm test"
40
+ },
41
+ "keywords": [
42
+ "outline",
43
+ "wiki",
44
+ "cli"
45
+ ],
46
+ "license": "MIT",
47
+ "engines": {
48
+ "node": ">=24",
49
+ "npm": ">=11"
50
+ },
51
+ "dependencies": {
52
+ "@todoist/cli-core": "2.0.0",
53
+ "chalk": "6.0.1",
54
+ "commander": "15.0.0",
55
+ "marked": "18.1.3",
56
+ "marked-terminal-renderer": "2.2.0",
57
+ "oauth4webapi": "3.8.8",
58
+ "open": "11.0.4",
59
+ "undici": "7.30.2"
60
+ },
61
+ "devDependencies": {
62
+ "@semantic-release/changelog": "7.0.0",
63
+ "@semantic-release/git": "11.0.1",
64
+ "@types/node": "26.6.6",
65
+ "conventional-changelog-conventionalcommits": "9.3.1",
66
+ "lefthook": "2.2.2",
67
+ "oxfmt": "0.76.0",
68
+ "oxlint": "1.91.0",
69
+ "semantic-release": "25.0.9",
70
+ "typescript": "7.0.2",
71
+ "vitest": "5.1.0"
72
+ }
10
73
  }
@@ -0,0 +1,40 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * Verifies that skills/outline-cli/SKILL.md is in sync with the generated
5
+ * skill content from src/lib/skills/content.ts.
6
+ *
7
+ * Requires `npm run build` to have been run first.
8
+ */
9
+
10
+ import { readFile } from 'node:fs/promises'
11
+ import { dirname, join } from 'node:path'
12
+ import { fileURLToPath, pathToFileURL } from 'node:url'
13
+
14
+ const root = join(dirname(fileURLToPath(import.meta.url)), '..')
15
+
16
+ try {
17
+ const modulePath = pathToFileURL(join(root, 'dist/lib/skills/create-installer.js')).href
18
+ const { generateSkillFile } = await import(modulePath)
19
+ const expected = generateSkillFile()
20
+ const actual = await readFile(join(root, 'skills/outline-cli/SKILL.md'), 'utf-8')
21
+
22
+ if (actual !== expected) {
23
+ console.error(
24
+ 'ERROR: skills/outline-cli/SKILL.md is out of sync with src/lib/skills/content.ts',
25
+ )
26
+ console.error('')
27
+ console.error('To fix, run:')
28
+ console.error(' npm run build && npm run sync:skill')
29
+ process.exit(1)
30
+ }
31
+
32
+ console.log('skills/outline-cli/SKILL.md is in sync with content.ts')
33
+ } catch (err) {
34
+ if (err.code === 'ERR_MODULE_NOT_FOUND') {
35
+ console.error('ERROR: dist/ not found. Run `npm run build` first.')
36
+ } else {
37
+ console.error(err)
38
+ }
39
+ process.exit(1)
40
+ }
@@ -0,0 +1,12 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * Postinstall script that updates installed skills after package installation.
5
+ * Silently succeeds when dist/ hasn't been built yet (e.g., during local development).
6
+ */
7
+
8
+ import('../dist/postinstall.js').catch((err) => {
9
+ if (err.code !== 'ERR_MODULE_NOT_FOUND') {
10
+ console.error(err)
11
+ }
12
+ })
@@ -0,0 +1,30 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * Regenerates skills/outline-cli/SKILL.md from the built skill content.
5
+ *
6
+ * Requires `npm run build` to have been run first.
7
+ */
8
+
9
+ import { mkdir, writeFile } from 'node:fs/promises'
10
+ import { dirname, join } from 'node:path'
11
+ import { fileURLToPath, pathToFileURL } from 'node:url'
12
+
13
+ const root = join(dirname(fileURLToPath(import.meta.url)), '..')
14
+
15
+ try {
16
+ const modulePath = pathToFileURL(join(root, 'dist/lib/skills/create-installer.js')).href
17
+ const { generateSkillFile } = await import(modulePath)
18
+ const content = generateSkillFile()
19
+ const skillPath = join(root, 'skills/outline-cli/SKILL.md')
20
+ await mkdir(dirname(skillPath), { recursive: true })
21
+ await writeFile(skillPath, content, 'utf-8')
22
+ console.log('skills/outline-cli/SKILL.md has been regenerated')
23
+ } catch (err) {
24
+ if (err.code === 'ERR_MODULE_NOT_FOUND') {
25
+ console.error('ERROR: dist/ not found. Run `npm run build` first.')
26
+ } else {
27
+ console.error(err)
28
+ }
29
+ process.exit(1)
30
+ }