@phreshos/core 0.1.7 → 0.1.8

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
@@ -60,17 +60,16 @@ the ordinary `Subscribable` capability with a `change` event; it has no
60
60
  dedicated subscription shape of its own.
61
61
 
62
62
  Theme properties are expressed as concrete values. `themeLimits` declares the
63
- contractual customization bounds for spacing, corner radius, glass-material,
64
- and Surface properties; implementing authorities validate replacements against those
63
+ contractual customization bounds for spacing, corner radius, and Surface
64
+ properties; implementing authorities validate replacements against those
65
65
  bounds. Core defines one fixed numeric scale around any explicit number and one
66
66
  fixed color scale around any explicit CSS color. `standardTheme` is the
67
67
  canonical reusable default value for that contract, shared by systems,
68
68
  interfaces, websites, and Programs that need the same baseline. It is not an
69
69
  authoritative environment's mutable Theme state. Background, foreground, and
70
- accent remain independent CSS color sources. Surface adds a concrete color,
71
- grain intensity, animation rate, optional backdrop blur, and material opacity;
72
- its standard backdrop is zero, so blur is opt-in. The declared glass-opacity
73
- range ends at `0.3`.
70
+ accent remain independent CSS color sources. Surface derives its color from
71
+ background and adds grain intensity, animation rate, optional backdrop blur,
72
+ and material opacity; its standard backdrop is zero, so blur is opt-in.
74
73
 
75
74
  `createThemeSnapshot()` copies and freezes one complete value at the contract
76
75
  boundary. An implementing authority remains responsible for validation,
package/dist/main.d.ts CHANGED
@@ -10,7 +10,7 @@ export { type DesktopWallpaper, type FileWallpaper, type WallpaperLaunch } from
10
10
  export { isRelativeValue, parseRelativeValue, type RelativeValue, type Value } from "./value.js";
11
11
  export { color, type ColorLevel, type ColorScale } from "./color.js";
12
12
  export { isScaleLevel, numericScale, scale, scaleMultiplier, type NumericScale, type ScaleLevel } from "./scale.js";
13
- export { createThemeSnapshot, standardTheme, themeLimits, type Colorable, type Elevatable, type Shapeable, type Sizable, type Theme, type ThemeEvents, type ThemeGlass, type ThemeProperties, type ThemeRange, type ThemeSurface, type Variantable, type WritableTheme } from "./theme.js";
13
+ export { createThemeSnapshot, standardTheme, themeLimits, type Colorable, type Elevatable, type Shapeable, type Sizable, type Theme, type ThemeEvents, type ThemeProperties, type ThemeRange, type ThemeSurface, type Variantable, type WritableTheme } from "./theme.js";
14
14
  export { type DirectoryStat, type EntryStat, type FileStat, type OtherStat, type ProgramArea, type ProgramStore } from "./storage.js";
15
15
  export { type LogKind, type LogRecord, type LogSource, type ProgramSql } from "./sql.js";
16
16
  export { Endpoint, type AskCapture, type AskMessage, type AskObserver, type EndpointTraffic, type TrafficCapture, type TrafficEvents, type TrafficMessage } from "./endpoint.js";
package/dist/theme.d.ts CHANGED
@@ -6,19 +6,6 @@ export type ThemeRange = Readonly<{
6
6
  /** Largest accepted value. */
7
7
  maximum: number;
8
8
  }>;
9
- /** Bounded controls for the shared glass material. */
10
- export type ThemeGlass = Readonly<{
11
- /** Default strength of the refracted backdrop. */
12
- distortion: number;
13
- /** Default backdrop blur in CSS pixels. */
14
- blur: number;
15
- /** Default backdrop saturation multiplier. */
16
- saturation: number;
17
- /** Default backdrop brightness multiplier. */
18
- brightness: number;
19
- /** Default material opacity from zero to the system's glass cap. */
20
- opacity: number;
21
- }>;
22
9
  /** Concrete defaults for the shared opaque Surface material. */
