vector-prototype-components 0.1.1 → 0.1.3
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/Accordion/Accordion.js +79 -0
- package/Accordion/Accordion.js.map +1 -0
- package/Accordion/Accordion.module.css +1 -0
- package/Accordion/Accordion.module.css.js +36 -0
- package/Accordion/Accordion.module.css.js.map +1 -0
- package/ActionMenu/ActionMenu.js +49 -0
- package/ActionMenu/ActionMenu.js.map +1 -0
- package/ActionMenu/ActionMenu.module.css +1 -0
- package/ActionMenu/ActionMenu.module.css.js +16 -0
- package/ActionMenu/ActionMenu.module.css.js.map +1 -0
- package/Autocomplete/Autocomplete.js +226 -0
- package/Autocomplete/Autocomplete.js.map +1 -0
- package/Autocomplete/Autocomplete.module.css +1 -0
- package/Autocomplete/Autocomplete.module.css.js +46 -0
- package/Autocomplete/Autocomplete.module.css.js.map +1 -0
- package/Avatar/Avatar.js +66 -0
- package/Avatar/Avatar.js.map +1 -0
- package/Avatar/Avatar.module.css +1 -0
- package/Avatar/Avatar.module.css.js +26 -0
- package/Avatar/Avatar.module.css.js.map +1 -0
- package/Badge/Badge.js +40 -0
- package/Badge/Badge.js.map +1 -0
- package/Badge/Badge.module.css +1 -0
- package/Badge/Badge.module.css.js +24 -0
- package/Badge/Badge.module.css.js.map +1 -0
- package/BottomBar/BottomBar.js +19 -0
- package/BottomBar/BottomBar.js.map +1 -0
- package/BottomBar/BottomBar.module.css +1 -0
- package/BottomBar/BottomBar.module.css.js +10 -0
- package/BottomBar/BottomBar.module.css.js.map +1 -0
- package/Breadcrumbs/Breadcrumbs.js +40 -0
- package/Breadcrumbs/Breadcrumbs.js.map +1 -0
- package/Breadcrumbs/Breadcrumbs.module.css +1 -0
- package/Breadcrumbs/Breadcrumbs.module.css.js +18 -0
- package/Breadcrumbs/Breadcrumbs.module.css.js.map +1 -0
- package/Button/Button.js +53 -0
- package/Button/Button.js.map +1 -0
- package/Button/Button.module.css +1 -0
- package/Button/Button.module.css.js +24 -0
- package/Button/Button.module.css.js.map +1 -0
- package/Callout/Callout.js +66 -0
- package/Callout/Callout.js.map +1 -0
- package/Callout/Callout.module.css +1 -0
- package/Callout/Callout.module.css.js +28 -0
- package/Callout/Callout.module.css.js.map +1 -0
- package/Card/Card.js +39 -0
- package/Card/Card.js.map +1 -0
- package/Card/Card.module.css +1 -0
- package/Card/Card.module.css.js +18 -0
- package/Card/Card.module.css.js.map +1 -0
- package/Checkbox/Checkbox.js +90 -0
- package/Checkbox/Checkbox.js.map +1 -0
- package/Checkbox/Checkbox.module.css +1 -0
- package/Checkbox/Checkbox.module.css.js +22 -0
- package/Checkbox/Checkbox.module.css.js.map +1 -0
- package/Chip/Chip.js +62 -0
- package/Chip/Chip.js.map +1 -0
- package/Chip/Chip.module.css +1 -0
- package/Chip/Chip.module.css.js +24 -0
- package/Chip/Chip.module.css.js.map +1 -0
- package/DatePicker/DatePicker.js +157 -0
- package/DatePicker/DatePicker.js.map +1 -0
- package/DatePicker/DatePicker.module.css +1 -0
- package/DatePicker/DatePicker.module.css.js +48 -0
- package/DatePicker/DatePicker.module.css.js.map +1 -0
- package/DatePicker/DatePickerCalendar.js +94 -0
- package/DatePicker/DatePickerCalendar.js.map +1 -0
- package/DatePicker/DatePickerCalendar.module.css +1 -0
- package/DatePicker/DatePickerCalendar.module.css.js +32 -0
- package/DatePicker/DatePickerCalendar.module.css.js.map +1 -0
- package/Divider/Divider.js +22 -0
- package/Divider/Divider.js.map +1 -0
- package/Divider/Divider.module.css +1 -0
- package/Divider/Divider.module.css.js +12 -0
- package/Divider/Divider.module.css.js.map +1 -0
- package/Dropdown/Dropdown.js +100 -0
- package/Dropdown/Dropdown.js.map +1 -0
- package/Dropdown/Dropdown.module.css +1 -0
- package/Dropdown/Dropdown.module.css.js +20 -0
- package/Dropdown/Dropdown.module.css.js.map +1 -0
- package/Icon/Icon.js +8 -0
- package/Icon/Icon.js.map +1 -0
- package/IconButton/IconButton.js +42 -0
- package/IconButton/IconButton.js.map +1 -0
- package/IconButton/IconButton.module.css +1 -0
- package/IconButton/IconButton.module.css.js +20 -0
- package/IconButton/IconButton.module.css.js.map +1 -0
- package/InputNumber/InputNumber.js +106 -0
- package/InputNumber/InputNumber.js.map +1 -0
- package/InputNumber/InputNumber.module.css +1 -0
- package/InputNumber/InputNumber.module.css.js +30 -0
- package/InputNumber/InputNumber.module.css.js.map +1 -0
- package/Menu/Menu.js +182 -0
- package/Menu/Menu.js.map +1 -0
- package/Menu/Menu.module.css +1 -0
- package/Menu/Menu.module.css.js +56 -0
- package/Menu/Menu.module.css.js.map +1 -0
- package/Menu/menuData.js +188 -0
- package/Menu/menuData.js.map +1 -0
- package/Message/Message.js +88 -0
- package/Message/Message.js.map +1 -0
- package/Message/Message.module.css +1 -0
- package/Message/Message.module.css.js +32 -0
- package/Message/Message.module.css.js.map +1 -0
- package/Modal/Modal.js +186 -0
- package/Modal/Modal.js.map +1 -0
- package/Modal/Modal.module.css +1 -0
- package/Modal/Modal.module.css.js +44 -0
- package/Modal/Modal.module.css.js.map +1 -0
- package/Multiselect/Multiselect.js +249 -0
- package/Multiselect/Multiselect.js.map +1 -0
- package/Multiselect/Multiselect.module.css +1 -0
- package/Multiselect/Multiselect.module.css.js +64 -0
- package/Multiselect/Multiselect.module.css.js.map +1 -0
- package/Overlay/Overlay.js +18 -0
- package/Overlay/Overlay.js.map +1 -0
- package/Overlay/Overlay.module.css +1 -0
- package/Overlay/Overlay.module.css.js +8 -0
- package/Overlay/Overlay.module.css.js.map +1 -0
- package/Paginator/Paginator.js +118 -0
- package/Paginator/Paginator.js.map +1 -0
- package/Paginator/Paginator.module.css +1 -0
- package/Paginator/Paginator.module.css.js +22 -0
- package/Paginator/Paginator.module.css.js.map +1 -0
- package/Panel/Panel.js +38 -0
- package/Panel/Panel.js.map +1 -0
- package/Panel/Panel.module.css +1 -0
- package/Panel/Panel.module.css.js +16 -0
- package/Panel/Panel.module.css.js.map +1 -0
- package/ProgressSpinner/ProgressSpinner.js +64 -0
- package/ProgressSpinner/ProgressSpinner.js.map +1 -0
- package/ProgressSpinner/ProgressSpinner.module.css +1 -0
- package/ProgressSpinner/ProgressSpinner.module.css.js +16 -0
- package/ProgressSpinner/ProgressSpinner.module.css.js.map +1 -0
- package/Radio/Radio.js +44 -0
- package/Radio/Radio.js.map +1 -0
- package/Radio/Radio.module.css +1 -0
- package/Radio/Radio.module.css.js +18 -0
- package/Radio/Radio.module.css.js.map +1 -0
- package/SegmentControl/SegmentControl.js +74 -0
- package/SegmentControl/SegmentControl.js.map +1 -0
- package/SegmentControl/SegmentControl.module.css +1 -0
- package/SegmentControl/SegmentControl.module.css.js +16 -0
- package/SegmentControl/SegmentControl.module.css.js.map +1 -0
- package/Select/Select.js +153 -0
- package/Select/Select.js.map +1 -0
- package/Select/Select.module.css +1 -0
- package/Select/Select.module.css.js +46 -0
- package/Select/Select.module.css.js.map +1 -0
- package/Skeleton/Skeleton.js +78 -0
- package/Skeleton/Skeleton.js.map +1 -0
- package/Skeleton/Skeleton.module.css +1 -0
- package/Skeleton/Skeleton.module.css.js +18 -0
- package/Skeleton/Skeleton.module.css.js.map +1 -0
- package/Slider/Slider.js +116 -0
- package/Slider/Slider.js.map +1 -0
- package/Slider/Slider.module.css +1 -0
- package/Slider/Slider.module.css.js +24 -0
- package/Slider/Slider.module.css.js.map +1 -0
- package/Slot/Slot.js +25 -0
- package/Slot/Slot.js.map +1 -0
- package/Slot/Slot.module.css +1 -0
- package/Slot/Slot.module.css.js +16 -0
- package/Slot/Slot.module.css.js.map +1 -0
- package/Switch/Switch.js +42 -0
- package/Switch/Switch.js.map +1 -0
- package/Switch/Switch.module.css +1 -0
- package/Switch/Switch.module.css.js +11 -0
- package/Switch/Switch.module.css.js.map +1 -0
- package/Table/Table.js +268 -0
- package/Table/Table.js.map +1 -0
- package/Table/Table.module.css +1 -0
- package/Table/Table.module.css.js +64 -0
- package/Table/Table.module.css.js.map +1 -0
- package/TableTree/TableTree.js +139 -0
- package/TableTree/TableTree.js.map +1 -0
- package/TableTree/TableTree.module.css +1 -0
- package/TableTree/TableTree.module.css.js +62 -0
- package/TableTree/TableTree.module.css.js.map +1 -0
- package/Tabs/Tabs.js +92 -0
- package/Tabs/Tabs.js.map +1 -0
- package/Tabs/Tabs.module.css +1 -0
- package/Tabs/Tabs.module.css.js +18 -0
- package/Tabs/Tabs.module.css.js.map +1 -0
- package/Tag/Tag.js +48 -0
- package/Tag/Tag.js.map +1 -0
- package/Tag/Tag.module.css +1 -0
- package/Tag/Tag.module.css.js +30 -0
- package/Tag/Tag.module.css.js.map +1 -0
- package/TextField/TextField.js +93 -0
- package/TextField/TextField.js.map +1 -0
- package/TextField/TextField.module.css +1 -0
- package/TextField/TextField.module.css.js +36 -0
- package/TextField/TextField.module.css.js.map +1 -0
- package/Textarea/Textarea.js +52 -0
- package/Textarea/Textarea.js.map +1 -0
- package/Textarea/Textarea.module.css +1 -0
- package/Textarea/Textarea.module.css.js +32 -0
- package/Textarea/Textarea.module.css.js.map +1 -0
- package/Toast/Toast.js +82 -0
- package/Toast/Toast.js.map +1 -0
- package/Toast/Toast.module.css +1 -0
- package/Toast/Toast.module.css.js +28 -0
- package/Toast/Toast.module.css.js.map +1 -0
- package/Tooltip/Tooltip.js +61 -0
- package/Tooltip/Tooltip.js.map +1 -0
- package/Tooltip/Tooltip.module.css +1 -0
- package/Tooltip/Tooltip.module.css.js +26 -0
- package/Tooltip/Tooltip.module.css.js.map +1 -0
- package/TopBar/TopBar.js +87 -0
- package/TopBar/TopBar.js.map +1 -0
- package/TopBar/TopBar.module.css +1 -0
- package/TopBar/TopBar.module.css.js +30 -0
- package/TopBar/TopBar.module.css.js.map +1 -0
- package/index.js +90 -4157
- package/index.js.map +1 -1
- package/package.json +3 -4
- package/style.css +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._scrollable_1rjtm_9{scrollbar-width:thin;scrollbar-color:var(--color-fill-neutral-muted) transparent}._scrollable_1rjtm_9::-webkit-scrollbar{width:8px;height:8px}._scrollable_1rjtm_9::-webkit-scrollbar-track{background:transparent;border-radius:4px}._scrollable_1rjtm_9::-webkit-scrollbar-thumb{background-color:var(--color-fill-neutral-muted);border-radius:4px}._scrollable_1rjtm_9::-webkit-scrollbar-thumb:hover{background-color:var(--color-fill-neutral-default)}._scrollable_1rjtm_9::-webkit-scrollbar-thumb:active{background-color:var(--color-fill-neutral-strong)}._menu_1w095_2{display:flex;flex-direction:column;background-color:var(--color-canvas-neutral-white);box-shadow:1px 0 2px #0e0f2312;height:100%;min-height:100vh;overflow:hidden;position:relative;transition:width .2s ease}._menuOpened_1w095_14{width:240px}._menuClosed_1w095_18{width:72px}._logo_1w095_23{display:flex;align-items:center;justify-content:flex-start;height:72px;padding:16px;background-color:var(--color-canvas-neutral-white);flex-shrink:0;overflow:hidden}._menuClosed_1w095_18 ._logo_1w095_23{justify-content:center;padding:16px 12px}._logoImg_1w095_39{height:40px;width:auto;object-fit:contain}._logoImgSmall_1w095_45{height:16px;width:auto;object-fit:contain}._content_1w095_52{display:flex;flex-direction:column;flex:1 1 auto;overflow-y:auto;overflow-x:hidden}._menu_1w095_2 ._content_1w095_52{scrollbar-color:transparent transparent}._menu_1w095_2 ._content_1w095_52::-webkit-scrollbar-thumb{background-color:transparent}._menu_1w095_2:hover ._content_1w095_52{scrollbar-color:var(--color-fill-neutral-muted) transparent}._menu_1w095_2:hover ._content_1w095_52::-webkit-scrollbar-thumb{background-color:var(--color-fill-neutral-muted)}._menu_1w095_2:hover ._content_1w095_52::-webkit-scrollbar-thumb:hover{background-color:var(--color-fill-neutral-default)}._section_1w095_82{display:flex;flex-direction:column;gap:8px;padding:16px 8px;background-color:var(--color-canvas-neutral-white)}._menuClosed_1w095_18 ._section_1w095_82{padding:16px 12px}._sectionTitle_1w095_94{display:flex;align-items:center;padding:0 8px;font-family:var(--font-family-base, system-ui, sans-serif);font-size:var(--font-size-14);font-weight:var(--font-weight-semibold);line-height:var(--font-line-height-14);color:var(--color-text-neutral-subtlest);white-space:nowrap;overflow:hidden}._itemGroup_1w095_107{display:flex;flex-direction:column}._item_1w095_107{display:flex;align-items:center;gap:16px;padding:0 8px;height:48px;border-radius:8px;background-color:var(--color-canvas-neutral-white);cursor:pointer;border:none;outline:none;width:100%;text-align:left;text-decoration:none;transition:background-color .12s ease,color .12s ease,box-shadow .12s ease;position:relative;flex-shrink:0}._itemClosed_1w095_136{display:flex;align-items:center;justify-content:center;padding:0 8px;height:48px;width:48px;border-radius:9999px;background-color:var(--color-canvas-neutral-white);cursor:pointer;border:none;outline:none;text-align:left;transition:background-color .12s ease,box-shadow .12s ease;position:relative;flex-shrink:0}._item_1w095_107:hover:not(:disabled),._item_1w095_107._stateHover_1w095_158{background-color:var(--color-fill-interaction-neutral-subtle-hover)}._item_1w095_107._stateActive_1w095_162,._item_1w095_107[aria-current=page]{background-color:var(--color-fill-brand-subtle)}._itemClosed_1w095_136:hover:not(:disabled),._itemClosed_1w095_136._stateHover_1w095_158{background-color:var(--color-fill-interaction-neutral-subtle-hover)}._itemClosed_1w095_136._stateActive_1w095_162,._itemClosed_1w095_136[aria-current=page]{background-color:var(--color-fill-brand-subtle)}._item_1w095_107:focus-visible,._itemClosed_1w095_136:focus-visible{outline:none;box-shadow:var(--shadow-focus)}._item_1w095_107:disabled,._itemClosed_1w095_136:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}._itemLeading_1w095_191{display:flex;align-items:center;gap:16px;flex:1 0 0;min-width:0;padding-right:12px;overflow:hidden}._itemIcon_1w095_201{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--color-icon-neutral-default)}._item_1w095_107._stateActive_1w095_162 ._itemIcon_1w095_201,._item_1w095_107[aria-current=page] ._itemIcon_1w095_201{color:var(--color-icon-brand-default)}._itemClosed_1w095_136 ._itemIcon_1w095_201{color:var(--color-icon-neutral-default)}._itemClosed_1w095_136._stateActive_1w095_162 ._itemIcon_1w095_201,._itemClosed_1w095_136[aria-current=page] ._itemIcon_1w095_201{color:var(--color-icon-brand-default)}._itemLabel_1w095_225{flex:1 0 0;min-width:0;font-family:var(--font-family-base, system-ui, sans-serif);font-size:var(--font-size-14);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-14);color:var(--color-text-neutral-mudle);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}._item_1w095_107._stateActive_1w095_162 ._itemLabel_1w095_225,._item_1w095_107[aria-current=page] ._itemLabel_1w095_225{font-weight:var(--font-weight-semibold);color:var(--color-text-brand-default)}._itemCaret_1w095_244{flex-shrink:0;width:12px;height:12px;display:flex;align-items:center;justify-content:center;color:var(--color-icon-neutral-default);transition:transform .2s ease}._itemCaretExpanded_1w095_255{transform:rotate(180deg)}._submenu_1w095_265{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s ease}._submenuExpanded_1w095_271{grid-template-rows:1fr}._submenuInner_1w095_275{overflow:hidden;min-height:0;display:flex;flex-direction:column}._itemNested_1w095_283{padding-left:44px}._tooltip_1w095_292{position:fixed;transform:translateY(-50%);background-color:var(--color-fill-neutral-strong);color:var(--color-text-neutral-inverse);font-family:var(--font-family-base, system-ui, sans-serif);font-size:var(--font-size-12);font-weight:var(--font-weight-semibold);line-height:18px;padding:8px 12px;border-radius:8px;white-space:nowrap;pointer-events:none;box-shadow:var(--shadow-layer-sm);z-index:1000}._footer_1w095_310{display:flex;gap:16px;align-items:flex-start;padding:16px;background-color:var(--color-canvas-neutral-white);border-top:1px solid var(--color-stroke-neutral-default);flex-shrink:0;overflow:hidden}._footerIcon_1w095_321{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--color-icon-neutral-default)}._footerText_1w095_331{flex:1 0 0;min-width:0;margin:0;font-family:var(--font-family-base, system-ui, sans-serif);font-size:var(--font-size-12);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-12);color:var(--color-text-neutral-mudle)}._footerLink_1w095_343{font-family:inherit;font-size:inherit;line-height:inherit;font-weight:var(--font-weight-semibold);color:var(--color-text-neutral-mudle);background:none;border:none;padding:0;margin:0;cursor:pointer;text-decoration:underline}._footerLink_1w095_343:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:2px}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import './Menu.module.css';const e = "_menu_1w095_2", t = "_menuOpened_1w095_14", o = "_menuClosed_1w095_18", n = "_logo_1w095_23", _ = "_content_1w095_52 _scrollable_1rjtm_9", s = "_section_1w095_82", i = "_sectionTitle_1w095_94", m = "_itemGroup_1w095_107", c = "_item_1w095_107", u = "_itemClosed_1w095_136", d = "_stateActive_1w095_162", r = "_itemLeading_1w095_191", w = "_itemIcon_1w095_201", a = "_itemLabel_1w095_225", l = "_itemCaret_1w095_244", p = "_itemCaretExpanded_1w095_255", b = "_submenu_1w095_265", f = "_submenuExpanded_1w095_271", C = "_submenuInner_1w095_275", x = "_itemNested_1w095_283", I = "_tooltip_1w095_292", L = "_footer_1w095_310", g = "_footerIcon_1w095_321", E = "_footerText_1w095_331", T = "_footerLink_1w095_343", k = {
|
|
2
|
+
menu: e,
|
|
3
|
+
menuOpened: t,
|
|
4
|
+
menuClosed: o,
|
|
5
|
+
logo: n,
|
|
6
|
+
content: _,
|
|
7
|
+
section: s,
|
|
8
|
+
sectionTitle: i,
|
|
9
|
+
itemGroup: m,
|
|
10
|
+
item: c,
|
|
11
|
+
itemClosed: u,
|
|
12
|
+
stateActive: d,
|
|
13
|
+
itemLeading: r,
|
|
14
|
+
itemIcon: w,
|
|
15
|
+
itemLabel: a,
|
|
16
|
+
itemCaret: l,
|
|
17
|
+
itemCaretExpanded: p,
|
|
18
|
+
submenu: b,
|
|
19
|
+
submenuExpanded: f,
|
|
20
|
+
submenuInner: C,
|
|
21
|
+
itemNested: x,
|
|
22
|
+
tooltip: I,
|
|
23
|
+
footer: L,
|
|
24
|
+
footerIcon: g,
|
|
25
|
+
footerText: E,
|
|
26
|
+
footerLink: T
|
|
27
|
+
};
|
|
28
|
+
export {
|
|
29
|
+
_ as content,
|
|
30
|
+
k as default,
|
|
31
|
+
L as footer,
|
|
32
|
+
g as footerIcon,
|
|
33
|
+
T as footerLink,
|
|
34
|
+
E as footerText,
|
|
35
|
+
c as item,
|
|
36
|
+
l as itemCaret,
|
|
37
|
+
p as itemCaretExpanded,
|
|
38
|
+
u as itemClosed,
|
|
39
|
+
m as itemGroup,
|
|
40
|
+
w as itemIcon,
|
|
41
|
+
a as itemLabel,
|
|
42
|
+
r as itemLeading,
|
|
43
|
+
x as itemNested,
|
|
44
|
+
n as logo,
|
|
45
|
+
e as menu,
|
|
46
|
+
o as menuClosed,
|
|
47
|
+
t as menuOpened,
|
|
48
|
+
s as section,
|
|
49
|
+
i as sectionTitle,
|
|
50
|
+
d as stateActive,
|
|
51
|
+
b as submenu,
|
|
52
|
+
f as submenuExpanded,
|
|
53
|
+
C as submenuInner,
|
|
54
|
+
I as tooltip
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=Menu.module.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Menu.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/Menu/menuData.js
ADDED
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import { TruckTrailer as e, CurrencyCircleDollar as a, House as o, ProjectorScreenChart as l, ClipboardText as t, CallBell as r, Package as n, FlagBanner as i, ChatCenteredText as c, PresentationChart as s, SketchLogo as b, CalendarDots as d, Garage as k, Folder as y, File as g, CheckSquareOffset as m, ListChecks as u, Note as p, Cardholder as C, BoxArrowUp as v, Coins as h, Receipt as f, Percent as A, CurrencyDollar as P, FlagPennant as q, Gear as V } from "@phosphor-icons/react";
|
|
2
|
+
const G = {
|
|
3
|
+
title: "Seleção de portal",
|
|
4
|
+
items: [
|
|
5
|
+
{ key: "logtech", label: "Logtech", icon: e },
|
|
6
|
+
{ key: "conta-digital", label: "Conta digital", icon: a },
|
|
7
|
+
{ key: "combustivel", label: "Combustível", icon: o }
|
|
8
|
+
]
|
|
9
|
+
}, D = {
|
|
10
|
+
title: "Menu",
|
|
11
|
+
items: [
|
|
12
|
+
{ key: "dashboard", label: "Dashboard", icon: l },
|
|
13
|
+
{
|
|
14
|
+
key: "cadastros",
|
|
15
|
+
label: "Cadastros",
|
|
16
|
+
icon: t,
|
|
17
|
+
// Sub-itens não têm ícone (Figma: Show Leading Icon=false)
|
|
18
|
+
children: [
|
|
19
|
+
{ key: "transportadora-sub", label: "Transportadora" },
|
|
20
|
+
{ key: "motorista", label: "Motorista" },
|
|
21
|
+
{ key: "veiculo-sub", label: "Veículo" },
|
|
22
|
+
{ key: "filiais", label: "Filiais" },
|
|
23
|
+
{ key: "controle-cadastros", label: "Controle de cadastros" },
|
|
24
|
+
{ key: "locais", label: "Locais" },
|
|
25
|
+
{ key: "noticias", label: "Notícias" },
|
|
26
|
+
{ key: "produto", label: "Produto" },
|
|
27
|
+
{ key: "grupo-locais", label: "Grupo de locais" },
|
|
28
|
+
{ key: "rotas", label: "Rotas" },
|
|
29
|
+
{ key: "grupos", label: "Grupos" },
|
|
30
|
+
{ key: "observacoes", label: "Observações" },
|
|
31
|
+
{ key: "contratos-hazmat", label: "Contratos hazmat" }
|
|
32
|
+
]
|
|
33
|
+
},
|
|
34
|
+
{ key: "solicitacoes", label: "Solicitações", icon: r },
|
|
35
|
+
{
|
|
36
|
+
key: "ofertas",
|
|
37
|
+
label: "Ofertas",
|
|
38
|
+
icon: n,
|
|
39
|
+
children: [
|
|
40
|
+
{ key: "ofertas-sub", label: "Ofertas" },
|
|
41
|
+
{ key: "pool-ofertas", label: "Pool ofertas" },
|
|
42
|
+
{ key: "alcada-aprovacoes", label: "Alçada de aprovações" },
|
|
43
|
+
{ key: "automacao-divulgacao", label: "Automação de divulgação de lotes" },
|
|
44
|
+
{ key: "parametros-desagio", label: "Parâmetros de deságio" }
|
|
45
|
+
]
|
|
46
|
+
},
|
|
47
|
+
{ key: "gerenciadora", label: "Gerenciadora de risco", icon: i },
|
|
48
|
+
{
|
|
49
|
+
key: "viagens",
|
|
50
|
+
label: "Viagens",
|
|
51
|
+
icon: e,
|
|
52
|
+
children: [
|
|
53
|
+
{ key: "viagens-sub", label: "Viagens" },
|
|
54
|
+
{ key: "acompanhamento-viagem", label: "Acompanhamento de viagem" },
|
|
55
|
+
{ key: "painel-viagem", label: "Painel de viagem" },
|
|
56
|
+
{ key: "monitoramento-viagem", label: "Monitoramento" },
|
|
57
|
+
{ key: "relatorio-agente-frete", label: "Relatório de agente de frete" }
|
|
58
|
+
]
|
|
59
|
+
},
|
|
60
|
+
{ key: "mensagens", label: "Mensagens", icon: c },
|
|
61
|
+
{ key: "painel", label: "Painel", icon: s },
|
|
62
|
+
{ key: "clube", label: "Clube Vector", icon: b },
|
|
63
|
+
{ key: "tomada", label: "Tomada de preço", icon: a },
|
|
64
|
+
{
|
|
65
|
+
key: "agendamento",
|
|
66
|
+
label: "Agendamento",
|
|
67
|
+
icon: d,
|
|
68
|
+
children: [
|
|
69
|
+
{ key: "carga-descarga", label: "Carga e descarga" },
|
|
70
|
+
{ key: "fornecedor-cliente", label: "Fornecedor/Cliente" },
|
|
71
|
+
{ key: "viagem-amiga-ag", label: "Viagem Amiga" },
|
|
72
|
+
{ key: "gestao-agendamento", label: "Gestão de agendamento" }
|
|
73
|
+
]
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
key: "logistica",
|
|
77
|
+
label: "Logística Interna",
|
|
78
|
+
icon: k,
|
|
79
|
+
children: [
|
|
80
|
+
{ key: "gestao-patio", label: "Gestão de pátio" },
|
|
81
|
+
{ key: "frentes-carregamento", label: "Frentes de carregamento" },
|
|
82
|
+
{ key: "config-docas", label: "Configuração de docas" },
|
|
83
|
+
{ key: "track-pass", label: "Track pass" },
|
|
84
|
+
{ key: "checklist-log", label: "Checklist" }
|
|
85
|
+
]
|
|
86
|
+
},
|
|
87
|
+
{ key: "gdv", label: "GDV", icon: y },
|
|
88
|
+
{ key: "relatorio-vpay", label: "Relatório VPay", icon: g },
|
|
89
|
+
{ key: "enquetes", label: "Enquetes", icon: m },
|
|
90
|
+
{ key: "avaliacao", label: "Avaliação Operacional", icon: u },
|
|
91
|
+
{
|
|
92
|
+
key: "quitacao",
|
|
93
|
+
label: "Quitação Digital",
|
|
94
|
+
icon: p,
|
|
95
|
+
children: [
|
|
96
|
+
{ key: "painel-controle", label: "Painel de controle" },
|
|
97
|
+
{ key: "entrega-documental", label: "Entrega documental" },
|
|
98
|
+
{ key: "painel-controle-emb", label: "Painel de controle embarcador" },
|
|
99
|
+
{ key: "entrega-documental-transp", label: "Entrega documental transportador" },
|
|
100
|
+
{ key: "regularizacao-documental", label: "Regularização documental" }
|
|
101
|
+
]
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
key: "cartoes",
|
|
105
|
+
label: "Controle de cartões",
|
|
106
|
+
icon: C,
|
|
107
|
+
children: [
|
|
108
|
+
{ key: "estoque-cartoes-vector", label: "Estoque cartões Vector" },
|
|
109
|
+
{ key: "estoque-cartoes-parceiros", label: "Estoque cartões parceiros" },
|
|
110
|
+
{ key: "vinculacao-cartoes", label: "Vinculação de cartões" }
|
|
111
|
+
]
|
|
112
|
+
},
|
|
113
|
+
{ key: "transportadora", label: "Transportadora digital", icon: v },
|
|
114
|
+
{
|
|
115
|
+
key: "antecipacao",
|
|
116
|
+
label: "Antecipação de recebíveis",
|
|
117
|
+
icon: h,
|
|
118
|
+
children: [
|
|
119
|
+
{ key: "antecipacao-sub", label: "Antecipação de recebíveis" },
|
|
120
|
+
{ key: "gestao-antecipacoes", label: "Gestão de antecipações" }
|
|
121
|
+
]
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
key: "pagamento",
|
|
125
|
+
label: "Pagamento de frete",
|
|
126
|
+
icon: f,
|
|
127
|
+
children: [
|
|
128
|
+
{ key: "gestao-pagamentos", label: "Gestão de pagamentos" },
|
|
129
|
+
{ key: "viagens-vector-pay", label: "Viagens Vector Pay" },
|
|
130
|
+
{ key: "adiantamento-quitacao", label: "Adiantamento e quitação de pagamentos" },
|
|
131
|
+
{ key: "motor-pagamento", label: "Motor de pagamento" },
|
|
132
|
+
{ key: "extrato-pagamento", label: "Extrato de pagamento" },
|
|
133
|
+
{ key: "controle-limite", label: "Controle de limite" },
|
|
134
|
+
{ key: "acompanhamento-boleto-fob", label: "Acompanhamento de boleto FOB" },
|
|
135
|
+
{ key: "agenda-pagamento", label: "Agenda de pagamento" },
|
|
136
|
+
{ key: "dados-bancarios", label: "Dados bancários" },
|
|
137
|
+
{ key: "relatorio-receita-taxas", label: "Relatório receita de taxas" },
|
|
138
|
+
{ key: "ajuste-frete", label: "Ajuste de frete" }
|
|
139
|
+
]
|
|
140
|
+
},
|
|
141
|
+
{ key: "imposto-renda", label: "Imposto de renda", icon: A },
|
|
142
|
+
{
|
|
143
|
+
key: "financeiro",
|
|
144
|
+
label: "Financeiro",
|
|
145
|
+
icon: P,
|
|
146
|
+
children: [
|
|
147
|
+
{ key: "cadoc-4111", label: "CADOC 4111" },
|
|
148
|
+
{ key: "cadoc-1201", label: "CADOC 1201" },
|
|
149
|
+
{ key: "bc-correios", label: "BC Correios" },
|
|
150
|
+
{ key: "notas-debito", label: "Notas de débito" },
|
|
151
|
+
{ key: "sap", label: "Sap" }
|
|
152
|
+
]
|
|
153
|
+
},
|
|
154
|
+
{ key: "config-gr", label: "Configurações de serviços GR", icon: q },
|
|
155
|
+
{
|
|
156
|
+
key: "admin",
|
|
157
|
+
label: "Admin",
|
|
158
|
+
icon: V,
|
|
159
|
+
children: [
|
|
160
|
+
{ key: "usuarios", label: "Usuários" },
|
|
161
|
+
{ key: "relatorio", label: "Relatório" },
|
|
162
|
+
{ key: "broadcast", label: "Broadcast" },
|
|
163
|
+
{ key: "veiculos-admin", label: "Veículos" },
|
|
164
|
+
{ key: "enquetes-admin", label: "Enquetes" },
|
|
165
|
+
{ key: "avaliacao-admin", label: "Avaliação Operacional" },
|
|
166
|
+
{ key: "ocorrencias", label: "Ocorrências" },
|
|
167
|
+
{ key: "viagem-amiga", label: "Viagem Amiga" },
|
|
168
|
+
{ key: "parametros-produto", label: "Parâmetros de Produto" },
|
|
169
|
+
{ key: "geocerca", label: "Geocerca" },
|
|
170
|
+
{ key: "cadastrar-embarcador", label: "Cadastrar Embarcador" },
|
|
171
|
+
{ key: "bloqueio", label: "Bloqueio" },
|
|
172
|
+
{ key: "bloqueio-conta", label: "Bloqueio de conta" },
|
|
173
|
+
{ key: "mensagens-vector", label: "Mensagens Vector" },
|
|
174
|
+
{ key: "log-antecipacao", label: "Log Antecipação de recebíveis" },
|
|
175
|
+
{ key: "onboarding-tracking", label: "Onboarding Tracking" },
|
|
176
|
+
{ key: "validacao-cadastro", label: "Validação de Cadastro" },
|
|
177
|
+
{ key: "communication-logs", label: "Communication logs" },
|
|
178
|
+
{ key: "parametros-etcd", label: "Parametros ETCD" },
|
|
179
|
+
{ key: "central-atendimento", label: "Central atendimento" },
|
|
180
|
+
{ key: "data-import", label: "Data Import" }
|
|
181
|
+
]
|
|
182
|
+
}
|
|
183
|
+
]
|
|
184
|
+
}, T = [G, D];
|
|
185
|
+
export {
|
|
186
|
+
T as defaultMenuSections
|
|
187
|
+
};
|
|
188
|
+
//# sourceMappingURL=menuData.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"menuData.js","sources":["../../src/Menu/menuData.ts"],"sourcesContent":["import {\n House,\n ProjectorScreenChart,\n ClipboardText,\n CallBell,\n Package,\n FlagBanner,\n TruckTrailer,\n ChatCenteredText,\n PresentationChart,\n SketchLogo,\n CurrencyCircleDollar,\n CurrencyDollar,\n CalendarDots,\n Garage,\n Folder,\n File,\n CheckSquareOffset,\n ListChecks,\n Note,\n Cardholder,\n BoxArrowUp,\n Coins,\n Receipt,\n Percent,\n FlagPennant,\n Gear,\n} from '@phosphor-icons/react';\nimport type { MenuSectionDef } from './Menu.js';\n\n// ─── Dados padrão do Menu ───────────────────────────────────────────────────\n//\n// Fonte de verdade dos itens do menu Vector. Fiel ao nó do Figma 13648:1070\n// (\".Menu / Item Group\"): mesmos ícones (os Phosphor que o próprio Figma usa),\n// mesmos labels e mesma ordem.\n//\n// Regra do caret: trailing caret = tem submenu. Hoje só 3 submenus existem no\n// Figma (Cadastros, Ofertas, Admin); só eles recebem `children` e expandem\n// (collapse). Os demais ficam planos até que seus submenus sejam definidos.\n//\n// O componente <Menu /> consome isto como default (`sections`). O Storybook e\n// os protótipos apenas refletem — para um conjunto diferente de itens, passe\n// `sections` explicitamente.\n\nconst portalSection: MenuSectionDef = {\n title: 'Seleção de portal',\n items: [\n { key: 'logtech', label: 'Logtech', icon: TruckTrailer },\n { key: 'conta-digital', label: 'Conta digital', icon: CurrencyCircleDollar },\n { key: 'combustivel', label: 'Combustível', icon: House },\n ],\n};\n\nconst menuSection: MenuSectionDef = {\n title: 'Menu',\n items: [\n { key: 'dashboard', label: 'Dashboard', icon: ProjectorScreenChart },\n {\n key: 'cadastros',\n label: 'Cadastros',\n icon: ClipboardText,\n // Sub-itens não têm ícone (Figma: Show Leading Icon=false)\n children: [\n { key: 'transportadora-sub', label: 'Transportadora' },\n { key: 'motorista', label: 'Motorista' },\n { key: 'veiculo-sub', label: 'Veículo' },\n { key: 'filiais', label: 'Filiais' },\n { key: 'controle-cadastros', label: 'Controle de cadastros' },\n { key: 'locais', label: 'Locais' },\n { key: 'noticias', label: 'Notícias' },\n { key: 'produto', label: 'Produto' },\n { key: 'grupo-locais', label: 'Grupo de locais' },\n { key: 'rotas', label: 'Rotas' },\n { key: 'grupos', label: 'Grupos' },\n { key: 'observacoes', label: 'Observações' },\n { key: 'contratos-hazmat', label: 'Contratos hazmat' },\n ],\n },\n { key: 'solicitacoes', label: 'Solicitações', icon: CallBell },\n {\n key: 'ofertas',\n label: 'Ofertas',\n icon: Package,\n children: [\n { key: 'ofertas-sub', label: 'Ofertas' },\n { key: 'pool-ofertas', label: 'Pool ofertas' },\n { key: 'alcada-aprovacoes', label: 'Alçada de aprovações' },\n { key: 'automacao-divulgacao', label: 'Automação de divulgação de lotes' },\n { key: 'parametros-desagio', label: 'Parâmetros de deságio' },\n ],\n },\n { key: 'gerenciadora', label: 'Gerenciadora de risco', icon: FlagBanner },\n {\n key: 'viagens',\n label: 'Viagens',\n icon: TruckTrailer,\n children: [\n { key: 'viagens-sub', label: 'Viagens' },\n { key: 'acompanhamento-viagem', label: 'Acompanhamento de viagem' },\n { key: 'painel-viagem', label: 'Painel de viagem' },\n { key: 'monitoramento-viagem', label: 'Monitoramento' },\n { key: 'relatorio-agente-frete', label: 'Relatório de agente de frete' },\n ],\n },\n { key: 'mensagens', label: 'Mensagens', icon: ChatCenteredText },\n { key: 'painel', label: 'Painel', icon: PresentationChart },\n { key: 'clube', label: 'Clube Vector', icon: SketchLogo },\n { key: 'tomada', label: 'Tomada de preço', icon: CurrencyCircleDollar },\n {\n key: 'agendamento',\n label: 'Agendamento',\n icon: CalendarDots,\n children: [\n { key: 'carga-descarga', label: 'Carga e descarga' },\n { key: 'fornecedor-cliente', label: 'Fornecedor/Cliente' },\n { key: 'viagem-amiga-ag', label: 'Viagem Amiga' },\n { key: 'gestao-agendamento', label: 'Gestão de agendamento' },\n ],\n },\n {\n key: 'logistica',\n label: 'Logística Interna',\n icon: Garage,\n children: [\n { key: 'gestao-patio', label: 'Gestão de pátio' },\n { key: 'frentes-carregamento', label: 'Frentes de carregamento' },\n { key: 'config-docas', label: 'Configuração de docas' },\n { key: 'track-pass', label: 'Track pass' },\n { key: 'checklist-log', label: 'Checklist' },\n ],\n },\n { key: 'gdv', label: 'GDV', icon: Folder },\n { key: 'relatorio-vpay', label: 'Relatório VPay', icon: File },\n { key: 'enquetes', label: 'Enquetes', icon: CheckSquareOffset },\n { key: 'avaliacao', label: 'Avaliação Operacional', icon: ListChecks },\n {\n key: 'quitacao',\n label: 'Quitação Digital',\n icon: Note,\n children: [\n { key: 'painel-controle', label: 'Painel de controle' },\n { key: 'entrega-documental', label: 'Entrega documental' },\n { key: 'painel-controle-emb', label: 'Painel de controle embarcador' },\n { key: 'entrega-documental-transp', label: 'Entrega documental transportador' },\n { key: 'regularizacao-documental', label: 'Regularização documental' },\n ],\n },\n {\n key: 'cartoes',\n label: 'Controle de cartões',\n icon: Cardholder,\n children: [\n { key: 'estoque-cartoes-vector', label: 'Estoque cartões Vector' },\n { key: 'estoque-cartoes-parceiros', label: 'Estoque cartões parceiros' },\n { key: 'vinculacao-cartoes', label: 'Vinculação de cartões' },\n ],\n },\n { key: 'transportadora', label: 'Transportadora digital', icon: BoxArrowUp },\n {\n key: 'antecipacao',\n label: 'Antecipação de recebíveis',\n icon: Coins,\n children: [\n { key: 'antecipacao-sub', label: 'Antecipação de recebíveis' },\n { key: 'gestao-antecipacoes', label: 'Gestão de antecipações' },\n ],\n },\n {\n key: 'pagamento',\n label: 'Pagamento de frete',\n icon: Receipt,\n children: [\n { key: 'gestao-pagamentos', label: 'Gestão de pagamentos' },\n { key: 'viagens-vector-pay', label: 'Viagens Vector Pay' },\n { key: 'adiantamento-quitacao', label: 'Adiantamento e quitação de pagamentos' },\n { key: 'motor-pagamento', label: 'Motor de pagamento' },\n { key: 'extrato-pagamento', label: 'Extrato de pagamento' },\n { key: 'controle-limite', label: 'Controle de limite' },\n { key: 'acompanhamento-boleto-fob', label: 'Acompanhamento de boleto FOB' },\n { key: 'agenda-pagamento', label: 'Agenda de pagamento' },\n { key: 'dados-bancarios', label: 'Dados bancários' },\n { key: 'relatorio-receita-taxas', label: 'Relatório receita de taxas' },\n { key: 'ajuste-frete', label: 'Ajuste de frete' },\n ],\n },\n { key: 'imposto-renda', label: 'Imposto de renda', icon: Percent },\n {\n key: 'financeiro',\n label: 'Financeiro',\n icon: CurrencyDollar,\n children: [\n { key: 'cadoc-4111', label: 'CADOC 4111' },\n { key: 'cadoc-1201', label: 'CADOC 1201' },\n { key: 'bc-correios', label: 'BC Correios' },\n { key: 'notas-debito', label: 'Notas de débito' },\n { key: 'sap', label: 'Sap' },\n ],\n },\n { key: 'config-gr', label: 'Configurações de serviços GR', icon: FlagPennant },\n {\n key: 'admin',\n label: 'Admin',\n icon: Gear,\n children: [\n { key: 'usuarios', label: 'Usuários' },\n { key: 'relatorio', label: 'Relatório' },\n { key: 'broadcast', label: 'Broadcast' },\n { key: 'veiculos-admin', label: 'Veículos' },\n { key: 'enquetes-admin', label: 'Enquetes' },\n { key: 'avaliacao-admin', label: 'Avaliação Operacional' },\n { key: 'ocorrencias', label: 'Ocorrências' },\n { key: 'viagem-amiga', label: 'Viagem Amiga' },\n { key: 'parametros-produto', label: 'Parâmetros de Produto' },\n { key: 'geocerca', label: 'Geocerca' },\n { key: 'cadastrar-embarcador', label: 'Cadastrar Embarcador' },\n { key: 'bloqueio', label: 'Bloqueio' },\n { key: 'bloqueio-conta', label: 'Bloqueio de conta' },\n { key: 'mensagens-vector', label: 'Mensagens Vector' },\n { key: 'log-antecipacao', label: 'Log Antecipação de recebíveis' },\n { key: 'onboarding-tracking', label: 'Onboarding Tracking' },\n { key: 'validacao-cadastro', label: 'Validação de Cadastro' },\n { key: 'communication-logs', label: 'Communication logs' },\n { key: 'parametros-etcd', label: 'Parametros ETCD' },\n { key: 'central-atendimento', label: 'Central atendimento' },\n { key: 'data-import', label: 'Data Import' },\n ],\n },\n ],\n};\n\n/** Seções padrão do Menu (portal + itens), fiéis ao Figma. */\nexport const defaultMenuSections: MenuSectionDef[] = [portalSection, menuSection];\n"],"names":["portalSection","TruckTrailer","CurrencyCircleDollar","House","menuSection","ProjectorScreenChart","ClipboardText","CallBell","Package","FlagBanner","ChatCenteredText","PresentationChart","SketchLogo","CalendarDots","Garage","Folder","File","CheckSquareOffset","ListChecks","Note","Cardholder","BoxArrowUp","Coins","Receipt","Percent","CurrencyDollar","FlagPennant","Gear","defaultMenuSections"],"mappings":"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"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { jsxs as t, jsx as s } from "react/jsx-runtime";
|
|
2
|
+
import { WarningCircle as d, SealWarning as f, XCircle as p, CheckCircle as C, Warning as v, Info as N, X as x } from "@phosphor-icons/react";
|
|
3
|
+
import { Icon as I } from "../Icon/Icon.js";
|
|
4
|
+
import { Button as w } from "../Button/Button.js";
|
|
5
|
+
import { IconButton as k } from "../IconButton/IconButton.js";
|
|
6
|
+
import e from "./Message.module.css.js";
|
|
7
|
+
const B = {
|
|
8
|
+
info: N,
|
|
9
|
+
warning: v,
|
|
10
|
+
success: C,
|
|
11
|
+
danger: p,
|
|
12
|
+
highlight: f,
|
|
13
|
+
neutral: d
|
|
14
|
+
}, S = {
|
|
15
|
+
info: e.typeInfo,
|
|
16
|
+
warning: e.typeWarning,
|
|
17
|
+
success: e.typeSuccess,
|
|
18
|
+
danger: e.typeDanger,
|
|
19
|
+
highlight: e.typeHighlight,
|
|
20
|
+
neutral: e.typeNeutral
|
|
21
|
+
}, W = {
|
|
22
|
+
info: "status",
|
|
23
|
+
warning: "alert",
|
|
24
|
+
success: "status",
|
|
25
|
+
danger: "alert",
|
|
26
|
+
highlight: "status",
|
|
27
|
+
neutral: "status"
|
|
28
|
+
};
|
|
29
|
+
function _({
|
|
30
|
+
type: n = "info",
|
|
31
|
+
message: r = "Message Content",
|
|
32
|
+
showIcon: o = !0,
|
|
33
|
+
actionLabel: a,
|
|
34
|
+
onAction: l,
|
|
35
|
+
showClose: c = !0,
|
|
36
|
+
onClose: g,
|
|
37
|
+
disabled: i = !1,
|
|
38
|
+
className: m
|
|
39
|
+
}) {
|
|
40
|
+
const h = B[n], u = [
|
|
41
|
+
e.message,
|
|
42
|
+
S[n],
|
|
43
|
+
i ? e.disabled : void 0,
|
|
44
|
+
m
|
|
45
|
+
].filter(Boolean).join(" ");
|
|
46
|
+
return /* @__PURE__ */ t(
|
|
47
|
+
"div",
|
|
48
|
+
{
|
|
49
|
+
className: u,
|
|
50
|
+
role: W[n],
|
|
51
|
+
"aria-live": n === "danger" || n === "warning" ? "assertive" : "polite",
|
|
52
|
+
children: [
|
|
53
|
+
/* @__PURE__ */ t("div", { className: e.content, children: [
|
|
54
|
+
o && /* @__PURE__ */ s("span", { className: e.icon, "aria-hidden": "true", children: /* @__PURE__ */ s(I, { as: h, size: 20, weight: "bold" }) }),
|
|
55
|
+
/* @__PURE__ */ t("div", { className: e.text, children: [
|
|
56
|
+
/* @__PURE__ */ s("span", { className: e.messageText, children: r }),
|
|
57
|
+
a && /* @__PURE__ */ s(
|
|
58
|
+
w,
|
|
59
|
+
{
|
|
60
|
+
variant: "link",
|
|
61
|
+
size: "xsmall",
|
|
62
|
+
onClick: l,
|
|
63
|
+
disabled: i,
|
|
64
|
+
children: a
|
|
65
|
+
}
|
|
66
|
+
)
|
|
67
|
+
] })
|
|
68
|
+
] }),
|
|
69
|
+
c && /* @__PURE__ */ s(
|
|
70
|
+
k,
|
|
71
|
+
{
|
|
72
|
+
icon: x,
|
|
73
|
+
variant: "ghost",
|
|
74
|
+
size: "xsmall",
|
|
75
|
+
"aria-label": "Dismiss message",
|
|
76
|
+
onClick: g,
|
|
77
|
+
disabled: i,
|
|
78
|
+
className: e.closeButton
|
|
79
|
+
}
|
|
80
|
+
)
|
|
81
|
+
]
|
|
82
|
+
}
|
|
83
|
+
);
|
|
84
|
+
}
|
|
85
|
+
export {
|
|
86
|
+
_ as Message
|
|
87
|
+
};
|
|
88
|
+
//# sourceMappingURL=Message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Message.js","sources":["../../src/Message/Message.tsx"],"sourcesContent":["import React from 'react';\nimport type { Icon as PhosphorIcon } from '@phosphor-icons/react';\nimport {\n Info,\n Warning,\n CheckCircle,\n XCircle,\n SealWarning,\n WarningCircle,\n X,\n} from '@phosphor-icons/react';\nimport { Icon } from '../Icon/index.js';\nimport { Button } from '../Button/index.js';\nimport { IconButton } from '../IconButton/index.js';\nimport styles from './Message.module.css';\n\nexport type MessageType = 'info' | 'warning' | 'success' | 'danger' | 'highlight' | 'neutral';\n\nexport interface MessageProps {\n /** The semantic type of the message, which controls background, border, and icon */\n type?: MessageType;\n /** The message text content */\n message?: string;\n /** Whether to show the leading icon */\n showIcon?: boolean;\n /** Label and optional click handler for an inline action button */\n actionLabel?: string;\n /** Callback fired when the action button is clicked */\n onAction?: () => void;\n /** Whether to render the close/dismiss button */\n showClose?: boolean;\n /** Callback fired when the close button is clicked */\n onClose?: () => void;\n /** Whether the message is in a disabled state */\n disabled?: boolean;\n /** Additional CSS class name */\n className?: string;\n}\n\nconst TYPE_ICON: Record<MessageType, PhosphorIcon> = {\n info: Info,\n warning: Warning,\n success: CheckCircle,\n danger: XCircle,\n highlight: SealWarning,\n neutral: WarningCircle,\n};\n\nconst TYPE_CLASS: Record<MessageType, string> = {\n info: styles.typeInfo,\n warning: styles.typeWarning,\n success: styles.typeSuccess,\n danger: styles.typeDanger,\n highlight: styles.typeHighlight,\n neutral: styles.typeNeutral,\n};\n\nconst ARIA_ROLE: Record<MessageType, string> = {\n info: 'status',\n warning: 'alert',\n success: 'status',\n danger: 'alert',\n highlight: 'status',\n neutral: 'status',\n};\n\nexport function Message({\n type = 'info',\n message = 'Message Content',\n showIcon = true,\n actionLabel,\n onAction,\n showClose = true,\n onClose,\n disabled = false,\n className,\n}: MessageProps) {\n const IconComponent = TYPE_ICON[type];\n\n const cls = [\n styles.message,\n TYPE_CLASS[type],\n disabled ? styles.disabled : undefined,\n className,\n ]\n .filter(Boolean)\n .join(' ');\n\n return (\n <div\n className={cls}\n role={ARIA_ROLE[type]}\n aria-live={type === 'danger' || type === 'warning' ? 'assertive' : 'polite'}\n >\n {/* Left: icon + text + optional action */}\n <div className={styles.content}>\n {showIcon && (\n <span className={styles.icon} aria-hidden=\"true\">\n <Icon as={IconComponent} size={20} weight=\"bold\" />\n </span>\n )}\n\n <div className={styles.text}>\n <span className={styles.messageText}>{message}</span>\n\n {actionLabel && (\n <Button\n variant=\"link\"\n size=\"xsmall\"\n onClick={onAction}\n disabled={disabled}\n >\n {actionLabel}\n </Button>\n )}\n </div>\n </div>\n\n {/* Right: close button */}\n {showClose && (\n <IconButton\n icon={X}\n variant=\"ghost\"\n size=\"xsmall\"\n aria-label=\"Dismiss message\"\n onClick={onClose}\n disabled={disabled}\n className={styles.closeButton}\n />\n )}\n </div>\n );\n}\n"],"names":["TYPE_ICON","Info","Warning","CheckCircle","XCircle","SealWarning","WarningCircle","TYPE_CLASS","styles","ARIA_ROLE","Message","type","message","showIcon","actionLabel","onAction","showClose","onClose","disabled","className","IconComponent","cls","jsxs","jsx","Icon","Button","IconButton","X"],"mappings":";;;;;;AAuCA,MAAMA,IAA+C;AAAA,EACnD,MAAWC;AAAA,EACX,SAAWC;AAAA,EACX,SAAWC;AAAA,EACX,QAAWC;AAAA,EACX,WAAWC;AAAA,EACX,SAAWC;AACb,GAEMC,IAA0C;AAAA,EAC9C,MAAWC,EAAO;AAAA,EAClB,SAAWA,EAAO;AAAA,EAClB,SAAWA,EAAO;AAAA,EAClB,QAAWA,EAAO;AAAA,EAClB,WAAWA,EAAO;AAAA,EAClB,SAAWA,EAAO;AACpB,GAEMC,IAAyC;AAAA,EAC7C,MAAW;AAAA,EACX,SAAW;AAAA,EACX,SAAW;AAAA,EACX,QAAW;AAAA,EACX,WAAW;AAAA,EACX,SAAW;AACb;AAEO,SAASC,EAAQ;AAAA,EACtB,MAAAC,IAAO;AAAA,EACP,SAAAC,IAAU;AAAA,EACV,UAAAC,IAAW;AAAA,EACX,aAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,SAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,WAAAC;AACF,GAAiB;AACf,QAAMC,IAAgBpB,EAAUW,CAAI,GAE9BU,IAAM;AAAA,IACVb,EAAO;AAAA,IACPD,EAAWI,CAAI;AAAA,IACfO,IAAWV,EAAO,WAAW;AAAA,IAC7BW;AAAA,EAAA,EAEC,OAAO,OAAO,EACd,KAAK,GAAG;AAEX,SACE,gBAAAG;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWD;AAAA,MACX,MAAMZ,EAAUE,CAAI;AAAA,MACpB,aAAWA,MAAS,YAAYA,MAAS,YAAY,cAAc;AAAA,MAGnE,UAAA;AAAA,QAAA,gBAAAW,EAAC,OAAA,EAAI,WAAWd,EAAO,SACpB,UAAA;AAAA,UAAAK,KACC,gBAAAU,EAAC,QAAA,EAAK,WAAWf,EAAO,MAAM,eAAY,QACxC,UAAA,gBAAAe,EAACC,GAAA,EAAK,IAAIJ,GAAe,MAAM,IAAI,QAAO,QAAO,GACnD;AAAA,UAGF,gBAAAE,EAAC,OAAA,EAAI,WAAWd,EAAO,MACrB,UAAA;AAAA,YAAA,gBAAAe,EAAC,QAAA,EAAK,WAAWf,EAAO,aAAc,UAAAI,GAAQ;AAAA,YAE7CE,KACC,gBAAAS;AAAA,cAACE;AAAA,cAAA;AAAA,gBACC,SAAQ;AAAA,gBACR,MAAK;AAAA,gBACL,SAASV;AAAA,gBACT,UAAAG;AAAA,gBAEC,UAAAJ;AAAA,cAAA;AAAA,YAAA;AAAA,UACH,EAAA,CAEJ;AAAA,QAAA,GACF;AAAA,QAGCE,KACC,gBAAAO;AAAA,UAACG;AAAA,UAAA;AAAA,YACC,MAAMC;AAAA,YACN,SAAQ;AAAA,YACR,MAAK;AAAA,YACL,cAAW;AAAA,YACX,SAASV;AAAA,YACT,UAAAC;AAAA,YACA,WAAWV,EAAO;AAAA,UAAA;AAAA,QAAA;AAAA,MACpB;AAAA,IAAA;AAAA,EAAA;AAIR;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
._message_1xnms_2{display:flex;align-items:center;justify-content:space-between;gap:8px;height:44px;padding:12px;border-radius:8px;border:1px solid transparent;font-family:var(--font-family-base, system-ui, sans-serif);font-size:var(--font-size-14);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-14);width:100%;box-sizing:border-box}._message_1xnms_2:focus-visible{outline:none;box-shadow:var(--shadow-focus)}._content_1xnms_25{display:flex;align-items:center;gap:8px;flex:1 0 0;min-width:0;overflow:hidden}._text_1xnms_34{flex:1 0 0;min-width:0;display:flex;align-items:center;gap:8px;overflow:hidden}._messageText_1xnms_43{color:var(--color-text-neutral-mudle);font-size:var(--font-size-14);font-weight:var(--font-weight-regular);line-height:var(--font-line-height-14);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 0 0;min-width:0}._actionButton_1xnms_56{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:30px;min-width:80px;padding:5px 16px;border-radius:8px;border:none;background-color:transparent;color:var(--color-text-brand-default);font-family:var(--font-family-base, system-ui, sans-serif);font-size:var(--font-size-14);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-14);cursor:pointer;white-space:nowrap;flex-shrink:0;transition:color .12s ease}._actionButton_1xnms_56:hover{color:var(--color-text-interaction-brand-hover)}._actionButton_1xnms_56:focus-visible{outline:none;box-shadow:var(--shadow-focus)}._closeButton_1xnms_88{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9999px;border:none;background-color:transparent;color:var(--color-icon-neutral-default);cursor:pointer;flex-shrink:0;padding:0;transition:background-color .12s ease,color .12s ease}._closeButton_1xnms_88:hover{background-color:var(--color-fill-interaction-neutral-subtle-hover)}._closeButton_1xnms_88:focus-visible{outline:none;box-shadow:var(--shadow-focus)}._typeInfo_1xnms_116{background-color:var(--color-fill-feedback-info-subtle);border-color:var(--color-stroke-feedback-info-subtle)}._typeInfo_1xnms_116 ._icon_1xnms_121{color:var(--color-icon-feedback-info-default)}._typeWarning_1xnms_126{background-color:var(--color-fill-feedback-warning-subtle);border-color:var(--color-stroke-feedback-warning-subtle)}._typeWarning_1xnms_126 ._icon_1xnms_121{color:var(--color-icon-feedback-warning-default)}._typeSuccess_1xnms_136{background-color:var(--color-fill-feedback-success-subtle);border-color:var(--color-stroke-feedback-success-subtle)}._typeSuccess_1xnms_136 ._icon_1xnms_121{color:var(--color-icon-feedback-success-default)}._typeDanger_1xnms_146{background-color:var(--color-fill-feedback-danger-subtle);border-color:var(--color-stroke-feedback-danger-subtle)}._typeDanger_1xnms_146 ._icon_1xnms_121{color:var(--color-icon-feedback-danger-default)}._typeHighlight_1xnms_156{background-color:var(--color-fill-feedback-highlight-subtle);border-color:transparent}._typeHighlight_1xnms_156 ._icon_1xnms_121{color:var(--color-fill-feedback-highlight-default)}._typeNeutral_1xnms_166{background-color:var(--color-fill-feedback-neutral-subtle);border-color:var(--color-stroke-neutral-default)}._typeNeutral_1xnms_166 ._icon_1xnms_121{color:var(--color-icon-neutral-default)}._disabled_1xnms_176{opacity:.5;cursor:not-allowed;pointer-events:none}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import './Message.module.css';const t = "_message_1xnms_2", e = "_content_1xnms_25", s = "_text_1xnms_34", n = "_messageText_1xnms_43", _ = "_closeButton_1xnms_88", o = "_typeInfo_1xnms_116", c = "_icon_1xnms_121", a = "_typeWarning_1xnms_126", x = "_typeSuccess_1xnms_136", m = "_typeDanger_1xnms_146", p = "_typeHighlight_1xnms_156", y = "_typeNeutral_1xnms_166", g = "_disabled_1xnms_176", i = {
|
|
2
|
+
message: t,
|
|
3
|
+
content: e,
|
|
4
|
+
text: s,
|
|
5
|
+
messageText: n,
|
|
6
|
+
closeButton: _,
|
|
7
|
+
typeInfo: o,
|
|
8
|
+
icon: c,
|
|
9
|
+
typeWarning: a,
|
|
10
|
+
typeSuccess: x,
|
|
11
|
+
typeDanger: m,
|
|
12
|
+
typeHighlight: p,
|
|
13
|
+
typeNeutral: y,
|
|
14
|
+
disabled: g
|
|
15
|
+
};
|
|
16
|
+
export {
|
|
17
|
+
_ as closeButton,
|
|
18
|
+
e as content,
|
|
19
|
+
i as default,
|
|
20
|
+
g as disabled,
|
|
21
|
+
c as icon,
|
|
22
|
+
t as message,
|
|
23
|
+
n as messageText,
|
|
24
|
+
s as text,
|
|
25
|
+
m as typeDanger,
|
|
26
|
+
p as typeHighlight,
|
|
27
|
+
o as typeInfo,
|
|
28
|
+
y as typeNeutral,
|
|
29
|
+
x as typeSuccess,
|
|
30
|
+
a as typeWarning
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=Message.module.css.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Message.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;"}
|
package/Modal/Modal.js
ADDED
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
import { jsxs as m, jsx as a } from "react/jsx-runtime";
|
|
2
|
+
import { useRef as I, useEffect as p } from "react";
|
|
3
|
+
import { X as j, CheckCircle as M, XCircle as P, Warning as T } from "@phosphor-icons/react";
|
|
4
|
+
import { Icon as B } from "../Icon/Icon.js";
|
|
5
|
+
import { Button as z } from "../Button/Button.js";
|
|
6
|
+
import { IconButton as L } from "../IconButton/IconButton.js";
|
|
7
|
+
import { Divider as _ } from "../Divider/Divider.js";
|
|
8
|
+
import { ProgressSpinner as q } from "../ProgressSpinner/ProgressSpinner.js";
|
|
9
|
+
import { Slot as A } from "../Slot/Slot.js";
|
|
10
|
+
import e from "./Modal.module.css.js";
|
|
11
|
+
const F = {
|
|
12
|
+
small: e.sizeSmall,
|
|
13
|
+
medium: e.sizeMedium,
|
|
14
|
+
large: e.sizeLarge
|
|
15
|
+
};
|
|
16
|
+
function C({
|
|
17
|
+
open: l = !1,
|
|
18
|
+
size: c = "small",
|
|
19
|
+
title: s = "",
|
|
20
|
+
children: g,
|
|
21
|
+
footerActions: o,
|
|
22
|
+
onClose: n,
|
|
23
|
+
noBackdrop: u = !1,
|
|
24
|
+
onBackdropClick: v,
|
|
25
|
+
className: t
|
|
26
|
+
}) {
|
|
27
|
+
const b = I(null);
|
|
28
|
+
if (p(() => {
|
|
29
|
+
if (!l) return;
|
|
30
|
+
const r = (i) => {
|
|
31
|
+
i.key === "Escape" && (n == null || n());
|
|
32
|
+
};
|
|
33
|
+
return document.addEventListener("keydown", r), () => document.removeEventListener("keydown", r);
|
|
34
|
+
}, [l, n]), p(() => {
|
|
35
|
+
var N;
|
|
36
|
+
if (!l) return;
|
|
37
|
+
const r = b.current;
|
|
38
|
+
if (!r) return;
|
|
39
|
+
const i = document.activeElement;
|
|
40
|
+
return (N = r.querySelectorAll(
|
|
41
|
+
'button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])'
|
|
42
|
+
)[0]) == null || N.focus(), () => {
|
|
43
|
+
i == null || i.focus();
|
|
44
|
+
};
|
|
45
|
+
}, [l]), !l) return null;
|
|
46
|
+
const k = () => {
|
|
47
|
+
v ? v() : n == null || n();
|
|
48
|
+
}, w = [e.modal, F[c], t].filter(Boolean).join(" "), f = /* @__PURE__ */ m(
|
|
49
|
+
"div",
|
|
50
|
+
{
|
|
51
|
+
ref: b,
|
|
52
|
+
className: w,
|
|
53
|
+
role: "dialog",
|
|
54
|
+
"aria-modal": "true",
|
|
55
|
+
"aria-labelledby": s ? "modal-title" : void 0,
|
|
56
|
+
onClick: (r) => r.stopPropagation(),
|
|
57
|
+
children: [
|
|
58
|
+
/* @__PURE__ */ m("div", { className: e.head, children: [
|
|
59
|
+
/* @__PURE__ */ a("div", { className: e.titleRow, children: /* @__PURE__ */ a("h2", { id: "modal-title", className: e.title, children: s }) }),
|
|
60
|
+
/* @__PURE__ */ a(_, {})
|
|
61
|
+
] }),
|
|
62
|
+
/* @__PURE__ */ a("div", { className: e.body, children: /* @__PURE__ */ a(A, { children: g }) }),
|
|
63
|
+
o && o.length > 0 && /* @__PURE__ */ a("div", { className: e.footer, children: /* @__PURE__ */ a("div", { className: e.footerButtons, children: o.map((r, i) => /* @__PURE__ */ a(
|
|
64
|
+
z,
|
|
65
|
+
{
|
|
66
|
+
variant: r.variant ?? (i === o.length - 1 ? "primary" : "secondary"),
|
|
67
|
+
size: "medium",
|
|
68
|
+
disabled: r.disabled,
|
|
69
|
+
onClick: r.onClick,
|
|
70
|
+
children: r.label
|
|
71
|
+
},
|
|
72
|
+
i
|
|
73
|
+
)) }) }),
|
|
74
|
+
n && /* @__PURE__ */ a(
|
|
75
|
+
L,
|
|
76
|
+
{
|
|
77
|
+
icon: j,
|
|
78
|
+
variant: "ghost",
|
|
79
|
+
size: "xsmall",
|
|
80
|
+
"aria-label": "Fechar modal",
|
|
81
|
+
onClick: n,
|
|
82
|
+
className: e.closeButton
|
|
83
|
+
}
|
|
84
|
+
)
|
|
85
|
+
]
|
|
86
|
+
}
|
|
87
|
+
);
|
|
88
|
+
return u ? f : /* @__PURE__ */ a("div", { className: e.backdrop, onClick: k, children: f });
|
|
89
|
+
}
|
|
90
|
+
const G = {
|
|
91
|
+
warn: "var(--color-icon-feedback-warning-default)",
|
|
92
|
+
error: "var(--color-icon-feedback-danger-default)",
|
|
93
|
+
success: "var(--color-icon-feedback-success-default)",
|
|
94
|
+
loading: "var(--color-fill-brand-default)"
|
|
95
|
+
};
|
|
96
|
+
function ee({
|
|
97
|
+
open: l = !1,
|
|
98
|
+
type: c = "warn",
|
|
99
|
+
title: s = "",
|
|
100
|
+
text: g,
|
|
101
|
+
primaryLabel: o,
|
|
102
|
+
onPrimary: n,
|
|
103
|
+
secondaryLabel: u,
|
|
104
|
+
onSecondary: v,
|
|
105
|
+
onClose: t,
|
|
106
|
+
noBackdrop: b = !1,
|
|
107
|
+
onBackdropClick: k,
|
|
108
|
+
className: w
|
|
109
|
+
}) {
|
|
110
|
+
const f = I(null);
|
|
111
|
+
if (p(() => {
|
|
112
|
+
if (!l) return;
|
|
113
|
+
const d = (h) => {
|
|
114
|
+
h.key === "Escape" && c !== "loading" && (t == null || t());
|
|
115
|
+
};
|
|
116
|
+
return document.addEventListener("keydown", d), () => document.removeEventListener("keydown", d);
|
|
117
|
+
}, [l, t, c]), p(() => {
|
|
118
|
+
var S;
|
|
119
|
+
if (!l) return;
|
|
120
|
+
const d = f.current;
|
|
121
|
+
if (!d) return;
|
|
122
|
+
const h = document.activeElement;
|
|
123
|
+
return (S = d.querySelectorAll(
|
|
124
|
+
'button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])'
|
|
125
|
+
)[0]) == null || S.focus(), () => {
|
|
126
|
+
h == null || h.focus();
|
|
127
|
+
};
|
|
128
|
+
}, [l]), !l) return null;
|
|
129
|
+
const r = () => {
|
|
130
|
+
k ? k() : c !== "loading" && (t == null || t());
|
|
131
|
+
}, i = c === "loading", E = !i && (o || u), N = !i && !!t, x = G[c], R = () => {
|
|
132
|
+
switch (c) {
|
|
133
|
+
case "warn":
|
|
134
|
+
return /* @__PURE__ */ a(B, { as: T, size: 64, weight: "regular", color: x });
|
|
135
|
+
case "error":
|
|
136
|
+
return /* @__PURE__ */ a(B, { as: P, size: 64, weight: "regular", color: x });
|
|
137
|
+
case "success":
|
|
138
|
+
return /* @__PURE__ */ a(B, { as: M, size: 64, weight: "regular", color: x });
|
|
139
|
+
case "loading":
|
|
140
|
+
return /* @__PURE__ */ a(q, { label: "Carregando" });
|
|
141
|
+
}
|
|
142
|
+
}, O = [
|
|
143
|
+
e.dialogBody,
|
|
144
|
+
i ? e.loading : void 0
|
|
145
|
+
].filter(Boolean).join(" "), D = [e.modal, e.dialog, w].filter(Boolean).join(" "), y = /* @__PURE__ */ m(
|
|
146
|
+
"div",
|
|
147
|
+
{
|
|
148
|
+
ref: f,
|
|
149
|
+
className: D,
|
|
150
|
+
role: "dialog",
|
|
151
|
+
"aria-modal": "true",
|
|
152
|
+
"aria-labelledby": s ? "modal-dialog-title" : void 0,
|
|
153
|
+
onClick: (d) => d.stopPropagation(),
|
|
154
|
+
children: [
|
|
155
|
+
/* @__PURE__ */ m("div", { className: O, children: [
|
|
156
|
+
/* @__PURE__ */ a("div", { className: e.dialogIconWrap, children: R() }),
|
|
157
|
+
/* @__PURE__ */ m("div", { className: e.dialogTextGroup, children: [
|
|
158
|
+
s && /* @__PURE__ */ a("p", { id: "modal-dialog-title", className: e.dialogTitle, children: s }),
|
|
159
|
+
g && /* @__PURE__ */ a("p", { className: e.dialogText, children: g })
|
|
160
|
+
] })
|
|
161
|
+
] }),
|
|
162
|
+
E && /* @__PURE__ */ a("div", { className: e.footer, children: /* @__PURE__ */ m("div", { className: e.footerButtons, children: [
|
|
163
|
+
u && /* @__PURE__ */ a(z, { variant: "secondary", size: "medium", onClick: v, children: u }),
|
|
164
|
+
o && /* @__PURE__ */ a(z, { variant: "primary", size: "medium", onClick: n, children: o })
|
|
165
|
+
] }) }),
|
|
166
|
+
N && /* @__PURE__ */ a(
|
|
167
|
+
L,
|
|
168
|
+
{
|
|
169
|
+
icon: j,
|
|
170
|
+
variant: "ghost",
|
|
171
|
+
size: "xsmall",
|
|
172
|
+
"aria-label": "Fechar modal",
|
|
173
|
+
onClick: t,
|
|
174
|
+
className: e.closeButton
|
|
175
|
+
}
|
|
176
|
+
)
|
|
177
|
+
]
|
|
178
|
+
}
|
|
179
|
+
);
|
|
180
|
+
return b ? y : /* @__PURE__ */ a("div", { className: e.backdrop, onClick: r, children: y });
|
|
181
|
+
}
|
|
182
|
+
export {
|
|
183
|
+
C as Modal,
|
|
184
|
+
ee as ModalDialog
|
|
185
|
+
};
|
|
186
|
+
//# sourceMappingURL=Modal.js.map
|