@memobit/libs 3.0.0 → 3.1.1
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/components/Accordion/Accordion.css +1 -0
- package/dist/components/Accordion/Accordion2.js +79 -0
- package/dist/components/AlertDialog/AlertDialog.css +1 -0
- package/dist/components/AlertDialog/AlertDialog2.js +26 -0
- package/dist/components/AnalogClock/AnalogClock.css +1 -0
- package/dist/components/AnalogClock/AnalogClock2.js +293 -0
- package/dist/components/AngleSlider/AngleSlider.css +1 -0
- package/dist/components/AngleSlider/AngleSlider2.js +135 -0
- package/dist/components/AppHeader/AppHeader.css +1 -0
- package/dist/components/AppHeader/AppHeader2.js +44 -0
- package/dist/components/Auth/ChangePasswordModal/ChangePasswordModal.css +1 -0
- package/dist/components/Auth/ChangePasswordModal/ChangePasswordModal2.js +138 -0
- package/dist/components/Auth/Login/Login.css +1 -0
- package/dist/components/Auth/Login/Login2.js +155 -0
- package/dist/components/Auth/MfaSetupModal/MfaSetupModal.css +1 -0
- package/dist/components/Auth/MfaSetupModal/MfaSetupModal2.js +327 -0
- package/dist/components/AvatarInitials/AvatarInitials.css +1 -0
- package/dist/components/AvatarInitials/AvatarInitials2.js +73 -0
- package/dist/components/BMI/BMI.css +1 -0
- package/dist/components/BMI/BMI2.js +53 -0
- package/dist/components/BMI/bmiUtils.js +265 -0
- package/dist/components/Badge/Badge.css +1 -0
- package/dist/components/Badge/Badge2.js +30 -0
- package/dist/components/Banner/Banner.css +1 -0
- package/dist/components/Banner/Banner2.js +57 -0
- package/dist/components/Blockquote/Blockquote.css +1 -0
- package/dist/components/Blockquote/Blockquote2.js +55 -0
- package/dist/components/Breadcrumb/Breadcrumb.css +1 -0
- package/dist/components/Breadcrumb/Breadcrumb2.js +36 -0
- package/dist/components/BulkActionBar/BulkActionBar.css +1 -0
- package/dist/components/BulkActionBar/BulkActionBar2.js +39 -0
- package/dist/components/Button/Button.css +1 -0
- package/dist/components/Button/Button2.js +32 -0
- package/dist/components/Calendar/Calendar.css +1 -0
- package/dist/components/Calendar/Calendar2.js +279 -0
- package/dist/components/CalendarHeatmap/CalendarHeatmap.css +1 -0
- package/dist/components/CalendarHeatmap/CalendarHeatmap2.js +91 -0
- package/dist/components/Card/Card.css +1 -0
- package/dist/components/Card/Card2.js +47 -0
- package/dist/components/Checkbox/Checkbox.css +1 -0
- package/dist/components/Checkbox/Checkbox2.js +35 -0
- package/dist/components/Chip/Chip.css +1 -0
- package/dist/components/Chip/Chip2.js +31 -0
- package/dist/components/CollapsibleSection/CollapsibleSection.css +1 -0
- package/dist/components/CollapsibleSection/CollapsibleSection2.js +68 -0
- package/dist/components/ColorPicker/ColorPicker.css +1 -0
- package/dist/components/ColorPicker/ColorPicker2.js +257 -0
- package/dist/components/CommandPalette/CommandPalette.css +1 -0
- package/dist/components/CommandPalette/CommandPalette2.js +97 -0
- package/dist/components/Confetti/Confetti.css +1 -0
- package/dist/components/Confetti/Confetti2.js +175 -0
- package/dist/components/ConfirmDialog/ConfirmDialog.css +1 -0
- package/dist/components/ConfirmDialog/ConfirmDialog2.js +37 -0
- package/dist/components/ConfirmPopover/ConfirmPopover.css +1 -0
- package/dist/components/ConfirmPopover/ConfirmPopover2.js +55 -0
- package/dist/components/ContextMenu/ContextMenu.css +1 -0
- package/dist/components/ContextMenu/ContextMenu2.js +53 -0
- package/dist/components/ContextToast/ContextToast.css +1 -0
- package/dist/components/ContextToast/ContextToast2.js +96 -0
- package/dist/components/ControlPanel/ControlPanel.css +1 -0
- package/dist/components/ControlPanel/ControlPanel.types.js +21 -0
- package/dist/components/ControlPanel/ControlPanel2.js +137 -0
- package/dist/components/ControlPanel/ControlPanelContext.js +31 -0
- package/dist/components/ControlPanel/ControlPanelFilter.js +386 -0
- package/dist/components/ControlPanel/ControlPanelNav.js +74 -0
- package/dist/components/ControlPanel/ControlPanelOptions.js +197 -0
- package/dist/components/CopyButton/CopyButton.css +1 -0
- package/dist/components/CopyButton/CopyButton2.js +48 -0
- package/dist/components/CountryWithFlag/CountryWithFlag.css +1 -0
- package/dist/components/CountryWithFlag/CountryWithFlag2.js +21 -0
- package/dist/components/DataView/DataView.CardView.js +189 -0
- package/dist/components/DataView/DataView.ColumnSelector.js +51 -0
- package/dist/components/DataView/DataView.MiniSort.js +25 -0
- package/dist/components/DataView/DataView.css +1 -0
- package/dist/components/DataView/DataView2.js +433 -0
- package/dist/components/DatePicker/DatePicker.css +1 -0
- package/dist/components/DatePicker/DatePicker2.js +151 -0
- package/dist/components/DateRangePicker/DateRangePicker.css +1 -0
- package/dist/components/DateRangePicker/DateRangePicker2.js +223 -0
- package/dist/components/DayAgenda/DayAgenda.css +1 -0
- package/dist/components/DayAgenda/DayAgenda2.js +120 -0
- package/dist/components/DiffViewer/DiffViewer.css +1 -0
- package/dist/components/DiffViewer/DiffViewer2.js +270 -0
- package/dist/components/Drawer/Drawer.css +1 -0
- package/dist/components/Drawer/Drawer2.js +119 -0
- package/dist/components/Dropdown/Dropdown.css +1 -0
- package/dist/components/Dropdown/Dropdown2.js +413 -0
- package/dist/components/EmojiPicker/EmojiPicker.css +1 -0
- package/dist/components/EmojiPicker/EmojiPicker2.js +789 -0
- package/dist/components/EmojiPicker/emojiKeywords/activities.js +508 -0
- package/dist/components/EmojiPicker/emojiKeywords/animals.js +501 -0
- package/dist/components/EmojiPicker/emojiKeywords/food.js +540 -0
- package/dist/components/EmojiPicker/emojiKeywords/index.js +21 -0
- package/dist/components/EmojiPicker/emojiKeywords/objects.js +652 -0
- package/dist/components/EmojiPicker/emojiKeywords/people.js +488 -0
- package/dist/components/EmojiPicker/emojiKeywords/smileys.js +538 -0
- package/dist/components/EmojiPicker/emojiKeywords/symbols.js +597 -0
- package/dist/components/EmojiPicker/emojiKeywords/travel.js +507 -0
- package/dist/components/EmptyState/EmptyState.css +1 -0
- package/dist/components/EmptyState/EmptyState2.js +47 -0
- package/dist/components/ErrorBoundary/ErrorBoundary.css +1 -0
- package/dist/components/ErrorBoundary/ErrorBoundary2.js +37 -0
- package/dist/components/EventCalendar/EventCalendar.Chip.js +45 -0
- package/dist/components/EventCalendar/EventCalendar.Month.js +118 -0
- package/dist/components/EventCalendar/EventCalendar.Week.js +131 -0
- package/dist/components/EventCalendar/EventCalendar.css +1 -0
- package/dist/components/EventCalendar/EventCalendar.helpers.js +72 -0
- package/dist/components/EventCalendar/EventCalendar2.js +157 -0
- package/dist/components/FileDropzone/FileDropzone.css +1 -0
- package/dist/components/FileDropzone/FileDropzone2.js +71 -0
- package/dist/components/Flag/Flag.css +1 -0
- package/dist/components/Flag/Flag2.js +36 -0
- package/dist/components/FloatButton/FloatButton.css +1 -0
- package/dist/components/FloatButton/FloatButton2.js +68 -0
- package/dist/components/FloatingWindow/FloatingWindow.css +1 -0
- package/dist/components/FloatingWindow/FloatingWindow2.js +203 -0
- package/dist/components/FolderBrowserModal/FolderBrowserModal.css +1 -0
- package/dist/components/FolderBrowserModal/FolderBrowserModal2.js +144 -0
- package/dist/components/Grid/Col.js +17 -0
- package/dist/components/Grid/Grid.css +1 -0
- package/dist/components/Grid/Grid2.js +28 -0
- package/dist/components/Icon/Icon.css +1 -0
- package/dist/components/Icon/Icon2.js +23 -0
- package/dist/components/IconPicker/IconPicker.css +1 -0
- package/dist/components/IconPicker/IconPicker2.js +51 -0
- package/dist/components/InfiniteScroll/InfiniteScroll.css +1 -0
- package/dist/components/InfiniteScroll/InfiniteScroll2.js +66 -0
- package/dist/components/InputDate/InputDate.css +1 -0
- package/dist/components/InputDate/InputDate2.js +87 -0
- package/dist/components/InputEmail/InputEmail.css +1 -0
- package/dist/components/InputEmail/InputEmail2.js +73 -0
- package/dist/components/InputFile/InputFile.css +1 -0
- package/dist/components/InputFile/InputFile2.js +41 -0
- package/dist/components/InputMask/InputMask.css +1 -0
- package/dist/components/InputMask/InputMask2.js +163 -0
- package/dist/components/InputNumber/InputNumber.css +1 -0
- package/dist/components/InputNumber/InputNumber2.js +60 -0
- package/dist/components/InputPIN/InputPIN.css +1 -0
- package/dist/components/InputPIN/InputPIN2.js +121 -0
- package/dist/components/InputPassword/InputPassword.css +1 -0
- package/dist/components/InputPassword/InputPassword2.js +47 -0
- package/dist/components/InputPhone/InputPhone.css +1 -0
- package/dist/components/InputPhone/InputPhone2.js +82 -0
- package/dist/components/InputSearch/InputSearch.css +1 -0
- package/dist/components/InputSearch/InputSearch2.js +53 -0
- package/dist/components/InputText/InputText.css +1 -0
- package/dist/components/InputText/InputText2.js +47 -0
- package/dist/components/InputTextarea/InputTextarea.css +1 -0
- package/dist/components/InputTextarea/InputTextarea2.js +46 -0
- package/dist/components/InputTime/InputTime.css +1 -0
- package/dist/components/InputTime/InputTime2.js +85 -0
- package/dist/components/InputUrl/InputUrl.css +1 -0
- package/dist/components/InputUrl/InputUrl2.js +65 -0
- package/dist/components/JourneyWizard/JourneyWizard.css +1 -0
- package/dist/components/JourneyWizard/JourneyWizard2.js +147 -0
- package/dist/components/List/List.css +1 -0
- package/dist/components/List/List2.js +28 -0
- package/dist/components/Loading/Loading.css +1 -0
- package/dist/components/Loading/Loading2.js +11 -0
- package/dist/components/MenuHamburger/MenuHamburger.css +1 -0
- package/dist/components/MenuHamburger/MenuHamburger2.js +65 -0
- package/dist/components/MiniSort/MiniSort.css +1 -0
- package/dist/components/MiniSort/MiniSort2.js +52 -0
- package/dist/components/MiniStatsCard/MiniStatsCard.css +1 -0
- package/dist/components/MiniStatsCard/MiniStatsCard2.js +67 -0
- package/dist/components/Minimap/Minimap.css +1 -0
- package/dist/components/Minimap/Minimap2.js +62 -0
- package/dist/components/Modal/Modal.css +1 -0
- package/dist/components/Modal/Modal2.js +87 -0
- package/dist/components/NavBar/NavBar.css +1 -0
- package/dist/components/NavBar/NavBar2.js +64 -0
- package/dist/components/NotificationPanel/NotificationPanel.css +1 -0
- package/dist/components/NotificationPanel/NotificationPanel2.js +66 -0
- package/dist/components/Pagination/Pagination.css +1 -0
- package/dist/components/Pagination/Pagination2.js +92 -0
- package/dist/components/PieChart/PieChart.css +1 -0
- package/dist/components/PieChart/PieChart2.js +142 -0
- package/dist/components/Popover/Popover.css +1 -0
- package/dist/components/Popover/Popover2.js +109 -0
- package/dist/components/Popover/hooks/Popover.hook.js +33 -0
- package/dist/components/ProgressBar/ProgressBar.css +1 -0
- package/dist/components/ProgressBar/ProgressBar2.js +48 -0
- package/dist/components/ProgressRing/ProgressRing.css +1 -0
- package/dist/components/ProgressRing/ProgressRing2.js +54 -0
- package/dist/components/QuantitySelector/QuantitySelector.css +1 -0
- package/dist/components/QuantitySelector/QuantitySelector2.js +94 -0
- package/dist/components/QuickAdd/QuickAdd.css +1 -0
- package/dist/components/QuickAdd/QuickAdd2.js +56 -0
- package/dist/components/QuickNumberUpdate/QuickNumberUpdate.css +1 -0
- package/dist/components/QuickNumberUpdate/QuickNumberUpdate2.js +52 -0
- package/dist/components/QuickOptionUpdate/QuickOptionUpdate.css +1 -0
- package/dist/components/QuickOptionUpdate/QuickOptionUpdate2.js +67 -0
- package/dist/components/Radio/Radio.css +1 -0
- package/dist/components/Radio/Radio2.js +36 -0
- package/dist/components/RangeSlider/RangeSlider.css +1 -0
- package/dist/components/RangeSlider/RangeSlider2.js +157 -0
- package/dist/components/Rating/Rating.css +1 -0
- package/dist/components/Rating/Rating2.js +148 -0
- package/dist/components/Rating/RatingIcon.js +102 -0
- package/dist/components/RichTextEditor/RichTextEditor.css +1 -0
- package/dist/components/RichTextEditor/RichTextEditor2.js +212 -0
- package/dist/components/RichTextEditor/RteLinkPrompt.js +42 -0
- package/dist/components/RichTextEditor/RteTableToolbar.js +95 -0
- package/dist/components/RichTextEditor/RteToolbar.js +106 -0
- package/dist/components/RichTextEditor/helpers.js +73 -0
- package/dist/components/RichTextEditor/hooks/useEditorHistory.js +39 -0
- package/dist/components/RichTextEditor/hooks/useLinkPrompt.js +61 -0
- package/dist/components/RichTextEditor/hooks/useTableOps.js +134 -0
- package/dist/components/RollingNumber/RollingNumber.css +1 -0
- package/dist/components/RollingNumber/RollingNumber2.js +71 -0
- package/dist/components/ScrollToTop/ScrollToTop.css +1 -0
- package/dist/components/ScrollToTop/ScrollToTop2.js +40 -0
- package/dist/components/Separator/Separator.css +1 -0
- package/dist/components/Separator/Separator2.js +39 -0
- package/dist/components/Sidebar/Sidebar.css +1 -0
- package/dist/components/Sidebar/Sidebar2.js +115 -0
- package/dist/components/Sidebar/SidebarContext.js +31 -0
- package/dist/components/SignalStrength/SignalStrength.css +1 -0
- package/dist/components/SignalStrength/SignalStrength2.js +56 -0
- package/dist/components/Skeleton/Skeleton.css +1 -0
- package/dist/components/Skeleton/Skeleton2.js +50 -0
- package/dist/components/Slider/Slider.css +1 -0
- package/dist/components/Slider/Slider2.js +39 -0
- package/dist/components/SplitPanel/SplitPanel.css +1 -0
- package/dist/components/SplitPanel/SplitPanel2.js +69 -0
- package/dist/components/Splitter/Splitter.css +1 -0
- package/dist/components/Splitter/Splitter2.js +89 -0
- package/dist/components/StackedBar/StackedBar.css +1 -0
- package/dist/components/StackedBar/StackedBar2.js +50 -0
- package/dist/components/Stats/Stats.css +1 -0
- package/dist/components/Stats/Stats2.js +26 -0
- package/dist/components/StickyBar/StickyBar.css +1 -0
- package/dist/components/StickyBar/StickyBar2.js +29 -0
- package/dist/components/SuggestionsList/SuggestionsList.css +1 -0
- package/dist/components/SuggestionsList/SuggestionsList2.js +121 -0
- package/dist/components/ThemeSettings/ThemeContext.js +140 -0
- package/dist/components/ThemeSettings/ThemeContextValue.js +5 -0
- package/dist/components/ThemeSettings/ThemeSettings.css +1 -0
- package/dist/components/ThemeSettings/ThemeSettings2.js +245 -0
- package/dist/components/ThemeSettings/themeConfig.js +7 -0
- package/dist/components/ThemeSettings/useTheme.js +10 -0
- package/dist/components/TimePicker/TimePicker.css +1 -0
- package/dist/components/TimePicker/TimePicker2.js +118 -0
- package/dist/components/TimePicker/TimeSpinner.js +59 -0
- package/dist/components/Timeline/Timeline.css +1 -0
- package/dist/components/Timeline/Timeline2.js +57 -0
- package/dist/components/TimelineMarkers/TimelineMarkers.css +1 -0
- package/dist/components/TimelineMarkers/TimelineMarkers2.js +73 -0
- package/dist/components/TipsOfTheDay/TipsOfTheDay.css +1 -0
- package/dist/components/TipsOfTheDay/TipsOfTheDay2.js +24 -0
- package/dist/components/Toast/Toast.css +1 -0
- package/dist/components/Toast/Toast2.js +39 -0
- package/dist/components/ToggleButtons/ToggleButtons.css +1 -0
- package/dist/components/ToggleButtons/ToggleButtons2.js +47 -0
- package/dist/components/ToggleSwitch/ToggleSwitch.css +1 -0
- package/dist/components/ToggleSwitch/ToggleSwitch2.js +27 -0
- package/dist/components/Toolbar/Toolbar.css +1 -0
- package/dist/components/Toolbar/Toolbar2.js +129 -0
- package/dist/components/Tooltip/Tooltip.css +1 -0
- package/dist/components/Tooltip/Tooltip2.js +93 -0
- package/dist/components/TourHud/TourHud.css +1 -0
- package/dist/components/TourHud/TourHud2.js +70 -0
- package/dist/components/Transition/Transition.css +1 -0
- package/dist/components/Transition/Transition2.js +68 -0
- package/dist/components/Tree/Tree.css +1 -0
- package/dist/components/Tree/Tree2.js +95 -0
- package/dist/components/VirtualList/VirtualList.css +1 -0
- package/dist/components/VirtualList/VirtualList2.js +64 -0
- package/dist/components/WHtR/WHtR.css +1 -0
- package/dist/components/WHtR/WHtR2.js +115 -0
- package/dist/contexts/AuthContext/AuthContext.js +113 -0
- package/dist/helpers/AppPersistenceStorage.js +50 -0
- package/dist/helpers/Datetime.js +114 -0
- package/dist/helpers/Format.js +21 -0
- package/dist/helpers/Highlight.js +36 -0
- package/dist/helpers/HtmlContent.js +118 -0
- package/dist/helpers/LogicalOperators.js +15 -0
- package/dist/helpers/Numbers.js +15 -0
- package/dist/helpers/Pagination.js +7 -0
- package/dist/helpers/Search.js +15 -0
- package/dist/helpers/Strings.js +10 -0
- package/dist/helpers/Urls.js +68 -0
- package/dist/helpers/VersionInfo.js +36 -0
- package/dist/hooks/useAppPersistence.js +51 -0
- package/dist/hooks/useAuth/useAuth.js +10 -0
- package/dist/hooks/useBodyScrollLock.js +31 -0
- package/dist/hooks/useBreakpoint.js +65 -0
- package/dist/hooks/useComponentEffect.js +8 -0
- package/dist/hooks/useSwipe.js +45 -0
- package/dist/index.css +1 -2
- package/dist/index.esm.js +1 -17211
- package/dist/index.js +348 -0
- package/dist/mfa.js +4 -0
- package/dist/node_modules/qrcode.react/lib/esm/index.js +979 -0
- package/dist/validators/Vin.js +69 -0
- package/dist/version.js +8 -0
- package/dist/version.json +4 -4
- package/package.json +8 -7
- package/dist/mfa.esm.js +0 -1293
- package/dist/useAuth-BBqdDG2z.js +0 -467
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import './QuickOptionUpdate.css';
|
|
2
|
+
import { Modal as x } from "../Modal/Modal2.js";
|
|
3
|
+
import { Radio as C } from "../Radio/Radio2.js";
|
|
4
|
+
/* empty css */
|
|
5
|
+
import { useEffect as S, useState as o } from "react";
|
|
6
|
+
import { jsx as r, jsxs as b } from "react/jsx-runtime";
|
|
7
|
+
var O = ({ isOpen: p = !1, list: c, title: f, onClose: t, onSave: u, icon: h, value: s }) => {
|
|
8
|
+
const [a, l] = o(s), [i, d] = o(!1), [m, n] = o("");
|
|
9
|
+
S(() => {
|
|
10
|
+
l(s);
|
|
11
|
+
}, [s]);
|
|
12
|
+
const v = async () => {
|
|
13
|
+
if (!a) {
|
|
14
|
+
n("Please select a value");
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
d(!0), n("");
|
|
18
|
+
try {
|
|
19
|
+
await u(a);
|
|
20
|
+
} catch (e) {
|
|
21
|
+
n(e instanceof Error ? e.message : "Failed to save");
|
|
22
|
+
} finally {
|
|
23
|
+
d(!1);
|
|
24
|
+
}
|
|
25
|
+
}, g = (e) => {
|
|
26
|
+
typeof e == "string" || typeof e == "number" ? l(e) : console.error("Unsupported type used.");
|
|
27
|
+
};
|
|
28
|
+
return /* @__PURE__ */ r("div", {
|
|
29
|
+
className: "quick-set",
|
|
30
|
+
children: /* @__PURE__ */ b(x, {
|
|
31
|
+
isOpen: p,
|
|
32
|
+
titleIcon: h,
|
|
33
|
+
title: f,
|
|
34
|
+
size: "small",
|
|
35
|
+
onClose: t,
|
|
36
|
+
onOverlayClick: t,
|
|
37
|
+
secondary: {
|
|
38
|
+
text: "Cancel",
|
|
39
|
+
variant: "default",
|
|
40
|
+
disabled: i,
|
|
41
|
+
onClick: t
|
|
42
|
+
},
|
|
43
|
+
primary: {
|
|
44
|
+
text: i ? "Saving..." : "Save",
|
|
45
|
+
variant: "success",
|
|
46
|
+
disabled: i || !a,
|
|
47
|
+
onClick: v
|
|
48
|
+
},
|
|
49
|
+
children: [/* @__PURE__ */ r("div", {
|
|
50
|
+
className: "quick-set-list",
|
|
51
|
+
children: c && c.map(({ key: e, label: k }) => /* @__PURE__ */ r(C, {
|
|
52
|
+
name: "ownership",
|
|
53
|
+
label: k,
|
|
54
|
+
checked: a === e,
|
|
55
|
+
value: e,
|
|
56
|
+
onChange: (y) => g(y)
|
|
57
|
+
}, `quick-update-ownership-${e}`))
|
|
58
|
+
}), m && /* @__PURE__ */ r("div", {
|
|
59
|
+
className: "error-message",
|
|
60
|
+
children: m
|
|
61
|
+
})]
|
|
62
|
+
})
|
|
63
|
+
});
|
|
64
|
+
};
|
|
65
|
+
export {
|
|
66
|
+
O as QuickOptionUpdate
|
|
67
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.radio-wrapper{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:flex-start;display:inline-flex}.radio-wrapper--disabled{cursor:not-allowed;opacity:.6}.radio-input{opacity:0;pointer-events:none;z-index:-1;border:none;width:0;height:0;margin:0;padding:0;position:absolute}.radio-input:focus+.radio-label .radio-circle{border-color:var(--form-control-selection-border-color);box-shadow:0 0 0 var(--spacing-2) var(--form-control-focus-ring);outline:none}.radio-input:checked+.radio-label .radio-circle{border-color:var(--form-control-selection-border-color)}.radio-input:checked+.radio-label .radio-circle:after{opacity:1;transform:scale(1)}.radio-input:disabled+.radio-label{cursor:not-allowed}.radio-label{align-items:flex-start;gap:var(--spacing-8);cursor:pointer;min-height:var(--radio-size);display:flex}.radio-circle{width:var(--radio-size);height:var(--radio-size);min-width:var(--radio-size);border:var(--spacing-1) solid var(--form-control-selection-border-color);background-color:#0000;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:relative}.radio-circle:hover{border-color:var(--form-control-selection-border-color)}.radio-circle:after{content:"";width:var(--spacing-8);height:var(--spacing-8);background-color:var(--form-control-selection-background-color);opacity:0;border-radius:50%;transition:all .2s;transform:scale(0)}.radio-text{color:var(--form-control-selection-label-color);font-size:var(--font-size-sm);margin-top:var(--spacing-2);line-height:1.4}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import './Radio.css';
|
|
2
|
+
/* empty css */
|
|
3
|
+
import { useId as f } from "react";
|
|
4
|
+
import { jsx as e, jsxs as s } from "react/jsx-runtime";
|
|
5
|
+
var j = ({ checked: t = !1, onChange: n, label: r, disabled: i = !1, name: c, value: a, id: l, className: p = "" }) => {
|
|
6
|
+
const m = f(), o = l || m, h = (d) => {
|
|
7
|
+
n?.(d.target.checked && a !== void 0 ? a : d.target.checked);
|
|
8
|
+
};
|
|
9
|
+
return /* @__PURE__ */ s("div", {
|
|
10
|
+
className: [
|
|
11
|
+
"radio-wrapper",
|
|
12
|
+
i ? "radio-wrapper--disabled" : "",
|
|
13
|
+
p
|
|
14
|
+
].filter(Boolean).join(" "),
|
|
15
|
+
children: [/* @__PURE__ */ e("input", {
|
|
16
|
+
type: "radio",
|
|
17
|
+
id: o,
|
|
18
|
+
name: c,
|
|
19
|
+
value: a,
|
|
20
|
+
className: "radio-input",
|
|
21
|
+
checked: t,
|
|
22
|
+
onChange: h,
|
|
23
|
+
disabled: i
|
|
24
|
+
}), /* @__PURE__ */ s("label", {
|
|
25
|
+
htmlFor: o,
|
|
26
|
+
className: "radio-label",
|
|
27
|
+
children: [/* @__PURE__ */ e("span", { className: "radio-circle" }), r && /* @__PURE__ */ e("span", {
|
|
28
|
+
className: "radio-text",
|
|
29
|
+
children: r
|
|
30
|
+
})]
|
|
31
|
+
})]
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
export {
|
|
35
|
+
j as Radio
|
|
36
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.range-slider{gap:var(--spacing-8);--_range-accent:var(--body-accent-color);--_range-track-thickness:var(--spacing-8);--_range-thumb-size:var(--spacing-20);flex-direction:column;width:100%;display:flex}.range-slider--info{--_range-accent:var(--rating-color-info)}.range-slider--success{--_range-accent:var(--rating-color-success)}.range-slider--warning{--_range-accent:var(--rating-color-warning)}.range-slider--danger{--_range-accent:var(--rating-color-danger)}.range-slider--thin{--_range-track-thickness:var(--spacing-4);--_range-thumb-size:var(--spacing-16)}.range-slider__header{justify-content:space-between;align-items:center;gap:var(--spacing-12);display:flex}.range-slider__label{font-size:var(--font-size-sm);color:var(--form-control-label-color);font-weight:var(--font-weight-medium)}.range-slider__readout{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;color:var(--_range-accent)}.range-slider__track{height:var(--_range-track-thickness);border-radius:var(--radius-full);background:var(--slider-track-background-color);border:var(--spacing-1) solid var(--slider-track-border-color);cursor:pointer;margin:calc(var(--_range-thumb-size) / 2) 0;touch-action:none;position:relative}.range-slider__selection{background:var(--_range-accent);border-radius:var(--radius-full);pointer-events:none;position:absolute;top:0;bottom:0}.range-slider__thumb{width:var(--_range-thumb-size);height:var(--_range-thumb-size);border-radius:var(--radius-full);border:var(--spacing-2) solid var(--_range-accent);background:var(--slider-thumb-background-color);cursor:grab;transition:transform var(--transition-fast), background var(--transition-fast);touch-action:none;padding:0;position:absolute;top:50%;transform:translate(-50%,-50%)}.range-slider__thumb:hover:not(:disabled){background:var(--slider-thumb-hover-background-color);transform:translate(-50%,-50%)scale(1.15)}.range-slider__thumb:active:not(:disabled){cursor:grabbing}.range-slider__thumb:focus-visible{outline:var(--spacing-2) solid var(--form-control-focus-ring);outline-offset:var(--spacing-2)}.range-slider__thumb:disabled{cursor:not-allowed}.range-slider__thumb--upper{z-index:1}.range-slider__ticks{height:var(--spacing-24);position:relative}.range-slider__tick{align-items:center;gap:var(--spacing-2);pointer-events:none;flex-direction:column;display:flex;position:absolute;top:0;transform:translate(-50%)}.range-slider__tick-mark{width:var(--spacing-1);height:var(--spacing-4);background:var(--slider-track-border-color)}.range-slider__tick-label{font-size:var(--font-size-xxs);color:var(--body-color-muted);white-space:nowrap}.range-slider--disabled{opacity:.5}.range-slider--disabled .range-slider__track{cursor:not-allowed}
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import './RangeSlider.css';
|
|
2
|
+
/* empty css */
|
|
3
|
+
import { useCallback as a, useMemo as J, useRef as L } from "react";
|
|
4
|
+
import { jsx as p, jsxs as g } from "react/jsx-runtime";
|
|
5
|
+
var O = (n) => !Number.isFinite(n) || n >= 1 ? 0 : String(n).split(".")[1]?.length ?? 0, Y = ({ disabled: n = !1, formatValue: M, label: N, max: i = 100, min: o = 0, minDistance: q, onChange: h, onChangeEnd: d, showValues: R = !0, step: c = 1, thin: v = !1, tickStep: w = 0, value: D, variant: z = "accent" }) => {
|
|
6
|
+
const U = L(null), P = L(null), b = Math.max(1, i - o), T = q ?? c, f = O(c), [l, s] = D, _ = a((r) => M ? M(r) : f > 0 ? r.toFixed(f) : String(r), [f, M]), y = a((r) => {
|
|
7
|
+
const e = c > 0 ? o + Math.round((r - o) / c) * c : r, t = Math.min(i, Math.max(o, e));
|
|
8
|
+
return f > 0 ? Number(t.toFixed(f)) : t;
|
|
9
|
+
}, [
|
|
10
|
+
f,
|
|
11
|
+
i,
|
|
12
|
+
o,
|
|
13
|
+
c
|
|
14
|
+
]), m = a((r, e) => {
|
|
15
|
+
const t = y(e);
|
|
16
|
+
return r === "lower" ? [Math.min(t, s - T), s] : [l, Math.max(t, l + T)];
|
|
17
|
+
}, [
|
|
18
|
+
T,
|
|
19
|
+
l,
|
|
20
|
+
y,
|
|
21
|
+
s
|
|
22
|
+
]), k = a((r) => {
|
|
23
|
+
const e = U.current;
|
|
24
|
+
if (!e) return null;
|
|
25
|
+
const t = e.getBoundingClientRect();
|
|
26
|
+
return t.width === 0 ? null : o + Math.min(1, Math.max(0, (r - t.left) / t.width)) * b;
|
|
27
|
+
}, [o, b]), A = a((r, e) => {
|
|
28
|
+
n || (r.preventDefault(), r.stopPropagation(), r.currentTarget.setPointerCapture(r.pointerId), P.current = e);
|
|
29
|
+
}, [n]), F = a((r) => {
|
|
30
|
+
const e = P.current;
|
|
31
|
+
if (!e || n) return;
|
|
32
|
+
const t = k(r.clientX);
|
|
33
|
+
t !== null && h(m(e, t));
|
|
34
|
+
}, [
|
|
35
|
+
m,
|
|
36
|
+
n,
|
|
37
|
+
h,
|
|
38
|
+
k
|
|
39
|
+
]), j = a((r) => {
|
|
40
|
+
P.current && (r.currentTarget.releasePointerCapture(r.pointerId), P.current = null, d?.(D));
|
|
41
|
+
}, [d, D]), G = a((r) => {
|
|
42
|
+
if (n) return;
|
|
43
|
+
const e = k(r.clientX);
|
|
44
|
+
if (e === null) return;
|
|
45
|
+
const t = Math.abs(e - l) <= Math.abs(e - s) ? "lower" : "upper", u = m(t, e);
|
|
46
|
+
h(u), d?.(u);
|
|
47
|
+
}, [
|
|
48
|
+
m,
|
|
49
|
+
n,
|
|
50
|
+
l,
|
|
51
|
+
h,
|
|
52
|
+
d,
|
|
53
|
+
s,
|
|
54
|
+
k
|
|
55
|
+
]), K = a((r, e) => {
|
|
56
|
+
if (n) return;
|
|
57
|
+
const t = e === "lower" ? l : s, u = c > 0 ? c : 1, X = r.key === "ArrowLeft" || r.key === "ArrowDown" ? t - u : r.key === "ArrowRight" || r.key === "ArrowUp" ? t + u : r.key === "PageDown" ? t - u * 10 : r.key === "PageUp" ? t + u * 10 : r.key === "Home" ? o : r.key === "End" ? i : null;
|
|
58
|
+
if (X === null) return;
|
|
59
|
+
r.preventDefault();
|
|
60
|
+
const H = m(e, X);
|
|
61
|
+
h(H), d?.(H);
|
|
62
|
+
}, [
|
|
63
|
+
m,
|
|
64
|
+
n,
|
|
65
|
+
l,
|
|
66
|
+
i,
|
|
67
|
+
o,
|
|
68
|
+
h,
|
|
69
|
+
d,
|
|
70
|
+
c,
|
|
71
|
+
s
|
|
72
|
+
]), B = J(() => {
|
|
73
|
+
if (!w || w <= 0) return [];
|
|
74
|
+
const r = [];
|
|
75
|
+
for (let e = o; e <= i; e += w) r.push(y(e));
|
|
76
|
+
return r;
|
|
77
|
+
}, [
|
|
78
|
+
i,
|
|
79
|
+
o,
|
|
80
|
+
y,
|
|
81
|
+
w
|
|
82
|
+
]), $ = (r) => (Math.min(i, Math.max(o, r)) - o) / b * 100, x = $(l), I = $(s);
|
|
83
|
+
return /* @__PURE__ */ g("div", {
|
|
84
|
+
className: [
|
|
85
|
+
"range-slider",
|
|
86
|
+
`range-slider--${z}`,
|
|
87
|
+
v ? "range-slider--thin" : "",
|
|
88
|
+
n ? "range-slider--disabled" : ""
|
|
89
|
+
].filter(Boolean).join(" "),
|
|
90
|
+
children: [
|
|
91
|
+
(N || R) && /* @__PURE__ */ g("div", {
|
|
92
|
+
className: "range-slider__header",
|
|
93
|
+
children: [N && /* @__PURE__ */ p("span", {
|
|
94
|
+
className: "range-slider__label",
|
|
95
|
+
children: N
|
|
96
|
+
}), R && /* @__PURE__ */ g("span", {
|
|
97
|
+
className: "range-slider__readout",
|
|
98
|
+
children: [
|
|
99
|
+
_(l),
|
|
100
|
+
" – ",
|
|
101
|
+
_(s)
|
|
102
|
+
]
|
|
103
|
+
})]
|
|
104
|
+
}),
|
|
105
|
+
/* @__PURE__ */ g("div", {
|
|
106
|
+
className: "range-slider__track",
|
|
107
|
+
onPointerDown: G,
|
|
108
|
+
ref: U,
|
|
109
|
+
children: [
|
|
110
|
+
/* @__PURE__ */ p("div", {
|
|
111
|
+
className: "range-slider__selection",
|
|
112
|
+
style: {
|
|
113
|
+
left: `${x}%`,
|
|
114
|
+
width: `${I - x}%`
|
|
115
|
+
}
|
|
116
|
+
}),
|
|
117
|
+
/* @__PURE__ */ p("button", {
|
|
118
|
+
className: "range-slider__thumb range-slider__thumb--lower",
|
|
119
|
+
disabled: n,
|
|
120
|
+
onKeyDown: (r) => K(r, "lower"),
|
|
121
|
+
onPointerDown: (r) => A(r, "lower"),
|
|
122
|
+
onPointerMove: F,
|
|
123
|
+
onPointerUp: j,
|
|
124
|
+
style: { left: `${x}%` },
|
|
125
|
+
title: _(l),
|
|
126
|
+
type: "button"
|
|
127
|
+
}),
|
|
128
|
+
/* @__PURE__ */ p("button", {
|
|
129
|
+
className: "range-slider__thumb range-slider__thumb--upper",
|
|
130
|
+
disabled: n,
|
|
131
|
+
onKeyDown: (r) => K(r, "upper"),
|
|
132
|
+
onPointerDown: (r) => A(r, "upper"),
|
|
133
|
+
onPointerMove: F,
|
|
134
|
+
onPointerUp: j,
|
|
135
|
+
style: { left: `${I}%` },
|
|
136
|
+
title: _(s),
|
|
137
|
+
type: "button"
|
|
138
|
+
})
|
|
139
|
+
]
|
|
140
|
+
}),
|
|
141
|
+
B.length > 0 && /* @__PURE__ */ p("div", {
|
|
142
|
+
className: "range-slider__ticks",
|
|
143
|
+
children: B.map((r) => /* @__PURE__ */ g("span", {
|
|
144
|
+
className: "range-slider__tick",
|
|
145
|
+
style: { left: `${$(r)}%` },
|
|
146
|
+
children: [/* @__PURE__ */ p("span", { className: "range-slider__tick-mark" }), /* @__PURE__ */ p("span", {
|
|
147
|
+
className: "range-slider__tick-label",
|
|
148
|
+
children: _(r)
|
|
149
|
+
})]
|
|
150
|
+
}, r))
|
|
151
|
+
})
|
|
152
|
+
]
|
|
153
|
+
});
|
|
154
|
+
};
|
|
155
|
+
export {
|
|
156
|
+
Y as RangeSlider
|
|
157
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.rating{gap:var(--spacing-8);align-items:center;width:100%;display:flex}.rating.align-left{justify-content:flex-start}.rating.align-right{justify-content:flex-end}.rating.align-space-between{justify-content:space-between}.rating .rating-rates{gap:var(--spacing-2);align-items:center;display:flex}.rating .rate{align-items:center;line-height:1;display:inline-flex}.rating .rate:hover{opacity:.8;cursor:default}.rating.is-selectable .rate:hover{cursor:pointer}.rating .rating-values{font-size:var(--font-size-sm);color:var(--rating-empty-label-color)}.rating--emoji .rating-rates{gap:var(--spacing-8)}.rating--emoji .rate--emoji{transition:transform var(--transition-fast), opacity var(--transition-fast);opacity:.55}.rating--emoji .rate--emoji.is-selected{opacity:1;transform:scale(1.15)}.rating--emoji .rate--emoji:hover{opacity:1}.rating--emoji.is-selectable .rate--emoji:hover{transform:scale(1.15)}.rating--half-selectable .rating-rates{gap:var(--spacing-4)}.rating--half-selectable .rate--half-select{align-items:center;line-height:1;display:inline-flex;position:relative}.rating--half-selectable .rate--half-select .rate-click-left,.rating--half-selectable .rate--half-select .rate-click-right{cursor:pointer;z-index:1;width:50%;position:absolute;top:0;bottom:0}.rating--half-selectable .rate--half-select .rate-click-left{left:0}.rating--half-selectable .rate--half-select .rate-click-right{right:0}.rating--half-selectable .rate--half-select:hover{opacity:.75}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
import './Rating.css';
|
|
2
|
+
import { RatingIcon as h } from "./RatingIcon.js";
|
|
3
|
+
/* empty css */
|
|
4
|
+
import { useCallback as C } from "react";
|
|
5
|
+
import { jsx as e, jsxs as t } from "react/jsx-runtime";
|
|
6
|
+
var A = (n) => n < 0.3 ? "danger" : n < 0.6 ? "warning" : "success", I = ({ align: n = "left", emojiColorByMood: $ = !0, emojiSize: k = 28, icon: m = "star", maxRate: f = 10, onHover: g, onHoverEnd: d, onSelect: u, rating: l, selectable: p = !1, showValue: y = !0, useHalf: N = !1, variant: o = "warning" }) => {
|
|
7
|
+
const j = C((i) => {
|
|
8
|
+
p && !N && u?.(i + 1);
|
|
9
|
+
}, [
|
|
10
|
+
p,
|
|
11
|
+
N,
|
|
12
|
+
u
|
|
13
|
+
]);
|
|
14
|
+
if (m === "emoji") return /* @__PURE__ */ t("div", {
|
|
15
|
+
className: `rating rating--emoji align-${n} ${p ? "is-selectable" : ""}`,
|
|
16
|
+
onMouseLeave: d,
|
|
17
|
+
children: [/* @__PURE__ */ e("span", {
|
|
18
|
+
className: "rating-rates",
|
|
19
|
+
children: Array.from({ length: f }, (i, a) => {
|
|
20
|
+
const s = a + 1, r = f === 1 ? 1 : a / (f - 1), c = l === s;
|
|
21
|
+
return /* @__PURE__ */ e("span", {
|
|
22
|
+
className: `rate rate--emoji${c ? " is-selected" : ""}`,
|
|
23
|
+
onClick: () => p && u?.(s),
|
|
24
|
+
onMouseEnter: () => g?.(s),
|
|
25
|
+
children: /* @__PURE__ */ e(h, {
|
|
26
|
+
filled: c ? "full" : "empty",
|
|
27
|
+
mood: r,
|
|
28
|
+
size: k,
|
|
29
|
+
type: "emoji",
|
|
30
|
+
variant: $ ? A(r) : o
|
|
31
|
+
})
|
|
32
|
+
}, a);
|
|
33
|
+
})
|
|
34
|
+
}), y && /* @__PURE__ */ t("span", {
|
|
35
|
+
className: "rating-values",
|
|
36
|
+
children: [
|
|
37
|
+
"(",
|
|
38
|
+
l,
|
|
39
|
+
"/",
|
|
40
|
+
f,
|
|
41
|
+
")"
|
|
42
|
+
]
|
|
43
|
+
})]
|
|
44
|
+
});
|
|
45
|
+
if (N && p) return /* @__PURE__ */ e("div", {
|
|
46
|
+
className: `rating rating--half rating--half-selectable align-${n} is-selectable`,
|
|
47
|
+
onMouseLeave: d,
|
|
48
|
+
children: /* @__PURE__ */ e("span", {
|
|
49
|
+
className: "rating-rates",
|
|
50
|
+
children: Array.from({ length: 5 }, (i, a) => {
|
|
51
|
+
const s = a * 2 + 1, r = a * 2 + 2, c = l >= r;
|
|
52
|
+
return /* @__PURE__ */ t("span", {
|
|
53
|
+
className: "rate rate--half-select",
|
|
54
|
+
children: [
|
|
55
|
+
/* @__PURE__ */ e(h, {
|
|
56
|
+
type: m,
|
|
57
|
+
filled: c ? "full" : !c && l >= s ? "half" : "empty",
|
|
58
|
+
variant: o,
|
|
59
|
+
size: 24
|
|
60
|
+
}),
|
|
61
|
+
/* @__PURE__ */ e("span", {
|
|
62
|
+
className: "rate-click-left",
|
|
63
|
+
onClick: () => u?.(s),
|
|
64
|
+
onMouseEnter: () => g?.(s)
|
|
65
|
+
}),
|
|
66
|
+
/* @__PURE__ */ e("span", {
|
|
67
|
+
className: "rate-click-right",
|
|
68
|
+
onClick: () => u?.(r),
|
|
69
|
+
onMouseEnter: () => g?.(r)
|
|
70
|
+
})
|
|
71
|
+
]
|
|
72
|
+
}, a);
|
|
73
|
+
})
|
|
74
|
+
})
|
|
75
|
+
});
|
|
76
|
+
if (N) {
|
|
77
|
+
const i = l / 2, a = Math.floor(i), s = i % 1 >= 0.5, r = 5 - a - (s ? 1 : 0);
|
|
78
|
+
return /* @__PURE__ */ t("div", {
|
|
79
|
+
className: `rating rating--half align-${n}`,
|
|
80
|
+
onMouseLeave: d,
|
|
81
|
+
children: [/* @__PURE__ */ t("span", {
|
|
82
|
+
className: "rating-rates",
|
|
83
|
+
children: [
|
|
84
|
+
Array.from({ length: a }, (c, M) => /* @__PURE__ */ e("span", {
|
|
85
|
+
className: "rate",
|
|
86
|
+
children: /* @__PURE__ */ e(h, {
|
|
87
|
+
type: m,
|
|
88
|
+
filled: "full",
|
|
89
|
+
variant: o
|
|
90
|
+
})
|
|
91
|
+
}, `full-${M}`)),
|
|
92
|
+
s && /* @__PURE__ */ e("span", {
|
|
93
|
+
className: "rate",
|
|
94
|
+
children: /* @__PURE__ */ e(h, {
|
|
95
|
+
type: m,
|
|
96
|
+
filled: "half",
|
|
97
|
+
variant: o
|
|
98
|
+
})
|
|
99
|
+
}),
|
|
100
|
+
Array.from({ length: r }, (c, M) => /* @__PURE__ */ e("span", {
|
|
101
|
+
className: "rate",
|
|
102
|
+
children: /* @__PURE__ */ e(h, {
|
|
103
|
+
type: m,
|
|
104
|
+
filled: "empty",
|
|
105
|
+
variant: o
|
|
106
|
+
})
|
|
107
|
+
}, `empty-${M}`))
|
|
108
|
+
]
|
|
109
|
+
}), y && /* @__PURE__ */ t("span", {
|
|
110
|
+
className: "rating-values",
|
|
111
|
+
children: [
|
|
112
|
+
"(",
|
|
113
|
+
String(l / 2),
|
|
114
|
+
"/5)"
|
|
115
|
+
]
|
|
116
|
+
})]
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
return /* @__PURE__ */ t("div", {
|
|
120
|
+
className: `rating rating--full align-${n} ${p ? "is-selectable" : ""}`,
|
|
121
|
+
onMouseLeave: d,
|
|
122
|
+
children: [/* @__PURE__ */ e("span", {
|
|
123
|
+
className: "rating-rates",
|
|
124
|
+
children: Array.from({ length: f }, (i, a) => /* @__PURE__ */ e("span", {
|
|
125
|
+
className: "rate",
|
|
126
|
+
onClick: () => j(a),
|
|
127
|
+
onMouseEnter: () => g?.(a + 1),
|
|
128
|
+
children: /* @__PURE__ */ e(h, {
|
|
129
|
+
type: m,
|
|
130
|
+
filled: a < l ? "full" : "empty",
|
|
131
|
+
variant: o
|
|
132
|
+
})
|
|
133
|
+
}, a))
|
|
134
|
+
}), y && /* @__PURE__ */ t("span", {
|
|
135
|
+
className: "rating-values",
|
|
136
|
+
children: [
|
|
137
|
+
"(",
|
|
138
|
+
l,
|
|
139
|
+
"/",
|
|
140
|
+
f,
|
|
141
|
+
")"
|
|
142
|
+
]
|
|
143
|
+
})]
|
|
144
|
+
});
|
|
145
|
+
};
|
|
146
|
+
export {
|
|
147
|
+
I as Rating
|
|
148
|
+
};
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { useId as u } from "react";
|
|
2
|
+
import { jsx as r, jsxs as c } from "react/jsx-runtime";
|
|
3
|
+
var p = {
|
|
4
|
+
success: "var(--rating-color-success)",
|
|
5
|
+
info: "var(--rating-color-info)",
|
|
6
|
+
warning: "var(--rating-color-warning)",
|
|
7
|
+
danger: "var(--rating-color-danger)"
|
|
8
|
+
}, m = 7.5, M = 16.5, e = 15.5, w = -4, O = 4.5, $ = ({ type: i, filled: l, variant: v, size: t = 16, mood: f = 1 }) => {
|
|
9
|
+
const h = `rating-grad-${u()}`, g = p[v], d = "var(--rating-empty-color)", a = l === "full" ? g : l === "half" ? `url(#${h})` : d, s = () => l === "half" ? /* @__PURE__ */ r("defs", { children: /* @__PURE__ */ c("linearGradient", {
|
|
10
|
+
id: h,
|
|
11
|
+
x1: "0",
|
|
12
|
+
x2: "1",
|
|
13
|
+
y1: "0",
|
|
14
|
+
y2: "0",
|
|
15
|
+
children: [/* @__PURE__ */ r("stop", {
|
|
16
|
+
offset: "50%",
|
|
17
|
+
stopColor: g
|
|
18
|
+
}), /* @__PURE__ */ r("stop", {
|
|
19
|
+
offset: "50%",
|
|
20
|
+
stopColor: d
|
|
21
|
+
})]
|
|
22
|
+
}) }) : null;
|
|
23
|
+
if (i === "star") return /* @__PURE__ */ c("svg", {
|
|
24
|
+
width: t,
|
|
25
|
+
height: t,
|
|
26
|
+
viewBox: "0 0 24 24",
|
|
27
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
28
|
+
children: [/* @__PURE__ */ r(s, {}), /* @__PURE__ */ r("polygon", {
|
|
29
|
+
points: "12,2 15.09,8.26 22,9.27 17,14.14 18.18,21.02 12,17.77 5.82,21.02 7,14.14 2,9.27 8.91,8.26",
|
|
30
|
+
fill: a
|
|
31
|
+
})]
|
|
32
|
+
});
|
|
33
|
+
if (i === "bullet") return /* @__PURE__ */ c("svg", {
|
|
34
|
+
width: t,
|
|
35
|
+
height: t,
|
|
36
|
+
viewBox: "0 0 24 24",
|
|
37
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
38
|
+
children: [/* @__PURE__ */ r(s, {}), /* @__PURE__ */ r("circle", {
|
|
39
|
+
cx: "12",
|
|
40
|
+
cy: "12",
|
|
41
|
+
r: "10",
|
|
42
|
+
fill: a
|
|
43
|
+
})]
|
|
44
|
+
});
|
|
45
|
+
if (i === "emoji") {
|
|
46
|
+
const n = e + (w + (O - w) * Math.min(1, Math.max(0, f))), o = "var(--card-background-color)";
|
|
47
|
+
return /* @__PURE__ */ c("svg", {
|
|
48
|
+
width: t,
|
|
49
|
+
height: t,
|
|
50
|
+
viewBox: "0 0 24 24",
|
|
51
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
52
|
+
children: [
|
|
53
|
+
/* @__PURE__ */ r("circle", {
|
|
54
|
+
cx: "12",
|
|
55
|
+
cy: "12",
|
|
56
|
+
r: "10",
|
|
57
|
+
fill: a
|
|
58
|
+
}),
|
|
59
|
+
/* @__PURE__ */ r("circle", {
|
|
60
|
+
cx: "8.5",
|
|
61
|
+
cy: "9.5",
|
|
62
|
+
r: "1.2",
|
|
63
|
+
fill: o
|
|
64
|
+
}),
|
|
65
|
+
/* @__PURE__ */ r("circle", {
|
|
66
|
+
cx: "15.5",
|
|
67
|
+
cy: "9.5",
|
|
68
|
+
r: "1.2",
|
|
69
|
+
fill: o
|
|
70
|
+
}),
|
|
71
|
+
/* @__PURE__ */ r("path", {
|
|
72
|
+
d: `M ${m} ${e} Q 12 ${n} ${M} ${e}`,
|
|
73
|
+
fill: "none",
|
|
74
|
+
stroke: o,
|
|
75
|
+
strokeWidth: "1.6",
|
|
76
|
+
strokeLinecap: "round"
|
|
77
|
+
})
|
|
78
|
+
]
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
if (i === "bar") {
|
|
82
|
+
const n = Math.round(t * 1.75), o = Math.round(t * 0.5625), x = o / 2;
|
|
83
|
+
return /* @__PURE__ */ c("svg", {
|
|
84
|
+
width: n,
|
|
85
|
+
height: o,
|
|
86
|
+
viewBox: `0 0 ${n} ${o}`,
|
|
87
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
88
|
+
children: [/* @__PURE__ */ r(s, {}), /* @__PURE__ */ r("rect", {
|
|
89
|
+
x: "0",
|
|
90
|
+
y: "0",
|
|
91
|
+
width: n,
|
|
92
|
+
height: o,
|
|
93
|
+
rx: x,
|
|
94
|
+
fill: a
|
|
95
|
+
})]
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
return null;
|
|
99
|
+
};
|
|
100
|
+
export {
|
|
101
|
+
$ as RatingIcon
|
|
102
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.rte-wrapper{gap:var(--spacing-4);flex-direction:column;width:100%;display:flex}.rte-wrapper .rte-label{color:var(--form-control-label-color,var(--form-control-color));font-size:var(--form-control-label-font-size,var(--font-size-sm));font-weight:var(--form-control-label-font-weight,var(--font-weight-medium));letter-spacing:var(--form-control-label-letter-spacing,normal);text-transform:var(--form-control-label-text-transform,none)}.rte-wrapper .rte-label .rte-required{color:var(--body-danger-color,#dc2626);margin-left:var(--spacing-2)}.rte-wrapper .rte-container{border:var(--spacing-1) solid var(--form-control-border-color);border-radius:var(--radius-sm);background-color:var(--form-control-background-color);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;display:flex}.rte-wrapper .rte-container:focus-within{border-color:var(--form-control-focus-border-color);box-shadow:0 0 0 var(--spacing-2) var(--box-shadow)}.rte-wrapper .rte-container.rte-container--error{border-color:var(--body-danger-color)}.rte-wrapper .rte-container.rte-container--error:focus-within{border-color:var(--body-danger-color);box-shadow:0 0 0 var(--spacing-2) var(--box-shadow)}.rte-wrapper .rte-toolbar{align-items:center;gap:var(--spacing-4);padding:var(--spacing-8) var(--spacing-8);border-bottom:var(--spacing-1) solid var(--form-control-border-color);background-color:var(--form-control-background-color);border-radius:var(--radius-sm) var(--radius-sm) 0 0;flex-wrap:wrap;display:flex}.rte-wrapper .rte-toolbar-group{align-items:center;gap:var(--spacing-2);display:flex}.rte-wrapper .rte-toolbar-divider{width:var(--spacing-1);height:var(--spacing-20);background-color:var(--form-control-border-color);border-radius:var(--radius-full);margin:0 var(--spacing-2)}.rte-wrapper .rte-toolbar-btn{padding:var(--spacing-4) var(--spacing-8);min-width:var(--spacing-24);height:var(--spacing-24);border:var(--spacing-1) solid transparent;border-radius:var(--radius-sm);color:var(--form-control-color);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:var(--line-height-none);cursor:pointer;white-space:nowrap;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);-webkit-user-select:none;user-select:none;background:0 0;justify-content:center;align-items:center;display:inline-flex}.rte-wrapper .rte-toolbar-btn:hover{background-color:var(--button-default-hover-background-color);border-color:var(--button-default-hover-border-color);color:var(--button-default-hover-color)}.rte-wrapper .rte-toolbar-btn--active{background-color:var(--form-control-selection-background-color);border-color:var(--form-control-selection-border-color);color:var(--form-control-selection-color)}.rte-wrapper .rte-toolbar-btn--active:hover{background-color:var(--form-control-focus-border-color);border-color:var(--form-control-focus-border-color);color:var(--form-control-selection-color)}.rte-wrapper .rte-toolbar-btn--heading{font-size:var(--font-size-xxs);font-weight:var(--font-weight-bold);min-width:var(--spacing-20);padding:var(--spacing-4)}.rte-wrapper .rte-link-prompt{align-items:center;gap:var(--spacing-8);padding:var(--spacing-8) var(--spacing-12);background-color:var(--form-control-focus-background-color);border-bottom:var(--spacing-1) solid var(--form-control-border-color);animation:rte-slide-down var(--duration-fade) ease;flex-wrap:wrap;display:flex}.rte-wrapper .rte-link-input{min-width:var(--spacing-200);padding:var(--spacing-4) var(--spacing-8);border:var(--spacing-1) solid var(--form-control-border-color);border-radius:var(--radius-sm);background-color:var(--form-control-background-color);color:var(--form-control-color);font-size:var(--font-size-sm);flex:1}.rte-wrapper .rte-link-input:focus{border-color:var(--form-control-focus-border-color);outline:none}.rte-wrapper .rte-link-input::placeholder{color:var(--form-control-placeholder-color)}.rte-wrapper .rte-link-actions{gap:var(--spacing-4);display:flex}.rte-wrapper .rte-link-btn{padding:var(--spacing-4) var(--spacing-12);border-radius:var(--radius-sm);border:var(--spacing-1) solid transparent;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-fast)}.rte-wrapper .rte-link-btn--confirm{background-color:var(--button-info-background-color);border-color:var(--button-info-border-color);color:var(--button-info-color)}.rte-wrapper .rte-link-btn--confirm:hover{background-color:var(--button-info-hover-background-color);border-color:var(--button-info-hover-border-color)}.rte-wrapper .rte-link-btn--cancel{background-color:var(--button-default-background-color);border-color:var(--button-default-border-color);color:var(--button-default-color)}.rte-wrapper .rte-link-btn--cancel:hover{background-color:var(--button-default-hover-background-color);border-color:var(--button-default-hover-border-color)}.rte-wrapper .rte-editor{min-height:var(--spacing-200);padding:var(--spacing-12);color:var(--form-control-color);font-size:var(--font-size-sm);line-height:var(--line-height-normal);border-radius:0 0 var(--radius-sm) var(--radius-sm);outline:none;overflow-y:auto}.rte-wrapper .rte-editor:empty:before{content:attr(data-placeholder);color:var(--form-control-placeholder-color);pointer-events:none}.rte-wrapper .rte-editor h1{font-size:var(--font-size-xxl);font-weight:var(--font-weight-bold);margin:var(--spacing-8) 0}.rte-wrapper .rte-editor h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin:var(--spacing-8) 0}.rte-wrapper .rte-editor h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:var(--spacing-8) 0}.rte-wrapper .rte-editor h4{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin:var(--spacing-8) 0}.rte-wrapper .rte-editor h5{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin:var(--spacing-8) 0}.rte-wrapper .rte-editor h6{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);margin:var(--spacing-8) 0}.rte-wrapper .rte-editor p{margin:0 0 var(--spacing-8) 0}.rte-wrapper .rte-editor a{color:var(--links-color);text-decoration:underline}.rte-wrapper .rte-editor a:hover{color:var(--links-hover-color)}.rte-wrapper .rte-editor ul,.rte-wrapper .rte-editor ol{padding-left:var(--spacing-24);margin:0 0 var(--spacing-8) 0}.rte-wrapper .rte-editor ul.rte-task-list{padding-left:var(--spacing-8);list-style:none}.rte-wrapper .rte-editor ul.rte-task-list li{align-items:center;gap:var(--spacing-4);display:flex}.rte-wrapper .rte-editor code{background-color:var(--form-control-focus-background-color);border:var(--spacing-1) solid var(--form-control-border-color);border-radius:var(--radius-sm);padding:0 var(--spacing-4);font-size:var(--font-size-xs);font-family:var(--font-family-mono)}.rte-wrapper .rte-editor pre{background-color:var(--form-control-focus-background-color);border:var(--spacing-1) solid var(--form-control-border-color);border-radius:var(--radius-sm);padding:var(--spacing-12);font-size:var(--font-size-xs);font-family:var(--font-family-mono);margin:0 0 var(--spacing-8) 0;overflow-x:auto}.rte-wrapper .rte-editor table.rte-table{border-collapse:collapse;width:100%;margin:0 0 var(--spacing-8) 0;font-size:var(--font-size-sm)}.rte-wrapper .rte-editor table.rte-table th,.rte-wrapper .rte-editor table.rte-table td{border:var(--spacing-1) solid var(--form-control-border-color);padding:var(--spacing-8) var(--spacing-12);text-align:left;min-width:var(--spacing-80)}.rte-wrapper .rte-editor table.rte-table th{background-color:var(--form-control-focus-background-color);font-weight:var(--font-weight-semibold)}.rte-wrapper .rte-error-message{font-size:var(--font-size-xs);color:var(--body-danger-color)}@keyframes rte-slide-down{0%{opacity:0;transform:translateY(-var(--spacing-4))}to{opacity:1;transform:translateY(0)}}.rte-table-toolbar{z-index:10;align-items:center;gap:var(--spacing-4);padding:var(--spacing-4) var(--spacing-8);background-color:var(--form-control-background-color);border:var(--spacing-1) solid var(--form-control-border-color);border-radius:var(--radius-sm);box-shadow:0 2px 8px var(--box-shadow);animation:rte-slide-down var(--duration-hover) ease;pointer-events:all;display:flex;position:absolute}.rte-table-toolbar-group{align-items:center;gap:var(--spacing-2);display:flex}.rte-table-toolbar-divider{width:var(--spacing-1);height:var(--spacing-16);background-color:var(--form-control-border-color);border-radius:var(--radius-full);margin:0 var(--spacing-2)}.rte-table-toolbar-btn{padding:var(--spacing-4) var(--spacing-8);height:var(--spacing-24);border:var(--spacing-1) solid transparent;border-radius:var(--radius-sm);color:var(--form-control-color);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:var(--line-height-none);cursor:pointer;white-space:nowrap;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);background:0 0;justify-content:center;align-items:center;display:inline-flex}.rte-table-toolbar-btn:hover{background-color:var(--button-default-hover-background-color);border-color:var(--button-default-hover-border-color);color:var(--button-default-hover-color)}.rte-table-toolbar-btn--danger{color:var(--body-danger-color)}.rte-table-toolbar-btn--danger:hover{background-color:var(--button-danger-background-color);border-color:var(--button-danger-border-color);color:var(--button-danger-color)}
|