kirbyup 3.0.1 → 3.1.0-beta.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/LICENSE CHANGED
@@ -1,7 +1,7 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2021-2023 Johann Schopplich <https://github.com/johannschopplich>
4
- Copyright (c) 2022-2023 Jonas Kuske <https://github.com/jonaskuske>
3
+ Copyright (c) 2021-PRESENT Johann Schopplich <https://github.com/johannschopplich>
4
+ Copyright (c) 2022-PRESENT Jonas Kuske <https://github.com/jonaskuske>
5
5
 
6
6
  Permission is hereby granted, free of charge, to any person obtaining a copy
7
7
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -1,5 +1,6 @@
1
1
  # kirbyup
2
2
 
3
+ > [!TIP]
3
4
  > Take a look into Kirby's [pluginkit](https://github.com/getkirby/pluginkit/tree/4-panel) repository for an example setup.
4
5
 
5
6
  The fastest and leanest way to bundle your Kirby Panel plugins. No configuration necessary.
@@ -23,9 +24,10 @@ The fastest and leanest way to bundle your Kirby Panel plugins. No configuration
23
24
 
24
25
  … With one of the following Panel plugin kits:
25
26
 
26
- - [`eslint-and-prettier`](./examples/eslint-and-prettier) (recommended)
27
+ - [`eslint`](./examples/eslint)
27
28
  - [`tailwindcss`](./examples/tailwindcss)
