mirror of
				https://git.unlock-music.dev/um/web.git
				synced 2025-11-04 14:23:29 +08:00 
			
		
		
		
	Merge branch 'ix-master'
This commit is contained in:
		
						commit
						05cdd7b896
					
				
							
								
								
									
										24
									
								
								.drone.yml
									
									
									
									
									
								
							
							
						
						
									
										24
									
								
								.drone.yml
									
									
									
									
									
								
							@ -16,9 +16,9 @@ steps:
 | 
			
		||||
    image: node:lts
 | 
			
		||||
    commands:
 | 
			
		||||
      - npm run build
 | 
			
		||||
      - tar -czf legacy.tar.gz ./dist/*
 | 
			
		||||
      - tar -czf legacy.tar.gz -C ./dist .
 | 
			
		||||
      - npm run build -- --modern
 | 
			
		||||
      - tar -czf morden.tar.gz ./dist/*
 | 
			
		||||
      - tar -czf morden.tar.gz -C ./dist .
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
  - name: release
 | 
			
		||||
@ -44,11 +44,21 @@ steps:
 | 
			
		||||
      secret_key:
 | 
			
		||||
        from_secret: aws_secret_access_key
 | 
			
		||||
      source: dist/**/*
 | 
			
		||||
      target: /
 | 
			
		||||
      strip_prefix: dist/
 | 
			
		||||
      target: /public
 | 
			
		||||
      path_style: true
 | 
			
		||||
      endpoint: https://fs.sz2.ixarea.com
 | 
			
		||||
 | 
			
		||||