23
10
  export type ThemeSurface = Readonly<{
24
11
  /** Grain intensity from zero to one. */
@@ -42,8 +29,6 @@ export type ThemeProperties = Readonly<{
42
29
  spacing: number;
43
30
  /** Default component corner radius expressed in CSS pixels. */
44
31
  radius: number;
45
- /** Default values for the shared glass material. */
46
- glass: ThemeGlass;
47
32
  /** Default values for the shared opaque Surface material. */
48
33
  surface: ThemeSurface;
49
34
  }>;
@@ -57,28 +42,6 @@ export declare const themeLimits: Readonly<{
57
42
  minimum: 6;
58
43
  maximum: 18;
59
44
  }>;
60
- glass: Readonly<{
61
- distortion: Readonly<{
62
- minimum: 48;
63
- maximum: 92;
64
- }>;
65
- blur: Readonly<{
66
- minimum: 2;
67
- maximum: 8;
68
- }>;
69
- saturation: Readonly<{
70
- minimum: 1.25;
71
- maximum: 1.8;
72
- }>;
73
- brightness: Readonly<{
74
- minimum: 1.02;
75
- maximum: 1.1;
76
- }>;
77
- opacity: Readonly<{
78
- minimum: 0;
79
- maximum: 0.3;
80
- }>;
81
- }>;
82
45
  surface: Readonly<{
83
46
  grain: Readonly<{
84
47
  minimum: 0;
@@ -110,8 +73,6 @@ export declare const standardTheme: Readonly<{
110
73
  spacing: number;
111
74
  /** Default component corner radius expressed in CSS pixels. */
112
75
  radius: number;
113
- /** Default values for the shared glass material. */
114
- glass: ThemeGlass;
115
76
  /** Default values for the shared opaque Surface material. */
116
77
  surface: ThemeSurface;
117
78
  }>;
package/dist/theme.js CHANGED
@@ -2,13 +2,6 @@
2
2
  export const themeLimits = Object.freeze({
3
3
  spacing: Object.freeze({ minimum: 6, maximum: 18 }),
4
4
  radius: Object.freeze({ minimum: 6, maximum: 18 }),
5
- glass: Object.freeze({
6
- distortion: Object.freeze({ minimum: 48, maximum: 92 }),
7
- blur: Object.freeze({ minimum: 2, maximum: 8 }),
8
- saturation: Object.freeze({ minimum: 1.25, maximum: 1.8 }),
9
- brightness: Object.freeze({ minimum: 1.02, maximum: 1.1 }),
10
- opacity: Object.freeze({ minimum: 0, maximum: 0.3 })
11
- }),
12
5
  surface: Object.freeze({
13
6
  grain: Object.freeze({ minimum: 0, maximum: 1 }),
14
7
  animation: Object.freeze({ minimum: 0, maximum: 16 }),
@@ -23,13 +16,6 @@ export const standardTheme = createThemeSnapshot({
23
16
  accent: "#4c9cff",
24
17
  spacing: 12,
25
18
  radius: 10,
26
- glass: {
27
- distortion: 70,
28
- blur: 4,
29
- saturation: 1.8,
30
- brightness: 1.06,
31
- opacity: 0.12
32
- },
33
19
  surface: {
34
20
  grain: 0.04,
35
21
  animation: 0,
@@ -41,7 +27,6 @@ export const standardTheme = createThemeSnapshot({
41
27
  export function createThemeSnapshot(theme) {
42
28
  return Object.freeze({
43
29
  ...theme,
44
- glass: Object.freeze({ ...theme.glass }),
45
30
  surface: Object.freeze({ ...theme.surface })
46
31
  });
47
32
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@phreshos/core",
3
- "version": "0.1.7",
3
+ "version": "0.1.8",
4
4
  "description": "Environment-neutral contracts and domain objects for PhreshOS Programs.",
5
5
  "type": "module",
6
6
  "sideEffects": false,