@bcc-code/component-library-vue 0.0.0-dev.3d17dd8 → 0.0.0-dev.4029b40

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/dist/theme.css CHANGED
@@ -774,18 +774,18 @@
774
774
  }
775
775
 
776
776
  @utility ctx-brand-bolder {
777
- --ctx-text: var(--color-default-bcc-100);
777
+ --ctx-text: var(--color-default-neutral-0);
778
778
  --ctx-text-bold: var(--color-default-neutral-0);
779
- --ctx-background: var(--color-default-bcc-700);
780
- --ctx-gradient: var(--color-default-bcc-800);
779
+ --ctx-background: var(--color-default-bcc-800);
780
+ --ctx-gradient: var(--color-default-bcc-900);
781
781
  --ctx-border: var(--color-default-bcc-700);
782
782
  --ctx-shadow: var(--color-neutral-alpha-500A);
783
- --ctx-text-hover: var(--color-default-bcc-100);
784
- --ctx-text-pressed: var(--color-default-bcc-100);
785
- --ctx-background-hover: var(--color-default-bcc-800);
786
- --ctx-background-pressed: var(--color-default-bcc-900);
787
- --ctx-gradient-hover: var(--color-default-bcc-900);
788
- --ctx-gradient-pressed: var(--color-default-bcc-900);
783
+ --ctx-text-hover: var(--color-default-neutral-0);
784
+ --ctx-text-pressed: var(--color-default-neutral-0);
785
+ --ctx-background-hover: var(--color-default-bcc-900);
786
+ --ctx-background-pressed: var(--color-default-bcc-1000);
787
+ --ctx-gradient-hover: var(--color-default-bcc-1000);
788
+ --ctx-gradient-pressed: var(--color-default-bcc-1000);
789
789
  --ctx-border-hover: var(--color-default-bcc-700);
790
790
  --ctx-border-pressed: var(--color-default-bcc-700);
791
791
  }
@@ -980,16 +980,16 @@
980
980
  @utility ctx-gray-bolder {
981
981
  --ctx-text: var(--color-default-neutral-200);
982
982
  --ctx-text-bold: var(--color-default-neutral-100);
983
- --ctx-background: var(--color-default-neutral-800);
984
- --ctx-gradient: var(--color-default-neutral-700);
983
+ --ctx-background: var(--color-default-neutral-700);
984
+ --ctx-gradient: var(--color-default-neutral-800);
985
985
  --ctx-border: var(--color-default-neutral-700);
986
986
  --ctx-shadow: var(--color-neutral-alpha-500A);
987
987
  --ctx-text-hover: var(--color-default-neutral-200);
988
988
  --ctx-text-pressed: var(--color-default-neutral-200);
989
- --ctx-background-hover: var(--color-default-neutral-700);
990
- --ctx-background-pressed: var(--color-default-neutral-600);
991
- --ctx-gradient-hover: var(--color-default-neutral-600);
992
- --ctx-gradient-pressed: var(--color-default-neutral-600);
989
+ --ctx-background-hover: var(--color-default-neutral-800);
990
+ --ctx-background-pressed: var(--color-default-neutral-900);
991
+ --ctx-gradient-hover: var(--color-default-neutral-900);
992
+ --ctx-gradient-pressed: var(--color-default-neutral-900);
993
993
  --ctx-border-hover: var(--color-default-neutral-700);
994
994
  --ctx-border-pressed: var(--color-default-neutral-700);
995
995
  }
@@ -1810,16 +1810,18 @@
1810
1810
  cursor: pointer;
1811
1811
  }
1812
1812
 
