@declaro/redis 2.0.0-beta.69 → 2.0.0-beta.71

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@declaro/redis",
3
- "version": "2.0.0-beta.69",
3
+ "version": "2.0.0-beta.71",
4
4
  "description": "Redis tools for Declaro",
5
5
  "main": "dist/node/index.cjs",
6
6
  "module": "dist/browser/index.js",
@@ -22,7 +22,7 @@
22
22
  "typecheck": "bun tsc --noEmit"
23
23
  },
24
24
  "devDependencies": {
25
- "@declaro/core": "^2.0.0-beta.69",
25
+ "@declaro/core": "^2.0.0-beta.71",
26
26
  "@types/ioredis-mock": "^8.2.5",
27
27
  "@vitest/coverage-v8": "^0.32.2",
28
28
  "ioredis": "^5.5.0",
@@ -45,7 +45,7 @@
45
45
  "url": "https://github.com/emmertio/declaro/issues"
46
46
  },
47
47
  "homepage": "https://github.com/emmertio/declaro/tree/main#readme",
48
- "gitHead": "311cc08b2553ea21914ba15e1e06f5ca850d76d0",
48
+ "gitHead": "8edabee919f87a9d7710fee561483cd6578756a0",
49
49
  "exports": {
50
50
  "import": "./dist/node/index.js",
51
51
  "require": "./dist/node/index.cjs",
package/scripts/build.ts CHANGED
@@ -1,34 +1,68 @@
1
1
  import { build } from 'bun'
2
2
  import { resolve } from 'path'
3
+ import packageJson from '../package.json'
4
+
5
+ /**
6
+ * Get all packages that should be external from dependencies, peerDependencies, and optionalDependencies
7
+ * Packages in devDependencies will be bundled
8
+ */
9
+ const getExternalPackages = (): string[] => {
10
+ const pkg = packageJson as any
11
+ const dependencyKeys: string[] = []
12
+
13
+ // Add dependencies if they exist
14
+ if (pkg.dependencies && typeof pkg.dependencies === 'object') {
15
+ dependencyKeys.push(...Object.keys(pkg.dependencies))
16
+ }
17
+
18
+ // Add peerDependencies if they exist
19
+ if (pkg.peerDependencies && typeof pkg.peerDependencies === 'object') {
20
+ dependencyKeys.push(...Object.keys(pkg.peerDependencies))
21
+ }
22
+
23
+ // Add optionalDependencies if they exist
24
+ if (pkg.optionalDependencies && typeof pkg.optionalDependencies === 'object') {
25
+ dependencyKeys.push(...Object.keys(pkg.optionalDependencies))
26
+ }
27
+
28
+ // Remove duplicates and return
29
+ return [...new Set(dependencyKeys)]
30
+ }
31
+
32
+ const externalPackages = getExternalPackages()
3
33
 
4
34
  const defaults = {
5
35
  entrypoints: [resolve(__dirname, '../src/index.ts')],
6
36
  }
7
37
 
8
38
  await Promise.all([
39
+ // CommonJS build for Node.js - externalize all dependencies and peerDependencies
9
40
  build({
10
41
  ...defaults,
11
42
  target: 'node',
12
43
  format: 'cjs',
13
- splitting: true,
14
44
  outdir: 'dist/node',
15
45
  sourcemap: 'linked',
16
46
  naming: '[dir]/[name].cjs',
47
+ external: externalPackages,
17
48
  }),
49
+ // ES modules build for Node.js - same externals as CommonJS
18
50
  build({
19
51
  ...defaults,
20
52
  target: 'node',
21
53
  format: 'esm',
22
- splitting: true,
23
54
  outdir: 'dist/node',
24
55
  sourcemap: 'linked',
25
56
  naming: '[dir]/[name].js',
57
+ external: externalPackages,
26
58
  }),
59
+ // Browser build - same external behavior for consistency
27
60
  build({
28
61
  ...defaults,
29
- target: 'bun',
30
- splitting: true,
31
- outdir: 'dist/bun',
62
+ target: 'browser',
63
+ outdir: 'dist/browser',
32
64
  sourcemap: 'linked',
65
+ minify: true,
66
+ external: externalPackages,
33
67
  }),
34
68
  ])