diff --git a/.github/ISSUE_TEMPLATE/02_request_source.yml b/.github/ISSUE_TEMPLATE/02_request_source.yml index 2ba1f3f0..4fd702eb 100644 --- a/.github/ISSUE_TEMPLATE/02_request_source.yml +++ b/.github/ISSUE_TEMPLATE/02_request_source.yml @@ -48,7 +48,7 @@ body: required: true - label: I have written a title with source name. required: true - - label: I have checked that the extension does not already exist by searching the [Repository](https://kohiden.xyz/Kohi-den/extensions-source/src/branch/main/src) and verified it does not appear in the code base. + - label: I have checked that the extension does not already exist by searching the [GitHub repository](https://github.com/Kohi-den/extensions-source) and verified it does not appear in the code base. required: true - label: I will fill out all of the requested information in this form. required: true diff --git a/.github/workflows/build_pull_request.yml b/.github/workflows/build_pull_request.yml index edf31bba..251290d9 100644 --- a/.github/workflows/build_pull_request.yml +++ b/.github/workflows/build_pull_request.yml @@ -13,7 +13,7 @@ concurrency: cancel-in-progress: true env: - CI_CHUNK_SIZE: 288 + CI_CHUNK_SIZE: 65 jobs: prepare: @@ -86,7 +86,7 @@ jobs: build-cache-${{ github.event.pull_request.base.sha }}- build-cache- - - name: Build extensions + - name: Build extensions (chunk ${{ matrix.chunk }}) env: CI_CHUNK_NUM: ${{ matrix.chunk }} run: chmod +x ./gradlew && ./gradlew -p src assembleDebug diff --git a/.github/workflows/build_push.yml b/.github/workflows/build_push.yml index 419bc51c..de69d419 100644 --- a/.github/workflows/build_push.yml +++ b/.github/workflows/build_push.yml @@ -195,10 +195,6 @@ jobs: - name: Sync repo run: | rsync -a --delete --exclude .git --exclude .gitignore main/repo/ repo --exclude README.md --exclude repo.json - - - name: Increase buffer size - run: | - git config --global http.postBuffer 157286400 - name: Deploy repo uses: https://github.com/EndBug/add-and-commit@v9 diff --git a/lib/voe-extractor/src/main/java/eu/kanade/tachiyomi/lib/voeextractor/VoeExtractor.kt b/lib/voe-extractor/src/main/java/eu/kanade/tachiyomi/lib/voeextractor/VoeExtractor.kt index fe017e16..1e30fb57 100644 --- a/lib/voe-extractor/src/main/java/eu/kanade/tachiyomi/lib/voeextractor/VoeExtractor.kt +++ b/lib/voe-extractor/src/main/java/eu/kanade/tachiyomi/lib/voeextractor/VoeExtractor.kt @@ -18,33 +18,14 @@ class VoeExtractor(private val client: OkHttpClient) { private val playlistUtils by lazy { PlaylistUtils(clientDdos) } + private val linkRegex = "(http|https)://([\\w_-]+(?:\\.[\\w_-]+)+)([\\w.,@?^=%&:/~+#-]*[\\w@?^=%&/~+#-])".toRegex() + + private val base64Regex = Regex("'.*'") + + private val scriptBase64Regex = "(let|var)\\s+\\w+\\s*=\\s*'(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)';".toRegex() + @Serializable - data class VideoLinkDTO(val source: String) - - private fun decodeVoeData(data: String): String { - val shifted = data.map { char -> - when (char) { - in 'A'..'Z' -> 'A' + (char - 'A' + 13).mod(26) - in 'a'..'z' -> 'a' + (char - 'a' + 13).mod(26) - else -> char - } - }.joinToString() - - val junk = listOf("@$", "^^", "~@", "%?", "*~", "!!", "#&") - var result = shifted - for (part in junk) { - result = result.replace(part, "_") - } - val clean = result.replace("_", "") - - val transformed = String(Base64.decode(clean, Base64.DEFAULT)).map { - (it.code - 3).toChar() - }.joinToString().reversed() - - val decoded = String(Base64.decode(transformed, Base64.DEFAULT)) - - return json.decodeFromString(decoded).source - } + data class VideoLinkDTO(val file: String) fun videosFromUrl(url: String, prefix: String = ""): List