feat(CloudflareAccount): Bump dependency versions and add domain support check in CloudflareAccount
This commit is contained in:
parent
4c16e0263a
commit
f27eaa0e82
@ -1,5 +1,11 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 2025-04-30 - 6.4.0 - feat(CloudflareAccount)
|
||||||
|
Bump dependency versions and add domain support check in CloudflareAccount
|
||||||
|
|
||||||
|
- Upgrade dependencies: @push.rocks/smartrequest, @tsclass/tsclass, @git.zone/tsbuild, @push.rocks/tapbundle, and @types/node
|
||||||
|
- Implement the isDomainSupported convenience method in CloudflareAccount for validating domain management
|
||||||
|
|
||||||
## 2025-04-26 - 6.3.2 - fix(worker)
|
## 2025-04-26 - 6.3.2 - fix(worker)
|
||||||
Refactor worker script update and creation to use intermediate parameter objects
|
Refactor worker script update and creation to use intermediate parameter objects
|
||||||
|
|
||||||
|
10
package.json
10
package.json
@ -38,18 +38,18 @@
|
|||||||
"@push.rocks/smartdelay": "^3.0.1",
|
"@push.rocks/smartdelay": "^3.0.1",
|
||||||
"@push.rocks/smartlog": "^3.0.2",
|
"@push.rocks/smartlog": "^3.0.2",
|
||||||
"@push.rocks/smartpromise": "^4.2.3",
|
"@push.rocks/smartpromise": "^4.2.3",
|
||||||
"@push.rocks/smartrequest": "^2.0.23",
|
"@push.rocks/smartrequest": "^2.1.0",
|
||||||
"@push.rocks/smartstring": "^4.0.5",
|
"@push.rocks/smartstring": "^4.0.5",
|
||||||
"@tsclass/tsclass": "^5.0.0",
|
"@tsclass/tsclass": "^9.1.0",
|
||||||
"cloudflare": "^4.2.0"
|
"cloudflare": "^4.2.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@git.zone/tsbuild": "^2.2.7",
|
"@git.zone/tsbuild": "^2.3.2",
|
||||||
"@git.zone/tsrun": "^1.3.3",
|
"@git.zone/tsrun": "^1.3.3",
|
||||||
"@git.zone/tstest": "^1.0.96",
|
"@git.zone/tstest": "^1.0.96",
|
||||||
"@push.rocks/qenv": "^6.1.0",
|
"@push.rocks/qenv": "^6.1.0",
|
||||||
"@push.rocks/tapbundle": "^5.6.0",
|
"@push.rocks/tapbundle": "^6.0.0",
|
||||||
"@types/node": "^22.13.10",
|
"@types/node": "^22.15.3",
|
||||||
"openapi-typescript": "^7.6.1"
|
"openapi-typescript": "^7.6.1"
|
||||||
},
|
},
|
||||||
"files": [
|
"files": [
|
||||||
|
1282
pnpm-lock.yaml
generated
1282
pnpm-lock.yaml
generated
File diff suppressed because it is too large
Load Diff
@ -3,6 +3,6 @@
|
|||||||
*/
|
*/
|
||||||
export const commitinfo = {
|
export const commitinfo = {
|
||||||
name: '@apiclient.xyz/cloudflare',
|
name: '@apiclient.xyz/cloudflare',
|
||||||
version: '6.3.2',
|
version: '6.4.0',
|
||||||
description: 'A TypeScript client for managing Cloudflare accounts, zones, DNS records, and workers with ease.'
|
description: 'A TypeScript client for managing Cloudflare accounts, zones, DNS records, and workers with ease.'
|
||||||
}
|
}
|
||||||
|
@ -6,7 +6,7 @@ import * as interfaces from './interfaces/index.js';
|
|||||||
import { WorkerManager } from './cloudflare.classes.workermanager.js';
|
import { WorkerManager } from './cloudflare.classes.workermanager.js';
|
||||||
import { ZoneManager } from './cloudflare.classes.zonemanager.js';
|
import { ZoneManager } from './cloudflare.classes.zonemanager.js';
|
||||||
|
|
||||||
export class CloudflareAccount {
|
export class CloudflareAccount implements plugins.tsclass.network.IConvenientDnsProvider {
|
||||||
private authToken: string;
|
private authToken: string;
|
||||||
public preselectedAccountId: string;
|
public preselectedAccountId: string;
|
||||||
|
|
||||||
@ -353,6 +353,24 @@ export class CloudflareAccount {
|
|||||||
return [];
|
return [];
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
/**
|
||||||
|
* Determines whether the given domain can be managed by this account
|
||||||
|
* @param domainName Full domain name to check (e.g., "sub.example.com")
|
||||||
|
* @returns True if the zone for the domain exists in the account, false otherwise
|
||||||
|
*/
|
||||||
|
isDomainSupported: async (domainName: string): Promise<boolean> => {
|
||||||
|
try {
|
||||||
|
// Parse out the apex/zone name from the full domain
|
||||||
|
const domain = new plugins.smartstring.Domain(domainName);
|
||||||
|
// List zones filtered by the zone name
|
||||||
|
const zones = await this.convenience.listZones(domain.zoneName);
|
||||||
|
// If any zone matches, we can manage this domain
|
||||||
|
return Array.isArray(zones) && zones.length > 0;
|
||||||
|
} catch (error) {
|
||||||
|
logger.log('error', `Error checking domain support for ${domainName}: ${error.message}`);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
},
|
||||||
/**
|
/**
|
||||||
* purges a zone
|
* purges a zone
|
||||||
*/
|
*/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user