1813
- .clickable:hover {
1814
- --ctx-background: var(--ctx-background-hover);
1815
- --ctx-text: var(--ctx-text-hover);
1816
- --ctx-border: var(--ctx-border-hover);
1817
- }
1813
+ @media (hover: hover) and (pointer: fine) {
1814
+ .clickable:hover {
1815
+ --ctx-background: var(--ctx-background-hover);
1816
+ --ctx-text: var(--ctx-text-hover);
1817
+ --ctx-border: var(--ctx-border-hover);
1818
+ }
1818
1819
 
1819
- .clickable:active {
1820
- --ctx-background: var(--ctx-background-pressed);
1821
- --ctx-text: var(--ctx-text-pressed);
1822
- --ctx-border: var(--ctx-border-pressed);
1820
+ .clickable:active {
1821
+ --ctx-background: var(--ctx-background-pressed);
1822
+ --ctx-text: var(--ctx-text-pressed);
1823
+ --ctx-border: var(--ctx-border-pressed);
1824
+ }
1823
1825
  }
1824
1826
 
1825
1827
 
@@ -1843,6 +1845,10 @@
1843
1845
  /* === ./styles/component-overrides.css === */
1844
1846
  /** Custom styles to fix primevue components that are not custom or wrapped. */
1845
1847
 
1848
+ :root {
1849
+ --p-toast-width: min(85vw, 400px);
1850
+ }
1851
+
1846
1852
  /**
1847
1853
  * GUTTER FIX
1848
1854
  * Primevue's dropwdown components are all missing the gap between input and dropdown
@@ -1956,29 +1962,27 @@
1956
1962
  }
1957
1963
 
1958
1964
  .bcc-app-nav-item {
1959
- @apply ctx-gray-subtlest text-ctx relative flex h-12 flex-1 flex-col items-center justify-center gap-1 transition-colors focus:ring-0 focus:outline-none;
1965
+ @apply relative flex h-12 flex-1 flex-col items-center justify-center gap-1 transition-colors focus:ring-0 focus:outline-none;
1960
1966
  }
1961
1967
 
1962
1968
  .bcc-nav-item-icon {
1963
- @apply size-6 opacity-50;
1969
+ @apply size-6 icon-subtlest;
1964
1970
  }
1965
1971
 
1966
1972
  .bcc-nav-item-badge {
1967
- @apply absolute top-0 right-1 opacity-75;
1973
+ @apply absolute top-0 right-1;
1968
1974
  }
1969
1975
 
1970
1976
  .bcc-nav-item-title {
1971
- @apply text-heading-xs text-center opacity-50;
1977
+ @apply text-heading-xs text-center text-subtlest opacity-75;
1972
1978
  }
1973
1979
 
1974
- .bcc-app-nav-item--active {
1975
- @apply text-selected;
1980
+ .bcc-app-nav-item--active .bcc-nav-item-title {
1981
+ @apply text-selected opacity-100;
1976
1982
  }
1977
1983
 
1978
- .bcc-app-nav-item--active .bcc-nav-item-icon,
1979
- .bcc-app-nav-item--active .bcc-nav-item-badge,
1980
- .bcc-app-nav-item--active .bcc-nav-item-title {
1981
- @apply opacity-100;
1984
+ .bcc-app-nav-item--active .bcc-nav-item-icon {
1985
+ @apply text-selected;
1982
1986
  }
1983
1987
  }
1984
1988
 
@@ -2333,117 +2337,120 @@
2333
2337
 
2334
2338
  /* from ./BccReact/BccReact.css */
2335
2339
  @layer components {
2336
- .bcc-react {
2337
- @apply relative flex w-full items-center overflow-visible;
2338
- }
2339
- .bcc-react-toggle {
2340
- @apply mr-1 flex shrink-0 cursor-pointer items-center justify-center rounded-full p-1 leading-tight transition;
2341
- }
2342
- .bcc-react-list {
2343
- @apply hide-scrollbar flex flex-1 items-center gap-1 overflow-x-auto overflow-y-hidden rounded-full p-1;
2344
- }
2345
- .bcc-react-empty {
2346
- @apply heading-xs flex items-center;
2347
- }
2340
+ .bcc-react {
2341
+ @apply relative flex w-full items-center overflow-visible;
2342
+ }
2343
+ .bcc-react-toggle {
2344
+ @apply mr-1 flex shrink-0 cursor-pointer items-center justify-center rounded-full p-1 transition;
2345
+ }
2346
+ .bcc-react-list {
2347
+ @apply hide-scrollbar flex flex-1 items-center gap-1 overflow-x-auto overflow-y-hidden rounded-full p-1;
2348
+ }
2349
+ .bcc-react-empty {
2350
+ @apply heading-xs flex items-center;
2351
+ }
2348
2352
 
2349
- .bcc-react-selector-container {
2350
- @apply absolute z-50 h-9;
2351
- @apply top-11 origin-top-left;
2352
- }
2353
+ .bcc-react-selector-container {
2354
+ @apply absolute z-50 h-9;
2355
+ @apply top-11 origin-top-left;
2356
+ }
2353
2357
 
2354
- .bcc-react-selector-container--top {
2355
- @apply -top-10 origin-bottom-left;
2356
- }
2358
+ .bcc-react-selector-container--top {
2359
+ @apply -top-10 origin-bottom-left;
2360
+ }
2357
2361
 
2358
- .bcc-react-selector {
2359
- @apply flex h-9 flex-col overflow-hidden bg-neutral-100 px-0 shadow-md;
2360
- border-radius: 18px;
2361
- }
2362
+ .bcc-react-selector {
2363
+ @apply flex h-9 flex-col overflow-hidden bg-neutral-100 px-0 shadow-md;
2364
+ border-radius: 18px;
2365
+ }
2362
2366
 
2363
- .bcc-react-selector-emojis-container {
2364
- @apply flex items-center bg-neutral-100 px-1;
2365
- }
2367
+ .bcc-react-selector-emojis-container {
2368
+ @apply flex items-center bg-neutral-100 px-1;
2369
+ }
2366
2370
 
2367
- .bcc-react-selector-more {
2368
- @apply flex w-9 items-center justify-center;
2369
- }
2370
- .bcc-react-selector-more-btn {
2371
- @apply flex h-7 w-7 items-center justify-center rounded-full bg-slate-200;
2372
- }
2371
+ .bcc-react-selector-more {
2372
+ @apply flex w-9 items-center justify-center;
2373
+ }
2374
+ .bcc-react-selector-more-btn {
2375
+ @apply flex h-7 w-7 items-center justify-center rounded-full bg-slate-200;
2376
+ }
2373
2377
 
2374
- .bcc-react-dropdown-container {
2375
- @apply left-0 top-0 -z-10 w-full max-w-full;
2376
- width: 296px;
2377
- }
2378
- .bcc-react-dropdown-container--top {
2379
- @apply bottom-0 top-auto pb-0;
2380
- }
2378
+ .bcc-react-dropdown-container {
2379
+ @apply top-0 left-0 -z-10 w-full max-w-full;
2380
+ width: 296px;
2381
+ }
2382
+ .bcc-react-dropdown-container--top {
2383
+ @apply top-auto bottom-0 pb-0;
2384
+ }
2381
2385
 
2382
- .bcc-react-dropdown {
2383
- @apply -z-10 flex w-full flex-wrap overflow-hidden px-1;
2384
- }
2386
+ .bcc-react-dropdown {
2387
+ @apply -z-10 flex w-full flex-wrap overflow-hidden px-1;
2388
+ }
2385
2389
 
2386
- .bcc-react-arrow-down-icon {
2387
- @apply h-6 w-6 text-slate-600;
2388
- transition: transform 0.3s ease;
2389
- }
2390
- .bcc-react-arrow-down-icon.open {
2391
- transform: rotate(-180deg);
2392
- }
2390
+ .bcc-react-arrow-down-icon {
2391
+ @apply h-6 w-6 text-slate-600;
2392
+ transition: transform 0.3s ease;
2393
+ }
2394
+ .bcc-react-arrow-down-icon.open {
2395
+ transform: rotate(-180deg);
2396
+ }
2393
2397
 
2394
- .bcc-react-selector-item {
2395
- @apply p-2 text-xl leading-none transition-transform duration-200 ease-out h-9 w-9 relative;
2396
- }
2398
+ .bcc-react-selector-item {
2399
+ @apply relative h-9 w-9 p-2 text-xl leading-none transition-transform duration-200 ease-out;
2400
+ }
2397
2401
 
2398
- .bcc-react-selector-item--clicked {
2399
- animation: scaleFadeOut 300ms forwards;
2400
- }
2402
+ .bcc-react-selector-item--clicked {
2403
+ animation: scaleFadeOut 300ms forwards;
2404
+ }
2401
2405
 
2402
- @keyframes scaleFadeOut {
2403
- 0% {
2404
- transform: scale(1);
2405
- opacity: 1;
2406
- }
2407
- 100% {
2408
- transform: scale(1.4);
2409
- opacity: 0;
2410
- }
2411
- }
2406
+ @keyframes scaleFadeOut {
2407
+ 0% {
2408
+ transform: scale(1);
2409
+ opacity: 1;
2410
+ }
2411
+ 100% {
2412
+ transform: scale(1.4);
2413
+ opacity: 0;
2414
+ }
2415
+ }
2412
2416
 
2413
- .bcc-react-emoji-list-item {
2414
- @apply flex ctx clickable items-center justify-center rounded-full p-1 text-2xl leading-none drop-shadow transition-all hover:scale-105;
2415
- /* Default --not-selected */
2416
- @apply ctx-neutral-subtlest;
2417
- }
2418
- .bcc-react-emoji-list-item.selected {
2419
- @apply ctx-neutral-subtle;
2420
- }
2417
+ .bcc-react-emoji-list-item {
2418
+ @apply ctx clickable center h-7 min-w-7 shrink-0 rounded-full p-1 text-lg leading-none drop-shadow transition-all hover:scale-105;
2419
+ /* Default --not-selected */
2420
+ @apply ctx-neutral-subtlest;
2421
+ }
2422
+ .bcc-react-emoji-list-item span {
2423
+ @apply leading-none;
2424
+ }
2425
+ .bcc-react-emoji-list-item.selected {
2426
+ @apply ctx-neutral-subtle;
2427
+ }
2421
2428
  }
2422
2429
 
2423
2430
 
2424
2431
 
2425
2432
  /* from ./BccTag/BccTag.css */
2426
-
2427
2433
  @layer components {
2428
2434
  .bcc-tag.bcc-badge {
2429
2435
  @apply w-auto;
2430
2436
  }
2431
2437
  .bcc-tag.bcc-badge.md {
2432
- @apply font-regular h-6;
2438
+ @apply text-body-md h-6;
2433
2439
  }
2434
2440
  .bcc-tag.bcc-badge.sm {
2435
- @apply font-regular h-5;
2441
+ @apply text-body-sm h-5;
2436
2442
  }
2437
2443
  .bcc-tag.bcc-badge.lg {
2438
- @apply font-regular h-8;
2444
+ @apply text-body-md h-8;
2439
2445
  }
2440
2446
  .bcc-tag.bcc-badge.xl {
2441
- @apply font-regular h-10;
2447
+ @apply text-body-lg h-10;
2442
2448
  }
2443
2449
  }
2444
2450
 
2445
2451
 
2446
2452
 
2453
+
2447
2454
  /* === ./components/wrapped/styles.css === */
2448
2455
 
2449
2456
  /* from ./BccAvatar/BccAvatar.css */
@@ -1,3 +1,11 @@
1
- declare const __VLS_export: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
1
+ type __VLS_Props = {
2
+ icon?: string;
3
+ size?: 'sm' | 'md' | 'base' | 'lg' | 'xl' | '2xl' | '3xl';
4
+ left?: boolean;
5
+ right?: boolean;
6
+ };
7
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
8
+ size: "sm" | "md" | "base" | "lg" | "xl" | "2xl" | "3xl";
9
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
2
10
  declare const _default: typeof __VLS_export;
3
11
  export default _default;
@@ -1,4 +1,4 @@
1
- import type { ReactProps } from './types';
1
+ import type { ReactInfo, ReactProps } from './types';
2
2
  declare const __VLS_export: import("vue").DefineComponent<ReactProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
3
3
  toggle: (id: string) => any;
4
4
  }, string, import("vue").PublicProps, Readonly<ReactProps> & Readonly<{
@@ -6,6 +6,7 @@ declare const __VLS_export: import("vue").DefineComponent<ReactProps, {}, {}, {}
6
6
  }>, {
7
7
  placeholder: string;
8
8
  top: boolean;
9
+ emojis: ReactInfo[];
9
10
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
10
11
  declare const _default: typeof __VLS_export;
11
12
  export default _default;
@@ -11,13 +11,13 @@ export type StepIndicatorProps = {
11
11
  };
12
12
  type __VLS_Props = StepIndicatorProps;
13
13
  type __VLS_ModelProps = {
14
- modelValue?: number;
14
+ modelValue?: number | null;
15
15
  };
16
16
  type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
17
17
  declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
- "update:modelValue": (value: number) => any;
18
+ "update:modelValue": (value: number | null) => any;
19
19
  }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
