@odx/foundation 1.0.0-rc.3 → 1.0.0-rc.4

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,12 +1,15 @@
1
- import { FormatOptions } from './format.js';
2
- export interface LocalizationOptions extends FormatOptions {
3
- defaultLocale: () => Intl.Locale | Intl.UnicodeBCP47LocaleIdentifier;
4
- fallbackLanguage: () => Intl.UnicodeBCP47LocaleIdentifier;
5
- fallbackTranslation: (key: string) => string;
1
+ import { FormatOptions } from "./format.js";
2
+
3
+ //#region src/lib/localization.d.ts
4
+ interface LocalizationOptions extends FormatOptions {
5
+ defaultLocale: () => Intl.Locale | Intl.UnicodeBCP47LocaleIdentifier;
6
+ fallbackLanguage: () => Intl.UnicodeBCP47LocaleIdentifier;
7
+ fallbackTranslation: (key: string) => string;
6
8
  }
7
- export declare const LocalizationOptions: (config?: Partial<LocalizationOptions>) => LocalizationOptions;
8
- export declare function setLocalizationOptions(options?: Partial<LocalizationOptions> | null): void;
9
- export declare function getLocalizationOptions(options?: Partial<LocalizationOptions> | null): LocalizationOptions;
10
- export declare function getLocale(localeInput?: Intl.Locale | Intl.UnicodeBCP47LocaleIdentifier | null): Intl.Locale;
11
- export declare function setLocale(localeInput?: Intl.Locale | Intl.UnicodeBCP47LocaleIdentifier | null): void;
12
- //# sourceMappingURL=localization.d.ts.map
9
+ declare const LocalizationOptions: (config?: Partial<LocalizationOptions>) => LocalizationOptions;
10
+ declare function setLocalizationOptions(options?: Partial<LocalizationOptions> | null): void;
11
+ declare function getLocalizationOptions(options?: Partial<LocalizationOptions> | null): LocalizationOptions;
12
+ declare function getLocale(localeInput?: Intl.Locale | Intl.UnicodeBCP47LocaleIdentifier | null): Intl.Locale;
13
+ declare function setLocale(localeInput?: Intl.Locale | Intl.UnicodeBCP47LocaleIdentifier | null): void;
14
+ //#endregion
15
+ export { LocalizationOptions, getLocale, getLocalizationOptions, setLocale, setLocalizationOptions };
@@ -1,28 +1,28 @@
1
- import { sharedSignal } from './signals.js';
2
-
1
+ import { sharedSignal } from "./signals.js";
2
+ //#region src/lib/localization.ts
3
3
  const locale = sharedSignal("locale", null);
4
4
  const localizationOptions = sharedSignal("localizationOptions", null);
5
5
  const LocalizationOptions = (config) => ({
6
- defaultLocale: () => navigator.language,
7
- fallbackLanguage: () => "en",
8
- fallbackTranslation: (key) => key,
9
- ...config,
10
- relativeTimeFormatOptions: {
11
- minUnit: "minute",
12
- ...config?.relativeTimeFormatOptions
13
- }
6
+ defaultLocale: () => navigator.language,
7
+ fallbackLanguage: () => "en",
8
+ fallbackTranslation: (key) => key,
9
+ ...config,
10
+ relativeTimeFormatOptions: {
11
+ minUnit: "minute",
12
+ ...config?.relativeTimeFormatOptions
13
+ }
14
14
  });
15
15
  function setLocalizationOptions(options) {
16
- localizationOptions.set(getLocalizationOptions(options));
16
+ localizationOptions.set(getLocalizationOptions(options));
17
17
  }
18
18
  function getLocalizationOptions(options) {
19
- return LocalizationOptions(options ?? localizationOptions.get() ?? {});
19
+ return LocalizationOptions(options ?? localizationOptions.get() ?? {});
20
20
  }
21
21
  function getLocale(localeInput) {
22
- return new Intl.Locale(localeInput || locale.get() || getLocalizationOptions().defaultLocale());
22
+ return new Intl.Locale(localeInput || locale.get() || getLocalizationOptions().defaultLocale());
23
23
  }
24
24
  function setLocale(localeInput) {
25
- locale.set(localeInput ? getLocale(localeInput) : null);
25
+ locale.set(localeInput ? getLocale(localeInput) : null);
26
26
  }
27
-
27
+ //#endregion
28
28
  export { LocalizationOptions, getLocale, getLocalizationOptions, setLocale, setLocalizationOptions };
@@ -1,39 +1,5 @@
1
- export type Alignment = (typeof Alignment)[keyof typeof Alignment];
2
- export declare const Alignment: {
3
- readonly START: "start";
4
- readonly CENTER: "center";
5
- readonly END: "end";
6
- };
7
- export type Spacing = (typeof Spacing)[keyof typeof Spacing];
8
- export declare const Spacing: {
9
- readonly 0: "0";
10
- readonly SM: "sm";
11
- readonly MD: "md";
12
- readonly LG: "lg";
13
- };
14
- export type Justify = (typeof Justify)[keyof typeof Justify];
15
- export declare const Justify: {
16
- readonly START: "start";
17
- readonly END: "end";
18
- readonly CENTER: "center";
19
- readonly SPACE_BETWEEN: "space-between";
20
- readonly SPACE_AROUND: "space-around";
21
- readonly SPACE_EVENLY: "space-evenly";
22
- };
23
- export type Variant = (typeof Variant)[keyof typeof Variant];
24
- export declare const Variant: {
25
- readonly NEUTRAL: "neutral";
26
- readonly PRIMARY: "primary";
27
- readonly ACCENT: "accent";
28
- readonly SUCCESS: "success";
29
- readonly WARNING: "warning";
30
- readonly DANGER: "danger";
31
- readonly ACCENT_GHOST: "accent-ghost";
32
- readonly DANGER_GHOST: "danger-ghost";
33
- readonly CONFIRMATION: "confirmation";
34
- readonly SUBTLE: "subtle";
35
- readonly GHOST: "ghost";
36
- };
37
- export type UnitIdentifier = SingleUnitIdentifier | `${SingleUnitIdentifier}-per-${SingleUnitIdentifier}` | (string & {});
38
- export type SingleUnitIdentifier = 'acre' | 'bit' | 'byte' | 'celsius' | 'centimeter' | 'day' | 'degree' | 'fahrenheit' | 'fluid-ounce' | 'foot' | 'gallon' | 'gigabit' | 'gigabyte' | 'gram' | 'hectare' | 'hour' | 'inch' | 'kilobit' | 'kilobyte' | 'kilogram' | 'kilometer' | 'liter' | 'megabit' | 'megabyte' | 'meter' | 'microsecond' | 'mile' | 'mile-scandinavian' | 'milliliter' | 'millimeter' | 'millisecond' | 'minute' | 'month' | 'nanosecond' | 'ounce' | 'percent' | 'petabyte' | 'pound' | 'second' | 'stone' | 'terabit' | 'terabyte' | 'week' | 'yard' | 'year';
39
- //# sourceMappingURL=models.d.ts.map
1
+ //#region src/lib/models.d.ts
2
+ type UnitIdentifier = SingleUnitIdentifier | `${SingleUnitIdentifier}-per-${SingleUnitIdentifier}` | (string & {});
3
+ type SingleUnitIdentifier = 'acre' | 'bit' | 'byte' | 'celsius' | 'centimeter' | 'day' | 'degree' | 'fahrenheit' | 'fluid-ounce' | 'foot' | 'gallon' | 'gigabit' | 'gigabyte' | 'gram' | 'hectare' | 'hour' | 'inch' | 'kilobit' | 'kilobyte' | 'kilogram' | 'kilometer' | 'liter' | 'megabit' | 'megabyte' | 'meter' | 'microsecond' | 'mile' | 'mile-scandinavian' | 'milliliter' | 'millimeter' | 'millisecond' | 'minute' | 'month' | 'nanosecond' | 'ounce' | 'percent' | 'petabyte' | 'pound' | 'second' | 'stone' | 'terabit' | 'terabyte' | 'week' | 'yard' | 'year';
4
+ //#endregion
5
+ export { UnitIdentifier };
@@ -1,20 +1,23 @@
1
- import { Signal as NativeSignal } from 'signal-polyfill';
2
- export type Signal<T> = NativeSignal.State<T> & {
3
- update: (updateFn: (value: T) => T) => void;
1
+ import { Signal } from "signal-polyfill";
2
+
3
+ //#region src/lib/signals.d.ts
4
+ type Signal$1<T> = Signal.State<T> & {
5
+ update: (updateFn: (value: T) => T) => void;
4
6
  };
5
- export type SignalOptions<T> = NativeSignal.Options<T> & {
6
- watched?(): void;
7
- unwatched?(): void;
7
+ type SignalOptions<T> = Signal.Options<T> & {
8
+ watched?(): void;
9
+ unwatched?(): void;
8
10
  };
9
- export type ReadonlySignal<T> = NativeSignal.Computed<T>;
10
- export declare function signal<T>(value: T, options?: SignalOptions<T>): Signal<T>;
11
+ type ReadonlySignal<T> = Signal.Computed<T>;
12
+ declare function signal<T>(value: T, options?: SignalOptions<T>): Signal$1<T>;
11
13
  /**
12
14
  * Creates or retrieves a shared signal stored on the global object. This is useful for signals that need to be shared across multiple modules without explicitly passing them around, such as localization settings or translation records.
13
15
  */
14
- export declare function sharedSignal<T>(key: string, ...args: Parameters<typeof signal<T>>): ReturnType<typeof signal<T>>;
15
- export declare function computed<T>(computeFn: () => T, options?: SignalOptions<T>): ReadonlySignal<T>;
16
- export declare function effect(callback: (() => void) | (() => () => void)): () => void;
16
+ declare function sharedSignal<T>(key: string, ...args: Parameters<typeof signal<T>>): ReturnType<typeof signal<T>>;
17
+ declare function computed<T>(computeFn: () => T, options?: SignalOptions<T>): ReadonlySignal<T>;
18
+ declare function effect(callback: (() => void) | (() => () => void)): () => void;
17
19
  declare global {
18
- var __ODX_SHARED_SIGNALS__: Record<string, unknown>;
20
+ var __ODX_SHARED_SIGNALS__: Record<string, unknown>;
19
21
  }
20
- //# sourceMappingURL=signals.d.ts.map
22
+ //#endregion
23
+ export { ReadonlySignal, Signal$1 as Signal, SignalOptions, computed, effect, sharedSignal, signal };
@@ -1,47 +1,52 @@
1
- import { Signal } from 'signal-polyfill';
2
-
1
+ import { Signal } from "signal-polyfill";
2
+ //#region src/lib/signals.ts
3
3
  function transformOptions(options) {
4
- if (!options) return;
5
- return { equals: options.equals, [Signal.subtle.watched]: options.watched, [Signal.subtle.unwatched]: options.unwatched };
4
+ if (!options) return;
5
+ return {
6
+ equals: options.equals,
7
+ [Signal.subtle.watched]: options.watched,
8
+ [Signal.subtle.unwatched]: options.unwatched
9
+ };
6
10
  }
7
11
  function signal(value, options) {
8
- const state = new Signal.State(value, transformOptions(options));
9
- state.update = (updateFn) => state.set(updateFn(state.get()));
10
- return state;
12
+ const state = new Signal.State(value, transformOptions(options));
13
+ state.update = (updateFn) => state.set(updateFn(state.get()));
14
+ return state;
11
15
  }
16
+ /**
17
+ * Creates or retrieves a shared signal stored on the global object. This is useful for signals that need to be shared across multiple modules without explicitly passing them around, such as localization settings or translation records.
18
+ */
12
19
  function sharedSignal(key, ...args) {
13
- if (!(key in globalThis.__ODX_SHARED_SIGNALS__)) {
14
- globalThis.__ODX_SHARED_SIGNALS__[key] = signal(...args);
15
- }
16
- return globalThis.__ODX_SHARED_SIGNALS__[key];
20
+ if (!(key in globalThis.__ODX_SHARED_SIGNALS__)) globalThis.__ODX_SHARED_SIGNALS__[key] = signal(...args);
21
+ return globalThis.__ODX_SHARED_SIGNALS__[key];
17
22
  }
18
23
  function computed(computeFn, options) {
19
- return new Signal.Computed(computeFn, transformOptions(options));
24
+ return new Signal.Computed(computeFn, transformOptions(options));
20
25
  }
21
26
  let needsEnqueue = true;
22
27
  const watcher = new Signal.subtle.Watcher(() => {
23
- if (!needsEnqueue) return;
24
- needsEnqueue = false;
25
- queueMicrotask(() => {
26
- needsEnqueue = true;
27
- for (const signal2 of watcher.getPending()) signal2.get();
28
- watcher.watch();
29
- });
28
+ if (!needsEnqueue) return;
29
+ needsEnqueue = false;
30
+ queueMicrotask(() => {
31
+ needsEnqueue = true;
32
+ for (const signal of watcher.getPending()) signal.get();
33
+ watcher.watch();
34
+ });
30
35
  });
31
36
  function effect(callback) {
32
- let cleanup;
33
- const signal2 = computed(() => {
34
- cleanup?.();
35
- cleanup = callback() || void 0;
36
- });
37
- watcher.watch(signal2);
38
- signal2.get();
39
- return () => {
40
- watcher.unwatch(signal2);
41
- cleanup?.();
42
- cleanup = void 0;
43
- };
37
+ let cleanup;
38
+ const signal = computed(() => {
39
+ cleanup?.();
40
+ cleanup = callback() || void 0;
41
+ });
42
+ watcher.watch(signal);
43
+ signal.get();
44
+ return () => {
45
+ watcher.unwatch(signal);
46
+ cleanup?.();
47
+ cleanup = void 0;
48
+ };
44
49
  }
45
50
  globalThis.__ODX_SHARED_SIGNALS__ ||= {};
46
-
51
+ //#endregion
47
52
  export { computed, effect, sharedSignal, signal };
@@ -1,16 +1,19 @@
1
- import { ThemeConfig } from '@odx/design-tokens';
1
+ import { ThemeConfig } from "@odx/design-tokens";
2
+
3
+ //#region src/lib/theming.d.ts
2
4
  declare global {
3
- var __ODX_THEME_ROOT__: HTMLElement;
5
+ var __ODX_THEME_ROOT__: HTMLElement;
4
6
  }
5
- export declare const userPrefersDarkMode: boolean;
6
- export declare const darkModeIcon = "core::night-mode";
7
- export declare const lightModeIcon = "core::brightness";
8
- export declare function setTheme(config: ThemeConfig, root?: HTMLElement): void;
9
- export declare function isDarkModeEnabled(): boolean;
10
- export declare function toggleDarkMode(enabled?: boolean | 'auto', root?: HTMLElement): void;
11
- export interface AttachDarkModeToggleOptions<T extends HTMLElement> {
12
- update?(host: T, darkModeEnabled: boolean, icon: string): void;
13
- root?: HTMLElement;
7
+ declare const userPrefersDarkMode: boolean;
8
+ declare const darkModeIcon = "core::night-mode";
9
+ declare const lightModeIcon = "core::brightness";
10
+ declare function setTheme$1(config: ThemeConfig, root?: HTMLElement): void;
11
+ declare function isDarkModeEnabled(): boolean;
12
+ declare function toggleDarkMode(enabled?: boolean | 'auto', root?: HTMLElement): void;
13
+ interface AttachDarkModeToggleOptions<T extends HTMLElement> {
14
+ update?(host: T, darkModeEnabled: boolean, icon: string): void;
15
+ root?: HTMLElement;
14
16
  }
15
- export declare function attachDarkModeToggle<T extends HTMLElement>(host: T, options?: AttachDarkModeToggleOptions<T>): () => void;
16
- //# sourceMappingURL=theming.d.ts.map
17
+ declare function attachDarkModeToggle<T extends HTMLElement>(host: T, options?: AttachDarkModeToggleOptions<T>): () => void;
18
+ //#endregion
19
+ export { AttachDarkModeToggleOptions, attachDarkModeToggle, darkModeIcon, isDarkModeEnabled, lightModeIcon, setTheme$1 as setTheme, toggleDarkMode, userPrefersDarkMode };
@@ -1,37 +1,34 @@
1
- import { darkModeClass, lightModeClass, setTheme as setTheme$1 } from '@odx/design-tokens';
2
- import { sharedSignal, effect } from './signals.js';
3
-
1
+ import { effect, sharedSignal } from "./signals.js";
2
+ import { darkModeClass, lightModeClass, setTheme } from "@odx/design-tokens";
3
+ //#region src/lib/theming.ts
4
4
  const { matches: userPrefersDarkMode = false } = globalThis.matchMedia?.("(prefers-color-scheme: dark)") ?? {};
5
5
  const darkModeIcon = "core::night-mode";
6
6
  const lightModeIcon = "core::brightness";
7
- globalThis.__ODX_THEME_ROOT__ ??= document.querySelector(".odx-root") ?? document.documentElement;
7
+ globalThis.__ODX_THEME_ROOT__ ??= document.documentElement;
8
8
  const hasDarkModeClass = globalThis.__ODX_THEME_ROOT__.classList.contains(darkModeClass);
9
9
  const hasLightModeClass = globalThis.__ODX_THEME_ROOT__.classList.contains(lightModeClass);
10
10
  const darkModeEnabled = sharedSignal("darkModeEnabled", hasDarkModeClass || hasLightModeClass ? hasDarkModeClass : userPrefersDarkMode);
11
- function setTheme(config, root = globalThis.__ODX_THEME_ROOT__) {
12
- setTheme$1(config, root);
13
- if (!config.mode) return;
14
- if (config.mode === "auto") {
15
- darkModeEnabled.set(userPrefersDarkMode);
16
- } else {
17
- darkModeEnabled.set(config.mode === "dark" ? true : !isDarkModeEnabled());
18
- }
11
+ function setTheme$1(config, root = globalThis.__ODX_THEME_ROOT__) {
12
+ setTheme(config, root);
13
+ if (!config.mode) return;
14
+ if (config.mode === "auto") darkModeEnabled.set(userPrefersDarkMode);
15
+ else darkModeEnabled.set(config.mode === "dark" ? true : !isDarkModeEnabled());
19
16
  }
20
17
  function isDarkModeEnabled() {
21
- return darkModeEnabled.get();
18
+ return darkModeEnabled.get();
22
19
  }
23
20
  function toggleDarkMode(enabled, root = globalThis.__ODX_THEME_ROOT__) {
24
- enabled ||= !isDarkModeEnabled();
25
- setTheme({ mode: enabled === "auto" ? enabled : enabled ? "dark" : "light" }, root);
21
+ enabled ||= !isDarkModeEnabled();
22
+ setTheme$1({ mode: enabled === "auto" ? enabled : enabled ? "dark" : "light" }, root);
26
23
  }
27
24
  function attachDarkModeToggle(host, options = {}) {
28
- host.addEventListener("click", () => toggleDarkMode(void 0, options.root));
29
- return effect(() => {
30
- const darkModeEnabled2 = isDarkModeEnabled();
31
- const icon = darkModeEnabled2 ? lightModeIcon : darkModeIcon;
32
- host.setAttribute("icon", icon);
33
- options.update?.(host, darkModeEnabled2, icon);
34
- });
25
+ host.addEventListener("click", () => toggleDarkMode(void 0, options.root));
26
+ return effect(() => {
27
+ const darkModeEnabled = isDarkModeEnabled();
28
+ const icon = darkModeEnabled ? lightModeIcon : darkModeIcon;
29
+ host.setAttribute("icon", icon);
30
+ options.update?.(host, darkModeEnabled, icon);
31
+ });
35
32
  }
36
-
37
- export { attachDarkModeToggle, darkModeIcon, isDarkModeEnabled, lightModeIcon, setTheme, toggleDarkMode, userPrefersDarkMode };
33
+ //#endregion
34
+ export { attachDarkModeToggle, darkModeIcon, isDarkModeEnabled, lightModeIcon, setTheme$1 as setTheme, toggleDarkMode, userPrefersDarkMode };
@@ -1,43 +1,41 @@
1
+ //#region src/lib/utils/shared-media-observer.ts
1
2
  const mediaQueryRegistry = /* @__PURE__ */ new Map();
2
3
  const eventListenerRegistry = /* @__PURE__ */ new Map();
3
4
  function handleMediaChange(event) {
4
- const listeners = eventListenerRegistry.get(event.media);
5
- if (!listeners?.size) return;
6
- const listenersArray = Array.from(listeners);
7
- let i = listenersArray.length;
8
- while (i--) {
9
- listenersArray[i]?.(event);
10
- }
5
+ const listeners = eventListenerRegistry.get(event.media);
6
+ if (!listeners?.size) return;
7
+ const listenersArray = Array.from(listeners);
8
+ let i = listenersArray.length;
9
+ while (i--) listenersArray[i]?.(event);
11
10
  }
12
11
  function observeMedia(query, listener) {
13
- let listeners = eventListenerRegistry.get(query);
14
- if (!listeners) {
15
- listeners = /* @__PURE__ */ new Set();
16
- eventListenerRegistry.set(query, listeners);
17
- }
18
- listeners.add(listener);
19
- let mediaQueryList = mediaQueryRegistry.get(query);
20
- if (!mediaQueryList) {
21
- mediaQueryList = globalThis.matchMedia(query);
22
- mediaQueryRegistry.set(query, mediaQueryList);
23
- mediaQueryList.addEventListener("change", handleMediaChange);
24
- }
25
- const initialEvent = new MediaQueryListEvent("change", {
26
- media: mediaQueryList.media,
27
- matches: mediaQueryList.matches
28
- });
29
- listener(initialEvent);
30
- return () => unobserveMedia(query, listener);
12
+ let listeners = eventListenerRegistry.get(query);
13
+ if (!listeners) {
14
+ listeners = /* @__PURE__ */ new Set();
15
+ eventListenerRegistry.set(query, listeners);
16
+ }
17
+ listeners.add(listener);
18
+ let mediaQueryList = mediaQueryRegistry.get(query);
19
+ if (!mediaQueryList) {
20
+ mediaQueryList = globalThis.matchMedia(query);
21
+ mediaQueryRegistry.set(query, mediaQueryList);
22
+ mediaQueryList.addEventListener("change", handleMediaChange);
23
+ }
24
+ listener(new MediaQueryListEvent("change", {
25
+ media: mediaQueryList.media,
26
+ matches: mediaQueryList.matches
27
+ }));
28
+ return () => unobserveMedia(query, listener);
31
29
  }
32
30
  function unobserveMedia(query, listener) {
33
- const listeners = eventListenerRegistry.get(query);
34
- if (!listeners?.delete(listener)) return;
35
- if (listeners.size > 0) return;
36
- eventListenerRegistry.delete(query);
37
- const mediaQueryList = mediaQueryRegistry.get(query);
38
- if (!mediaQueryList) return;
39
- mediaQueryList.removeEventListener("change", handleMediaChange);
40
- mediaQueryRegistry.delete(query);
31
+ const listeners = eventListenerRegistry.get(query);
32
+ if (!listeners?.delete(listener)) return;
33
+ if (listeners.size > 0) return;
34
+ eventListenerRegistry.delete(query);
35
+ const mediaQueryList = mediaQueryRegistry.get(query);
36
+ if (!mediaQueryList) return;
37
+ mediaQueryList.removeEventListener("change", handleMediaChange);
38
+ mediaQueryRegistry.delete(query);
41
39
  }
42
-
43
- export { observeMedia, unobserveMedia };
40
+ //#endregion
41
+ export { observeMedia };
package/dist/main.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- export * from './lib/breakpoints.js';
2
- export * from './lib/format.js';
3
- export * from './lib/localization.js';
4
- export type { UnitIdentifier } from './lib/models.js';
5
- export * from './lib/signals.js';
6
- export * from './lib/theming.js';
7
- //# sourceMappingURL=main.d.ts.map
1
+ import { ReadonlySignal, Signal, SignalOptions, computed, effect, sharedSignal, signal } from "./lib/signals.js";
2
+ import { Breakpoint, BreakpointConfig, BreakpointOperator, breakpointAttribute, buildBreakpoint, createBreakpointUpdater, defaultBreakpoints, expandBreakpoints, observeBreakpoint, registeredBreakpoints, setupBreakpoints } from "./lib/breakpoints.js";
3
+ import { UnitIdentifier } from "./lib/models.js";
4
+ import { DateTimeFormatOptions, FormatOptions, ListFormatOptions, NumberFormatOptions, RelativeTimeFormatOptions, formatDate, formatList, formatNumber, formatRelativeTime, parseDate } from "./lib/format.js";
5
+ import { LocalizationOptions, getLocale, getLocalizationOptions, setLocale, setLocalizationOptions } from "./lib/localization.js";
6
+ import { AttachDarkModeToggleOptions, attachDarkModeToggle, darkModeIcon, isDarkModeEnabled, lightModeIcon, setTheme, toggleDarkMode, userPrefersDarkMode } from "./lib/theming.js";
7
+ export { AttachDarkModeToggleOptions, Breakpoint, BreakpointConfig, BreakpointOperator, DateTimeFormatOptions, FormatOptions, ListFormatOptions, LocalizationOptions, NumberFormatOptions, ReadonlySignal, RelativeTimeFormatOptions, Signal, SignalOptions, type UnitIdentifier, attachDarkModeToggle, breakpointAttribute, buildBreakpoint, computed, createBreakpointUpdater, darkModeIcon, defaultBreakpoints, effect, expandBreakpoints, formatDate, formatList, formatNumber, formatRelativeTime, getLocale, getLocalizationOptions, isDarkModeEnabled, lightModeIcon, observeBreakpoint, parseDate, registeredBreakpoints, setLocale, setLocalizationOptions, setTheme, setupBreakpoints, sharedSignal, signal, toggleDarkMode, userPrefersDarkMode };
package/dist/main.js CHANGED
@@ -1,5 +1,6 @@
1
- export { breakpointAttribute, buildBreakpoint, createBreakpointUpdater, defaultBreakpoints, expandBreakpoints, observeBreakpoint, registeredBreakpoints, setupBreakpoints } from './lib/breakpoints.js';
2
- export { formatDate, formatList, formatNumber, formatRelativeTime, parseDate } from './lib/format.js';
3
- export { LocalizationOptions, getLocale, getLocalizationOptions, setLocale, setLocalizationOptions } from './lib/localization.js';
4
- export { computed, effect, sharedSignal, signal } from './lib/signals.js';
5
- export { attachDarkModeToggle, darkModeIcon, isDarkModeEnabled, lightModeIcon, setTheme, toggleDarkMode, userPrefersDarkMode } from './lib/theming.js';
1
+ import { computed, effect, sharedSignal, signal } from "./lib/signals.js";
2
+ import { breakpointAttribute, buildBreakpoint, createBreakpointUpdater, defaultBreakpoints, expandBreakpoints, observeBreakpoint, registeredBreakpoints, setupBreakpoints } from "./lib/breakpoints.js";
3
+ import { formatDate, formatList, formatNumber, formatRelativeTime, parseDate } from "./lib/format.js";
4
+ import { LocalizationOptions, getLocale, getLocalizationOptions, setLocale, setLocalizationOptions } from "./lib/localization.js";
5
+ import { attachDarkModeToggle, darkModeIcon, isDarkModeEnabled, lightModeIcon, setTheme, toggleDarkMode, userPrefersDarkMode } from "./lib/theming.js";
6
+ export { LocalizationOptions, attachDarkModeToggle, breakpointAttribute, buildBreakpoint, computed, createBreakpointUpdater, darkModeIcon, defaultBreakpoints, effect, expandBreakpoints, formatDate, formatList, formatNumber, formatRelativeTime, getLocale, getLocalizationOptions, isDarkModeEnabled, lightModeIcon, observeBreakpoint, parseDate, registeredBreakpoints, setLocale, setLocalizationOptions, setTheme, setupBreakpoints, sharedSignal, signal, toggleDarkMode, userPrefersDarkMode };