@bcc-code/component-library-vue 0.0.0-dev.63bb37d → 0.0.0-dev.6678067

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
@@ -1832,6 +1832,7 @@
1832
1832
  .p-menu-overlay,
1833
1833
  .p-multiselect-overlay,
1834
1834
  .p-select-overlay,
1835
+ .p-datepicker-panel,
1835
1836
  .p-treeselect-overlay {
1836
1837
  margin: var(--p-anchor-gutter) 0;
1837
1838
  }
@@ -1901,9 +1902,8 @@
1901
1902
  z-index: 2;
1902
1903
  }
1903
1904
 
1904
- .p-dialog-close-button .p-icon {
1905
- height: var(--icon-size-sm);
1906
- width: var(--icon-size-sm);
1905
+ .p-dialog-close-button {
1906
+ --p-icon-size: var(--icon-size-sm);
1907
1907
  }
1908
1908
  .p-dialog .p-button-icon:empty {
1909
1909
  display: none;
@@ -1914,6 +1914,39 @@
1914
1914
 
1915
1915
  /* === ./components/custom/styles.css === */
1916
1916
 
1917
+ /* from ./BccAppNavigation/BccAppNavigation.css */
1918
+ @layer components {
1919
+ .bcc-app-nav {
1920
+ @apply sticky inset-x-0 bottom-0 z-20 overflow-visible bg-white shadow-md sm:rounded-t-xl;
1921
+ }
1922
+ .bcc-app-nav .bcc-app-nav-container {
1923
+ @apply center pb-inset-bottom-1 mx-auto max-w-lg pt-1;
1924
+ }
1925
+
1926
+ .bcc-app-nav .bcc-app-nav-item {
1927
+ @apply flex flex-col items-center justify-center relative h-12 flex-1 gap-1 ctx-gray-subtlest transition-colors focus:outline-none focus:ring-0 text-ctx;
1928
+ @apply opacity-50;
1929
+ }
1930
+
1931
+ .bcc-app-nav .bcc-app-nav-item--active {
1932
+ @apply text-brand-700 opacity-100;
1933
+ }
1934
+
1935
+ .dark .bcc-app-nav {
1936
+ @apply bg-neutral-900;
1937
+ }
1938
+
1939
+ .dark .bcc-app-nav .bcc-app-nav-item {
1940
+ @apply opacity-70 text-gray-400;
1941
+ }
1942
+
1943
+ .dark .bcc-app-nav .bcc-app-nav-item--active {
1944
+ @apply text-white;
1945
+ }
1946
+ }
1947
+
1948
+
1949
+
1917
1950
  /* from ./BccBadge/BccBadge.css */
1918
1951
  @layer components {
1919
1952
  .bcc-badge {
@@ -2378,91 +2411,74 @@
2378
2411
 
2379
2412
  /* from ./BccAvatar/BccAvatar.css */
2380
2413
  @layer components {
2381
- .bcc-avatar {
2382
- --p-avatar-background: var(--ctx-background);
2383
- --p-avatar-color: var(--ctx-text);
2384
- --bcc-avatar-border: var(--ctx-border);
2385
- @apply overflow-hidden shrink-0 ctx-gray-subtler text-sm;
2386
- }
2387
-
2388
- .bcc-avatar .icon {
2389
- height: var(--icon-size-sm);
2390
- }
2414
+ .bcc-avatar {
2415
+ --p-avatar-background: var(--ctx-background);
2416
+ --p-avatar-color: var(--ctx-text);
2417
+ --bcc-avatar-border: var(--ctx-border);
2418
+ --p-icon-size: var(--icon-size-sm);
2419
+ @apply ctx-gray-subtler shrink-0 overflow-hidden text-sm;
2420
+ }
2391
2421
 
2392
- .bcc-avatar.male,
2393
- .bcc-avatar.M {
2394
- @apply ctx-blue-subtler;
2395
- }
2396
- .bcc-avatar.female,
2397
- .bcc-avatar.F {
2398
- @apply ctx-purple-subtler;
2399
- }
2400
- .bcc-avatar.male.child,
2401
- .bcc-avatar.M.child {
2402
- @apply ctx-teal-subtler;
2403
- }
2404
- .bcc-avatar.female.child,
2405
- .bcc-avatar.F.child {
2406
- @apply ctx-magenta-subtler;
2407
- }
2408
- .bcc-avatar.bordered {
2409
- @apply border-2 border-ctx;
2410
- }
2411
- .bcc-avatar.xs {
2412
- @apply size-5 text-xs;
2413
- }
2414
- .bcc-avatar.xs .icon {
2415
- height: var(--icon-size-xs);
2416
- }
2417
- .bcc-avatar.sm {
2418
- @apply size-6 text-xs;
2419
- }
2420
- .bcc-avatar.sm .icon {
2421
- height: var(--icon-size-xs);
2422
- }
2423
- .bcc-avatar.md {
2424
- /* same as default */
2425
- }
2426
- .bcc-avatar.md .icon {
2427
- /* same as default */
2428
- }
2429
- .bcc-avatar.lg {
2430
- @apply size-10 text-md;
2431
- }
2432
- .bcc-avatar.lg .icon {
2433
- height: var(--icon-size-md);
2434
- }
2435
- .bcc-avatar.xl {
2436
- @apply size-12 text-xl;
2437
- }
2438
- .bcc-avatar.xl .icon {
2439
- height: var(--icon-size-lg);
2440
- }
2441
- .bcc-avatar.xxl {
2442
- @apply size-20 text-3xl;
2443
- }
2444
- .bcc-avatar.xxl .icon {
2445
- height: var(--icon-size-xl);
2446
- }
2447
- .bcc-avatar.xxxl {
2448
- @apply size-24 text-4xl;
2449
- }
2450
- .bcc-avatar.xxxl .icon {
2451
- height: var(--icon-size-xl);
2452
- }
2422
+ .bcc-avatar.male,
2423
+ .bcc-avatar.M {
2424
+ @apply ctx-blue-subtler;
2425
+ }
2426
+ .bcc-avatar.female,
2427
+ .bcc-avatar.F {
2428
+ @apply ctx-purple-subtler;
2429
+ }
2430
+ .bcc-avatar.male.child,
2431
+ .bcc-avatar.M.child {
2432
+ @apply ctx-teal-subtler;
2433
+ }
2434
+ .bcc-avatar.female.child,
2435
+ .bcc-avatar.F.child {
2436
+ @apply ctx-magenta-subtler;
2437
+ }
2438
+ .bcc-avatar.bordered {
2439
+ @apply border-ctx border-2;
2440
+ }
2441
+ .bcc-avatar.xs {
2442
+ @apply size-5 text-xs;
2443
+ --p-icon-size: var(--icon-size-xs);
2444
+ }
2445
+ .bcc-avatar.sm {
2446
+ @apply size-6 text-xs;
2447
+ --p-icon-size: var(--icon-size-xs);
2448
+ }
2449
+ /* .bcc-avatar.md {
2450
+ same as default
2451
+ }*/
2452
+ .bcc-avatar.lg {
2453
+ @apply text-md size-10;
2454
+ --p-icon-size: var(--icon-size-md);
2455
+ }
2456
+ .bcc-avatar.xl {
2457
+ @apply size-12 text-xl;
2458
+ --p-icon-size: var(--icon-size-lg);
2459
+ }
2460
+ .bcc-avatar.xxl {
2461
+ @apply size-20 text-3xl;
2462
+ --p-icon-size: var(--icon-size-xl);
2463
+ }
2464
+ .bcc-avatar.xxxl {
2465
+ @apply size-24 text-4xl;
2466
+ --p-icon-size: var(--icon-size-xl);
2467
+ }
2453
2468
 
2454
- .p-overlaybadge .bcc-avatar.p-avatar-circle.lg~.p-badge,
2455
- .p-overlaybadge .bcc-avatar.p-avatar-circle.xl~.p-badge {
2456
- transform: translate(40%, -40%);
2457
- }
2469
+ .p-overlaybadge .bcc-avatar.p-avatar-circle.lg ~ .p-badge,
2470
+ .p-overlaybadge .bcc-avatar.p-avatar-circle.xl ~ .p-badge {
2471
+ transform: translate(40%, -40%);
2472
+ }
2458
2473
 
2459
- .p-overlaybadge .bcc-avatar.p-avatar-circle.xxxl~.p-badge,
2460
- .p-overlaybadge .bcc-avatar.p-avatar-circle.xxl~.p-badge {
2461
- transform: translate(20%, -20%);
2462
- }
2474
+ .p-overlaybadge .bcc-avatar.p-avatar-circle.xxxl ~ .p-badge,
2475
+ .p-overlaybadge .bcc-avatar.p-avatar-circle.xxl ~ .p-badge {
2476
+ transform: translate(20%, -20%);
2477
+ }
2463
2478
  }
2464
2479
 
2465
2480
 
2481
+
2466
2482
  /* from ./BccTabs/BccTabs.css */
2467
2483
  @layer components {
2468
2484
  .bcc-tabs-fill.p-tabs {
@@ -2481,6 +2497,9 @@
2481
2497
  height: 100%;
2482
2498
  overflow: auto;
2483
2499
  }
2500
+ .bcc-tabs-fluid.p-tabs {
2501
+ width: 100%;
2502
+ }
2484
2503
  }
2485
2504
 
2486
2505
 
@@ -0,0 +1,32 @@
1
+ import type { VueComponent } from '@/types';
2
+ import { type Component } from 'vue';
3
+ export type BccAppNavigationItem = {
4
+ key: string;
5
+ title: string;
6
+ icon: Component;
7
+ pin?: number;
8
+ /** Any additional properties will be passed to the component.
9
+ * @example
10
+ * {
11
+ * href: '/',
12
+ * target: '_blank',
13
+ * } or for router link:
14
+ * {
15
+ * to: '/',
16
+ * replace: true,
17
+ * }
18
+ */
19
+ [key: string]: unknown;
20
+ };
21
+ type __VLS_Props = {
22
+ items: BccAppNavigationItem[];
23
+ linkComponent?: VueComponent;
24
+ activeKey?: BccAppNavigationItem['key'] | null;
25
+ };
26
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
27
+ select: (item: BccAppNavigationItem) => any;
28
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
29
+ onSelect?: ((item: BccAppNavigationItem) => any) | undefined;
30
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
31
+ declare const _default: typeof __VLS_export;
32
+ export default _default;
@@ -44,6 +44,7 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
44
44
  "onUpdate:modelValue"?: ((value: number) => any) | undefined;
45
45
  }>, {
46
46
  size: number;
47
+ duration: number;
47
48
  colored: boolean;
48
49
  arcWidth: number;
49
50
  min: number;
@@ -51,7 +52,6 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {}, {
51
52
  steps: number;
52
53
  showHandle: boolean;
53
54
  hideArrows: boolean;
54
- duration: number;
55
55
  animateRotations: number;
56
56
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
57
57
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -4,8 +4,8 @@ declare const __VLS_export: import("vue").DefineComponent<ReactProps, {}, {}, {}
4
4
  }, string, import("vue").PublicProps, Readonly<ReactProps> & Readonly<{
5
5
  onToggle?: ((id: string) => any) | undefined;
6
6
  }>, {
7
- top: boolean;
8
7
  placeholder: string;
8
+ top: boolean;
9
9
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
10
10
  declare const _default: typeof __VLS_export;
11
11
  export default _default;
@@ -0,0 +1,47 @@
1
+ import { type Component } from 'vue';
2
+ export type TopNavigationProps = {
3
+ title?: string | (() => string);
4
+ subtitle?: string | (() => string);
5
+ left?: ((...args: unknown[]) => Component | null) | Component | string | 'event-logo';
6
+ right?: ((...args: unknown[]) => Component | null) | Component | string;
7
+ hideBack?: boolean;
8
+ backTitle?: string;
9
+ };
10
+ type __VLS_Props = TopNavigationProps & {
11
+ relative?: boolean;
12
+ fixed?: boolean;
13
+ padded?: boolean;
14
+ transparent?: boolean;
15
+ glass?: boolean;
16
+ backTitle?: string;
17
+ force?: boolean;
18
+ titleLeft?: boolean;
19
+ };
20
+ declare var __VLS_1: {
21
+ title: {
22
+ title: string;
23
+ subtitle: string;
24
+ };
25
+ }, __VLS_13: {}, __VLS_20: {};
26
+ type __VLS_Slots = {} & {
27
+ default?: (props: typeof __VLS_1) => any;
28
+ } & {
29
+ right?: (props: typeof __VLS_13) => any;
30
+ } & {
31
+ bottom?: (props: typeof __VLS_20) => any;
32
+ };
33
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
34
+ back: () => any;
35
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
36
+ onBack?: (() => any) | undefined;
37
+ }>, {
38
+ hideBack: boolean;
39
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
40
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
41
+ declare const _default: typeof __VLS_export;
42
+ export default _default;
43
+ type __VLS_WithSlots<T, S> = T & {
44
+ new (): {
45
+ $slots: S;
46
+ };
47
+ };
@@ -2,6 +2,7 @@
2
2
  * Custom BCC components (not based on PrimeVue).
3
3
  * Add new custom components here and export them from this file.
4
4
  */
5
+ export { default as BccAppNavigation } from './BccAppNavigation/BccAppNavigation.vue';
5
6
  export { default as BccBadge } from './BccBadge/BccBadge.vue';
6
7
  export { default as BccCapacityIndicator } from './BccCapacityIndicator/BccCapacityIndicator.vue';
7
8
  export { default as BccCircleLoader } from './BccCircleLoader/BccCircleLoader.vue';
@@ -14,6 +15,8 @@ export { default as BccReact } from './BccReact/BccReact.vue';
14
15
  export { default as BccReactEmoji } from './BccReact/BccReactEmoji.vue';
15
16
  export { default as BccStepIndicator } from './BccStepIndicator/BccStepIndicator.vue';
16
17
  export { default as BccTag } from './BccTag/BccTag.vue';
18
+ export { default as BccTopNavigation } from './BccTopNavigation/BccTopNavigation.vue';
19
+ export type { BccAppNavigationItem } from './BccAppNavigation/BccAppNavigation.vue';
17
20
  export type { BadgeProps } from './BccBadge/BccBadge.vue';
18
21
  export type { CapacityIndicatorProps } from './BccCapacityIndicator/BccCapacityIndicator.vue';
19
22
  export type { KnobProps, KnobSlots } from './BccDialKnob/BccDialKnob.vue';
@@ -24,3 +27,4 @@ export type { NpsScoreProps } from './BccNpsScore/BccNpsScore.vue';
24
27
  export type { ReactInfo, ReactProps } from './BccReact/types';
25
28
  export type { StepIndicatorProps } from './BccStepIndicator/BccStepIndicator.vue';
26
29
  export type { TagProps } from './BccTag/BccTag.vue';
30
+ export type { TopNavigationProps } from './BccTopNavigation/BccTopNavigation.vue';
@@ -1,5 +1,5 @@
1
1
  import type { VueComponent } from '@/types';
2
- import { type MenuProps as PrimeMenuProps } from 'primevue/menu';
2
+ import { type MenuMethods as PrimeMenuMethods, type MenuProps as PrimeMenuProps } from 'primevue/menu';
3
3
  import type { MenuItem } from 'primevue/menuitem';
4
4
  /** Menu item model for BccMenu: icon can be a PrimeVue icon class string or a Vue icon component. */
5
5
  export type BccMenuItem = Omit<MenuItem, 'icon' | 'items'> & {
@@ -9,10 +9,6 @@ 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, {
13
- toggle: (event: Event, target?: unknown) => void | undefined;
14
- show: (event: Event, target?: unknown) => void | undefined;
15
- hide: () => void | undefined;
16
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<MenuProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
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>;
17
13
  declare const _default: typeof __VLS_export;
18
14
  export default _default;
@@ -13,6 +13,8 @@ export type TabsProps = Omit<PrimeTabsProps, 'value'> & {
13
13
  fill?: boolean;
14
14
  modelValue?: number;
15
15
  noPanels?: boolean;
16
+ fluid?: boolean;
17
+ bold?: boolean;
16
18
  };
17
19
  type __VLS_Props = TabsProps;
18
20
  type __VLS_ModelProps = {
@@ -14,9 +14,14 @@ export type ToggleProps = ToggleSwitchProps & {
14
14
  /** When true, applies context-aware styling (e.g. from design tokens/theme). */
15
15
  useCtx?: boolean;
16
16
  };
17
- declare const __VLS_export: import("vue").DefineComponent<ToggleProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
17
+ type __VLS_Props = ToggleProps;
18
+ type __VLS_ModelProps = {
19
+ modelValue: boolean;
20
+ };
21
+ type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
22
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
23
  "update:modelValue": (value: boolean) => any;
19
- }, string, import("vue").PublicProps, Readonly<ToggleProps> & Readonly<{
24
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
20
25
  "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
21
26
  }>, {
22
27
  defaultValue: string | boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bcc-code/component-library-vue",
3
- "version": "0.0.0-dev.63bb37d",
3
+ "version": "0.0.0-dev.6678067",
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.42",
56
+ "@bcc-code/design-tokens": "^5.1.45",
57
57
  "@bcc-code/icons-vue": "^1.4.0",
58
58
  "@primeuix/themes": "^2.0.3",
59
59
  "@tailwindcss/vite": "^4.1.18",