volumes:
 | 
			
		||||
  - name: cache
 | 
			
		||||
    host:
 | 
			
		||||
      path: /tmp/cache
 | 
			
		||||
 | 
			
		||||
  - name: upload
 | 
			
		||||
    image: plugins/s3
 | 
			
		||||
    settings:
 | 
			
		||||
      bucket: unlock-music
 | 
			
		||||
      access_key:
 | 
			
		||||
        from_secret: aws_access_key_id
 | 
			
		||||
      secret_key:
 | 
			
		||||
        from_secret: aws_secret_access_key
 | 
			
		||||
      source: ./*.tar.gz
 | 
			
		||||
      target: /build/${DRONE_BUILD_NUMBER}
 | 
			
		||||
      path_style: true
 | 
			
		||||
      endpoint: https://fs.sz2.ixarea.com
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										70
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										70
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							@ -1070,6 +1070,11 @@
 | 
			
		||||
      "integrity": "sha1-HBJhu+qhCoBVu8XYq4S3sq/IRqA=",
 | 
			
		||||
      "dev": true
 | 
			
		||||
    },
 | 
			
		||||
    "@types/debug": {
 | 
			
		||||
      "version": "4.1.5",
 | 
			
		||||
      "resolved": "https://registry.npm.taobao.org/@types/debug/download/@types/debug-4.1.5.tgz",
 | 
			
		||||
      "integrity": "sha1-sU76iFK3do2JiQZhPCP2iHE+As0="
 | 
			
		||||
    },
 | 
			
		||||
    "@types/events": {
 | 
			
		||||
      "version": "3.0.0",
 | 
			
		||||
      "resolved": "https://registry.npm.taobao.org/@types/events/download/@types/events-3.0.0.tgz",
 | 
			
		||||
@ -4619,9 +4624,27 @@
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "file-type": {
 | 
			
		||||
      "version": "12.4.2",
 | 
			
		||||
      "resolved": "https://registry.npm.taobao.org/file-type/download/file-type-12.4.2.tgz?cache=0&sync_timestamp=1579456502251&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffile-type%2Fdownload%2Ffile-type-12.4.2.tgz",
 | 
			
		||||
      "integrity": "sha1-o0TqVmSh0BRH7n+xtjX3L+thadk="
 | 
			
		||||
      "version": "13.1.2",
 | 
			
		||||
      "resolved": "https://registry.npm.taobao.org/file-type/download/file-type-13.1.2.tgz",
 | 
			
		||||
      "integrity": "sha1-DltyvKdWnBUuLVqE7OB+lPd/gz8=",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "readable-web-to-node-stream": "^2.0.0",
 | 
			
		||||
        "strtok3": "^5.0.2",
 | 
			
		||||
        "token-types": "^2.0.0",
 | 
			
		||||
        "typedarray-to-buffer": "^3.1.5"
 | 
			
		||||
      },
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "strtok3": {
 | 
			
		||||
          "version": "5.0.2",
 | 
			
		||||
          "resolved": "https://registry.npm.taobao.org/strtok3/download/strtok3-5.0.2.tgz",
 | 
			
		||||
          "integrity": "sha1-u4Hx9WdC4W8aMMzOXcPZSYqlR1o=",
 | 
			
		||||
          "requires": {
 | 
			
		||||
            "@tokenizer/token": "^0.1.1",
 | 
			
		||||
            "debug": "^4.1.1",
 | 
			
		||||
            "peek-readable": "^3.1.0"
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "file-uri-to-path": {
 | 
			
		||||
      "version": "1.0.0",
 | 
			
		||||
@ -7189,15 +7212,15 @@
 | 
			
		||||
      "dev": true
 | 
			
		||||
    },
 | 
			
		||||
    "music-metadata": {
 | 
			
		||||
      "version": "5.4.3",
 | 
			
		||||
      "resolved": "https://registry.npm.taobao.org/music-metadata/download/music-metadata-5.4.3.tgz",
 | 
			
		||||
      "integrity": "sha1-sTwi5ZMSeIkisGVuRaGBB1FIz2s=",
 | 
			
		||||
      "version": "6.3.1",
 | 
			
		||||
      "resolved": "https://registry.npm.taobao.org/music-metadata/download/music-metadata-6.3.1.tgz",
 | 
			
		||||
      "integrity": "sha1-uoSReMdBryECX2XCRmCt9uk7uCo=",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "content-type": "^1.0.4",
 | 
			
		||||
        "debug": "^4.1.0",
 | 
			
		||||
        "file-type": "^12.4.2",
 | 
			
		||||
        "file-type": "^13.1.2",
 | 
			
		||||
        "media-typer": "^1.1.0",
 | 
			
		||||
        "strtok3": "^4.1.1",
 | 
			
		||||
        "strtok3": "^6.0.0",
 | 
			
		||||
        "token-types": "^2.0.0"
 | 
			
		||||
      },
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
@ -7209,15 +7232,15 @@
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "music-metadata-browser": {
 | 
			
		||||
      "version": "1.10.0",
 | 
			
		||||
      "resolved": "https://registry.npm.taobao.org/music-metadata-browser/download/music-metadata-browser-1.10.0.tgz",
 | 
			
		||||
      "integrity": "sha1-GpwLKqFseELW2y6+WGFxoeRCZEQ=",
 | 
			
		||||
      "version": "2.0.3",
 | 
			
		||||
      "resolved": "https://registry.npm.taobao.org/music-metadata-browser/download/music-metadata-browser-2.0.3.tgz",
 | 
			
		||||
      "integrity": "sha1-CHD1ZbbqemrJ8kAqft5QbrPZCZ8=",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "assert": "^2.0.0",
 | 
			
		||||
        "buffer": "^5.2.1",
 | 
			
		||||
        "debug": "^4.0.1",
 | 
			
		||||
        "music-metadata": "^5.3.1",
 | 
			
		||||
        "readable-stream": "^3.3.0",
 | 
			
		||||
        "music-metadata": "^6.3.1",
 | 
			
		||||
        "readable-stream": "^3.5.0",
 | 
			
		||||
        "readable-web-to-node-stream": "^2.0.0",
 | 
			
		||||
        "remove": "^0.1.5",
 | 
			
		||||
        "typedarray-to-buffer": "^3.1.5"
 | 
			
		||||
@ -7936,6 +7959,11 @@
 | 
			
		||||
        "sha.js": "^2.4.8"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "peek-readable": {
 | 
			
		||||
      "version": "3.1.0",
 | 
			
		||||
      "resolved": "https://registry.npm.taobao.org/peek-readable/download/peek-readable-3.1.0.tgz",
 | 
			
		||||
      "integrity": "sha1-JQsIt94J24Vz1/2OpHUhW7/xQ0g="
 | 
			
		||||
    },
 | 
			
		||||
    "performance-now": {
 | 
			
		||||
      "version": "2.1.0",
 | 
			
		||||
      "resolved": "http://registry.npm.taobao.org/performance-now/download/performance-now-2.1.0.tgz",
 | 
			
		||||
@ -9929,13 +9957,14 @@
 | 
			
		||||
      "dev": true
 | 
			
		||||
    },
 | 
			
		||||
    "strtok3": {
 | 
			
		||||
      "version": "4.1.1",
 | 
			
		||||
      "resolved": "https://registry.npm.taobao.org/strtok3/download/strtok3-4.1.1.tgz",
 | 
			
		||||
      "integrity": "sha1-dQQ7thdeuyLxDUjf6bBlYDRdxkc=",
 | 
			
		||||
      "version": "6.0.0",
 | 
			
		||||
      "resolved": "https://registry.npm.taobao.org/strtok3/download/strtok3-6.0.0.tgz",
 | 
			
		||||
      "integrity": "sha1-1rkAhj2urP5sFyTG57s216WOg8g=",
 | 
			
		||||
      "requires": {
 | 
			
		||||
        "@tokenizer/token": "^0.1.0",
 | 
			
		||||
        "@tokenizer/token": "^0.1.1",
 | 
			
		||||
        "@types/debug": "^4.1.5",
 | 
			
		||||
        "debug": "^4.1.1",
 | 
			
		||||
        "then-read-stream": "^3.0.0"
 | 
			
		||||
        "peek-readable": "^3.1.0"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "stylehacks": {
 | 
			
		||||
@ -10059,11 +10088,6 @@
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "then-read-stream": {
 | 
			
		||||
      "version": "3.0.0",
 | 
			
		||||
      "resolved": "https://registry.npm.taobao.org/then-read-stream/download/then-read-stream-3.0.0.tgz",
 | 
			
		||||
      "integrity": "sha1-Sk7DfiPxgTW1b7xhZwtugZXlRbI="
 | 
			
		||||
    },
 | 
			
		||||
    "thenify": {
 | 
			
		||||
      "version": "3.3.0",
 | 
			
		||||
      "resolved": "https://registry.npm.taobao.org/thenify/download/thenify-3.3.0.tgz",
 | 
			
		||||
 | 
			
		||||
@ -11,7 +11,7 @@
 | 
			
		||||
    "core-js": "^3.6.4",
 | 
			
		||||
    "crypto-js": "^3.1.9-1",
 | 
			
		||||
    "element-ui": "^2.13.0",
 | 
			
		||||
    "music-metadata-browser": "^1.10.0",
 | 
			
		||||
    "music-metadata-browser": "^2.0.3",
 | 
			
		||||
    "register-service-worker": "^1.6.2",
 | 
			
		||||
    "vue": "^2.6.11"
 | 
			
		||||
  },
 | 
			
		||||
 | 
			
		||||
@ -12,43 +12,7 @@
 | 
			
		||||
    <title>音乐解锁 - By IXarea</title>
 | 
			
		||||
    <meta content="音乐,解锁,ncm,qmc,qmc0,qmc3,qmcflac,qmcogg,mflac,qq音乐,网易云音乐,加密" name="keywords"/>
 | 
			
		||||
    <meta content="音乐解锁 - 在任何设备上解锁已购的加密音乐!" name="description"/>
 | 
			
		||||
    <style>
 | 
			
		||||
        #loader {
 | 
			
		||||
            position: absolute;
 | 
			
		||||
            left: 50%;
 | 
			
		||||
            top: 50%;
 | 
			
		||||
            z-index: 1010;
 | 
			
		||||
            margin: -75px 0 0 -75px;
 | 
			
		||||
            border: 16px solid #f3f3f3;
 | 
			
		||||
            border-radius: 50%;
 | 
			
		||||
            border-top: 16px solid #3498db;
 | 
			
		||||
            width: 120px;
 | 
			
		||||
            height: 120px;
 | 
			
		||||
            animation: spin 2s linear infinite;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        @keyframes spin {
 | 
			
		||||
            0% {
 | 
			
		||||
                transform: rotate(0deg);
 | 
			
		||||
            }
 | 
			
		||||
            100% {
 | 
			
		||||
                transform: rotate(360deg);
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        #loader-mask {
 | 
			
		||||
            position: absolute;
 | 
			
		||||
            width: 100%;
 | 
			
		||||
            height: 100%;
 | 
			
		||||
            bottom: 0;
 | 
			
		||||
            left: 0;
 | 
			
		||||
            right: 0;
 | 
			
		||||
            top: 0;
 | 
			
		||||
            z-index: 1009;
 | 
			
		||||
            background-color: rgba(242, 246, 252, 0.88);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    </style>
 | 
			
		||||
    <style>#loader{position:absolute;left:50%;top:50%;z-index:1010;margin:-75px 0 0 -75px;border:16px solid #f3f3f3;border-radius:50%;border-top:16px solid #3498db;width:120px;height:120px;animation:spin 2s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}#loader-mask{position:absolute;width:100%;height:100%;bottom:0;left:0;right:0;top:0;z-index:1009;background-color:rgba(242,246,252,0.88)}</style>
 | 
			
		||||
</head>
 | 
			
		||||
<body>
 | 
			
		||||
 | 
			
		||||
@ -62,6 +26,7 @@
 | 
			
		||||
    <strong>音乐解锁采用了一些新特性!建议使用
 | 
			
		||||
        <a href="https://www.google.cn/chrome/" target="_blank">Google Chrome</a>
 | 
			
		||||
        <a href="https://www.firefox.com.cn/" target="_blank">Mozilla Firefox</a>
 | 
			
		||||
        <a href="https://www.microsoftedgeinsider.com/zh-cn/download" target="_blank">Mozilla Firefox</a>
 | 
			
		||||
        | <a href="https://github.com/ix64/unlock-music/wiki/使用提示" target="_blank">使用提示</a>
 | 
			
		||||
    </strong>
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
@ -9,7 +9,7 @@
 | 
			
		||||
                        action=""
 | 
			
		||||
                        drag
 | 
			
		||||
                        multiple>
 | 
			
		||||
                    <i class="el-icon-upload"></i>
 | 
			
		||||
                    <i class="el-icon-upload"/>
 | 
			
		||||
                    <div class="el-upload__text">将文件拖到此处,或<em>点击选择</em></div>
 | 
			
		||||
                    <div class="el-upload__tip" slot="tip">本工具仅在浏览器内对文件进行解锁,无需消耗流量</div>
 | 
			
		||||
                </el-upload>
 | 
			
		||||
@ -28,7 +28,7 @@
 | 
			
		||||
                    <el-button @click="handleDeleteAll" icon="el-icon-delete" plain type="danger">删除全部</el-button>
 | 
			
		||||
 | 
			
		||||
                </el-row>
 | 
			
		||||
                <audio :autoplay="playing_auto" :src="playing_url" controls></audio>
 | 
			
		||||
                <audio :autoplay="playing_auto" :src="playing_url" controls/>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
                <el-table :data="tableData" style="width: 100%">
 | 
			
		||||
 | 
			
		||||
@ -26,7 +26,7 @@ async function Decrypt(file, raw_filename, raw_ext) {
 | 
			
		||||
    if (!(raw_ext in OriginalExtMap)) {
 | 
			
		||||
        return {status: false, message: "File type is incorrect!"}
 | 
			
		||||
    }
 | 
			
		||||
    let new_ext = OriginalExtMap[raw_ext]
 | 
			
		||||
    let new_ext = OriginalExtMap[raw_ext];
 | 
			
		||||
    const mime = util.AudioMimeType[new_ext];
 | 
			
		||||
    // 读取文件
 | 
			
		||||
    const fileBuffer = await util.GetArrayBuffer(file);
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user