@owlmeans/wled 0.1.18-rc.37 → 0.1.18-rc.39

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/README.md CHANGED
@@ -8,12 +8,12 @@ Whitelabel ("wled") core — shared types, models, and entrypoint declarations f
8
8
  - `WL_TYPE_COMPANY_INFO`, `WL_TYPE_STYLES`, `WL_TYPE_MEDIA`, `WL_TYPE_DNS` — whitelabel content type discriminators
9
9
  - Type definitions: `CompanyInfo`, `CustomStyles`, `CustomColors`, `CustomFont`, `CustomMedia`, `CustomBrand`, `ProvideParams`, `ProvidedWL<T>`
10
10
  - `wledEntrypoints.provide` — immutable protocol for `GET /wl/provide/:entity`
11
- - AJV models under `model/` (e.g., `ProvideParamsSchema`)
11
+ - AJV schemas in `schemas.ts` (e.g., `ProvideParamsSchema`)
12
12
 
13
13
  ## Installation
14
14
 
15
15
  ```bash
16
- bun add @owlmeans/wled@^0.1.18-rc.37
16
+ bun add @owlmeans/wled@^0.1.18-rc.39
17
17
  ```
18
18
 
19
19
  ## Usage
@@ -74,7 +74,7 @@ This package ships embedded agent skills under `agent-meta/`. After installing y
74
74
  your project's skill store (`.agents/skills/`):
75
75
 
76
76
  ```sh
77
- npx @owlmeans/agent-skills@^0.1.18-rc.48
77
+ npx @owlmeans/agent-skills@^0.1.18-rc.57
78
78
  ```
79
79
 
80
80
  The embedded files are version-matched to this package release. Do not edit them
