@imfusion/web-ui 0.8.1-dev.50.g91c115bb → 0.8.1-dev.52.g0818e1db
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/CHANGELOG.md +4 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +13 -1
- package/dist/utils/email.d.ts +7 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -62,6 +62,9 @@ workflows already ask for stay as they are. Say "change my profile" to answer ag
|
|
|
62
62
|
- `Button` has a `justify` prop: `center` or `spread`, which pins the icons to the edges of a stretched button.
|
|
63
63
|
- `Meter` shows a measured amount within a range, such as seats in use, as a read-only bar with an optional label and
|
|
64
64
|
value readout. ([WEBSDK-250](https://imfusion.atlassian.net/browse/WEBSDK-250))
|
|
65
|
+
- Utilities — Nikolaus Brunner <brunner@imfusion.com>
|
|
66
|
+
- `splitEmail` splits an email into its local part and domain, and `initialsFromEmail` derives up to two initials from
|
|
67
|
+
the local part, for an `AccountCard` or `Avatar` before the person's name is known.
|
|
65
68
|
- Components — Stephan Wenninger <wenninger@imfusion.com>
|
|
66
69
|
- `Slider.Root` has a `variant="position"` that draws a scrollbar-like trough and bar thumb for picking one position in a
|
|
67
70
|
range.
|
|
@@ -82,6 +85,7 @@ workflows already ask for stay as they are. Say "change my profile" to answer ag
|
|
|
82
85
|
- The toolbar has Full HD, QHD, and Ultrawide viewports for previews past `xl`.
|
|
83
86
|
- The floating token button is hidden by default; `parameters.tokenDrawer.show` shows it for a story, and a toolbar toggle overrides either way.
|
|
84
87
|
- Sidebar labels stay in the sidebar text color when a story has test warnings or errors; the status icon carries the state.
|
|
88
|
+
- `All` matrices and stories with a fixed render hide the controls panel; stories that log actions keep it without the Controls tab.
|
|
85
89
|
|
|
86
90
|
- Icons ([WEBSDK-267](https://imfusion.atlassian.net/browse/WEBSDK-267)) — Nikolaus Brunner <brunner@imfusion.com>
|
|
87
91
|
- 65 Medical Imaging icons from the ImFusion design team, such as `ToolBrush`, `ToolWindowLevel`, and `DefineRoiAction`.
|
package/dist/index.d.ts
CHANGED
|
@@ -42,6 +42,7 @@ export { WebUIProvider } from './provider';
|
|
|
42
42
|
export { useClipboard, useColorScheme, useMediaQuery } from './hooks';
|
|
43
43
|
export type { UseClipboardOptions, UseMediaQueryOptions } from './hooks';
|
|
44
44
|
export { cva, cx } from 'class-variance-authority';
|
|
45
|
+
export { initialsFromEmail, splitEmail } from './utils/email';
|
|
45
46
|
export { config } from './config';
|
|
46
47
|
export type { ColorScheme, ColorSchemePreference } from './types/theme';
|
|
47
48
|
export type { ComponentMeta, ComponentCategory, ComponentCategoryId, ComponentStatus } from './types/meta';
|
package/dist/index.js
CHANGED
|
@@ -3647,4 +3647,16 @@ function kc({ children: e, icons: t, colorScheme: n }) {
|
|
|
3647
3647
|
});
|
|
3648
3648
|
}
|
|
3649
3649
|
//#endregion
|
|
3650
|
-
|
|
3650
|
+
//#region src/utils/email.ts
|
|
3651
|
+
function Ac(e) {
|
|
3652
|
+
let t = e.lastIndexOf("@");
|
|
3653
|
+
return t <= 0 || t === e.length - 1 ? { local: e } : {
|
|
3654
|
+
local: e.slice(0, t),
|
|
3655
|
+
domain: e.slice(t + 1)
|
|
3656
|
+
};
|
|
3657
|
+
}
|
|
3658
|
+
function jc(e) {
|
|
3659
|
+
return Ac(e).local.split(/[._-]+/).filter(Boolean).slice(0, 2).map((e) => e.charAt(0).toUpperCase()).join("");
|
|
3660
|
+
}
|
|
3661
|
+
//#endregion
|
|
3662
|
+
export { ea as AccountCard, Nr as AppShell, qi as Avatar, He as Button, ma as Callout, ai as Card, it as Checkbox, Ca as Chip, Ke as ChipLink, fe as Code, Ta as Collapsible, r as ComponentCategories, Xe as CopyButton, Gn as Drawer, ut as Field, Et as Fieldset, f as Icon, tt as IconButton, za as ImFusionLogo, Nt as Input, Pa as Logo, Va as Meter, Ro as NavigationMenu, Ft as NumberField, hi as Popover, Hi as Prose, ve as Row, $t as Select, Se as Separator, Bo as Skeleton, t as Slider, Zo as Spinner, ge as Stack, ye as Switch, $o as Table, be as Tabs, Ss as Toast, _e as Toggle, xe as ToggleGroup, qs as Tooltip, uc as Typo, kc as WebUIProvider, fa as accountCardMeta, ri as appShellMeta, pa as avatarMeta, Ue as buttonMeta, Sa as calloutMeta, mi as cardMeta, lt as checkboxMeta, qe as chipLinkMeta, wa as chipMeta, he as codeMeta, Ma as collapsibleMeta, I as config, Ze as copyButtonMeta, we as cva, Te as cx, yr as drawerMeta, wt as fieldMeta, jt as fieldsetMeta, nt as iconButtonMeta, le as iconMeta, jc as initialsFromEmail, Pt as inputMeta, Fa as logoMeta, Qa as meterMeta, zo as navigationMenuMeta, Qt as numberFieldMeta, Bi as popoverMeta, Ui as proseMeta, Wi as rowMeta, Rn as selectMeta, Gi as separatorMeta, Wo as skeletonMeta, zn as sliderMeta, Qo as spinnerMeta, Ac as splitEmail, Ki as stackMeta, Bn as switchMeta, bs as tableMeta, xs as tabsMeta, Ks as toastMeta, Hn as toggleGroupMeta, Vn as toggleMeta, lc as tooltipMeta, Dc as typoMeta, pe as useClipboard, Ar as useColorScheme, Mr as useMediaQuery };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** Splits an email at its last `@`. Without a local part and a domain, `local` is the whole string. */
|
|
2
|
+
export declare function splitEmail(email: string): {
|
|
3
|
+
local: string;
|
|
4
|
+
domain?: string;
|
|
5
|
+
};
|
|
6
|
+
/** Up to two initials from the email's local part, split at dots, dashes, and underscores: `m.rossi@…` gives `MR`. */
|
|
7
|
+
export declare function initialsFromEmail(email: string): string;
|
package/package.json
CHANGED