silgi 0.8.28 → 0.8.29

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.
@@ -1,4 +1,4 @@
1
- const version = "0.8.28";
1
+ const version = "0.8.29";
2
2
  const devDependencies = {
3
3
  "@antfu/eslint-config": "^4.2.0",
4
4
  "@fastify/deepmerge": "^2.0.2",
@@ -91,5 +91,13 @@ declare function toArray<T>(value: T | T[]): T[];
91
91
  */
92
92
  declare function filterInPlace<T>(array: T[], predicate: (item: T, index: number, arr: T[]) => unknown): T[];
93
93
  declare const MODE_RE: RegExp;
94
+ /**
95
+ * Check if a Silgi module is installed by name.
96
+ *
97
+ * This will check both the installed modules and the modules to be installed. Note
98
+ * that it cannot detect if a module is _going to be_ installed programmatically by another module.
99
+ */
100
+ declare function hasSilgiModule(moduleKey: string, silgi?: SilgiCLI): boolean;
101
+ declare function hasInstalledModule(moduleKey: string, silgi?: SilgiCLI): boolean;
94
102
 
95
- export { MODE_RE, addTemplate, createResolver, defineSilgiModule, defineSilgiPreset, filterInPlace, isDirectory, isH3, isNitro, isNuxt, normalizeTemplate, prettyPath, relativeWithDot, resolveAlias, resolvePath, resolveSilgiModule, resolveSilgiPath, toArray, tryResolveModule, useLogger, writeFile };
103
+ export { MODE_RE, addTemplate, createResolver, defineSilgiModule, defineSilgiPreset, filterInPlace, hasInstalledModule, hasSilgiModule, isDirectory, isH3, isNitro, isNuxt, normalizeTemplate, prettyPath, relativeWithDot, resolveAlias, resolvePath, resolveSilgiModule, resolveSilgiPath, toArray, tryResolveModule, useLogger, writeFile };
@@ -91,5 +91,13 @@ declare function toArray<T>(value: T | T[]): T[];
91
91
  */
92
92
  declare function filterInPlace<T>(array: T[], predicate: (item: T, index: number, arr: T[]) => unknown): T[];
93
93
  declare const MODE_RE: RegExp;
94
+ /**
95
+ * Check if a Silgi module is installed by name.
96
+ *
97
+ * This will check both the installed modules and the modules to be installed. Note
98
+ * that it cannot detect if a module is _going to be_ installed programmatically by another module.
99
+ */
100
+ declare function hasSilgiModule(moduleKey: string, silgi?: SilgiCLI): boolean;
101
+ declare function hasInstalledModule(moduleKey: string, silgi?: SilgiCLI): boolean;
94
102
 
95
- export { MODE_RE, addTemplate, createResolver, defineSilgiModule, defineSilgiPreset, filterInPlace, isDirectory, isH3, isNitro, isNuxt, normalizeTemplate, prettyPath, relativeWithDot, resolveAlias, resolvePath, resolveSilgiModule, resolveSilgiPath, toArray, tryResolveModule, useLogger, writeFile };
103
+ export { MODE_RE, addTemplate, createResolver, defineSilgiModule, defineSilgiPreset, filterInPlace, hasInstalledModule, hasSilgiModule, isDirectory, isH3, isNitro, isNuxt, normalizeTemplate, prettyPath, relativeWithDot, resolveAlias, resolvePath, resolveSilgiModule, resolveSilgiPath, toArray, tryResolveModule, useLogger, writeFile };
@@ -255,6 +255,13 @@ function filterInPlace(array, predicate) {
255
255
  return array;
256
256
  }
257
257
  const MODE_RE = /\.(server|client)(\.\w+)*$/;
258
+ function hasSilgiModule(moduleKey, silgi = useSilgiCLI()) {
259
+ return silgi.scanModules.some(({ meta }) => meta.configKey === moduleKey) || Object.keys(silgi.scanModules).includes(moduleKey);
260
+ }
261
+ function hasInstalledModule(moduleKey, silgi = useSilgiCLI()) {
262
+ const find = silgi.scanModules.find(({ meta }) => meta.configKey === moduleKey);
263
+ return find?.installed ?? false;
264
+ }
258
265
 
259
266
  function addTemplate(_template) {
260
267
  const silgi = useSilgiCLI();
@@ -298,4 +305,4 @@ function normalizeTemplate(template, buildDir) {
298
305
  return template;
299
306
  }
300
307
 
301
- export { MODE_RE, addTemplate, createResolver, defineSilgiModule, defineSilgiPreset, filterInPlace, isDirectory$1 as isDirectory, isH3, isNitro, isNuxt, normalizeTemplate, prettyPath, relativeWithDot, resolveAlias, resolvePath, resolveSilgiModule, resolveSilgiPath, toArray, tryResolveModule, useLogger, writeFile };
308
+ export { MODE_RE, addTemplate, createResolver, defineSilgiModule, defineSilgiPreset, filterInPlace, hasInstalledModule, hasSilgiModule, isDirectory$1 as isDirectory, isH3, isNitro, isNuxt, normalizeTemplate, prettyPath, relativeWithDot, resolveAlias, resolvePath, resolveSilgiModule, resolveSilgiPath, toArray, tryResolveModule, useLogger, writeFile };
@@ -1,4 +1,4 @@
1
- const version = "0.8.28";
1
+ const version = "0.8.29";
2
2
  const devDependencies = {
3
3
  "@antfu/eslint-config": "^4.2.0",
4
4
  "@fastify/deepmerge": "^2.0.2",
@@ -1,4 +1,4 @@
1
- const version = "0.8.28";
1
+ const version = "0.8.29";
2
2
  const devDependencies = {
3
3
  "@antfu/eslint-config": "^4.2.0",
4
4
  "@fastify/deepmerge": "^2.0.2",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "silgi",
3
3
  "type": "module",
4
- "version": "0.8.28",
4
+ "version": "0.8.29",
5
5
  "private": false,
6
6
  "sideEffects": false,
7
7
  "exports": {