@bcc-code/component-library-vue 0.0.0-dev.0ebcb8d → 0.0.0-dev.137be32

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
@@ -1,10 +1,10 @@
1
1
  /* Layer order: Tailwind base/utilities first, then PrimeVue so component styles win */
2
2
  @layer theme, base, tailwind, primevue;
3
- @import "@bcc-code/design-tokens/css";
3
+ @import '@bcc-code/design-tokens/css';
4
4
 
5
- @import "tailwindcss";
6
- @import "@bcc-code/design-tokens/tailwind";
7
- @import "@bcc-code/design-tokens/primevue/overrides";
5
+ @import 'tailwindcss';
6
+ @import '@bcc-code/design-tokens/tailwind';
7
+ @import '@bcc-code/design-tokens/primevue/overrides';
8
8
 
9
9
 
10
10
  /* === ./styles/theme.css === */
@@ -649,7 +649,8 @@
649
649
 
650
650
  /* Capitalize first letter */
651
651
  @utility capital {
652
- display: inline-block;
652
+ @apply inline-block;
653
+
653
654
  &::first-letter {
654
655
  text-transform: uppercase;
655
656
  }
@@ -1824,44 +1825,91 @@
1824
1825
  /** Custom styles to fix primevue components that are not custom or wrapped. */
1825
1826
 
1826
1827
  /**
1827
- .BccAutocomplete
1828
+ * GUTTER FIX
1829
+ * Primevue's dropwdown components are all missing the gap between input and dropdown
1830
+ **/
1831
+ .p-autocomplete-overlay,
1832
+ .p-menu-overlay,
1833
+ .p-multiselect-overlay,
1834
+ .p-select-overlay,
1835
+ .p-treeselect-overlay {
1836
+ margin: var(--p-anchor-gutter) 0;
1837
+ }
1838
+
1839
+ /* This fix is to ensure overlay badge is contained within the size of the component it wraps */
1840
+ .p-overlaybadge {
1841
+ display: inline-block;
1842
+ }
1843
+
1844
+ /**
1845
+ * BccAutocomplete
1828
1846
  **/
1829
1847
 
1830
1848
  /** Our icons are a bit smaller that Primevue's default */
1831
1849
  .p-autocomplete .p-icon {
1832
- --p-icon-size: var(--icon-size-sm);
1833
- --p-form-field-sm-font-size: var(--icon-size-sm);
1834
- --p-form-field-lg-font-size: var(--icon-size-md);
1850
+ --p-icon-size: var(--icon-size-sm);
1851
+ --p-form-field-sm-font-size: var(--icon-size-sm);
1852
+ --p-form-field-lg-font-size: var(--icon-size-md);
1853
+ }
1854
+
1855
+ .p-autocomplete .p-autocomplete-clear-icon {
1856
+ /** middle-align the icon */
1857
+ top: calc(50% - var(--icon-size-sm) / 2);
1858
+ margin-top: 0;
1835
1859
  }
1836
1860
 
1837
1861
  .p-autocomplete-clearable .p-inputtext {
1838
- flex-grow: 1;
1862
+ flex-grow: 1;
1839
1863
  }
1840
1864
 
1841
1865
  .p-autocomplete-chip.p-chip {
1842
- padding-block-start: calc(var(--p-autocomplete-padding-y) / 2);
1843
- padding-block-end: calc(var(--p-autocomplete-padding-y) / 2);
1844
- border-radius: var(--p-autocomplete-chip-border-radius);
1866
+ padding-block-start: calc(var(--p-autocomplete-padding-y) / 2);
1867
+ padding-block-end: calc(var(--p-autocomplete-padding-y) / 2);
1868
+ border-radius: var(--p-autocomplete-chip-border-radius);
1845
1869
  }
1846
1870
 
1847
-
1848
1871
  /**
1849
- GUTTER FIX
1850
- * Primevue's dropwdown components are all missing the gap between input and dropdown
1851
- **/
1852
- .p-autocomplete-overlay,
1853
- .p-menu-overlay,
1854
- .p-multiselect-overlay,
1855
- .p-select-overlay,
1856
- .p-treeselect-overlay {
1857
- margin: var(--p-anchor-gutter) 0;
1872
+ * BccSelect
1873
+ **/
1874
+ .p-select {
1875
+ --p-icon-size: var(--icon-size-sm);
1858
1876
  }
1859
1877
 
1860
- /* This fix is to ensure overlay badge is contained within the size of the component it wraps */
1861
- .p-overlaybadge {
1862
- display: inline-block;
1878
+ .p-select.inline-select {
1879
+ @apply mx-auto inline-flex w-auto items-center border-0 bg-transparent shadow-none;
1880
+ --p-icon-size: 1.25em;
1881
+ --p-select-dropdown-width: 1.5em;
1882
+ --p-select-min-height: auto;
1883
+ }
1884
+
1885
+ .p-select.inline-select .p-select-label {
1886
+ @apply inline-block font-semibold;
1887
+ font-size: inherit;
1888
+ padding: 0 0 0 0.25em;
1863
1889
  }
1864
1890
 
1891
+ .p-select.inline-select.inverse {
1892
+ --p-select-color: var(--color-neutral-0);
1893
+ --p-select-dropdown-color: var(--color-neutral-0);
1894
+ --p-select-placeholder-color: var(--color-dark-neutral-1000);
1895
+ }
1896
+
1897
+ /**
1898
+ * Fix issue with icons inside Input within an InputGroup being hidden when Input is in focus
1899
+ **/
1900
+ .p-inputicon {
1901
+ z-index: 2;
1902
+ }
1903
+
1904
+ .p-dialog-close-button .p-icon {
1905
+ height: var(--icon-size-sm);
1906
+ width: var(--icon-size-sm);
1907
+ }
1908
+ .p-dialog .p-button-icon:empty {
1909
+ display: none;
1910
+ }
1911
+
1912
+
1865
1913
 
1866
1914
 
1867
1915
  /* === ./components/custom/styles.css === */
@@ -1873,6 +1921,10 @@ GUTTER FIX
1873
1921
 
1874
1922
  @apply bg-ctx text-ctx;
1875
1923
  }
1924
+
1925
+ .bcc-badge.capital {
1926
+ @apply inline-flex;
1927
+ }
1876
1928
  .bcc-badge.sm {
1877
1929
  @apply w-4 h-4 text-heading-xs;
1878
1930
  }
@@ -1883,7 +1935,7 @@ GUTTER FIX
1883
1935
  @apply w-6 h-6 text-heading-md;
1884
1936
  }
1885
1937
  .bcc-badge.xl {
1886
- @apply w-8 h-8 text-heading-lg;
1938
+ @apply w-8 h-8 text-heading-md;
1887
1939
  }
1888
1940
 
1889
1941
  .bcc-badge .bcc-badge-icon {
@@ -2022,8 +2074,8 @@ GUTTER FIX
2022
2074
  .bcc-frame--raised {
2023
2075
  --ctx-background: var(--color-elevation-surface-raised-default);
2024
2076
  }
2025
- .bcc-frame--raised.rounded {
2026
- @apply rounded;
2077
+ .bcc-frame--rounded {
2078
+ @apply rounded-md;
2027
2079
  }
2028
2080
  .bcc-frame--raised.bcc-frame--shadow {
2029
2081
  @apply shadow-raised;
@@ -2094,43 +2146,53 @@ GUTTER FIX
2094
2146
  @apply relative w-full;
2095
2147
  }
2096
2148
 
2097
- .bcc-nps-result .result-gauge-dial {
2149
+ .bcc-nps-result.xs {
2150
+ @apply w-24;
2151
+ }
2152
+ .bcc-nps-result.sm {
2153
+ @apply w-36;
2154
+ }
2155
+ .bcc-nps-result.md {
2156
+ @apply w-48;
2157
+ }
2158
+ .bcc-nps-result.lg {
2159
+ @apply w-60;
2160
+ }
2161
+ .bcc-nps-result.xl {
2162
+ @apply w-72;
2163
+ }
2164
+
2165
+ .bcc-nps-result .bcc-nps-result-gauge-dial {
2098
2166
  transform-origin: center;
2099
2167
  }
2100
2168
 
2101
- .bcc-nps-result.animated .result-gauge-dial {
2169
+ .bcc-nps-result.animated .bcc-nps-result-gauge-dial {
2102
2170
  transition-delay: 0.3s;
2103
2171
  transition: all .7s cubic-bezier(0, 0, 0.3, 1.5);
2104
2172
  }
2105
2173
 
2106
- .bcc-nps-result-labels.lg {
2107
- @apply bottom-[2em];
2108
- }
2109
2174
  .bcc-nps-result-labels {
2110
- @apply absolute bottom-[1em] flex w-full flex-col items-center justify-center;
2111
- }
2112
- .bcc-nps-result-labels.sm {
2113
- @apply bottom-0;
2175
+ @apply absolute text-base bottom-1/4 translate-y-1/2 flex w-full flex-col items-center justify-center;
2114
2176
  }
2115
2177
 
2116
- .bcc-nps-result-labels.lg .bcc-nps-result-labels--heading {
2117
- @apply text-heading-xl leading-tight;
2118
- }
2119
2178
  .bcc-nps-result-labels--heading {
2120
- @apply text-heading-lg leading-none;
2179
+ @apply text-[1.25em] font-semibold leading-none;
2121
2180
  }
2122
- .bcc-nps-result-labels.sm .bcc-nps-result-labels--heading {
2123
- @apply text-heading-md leading-none;
2181
+ .bcc-nps-result-labels--label {
2182
+ @apply text-[0.75em] text-subtlest;
2124
2183
  }
2125
2184
 
2126
- .bcc-nps-result-labels.lg .bcc-nps-result-labels--label {
2127
- @apply text-body-lg opacity-60;
2185
+ .bcc-nps-result.md .bcc-nps-result-labels {
2186
+ @apply text-lg;
2128
2187
  }
2129
- .bcc-nps-result-labels--label {
2130
- @apply text-body-md opacity-60;
2188
+ .bcc-nps-result.lg .bcc-nps-result-labels {
2189
+ @apply text-xl;
2131
2190
  }
2132
- .bcc-nps-result-labels.sm .bcc-nps-result-labels--label {
2133
- @apply text-body-sm;
2191
+ .bcc-nps-result.xl .bcc-nps-result-labels {
2192
+ @apply text-2xl;
2193
+ }
2194
+ .bcc-nps-result.full .bcc-nps-result-labels {
2195
+ @apply text-lg;
2134
2196
  }
2135
2197
  }
2136
2198
 
@@ -2317,8 +2379,13 @@ GUTTER FIX
2317
2379
  --p-avatar-background: var(--ctx-background);
2318
2380
  --p-avatar-color: var(--ctx-text);
2319
2381
  --bcc-avatar-border: var(--ctx-border);
2320
- @apply overflow-hidden shrink-0 ctx-gray-subtler;
2382
+ @apply overflow-hidden shrink-0 ctx-gray-subtler text-sm;
2383
+ }
2384
+
2385
+ .bcc-avatar .icon {
2386
+ height: var(--icon-size-sm);
2321
2387
  }
2388
+
2322
2389
  .bcc-avatar.male,
2323
2390
  .bcc-avatar.M {
2324
2391
  @apply ctx-blue-subtler;
@@ -2341,36 +2408,44 @@ GUTTER FIX
2341
2408
  .bcc-avatar.xs {
2342
2409
  @apply size-5 text-xs;
2343
2410
  }
2411
+ .bcc-avatar.xs .icon {
2412
+ height: var(--icon-size-xs);
2413
+ }
2344
2414
  .bcc-avatar.sm {
2345
- @apply size-6 text-sm;
2415
+ @apply size-6 text-xs;
2416
+ }
2417
+ .bcc-avatar.sm .icon {
2418
+ height: var(--icon-size-xs);
2346
2419
  }
2347
2420
  .bcc-avatar.md {
2348
- @apply size-8 text-base;
2421
+ /* same as default */
2422
+ }
2423
+ .bcc-avatar.md .icon {
2424
+ /* same as default */
2349
2425
  }
2350
2426
  .bcc-avatar.lg {
2351
- @apply size-10 text-lg;
2427
+ @apply size-10 text-md;
2428
+ }
2429
+ .bcc-avatar.lg .icon {
2430
+ height: var(--icon-size-md);
2352
2431
  }
2353
2432
  .bcc-avatar.xl {
2354
2433
  @apply size-12 text-xl;
2355
2434
  }
2435
+ .bcc-avatar.xl .icon {
2436
+ height: var(--icon-size-lg);
2437
+ }
2356
2438
  .bcc-avatar.xxl {
2357
2439
  @apply size-20 text-3xl;
2358
2440
  }
2441
+ .bcc-avatar.xxl .icon {
2442
+ height: var(--icon-size-xl);
2443
+ }
2359
2444
  .bcc-avatar.xxxl {
2360
2445
  @apply size-24 text-4xl;
2361
2446
  }
2362
-
2363
- .bcc-avatar.squared.lg {
2364
- @apply text-xl;
2365
- }
2366
- .bcc-avatar.squared.xl {
2367
- @apply text-2xl;
2368
- }
2369
- .bcc-avatar.squared.xxl {
2370
- @apply text-4xl;
2371
- }
2372
- .bcc-avatar.squared.xxxl {
2373
- @apply text-5xl;
2447
+ .bcc-avatar.xxxl .icon {
2448
+ height: var(--icon-size-xl);
2374
2449
  }
2375
2450
 
2376
2451
  .p-overlaybadge .bcc-avatar.p-avatar-circle.lg~.p-badge,
@@ -2425,24 +2500,28 @@ GUTTER FIX
2425
2500
 
2426
2501
 
2427
2502
 
2428
- :root, :host {
2503
+ :root,
2504
+ :host {
2429
2505
  --font-sans: 'Archivo', system-ui, sans-serif;
2430
- @apply font-sans antialiased p-0 m-0;
2431
- -webkit-font-smoothing: antialiased;
2432
- -moz-osx-font-smoothing: grayscale;
2506
+ @apply m-0 p-0 font-sans antialiased;
2507
+ -webkit-font-smoothing: antialiased;
2508
+ -moz-osx-font-smoothing: grayscale;
2509
+ }
2433
2510
 
2511
+ hr {
2512
+ border-color: var(--color-border-default);
2434
2513
  }
2435
2514
 
2436
2515
  b,
2437
2516
  strong,
2438
2517
  .bold {
2439
- font-weight: bold;
2440
- --ctx-text: var(--ctx-text-bold);
2518
+ font-weight: bold;
2519
+ --ctx-text: var(--ctx-text-bold);
2441
2520
  }
2442
2521
 
2443
2522
  /* Disable state */
2444
2523
  :disabled,
2445
2524
  .disabled {
2446
- cursor: not-allowed;
2447
- pointer-events: none;
2525
+ cursor: not-allowed;
2526
+ pointer-events: none;
2448
2527
  }
@@ -2,7 +2,7 @@ export type NpsResultProps = {
2
2
  /** NPS score between -100 and 100; drives the gauge needle angle and position. */
3
3
  score: number;
4
4
  /** Controls the size of the gauge and optional text (lg, md, sm, xs). */
5
- size?: 'lg' | 'md' | 'sm' | 'xs';
5
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'full';
6
6
  /** Text shown as the main heading; defaults to the numeric score when unset. */
7
7
  display?: string;
8
8
  /** Secondary label shown under the main heading. */
@@ -13,7 +13,7 @@ export type NpsResultProps = {
13
13
  animated?: boolean;
14
14
  };
15
15
  declare const __VLS_export: import("vue").DefineComponent<NpsResultProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<NpsResultProps> & Readonly<{}>, {
16
- size: "lg" | "md" | "sm" | "xs";
16
+ size: "xs" | "sm" | "md" | "lg" | "xl" | "full";
17
17
  hideText: boolean;
18
18
  animated: boolean;
19
19
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -1,8 +1,8 @@
1
1
  import { type BCC_CONTEXT } from '@/contexts';
2
2
  export type StepIndicatorProps = {
3
- steps: string[];
4
- additionalText?: boolean;
5
- showStepLabel?: boolean;
3
+ steps: string[] | number;
4
+ hideText?: boolean;
5
+ hideLabel?: boolean;
6
6
  left?: boolean;
7
7
  right?: boolean;
8
8
  context?: BCC_CONTEXT;
@@ -20,8 +20,8 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_PublicProps, {},
20
20
  "onUpdate:modelValue"?: ((value: number) => any) | undefined;
21
21
  }>, {
22
22
  context: BCC_CONTEXT;
23
- additionalText: boolean;
24
- showStepLabel: boolean;
23
+ hideText: boolean;
24
+ hideLabel: boolean;
25
25
  headingFn: (currentStep: number, totalSteps: number) => string;
26
26
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
27
27
  declare const _default: typeof __VLS_export;
@@ -12,7 +12,7 @@ export type AvatarProps = Omit<PrimeAvatarProps, 'shape' | 'size'> & {
12
12
  /** Adds a visible border around the avatar. */
13
13
  bordered?: boolean;
14
14
  /** Controls the avatar dimensions; maps to CSS size classes (xs through xxl). Default: md */
15
- size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl';
15
+ size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl' | 'xxxl';
16
16
  };
17
17
  declare const __VLS_export: import("vue").DefineComponent<AvatarProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<AvatarProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
18
18
  declare const _default: typeof __VLS_export;
@@ -3,6 +3,7 @@ import { type ButtonProps as PrimeButtonProps } from 'primevue/button';
3
3
  export type ButtonProps = {
4
4
  icon?: VueComponent;
5
5
  iconRight?: boolean;
6
+ iconClass?: PrimeButtonProps['iconClass'];
6
7
  size?: PrimeButtonProps['size'];
7
8
  useCtx?: boolean;
8
9
  } & /* @vue-ignore */ Omit<PrimeButtonProps, 'icon' | 'iconPos'>;
@@ -0,0 +1,18 @@
1
+ import type { VueComponent } from '@/types';
2
+ import { type MenuProps as PrimeMenuProps } from 'primevue/menu';
3
+ import type { MenuItem } from 'primevue/menuitem';
4
+ /** Menu item model for BccMenu: icon can be a PrimeVue icon class string or a Vue icon component. */
5
+ export type BccMenuItem = Omit<MenuItem, 'icon' | 'items'> & {
6
+ icon?: VueComponent;
7
+ items?: BccMenuItem[];
8
+ };
9
+ export type MenuProps = {
10
+ model?: BccMenuItem[];
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>;
17
+ declare const _default: typeof __VLS_export;
18
+ export default _default;
@@ -14,6 +14,12 @@ 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, {}, string, import("vue").PublicProps, Readonly<ToggleProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
17
+ declare const __VLS_export: import("vue").DefineComponent<ToggleProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
18
+ "update:modelValue": (value: boolean) => any;
19
+ }, string, import("vue").PublicProps, Readonly<ToggleProps> & Readonly<{
20
+ "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
21
+ }>, {
22
+ defaultValue: string | boolean;
23
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
18
24
  declare const _default: typeof __VLS_export;
19
25
  export default _default;
@@ -6,7 +6,9 @@ export { default as BccAvatar } from './BccAvatar/BccAvatar.vue';
6
6
  export { default as BccButton } from './BccButton.vue';
7
7
  export { default as BccCheckbox } from './BccCheckbox.vue';
8
8
  export { default as BccChip } from './BccChip/BccChip.vue';
9
+ export { default as BccConfirmDialog } from './BccConfirmDialog/BccConfirmDialog.vue';
9
10
  export { default as BccInput } from './BccInput.vue';
11
+ export { default as BccMenu } from './BccMenu/BccMenu.vue';
10
12
  export { default as BccMessage } from './BccMessage.vue';
11
13
  export { default as BccTabs } from './BccTabs/BccTabs.vue';
12
14
  export { default as BccToggle } from './BccToggle/BccToggle.vue';
@@ -16,6 +18,7 @@ export type { ButtonProps } from './BccButton.vue';
16
18
  export type { CheckboxProps } from './BccCheckbox.vue';
17
19
  export type { ChipProps } from './BccChip/BccChip.vue';
18
20
  export type { InputProps } from './BccInput.vue';
21
+ export type { BccMenuItem, MenuProps } from './BccMenu/BccMenu.vue';
19
22
  export type { MessageProps } from './BccMessage.vue';
20
23
  export type { TabItem, TabsProps } from './BccTabs/BccTabs.vue';
21
24
  export type { ToggleProps } from './BccToggle/BccToggle.vue';
@@ -16,6 +16,7 @@
16
16
  * 2. Alternative: Pre-built CSS only (no Tailwind in your app; library styles + components only):
17
17
  * - main.ts: import "@bcc-code/component-library-vue/style.css";
18
18
  */
19
+ import type { ConfirmationOptions } from 'primevue/confirmationoptions';
19
20
  import './style.css';
20
21
  export { default as BccPreset } from '@bcc-code/design-tokens/primevue';
21
22
  export { BCC_CONTEXTS, type BCC_CONTEXT } from './contexts';
@@ -45,7 +46,6 @@ export { default as BccColorPicker } from 'primevue/colorpicker';
45
46
  export { default as BccColumn } from 'primevue/column';
46
47
  export { default as BccColumnGroup } from 'primevue/columngroup';
47
48
  export { default as BccConfig } from 'primevue/config';
48
- export { default as BccConfirmDialog } from 'primevue/confirmdialog';
49
49
  export { default as BccConfirmPopup } from 'primevue/confirmpopup';
50
50
  export { default as BccContextMenu } from 'primevue/contextmenu';
51
51
  export { default as BccDataTable } from 'primevue/datatable';
@@ -80,7 +80,6 @@ export { default as BccKeyFilter } from 'primevue/keyfilter';
80
80
  export { default as BccKnob } from 'primevue/knob';
81
81
  export { default as BccListbox } from 'primevue/listbox';
82
82
  export { default as BccMegaMenu } from 'primevue/megamenu';
83
- export { default as BccMenu } from 'primevue/menu';
84
83
  export { default as BccMenubar } from 'primevue/menubar';
85
84
  export { default as BccMeterGroup } from 'primevue/metergroup';
86
85
  export { default as BccMultiSelect } from 'primevue/multiselect';
@@ -116,6 +115,7 @@ export { default as BccStepItem } from 'primevue/stepitem';
116
115
  export { default as BccStepList } from 'primevue/steplist';
117
116
  export { default as BccStepPanel } from 'primevue/steppanel';
118
117
  export { default as BccStepPanels } from 'primevue/steppanels';
118
+ export { default as BccStepper } from 'primevue/stepper';
119
119
  export { default as BccSteps } from 'primevue/steps';
120
120
  export { default as BccStyleClass } from 'primevue/styleclass';
121
121
  export { default as BccTab } from 'primevue/tab';
@@ -137,8 +137,18 @@ export { default as BccTooltip } from 'primevue/tooltip';
137
137
  export { default as BccTree } from 'primevue/tree';
138
138
  export { default as BccTreeSelect } from 'primevue/treeselect';
139
139
  export { default as BccTreeTable } from 'primevue/treetable';
140
- export { default as BccVirtualScroller } from 'primevue/virtualscroller';
141
- export { useConfirm } from 'primevue/useconfirm';
142
140
  export { useDialog } from 'primevue/usedialog';
143
141
  export { useToast } from 'primevue/usetoast';
142
+ export { default as BccVirtualScroller } from 'primevue/virtualscroller';
144
143
  export { default as useAnimatedNumber } from './composables/animatedNumber';
144
+ import type { VueComponent } from './types';
145
+ interface UseConfirmOptions extends Omit<ConfirmationOptions, 'icon' | 'acceptIcon' | 'rejectIcon'> {
146
+ icon?: VueComponent | undefined;
147
+ acceptIcon?: VueComponent | undefined;
148
+ rejectIcon?: VueComponent | undefined;
149
+ }
150
+ type UseConfirmReturn = {
151
+ require: (option: UseConfirmOptions) => void;
152
+ close: () => void;
153
+ };
154
+ export declare function useConfirm(): UseConfirmReturn;