Implement breakpointObserver.

Drop breakpoints constant export from Breakpoint component.
Expose breakpoints constant separately and freeze it.
Change `match` event to 'change`, because it is now based on store and captures initial value change.

Issues:
- Wrong exports in types/index.d.ts
- Typedefs lost from docs.
This commit is contained in:
Harald Brunner 2022-02-12 16:31:08 +01:00
commit 2cd2872274
10 changed files with 115 additions and 121 deletions

View file

@ -1,10 +1,6 @@
/// <reference types="svelte" />
import { SvelteComponentTyped } from "svelte";
export type BreakpointSize = "sm" | "md" | "lg" | "xlg" | "max";
export type BreakpointValue = 320 | 672 | 1056 | 1312 | 1584;
export interface BreakpointProps {
/**
* Determine the current Carbon grid breakpoint size
@ -22,15 +18,10 @@ export interface BreakpointProps {
export default class Breakpoint extends SvelteComponentTyped<
BreakpointProps,
{
match: CustomEvent<{
change: CustomEvent<{
size: BreakpointSize;
breakpointValue: BreakpointValue;
}>;
},
{ default: { size: BreakpointSize; sizes: Record<BreakpointSize, boolean> } }
> {
/**
* Reference the Carbon grid breakpoints
*/
breakpoints: Record<BreakpointSize, BreakpointValue>;
}
> {}

2
types/index.d.ts vendored
View file

@ -6,6 +6,8 @@ export { default as Breadcrumb } from "./Breadcrumb/Breadcrumb.svelte";
export { default as BreadcrumbItem } from "./Breadcrumb/BreadcrumbItem.svelte";
export { default as BreadcrumbSkeleton } from "./Breadcrumb/BreadcrumbSkeleton.svelte";
export { default as Breakpoint } from "./Breakpoint/Breakpoint.svelte";
export { default as breakpoints } from "./Breakpoint";
export { default as breakpointObserver } from "./Breakpoint";
export { default as Button } from "./Button/Button.svelte";
export { default as ButtonSkeleton } from "./Button/ButtonSkeleton.svelte";
export { default as ButtonSet } from "./Button/ButtonSet.svelte";