@@ -1,8 +1,8 @@
1
1
  {
2
- "schemaVersion": 2,
2
+ "schemaVersion": 3,
3
3
  "package": "@owlmeans/wled",
4
- "version": "0.1.18-rc.37",
5
- "generatedAt": "2026-10-05T08:32:19.122Z",
4
+ "version": "0.1.18-rc.39",
5
+ "generatedAt": "2026-10-20T23:19:58.630Z",
6
6
  "canonicalRepo": "https://github.com/owlmeans/common",
7
7
  "entries": [
8
8
  {
@@ -8,7 +8,7 @@ user-invocable: false
8
8
  # @owlmeans/wled
9
9
 
10
10
  **Layer:** Core
11
- **Install:** `"@owlmeans/wled": "^0.1.18-rc.37"` in `dependencies`
11
+ **Install:** `"@owlmeans/wled": "^0.1.18-rc.39"` in `dependencies`
12
12
 
13
13
  The contract only. It owns no service and reaches no store: it declares the white-label record
14
14
  shapes, their schemas, and one entrypoint that the server side answers and the browser side calls.
@@ -2,6 +2,6 @@ import type { ProvideParams } from './types.js';
2
2
  export declare const wledEntrypoints: {
3
3
  provide: import("@owlmeans/entrypoint").EntrypointProtocol<{
4
4
  params: ProvideParams;
5
- }, undefined>;
5
+ }, unknown>;
6
6
  };
7
7
  //# sourceMappingURL=entrypoints.d.ts.map
@@ -1,7 +1,7 @@
1
1
  import { contract, protocol, typed } from '@owlmeans/entrypoint';
2
2
  import { route, backend } from '@owlmeans/route';
3
3
  import { WL_PROVIDE, WL_PROVIDE_PATH } from './consts.js';
4
- import { ProvideParamsSchema } from './model/provider.js';
4
+ import { ProvideParamsSchema } from './schemas.js';
5
5
  export const wledEntrypoints = {
6
6
  provide: protocol(route(WL_PROVIDE, WL_PROVIDE_PATH, backend()), contract.request({ params: typed(ProvideParamsSchema) }, typed()))
7
7
  };
@@ -1 +1 @@
1
- {"version":3,"file":"entrypoints.js","sourceRoot":"","sources":["../src/entrypoints.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAEhE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAEzD,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,OAAO,EAAE,QAAQ,CACf,KAAK,CAAC,UAAU,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAC7C,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,CAAgB,mBAAmB,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CACjF;CACF,CAAA"}
1
+ {"version":3,"file":"entrypoints.js","sourceRoot":"","sources":["../src/entrypoints.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAEhE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAElD,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,OAAO,EAAE,QAAQ,CACf,KAAK,CAAC,UAAU,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,EAC7C,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,CAAgB,mBAAmB,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CACjF;CACF,CAAA"}
package/build/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export type * from './types.js';
2
- export * from './model/index.js';
2
+ export * from './schemas.js';
3
3
  export * from './consts.js';
4
4
  export * from './entrypoints.js';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,mBAAmB,YAAY,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,mBAAmB,YAAY,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,kBAAkB,CAAA"}
package/build/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export * from './model/index.js';
1
+ export * from './schemas.js';
2
2
  export * from './consts.js';
3
3
  export * from './entrypoints.js';
4
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,cAAc,kBAAkB,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,kBAAkB,CAAA"}
@@ -0,0 +1,9 @@
1
+ import type { JSONSchemaType } from 'ajv';
2
+ import type { CompanyInfo, CustomColors, CustomFont, CustomStyles, ProvideParams } from './types.js';
3
+ export declare const CompanyInfoSchema: JSONSchemaType<CompanyInfo>;
4
+ export declare const CustomFontSchema: JSONSchemaType<CustomFont>;
5
+ export declare const ColorSchema: JSONSchemaType<string>;
6
+ export declare const CustomColorsSchema: JSONSchemaType<CustomColors>;
7
+ export declare const CustomStylesSchema: JSONSchemaType<CustomStyles>;
8
+ export declare const ProvideParamsSchema: JSONSchemaType<ProvideParams>;
9
+ //# sourceMappingURL=schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,KAAK,CAAA;AACzC,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAGpG,eAAO,MAAM,iBAAiB,EAAE,cAAc,CAAC,WAAW,CAYzD,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,cAAc,CAAC,UAAU,CAQvD,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,cAAc,CAAC,MAAM,CAK9C,CAAA;AAED,eAAO,MAAM,kBAAkB,EAAE,cAAc,CAAC,YAAY,CAc3D,CAAA;AAED,eAAO,MAAM,kBAAkB,EAAE,cAAc,CAAC,YAAY,CAU3D,CAAA;AAED,eAAO,MAAM,mBAAmB,EAAE,cAAc,CAAC,aAAa,CAO7D,CAAA"}
@@ -0,0 +1,64 @@
1
+ import { EntityValueSchema, ResourceValueSchema } from '@owlmeans/auth';
2
+ export const CompanyInfoSchema = {
3
+ type: 'object',
4
+ properties: {
5
+ resource: { ...ResourceValueSchema, minLength: 0, nullable: true },
6
+ entityId: { ...EntityValueSchema },
7
+ fullName: { type: 'string', minLength: 1, maxLength: 128 },
8
+ shortName: { type: 'string', minLength: 0, maxLength: 32 },
9
+ slug: { ...EntityValueSchema, minLength: 0 },
10
+ description: { type: 'string', minLength: 0, maxLength: 512 }
11
+ },
12
+ required: ['entityId', 'fullName', 'shortName', 'slug', 'description'],
13
+ additionalProperties: false,
14
+ };
15
+ export const CustomFontSchema = {
16
+ type: 'object',
17
+ properties: {
18
+ fontFamily: { type: 'string', minLength: 0, maxLength: 128 },
19
+ basicSize: { type: 'number', minimum: 8, nullable: true, }
20
+ },
21
+ required: ['fontFamily'],
22
+ additionalProperties: false,
23
+ };
24
+ export const ColorSchema = {
25
+ type: 'string',
26
+ pattern: '^#(\\d|[a-fA-F]){3,8}$',
27
+ minLength: 4,
28
+ maxLength: 9
29
+ };
30
+ export const CustomColorsSchema = {
31
+ type: 'object',
32
+ properties: {
33
+ primaryColor: ColorSchema,
34
+ secondaryColor: { ...ColorSchema, nullable: true },
35
+ alertColor: { ...ColorSchema, nullable: true },
36
+ successColor: { ...ColorSchema, nullable: true },
37
+ primaryBackground: { ...ColorSchema, nullable: true },
38
+ secondaryBackground: { ...ColorSchema, nullable: true },
39
+ alertBackground: { ...ColorSchema, nullable: true },
40
+ successBackground: { ...ColorSchema, nullable: true },
41
+ },
42
+ required: ['primaryColor'],
43
+ additionalProperties: false,
44
+ };
45
+ export const CustomStylesSchema = {
46
+ type: 'object',
47
+ properties: {
48
+ resource: { ...ResourceValueSchema, minLength: 0, nullable: true },
49
+ entityId: { ...EntityValueSchema },
50
+ font: CustomFontSchema,
51
+ colors: CustomColorsSchema
52
+ },
53
+ required: ['font', 'colors'],
54
+ additionalProperties: false,
55
+ };
56
+ export const ProvideParamsSchema = {
57
+ type: 'object',
58
+ properties: {
59
+ entity: { ...EntityValueSchema }
60
+ },
61
+ required: ['entity'],
62
+ additionalProperties: false,
63
+ };
64
+ //# sourceMappingURL=schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,UAAU,CAAA;IAChB,MAAM,EAAE,YAAY,CAAA;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,MAAM,CAAA;IACpB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,WAAW,CAAA;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAA;CACf;AAEC,MAAM,WAAW,UAAU;IAC3B,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG;IAC9C,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,OAAO,GAAG,IAAI,CAAA;CACvB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,UAAU,CAAA;IAChB,MAAM,EAAE,YAAY,CAAA;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,MAAM,CAAA;IACpB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,WAAW,CAAA;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB;AAGD,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG;IAC9C,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,OAAO,GAAG,IAAI,CAAA;CACvB,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@owlmeans/wled",
3
- "version": "0.1.18-rc.37",
3
+ "version": "0.1.18-rc.39",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "scripts": {
@@ -24,9 +24,9 @@
24
24
  "ajv": "*"
25
25
  },
26
26
  "dependencies": {
27
- "@owlmeans/auth": "^0.1.18-rc.39",
28
- "@owlmeans/entrypoint": "^0.1.18-rc.40",
29
- "@owlmeans/route": "^0.1.18-rc.34"
27
+ "@owlmeans/auth": "^0.1.18-rc.42",
28
+ "@owlmeans/entrypoint": "^0.1.18-rc.42",
29
+ "@owlmeans/route": "^0.1.18-rc.36"
30
30
  },
31
31
  "devDependencies": {
32
32
  "@owlmeans/dep-config": "workspace:*",
@@ -2,7 +2,7 @@ import { contract, protocol, typed } from '@owlmeans/entrypoint'
2
2
  import type { ProvideParams } from './types.js'
3
3
  import { route, backend } from '@owlmeans/route'
4
4
  import { WL_PROVIDE, WL_PROVIDE_PATH } from './consts.js'
5
- import { ProvideParamsSchema } from './model/provider.js'
5
+ import { ProvideParamsSchema } from './schemas.js'
6
6
 
7
7
  export const wledEntrypoints = {
8
8
  provide: protocol(
package/src/index.ts CHANGED
@@ -1,5 +1,5 @@
1
1
 
2
2
  export type * from './types.js'
3
- export * from './model/index.js'
3
+ export * from './schemas.js'
4
4
  export * from './consts.js'
5
5
  export * from './entrypoints.js'
@@ -1,7 +1,21 @@
1
1
  import type { JSONSchemaType } from 'ajv'
2
- import type { CustomStyles, CustomColors, CustomFont } from '../types.js'
2
+ import type { CompanyInfo, CustomColors, CustomFont, CustomStyles, ProvideParams } from './types.js'
3
3
  import { EntityValueSchema, ResourceValueSchema } from '@owlmeans/auth'
4
4
 
5
+ export const CompanyInfoSchema: JSONSchemaType<CompanyInfo> = {
6
+ type: 'object',
7
+ properties: {
8
+ resource: { ...ResourceValueSchema, minLength: 0, nullable: true },
9
+ entityId: { ...EntityValueSchema },
10
+ fullName: { type: 'string', minLength: 1, maxLength: 128 },
11
+ shortName: { type: 'string', minLength: 0, maxLength: 32 },
12
+ slug: { ...EntityValueSchema, minLength: 0 },
13
+ description: { type: 'string', minLength: 0, maxLength: 512 }
14
+ },
15
+ required: ['entityId', 'fullName', 'shortName', 'slug', 'description'],
16
+ additionalProperties: false,
17
+ }
18
+
5
19
  export const CustomFontSchema: JSONSchemaType<CustomFont> = {
6
20
  type: 'object',
7
21
  properties: {
@@ -47,3 +61,11 @@ export const CustomStylesSchema: JSONSchemaType<CustomStyles> = {
47
61
  additionalProperties: false,
48
62
  }
49
63
 
64
+ export const ProvideParamsSchema: JSONSchemaType<ProvideParams> = {
65
+ type: 'object',
66
+ properties: {
67
+ entity: { ...EntityValueSchema }
68
+ },
69
+ required: ['entity'],
70
+ additionalProperties: false,
71
+ }
package/src/types.ts CHANGED
@@ -44,11 +44,12 @@ export interface ProvideParams {
44
44
  entity: string
45
45
  }
46
46
 
47
- export interface CustomUrls {
47
+ export interface CustomUrls {
48
48
  adminUrl: string
49
49
  userUrl: string
50
50
  }
51
51
 
52
+ // Kept as a type: it intersects its type parameter, which an interface cannot extend.
52
53
  export type ProvidedWL<T extends {} = {}> = T & {
53
54
  type: string
54
55
  exists: boolean | null
@@ -1,17 +0,0 @@
1
- import type { JSONSchemaType } from 'ajv'
2
- import type { CompanyInfo } from '../types.js'
3
- import { EntityValueSchema, ResourceValueSchema } from '@owlmeans/auth'
4
-
5
- export const CompanyInfoSchema: JSONSchemaType<CompanyInfo> = {
6
- type: 'object',
7
- properties: {
8
- resource: { ...ResourceValueSchema, minLength: 0, nullable: true },
9
- entityId: { ...EntityValueSchema },
10
- fullName: { type: 'string', minLength: 1, maxLength: 128 },
11
- shortName: { type: 'string', minLength: 0, maxLength: 32 },
12
- slug: { ...EntityValueSchema, minLength: 0 },
13
- description: { type: 'string', minLength: 0, maxLength: 512 }
14
- },
15
- required: ['entityId', 'fullName', 'shortName', 'slug', 'description'],
16
- additionalProperties: false,
17
- }
@@ -1,4 +0,0 @@
1
-
2
- export * from './company.js'
3
- export * from './styles.js'
4
- export * from './provider.js'
@@ -1,13 +0,0 @@
1
-
2
- import type { JSONSchemaType } from 'ajv'
3
- import type { ProvideParams } from '../types.js'
4
- import { EntityValueSchema } from '@owlmeans/auth'
5
-
6
- export const ProvideParamsSchema: JSONSchemaType<ProvideParams> = {
7
- type: 'object',
8
- properties: {
9
- entity: { ...EntityValueSchema }
10
- },
11
- required: ['entity'],
12
- additionalProperties: false,
13
- }