28
- - [Kirby's default `pluginkit`](https://github.com/getkirby/pluginkit/tree/4-panel)
29
+
30
+ I highly recommend using one of these starters instead of [Kirby's default `pluginkit`](https://github.com/getkirby/pluginkit/tree/4-panel). They provide a better developer experience out of the box.
29
31
 
30
32
  ## Installation
31
33
 
@@ -41,6 +43,7 @@ If you want to use kirbyup right away, there is no need to install it. Simply ca
41
43
  }
42
44
  ```
43
45
 
46
+ > [!NOTE]
44
47
  > If `npx` doesn't use the latest kirbyup version, although it is available, run `npx -y kirbyup@latest` instead or delete the `~/.npm/_npx` cache folder.
45
48
 
46
49
  While kirbyup will stay backwards compatible, exact build reproducibility may be of importance to you. If so, I recommend targeting a specific package version, rather than using `npx`. Install kirbyup with a package manager of your choice locally to your project:
@@ -72,7 +75,8 @@ Global installation is supported as well, but not recommended.
72
75
 
73
76
  Start a development server for the Panel plugin:
74
77
 
75
- > ℹ️ This feature requires Kirby v3.7.4+.
78
+ > [!NOTE]
79
+ > This feature requires Kirby v3.7.4+.
76
80
 
77
81
  ```bash
78
82
  kirbyup serve src/index.js
@@ -122,7 +126,8 @@ You can use the alias:
122
126
  import someUtility from '~/utils'
123
127
  ```
124
128
 
125
- > ℹ️ You can use `@/` as path alias as well.
129
+ > [!TIP]
130
+ > You can use `@/` as path alias as well.
126
131
 
127
132
  ### Auto-Import Blocks and Fields
128
133
 
@@ -172,7 +177,7 @@ Loaded env variables are also exposed to your source code via `import.meta.env`.
172
177
 
173
178
  To prevent accidentally leaking env variables for distribution, only variables prefixed with `KIRBYUP_` or `VITE_` are exposed to your processed code. Take the following file as an example:
174
179
 
175
- ```
180
+ ```ini
176
181
  DB_PASSWORD=foobar
177
182
  KIRBYUP_SOME_KEY=123
178
183
  ```
@@ -215,6 +220,7 @@ For a complete list of options, take a look at the [Vite configuration options](
215
220
 
216
221
  ## Options
217
222
 
223
+ > [!TIP]
218
224
  > Inspect all available options with `kirbyup --help` and `kirbyup serve --help`.
219
225
 
220
226
  ### `kirbyup <input>`
@@ -241,7 +247,8 @@ The output directory where the plugin file read by Kirby is saved. Defaults to t
241
247
 
242
248
  Specifies additional files that should be watched for changes, with changes causing the page to reload. Repeat `--watch` for multiple paths.
243
249
 
244
- > 💡 By default, kirbyup will watch all PHP files (`./**/*.php`) in the plugin directory and reload the page if it detects changes. Using `--watch` to set your own path overrides this setting, so you need to add the PHP glob explicitly if you want to keep the behavior: `--watch ./my/files/* --watch ./**/*.php`
250
+ > [!NOTE]
251
+ > By default, kirbyup will watch all PHP files (`./**/*.php`) in the plugin directory and reload the page if it detects changes. Using `--watch` to set your own path overrides this setting, so you need to add the PHP glob explicitly if you want to keep the behavior: `--watch ./my/files/* --watch ./**/*.php`
245
252
 
246
253
  ##### `--no-watch`
247
254
 
@@ -254,6 +261,6 @@ Disables the default behavior of watching all PHP files for changes.
254
261
 
255
262
  ## License
256
263
 
257
- [MIT](./LICENSE) License © 2021-2023 [Johann Schopplich](https://github.com/johannschopplich)
264
+ [MIT](./LICENSE) License © 2021-PRESENT [Johann Schopplich](https://github.com/johannschopplich)
258
265
 
259
- [MIT](./LICENSE) License © 2022-2023 [Jonas Kuske](https://github.com/jonaskuske)
266
+ [MIT](./LICENSE) License © 2022-PRESENT [Jonas Kuske](https://github.com/jonaskuske)
package/dist/node/cli.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { cac } from 'cac';
2
- import { n as name, b as build, s as serve, v as version, h as handleError } from '../shared/kirbyup.40eb0c24.mjs';
2
+ import { n as name, b as build, s as serve, v as version, h as handleError } from '../shared/kirbyup.ca743799.mjs';
3
3
  import 'node:fs';
4
4
  import 'node:fs/promises';
5
5
  import 'pathe';
@@ -18,7 +18,7 @@ import 'postcss-dir-pseudo-class';
18
18
  import 'node:zlib';
19
19
  import 'node:util';
20
20
  import 'node:buffer';
21
- import 'unconfig';
21
+ import 'c12';
22
22
  import 'magic-string';
23
23
  import 'detect-package-manager';
24
24
 
@@ -13,10 +13,10 @@ import 'rollup-plugin-external-globals';
13
13
  import 'postcss-load-config';
14
14
  import 'postcss-logical';
15
15
  import 'postcss-dir-pseudo-class';
16
- export { b as build, s as serve } from '../shared/kirbyup.40eb0c24.mjs';
16
+ export { b as build, s as serve } from '../shared/kirbyup.ca743799.mjs';
17
17
  import 'node:zlib';
18
18
  import 'node:util';
19
19
  import 'node:buffer';
20
- import 'unconfig';
20
+ import 'c12';
21
21
  import 'magic-string';
22
22
  import 'detect-package-manager';
@@ -1,4 +1,4 @@
1
- import { existsSync, statSync, unlinkSync } from 'node:fs';
1
+ import { existsSync, unlinkSync } from 'node:fs';
2
2
  import { writeFile, readFile } from 'node:fs/promises';
3
3
  import { normalize, relative, resolve, dirname, basename } from 'pathe';
4
4
  import { consola } from 'consola';
@@ -16,12 +16,12 @@ import postcssDirPseudoClass from 'postcss-dir-pseudo-class';
16
16
  import { gzip } from 'node:zlib';
17
17
  import { promisify } from 'node:util';
18
18
  import { Buffer } from 'node:buffer';
19
- import { createConfigLoader } from 'unconfig';
19
+ import { loadConfig as loadConfig$1 } from 'c12';
20
20
  import MagicString from 'magic-string';
21
21
  import { detect } from 'detect-package-manager';
22
22
 
23
23
  const name = "kirbyup";
24
- const version = "3.0.1";
24
+ const version = "3.1.0-beta.0";
25
25
 
26
26
  class PrettyError extends Error {
27
27
  constructor(message) {
@@ -59,43 +59,16 @@ async function printFileInfo(root, outDir, filePath, content, type, maxLength) {
59
59
  );
60
60
  }
61
61
 
62
- async function loadConfig(cwd = process.cwd(), configOrPath = cwd, extraConfigSources = []) {
63
- let inlineConfig = {};
64
- if (typeof configOrPath !== "string") {
65
- inlineConfig = configOrPath;
66
- if (inlineConfig.configFile === false) {
67
- return {
68
- config: inlineConfig,
69
- sources: []
70
- };
71
- } else {
72
- configOrPath = inlineConfig.configFile || process.cwd();
73
- }
74
- }
75
- const resolved = resolve(configOrPath);
76
- let isFile = false;
77
- if (existsSync(resolved) && statSync(resolved).isFile()) {
78
- isFile = true;
79
- cwd = dirname(resolved);
80
- }
81
- const loader = createConfigLoader({
82
- sources: isFile ? [
83
- {
84
- files: resolved,
85
- extensions: []
86
- }
87
- ] : [
88
- {
89
- files: ["kirbyup.config"]
90
- },
91
- ...extraConfigSources
92
- ],
62
+ function loadConfig(cwd = process.cwd()) {
63
+ return loadConfig$1({
93
64
  cwd,
94
- defaults: inlineConfig
65
+ name: "kirbyup",
66
+ rcFile: false,
67
+ jitiOptions: {
68
+ interopDefault: true,
69
+ esmResolve: true
70
+ }
95
71
  });
96
- const result = await loader.load();
97
- result.config = result.config || inlineConfig;
98
- return result;
99
72
  }
100
73
 
101
74
  const multilineCommentsRE = /\/\*(.|[\r\n])*?\*\//gm;
@@ -362,8 +335,8 @@ async function generate(options) {
362
335
  async function build(options) {
363
336
  ensureEntry(options);
364
337
  const { cwd } = options;
365
- const { config, sources: configSources } = await loadConfig(cwd);
366
- resolvedKirbyupConfig = config;
338
+ const { config, configFile } = await loadConfig(cwd);
339
+ resolvedKirbyupConfig = config ?? {};
367
340
  try {
368
341
  resolvedPostCssConfig = await postcssrc(void 0, void 0, { stopDir: cwd });
369
342
  } catch (err) {
@@ -404,11 +377,11 @@ async function build(options) {
404
377
  ignored,
405
378
  cwd
406
379
  });
407
- if (configSources.length)
408
- watcher.add(configSources);
380
+ if (configFile)
381
+ watcher.add(configFile);
409
382
  watcher.on("all", async (type, file) => {
410
- if (configSources.includes(file)) {
411
- resolvedKirbyupConfig = (await loadConfig()).config;
383
+ if (configFile === file) {
384
+ resolvedKirbyupConfig = (await loadConfig(cwd)).config ?? {};
412
385
  consola.info(
413
386
  `${colors.cyan(basename(file))} changed, setting new config`
414
387
  );
@@ -426,7 +399,7 @@ async function serve(options) {
426
399
  ensureEntry(options);
427
400
  const { cwd } = options;
428
401
  const { config } = await loadConfig(cwd);
429
- resolvedKirbyupConfig = config;
402
+ resolvedKirbyupConfig = config ?? {};
430
403
  try {
431
404
  resolvedPostCssConfig = await postcssrc(void 0, void 0, { stopDir: cwd });
432
405
  } catch (err) {
package/package.json CHANGED
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "name": "kirbyup",
3
- "version": "3.0.1",
4
- "packageManager": "pnpm@8.7.4",
3
+ "type": "module",
4
+ "version": "3.1.0-beta.0",
5
+ "packageManager": "pnpm@8.11.0",
5
6
  "description": "Zero-config bundler for Kirby Panel plugins",
6
7
  "author": {
7
8
  "name": "Johann Schopplich",
@@ -55,11 +56,11 @@
55
56
  "dist"
56
57
  ],
57
58
  "engines": {
58
- "node": ">=16"
59
+ "node": ">=18"
59
60
  },
60
61
  "scripts": {
61
62
  "build": "unbuild",
62
- "dev": "STUB=true unbuild",
63
+ "dev": "UNBUILD_STUB=true unbuild",
63
64
  "lint": "eslint .",
64
65
  "lint:fix": "eslint . --fix",
65
66
  "release": "bumpp --commit --push --tag",
@@ -70,38 +71,38 @@
70
71
  "dependencies": {
71
72
  "@vitejs/plugin-vue2": "2.2.0",
72
73
  "@vitejs/plugin-vue2-jsx": "1.1.0",
73
- "@vue/compiler-sfc": "^2.7.14",
74
+ "@vue/compiler-sfc": "^2.7.15",
75
+ "c12": "^1.5.1",
74
76
  "cac": "^6.7.14",
75
77
  "chokidar": "^3.5.3",
76
78
  "consola": "^3.2.3",
77
79
  "detect-package-manager": "^3.0.1",
78
- "magic-string": "^0.30.3",
80
+ "magic-string": "^0.30.5",
79
81
  "pathe": "^1.1.1",
80
82
  "perfect-debounce": "^1.0.0",
81
- "postcss": "^8.4.29",
83
+ "postcss": "^8.4.32",
82
84
  "postcss-dir-pseudo-class": "^8.0.0",
83
- "postcss-load-config": "^4.0.1",
85
+ "postcss-load-config": "^5.0.2",
84
86
  "postcss-logical": "^7.0.0",
85
- "rollup-plugin-external-globals": "^0.8.0",
86
- "sass": "^1.66.1",
87
- "unconfig": "^0.3.10",
88
- "vite": "^4.4.9",
89
- "vite-plugin-full-reload": "^1.0.5",
90
- "vue": "^2.7.14"
87
+ "rollup-plugin-external-globals": "^0.9.1",
88
+ "sass": "^1.69.5",
89
+ "vite": "^5.0.6",
90
+ "vite-plugin-full-reload": "^1.1.0",
91
+ "vue": "^2.7.15"
91
92
  },
92
93
  "devDependencies": {
93
- "@antfu/eslint-config": "^0.41.0",
94
- "@types/fs-extra": "^11.0.1",
95
- "@types/node": "^18.17.15",
96
- "@types/prompts": "^2.4.4",
94
+ "@antfu/eslint-config": "^2.3.4",
95
+ "@types/fs-extra": "^11.0.4",
96
+ "@types/node": "^20.10.4",
97
+ "@types/prompts": "^2.4.9",
97
98
  "bumpp": "^9.2.0",
98
- "eslint": "^8.49.0",
99
- "fast-glob": "^3.3.1",
100
- "fs-extra": "^11.1.1",
99
+ "eslint": "^8.55.0",
100
+ "fast-glob": "^3.3.2",
101
+ "fs-extra": "^11.2.0",
101
102
  "simple-git-hooks": "^2.9.0",
102
- "typescript": "~5.2.2",
103
+ "typescript": "~5.3.3",
103
104
  "unbuild": "^2.0.0",
104
- "vitest": "^0.34.4"
105
+ "vitest": "^1.0.1"
105
106
  },
106
107
  "simple-git-hooks": {
107
108
  "commit-msg": "node scripts/verifyCommit.mjs $1"