Skip to content

Commit 004b9cb

Browse files
SDK regeneration
1 parent 50c2179 commit 004b9cb

File tree

80 files changed

+5393
-1334
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

80 files changed

+5393
-1334
lines changed

.fern/metadata.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"cliVersion": "3.4.3",
3+
"generatorName": "fernapi/fern-typescript-node-sdk",
4+
"generatorVersion": "3.31.1",
5+
"generatorConfig": {
6+
"includeApiReference": true,
7+
"namespaceExport": "Pipedream",
8+
"noSerdeLayer": false
9+
}
10+
}

.npmignore

Lines changed: 0 additions & 11 deletions
This file was deleted.

CONTRIBUTING.md

Lines changed: 133 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,133 @@
1+
# Contributing
2+
3+
Thanks for your interest in contributing to this SDK! This document provides guidelines for contributing to the project.
4+
5+
## Getting Started
6+
7+
### Prerequisites
8+
9+
- Node.js 20 or higher
10+
- pnpm package manager
11+
12+
### Installation
13+
14+
Install the project dependencies:
15+
16+
```bash
17+
pnpm install
18+
```
19+
20+
### Building
21+
22+
Build the project:
23+
24+
```bash
25+
pnpm build
26+
```
27+
28+
### Testing
29+
30+
Run the test suite:
31+
32+
```bash
33+
pnpm test
34+
```
35+
36+
Run specific test types:
37+
- `pnpm test:unit` - Run unit tests
38+
- `pnpm test:wire` - Run wire/integration tests
39+
40+
### Linting and Formatting
41+
42+
Check code style:
43+
44+
```bash
45+
pnpm run lint
46+
pnpm run format:check
47+
```
48+
49+
Fix code style issues:
50+
51+
```bash
52+
pnpm run lint:fix
53+
pnpm run format:fix
54+
```
55+
56+
Or use the combined check command:
57+
58+
```bash
59+
pnpm run check:fix
60+
```
61+
62+
## About Generated Code
63+
64+
**Important**: Most files in this SDK are automatically generated by [Fern](https://buildwithfern.com) from the API definition. Direct modifications to generated files will be overwritten the next time the SDK is generated.
65+
66+
### Generated Files
67+
68+
The following directories contain generated code:
69+
- `src/api/` - API client classes and types
70+
- `src/serialization/` - Serialization/deserialization logic
71+
- Most TypeScript files in `src/`
72+
73+
### How to Customize
74+
75+
If you need to customize the SDK, you have two options:
76+
77+
#### Option 1: Use `.fernignore`
78+
79+
For custom code that should persist across SDK regenerations:
80+
81+
1. Create a `.fernignore` file in the project root
82+
2. Add file patterns for files you want to preserve (similar to `.gitignore` syntax)
83+
3. Add your custom code to those files
84+
85+
Files listed in `.fernignore` will not be overwritten when the SDK is regenerated.
86+
87+
For more information, see the [Fern documentation on custom code](https://buildwithfern.com/learn/sdks/overview/custom-code).
88+
89+
#### Option 2: Contribute to the Generator
90+
91+
If you want to change how code is generated for all users of this SDK:
92+
93+
1. The TypeScript SDK generator lives in the [Fern repository](https://github.com/fern-api/fern)
94+
2. Generator code is located at `generators/typescript/sdk/`
95+
3. Follow the [Fern contributing guidelines](https://github.com/fern-api/fern/blob/main/CONTRIBUTING.md)
96+
4. Submit a pull request with your changes to the generator
97+
98+
This approach is best for:
99+
- Bug fixes in generated code
100+
- New features that would benefit all users
101+
- Improvements to code generation patterns
102+
103+
## Making Changes
104+
105+
### Workflow
106+
107+
1. Create a new branch for your changes
108+
2. Make your modifications
109+
3. Run tests to ensure nothing breaks: `pnpm test`
110+
4. Run linting and formatting: `pnpm run check:fix`
111+
5. Build the project: `pnpm build`
112+
6. Commit your changes with a clear commit message
113+
7. Push your branch and create a pull request
114+
115+
### Commit Messages
116+
117+
Write clear, descriptive commit messages that explain what changed and why.
118+
119+
### Code Style
120+
121+
This project uses automated code formatting and linting. Run `pnpm run check:fix` before committing to ensure your code meets the project's style guidelines.
122+
123+
## Questions or Issues?
124+
125+
If you have questions or run into issues:
126+
127+
1. Check the [Fern documentation](https://buildwithfern.com)
128+
2. Search existing [GitHub issues](https://github.com/fern-api/fern/issues)
129+
3. Open a new issue if your question hasn't been addressed
130+
131+
## License
132+
133+
By contributing to this project, you agree that your contributions will be licensed under the same license as the project.

README.md

Lines changed: 69 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ await client.actions.run({
5454
});
5555
```
5656

57-
## Request and Response Types
57+
## Request And Response Types
5858

5959
The SDK exports all request and response types as TypeScript interfaces. Simply import them with the
6060
following namespace:
@@ -484,15 +484,15 @@ List endpoints are paginated. The SDK provides an iterator so that you can simpl
484484
import { PipedreamClient } from "@pipedream/sdk";
485485

486486
const client = new PipedreamClient({ clientId: "YOUR_CLIENT_ID", clientSecret: "YOUR_CLIENT_SECRET", projectEnvironment: "YOUR_PROJECT_ENVIRONMENT", projectId: "YOUR_PROJECT_ID" });
487-
const response = await client.apps.list({
487+
const pageableResponse = await client.apps.list({
488488
after: "after",
489489
before: "before",
490490
limit: 1,
491491
q: "q",
492492
sortKey: "name",
493493
sortDirection: "asc"
494494
});
495-
for await (const item of response) {
495+
for await (const item of pageableResponse) {
496496
console.log(item);
497497
}
498498

@@ -508,6 +508,9 @@ let page = await client.apps.list({
508508
while (page.hasNextPage()) {
509509
page = page.getNextPage();
510510
}
511+
512+
// You can also access the underlying response
513+
const response = page.response;
511514
```
512515

513516
## Advanced
@@ -590,6 +593,69 @@ console.log(data);
590593
console.log(rawResponse.headers['X-My-Header']);
591594
```
592595

596+
### Logging
597+
598+
The SDK supports logging. You can configure the logger by passing in a `logging` object to the client options.
599+
600+
```typescript
601+
import { PipedreamClient, logging } from "@pipedream/sdk";
602+
603+
const client = new PipedreamClient({
604+
...
605+
logging: {
606+
level: logging.LogLevel.Debug, // defaults to logging.LogLevel.Info
607+
logger: new logging.ConsoleLogger(), // defaults to ConsoleLogger
608+
silent: false, // defaults to true, set to false to enable logging
609+
}
610+
});
611+
```
612+
The `logging` object can have the following properties:
613+
- `level`: The log level to use. Defaults to `logging.LogLevel.Info`.
614+
- `logger`: The logger to use. Defaults to a `logging.ConsoleLogger`.
615+
- `silent`: Whether to silence the logger. Defaults to `true`.
616+
617+
The `level` property can be one of the following values:
618+
- `logging.LogLevel.Debug`
619+
- `logging.LogLevel.Info`
620+
- `logging.LogLevel.Warn`
621+
- `logging.LogLevel.Error`
622+
623+
To provide a custom logger, you can pass in an object that implements the `logging.ILogger` interface.
624+
625+
<details>
626+
<summary>Custom logger examples</summary>
627+
628+
Here's an example using the popular `winston` logging library.
629+
```ts
630+
import winston from 'winston';
631+
632+
const winstonLogger = winston.createLogger({...});
633+
634+
const logger: logging.ILogger = {
635+
debug: (msg, ...args) => winstonLogger.debug(msg, ...args),
636+
info: (msg, ...args) => winstonLogger.info(msg, ...args),
637+
warn: (msg, ...args) => winstonLogger.warn(msg, ...args),
638+
error: (msg, ...args) => winstonLogger.error(msg, ...args),
639+
};
640+
```
641+
642+
Here's an example using the popular `pino` logging library.
643+
644+
```ts
645+
import pino from 'pino';
646+
647+
const pinoLogger = pino({...});
648+
649+
const logger: logging.ILogger = {
650+
debug: (msg, ...args) => pinoLogger.debug(args, msg),
651+
info: (msg, ...args) => pinoLogger.info(args, msg),
652+
warn: (msg, ...args) => pinoLogger.warn(args, msg),
653+
error: (msg, ...args) => pinoLogger.error(args, msg),
654+
};
655+
```
656+
</details>
657+
658+
593659
### Runtime Compatibility
594660

595661

biome.json

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,27 @@
11
{
2-
"$schema": "https://biomejs.dev/schemas/2.2.5/schema.json",
2+
"$schema": "https://biomejs.dev/schemas/2.3.1/schema.json",
33
"root": true,
44
"vcs": {
55
"enabled": false
66
},
77
"files": {
88
"ignoreUnknown": true,
99
"includes": [
10-
"./**",
11-
"!dist",
12-
"!lib",
13-
"!*.tsbuildinfo",
14-
"!_tmp_*",
15-
"!*.tmp",
16-
"!.tmp/",
17-
"!*.log",
18-
"!.DS_Store",
19-
"!Thumbs.db"
10+
"**",
11+
"!!dist",
12+
"!!**/dist",
13+
"!!lib",
14+
"!!**/lib",
15+
"!!_tmp_*",
16+
"!!**/_tmp_*",
17+
"!!*.tmp",
18+
"!!**/*.tmp",
19+
"!!.tmp/",
20+
"!!**/.tmp/",
21+
"!!*.log",
22+
"!!**/*.log",
23+
"!!**/.DS_Store",
24+
"!!**/Thumbs.db"
2025
]
2126
},
2227
"formatter": {

package.json

Lines changed: 4 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@pipedream/sdk",
3-
"version": "2.3.2",
3+
"version": "2.3.3",
44
"private": false,
55
"repository": "github:PipedreamHQ/pipedream-sdk-typescript",
66
"type": "commonjs",
@@ -10,11 +10,6 @@
1010
"exports": {
1111
".": {
1212
"types": "./dist/cjs/index.d.ts",
13-
"browser": {
14-
"types": "./dist/esm/browser/index.d.mts",
15-
"import": "./dist/esm/browser/index.mjs",
16-
"default": "./dist/esm/browser/index.mjs"
17-
},
1813
"import": {
1914
"types": "./dist/esm/index.d.mts",
2015
"default": "./dist/esm/index.mjs"
@@ -25,18 +20,6 @@
2520
},
2621
"default": "./dist/cjs/index.js"
2722
},
28-
"./browser": {
29-
"types": "./dist/esm/browser/index.d.mts",
30-
"import": {
31-
"types": "./dist/esm/browser/index.d.mts",
32-
"default": "./dist/esm/browser/index.mjs"
33-
},
34-
"require": {
35-
"types": "./dist/cjs/browser/index.d.ts",
36-
"default": "./dist/cjs/browser/index.js"
37-
},
38-
"default": "./dist/esm/browser/index.mjs"
39-
},
4023
"./serialization": {
4124
"types": "./dist/cjs/serialization/index.d.ts",
4225
"import": {
@@ -49,18 +32,6 @@
4932
},
5033
"default": "./dist/cjs/serialization/index.js"
5134
},
52-
"./server": {
53-
"types": "./dist/cjs/index.d.ts",
54-
"import": {
55-
"types": "./dist/esm/index.d.mts",
56-
"default": "./dist/esm/index.mjs"
57-
},
58-
"require": {
59-
"types": "./dist/cjs/index.d.ts",
60-
"default": "./dist/cjs/index.js"
61-
},
62-
"default": "./dist/cjs/index.js"
63-
},
6435
"./package.json": "./package.json"
6536
},
6637
"files": [
@@ -83,24 +54,23 @@
8354
"test:unit": "vitest --project unit",
8455
"test:wire": "vitest --project wire"
8556
},
57+
"dependencies": {},
8658
"devDependencies": {
8759
"webpack": "^5.97.1",
8860
"ts-loader": "^9.5.1",
8961
"vitest": "^3.2.4",
9062
"msw": "2.11.2",
9163
"@types/node": "^18.19.70",
9264
"typescript": "~5.7.2",
93-
"@biomejs/biome": "2.2.5"
65+
"@biomejs/biome": "2.3.1"
9466
},
9567
"browser": {
96-
"./dist/cjs/wrapper/utils/getBaseUrl.js": "./dist/cjs/wrapper/utils/getBaseUrl.browser.js",
97-
"./dist/esm/wrapper/utils/getBaseUrl.mjs": "./dist/esm/wrapper/utils/getBaseUrl.browser.mjs",
9868
"fs": false,
9969
"os": false,
10070
"path": false,
10171
"stream": false
10272
},
103-
"packageManager": "pnpm@10.14.0",
73+
"packageManager": "pnpm@10.20.0",
10474
"engines": {
10575
"node": ">=18.0.0"
10676
},

0 commit comments

Comments
 (0)