Skip to content

Commit f6752d6

Browse files
authored
fix: 168 - Change delimeter from hyphen to pipe for google provider (#169)
## Description Changing "lang" delimeter for "google" provider from `-` (hyphen) to `|` (pipe). ## Does this introduce a breaking change - [x] Yes - [ ] No ## Other information None. --- Closes #168
1 parent 78cf3ab commit f6752d6

File tree

9 files changed

+41
-33
lines changed

9 files changed

+41
-33
lines changed

.github/workflows/test-providers.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,9 @@ jobs:
3131
expected: "Любов"
3232
api_key: "DEEPL_API_KEY" # pragma: allowlist secret
3333
- provider: "google"
34-
lang: "en-hr"
34+
lang: "en|zh-CN"
3535
source: "Love"
36-
expected: "Ljubav"
36+
expected: ""
3737
- provider: "linguatools"
3838
lang: "en-de"
3939
source: "Love"

README.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -70,8 +70,8 @@ jobs:
7070
name: DeepL
7171
runs-on: ubuntu-latest
7272
steps:
73-
- uses: actions/checkout@v4
74-
- uses: fabasoad/translation-action@main
73+
- uses: actions/checkout@v5
74+
- uses: fabasoad/translation-action@v4
7575
id: deepl-step
7676
with:
7777
provider: deepl
@@ -93,10 +93,10 @@ Translation is 'Любов'
9393
### Google
9494

9595
* Identifier is `google`.
96-
* See [supported translation directions](https://github.com/AidanWelch/google-translate-api/blob/master/index.d.ts#L67)
96+
* See [supported translation directions](https://github.com/AidanWelch/google-translate-api/blob/v10.7.2/index.d.ts#L123)
9797
for more details.
98-
* Be aware that source and target languages should be separated by `-` (hyphen)
99-
character while using them in `lang` input. For example, `ms-en` should be used
98+
* Be aware that source and target languages should be separated by `|` (pipe)
99+
character while using them in `lang` input. For example, `ms|en` should be used
100100
in case you want to translate text from Malay into English. See example below
101101
for more details.
102102

@@ -108,12 +108,12 @@ jobs:
108108
name: Google
109109
runs-on: ubuntu-latest
110110
steps:
111-
- uses: actions/checkout@v4
112-
- uses: fabasoad/translation-action@main
111+
- uses: actions/checkout@v5
112+
- uses: fabasoad/translation-action@v4
113113
id: google-step
114114
with:
115115
provider: google
116-
lang: ms-en
116+
lang: ms|en
117117
source: Kemenangan
118118
- name: Print the result
119119
run: echo "Translation is '${{ steps.google-step.outputs.text }}'"
@@ -148,8 +148,8 @@ jobs:
148148
name: LibreTranslate
149149
runs-on: ubuntu-latest
150150
steps:
151-
- uses: actions/checkout@v4
152-
- uses: fabasoad/translation-action@main
151+
- uses: actions/checkout@v5
152+
- uses: fabasoad/translation-action@v4
153153
id: libretranslate-step
154154
with:
155155
provider: libretranslate
@@ -225,7 +225,7 @@ and generate a new key.
225225
Example:
226226

227227
```yaml
228-
- uses: fabasoad/translation-action@main
228+
- uses: fabasoad/translation-action@v4
229229
with:
230230
provider: funtranslations
231231
lang: 'klingon'

action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,5 @@ outputs:
3232
text:
3333
description: "Translated text."
3434
runs:
35-
using: "node20"
35+
using: "node24"
3636
main: "dist/index.js"

dist/index.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
{
22
"name": "translation-action",
3-
"version": "3.1.8",
3+
"version": "4.0.0",
44
"description": "This GitHub action translates any text from any language to any language.",
55
"main": "dist/index.js",
66
"scripts": {
7-
"build": "esbuild src/index.ts --bundle --platform=node --target=node20 --outfile=dist/index.js",
7+
"build": "esbuild src/index.ts --bundle --platform=node --target=node24 --outfile=dist/index.js",
88
"lint": "biome lint --write src",
99
"test": "jest --config=jest.config.json --json --outputFile=jest-report.json --coverage"
1010
},

src/__tests__/providers/GoogleProvider.spec.ts

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,18 @@ describe('GoogleProvider', () => {
1212

1313
test(
1414
'should get correct translation',
15-
async () => providerTester.positive()
15+
async () => providerTester.positive({
16+
text: 'Poem',
17+
lang: 'en|uk',
18+
expected: 'Вірш'
19+
})
1620
)
1721

1822
test(
1923
'should fail because of invalid lang',
20-
async () => providerTester.negative()
24+
async () => providerTester.negative({
25+
text: 'Anything',
26+
lang: 'en|abc123'
27+
})
2128
)
2229
})

src/__tests__/providers/ProviderTester.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@ type PositiveOptions = NegativeOptions & {
1111
}
1212

1313
export default class ProviderTester {
14-
private provider: ProviderBase
14+
private readonly provider: ProviderBase
15+
1516
constructor(provider: ProviderBase) {
1617
this.provider = provider
1718
}

src/providers/GoogleProvider.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ export default class GoogleProvider extends ProviderBase {
1010
}
1111

1212
async translate(text: string, lang: string): Promise<string[]> {
13-
const [from, to]: string[] = lang.split('-')
13+
const [from, to]: string[] = lang.split('|')
1414
const response: TranslationResponse = await translate<string>(text, {
1515
from, to, requestFunction: fetch
1616
})

yarn.lock

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1236,11 +1236,11 @@ __metadata:
12361236
linkType: hard
12371237

12381238
"@types/node@npm:*, @types/node@npm:>=12.0":
1239-
version: 24.7.1
1240-
resolution: "@types/node@npm:24.7.1"
1239+
version: 24.7.2
1240+
resolution: "@types/node@npm:24.7.2"
12411241
dependencies:
12421242
undici-types: "npm:~7.14.0"
1243-
checksum: 10c0/2525f2aa865d78b1c75faaf8c6bf2af51c930962d8078306620d9a76eafcbbea035142cf2cdc2fcf1b4010cd3958a1c6c59b67aba1ac205dc1e5f895ef6af673
1243+
checksum: 10c0/03f662f10e4b89bc97016e067101cbabe55025b54c24afb581fb50992d5eeaaf417bdae34bbc668ae8759d3cdbbbadf35fc8b9b29d26f52ede2525d48e919e49
12441244
languageName: node
12451245
linkType: hard
12461246

@@ -1611,11 +1611,11 @@ __metadata:
16111611
linkType: hard
16121612

16131613
"baseline-browser-mapping@npm:^2.8.9":
1614-
version: 2.8.15
1615-
resolution: "baseline-browser-mapping@npm:2.8.15"
1614+
version: 2.8.16
1615+
resolution: "baseline-browser-mapping@npm:2.8.16"
16161616
bin:
16171617
baseline-browser-mapping: dist/cli.js
1618-
checksum: 10c0/ec561bd72bdaecc22401f3b971fa3d9ace340c8b375d1eb07362abcba25e0d7b27a6e26a73b48f1df5ec5bcf429e3639958a9b9c77604a89ffcb727449d20ea6
1618+
checksum: 10c0/e38a861f44236cfc5ba8bf9d4a024d37682e73efc3df3377e170a8a44303f466c0fce7fdc641029df27e47adb270b2f7cf29550b9be7dcdbeec18bc62858c9e9
16191619
languageName: node
16201620
linkType: hard
16211621

@@ -1749,9 +1749,9 @@ __metadata:
17491749
linkType: hard
17501750

17511751
"caniuse-lite@npm:^1.0.30001746":
1752-
version: 1.0.30001749
1753-
resolution: "caniuse-lite@npm:1.0.30001749"
1754-
checksum: 10c0/f5100599361be03e93cae1f38380fdb78b477b573cb27f8aaf8ed8461ac0233ea84c7e127f441ca0a82ff23f4c37a8855b7c6a02e79d70769a786550bc1be69e
1752+
version: 1.0.30001750
1753+
resolution: "caniuse-lite@npm:1.0.30001750"
1754+
checksum: 10c0/aa77ebf264ca8dcfe913fadaa19f06bf839d65dec24498fdb9c45739ab0828b8275ca30c698f4ee86829d38264eaa461edf4577e407753da8205ab1d285e105d
17551755
languageName: node
17561756
linkType: hard
17571757

@@ -2218,9 +2218,9 @@ __metadata:
22182218
linkType: hard
22192219

22202220
"exponential-backoff@npm:^3.1.1":
2221-
version: 3.1.2
2222-
resolution: "exponential-backoff@npm:3.1.2"
2223-
checksum: 10c0/d9d3e1eafa21b78464297df91f1776f7fbaa3d5e3f7f0995648ca5b89c069d17055033817348d9f4a43d1c20b0eab84f75af6991751e839df53e4dfd6f22e844
2221+
version: 3.1.3
2222+
resolution: "exponential-backoff@npm:3.1.3"
2223+
checksum: 10c0/77e3ae682b7b1f4972f563c6dbcd2b0d54ac679e62d5d32f3e5085feba20483cf28bd505543f520e287a56d4d55a28d7874299941faf637e779a1aa5994d1267
22242224
languageName: node
22252225
linkType: hard
22262226

0 commit comments

Comments
 (0)