polen 0.10.0-next.17 → 0.10.0-next.18

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.
@@ -83,7 +83,19 @@ export interface ConfigInput {
83
83
  *
84
84
  * Used in the navigation bar and in the title tag.
85
85
  *
86
- * @default `My Developer Portal`
86
+ * If not provided, Polen will try to use your project's package.json name
87
+ * field, converting it to title case (e.g., "my-project" → "My Project").
88
+ *
89
+ * @default Your package.json name (title-cased) or "My Developer Portal"
90
+ * @example
91
+ * ```ts
92
+ * // Explicit title
93
+ * title: 'Acme GraphQL API'
94
+ *
95
+ * // Falls back to package.json name
96
+ * // If package.json has { "name": "acme-graphql" }
97
+ * // Title will be "Acme Graphql"
98
+ * ```
87
99
  */
88
100
  title?: string;
89
101
  };
@@ -1 +1 @@
1
- {"version":3,"file":"configurator.d.ts","sourceRoot":"","sources":["../../../src/api/config/configurator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configurator.d.ts","sourceRoot":"","sources":["../../../src/api/config/configurator.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { assertPathAbsolute } from '#lib/kit-temp';
2
2
  import { packagePaths } from '#package-paths';
3
- import { Path } from '@wollybeard/kit';
3
+ import { Err, Manifest, Path, Str } from '@wollybeard/kit';
4
4
  import { z } from 'zod';
5
5
  export const BuildArchitectureEnum = {
6
6
  ssg: `ssg`,
@@ -115,6 +115,15 @@ baseRootDirPath) => {
115
115
  else if (baseRootDirPath) {
116
116
  config.paths = buildPaths(baseRootDirPath);
117
117
  }
118
+ // Try to read package.json name as fallback for title
119
+ if (!configInput?.templateVariables?.title) {
120
+ const packageJson = await Manifest.resource.read(config.paths.project.rootDir);
121
+ // todo: let the user know there was an error...
122
+ if (!Err.is(packageJson) && packageJson.name) {
123
+ // Package name will be used as default, but can still be overridden below
124
+ config.templateVariables.title = Str.Case.title(packageJson.name);
125
+ }
126
+ }
118
127
  if (configInput?.advanced?.vite) {
119
128
  config.advanced.vite = configInput.advanced.vite;
120
129
  }
@@ -1 +1 @@
1
- {"version":3,"file":"configurator.js","sourceRoot":"","sources":["../../../src/api/config/configurator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configurator.js","sourceRoot":"","sources":["../../../src/api/config/configurator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "polen",
3
- "version": "0.10.0-next.17",
3
+ "version": "0.10.0-next.18",
4
4
  "type": "module",
5
5
  "description": "A framework for delightful GraphQL developer portals",
6
6
  "author": {
@@ -1,7 +1,7 @@
1
1
  import type { Vite } from '#dep/vite/index'
2
2
  import { assertPathAbsolute } from '#lib/kit-temp'
3
3
  import { type PackagePaths, packagePaths } from '#package-paths'
4
- import { Path } from '@wollybeard/kit'
4
+ import { Err, Manifest, Path, Str } from '@wollybeard/kit'
5
5
  import { z } from 'zod'
6
6
  import type { SchemaAugmentation } from '../../api/schema-augmentation/index.js'
7
7
  import type { Schema } from '../schema/index.js'
@@ -86,7 +86,19 @@ export interface ConfigInput {
86
86
  *
87
87
  * Used in the navigation bar and in the title tag.
88
88
  *
89
- * @default `My Developer Portal`
89
+ * If not provided, Polen will try to use your project's package.json name
90
+ * field, converting it to title case (e.g., "my-project" → "My Project").
91
+ *
92
+ * @default Your package.json name (title-cased) or "My Developer Portal"
93
+ * @example
94
+ * ```ts
95
+ * // Explicit title
96
+ * title: 'Acme GraphQL API'
97
+ *
98
+ * // Falls back to package.json name
99
+ * // If package.json has { "name": "acme-graphql" }
100
+ * // Title will be "Acme Graphql"
101
+ * ```
90
102
  */
91
103
  title?: string
92
104
  }
@@ -377,6 +389,17 @@ export const normalizeInput = async (
377
389
  config.paths = buildPaths(baseRootDirPath)
378
390
  }
379
391
 
392
+ // Try to read package.json name as fallback for title
393
+ if (!configInput?.templateVariables?.title) {
394
+ const packageJson = await Manifest.resource.read(config.paths.project.rootDir)
395
+
396
+ // todo: let the user know there was an error...
397
+ if (!Err.is(packageJson) && packageJson.name) {
398
+ // Package name will be used as default, but can still be overridden below
399
+ config.templateVariables.title = Str.Case.title(packageJson.name)
400
+ }
401
+ }
402
+
380
403
  if (configInput?.advanced?.vite) {
381
404
  config.advanced.vite = configInput.advanced.vite
382
405
  }