bromcom-ui 3.0.0-alpha.2 → 3.0.0-alpha.4
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/bromcom-ui/bromcom-ui.css +1 -1
- package/dist/bromcom-ui/bromcom-ui.esm.js +1 -1
- package/dist/bromcom-ui/{p-c47463b1.entry.js → p-0b7de283.entry.js} +1 -1
- package/dist/bromcom-ui/{p-a141b2bc.entry.js → p-0e75f6ba.entry.js} +1 -1
- package/dist/bromcom-ui/{p-9d41ff2a.entry.js → p-112b9a62.entry.js} +1 -1
- package/dist/bromcom-ui/p-1535f9b1.js +5 -0
- package/dist/bromcom-ui/{p-2a0b6273.entry.js → p-32ce6cf6.entry.js} +1 -1
- package/dist/bromcom-ui/{p-46628fcd.entry.js → p-33b2ed75.entry.js} +1 -1
- package/dist/bromcom-ui/{p-7416d1f6.entry.js → p-4545a13d.entry.js} +1 -1
- package/dist/bromcom-ui/p-45b811ef.entry.js +5 -0
- package/dist/bromcom-ui/{p-369948e7.entry.js → p-5532696c.entry.js} +1 -1
- package/dist/bromcom-ui/{p-8363990a.entry.js → p-69adb859.entry.js} +1 -1
- package/dist/bromcom-ui/{p-d4e4aeee.js → p-6ce02d0a.js} +1 -1
- package/dist/bromcom-ui/p-7c08789d.entry.js +5 -0
- package/dist/bromcom-ui/{p-22e3161d.entry.js → p-803739bc.entry.js} +1 -1
- package/dist/bromcom-ui/{p-14b04371.entry.js → p-8390dd02.entry.js} +1 -1
- package/dist/bromcom-ui/{p-217934a4.entry.js → p-8e7274e4.entry.js} +1 -1
- package/dist/bromcom-ui/p-91197b04.js +5 -0
- package/dist/bromcom-ui/{p-cbeaa059.entry.js → p-9e0dd503.entry.js} +3 -3
- package/dist/bromcom-ui/p-a320cde8.entry.js +5 -0
- package/dist/bromcom-ui/p-a80e6310.entry.js +5 -0
- package/dist/bromcom-ui/{p-b85227c8.entry.js → p-acab07ec.entry.js} +1 -1
- package/dist/bromcom-ui/{p-51ba3626.entry.js → p-b333a3d7.entry.js} +1 -1
- package/dist/bromcom-ui/{p-a080c8ea.entry.js → p-b7787c11.entry.js} +1 -1
- package/dist/bromcom-ui/{p-6f224017.entry.js → p-b7c56cbe.entry.js} +1 -1
- package/dist/bromcom-ui/{p-e7c31126.entry.js → p-c36a7889.entry.js} +1 -1
- package/dist/bromcom-ui/p-ce0ab4e3.entry.js +5 -0
- package/dist/bromcom-ui/{p-367bc8e0.js → p-d3cf91a9.js} +1 -1
- package/dist/bromcom-ui/{p-5bf051b9.entry.js → p-d7a619c5.entry.js} +1 -1
- package/dist/bromcom-ui/p-ddd9e192.entry.js +5 -0
- package/dist/bromcom-ui/{p-9015080d.entry.js → p-e36b6b08.entry.js} +1 -1
- package/dist/bromcom-ui/{p-acfceb2b.entry.js → p-f15c1d3d.entry.js} +1 -1
- package/dist/bromcom-ui/{p-858cee66.js → p-fc29c94d.js} +1 -1
- package/dist/cjs/{bcm-accordion_68.cjs.entry.js → bcm-accordion_69.cjs.entry.js} +120 -43
- package/dist/cjs/bcm-attendance-actions-comment.cjs.entry.js +4 -4
- package/dist/cjs/bcm-attendance-actions-dropdown.cjs.entry.js +4 -4
- package/dist/cjs/bcm-breadcrumb.cjs.entry.js +2 -2
- package/dist/cjs/bcm-caption.cjs.entry.js +4 -4
- package/dist/cjs/bcm-card.cjs.entry.js +2 -2
- package/dist/cjs/bcm-date-picker.cjs.entry.js +2 -2
- package/dist/cjs/bcm-datetime-picker.cjs.entry.js +2 -2
- package/dist/cjs/bcm-default.cjs.entry.js +2 -2
- package/dist/cjs/bcm-form-2.cjs.entry.js +2 -2
- package/dist/cjs/bcm-input-2.cjs.entry.js +2 -2
- package/dist/cjs/bcm-input-custom.cjs.entry.js +2 -2
- package/dist/cjs/bcm-input-dropdown.cjs.entry.js +4 -4
- package/dist/cjs/bcm-modal-2-footer.cjs.entry.js +4 -4
- package/dist/cjs/bcm-modal-2-header.cjs.entry.js +4 -4
- package/dist/cjs/bcm-modal-2.cjs.entry.js +4 -4
- package/dist/cjs/bcm-number-input.cjs.entry.js +4 -4
- package/dist/cjs/bcm-segment.cjs.entry.js +51 -0
- package/dist/cjs/bcm-segmented-picker.cjs.entry.js +158 -0
- package/dist/cjs/bcm-skeleton.cjs.entry.js +4 -4
- package/dist/cjs/bcm-table.cjs.entry.js +4 -4
- package/dist/cjs/bcm-tag.cjs.entry.js +3 -3
- package/dist/cjs/bcm-time-picker.cjs.entry.js +2 -2
- package/dist/cjs/bcm-toast.cjs.entry.js +17 -11
- package/dist/cjs/bromcom-ui.cjs.js +3 -3
- package/dist/cjs/{generate-a25d8fc8.js → generate-9d1bf6b3.js} +1 -1
- package/dist/cjs/{global-08c079a8.js → global-d69a64ec.js} +1 -1
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/cjs/{number-helper-3a56812f.js → number-helper-ae28b255.js} +1 -1
- package/dist/cjs/old-bcm-popover-box.cjs.entry.js +3 -3
- package/dist/cjs/old-bcm-popover.cjs.entry.js +2 -2
- package/dist/cjs/{package-6afe17f3.js → package-6de220be.js} +1 -1
- package/dist/cjs/{validators-78797513.js → validators-3381bee2.js} +1 -1
- package/dist/collection/collection-manifest.json +3 -0
- package/dist/collection/components/molecules/color-input/color-input.css +127 -0
- package/dist/collection/components/molecules/color-input/color-input.js +34 -13
- package/dist/collection/components/molecules/color-palette/color-palette.js +114 -0
- package/dist/collection/components/molecules/color-palette/color-palette.style.js +25 -0
- package/dist/collection/components/organism/list/list.js +74 -20
- package/dist/collection/components/other/segmented-picker/segment.component.js +200 -0
- package/dist/collection/components/other/segmented-picker/segment.css +28 -0
- package/dist/collection/components/other/segmented-picker/segmented-picker.component.js +365 -0
- package/dist/collection/components/other/segmented-picker/segmented-picker.css +16 -0
- package/dist/collection/components/other/segmented-picker/types.js +1 -0
- package/dist/collection/components/other/toast/toast.js +15 -9
- package/dist/collection/templates/list-item-template.js +4 -4
- package/dist/collection/templates/list-template.js +2 -2
- package/dist/components/bcm-color-input.js +18 -15
- package/dist/components/bcm-color-palette.d.ts +11 -0
- package/dist/components/bcm-color-palette.js +10 -0
- package/dist/components/bcm-segment.d.ts +11 -0
- package/dist/components/bcm-segment.js +71 -0
- package/dist/components/bcm-segmented-picker.d.ts +11 -0
- package/dist/components/bcm-segmented-picker.js +182 -0
- package/dist/components/bcm-toast.js +15 -9
- package/dist/components/color-palette.js +71 -0
- package/dist/components/generate.js +1 -1
- package/dist/components/index.d.ts +3 -0
- package/dist/components/index.js +3 -0
- package/dist/components/list.js +64 -27
- package/dist/esm/{bcm-accordion_68.entry.js → bcm-accordion_69.entry.js} +120 -44
- package/dist/esm/bcm-attendance-actions-comment.entry.js +4 -4
- package/dist/esm/bcm-attendance-actions-dropdown.entry.js +4 -4
- package/dist/esm/bcm-breadcrumb.entry.js +2 -2
- package/dist/esm/bcm-caption.entry.js +4 -4
- package/dist/esm/bcm-card.entry.js +2 -2
- package/dist/esm/bcm-date-picker.entry.js +2 -2
- package/dist/esm/bcm-datetime-picker.entry.js +2 -2
- package/dist/esm/bcm-default.entry.js +2 -2
- package/dist/esm/bcm-form-2.entry.js +2 -2
- package/dist/esm/bcm-input-2.entry.js +2 -2
- package/dist/esm/bcm-input-custom.entry.js +2 -2
- package/dist/esm/bcm-input-dropdown.entry.js +4 -4
- package/dist/esm/bcm-modal-2-footer.entry.js +4 -4
- package/dist/esm/bcm-modal-2-header.entry.js +4 -4
- package/dist/esm/bcm-modal-2.entry.js +4 -4
- package/dist/esm/bcm-number-input.entry.js +4 -4
- package/dist/esm/bcm-segment.entry.js +47 -0
- package/dist/esm/bcm-segmented-picker.entry.js +154 -0
- package/dist/esm/bcm-skeleton.entry.js +4 -4
- package/dist/esm/bcm-table.entry.js +4 -4
- package/dist/esm/bcm-tag.entry.js +3 -3
- package/dist/esm/bcm-time-picker.entry.js +2 -2
- package/dist/esm/bcm-toast.entry.js +17 -11
- package/dist/esm/bromcom-ui.js +3 -3
- package/dist/esm/{generate-a4b85775.js → generate-56d49b70.js} +1 -1
- package/dist/esm/{global-1baa11cd.js → global-97c42a5f.js} +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{number-helper-872d5482.js → number-helper-455ab41e.js} +1 -1
- package/dist/esm/old-bcm-popover-box.entry.js +3 -3
- package/dist/esm/old-bcm-popover.entry.js +2 -2
- package/dist/esm/{package-1d6f13ed.js → package-edee14d5.js} +1 -1
- package/dist/esm/{validators-e9800e9a.js → validators-cc882165.js} +1 -1
- package/dist/types/components/molecules/color-input/color-input.d.ts +5 -4
- package/dist/types/components/molecules/color-palette/color-palette.d.ts +36 -0
- package/dist/types/components/molecules/color-palette/color-palette.style.d.ts +76 -0
- package/dist/types/components/organism/list/list.d.ts +4 -0
- package/dist/types/components/other/segmented-picker/segment.component.d.ts +42 -0
- package/dist/types/components/other/segmented-picker/segmented-picker.component.d.ts +86 -0
- package/dist/types/components/other/segmented-picker/types.d.ts +1 -0
- package/dist/types/components/other/toast/toast.d.ts +1 -0
- package/dist/types/components.d.ts +281 -0
- package/dist/types/templates/list-item-template.d.ts +2 -0
- package/dist/types/templates/list-template.d.ts +2 -0
- package/package.json +1 -1
- package/dist/bromcom-ui/p-485ed6c1.entry.js +0 -5
- package/dist/bromcom-ui/p-5c4939a7.js +0 -5
- package/dist/bromcom-ui/p-8457670e.entry.js +0 -5
- package/dist/bromcom-ui/p-dcd69786.entry.js +0 -5
- package/dist/bromcom-ui/p-e9a43560.js +0 -5
- package/dist/bromcom-ui/p-ea24a822.entry.js +0 -5
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { EventEmitter } from '../../../stencil-public-runtime';
|
|
2
|
+
/**
|
|
3
|
+
* Modern Segmented Picker component with CSS Grid-based indicator
|
|
4
|
+
* @slot - Default slot for bcm-segment components
|
|
5
|
+
*/
|
|
6
|
+
export declare class BcmSegmentedPicker {
|
|
7
|
+
el: HTMLElement;
|
|
8
|
+
/**
|
|
9
|
+
* Selected segment value
|
|
10
|
+
*/
|
|
11
|
+
value: string;
|
|
12
|
+
/**
|
|
13
|
+
* Name attribute for form association
|
|
14
|
+
*/
|
|
15
|
+
name: string;
|
|
16
|
+
/**
|
|
17
|
+
* Whether this field is required in a form
|
|
18
|
+
*/
|
|
19
|
+
required: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Size variant
|
|
22
|
+
*/
|
|
23
|
+
size: 'small' | 'medium' | 'large';
|
|
24
|
+
/**
|
|
25
|
+
* Full width flag
|
|
26
|
+
*/
|
|
27
|
+
fullWidth: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Disabled state
|
|
30
|
+
*/
|
|
31
|
+
disabled: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Enable shadow on container
|
|
34
|
+
*/
|
|
35
|
+
shadow: boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Emits when selected segment changes
|
|
38
|
+
*/
|
|
39
|
+
bcmSegmentChange: EventEmitter<{
|
|
40
|
+
value: string;
|
|
41
|
+
previousValue: string;
|
|
42
|
+
}>;
|
|
43
|
+
segments: Array<{
|
|
44
|
+
value: string;
|
|
45
|
+
disabled: boolean;
|
|
46
|
+
}>;
|
|
47
|
+
activeIndex: number;
|
|
48
|
+
private segmentElements;
|
|
49
|
+
componentWillLoad(): void;
|
|
50
|
+
componentDidLoad(): void;
|
|
51
|
+
/**
|
|
52
|
+
* Discovers all bcm-segment children
|
|
53
|
+
*/
|
|
54
|
+
private discoverSegments;
|
|
55
|
+
/**
|
|
56
|
+
* Updates the active index based on current value
|
|
57
|
+
*/
|
|
58
|
+
private updateActiveIndex;
|
|
59
|
+
/**
|
|
60
|
+
* Updates selected state of all segment elements
|
|
61
|
+
*/
|
|
62
|
+
private updateSegmentStates;
|
|
63
|
+
/**
|
|
64
|
+
* Updates CSS custom properties for indicator positioning
|
|
65
|
+
*/
|
|
66
|
+
private updateCSSVariables;
|
|
67
|
+
handleValueChange(newValue: string, oldValue: string): void;
|
|
68
|
+
handleSizeChange(): void;
|
|
69
|
+
/**
|
|
70
|
+
* Propagates parent props to child segments
|
|
71
|
+
*/
|
|
72
|
+
private propagatePropsToSegments;
|
|
73
|
+
/**
|
|
74
|
+
* Handles segment click events from children
|
|
75
|
+
*/
|
|
76
|
+
handleSegmentClick(event: CustomEvent<string>): void;
|
|
77
|
+
/**
|
|
78
|
+
* Public method to programmatically set active segment
|
|
79
|
+
*/
|
|
80
|
+
setValue(value: string): Promise<void>;
|
|
81
|
+
/**
|
|
82
|
+
* Public method to get active segment value
|
|
83
|
+
*/
|
|
84
|
+
getValue(): Promise<string>;
|
|
85
|
+
render(): any;
|
|
86
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type SegmentedPickerSize = 'small' | 'medium' | 'large';
|
|
@@ -278,6 +278,34 @@ export namespace Components {
|
|
|
278
278
|
"placeholder": string;
|
|
279
279
|
"readonly": boolean;
|
|
280
280
|
"required": boolean;
|
|
281
|
+
/**
|
|
282
|
+
* Picker type to display
|
|
283
|
+
*/
|
|
284
|
+
"type": 'default' | 'palette';
|
|
285
|
+
"value": string;
|
|
286
|
+
}
|
|
287
|
+
/**
|
|
288
|
+
* A component that renders a grid of Tailwind CSS colors.
|
|
289
|
+
* It allows users to select a specific shade from various color palettes.
|
|
290
|
+
* @component bcm-color-palette
|
|
291
|
+
* @property {string} value - The currently selected color value (e.g., '#000000'). This prop is mutable and reflected.
|
|
292
|
+
* @property {string[]} paletteKeys - An array of Tailwind color names to display in the grid (e.g., ['blue', 'red']).
|
|
293
|
+
* @property {number[]} shades - An array of shade values to generate for each color key (e.g., [100, 200, ...]).
|
|
294
|
+
* @event bcm-change - Emitted when a color is selected. The event detail contains the selected hex color string.
|
|
295
|
+
* @example <bcm-color-palette value="#000000"></bcm-color-palette>
|
|
296
|
+
*/
|
|
297
|
+
interface BcmColorPalette {
|
|
298
|
+
/**
|
|
299
|
+
* List of tailwind color keys to display
|
|
300
|
+
*/
|
|
301
|
+
"paletteKeys": string[];
|
|
302
|
+
/**
|
|
303
|
+
* List of shades to display
|
|
304
|
+
*/
|
|
305
|
+
"shades": number[];
|
|
306
|
+
/**
|
|
307
|
+
* Selected color value (e.g. '#000000')
|
|
308
|
+
*/
|
|
281
309
|
"value": string;
|
|
282
310
|
}
|
|
283
311
|
interface BcmColorful {
|
|
@@ -747,6 +775,7 @@ export namespace Components {
|
|
|
747
775
|
"_id": string;
|
|
748
776
|
"addChecked": (ids?: any[], save?: boolean, emit?: boolean) => Promise<any>;
|
|
749
777
|
"allOpen": boolean;
|
|
778
|
+
"autoFocusSelected": boolean;
|
|
750
779
|
"caption": string;
|
|
751
780
|
"captionError": string;
|
|
752
781
|
"captionType": StatusTypes;
|
|
@@ -1265,6 +1294,80 @@ export namespace Components {
|
|
|
1265
1294
|
"setValue": (newValue: any) => Promise<void>;
|
|
1266
1295
|
"size": SizeTypes1;
|
|
1267
1296
|
}
|
|
1297
|
+
/**
|
|
1298
|
+
* Individual segment option component
|
|
1299
|
+
*/
|
|
1300
|
+
interface BcmSegment {
|
|
1301
|
+
/**
|
|
1302
|
+
* Index of currently active segment (inherited from parent)
|
|
1303
|
+
*/
|
|
1304
|
+
"activeIndex": number;
|
|
1305
|
+
/**
|
|
1306
|
+
* Disabled state
|
|
1307
|
+
*/
|
|
1308
|
+
"disabled": boolean;
|
|
1309
|
+
/**
|
|
1310
|
+
* Index of this segment (inherited from parent)
|
|
1311
|
+
*/
|
|
1312
|
+
"index": number;
|
|
1313
|
+
/**
|
|
1314
|
+
* Selected state (controlled by parent)
|
|
1315
|
+
*/
|
|
1316
|
+
"selected": boolean;
|
|
1317
|
+
/**
|
|
1318
|
+
* Size variant (inherited from parent)
|
|
1319
|
+
*/
|
|
1320
|
+
"size": 'small' | 'medium' | 'large';
|
|
1321
|
+
/**
|
|
1322
|
+
* Total number of segments (inherited from parent)
|
|
1323
|
+
*/
|
|
1324
|
+
"totalSegments": number;
|
|
1325
|
+
/**
|
|
1326
|
+
* Unique identifier for this segment
|
|
1327
|
+
*/
|
|
1328
|
+
"value": string;
|
|
1329
|
+
}
|
|
1330
|
+
/**
|
|
1331
|
+
* Modern Segmented Picker component with CSS Grid-based indicator
|
|
1332
|
+
*/
|
|
1333
|
+
interface BcmSegmentedPicker {
|
|
1334
|
+
/**
|
|
1335
|
+
* Disabled state
|
|
1336
|
+
*/
|
|
1337
|
+
"disabled": boolean;
|
|
1338
|
+
/**
|
|
1339
|
+
* Full width flag
|
|
1340
|
+
*/
|
|
1341
|
+
"fullWidth": boolean;
|
|
1342
|
+
/**
|
|
1343
|
+
* Public method to get active segment value
|
|
1344
|
+
*/
|
|
1345
|
+
"getValue": () => Promise<string>;
|
|
1346
|
+
/**
|
|
1347
|
+
* Name attribute for form association
|
|
1348
|
+
*/
|
|
1349
|
+
"name": string;
|
|
1350
|
+
/**
|
|
1351
|
+
* Whether this field is required in a form
|
|
1352
|
+
*/
|
|
1353
|
+
"required": boolean;
|
|
1354
|
+
/**
|
|
1355
|
+
* Public method to programmatically set active segment
|
|
1356
|
+
*/
|
|
1357
|
+
"setValue": (value: string) => Promise<void>;
|
|
1358
|
+
/**
|
|
1359
|
+
* Enable shadow on container
|
|
1360
|
+
*/
|
|
1361
|
+
"shadow": boolean;
|
|
1362
|
+
/**
|
|
1363
|
+
* Size variant
|
|
1364
|
+
*/
|
|
1365
|
+
"size": 'small' | 'medium' | 'large';
|
|
1366
|
+
/**
|
|
1367
|
+
* Selected segment value
|
|
1368
|
+
*/
|
|
1369
|
+
"value": string;
|
|
1370
|
+
}
|
|
1268
1371
|
interface BcmSelect {
|
|
1269
1372
|
"_data": any;
|
|
1270
1373
|
"_id": string;
|
|
@@ -1800,6 +1903,10 @@ export interface BcmCollapseCustomEvent<T> extends CustomEvent<T> {
|
|
|
1800
1903
|
detail: T;
|
|
1801
1904
|
target: HTMLBcmCollapseElement;
|
|
1802
1905
|
}
|
|
1906
|
+
export interface BcmColorPaletteCustomEvent<T> extends CustomEvent<T> {
|
|
1907
|
+
detail: T;
|
|
1908
|
+
target: HTMLBcmColorPaletteElement;
|
|
1909
|
+
}
|
|
1803
1910
|
export interface BcmColorfulCustomEvent<T> extends CustomEvent<T> {
|
|
1804
1911
|
detail: T;
|
|
1805
1912
|
target: HTMLBcmColorfulElement;
|
|
@@ -1936,6 +2043,14 @@ export interface BcmSearchCustomEvent<T> extends CustomEvent<T> {
|
|
|
1936
2043
|
detail: T;
|
|
1937
2044
|
target: HTMLBcmSearchElement;
|
|
1938
2045
|
}
|
|
2046
|
+
export interface BcmSegmentCustomEvent<T> extends CustomEvent<T> {
|
|
2047
|
+
detail: T;
|
|
2048
|
+
target: HTMLBcmSegmentElement;
|
|
2049
|
+
}
|
|
2050
|
+
export interface BcmSegmentedPickerCustomEvent<T> extends CustomEvent<T> {
|
|
2051
|
+
detail: T;
|
|
2052
|
+
target: HTMLBcmSegmentedPickerElement;
|
|
2053
|
+
}
|
|
1939
2054
|
export interface BcmSelectCustomEvent<T> extends CustomEvent<T> {
|
|
1940
2055
|
detail: T;
|
|
1941
2056
|
target: HTMLBcmSelectElement;
|
|
@@ -2131,6 +2246,22 @@ declare global {
|
|
|
2131
2246
|
prototype: HTMLBcmColorInputElement;
|
|
2132
2247
|
new (): HTMLBcmColorInputElement;
|
|
2133
2248
|
};
|
|
2249
|
+
/**
|
|
2250
|
+
* A component that renders a grid of Tailwind CSS colors.
|
|
2251
|
+
* It allows users to select a specific shade from various color palettes.
|
|
2252
|
+
* @component bcm-color-palette
|
|
2253
|
+
* @property {string} value - The currently selected color value (e.g., '#000000'). This prop is mutable and reflected.
|
|
2254
|
+
* @property {string[]} paletteKeys - An array of Tailwind color names to display in the grid (e.g., ['blue', 'red']).
|
|
2255
|
+
* @property {number[]} shades - An array of shade values to generate for each color key (e.g., [100, 200, ...]).
|
|
2256
|
+
* @event bcm-change - Emitted when a color is selected. The event detail contains the selected hex color string.
|
|
2257
|
+
* @example <bcm-color-palette value="#000000"></bcm-color-palette>
|
|
2258
|
+
*/
|
|
2259
|
+
interface HTMLBcmColorPaletteElement extends Components.BcmColorPalette, HTMLStencilElement {
|
|
2260
|
+
}
|
|
2261
|
+
var HTMLBcmColorPaletteElement: {
|
|
2262
|
+
prototype: HTMLBcmColorPaletteElement;
|
|
2263
|
+
new (): HTMLBcmColorPaletteElement;
|
|
2264
|
+
};
|
|
2134
2265
|
interface HTMLBcmColorfulElement extends Components.BcmColorful, HTMLStencilElement {
|
|
2135
2266
|
}
|
|
2136
2267
|
var HTMLBcmColorfulElement: {
|
|
@@ -2461,6 +2592,24 @@ declare global {
|
|
|
2461
2592
|
prototype: HTMLBcmSearchElement;
|
|
2462
2593
|
new (): HTMLBcmSearchElement;
|
|
2463
2594
|
};
|
|
2595
|
+
/**
|
|
2596
|
+
* Individual segment option component
|
|
2597
|
+
*/
|
|
2598
|
+
interface HTMLBcmSegmentElement extends Components.BcmSegment, HTMLStencilElement {
|
|
2599
|
+
}
|
|
2600
|
+
var HTMLBcmSegmentElement: {
|
|
2601
|
+
prototype: HTMLBcmSegmentElement;
|
|
2602
|
+
new (): HTMLBcmSegmentElement;
|
|
2603
|
+
};
|
|
2604
|
+
/**
|
|
2605
|
+
* Modern Segmented Picker component with CSS Grid-based indicator
|
|
2606
|
+
*/
|
|
2607
|
+
interface HTMLBcmSegmentedPickerElement extends Components.BcmSegmentedPicker, HTMLStencilElement {
|
|
2608
|
+
}
|
|
2609
|
+
var HTMLBcmSegmentedPickerElement: {
|
|
2610
|
+
prototype: HTMLBcmSegmentedPickerElement;
|
|
2611
|
+
new (): HTMLBcmSegmentedPickerElement;
|
|
2612
|
+
};
|
|
2464
2613
|
interface HTMLBcmSelectElement extends Components.BcmSelect, HTMLStencilElement {
|
|
2465
2614
|
}
|
|
2466
2615
|
var HTMLBcmSelectElement: {
|
|
@@ -2671,6 +2820,7 @@ declare global {
|
|
|
2671
2820
|
"bcm-collapse": HTMLBcmCollapseElement;
|
|
2672
2821
|
"bcm-collapse-group": HTMLBcmCollapseGroupElement;
|
|
2673
2822
|
"bcm-color-input": HTMLBcmColorInputElement;
|
|
2823
|
+
"bcm-color-palette": HTMLBcmColorPaletteElement;
|
|
2674
2824
|
"bcm-colorful": HTMLBcmColorfulElement;
|
|
2675
2825
|
"bcm-colorpicker": HTMLBcmColorpickerElement;
|
|
2676
2826
|
"bcm-content": HTMLBcmContentElement;
|
|
@@ -2726,6 +2876,8 @@ declare global {
|
|
|
2726
2876
|
"bcm-result": HTMLBcmResultElement;
|
|
2727
2877
|
"bcm-scroll-area": HTMLBcmScrollAreaElement;
|
|
2728
2878
|
"bcm-search": HTMLBcmSearchElement;
|
|
2879
|
+
"bcm-segment": HTMLBcmSegmentElement;
|
|
2880
|
+
"bcm-segmented-picker": HTMLBcmSegmentedPickerElement;
|
|
2729
2881
|
"bcm-select": HTMLBcmSelectElement;
|
|
2730
2882
|
"bcm-select-box": HTMLBcmSelectBoxElement;
|
|
2731
2883
|
"bcm-select-group": HTMLBcmSelectGroupElement;
|
|
@@ -3010,6 +3162,38 @@ declare namespace LocalJSX {
|
|
|
3010
3162
|
"placeholder"?: string;
|
|
3011
3163
|
"readonly"?: boolean;
|
|
3012
3164
|
"required"?: boolean;
|
|
3165
|
+
/**
|
|
3166
|
+
* Picker type to display
|
|
3167
|
+
*/
|
|
3168
|
+
"type"?: 'default' | 'palette';
|
|
3169
|
+
"value"?: string;
|
|
3170
|
+
}
|
|
3171
|
+
/**
|
|
3172
|
+
* A component that renders a grid of Tailwind CSS colors.
|
|
3173
|
+
* It allows users to select a specific shade from various color palettes.
|
|
3174
|
+
* @component bcm-color-palette
|
|
3175
|
+
* @property {string} value - The currently selected color value (e.g., '#000000'). This prop is mutable and reflected.
|
|
3176
|
+
* @property {string[]} paletteKeys - An array of Tailwind color names to display in the grid (e.g., ['blue', 'red']).
|
|
3177
|
+
* @property {number[]} shades - An array of shade values to generate for each color key (e.g., [100, 200, ...]).
|
|
3178
|
+
* @event bcm-change - Emitted when a color is selected. The event detail contains the selected hex color string.
|
|
3179
|
+
* @example <bcm-color-palette value="#000000"></bcm-color-palette>
|
|
3180
|
+
*/
|
|
3181
|
+
interface BcmColorPalette {
|
|
3182
|
+
/**
|
|
3183
|
+
* Emitted when a color is selected
|
|
3184
|
+
*/
|
|
3185
|
+
"onBcm-change"?: (event: BcmColorPaletteCustomEvent<string>) => void;
|
|
3186
|
+
/**
|
|
3187
|
+
* List of tailwind color keys to display
|
|
3188
|
+
*/
|
|
3189
|
+
"paletteKeys"?: string[];
|
|
3190
|
+
/**
|
|
3191
|
+
* List of shades to display
|
|
3192
|
+
*/
|
|
3193
|
+
"shades"?: number[];
|
|
3194
|
+
/**
|
|
3195
|
+
* Selected color value (e.g. '#000000')
|
|
3196
|
+
*/
|
|
3013
3197
|
"value"?: string;
|
|
3014
3198
|
}
|
|
3015
3199
|
interface BcmColorful {
|
|
@@ -3409,6 +3593,7 @@ declare namespace LocalJSX {
|
|
|
3409
3593
|
interface BcmList {
|
|
3410
3594
|
"_id"?: string;
|
|
3411
3595
|
"allOpen"?: boolean;
|
|
3596
|
+
"autoFocusSelected"?: boolean;
|
|
3412
3597
|
"caption"?: string;
|
|
3413
3598
|
"captionError"?: string;
|
|
3414
3599
|
"captionType"?: StatusTypes;
|
|
@@ -3913,6 +4098,80 @@ declare namespace LocalJSX {
|
|
|
3913
4098
|
"searchIsOnlyChilds"?: boolean;
|
|
3914
4099
|
"size"?: SizeTypes1;
|
|
3915
4100
|
}
|
|
4101
|
+
/**
|
|
4102
|
+
* Individual segment option component
|
|
4103
|
+
*/
|
|
4104
|
+
interface BcmSegment {
|
|
4105
|
+
/**
|
|
4106
|
+
* Index of currently active segment (inherited from parent)
|
|
4107
|
+
*/
|
|
4108
|
+
"activeIndex"?: number;
|
|
4109
|
+
/**
|
|
4110
|
+
* Disabled state
|
|
4111
|
+
*/
|
|
4112
|
+
"disabled"?: boolean;
|
|
4113
|
+
/**
|
|
4114
|
+
* Index of this segment (inherited from parent)
|
|
4115
|
+
*/
|
|
4116
|
+
"index"?: number;
|
|
4117
|
+
/**
|
|
4118
|
+
* Internal event emitted when segment is clicked
|
|
4119
|
+
*/
|
|
4120
|
+
"onBcm-segment-click"?: (event: BcmSegmentCustomEvent<string>) => void;
|
|
4121
|
+
/**
|
|
4122
|
+
* Selected state (controlled by parent)
|
|
4123
|
+
*/
|
|
4124
|
+
"selected"?: boolean;
|
|
4125
|
+
/**
|
|
4126
|
+
* Size variant (inherited from parent)
|
|
4127
|
+
*/
|
|
4128
|
+
"size"?: 'small' | 'medium' | 'large';
|
|
4129
|
+
/**
|
|
4130
|
+
* Total number of segments (inherited from parent)
|
|
4131
|
+
*/
|
|
4132
|
+
"totalSegments"?: number;
|
|
4133
|
+
/**
|
|
4134
|
+
* Unique identifier for this segment
|
|
4135
|
+
*/
|
|
4136
|
+
"value": string;
|
|
4137
|
+
}
|
|
4138
|
+
/**
|
|
4139
|
+
* Modern Segmented Picker component with CSS Grid-based indicator
|
|
4140
|
+
*/
|
|
4141
|
+
interface BcmSegmentedPicker {
|
|
4142
|
+
/**
|
|
4143
|
+
* Disabled state
|
|
4144
|
+
*/
|
|
4145
|
+
"disabled"?: boolean;
|
|
4146
|
+
/**
|
|
4147
|
+
* Full width flag
|
|
4148
|
+
*/
|
|
4149
|
+
"fullWidth"?: boolean;
|
|
4150
|
+
/**
|
|
4151
|
+
* Name attribute for form association
|
|
4152
|
+
*/
|
|
4153
|
+
"name"?: string;
|
|
4154
|
+
/**
|
|
4155
|
+
* Emits when selected segment changes
|
|
4156
|
+
*/
|
|
4157
|
+
"onBcm-segment-change"?: (event: BcmSegmentedPickerCustomEvent<{ value: string; previousValue: string }>) => void;
|
|
4158
|
+
/**
|
|
4159
|
+
* Whether this field is required in a form
|
|
4160
|
+
*/
|
|
4161
|
+
"required"?: boolean;
|
|
4162
|
+
/**
|
|
4163
|
+
* Enable shadow on container
|
|
4164
|
+
*/
|
|
4165
|
+
"shadow"?: boolean;
|
|
4166
|
+
/**
|
|
4167
|
+
* Size variant
|
|
4168
|
+
*/
|
|
4169
|
+
"size"?: 'small' | 'medium' | 'large';
|
|
4170
|
+
/**
|
|
4171
|
+
* Selected segment value
|
|
4172
|
+
*/
|
|
4173
|
+
"value"?: string;
|
|
4174
|
+
}
|
|
3916
4175
|
interface BcmSelect {
|
|
3917
4176
|
"_data"?: any;
|
|
3918
4177
|
"_id"?: string;
|
|
@@ -4385,6 +4644,7 @@ declare namespace LocalJSX {
|
|
|
4385
4644
|
"bcm-collapse": BcmCollapse;
|
|
4386
4645
|
"bcm-collapse-group": BcmCollapseGroup;
|
|
4387
4646
|
"bcm-color-input": BcmColorInput;
|
|
4647
|
+
"bcm-color-palette": BcmColorPalette;
|
|
4388
4648
|
"bcm-colorful": BcmColorful;
|
|
4389
4649
|
"bcm-colorpicker": BcmColorpicker;
|
|
4390
4650
|
"bcm-content": BcmContent;
|
|
@@ -4440,6 +4700,8 @@ declare namespace LocalJSX {
|
|
|
4440
4700
|
"bcm-result": BcmResult;
|
|
4441
4701
|
"bcm-scroll-area": BcmScrollArea;
|
|
4442
4702
|
"bcm-search": BcmSearch;
|
|
4703
|
+
"bcm-segment": BcmSegment;
|
|
4704
|
+
"bcm-segmented-picker": BcmSegmentedPicker;
|
|
4443
4705
|
"bcm-select": BcmSelect;
|
|
4444
4706
|
"bcm-select-box": BcmSelectBox;
|
|
4445
4707
|
"bcm-select-group": BcmSelectGroup;
|
|
@@ -4500,6 +4762,17 @@ declare module "@stencil/core" {
|
|
|
4500
4762
|
"bcm-collapse": LocalJSX.BcmCollapse & JSXBase.HTMLAttributes<HTMLBcmCollapseElement>;
|
|
4501
4763
|
"bcm-collapse-group": LocalJSX.BcmCollapseGroup & JSXBase.HTMLAttributes<HTMLBcmCollapseGroupElement>;
|
|
4502
4764
|
"bcm-color-input": LocalJSX.BcmColorInput & JSXBase.HTMLAttributes<HTMLBcmColorInputElement>;
|
|
4765
|
+
/**
|
|
4766
|
+
* A component that renders a grid of Tailwind CSS colors.
|
|
4767
|
+
* It allows users to select a specific shade from various color palettes.
|
|
4768
|
+
* @component bcm-color-palette
|
|
4769
|
+
* @property {string} value - The currently selected color value (e.g., '#000000'). This prop is mutable and reflected.
|
|
4770
|
+
* @property {string[]} paletteKeys - An array of Tailwind color names to display in the grid (e.g., ['blue', 'red']).
|
|
4771
|
+
* @property {number[]} shades - An array of shade values to generate for each color key (e.g., [100, 200, ...]).
|
|
4772
|
+
* @event bcm-change - Emitted when a color is selected. The event detail contains the selected hex color string.
|
|
4773
|
+
* @example <bcm-color-palette value="#000000"></bcm-color-palette>
|
|
4774
|
+
*/
|
|
4775
|
+
"bcm-color-palette": LocalJSX.BcmColorPalette & JSXBase.HTMLAttributes<HTMLBcmColorPaletteElement>;
|
|
4503
4776
|
"bcm-colorful": LocalJSX.BcmColorful & JSXBase.HTMLAttributes<HTMLBcmColorfulElement>;
|
|
4504
4777
|
"bcm-colorpicker": LocalJSX.BcmColorpicker & JSXBase.HTMLAttributes<HTMLBcmColorpickerElement>;
|
|
4505
4778
|
"bcm-content": LocalJSX.BcmContent & JSXBase.HTMLAttributes<HTMLBcmContentElement>;
|
|
@@ -4555,6 +4828,14 @@ declare module "@stencil/core" {
|
|
|
4555
4828
|
"bcm-result": LocalJSX.BcmResult & JSXBase.HTMLAttributes<HTMLBcmResultElement>;
|
|
4556
4829
|
"bcm-scroll-area": LocalJSX.BcmScrollArea & JSXBase.HTMLAttributes<HTMLBcmScrollAreaElement>;
|
|
4557
4830
|
"bcm-search": LocalJSX.BcmSearch & JSXBase.HTMLAttributes<HTMLBcmSearchElement>;
|
|
4831
|
+
/**
|
|
4832
|
+
* Individual segment option component
|
|
4833
|
+
*/
|
|
4834
|
+
"bcm-segment": LocalJSX.BcmSegment & JSXBase.HTMLAttributes<HTMLBcmSegmentElement>;
|
|
4835
|
+
/**
|
|
4836
|
+
* Modern Segmented Picker component with CSS Grid-based indicator
|
|
4837
|
+
*/
|
|
4838
|
+
"bcm-segmented-picker": LocalJSX.BcmSegmentedPicker & JSXBase.HTMLAttributes<HTMLBcmSegmentedPickerElement>;
|
|
4558
4839
|
"bcm-select": LocalJSX.BcmSelect & JSXBase.HTMLAttributes<HTMLBcmSelectElement>;
|
|
4559
4840
|
"bcm-select-box": LocalJSX.BcmSelectBox & JSXBase.HTMLAttributes<HTMLBcmSelectBoxElement>;
|
|
4560
4841
|
"bcm-select-group": LocalJSX.BcmSelectGroup & JSXBase.HTMLAttributes<HTMLBcmSelectGroupElement>;
|
|
@@ -8,6 +8,8 @@ interface ListItemTemplateProps extends Bcm.ListItemClickEvent {
|
|
|
8
8
|
size?: any;
|
|
9
9
|
highlight?: any;
|
|
10
10
|
focusItem?: (event: any) => void;
|
|
11
|
+
disabled?: boolean;
|
|
12
|
+
readonly?: boolean;
|
|
11
13
|
}
|
|
12
14
|
export declare const ListItemTemplate: FunctionalComponent<ListItemTemplateProps>;
|
|
13
15
|
export {};
|
|
@@ -28,6 +28,8 @@ interface ListTemplateProps extends Bcm.ListClickEvent {
|
|
|
28
28
|
emptyIcon?: any;
|
|
29
29
|
focusItem?: (event: any) => void;
|
|
30
30
|
handleTransitionEnd?: (event: any) => void;
|
|
31
|
+
disabled?: boolean;
|
|
32
|
+
readonly?: boolean;
|
|
31
33
|
}
|
|
32
34
|
export declare const ListTemplate: FunctionalComponent<ListTemplateProps>;
|
|
33
35
|
export {};
|
package/package.json
CHANGED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Built with Stencil
|
|
3
|
-
* Copyright (c) Bromcom.
|
|
4
|
-
*/
|
|
5
|
-
import{h as s,r as t,c as e,g as i}from"./p-e037ee2b.js";import{G as o}from"./p-d4e4aeee.js";import{a as c}from"./p-a313fba6.js";import{c as h}from"./p-64fad38b.js";import{N as a}from"./p-e9a43560.js";import{e as r}from"./p-6f2e4c9b.js";import{C as l}from"./p-436364c8.js";import{C as n}from"./p-2e73d572.js";import"./p-858cee66.js";import"./p-a2df6c19.js";import"./p-85eedabc.js";const d=({_id:t,color:e,customStyle:i,size:o,checked:d,hidden:m,value:p,type:b,onDismiss:f,onSelect:u})=>{!o&&(o=c.FontSize["size-1"]);const j=h(((s,t=!1)=>(a.isNumber(s)&&(s=c.FontSize["size-"+s]||c.FontSize["size-4"]),t?+(c.FontSizeValue[s]||c.FontSizeValue["size-4"])+2:s))(o),"bcm-tag__content",b),k=h("bcm-tag",{hidden:m});return s("div",{id:t,class:h(k,{checked:d})},s("span",{hidden:!0},s("slot",null)),s("span",{class:j,style:(s=>{if((b===c.TagType.basic||b==c.TagType.dismissable)&&n[s])return{color:r(l,n[s]+"-6"),borderColor:r(l,n[s]+"-3"),backgroundColor:r(l,n[s]+"-1")}})(e),onClick:s=>u(s)},b===c.TagType.add&&s("span",{class:"left"},s("bcm-icon",{icon:"far fa-plus"})),b===c.TagType.checkable&&s("input",{type:"checkbox",checked:d}),s("span",{class:"value",style:i},p),b===c.TagType.dismissable&&s("span",{class:"right close-button",onClick:s=>f(s)},s("bcm-icon",{icon:"fal fa-times"}))))},m=class{constructor(s){t(this,s),this.change=e(this,"bcm-change",7),this.tagDismissable=e(this,"bcm-tag-dismissable",7),this.bcmTagSelect=e(this,"bcm-tag-select",7),this._id=o.UID(),this._internal_id=o.UID(),this.hidden=!1,this.value="",this.type=c.TagType.basic,this.checked=!1,this.color=void 0,this.customStyle=void 0,this.itemObject=void 0,this.size=c.FontSize["size-1"],this.closeFunc=s=>s,this.selectFunc=s=>s}handleClick(){this.type===c.TagType.checkable&&this.handleChecked()}handleClose(){this.tagDismissable.emit(this.el)}handleChecked(){this.checked=!this.checked,this.change.emit(this.checked)}render(){const{type:t,color:e,value:i,customStyle:o,size:h,hidden:a,checked:r}=this;return s(d,{size:h,hidden:a,color:e,customStyle:o,checked:r,value:i,type:c.TagType[t],onSelect:s=>{this.bcmTagSelect.emit(s),this.selectFunc({event:s,id:this._id})},onDismiss:s=>{this.handleClose(),this.closeFunc(s)}})}get el(){return i(this)}};export{m as bcm_tag}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Built with Stencil
|
|
3
|
-
* Copyright (c) Bromcom.
|
|
4
|
-
*/
|
|
5
|
-
import{E as o}from"./p-e037ee2b.js";import{v as s}from"./p-858cee66.js";import{L as e}from"./p-a9eb0321.js";window.bcm={version:s},function(o){const s=document.head,e=document.createElement("script");Object.keys(o).forEach((s=>{e[s]=o[s]})),s.appendChild(e)}({src:"https://kit.fontawesome.com/5e86bea963.js",crossOrigin:"anonymous"}),e.setLicenseKey(o.AG_GRID_LICENSE_KEY);
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Built with Stencil
|
|
3
|
-
* Copyright (c) Bromcom.
|
|
4
|
-
*/
|
|
5
|
-
import{r as e,c as t,f as i,h as s,H as a,g as o}from"./p-e037ee2b.js";import{I as n}from"./p-8e5e362a.js";import{G as r,s as h}from"./p-d4e4aeee.js";import{S as p}from"./p-d65bc842.js";import{a as l}from"./p-a313fba6.js";import"./p-858cee66.js";import"./p-a2df6c19.js";import"./p-85eedabc.js";const c=["BCM-INPUT","BCM-TEXTAREA","BCM-SWITCH","BCM-CHECKBOX","BCM-RADIO-GROUP","BCM-CHECKBOX-GROUP","BCM-RANGE","BCM-FORM","BCM-FORM-GROUP","BCM-LIST","BCM-COLORPICKER","BCM-DATE","BCM-DATE-PICKER","BCM-TIME-PICKER","BCM-DATETIME-PICKER","BCM-SELECT","BCM-LISTBOX","BCM-CHIP-GROUP","BCM-INPUT-DROPDOWN","BCM-NUMBER-INPUT"];const m=class{constructor(i){e(this,i),this.bcmForm=t(this,"bcm-form",7),this.isLoad=!1,this.formData={},this.formObj=new Map,this._id=r.UID(),this.validation=!1}componentDidLoad(){this.isLoad=!0,i(this)}componentIsValid(e){if(!e.hidden){this.checkIsGroup(e);const t=["bcm-checkbox","bcm-switch"].includes(p.lowercase(e.tagName))?0==e.value:p.isNullOrEmpty(e.value);e.required&&(t?(e.captionError=l.FormErrorMessages.required,e.captionType="error",this.formObj.set(e.id,{name:e.name,valid:!1,errorDetails:e.captionError})):(e.captionError=null,e.captionType="default",this.formObj.delete(e.id)))}}isGroup(e){return["bcm-checkbox-group"].includes(p.lowercase(e.tagName))}checkIsGroup(e){if(this.isGroup(e))for(let t of Array.from(e.querySelectorAll("bcm-checkbox")))t&&this.componentIsValid(t)}changeCheckboxGroup(e){const t=e.target,{changed:i}=e.detail,s=Array.from(t.querySelectorAll("bcm-checkbox"));for(let e of s)e.id==i.element.id&&(e.value=i.event.value,this.componentIsValid(e))}bcmComponentList(){return h((()=>Array.from(this.el.querySelectorAll("*")).filter((e=>c.includes(e.tagName)&&(!e["s-hn"]||"BCM-FORM-2"==e["s-hn"]))).filter(Boolean)),[])}formResponse(){const e={formData:this.formData,isValid:0==this.formObj.size,errorDetails:Object.assign({},this.formObj.size>0&&Array.from(this.formObj).map((([e,t])=>({[t.name]:t.errorDetails})))),message:0==this.formObj.size?"":"Please fill in all inputs"};return this.bcmForm.emit(e),e}async setMethodType(e){const{isLoad:t,validation:i}=this;if(t)for(const t of this.bcmComponentList())try{await t[e](),"setClear"==e&&i&&this.componentIsValid(t)}catch(i){console.error(t.nodeName,e,i)}return Promise.resolve()}async submit(){const{isLoad:e,validation:t}=this;if(e)for(const e of this.bcmComponentList()){const{name:i,value:s}=e;this.formData[i]=p.isNullOrEmpty(s)?null:s,t&&this.componentIsValid(e)}return Promise.resolve(this.formResponse())}async set(e){var t,i,s;if(this.isLoad&&e&&(null===(t=this.bcmComponentList())||void 0===t?void 0:t.length)>0)for(let t of Object.keys(e)){const a=null!==(s=null===(i=this.bcmComponentList())||void 0===i?void 0:i.find((e=>e.name==t)))&&void 0!==s?s:{};if(a)try{await a.set(e[t]),this.componentIsValid(a)}catch(e){console.warn("set: ",t,a.nodeName)}}}async get(){var e;let t={};if((null===(e=this.bcmComponentList())||void 0===e?void 0:e.length)>0)for(let e of this.bcmComponentList()){const i=await e.get();t=Object.assign(Object.assign({},t),{[e.name]:p.isNullOrEmpty(i)?null:i})}return Promise.resolve(t)}async resetCaption(){return Promise.resolve(await this.setMethodType("resetCaption"))}async setClear(){return this.formData={},this.formObj=new Map,Promise.resolve(await this.setMethodType("setClear"))}onChange(e){const{isLoad:t,validation:i}=this;if(t){const t=e.target,s=t&&t.tagName.toLowerCase().startsWith("bcm-");if(i&&s){if(this.isGroup(t))return this.changeCheckboxGroup(e);this.componentIsValid(t)}}}render(){return s(a,null,s("slot",null))}get el(){return o(this)}};(function(e,t,i,s){var a,o=arguments.length,n=o<3?t:null===s?s=Object.getOwnPropertyDescriptor(t,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,i,s);else for(var r=e.length-1;r>=0;r--)(a=e[r])&&(n=(o<3?a(n):o>3?a(t,i,n):a(t,i))||n);o>3&&n&&Object.defineProperty(t,i,n)})([n()],m.prototype,"el",void 0),m.style='@import url("https://fonts.googleapis.com/css?family=Roboto:400,500");.size-1{font-size:12px;line-height:20px}.size-2{font-size:14px;line-height:22px}.size-3{font-size:16px;line-height:24px}.size-4{font-size:20px;line-height:28px}.size-5{font-size:24px;line-height:32px}.size-6{font-size:30px;line-height:38px}.size-7{font-size:38px;line-height:46px}.size-8{font-size:46px;line-height:54px}.size-9{font-size:56px;line-height:64px}.weight-regular{font-weight:400}.weight-semibold{font-weight:500}.input-size-large{height:40px}.input-size-medium{height:32px}.input-size-small{height:24px}.resize-none textarea{resize:none}.resize-vertical textarea{resize:vertical}.resize-auto textarea{height:auto;resize:none}.textarea-size-large{padding:4px 0 0 4px;min-height:40px}.textarea-size-large .bcm-input-element{min-height:calc((40px - 8px) + 2px)}.textarea-size-large .input-clear-button{height:calc( 40px - 16px );top:8px;padding:0;margin-right:8px}.textarea-size-medium{padding:4px 0 0 4px;min-height:32px}.textarea-size-medium .bcm-input-element{min-height:calc((32px - 8px) + 2px)}.textarea-size-medium .input-clear-button{height:calc( 32px - 16px );top:8px;padding:0;margin-right:8px}.textarea-size-small{padding:0px 0 0 4px;min-height:24px}.textarea-size-small .bcm-input-element{min-height:calc((24px - 8px) + 2px)}.textarea-size-small .input-clear-button{height:calc( 24px - 16px );top:8px;padding:0;margin-right:8px}:host{display:block}';export{m as bcm_form_2}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Built with Stencil
|
|
3
|
-
* Copyright (c) Bromcom.
|
|
4
|
-
*/
|
|
5
|
-
import{r as t,c as s,h as e,H as i,g as o}from"./p-e037ee2b.js";import{c as r}from"./p-64fad38b.js";import{G as w}from"./p-d4e4aeee.js";import{S as a}from"./p-d65bc842.js";import{a as n}from"./p-a313fba6.js";import{d as h}from"./p-6f2e4c9b.js";import"./p-85eedabc.js";import"./p-858cee66.js";import"./p-a2df6c19.js";const c=class{constructor(e){t(this,e),this.bcmToastClose=s(this,"bcm-toast-close",7),this.bcmToastOpen=s(this,"bcm-toast-open",7),this.bcmToastView=s(this,"bcm-toast-view",7),this._id=w.UID(),this.status=void 0,this.message="",this.description="",this.duration=3e3,this.position=n.Placement.bottom,this.messageIcon=void 0,this.viewButton=!1,this.closeButton=!0,this.removeAfterClose=!0,this.visible=!1,this.visibleContainer=!1}async show(){const t=document.getElementById(this._id+"-container");return t&&this.createContainer(this.position).appendChild(t),this.visible=!0,await h(50),this.visibleContainer=!0,this.bcmToastOpen.emit(),this.timer&&clearTimeout(this.timer),this.timer=setTimeout((()=>this.hide()),this.duration),this.el}async hide(){this.visibleContainer=!1,clearTimeout(this.timer),this.bcmToastClose.emit(),await h(100),this.visible=!1,this.removeAfterClose&&(await h(100),this.el.remove())}handleMouseEnter(){clearTimeout(this.timer)}handleMouseLeave(){this.visible&&(this.timer=setTimeout((()=>this.hide()),1e3))}createContainer(t){const s="bcm-toast-container-"+t;let e=document.getElementById(s);if(!e){e=document.createElement("div"),e.id=s;const t=r("tw-pointer-events-none tw-overflow-hidden tw-z-50","tw-fixed tw-flex","tw-p-4 tw-gap-4",{"tw-flex-col-reverse tw-inset-x-0 tw-top-4 tw-mx-auto":this.position===n.Placement.top,"tw-flex-col tw-inset-x-0 tw-bottom-4 tw-mx-auto":this.position===n.Placement.bottom,"tw-flex-col-reverse tw-top-4 tw-left-4":this.position===n.Placement["top-start"],"tw-flex-col-reverse tw-top-4 tw-right-4":this.position===n.Placement["top-end"],"tw-flex-col tw-bottom-4 tw-left-4":this.position===n.Placement["bottom-start"],"tw-flex-col tw-bottom-4 tw-right-4":this.position===n.Placement["bottom-end"]});e.classList.add(...t.split(" ")),document.body.appendChild(e)}return e}render(){return e(i,{class:"tw-hidden"},e("div",{class:r({"tw-hidden":!this.visible}),id:this._id+"-container",onMouseEnter:()=>this.handleMouseEnter(),onMouseLeave:()=>this.handleMouseLeave()},e("div",{class:r("tw-pointer-events-auto tw-transform tw-transition tw-duration-300 tw-ease-in-out","tw-flex tw-min-w-[256px] tw-max-w-[420px] tw-flex-col tw-gap-2 tw-rounded-lg tw-border tw-font-sans tw-font-normal tw-shadow-2","tw-border-color-default tw-bg-white tw-text-color-default",{"tw-p-4":!this.description,"tw-p-6":this.description},"tw-transform tw-transition tw-duration-300 tw-ease-in-out ",{"tw-translate-y-0 tw-opacity-100 ":this.visibleContainer,"tw-opacity-0":!this.visibleContainer,"tw-translate-y-[-100%]":!this.visibleContainer&&"top"===this.position.split("-")[0],"tw-translate-y-[100%]":!this.visibleContainer&&"bottom"===this.position.split("-")[0]})},e("div",{class:"tw-flex tw-items-center tw-justify-between tw-gap-5"},e("div",{class:"tw-flex tw-items-center tw-gap-3 "},this.status&&e("i",{class:r("tw-text-6",this.messageIcon?this.messageIcon:"far",{"tw-text-color-success":"success"===this.status,"tw-text-color-error":"error"===this.status,"tw-text-color-warning":"warning"===this.status,"tw-text-color-info":"info"===this.status},{"fa-check-circle":!this.messageIcon&&"success"===this.status,"fa-exclamation-circle":!this.messageIcon&&"error"===this.status,"fa-exclamation-triangle":!this.messageIcon&&"warning"===this.status,"fa-info-circle":!this.messageIcon&&"info"===this.status})}),e("span",{class:r({"tw-text-4":!this.description,"tw-text-6 tw-font-medium":this.description})},!this.description&&this.status&&e("span",null,a.capitalize(this.status),": "),this.message)),e("div",{class:"tw-flex tw-items-baseline tw-gap-2"},this.viewButton&&e("button",{onClick:()=>this.bcmToastView.emit(),title:"View details",class:r("tw-appearance-none tw-outline-0 tw-border-none tw-cursor-pointer tw-rounded tw-bg-transparent tw-p-0 tw-px-1 tw-text-4 tw-text-inherit","hover:tw-bg-color-default-hover","active:tw-bg-color-default-active","tw-transition tw-duration-300 tw-ease-in-out",{"tw-font-medium":this.description})},"View"),this.closeButton&&e("button",{title:"Close",onClick:()=>this.hide(),class:r("tw-appearance-none tw-outline-0 tw-border-none tw-cursor-pointer","tw-rounded tw-bg-transparent tw-p-0","tw-flex tw-h-6 tw-w-6 tw-cursor-pointer tw-items-center tw-justify-center tw-text-3 tw-text-inherit","hover:tw-bg-color-default-hover","active:tw-bg-color-default-active")},e("i",{class:"fal fa-times"})))),this.description&&e("div",{class:"tw-text-size-5 font-medium"},this.description),e("slot",null))))}get el(){return o(this)}};export{c as bcm_toast}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Built with Stencil
|
|
3
|
-
* Copyright (c) Bromcom.
|
|
4
|
-
*/
|
|
5
|
-
import{s as e}from"./p-d4e4aeee.js";class s{}s.isNumber=s=>e((()=>/^[0-9]+$/i.test(s))),s.convertToNumber=s=>e((()=>Number(s))),s.replaceNumber=s=>e((()=>s.replace(/[^0-9]/g,""))),s.replaceFloat=s=>e((()=>s.replace(/[^0-9.]/g,""))),s.toFixed=(s,a)=>e((()=>s.toFixed(a))),s.parseFloatFixed=(a,r)=>e((()=>parseFloat(s.replaceFloat(a)).toFixed(r))),s.getDecimalLength=s=>e((()=>s.split(".")[1]?s.split(".")[1].length:0)),s.toNumber=s=>e((()=>Number(s.replace(/[^0-9.]/g,""))));export{s as N}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/*!
|
|
2
|
-
* Built with Stencil
|
|
3
|
-
* Copyright (c) Bromcom.
|
|
4
|
-
*/
|
|
5
|
-
import{r as t,h as p,H as s,g as r}from"./p-e037ee2b.js";import"./p-499d8454.js";import"./p-626a65e9.js";import{G as e}from"./p-d4e4aeee.js";import"./p-e9a43560.js";import"./p-d65bc842.js";import"./p-367bc8e0.js";import"./p-6f861fed.js";import"./p-a313fba6.js";import{c as o}from"./p-64fad38b.js";import"./p-436364c8.js";import"./p-6f2e4c9b.js";import"./p-a2df6c19.js";import"./p-85eedabc.js";import"./p-858cee66.js";const i=class{constructor(p){t(this,p),this._id=e.UID(),this.el.slot="footer"}render(){return p(s,{class:o("tw-flex tw-flex-row tw-items-center tw-justify-end tw-gap-2 tw-px-6 tw-pb-6 tw-pt-2")},p("slot",null))}get el(){return r(this)}};export{i as bcm_modal_2_footer}
|