@ui-doc/vite 0.3.0 → 0.3.2

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/dist/index.cjs CHANGED
@@ -85,48 +85,71 @@ picocolors.exports.createColors = createColors;
85
85
  var picocolorsExports = picocolors.exports;
86
86
  var pc = /*@__PURE__*/getDefaultExportFromCjs(picocolorsExports);
87
87
 
88
- var version = "0.2.1";
88
+ var version = "0.3.2";
89
89
 
90
- /* eslint-disable sort-keys */
91
90
  const PLUGIN_NAME = 'ui-doc';
91
+ /**
92
+ * Delay in milliseconds before logging server ready message.
93
+ * Allows Vite's own logging to complete first for cleaner output.
94
+ */
95
+ const SERVER_READY_LOG_DELAY_MS = 300;
96
+ /**
97
+ * Resolves plugin options with defaults.
98
+ * Returns a new object to avoid mutating the input.
99
+ */
92
100
  function resolveOptions(options) {
93
- var _a, _b;
94
- options.output = (_a = options.output) !== null && _a !== void 0 ? _a : {};
95
- options.output.dir = (_b = options.output.dir) !== null && _b !== void 0 ? _b : 'ui-doc';
96
- return options;
101
+ return {
102
+ ...options,
103
+ output: {
104
+ ...options.output,
105
+ dir: options.output?.dir ?? 'ui-doc',
106
+ },
107
+ };
97
108
  }
