@hobokengrace/n8n-nodes-pco 0.1.0 → 0.1.1

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/README.md CHANGED
@@ -67,6 +67,22 @@ pnpm build
67
67
  `pnpm build` compiles committed source and copies assets. It does not run
68
68
  generation.
69
69
 
70
+ This package includes a prototype of the newer `@n8n/node-cli` workflow:
71
+
72
+ ```sh
73
+ pnpm dev
74
+ pnpm lint:n8n
75
+ pnpm release
76
+ ```
77
+
78
+ `pnpm build` already uses `n8n-node build`, followed by the package-specific
79
+ asset copy step. `pnpm lint` intentionally uses `eslint.config.repo.mjs` for the
80
+ current generated-node and generator/test layout. `pnpm lint:n8n` is stricter
81
+ and currently represents follow-up compliance work for n8n Cloud-style rules,
82
+ including generated-node `usableAsTool`, connection type constants,
83
+ Continue On Fail handling, themed icons, and keeping generator/test sources out
84
+ of the strict community-node lint surface.
85
+
70
86
  ## Publishing
71
87
 
72
88
  Maintainers can follow the release checklist in [docs/publishing.md](docs/publishing.md)
@@ -43,7 +43,7 @@ const expectedGeneratedNodePaths = config_1.generatedProductConfigs.map((config)
43
43
  (0, vitest_1.it)('declares n8n community node metadata and flexible n8n workflow compatibility', () => {
44
44
  const pkg = JSON.parse((0, node_fs_1.readFileSync)('package.json', 'utf8'));
45
45
  (0, vitest_1.expect)(pkg.name).toBe('@hobokengrace/n8n-nodes-pco');
46
- (0, vitest_1.expect)(pkg.engines.node).toBe('>=20.0.0');
46
+ (0, vitest_1.expect)(pkg.engines.node).toBe('>=22.0.0');
47
47
  (0, vitest_1.expect)(pkg.packageManager).toMatch(/^pnpm@/);
48
48
  (0, vitest_1.expect)(pkg.peerDependencies['n8n-workflow']).toBe('*');
49
49
  (0, vitest_1.expect)(pkg.devDependencies['n8n-workflow']).toBe('*');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hobokengrace/n8n-nodes-pco",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "n8n nodes for Planning Center Online",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -8,14 +8,20 @@
8
8
  "dist"
9
9
  ],
10
10
  "scripts": {
11
- "build": "tsc -p tsconfig.json && node scripts/copy-assets.mjs",
11
+ "build": "n8n-node build && node scripts/copy-assets.mjs",
12
+ "build:watch": "tsc --watch",
12
13
  "clean": "node scripts/clean.mjs",
14
+ "dev": "n8n-node dev",
13
15
  "format": "prettier --write .",
14
16
  "generate": "tsx src/generator/generate.ts",
15
17
  "generate:check": "tsx src/generator/checkGenerated.ts",
16
- "lint": "eslint . --ext .ts",
18
+ "lint": "eslint --config eslint.config.repo.mjs .",
19
+ "lint:fix": "eslint --config eslint.config.repo.mjs . --fix",
20
+ "lint:n8n": "n8n-node lint",
17
21
  "openapi:refresh": "tsx src/generator/refreshSnapshots.ts",
18
22
  "package:inspect": "node scripts/inspect-package.mjs",
23
+ "release": "n8n-node release",
24
+ "prepublishOnly": "n8n-node prerelease",
19
25
  "release:draft": "node scripts/draft-release.mjs",
20
26
  "test": "vitest run"
21
27
  },
@@ -26,7 +32,10 @@
26
32
  "pco"
27
33
  ],
28
34
  "license": "MIT",
29
- "author": "ntcho <ntcho13@gmail.com>",
35
+ "author": {
36
+ "name": "ntcho",
37
+ "email": "ntcho13@gmail.com"
38
+ },
30
39
  "repository": {
31
40
  "type": "git",
32
41
  "url": "git+https://github.com/HobokenGrace/n8n-nodes-pco.git"
@@ -39,10 +48,12 @@
39
48
  "access": "public"
40
49
  },
41
50
  "engines": {
42
- "node": ">=20.0.0"
51
+ "node": ">=22.0.0"
43
52
  },
44
53
  "packageManager": "pnpm@10.30.2",
45
54
  "n8n": {
55
+ "n8nNodesApiVersion": 1,
56
+ "strict": true,
46
57
  "credentials": [
47
58
  "dist/credentials/PlanningCenterPatApi.credentials.js"
48
59
  ],
@@ -65,16 +76,17 @@
65
76
  },
66
77
  "devDependencies": {
67
78
  "@apidevtools/swagger-parser": "^10.1.0",
68
- "@types/node": "^20.19.8",
69
- "@typescript-eslint/eslint-plugin": "^7.18.0",
70
- "@typescript-eslint/parser": "^7.18.0",
71
- "eslint": "^8.57.1",
72
- "eslint-plugin-n8n-nodes-base": "^1.16.3",
79
+ "@eslint/js": "^9.29.0",
80
+ "@n8n/node-cli": "0.39.3",
81
+ "@types/node": "^22.20.1",
82
+ "eslint": "^9.29.0",
73
83
  "inflection": "^3.0.2",
74
84
  "n8n-workflow": "*",
75
- "prettier": "^3.6.2",
85
+ "prettier": "^3.8.3",
86
+ "release-it": "20.2.0",
76
87
  "tsx": "^4.20.3",
77
- "typescript": "^5.8.3",
88
+ "typescript": "5.9.3",
89
+ "typescript-eslint": "^8.64.0",
78
90
  "vitest": "^2.1.9"
79
91
  }
80
92
  }
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-label="Planning Center placeholder icon">
2
- <rect width="64" height="64" rx="14" fill="#1f6feb"/>
3
- <path fill="#fff" d="M18 18h17c7 0 12 5 12 12s-5 12-12 12h-8v8h-9V18Zm9 8v8h7c2 0 4-2 4-4s-2-4-4-4h-7Z"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-label="Planning Center placeholder icon">
2
- <rect width="64" height="64" rx="14" fill="#1f6feb"/>
3
- <path fill="#fff" d="M18 18h17c7 0 12 5 12 12s-5 12-12 12h-8v8h-9V18Zm9 8v8h7c2 0 4-2 4-4s-2-4-4-4h-7Z"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-label="Planning Center placeholder icon">
2
- <rect width="64" height="64" rx="14" fill="#1f6feb"/>
3
- <path fill="#fff" d="M18 18h17c7 0 12 5 12 12s-5 12-12 12h-8v8h-9V18Zm9 8v8h7c2 0 4-2 4-4s-2-4-4-4h-7Z"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-label="Planning Center placeholder icon">
2
- <rect width="64" height="64" rx="14" fill="#1f6feb"/>
3
- <path fill="#fff" d="M18 18h17c7 0 12 5 12 12s-5 12-12 12h-8v8h-9V18Zm9 8v8h7c2 0 4-2 4-4s-2-4-4-4h-7Z"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-label="Planning Center placeholder icon">
2
- <rect width="64" height="64" rx="14" fill="#1f6feb"/>
3
- <path fill="#fff" d="M18 18h17c7 0 12 5 12 12s-5 12-12 12h-8v8h-9V18Zm9 8v8h7c2 0 4-2 4-4s-2-4-4-4h-7Z"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-label="Planning Center placeholder icon">
2
- <rect width="64" height="64" rx="14" fill="#1f6feb"/>
3
- <path fill="#fff" d="M18 18h17c7 0 12 5 12 12s-5 12-12 12h-8v8h-9V18Zm9 8v8h7c2 0 4-2 4-4s-2-4-4-4h-7Z"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-label="Planning Center placeholder icon">
2
- <rect width="64" height="64" rx="14" fill="#1f6feb"/>
3
- <path fill="#fff" d="M18 18h17c7 0 12 5 12 12s-5 12-12 12h-8v8h-9V18Zm9 8v8h7c2 0 4-2 4-4s-2-4-4-4h-7Z"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-label="Planning Center placeholder icon">
2
- <rect width="64" height="64" rx="14" fill="#1f6feb"/>
3
- <path fill="#fff" d="M18 18h17c7 0 12 5 12 12s-5 12-12 12h-8v8h-9V18Zm9 8v8h7c2 0 4-2 4-4s-2-4-4-4h-7Z"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-label="Planning Center placeholder icon">
2
- <rect width="64" height="64" rx="14" fill="#1f6feb"/>
3
- <path fill="#fff" d="M18 18h17c7 0 12 5 12 12s-5 12-12 12h-8v8h-9V18Zm9 8v8h7c2 0 4-2 4-4s-2-4-4-4h-7Z"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-label="Planning Center placeholder icon">
2
- <rect width="64" height="64" rx="14" fill="#1f6feb"/>
3
- <path fill="#fff" d="M18 18h17c7 0 12 5 12 12s-5 12-12 12h-8v8h-9V18Zm9 8v8h7c2 0 4-2 4-4s-2-4-4-4h-7Z"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-label="Planning Center placeholder icon">
2
- <rect width="64" height="64" rx="14" fill="#1f6feb"/>
3
- <path fill="#fff" d="M18 18h17c7 0 12 5 12 12s-5 12-12 12h-8v8h-9V18Zm9 8v8h7c2 0 4-2 4-4s-2-4-4-4h-7Z"/>
4
- </svg>