@derogab/llm-proxy 0.1.0 → 0.2.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.
- package/.github/workflows/release.yml +49 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +1 -1
- package/.github/workflows/publish.yml +0 -54
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
name:
|
|
1
|
+
name: Release and publish package to NPM
|
|
2
2
|
|
|
3
3
|
on:
|
|
4
4
|
push:
|
|
@@ -24,3 +24,51 @@ jobs:
|
|
|
24
24
|
--repo="$GITHUB_REPOSITORY" \
|
|
25
25
|
--title="v${tag#v}" \
|
|
26
26
|
--generate-notes
|
|
27
|
+
# Publish the package to NPM.
|
|
28
|
+
publish:
|
|
29
|
+
name: Publish Package
|
|
30
|
+
needs: release
|
|
31
|
+
runs-on: ubuntu-latest
|
|
32
|
+
permissions:
|
|
33
|
+
contents: read
|
|
34
|
+
id-token: write
|
|
35
|
+
steps:
|
|
36
|
+
- name: Checkout
|
|
37
|
+
uses: actions/checkout@v5
|
|
38
|
+
- name: Setup Node
|
|
39
|
+
uses: actions/setup-node@v4
|
|
40
|
+
with:
|
|
41
|
+
node-version: '20.x'
|
|
42
|
+
cache: 'npm'
|
|
43
|
+
registry-url: 'https://registry.npmjs.org'
|
|
44
|
+
always-auth: true
|
|
45
|
+
- name: Install dependencies (clean)
|
|
46
|
+
run: npm ci
|
|
47
|
+
- name: Type check
|
|
48
|
+
run: npx tsc -p tsconfig.json --noEmit
|
|
49
|
+
- name: Run tests
|
|
50
|
+
run: npm test --if-present
|
|
51
|
+
- name: Build
|
|
52
|
+
run: |
|
|
53
|
+
if npm run | grep -q "build"; then
|
|
54
|
+
npm run build
|
|
55
|
+
else
|
|
56
|
+
# Fall back to a standard TS build if no script is defined
|
|
57
|
+
npx tsc -p tsconfig.json
|
|
58
|
+
fi
|
|
59
|
+
- name: Verify tag matches package.json version
|
|
60
|
+
run: |
|
|
61
|
+
PKG_VERSION="$(node -p "require('./package.json').version")"
|
|
62
|
+
TAG_VERSION="${GITHUB_REF_NAME#v}" # supports tags like v1.2.3
|
|
63
|
+
echo "package.json: $PKG_VERSION"
|
|
64
|
+
echo "release tag: $TAG_VERSION"
|
|
65
|
+
if [ "$PKG_VERSION" != "$TAG_VERSION" ]; then
|
|
66
|
+
echo "Release tag ($TAG_VERSION) does not match package.json version ($PKG_VERSION)."
|
|
67
|
+
exit 1
|
|
68
|
+
fi
|
|
69
|
+
- name: Show publish contents (dry run)
|
|
70
|
+
run: npm pack --dry-run
|
|
71
|
+
- name: Publish to npm (with provenance)
|
|
72
|
+
env:
|
|
73
|
+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
74
|
+
run: npm publish --provenance --access public
|
package/dist/index.js
CHANGED
|
@@ -13,7 +13,7 @@ dotenv.config();
|
|
|
13
13
|
*/
|
|
14
14
|
async function generate_openai(messages) {
|
|
15
15
|
// Create a new instance of the OpenAI class.
|
|
16
|
-
const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY });
|
|
16
|
+
const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY, baseURL: process.env.OPENAI_BASE_URL });
|
|
17
17
|
// Call the OpenAI API.
|
|
18
18
|
const chatCompletion = await openai.chat.completions.create({
|
|
19
19
|
messages: messages,
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gBAAgB;AAChB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,MAAM,MAAM,QAAQ,CAAC;AAa5B,WAAW;AACX,MAAM,CAAC,MAAM,EAAE,CAAC;AAEhB;;;;;GAKG;AACH,KAAK,UAAU,eAAe,CAAC,QAAsC;IACnE,6CAA6C;IAC7C,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -26,7 +26,7 @@ dotenv.config();
|
|
|
26
26
|
*/
|
|
27
27
|
async function generate_openai(messages: ChatCompletionMessageParam[]): Promise<ChatCompletionMessageParam> {
|
|
28
28
|
// Create a new instance of the OpenAI class.
|
|
29
|
-
const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY });
|
|
29
|
+
const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY, baseURL: process.env.OPENAI_BASE_URL });
|
|
30
30
|
// Call the OpenAI API.
|
|
31
31
|
const chatCompletion = await openai.chat.completions.create({
|
|
32
32
|
messages: messages,
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
name: Publish Package to NPM
|
|
2
|
-
|
|
3
|
-
on:
|
|
4
|
-
release:
|
|
5
|
-
types: [published]
|
|
6
|
-
workflow_dispatch:
|
|
7
|
-
|
|
8
|
-
jobs:
|
|
9
|
-
build:
|
|
10
|
-
name: Publish Package
|
|
11
|
-
runs-on: ubuntu-latest
|
|
12
|
-
permissions:
|
|
13
|
-
contents: read
|
|
14
|
-
id-token: write
|
|
15
|
-
steps:
|
|
16
|
-
- name: Checkout
|
|
17
|
-
uses: actions/checkout@v4
|
|
18
|
-
- name: Setup Node
|
|
19
|
-
uses: actions/setup-node@v4
|
|
20
|
-
with:
|
|
21
|
-
node-version: '20.x'
|
|
22
|
-
cache: 'npm'
|
|
23
|
-
registry-url: 'https://registry.npmjs.org'
|
|
24
|
-
always-auth: true
|
|
25
|
-
- name: Install dependencies (clean)
|
|
26
|
-
run: npm ci
|
|
27
|
-
- name: Type check
|
|
28
|
-
run: npx tsc -p tsconfig.json --noEmit
|
|
29
|
-
- name: Run tests
|
|
30
|
-
run: npm test --if-present
|
|
31
|
-
- name: Build
|
|
32
|
-
run: |
|
|
33
|
-
if npm run | grep -q "build"; then
|
|
34
|
-
npm run build
|
|
35
|
-
else
|
|
36
|
-
# Fall back to a standard TS build if no script is defined
|
|
37
|
-
npx tsc -p tsconfig.json
|
|
38
|
-
fi
|
|
39
|
-
- name: Verify tag matches package.json version
|
|
40
|
-
run: |
|
|
41
|
-
PKG_VERSION="$(node -p "require('./package.json').version")"
|
|
42
|
-
TAG_VERSION="${GITHUB_REF_NAME#v}" # supports tags like v1.2.3
|
|
43
|
-
echo "package.json: $PKG_VERSION"
|
|
44
|
-
echo "release tag: $TAG_VERSION"
|
|
45
|
-
if [ "$PKG_VERSION" != "$TAG_VERSION" ]; then
|
|
46
|
-
echo "Release tag ($TAG_VERSION) does not match package.json version ($PKG_VERSION)."
|
|
47
|
-
exit 1
|
|
48
|
-
fi
|
|
49
|
-
- name: Show publish contents (dry run)
|
|
50
|
-
run: npm pack --dry-run
|
|
51
|
-
- name: Publish to npm (with provenance)
|
|
52
|
-
env:
|
|
53
|
-
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
54
|
-
run: npm publish --provenance --access public
|