20
- "onUpdate:modelValue"?: ((value: number) => any) | undefined;
20
+ "onUpdate:modelValue"?: ((value: number | null) => any) | undefined;
21
21
  }>, {
22
22
  context: BCC_CONTEXT;
23
23
  hideText: boolean;
@@ -11,6 +11,7 @@ export type TagProps = Omit<BadgeProps, 'value' | 'squared'> & {
11
11
  clickable?: boolean;
12
12
  /** Label text for the tag when not using the default slot. */
13
13
  text?: string;
14
+ truncate?: boolean;
14
15
  };
15
16
  declare var __VLS_13: {};
16
17
  type __VLS_Slots = {} & {
@@ -22,13 +22,23 @@ declare var __VLS_1: {
22
22
  title: string;
23
23
  subtitle: string;
24
24
  };
25
- }, __VLS_13: {}, __VLS_20: {};
25
+ }, __VLS_8: {}, __VLS_15: {
26
+ title: string;
27
+ }, __VLS_17: {
28
+ subtitle: string;
29
+ }, __VLS_19: {}, __VLS_26: {};
26
30
  type __VLS_Slots = {} & {
27
31
  default?: (props: typeof __VLS_1) => any;
28
32
  } & {
29
- right?: (props: typeof __VLS_13) => any;
33
+ left?: (props: typeof __VLS_8) => any;
30
34
  } & {
31
- bottom?: (props: typeof __VLS_20) => any;
35
+ title?: (props: typeof __VLS_15) => any;
36
+ } & {
37
+ subtitle?: (props: typeof __VLS_17) => any;
38
+ } & {
39
+ right?: (props: typeof __VLS_19) => any;
40
+ } & {
41
+ bottom?: (props: typeof __VLS_26) => any;
32
42
  };
