@involvex/youtube-music-cli 0.0.47 → 0.0.49

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 (111) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/cli.js.map +6 -6
  3. package/dist/youtube-music-cli +0 -0
  4. package/package.json +1 -1
  5. package/dist/eslint.config.js +0 -55
  6. package/dist/package.json +0 -120
  7. package/dist/scripts/build-cli.js +0 -46
  8. package/dist/source/app.js +0 -17
  9. package/dist/source/cli.js +0 -504
  10. package/dist/source/components/common/ErrorBoundary.js +0 -22
  11. package/dist/source/components/common/Help.js +0 -18
  12. package/dist/source/components/common/ShortcutsBar.js +0 -89
  13. package/dist/source/components/config/ConfigLayout.js +0 -84
  14. package/dist/source/components/config/KeybindingsLayout.js +0 -107
  15. package/dist/source/components/export/ExportLayout.js +0 -111
  16. package/dist/source/components/import/ImportLayout.js +0 -119
  17. package/dist/source/components/import/ImportProgress.js +0 -73
  18. package/dist/source/components/layouts/ExploreLayout.js +0 -72
  19. package/dist/source/components/layouts/HistoryLayout.js +0 -37
  20. package/dist/source/components/layouts/LyricsLayout.js +0 -89
  21. package/dist/source/components/layouts/MainLayout.js +0 -190
  22. package/dist/source/components/layouts/MiniPlayerLayout.js +0 -20
  23. package/dist/source/components/layouts/PlayerLayout.js +0 -9
  24. package/dist/source/components/layouts/PluginsLayout.js +0 -77
  25. package/dist/source/components/layouts/SearchLayout.js +0 -193
  26. package/dist/source/components/layouts/TrendingLayout.js +0 -59
  27. package/dist/source/components/player/NowPlaying.js +0 -45
  28. package/dist/source/components/player/PlayerControls.js +0 -83
  29. package/dist/source/components/player/ProgressBar.js +0 -19
  30. package/dist/source/components/player/QueueList.js +0 -36
  31. package/dist/source/components/player/Suggestions.js +0 -50
  32. package/dist/source/components/playlist/PlaylistList.js +0 -138
  33. package/dist/source/components/plugins/PluginInstallDialog.js +0 -41
  34. package/dist/source/components/plugins/PluginsAvailable.js +0 -55
  35. package/dist/source/components/plugins/PluginsList.js +0 -18
  36. package/dist/source/components/search/SearchBar.js +0 -55
  37. package/dist/source/components/search/SearchHistory.js +0 -35
  38. package/dist/source/components/search/SearchResults.js +0 -280
  39. package/dist/source/components/settings/Settings.js +0 -211
  40. package/dist/source/components/theme/ThemeSwitcher.js +0 -11
  41. package/dist/source/config/themes.config.js +0 -123
  42. package/dist/source/contexts/theme.context.js +0 -29
  43. package/dist/source/hooks/useKeyboard.js +0 -188
  44. package/dist/source/hooks/useKeyboardBlocker.js +0 -45
  45. package/dist/source/hooks/useNavigation.js +0 -5
  46. package/dist/source/hooks/usePlayer.js +0 -43
  47. package/dist/source/hooks/usePlaylist.js +0 -65
  48. package/dist/source/hooks/useSearch.js +0 -76
  49. package/dist/source/hooks/useSleepTimer.js +0 -48
  50. package/dist/source/hooks/useTerminalSize.js +0 -24
  51. package/dist/source/hooks/useTheme.js +0 -5
  52. package/dist/source/hooks/useYouTubeMusic.js +0 -112
  53. package/dist/source/main.js +0 -127
  54. package/dist/source/services/cache/cache.service.js +0 -67
  55. package/dist/source/services/completions/completions.service.js +0 -313
  56. package/dist/source/services/config/config.service.js +0 -191
  57. package/dist/source/services/discord/discord-rpc.service.js +0 -95
  58. package/dist/source/services/download/download.service.js +0 -350
  59. package/dist/source/services/export/export.service.js +0 -131
  60. package/dist/source/services/history/history.service.js +0 -83
  61. package/dist/source/services/import/import.service.js +0 -272
  62. package/dist/source/services/import/spotify.service.js +0 -171
  63. package/dist/source/services/import/track-matcher.service.js +0 -271
  64. package/dist/source/services/import/youtube-import.service.js +0 -84
  65. package/dist/source/services/logger/logger.service.js +0 -52
  66. package/dist/source/services/lyrics/lyrics.service.js +0 -93
  67. package/dist/source/services/mpris/mpris.service.js +0 -78
  68. package/dist/source/services/notification/notification.service.js +0 -57
  69. package/dist/source/services/player/dependency-check.service.js +0 -140
  70. package/dist/source/services/player/player.service.js +0 -478
  71. package/dist/source/services/player-state/player-state.service.js +0 -123
  72. package/dist/source/services/plugin/plugin-audio-api.js +0 -36
  73. package/dist/source/services/plugin/plugin-context.js +0 -256
  74. package/dist/source/services/plugin/plugin-hooks.service.js +0 -135
  75. package/dist/source/services/plugin/plugin-installer.service.js +0 -248
  76. package/dist/source/services/plugin/plugin-loader.service.js +0 -161
  77. package/dist/source/services/plugin/plugin-permissions.service.js +0 -194
  78. package/dist/source/services/plugin/plugin-registry.service.js +0 -215
  79. package/dist/source/services/plugin/plugin-ui-api.js +0 -46
  80. package/dist/source/services/plugin/plugin-updater.service.js +0 -206
  81. package/dist/source/services/scrobbling/scrobbling.service.js +0 -115
  82. package/dist/source/services/sleep-timer/sleep-timer.service.js +0 -45
  83. package/dist/source/services/version-check/version-check.service.js +0 -121
  84. package/dist/source/services/web/static-file.service.js +0 -185
  85. package/dist/source/services/web/web-server-manager.js +0 -507
  86. package/dist/source/services/web/web-streaming.service.js +0 -292
  87. package/dist/source/services/web/websocket.server.js +0 -267
  88. package/dist/source/services/youtube-music/api.js +0 -649
  89. package/dist/source/services/youtube-music/search.service.js +0 -38
  90. package/dist/source/stores/history.store.js +0 -64
  91. package/dist/source/stores/navigation.store.js +0 -90
  92. package/dist/source/stores/player.store.js +0 -789
  93. package/dist/source/stores/plugins.store.js +0 -177
  94. package/dist/source/types/actions.js +0 -1
  95. package/dist/source/types/cli.types.js +0 -1
  96. package/dist/source/types/config.types.js +0 -1
  97. package/dist/source/types/history.types.js +0 -1
  98. package/dist/source/types/import.types.js +0 -2
  99. package/dist/source/types/keyboard.types.js +0 -1
  100. package/dist/source/types/navigation.types.js +0 -1
  101. package/dist/source/types/player.types.js +0 -1
  102. package/dist/source/types/playlist.types.js +0 -1
  103. package/dist/source/types/plugin.types.js +0 -1
  104. package/dist/source/types/theme.types.js +0 -1
  105. package/dist/source/types/web.types.js +0 -2
  106. package/dist/source/types/youtube-music.types.js +0 -1
  107. package/dist/source/types/youtubei.types.js +0 -3
  108. package/dist/source/utils/constants.js +0 -135
  109. package/dist/source/utils/format.js +0 -24
  110. package/dist/source/utils/icons.js +0 -28
  111. package/dist/source/utils/search-filters.js +0 -100
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@involvex/youtube-music-cli",
3
- "version": "0.0.47",
3
+ "version": "0.0.49",
4
4
  "description": "- A Commandline music player for youtube-music",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,55 +0,0 @@