98
- function prepareServe(plugin) {
99
- var _a, _b, _c, _d;
100
- if ((_a = plugin.api) === null || _a === void 0 ? void 0 : _a.options.prefix.uri) {
101
- // replace resolveUrl to make sure that all urls (pages and assets) are generated correctly for vite server
102
- (_b = plugin.api) === null || _b === void 0 ? void 0 : _b.uidoc.replaceGenerate('resolve', (uri, type) => {
103
- var _a, _b;
109
+ function prepareServe(api) {
110
+ if (api.options.prefix.uri) {
111
+ // replace resolveUrl to make sure that all urls (pages and assets) are generated correctly
112
+ // for vite server
113
+ api.uidoc.replaceGenerate('resolve', (uri, type) => {
104
114
  // don't add prefix if asset is from vite
105
- return ['asset', 'asset-example'].includes(type) &&
106
- // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
107
- (((_a = plugin.api) === null || _a === void 0 ? void 0 : _a.isAssetFromInput(uri)) || uri.startsWith('@'))
115
+ return ['asset', 'asset-example'].includes(type) && (api.isAssetFromInput(uri) || uri.startsWith('@'))
108
116
  ? `/${uri}`
109
- : `/${(_b = plugin.api) === null || _b === void 0 ? void 0 : _b.options.prefix.uri}${uri}`;
117
+ : `/${api.options.prefix.uri}${uri}`;
110
118
  });
111
119
  }
112
120
  // register all assets to ui-doc
113
- (_c = plugin.api) === null || _c === void 0 ? void 0 : _c.options.assets.forEach(({ fileName, context, attrs, fromInput = false }) => {
114
- var _a;
115
- (_a = plugin.api) === null || _a === void 0 ? void 0 : _a.uidocAsset(fileName, context, { attrs, fromInput });
121
+ api.options.assets.forEach(({ fileName, context, attrs, fromInput = false }) => {
122
+ api.uidocAsset(fileName, context, { attrs, fromInput });
116
123
  });
117
124
  // add vite client script to ui-doc
118
- (_d = plugin.api) === null || _d === void 0 ? void 0 : _d.uidocAsset('@vite/client', 'page', { attrs: { type: 'module' }, type: 'script' });
125
+ api.uidocAsset('@vite/client', 'page', { attrs: { type: 'module' }, type: 'script' });
119
126
  }
127
+ /**
128
+ * Creates a UI-Doc Vite plugin for generating interactive UI documentation.
129
+ *
130
+ * @param rawOptions - Configuration options for the plugin
131
+ * @returns A configured Vite plugin instance
132
+ *
133
+ * @example
134
+ * ```ts
135
+ * import uidoc from '@ui-doc/vite'
136
+ *
137
+ * export default defineConfig({
138
+ * plugins: [uidoc({ source: 'src/**\/*.css' })]
139
+ * })
140
+ * ```
141
+ */
120
142
  async function uidocPlugin(rawOptions) {
121
143
  const options = resolveOptions(rawOptions);
122
144
  const plugin = (await createRollupPlugin(options));
123
145
  let serving = false;
124
146
  plugin.name = PLUGIN_NAME;
125
147
  plugin.version = version;
126
- if (!plugin.api) {
148
+ const api = plugin.api;
149
+ if (!api) {
127
150
  throw new Error('UI-Doc rollup plugin API is not available');
128
151
  }
129
- plugin.api.version = version;
152
+ api.version = version;
130
153
  plugin.onLog = (_level, log) => {
131
154
  // hide rollup output logs
132
155
  if (log.plugin === createRollupPlugin.PLUGIN_NAME && log.pluginCode === 'OUTPUT') {
@@ -143,40 +166,42 @@ async function uidocPlugin(rawOptions) {
143
166
  await orgBuildStart.call(this, inputOptions);
144
167
  }
145
168
  if (serving) {
146
- prepareServe(plugin);
169
+ prepareServe(api);
147
170
  }
148
171
  };
149
172
  plugin.generateBundle = async function (outputOptions, bundle, isWrite) {
150
- var _a;
151
173
  // find and set the correct file name for each asset
152
- (_a = plugin.api) === null || _a === void 0 ? void 0 : _a.options.assets.filter(asset => asset.fromInput).forEach(asset => {
153
- var _a, _b, _c;
174
+ api.options.assets
175
+ .filter(asset => asset.fromInput)
176
+ .forEach(asset => {
154
177
  const foundBundle = Object.values(bundle).find(({ name }) => name === asset.name);
155
178
  if (!foundBundle) {
156
179
  return;
157
180
  }
158
181
  // copy imported assets from vite into UI-Doc output
159
- if ((_a = foundBundle === null || foundBundle === void 0 ? void 0 : foundBundle.viteMetadata) === null || _a === void 0 ? void 0 : _a.importedAssets) {
182
+ if (foundBundle.viteMetadata?.importedAssets) {
160
183
  foundBundle.viteMetadata.importedAssets.forEach((importedAsset) => {
161
- var _a;
162
- (_a = plugin.api) === null || _a === void 0 ? void 0 : _a.addAssetFromInput(importedAsset);
184
+ api.addAssetFromInput(importedAsset);
163
185
  });
164
186
  }
165
187
  if (asset.type === 'script') {
166
- asset.fileName = foundBundle.fileName;
167
- // copy imported css files to ui-doc
168
- if ((_b = foundBundle === null || foundBundle === void 0 ? void 0 : foundBundle.viteMetadata) === null || _b === void 0 ? void 0 : _b.importedCss) {
188
+ if (foundBundle.fileName !== undefined && foundBundle.fileName !== '') {
189
+ asset.fileName = foundBundle.fileName;
190
+ }
191
+ // copy and register imported css files to ui-doc
192
+ if (foundBundle.viteMetadata?.importedCss) {
169
193
  foundBundle.viteMetadata.importedCss.forEach((imported) => {
170
- var _a;
171
- (_a = plugin.api) === null || _a === void 0 ? void 0 : _a.addAssetFromInput(imported);
194
+ api.addAssetFromInput(imported);
195
+ api.uidocAsset(imported, asset.context, { type: 'style' });
172
196
  });
173
197
  }
174
198
  return;
175
199
  }
176
- if (asset.type === 'style' &&
177
- ((_c = foundBundle === null || foundBundle === void 0 ? void 0 : foundBundle.viteMetadata) === null || _c === void 0 ? void 0 : _c.importedCss) &&
178
- foundBundle.viteMetadata.importedCss.size > 0) {
179
- asset.fileName = foundBundle.viteMetadata.importedCss.values().next().value;
200
+ if (asset.type === 'style'
201
+ && foundBundle.viteMetadata?.importedCss
202
+ && foundBundle.viteMetadata.importedCss.size > 0) {
203
+ const firstCss = foundBundle.viteMetadata.importedCss.values().next().value;
204
+ asset.fileName = firstCss;
180
205
  }
181
206
  });
182
207
  if (orgGenerateBundle) {
@@ -184,33 +209,26 @@ async function uidocPlugin(rawOptions) {
184
209
  }
185
210
  };
186
211
  plugin.configureServer = async function (server) {
187
- var _a, _b, _c, _d, _e, _f, _g;
188
- const uidoc = (_a = plugin.api) === null || _a === void 0 ? void 0 : _a.uidoc;
189
- const uriPrefix = (_b = plugin.api) === null || _b === void 0 ? void 0 : _b.options.prefix.uri;
190
- const assets = (_d = (_c = plugin.api) === null || _c === void 0 ? void 0 : _c.options.assets) !== null && _d !== void 0 ? _d : [];
191
- const staticAssets = (_f = (_e = plugin.api) === null || _e === void 0 ? void 0 : _e.options.staticAssets) !== null && _f !== void 0 ? _f : undefined;
192
- if (!uidoc) {
193
- throw new Error('UI-Doc API is not available');
194
- }
212
+ const uidoc = api.uidoc;
213
+ const uriPrefix = api.options.prefix.uri;
214
+ const assets = api.options.assets ?? [];
215
+ const staticAssets = api.options.staticAssets ?? undefined;
195
216
  if (!uriPrefix) {
196
217
  throw new Error('UI-Doc base url is not available. Please don\'t set "outputBaseUri" to "." in dev mode.');
197
218
  }
219
+ const regexIndex = new RegExp(`^/${uriPrefix}?$`);
198
220
  const regexPage = new RegExp(`^/${uriPrefix}([a-z0-9_\\-]+).html$`);
199
221
  const regexExample = new RegExp(`^/${uriPrefix}examples/([a-z0-9_\\-]+).html$`);
200
222
  const regexAsset = new RegExp(`^/${uriPrefix}([a-z0-9\\._\\-]+)$`);
201
223
  server.middlewares.use((req, res, next) => {
202
- var _a, _b;
224
+ const originalUrl = req.originalUrl ?? '';
203
225
  // only handle requests that start with the path prefix
204
- if (!((_a = req.originalUrl) === null || _a === void 0 ? void 0 : _a.startsWith(`/${uriPrefix}`))) {
226
+ if (!originalUrl.startsWith(`/${uriPrefix}`)) {
205
227
  return next();
206
228
  }
207
- if (req.originalUrl.match(new RegExp(`^/${uriPrefix}?$`))) {
208
- res.write(uidoc.page('index'));
209
- res.end();
210
- return;
211
- }
212
229
  const writeContent = (content) => {
213
- if (content) {
230
+ if (content !== null) {
231
+ res.setHeader('Content-Type', 'text/html; charset=utf-8');
214
232
  res.write(content);
215
233
  }
216
234
  else {
@@ -218,18 +236,22 @@ async function uidocPlugin(rawOptions) {
218
236
  }
219
237
  res.end();
220
238
  };
221
- const pageMatch = req.originalUrl.match(regexPage);
239
+ if (originalUrl.match(regexIndex)) {
240
+ writeContent(uidoc.page('index'));
241
+ return;
242
+ }
243
+ const pageMatch = originalUrl.match(regexPage);
222
244
  if (pageMatch) {
223
245
  writeContent(uidoc.page(pageMatch[1]));
224
246
  return;
225
247
  }
226
- const exampleMatch = req.originalUrl.match(regexExample);
248
+ const exampleMatch = originalUrl.match(regexExample);
227
249
  if (exampleMatch) {
228
250
  writeContent(uidoc.example(exampleMatch[1]));
229
251
  return;
230
252
  }
231
- if (req.originalUrl.match(regexAsset)) {
232
- const assetName = req.originalUrl.replace(`/${uriPrefix}`, '');
253
+ if (originalUrl.match(regexAsset)) {
254
+ const assetName = originalUrl.replace(`/${uriPrefix}`, '');
233
255
  const asset = assets.find(entry => entry.name === assetName);
234
256
  if (asset) {
235
257
  res.write(asset.source);
@@ -237,33 +259,35 @@ async function uidocPlugin(rawOptions) {
237
259
  return;
238
260
  }
239
261
  }
240
- const fileSystem = (_b = plugin.api) === null || _b === void 0 ? void 0 : _b.fileSystem;
241
- if (!staticAssets || !fileSystem) {
262
+ const fileSystem = api.fileSystem;
263
+ if (staticAssets === undefined || fileSystem === undefined) {
242
264
  return next();
243
265
  }
244
- const assetName = req.originalUrl.replace(`/${uriPrefix}`, '').split('?')[0];
266
+ const assetName = originalUrl.replace(`/${uriPrefix}`, '').split('?')[0];
245
267
  const assetFile = `${staticAssets}/${assetName}`;
246
268
  fileSystem
247
269
  .fileExists(assetFile)
248
- .then(exists => {
270
+ .then((exists) => {
249
271
  if (exists) {
250
272
  req.url = `/@fs${path.resolve(assetFile)}`;
251
273
  }
274
+ })
275
+ .catch((error) => {
276
+ server.config.logger.error(`UI-Doc: Error checking asset file: ${String(error)}`);
252
277
  })
253
278
  .finally(() => {
254
279
  next();
255
280
  });
256
281
  });
257
- (_g = server.httpServer) === null || _g === void 0 ? void 0 : _g.once('listening', () => {
282
+ server.httpServer?.once('listening', () => {
258
283
  setTimeout(() => {
259
- var _a;
260
284
  server.config.logger.info(`\n ${pc.green(`${pc.bold('UI-Doc')} v${version}`)} under /${pc.gray(uriPrefix)} \n`);
261
- if (Array.isArray((_a = server.resolvedUrls) === null || _a === void 0 ? void 0 : _a.local)) {
285
+ if (Array.isArray(server.resolvedUrls?.local)) {
262
286
  server.resolvedUrls.local.forEach(url => {
263
287
  server.config.logger.info(` ${pc.green('➜')} ${pc.bold('Local')}: ${pc.cyan(`${url}${uriPrefix}`)}`);
264
288
  });
265
289
  }
266
- }, 300);
290
+ }, SERVER_READY_LOG_DELAY_MS);
267
291
  uidoc.on('context-entry', () => {
268
292
  server.ws.send({ type: 'full-reload', path: `/${uriPrefix}*` });
269
293
  });
@@ -273,4 +297,5 @@ async function uidocPlugin(rawOptions) {
273
297
  }
274
298
 
275
299
  exports.default = uidocPlugin;
300
+ if (exports.default) { module.exports = Object.assign(exports.default, exports); }
276
301
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../node_modules/.pnpm/picocolors@1.0.1/node_modules/picocolors/picocolors.js","../src/index.ts"],"sourcesContent":["let argv = process.argv || [],\n\tenv = process.env\nlet isColorSupported =\n\t!(\"NO_COLOR\" in env || argv.includes(\"--no-color\")) &&\n\t(\"FORCE_COLOR\" in env ||\n\t\targv.includes(\"--color\") ||\n\t\tprocess.platform === \"win32\" ||\n\t\t(require != null && require(\"tty\").isatty(1) && env.TERM !== \"dumb\") ||\n\t\t\"CI\" in env)\n\nlet formatter =\n\t(open, close, replace = open) =>\n\tinput => {\n\t\tlet string = \"\" + input\n\t\tlet index = string.indexOf(close, open.length)\n\t\treturn ~index\n\t\t\t? open + replaceClose(string, close, replace, index) + close\n\t\t\t: open + string + close\n\t}\n\nlet replaceClose = (string, close, replace, index) => {\n\tlet result = \"\"\n\tlet cursor = 0\n\tdo {\n\t\tresult += string.substring(cursor, index) + replace\n\t\tcursor = index + close.length\n\t\tindex = string.indexOf(close, cursor)\n\t} while (~index)\n\treturn result + string.substring(cursor)\n}\n\nlet createColors = (enabled = isColorSupported) => {\n\tlet init = enabled ? formatter : () => String\n\treturn {\n\t\tisColorSupported: enabled,\n\t\treset: init(\"\\x1b[0m\", \"\\x1b[0m\"),\n\t\tbold: init(\"\\x1b[1m\", \"\\x1b[22m\", \"\\x1b[22m\\x1b[1m\"),\n\t\tdim: init(\"\\x1b[2m\", \"\\x1b[22m\", \"\\x1b[22m\\x1b[2m\"),\n\t\titalic: init(\"\\x1b[3m\", \"\\x1b[23m\"),\n\t\tunderline: init(\"\\x1b[4m\", \"\\x1b[24m\"),\n\t\tinverse: init(\"\\x1b[7m\", \"\\x1b[27m\"),\n\t\thidden: init(\"\\x1b[8m\", \"\\x1b[28m\"),\n\t\tstrikethrough: init(\"\\x1b[9m\", \"\\x1b[29m\"),\n\t\tblack: init(\"\\x1b[30m\", \"\\x1b[39m\"),\n\t\tred: init(\"\\x1b[31m\", \"\\x1b[39m\"),\n\t\tgreen: init(\"\\x1b[32m\", \"\\x1b[39m\"),\n\t\tyellow: init(\"\\x1b[33m\", \"\\x1b[39m\"),\n\t\tblue: init(\"\\x1b[34m\", \"\\x1b[39m\"),\n\t\tmagenta: init(\"\\x1b[35m\", \"\\x1b[39m\"),\n\t\tcyan: init(\"\\x1b[36m\", \"\\x1b[39m\"),\n\t\twhite: init(\"\\x1b[37m\", \"\\x1b[39m\"),\n\t\tgray: init(\"\\x1b[90m\", \"\\x1b[39m\"),\n\t\tbgBlack: init(\"\\x1b[40m\", \"\\x1b[49m\"),\n\t\tbgRed: init(\"\\x1b[41m\", \"\\x1b[49m\"),\n\t\tbgGreen: init(\"\\x1b[42m\", \"\\x1b[49m\"),\n\t\tbgYellow: init(\"\\x1b[43m\", \"\\x1b[49m\"),\n\t\tbgBlue: init(\"\\x1b[44m\", \"\\x1b[49m\"),\n\t\tbgMagenta: init(\"\\x1b[45m\", \"\\x1b[49m\"),\n\t\tbgCyan: init(\"\\x1b[46m\", \"\\x1b[49m\"),\n\t\tbgWhite: init(\"\\x1b[47m\", \"\\x1b[49m\"),\n\t}\n}\n\nmodule.exports = createColors()\nmodule.exports.createColors = createColors\n",null],"names":["require","picocolorsModule","ROLLUP_PLUGIN_NAME"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.cjs","sources":["../../../node_modules/.pnpm/picocolors@1.0.1/node_modules/picocolors/picocolors.js","../src/index.ts"],"sourcesContent":["let argv = process.argv || [],\n\tenv = process.env\nlet isColorSupported =\n\t!(\"NO_COLOR\" in env || argv.includes(\"--no-color\")) &&\n\t(\"FORCE_COLOR\" in env ||\n\t\targv.includes(\"--color\") ||\n\t\tprocess.platform === \"win32\" ||\n\t\t(require != null && require(\"tty\").isatty(1) && env.TERM !== \"dumb\") ||\n\t\t\"CI\" in env)\n\nlet formatter =\n\t(open, close, replace = open) =>\n\tinput => {\n\t\tlet string = \"\" + input\n\t\tlet index = string.indexOf(close, open.length)\n\t\treturn ~index\n\t\t\t? open + replaceClose(string, close, replace, index) + close\n\t\t\t: open + string + close\n\t}\n\nlet replaceClose = (string, close, replace, index) => {\n\tlet result = \"\"\n\tlet cursor = 0\n\tdo {\n\t\tresult += string.substring(cursor, index) + replace\n\t\tcursor = index + close.length\n\t\tindex = string.indexOf(close, cursor)\n\t} while (~index)\n\treturn result + string.substring(cursor)\n}\n\nlet createColors = (enabled = isColorSupported) => {\n\tlet init = enabled ? formatter : () => String\n\treturn {\n\t\tisColorSupported: enabled,\n\t\treset: init(\"\\x1b[0m\", \"\\x1b[0m\"),\n\t\tbold: init(\"\\x1b[1m\", \"\\x1b[22m\", \"\\x1b[22m\\x1b[1m\"),\n\t\tdim: init(\"\\x1b[2m\", \"\\x1b[22m\", \"\\x1b[22m\\x1b[2m\"),\n\t\titalic: init(\"\\x1b[3m\", \"\\x1b[23m\"),\n\t\tunderline: init(\"\\x1b[4m\", \"\\x1b[24m\"),\n\t\tinverse: init(\"\\x1b[7m\", \"\\x1b[27m\"),\n\t\thidden: init(\"\\x1b[8m\", \"\\x1b[28m\"),\n\t\tstrikethrough: init(\"\\x1b[9m\", \"\\x1b[29m\"),\n\t\tblack: init(\"\\x1b[30m\", \"\\x1b[39m\"),\n\t\tred: init(\"\\x1b[31m\", \"\\x1b[39m\"),\n\t\tgreen: init(\"\\x1b[32m\", \"\\x1b[39m\"),\n\t\tyellow: init(\"\\x1b[33m\", \"\\x1b[39m\"),\n\t\tblue: init(\"\\x1b[34m\", \"\\x1b[39m\"),\n\t\tmagenta: init(\"\\x1b[35m\", \"\\x1b[39m\"),\n\t\tcyan: init(\"\\x1b[36m\", \"\\x1b[39m\"),\n\t\twhite: init(\"\\x1b[37m\", \"\\x1b[39m\"),\n\t\tgray: init(\"\\x1b[90m\", \"\\x1b[39m\"),\n\t\tbgBlack: init(\"\\x1b[40m\", \"\\x1b[49m\"),\n\t\tbgRed: init(\"\\x1b[41m\", \"\\x1b[49m\"),\n\t\tbgGreen: init(\"\\x1b[42m\", \"\\x1b[49m\"),\n\t\tbgYellow: init(\"\\x1b[43m\", \"\\x1b[49m\"),\n\t\tbgBlue: init(\"\\x1b[44m\", \"\\x1b[49m\"),\n\t\tbgMagenta: init(\"\\x1b[45m\", \"\\x1b[49m\"),\n\t\tbgCyan: init(\"\\x1b[46m\", \"\\x1b[49m\"),\n\t\tbgWhite: init(\"\\x1b[47m\", \"\\x1b[49m\"),\n\t}\n}\n\nmodule.exports = createColors()\nmodule.exports.createColors = createColors\n",null],"names":["require","picocolorsModule","ROLLUP_PLUGIN_NAME"],"mappings":"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","x_google_ignoreList":[0]}
package/dist/index.d.ts CHANGED
@@ -1,8 +1,30 @@
1
- import { type Api as RollupPluginApi, type Options as RollupPluginOptions } from '@ui-doc/rollup';
1
+ import type { Api as RollupPluginApi, Options as RollupPluginOptions } from '@ui-doc/rollup';
2
2
  import type { Plugin } from 'vite';
3
- export interface Options extends RollupPluginOptions {
4
- }
3
+ /**
4
+ * Options for configuring the UI-Doc Vite plugin.
5
+ * Extends all options from the Rollup plugin.
6
+ */
7
+ export type Options = RollupPluginOptions;
8
+ /**
9
+ * API exposed by the UI-Doc Vite plugin.
10
+ * Extends the Rollup plugin API with version information.
11
+ */
5
12
  export interface Api extends RollupPluginApi {
6
13
  version: string;
7
14
  }
15
+ /**
16
+ * Creates a UI-Doc Vite plugin for generating interactive UI documentation.
17
+ *
18
+ * @param rawOptions - Configuration options for the plugin
19
+ * @returns A configured Vite plugin instance
20
+ *
21
+ * @example
22
+ * ```ts
23
+ * import uidoc from '@ui-doc/vite'
24
+ *
25
+ * export default defineConfig({
26
+ * plugins: [uidoc({ source: 'src/**\/*.css' })]
27
+ * })
28
+ * ```
29
+ */
8
30
  export default function uidocPlugin(rawOptions: Options): Promise<Plugin<Api>>;
package/dist/index.mjs CHANGED
@@ -81,48 +81,71 @@ picocolors.exports.createColors = createColors;
81
81
  var picocolorsExports = picocolors.exports;
82
82
  var pc = /*@__PURE__*/getDefaultExportFromCjs(picocolorsExports);
83
83
 
84
- var version = "0.2.1";
84
+ var version = "0.3.2";
85
85
 
86
- /* eslint-disable sort-keys */
87
86
  const PLUGIN_NAME = 'ui-doc';
87
+ /**
88
+ * Delay in milliseconds before logging server ready message.
89
+ * Allows Vite's own logging to complete first for cleaner output.
90
+ */
91
+ const SERVER_READY_LOG_DELAY_MS = 300;
92
+ /**
93
+ * Resolves plugin options with defaults.
94
+ * Returns a new object to avoid mutating the input.
95
+ */
88
96
  function resolveOptions(options) {
89
- var _a, _b;
90
- options.output = (_a = options.output) !== null && _a !== void 0 ? _a : {};
91
- options.output.dir = (_b = options.output.dir) !== null && _b !== void 0 ? _b : 'ui-doc';
92
- return options;
97
+ return {
98
+ ...options,
99
+ output: {
100
+ ...options.output,
101
+ dir: options.output?.dir ?? 'ui-doc',
102
+ },
103
+ };
93
104
  }
94
- function prepareServe(plugin) {
95
- var _a, _b, _c, _d;
96
- if ((_a = plugin.api) === null || _a === void 0 ? void 0 : _a.options.prefix.uri) {
97
- // replace resolveUrl to make sure that all urls (pages and assets) are generated correctly for vite server
98
- (_b = plugin.api) === null || _b === void 0 ? void 0 : _b.uidoc.replaceGenerate('resolve', (uri, type) => {
99
- var _a, _b;
105
+ function prepareServe(api) {
106
+ if (api.options.prefix.uri) {
107
+ // replace resolveUrl to make sure that all urls (pages and assets) are generated correctly
108
+ // for vite server
109
+ api.uidoc.replaceGenerate('resolve', (uri, type) => {
100
110
  // don't add prefix if asset is from vite
101
- return ['asset', 'asset-example'].includes(type) &&
102
- // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
103
- (((_a = plugin.api) === null || _a === void 0 ? void 0 : _a.isAssetFromInput(uri)) || uri.startsWith('@'))
111
+ return ['asset', 'asset-example'].includes(type) && (api.isAssetFromInput(uri) || uri.startsWith('@'))
104
112
  ? `/${uri}`
105
- : `/${(_b = plugin.api) === null || _b === void 0 ? void 0 : _b.options.prefix.uri}${uri}`;
113
+ : `/${api.options.prefix.uri}${uri}`;
106
114
  });
107
115
  }
108
116
  // register all assets to ui-doc
109
- (_c = plugin.api) === null || _c === void 0 ? void 0 : _c.options.assets.forEach(({ fileName, context, attrs, fromInput = false }) => {
110
- var _a;
111
- (_a = plugin.api) === null || _a === void 0 ? void 0 : _a.uidocAsset(fileName, context, { attrs, fromInput });
117
+ api.options.assets.forEach(({ fileName, context, attrs, fromInput = false }) => {
118
+ api.uidocAsset(fileName, context, { attrs, fromInput });
112
119
  });
113
120
  // add vite client script to ui-doc
114
- (_d = plugin.api) === null || _d === void 0 ? void 0 : _d.uidocAsset('@vite/client', 'page', { attrs: { type: 'module' }, type: 'script' });
121
+ api.uidocAsset('@vite/client', 'page', { attrs: { type: 'module' }, type: 'script' });
115
122
  }
123
+ /**
124
+ * Creates a UI-Doc Vite plugin for generating interactive UI documentation.
125
+ *
126
+ * @param rawOptions - Configuration options for the plugin
127
+ * @returns A configured Vite plugin instance
128
+ *
129
+ * @example
130
+ * ```ts
131
+ * import uidoc from '@ui-doc/vite'
132
+ *
133
+ * export default defineConfig({
134
+ * plugins: [uidoc({ source: 'src/**\/*.css' })]
135
+ * })
136
+ * ```
137
+ */
116
138
  async function uidocPlugin(rawOptions) {
117
139
  const options = resolveOptions(rawOptions);
118
140
  const plugin = (await createRollupPlugin(options));
119
141
  let serving = false;
120
142
  plugin.name = PLUGIN_NAME;
121
143
  plugin.version = version;
122
- if (!plugin.api) {
144
+ const api = plugin.api;
145
+ if (!api) {
123
146
  throw new Error('UI-Doc rollup plugin API is not available');
124
147
  }
125
- plugin.api.version = version;
148
+ api.version = version;
126
149
  plugin.onLog = (_level, log) => {
127
150
  // hide rollup output logs
128
151
  if (log.plugin === PLUGIN_NAME$1 && log.pluginCode === 'OUTPUT') {
@@ -139,40 +162,42 @@ async function uidocPlugin(rawOptions) {
139
162
  await orgBuildStart.call(this, inputOptions);
140
163
  }
141
164
  if (serving) {
142
- prepareServe(plugin);
165
+ prepareServe(api);
143
166
  }
144
167
  };
145
168
  plugin.generateBundle = async function (outputOptions, bundle, isWrite) {
146
- var _a;
147
169
  // find and set the correct file name for each asset
148
- (_a = plugin.api) === null || _a === void 0 ? void 0 : _a.options.assets.filter(asset => asset.fromInput).forEach(asset => {
149
- var _a, _b, _c;
170
+ api.options.assets
171
+ .filter(asset => asset.fromInput)
172
+ .forEach(asset => {
150
173
  const foundBundle = Object.values(bundle).find(({ name }) => name === asset.name);
151
174
  if (!foundBundle) {
152
175
  return;
153
176
  }
154
177
  // copy imported assets from vite into UI-Doc output
155
- if ((_a = foundBundle === null || foundBundle === void 0 ? void 0 : foundBundle.viteMetadata) === null || _a === void 0 ? void 0 : _a.importedAssets) {
178
+ if (foundBundle.viteMetadata?.importedAssets) {
156
179
  foundBundle.viteMetadata.importedAssets.forEach((importedAsset) => {
157
- var _a;
158
- (_a = plugin.api) === null || _a === void 0 ? void 0 : _a.addAssetFromInput(importedAsset);
180
+ api.addAssetFromInput(importedAsset);
159
181
  });
160
182
  }
161
183
  if (asset.type === 'script') {
162
- asset.fileName = foundBundle.fileName;
163
- // copy imported css files to ui-doc
164
- if ((_b = foundBundle === null || foundBundle === void 0 ? void 0 : foundBundle.viteMetadata) === null || _b === void 0 ? void 0 : _b.importedCss) {
184
+ if (foundBundle.fileName !== undefined && foundBundle.fileName !== '') {
185
+ asset.fileName = foundBundle.fileName;
186
+ }
187
+ // copy and register imported css files to ui-doc
188
+ if (foundBundle.viteMetadata?.importedCss) {
165
189
  foundBundle.viteMetadata.importedCss.forEach((imported) => {
166
- var _a;
167
- (_a = plugin.api) === null || _a === void 0 ? void 0 : _a.addAssetFromInput(imported);
190
+ api.addAssetFromInput(imported);
191
+ api.uidocAsset(imported, asset.context, { type: 'style' });
168
192
  });
169
193
  }
170
194
  return;
171
195
  }
172
- if (asset.type === 'style' &&
173
- ((_c = foundBundle === null || foundBundle === void 0 ? void 0 : foundBundle.viteMetadata) === null || _c === void 0 ? void 0 : _c.importedCss) &&
174
- foundBundle.viteMetadata.importedCss.size > 0) {
175
- asset.fileName = foundBundle.viteMetadata.importedCss.values().next().value;
196
+ if (asset.type === 'style'
197
+ && foundBundle.viteMetadata?.importedCss
198
+ && foundBundle.viteMetadata.importedCss.size > 0) {
199
+ const firstCss = foundBundle.viteMetadata.importedCss.values().next().value;
200
+ asset.fileName = firstCss;
176
201
  }
177
202
  });
178
203
  if (orgGenerateBundle) {
@@ -180,33 +205,26 @@ async function uidocPlugin(rawOptions) {
180
205
  }
181
206
  };
182
207
  plugin.configureServer = async function (server) {
183
- var _a, _b, _c, _d, _e, _f, _g;
184
- const uidoc = (_a = plugin.api) === null || _a === void 0 ? void 0 : _a.uidoc;
185
- const uriPrefix = (_b = plugin.api) === null || _b === void 0 ? void 0 : _b.options.prefix.uri;
186
- const assets = (_d = (_c = plugin.api) === null || _c === void 0 ? void 0 : _c.options.assets) !== null && _d !== void 0 ? _d : [];
187
- const staticAssets = (_f = (_e = plugin.api) === null || _e === void 0 ? void 0 : _e.options.staticAssets) !== null && _f !== void 0 ? _f : undefined;
188
- if (!uidoc) {
189
- throw new Error('UI-Doc API is not available');
190
- }
208
+ const uidoc = api.uidoc;
209
+ const uriPrefix = api.options.prefix.uri;
210
+ const assets = api.options.assets ?? [];
211
+ const staticAssets = api.options.staticAssets ?? undefined;
191
212
  if (!uriPrefix) {
192
213
  throw new Error('UI-Doc base url is not available. Please don\'t set "outputBaseUri" to "." in dev mode.');
193
214
  }
215
+ const regexIndex = new RegExp(`^/${uriPrefix}?$`);
194
216
  const regexPage = new RegExp(`^/${uriPrefix}([a-z0-9_\\-]+).html$`);
195
217
  const regexExample = new RegExp(`^/${uriPrefix}examples/([a-z0-9_\\-]+).html$`);
196
218
  const regexAsset = new RegExp(`^/${uriPrefix}([a-z0-9\\._\\-]+)$`);
197
219
  server.middlewares.use((req, res, next) => {
198
- var _a, _b;
220
+ const originalUrl = req.originalUrl ?? '';
199
221
  // only handle requests that start with the path prefix
200
- if (!((_a = req.originalUrl) === null || _a === void 0 ? void 0 : _a.startsWith(`/${uriPrefix}`))) {
222
+ if (!originalUrl.startsWith(`/${uriPrefix}`)) {
201
223
  return next();
202
224
  }
203
- if (req.originalUrl.match(new RegExp(`^/${uriPrefix}?$`))) {
204
- res.write(uidoc.page('index'));
205
- res.end();
206
- return;
207
- }
208
225
  const writeContent = (content) => {
209
- if (content) {
226
+ if (content !== null) {
227
+ res.setHeader('Content-Type', 'text/html; charset=utf-8');
210
228
  res.write(content);
211
229
  }
212
230
  else {
@@ -214,18 +232,22 @@ async function uidocPlugin(rawOptions) {
214
232
  }
215
233
  res.end();
216
234
  };
217
- const pageMatch = req.originalUrl.match(regexPage);
235
+ if (originalUrl.match(regexIndex)) {
236
+ writeContent(uidoc.page('index'));
237
+ return;
238
+ }
239
+ const pageMatch = originalUrl.match(regexPage);
218
240
  if (pageMatch) {
219
241
  writeContent(uidoc.page(pageMatch[1]));
220
242
  return;
221
243
  }
222
- const exampleMatch = req.originalUrl.match(regexExample);
244
+ const exampleMatch = originalUrl.match(regexExample);
223
245
  if (exampleMatch) {
224
246
  writeContent(uidoc.example(exampleMatch[1]));
225
247
  return;
226
248
  }
227
- if (req.originalUrl.match(regexAsset)) {
228
- const assetName = req.originalUrl.replace(`/${uriPrefix}`, '');
249
+ if (originalUrl.match(regexAsset)) {
250
+ const assetName = originalUrl.replace(`/${uriPrefix}`, '');
229
251
  const asset = assets.find(entry => entry.name === assetName);
230
252
  if (asset) {
231
253
  res.write(asset.source);
@@ -233,33 +255,35 @@ async function uidocPlugin(rawOptions) {
233
255
  return;
234
256
  }
235
257
  }
236
- const fileSystem = (_b = plugin.api) === null || _b === void 0 ? void 0 : _b.fileSystem;
237
- if (!staticAssets || !fileSystem) {
258
+ const fileSystem = api.fileSystem;
259
+ if (staticAssets === undefined || fileSystem === undefined) {
238
260
  return next();
239
261
  }
240
- const assetName = req.originalUrl.replace(`/${uriPrefix}`, '').split('?')[0];
262
+ const assetName = originalUrl.replace(`/${uriPrefix}`, '').split('?')[0];
241
263
  const assetFile = `${staticAssets}/${assetName}`;
242
264
  fileSystem
243
265
  .fileExists(assetFile)
244
- .then(exists => {
266
+ .then((exists) => {
245
267
  if (exists) {
246
268
  req.url = `/@fs${path.resolve(assetFile)}`;
247
269
  }
270
+ })
271
+ .catch((error) => {
272
+ server.config.logger.error(`UI-Doc: Error checking asset file: ${String(error)}`);
248
273
  })
249
274
  .finally(() => {
250
275
  next();
251
276
  });
252
277
  });
253
- (_g = server.httpServer) === null || _g === void 0 ? void 0 : _g.once('listening', () => {
278
+ server.httpServer?.once('listening', () => {
254
279
  setTimeout(() => {
255
- var _a;
256
280
  server.config.logger.info(`\n ${pc.green(`${pc.bold('UI-Doc')} v${version}`)} under /${pc.gray(uriPrefix)} \n`);
257
- if (Array.isArray((_a = server.resolvedUrls) === null || _a === void 0 ? void 0 : _a.local)) {
281
+ if (Array.isArray(server.resolvedUrls?.local)) {
258
282
  server.resolvedUrls.local.forEach(url => {
259
283
  server.config.logger.info(` ${pc.green('➜')} ${pc.bold('Local')}: ${pc.cyan(`${url}${uriPrefix}`)}`);
260
284
  });
261
285
  }
262
- }, 300);
286
+ }, SERVER_READY_LOG_DELAY_MS);
263
287
  uidoc.on('context-entry', () => {
264
288
  server.ws.send({ type: 'full-reload', path: `/${uriPrefix}*` });
265
289
  });