33
43
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
34
44
  back: () => any;
@@ -9,6 +9,20 @@ export type BccMenuItem = Omit<MenuItem, 'icon' | 'items'> & {
9
9
  export type MenuProps = {
10
10
  model?: BccMenuItem[];
11
11
  } & Omit<PrimeMenuProps, 'model'>;
12
- declare const __VLS_export: import("vue").DefineComponent<MenuProps, PrimeMenuMethods, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<MenuProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
12
+ declare var __VLS_16: {
13
+ item: MenuItem;
14
+ label: string | ((...args: any) => string) | undefined;
15
+ props: import("primevue").MenuRouterBindProps;
16
+ };
17
+ type __VLS_Slots = {} & {
18
+ item?: (props: typeof __VLS_16) => any;
19
+ };
20
+ declare const __VLS_base: import("vue").DefineComponent<MenuProps, PrimeMenuMethods, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<MenuProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
21
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
13
22
  declare const _default: typeof __VLS_export;
14
23
  export default _default;
24
+ type __VLS_WithSlots<T, S> = T & {
25
+ new (): {
26
+ $slots: S;
27
+ };
28
+ };
@@ -2,6 +2,7 @@ import { type RadioButtonProps as PrimeRadioButtonProps } from 'primevue/radiobu
2
2
  export type RadioButtonProps = PrimeRadioButtonProps & {
3
3
  label?: string;
4
4
  labelLeft?: boolean;
5
+ justify?: 'start' | 'center' | 'end' | 'between' | 'around' | 'evenly';
5
6
  };
6
7
  declare var __VLS_6: {};
7
8
  type __VLS_Slots = {} & {
@@ -1,12 +1,15 @@
1
+ import type { VueComponent } from '@/types';
1
2
  import { type SelectButtonProps as PrimeSelectButtonProps } from 'primevue/selectbutton';
2
- export type SelectButtonProps = PrimeSelectButtonProps;
3
+ export type SelectButtonProps = PrimeSelectButtonProps & {
4
+ optionIcon?: string | ((option: unknown) => VueComponent | null);
5
+ };
3
6
  declare var __VLS_9: {
4
7
  option: any;
5
8
  };
6
9
  type __VLS_Slots = {} & {
7
10
  option?: (props: typeof __VLS_9) => any;
8
11
  };
9
- declare const __VLS_base: import("vue").DefineComponent<PrimeSelectButtonProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<PrimeSelectButtonProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
12
+ declare const __VLS_base: import("vue").DefineComponent<SelectButtonProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<SelectButtonProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
10
13
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
11
14
  declare const _default: typeof __VLS_export;
12
15
  export default _default;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bcc-code/component-library-vue",
3
- "version": "0.0.0-dev.3d17dd8",
3
+ "version": "0.0.0-dev.4029b40",
4
4
  "type": "module",
5
5
  "description": "Extended Vue component library based on PrimeVue and BCC design tokens",
6
6
  "repository": "https://github.com/bcc-code/bcc-design.git",
@@ -53,7 +53,7 @@
53
53
  "create-version": "node ./scripts/version.cjs"
54
54
  },
55
55
  "dependencies": {
56
- "@bcc-code/design-tokens": "^5.1.56",
56
+ "@bcc-code/design-tokens": "^5.1.72",
57
57
  "@bcc-code/icons-vue": "^1.4.0",
58
58
  "@primeuix/themes": "^2.0.3",
59
59
  "@tailwindcss/vite": "^4.1.18",