1
- import pluginReact from 'eslint-plugin-react';
2
- import hooksPlugin from 'eslint-plugin-react-hooks';
3
- import { defineConfig } from 'eslint/config';
4
- import tseslint from 'typescript-eslint';
5
- import globals from 'globals';
6
- import js from '@eslint/js';
7
- export default defineConfig([
8
- {
9
- ignores: ['templates/**/*', 'plugins/**/*'],
10
- },
11
- {
12
- files: ['**/*.{js,mjs,cjs}'],
13
- plugins: { js },
14
- extends: ['js/recommended'],
15
- languageOptions: { globals: { ...globals.node } },
16
- },
17
- ...tseslint.configs.recommended,
18
- {
19
- files: ['**/*.{ts,mts,cts,jsx,tsx}'],
20
- languageOptions: {
21
- globals: { ...globals.node },
22
- ecmaVersion: 'latest',
23
- sourceType: 'module',
24
- parserOptions: {
25
- projectService: true,
26
- tsconfigRootDir: import.meta.dirname,
27
- },
28
- },
29
- },
30
- {
31
- files: ['**/*.jsx', '**/*.tsx'],
32
- ...pluginReact.configs.flat['recommended'],
33
- plugins: {
34
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
35
- 'react-hooks': hooksPlugin,
36
- },
37
- settings: {
38
- react: { version: 'detect' },
39
- jsxRuntime: 'automatic',
40
- },
41
- rules: {
42
- ...hooksPlugin.configs.recommended.rules,
43
- 'react/react-in-jsx-scope': 'off',
44
- 'react/jsx-uses-react': 'off',
45
- '@typescript-eslint/no-unused-vars': [
46
- 'error',
47
- {
48
- argsIgnorePattern: '^_',
49
- varsIgnorePattern: '^_',
50
- caughtErrorsIgnorePattern: '^_',
51
- },
52
- ],
53
- },
54
- },
55
- ]);
package/dist/package.json DELETED
@@ -1,120 +0,0 @@
1
- {
2
- "name": "@involvex/youtube-music-cli",
3
- "version": "0.0.47",
4
- "description": "- A Commandline music player for youtube-music",
5
- "repository": {
6
- "type": "git",
7
- "url": "git+https://github.com/involvex/youtube-music-cli.git"
8
- },
9
- "funding": "https://github.com/sponsors/involvex",
10
- "license": "MIT",
11
- "author": "involvex",
12
- "type": "module",
13
- "bin": {
14
- "youtube-music-cli": "dist/source/cli.js",
15
- "ymc": "dist/source/cli.js"
16
- },
17
- "files": [
18
- "dist",
19
- "README.md",
20
- "CHANGELOG.md",
21
- "LICENSE",
22
- ".github/FUNDING.yml"
23
- ],
24
- "icon": "assets/icon2.PNG",
25
- "sponsor": {
26
- "url": "https://github.com/sponsors/involvex"
27
- },
28
- "homepage": "https://involvex.github.io/youtube-music-cli/",
29
- "keywords": [
30
- "cli",
31
- "youtube",
32
- "youtube-music",
33
- "youtube-cli",
34
- "youtube-music-cli",
35
- "ink",
36
- "cli-music"
37
- ],
38
- "scripts": {
39
- "prebuild": "bun run format && bun run lint:fix && bun run typecheck",
40
- "build": "tsc",
41
- "bun:build": "bun build source/cli.tsx --outfile dist/index.js --target node --footer \"//Copyright (c) 2026 involvex\"",
42
- "compile": "bun scripts/build-cli.ts",
43
- "dev": "bun run --bun source/cli.tsx",
44
- "dev:watch": "bun run --bun --watch source/cli.tsx",
45
- "format": "prettier --write .",
46
- "format:check": "prettier --check .",
47
- "lint": "eslint . --ext .js,.jsx,.ts,.tsx --ignore-pattern dist",
48
- "lint:fix": "eslint . --ext .js,.jsx,.ts,.tsx --fix --ignore-pattern dist",
49
- "start": "bun run dist/source/cli.js",
50
- "test": "bun run build && ava",
51
- "typecheck": "tsc --noEmit",
52
- "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0",
53
- "clean": "rimraf dist",
54
- "release": "powershell -File scripts/release.ps1",
55
- "build:web": "cd web && bun run build",
56
- "dev:web": "cd web && bun run dev",
57
- "build:all": "bun run build && bun run build:web",
58
- "msix": "bun run compile && msix-packager-cli package --config ./msix-config.json --skip-build"
59
- },
60
- "prettier": "@vdemedes/prettier-config",
61
- "ava": {
62
- "files": [
63
- "tests/**/*.js"
64
- ]
65
- },
66
- "dependencies": {
67
- "@distube/ytdl-core": "^4.16.12",
68
- "@types/bun": "^1.3.9",
69
- "ansi-escapes": "^7.3.0",
70
- "discord-rpc": "^4.0.1",
71
- "ink": "^6.8.0",
72
- "ink-table": "^3.1.0",
73
- "ink-text-input": "^6.0.0",
74
- "jiti": "^2.6.1",
75
- "meow": "^14.1.0",
76
- "node-notifier": "^10.0.1",
77
- "node-youtube-music": "^0.10.3",
78
- "play-sound": "^1.1.6",
79
- "react": "^19.2.4",
80
- "ws": "^8.19.0",
81
- "youtube-ext": "^1.1.25",
82
- "youtubei.js": "^16.0.1"
83
- },
84
- "devDependencies": {
85
- "@eslint/js": "^10.0.1",
86
- "@sindresorhus/tsconfig": "^8.1.0",
87
- "@types/node": "^25.3.0",
88
- "@types/node-notifier": "^8.0.5",
89
- "@types/react": "^19.2.14",
90
- "@types/ws": "^8.18.1",
91
- "@vdemedes/prettier-config": "^2.0.1",
92
- "ava": "^6.4.1",
93
- "chalk": "^5.6.2",
94
- "conventional-changelog-cli": "^5.0.0",
95
- "eslint": "^10.0.1",
96
- "eslint-plugin-react": "^7.37.5",
97
- "eslint-plugin-react-hooks": "^7.0.1",
98
- "globals": "^17.3.0",
99
- "ink-testing-library": "^4.0.0",
100
- "prettier": "^3.8.1",
101
- "prettier-plugin-organize-imports": "^4.3.0",
102
- "prettier-plugin-packagejson": "^3.0.0",
103
- "prettier-plugin-sort-imports": "^1.8.11",
104
- "react-devtools-core": "^7.0.1",
105
- "rimraf": "^6.1.3",
106
- "ts-node": "^10.9.2",
107
- "typescript": "^5.9.3",
108
- "typescript-eslint": "^8.56.0"
109
- },
110
- "engines": {
111
- "node": ">=16"
112
- },
113
- "sponsors": "https://github.com/sponsors/involvex",
114
- "overrides": {
115
- "minimatch": "^10.2.1"
116
- },
117
- "trustedDependencies": [
118
- "unrs-resolver"
119
- ]
120
- }
@@ -1,46 +0,0 @@
1
- import path from 'node:path';
2
- import pkg from '../package.json' with { type: 'json' };
3
- const rootDir = process.cwd();
4
- const isWindows = process.platform === 'win32';
5
- const outputName = isWindows ? 'youtube-music-cli.exe' : 'youtube-music-cli';
6
- const outfile = path.join(rootDir, 'dist', outputName);
7
- const banner = '//Copyright (c) 2026 involvex';
8
- const iconPath = path.join(rootDir, 'assets', 'icon.ico');
9
- const platformTarget = isWindows
10
- ? 'bun-windows-x64'
11
- : process.platform === 'darwin'
12
- ? 'bun-darwin-x64'
13
- : 'bun-linux-x64';
14
- const compileOptions = isWindows
15
- ? {
16
- target: platformTarget,
17
- outfile,
18
- footer: banner,
19
- windowsTitle: 'YouTube Music CLI',
20
- windowsPublisher: 'involvex',
21
- windowsIcon: iconPath,
22
- windowsCopyright: 'Copyright (c) 2026 involvex',
23
- windowsDescription: 'A Commandline music player for youtube-music',
24
- }
25
- : {
26
- target: platformTarget,
27
- outfile,
28
- };
29
- const buildOptions = {
30
- entrypoints: [path.join(rootDir, 'source', 'cli.tsx')],
31
- compile: compileOptions,
32
- footer: banner,
33
- minify: true,
34
- sourcemap: 'linked',
35
- bytecode: false,
36
- define: {
37
- 'process.env.NODE_ENV': JSON.stringify('production'),
38
- VERSION: JSON.stringify(pkg.version ?? '0.0.0'),
39
- },
40
- };
41
- const result = await Bun.build(buildOptions);
42
- if (!result.success) {
43
- console.error('Build failed', result.logs ?? result);
44
- process.exit(1);
45
- }
46
- console.log('Build succeeded:', result.outputs.map(output => output.path));
@@ -1,17 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- // Root application component
3
- import { useApp } from 'ink';
4
- import Main from "./main.js";
5
- import { useEffect } from 'react';
6
- // Handle unmounting
7
- let unmount = null;
8
- export default function App({ flags }) {
9
- const { exit } = useApp();
10
- // Store unmount function globally
11
- useEffect(() => {
12
- if (!unmount) {
13
- unmount = exit;
14
- }
15
- }, [exit]);
16
- return _jsx(Main, { flags: flags });
17
- }