pixelize-design-library 2.4.2-beta.36 → 2.4.2-beta.38
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/COMPONENT-GOTCHAS.md +968 -0
- package/README.md +5 -0
- package/dist/Components/Accordion/Accordion.d.ts +1 -0
- package/dist/Components/Accordion/Accordion.js +1 -0
- package/dist/Components/Accordion/AccordionProps.d.ts +2 -0
- package/dist/Components/AlertDialog/AlertDialog.d.ts +1 -0
- package/dist/Components/AlertDialog/AlertDialog.js +1 -0
- package/dist/Components/AlertDialog/AlertDialogProps.d.ts +2 -0
- package/dist/Components/Apexcharts/ApexAreaChart/ApexAreaChart.d.ts +1 -0
- package/dist/Components/Apexcharts/ApexAreaChart/ApexAreaChart.js +1 -0
- package/dist/Components/Apexcharts/ApexAreaChart/ApexAreaChartProps.d.ts +4 -0
- package/dist/Components/Apexcharts/ApexBarChart/ApexBarChartProps.d.ts +6 -0
- package/dist/Components/Apexcharts/ApexLineChart/ApexLineChartProps.d.ts +8 -0
- package/dist/Components/Apexcharts/ApexPieChart/ApexPieChartProps.d.ts +6 -0
- package/dist/Components/Apexcharts/ApexPolarCharts/ApexPolarChartsProps.d.ts +3 -0
- package/dist/Components/Apexcharts/ApexRadialChart/ApexRadialChart.d.ts +1 -0
- package/dist/Components/Apexcharts/ApexRadialChart/ApexRadialChart.js +1 -0
- package/dist/Components/Apexcharts/ApexRadialChart/ApexRadialChartProps.d.ts +3 -0
- package/dist/Components/AppSwitcher/AppSwitcherProps.d.ts +6 -0
- package/dist/Components/AppearanceSettings/AppearanceSettingsProps.d.ts +2 -0
- package/dist/Components/Breadcrumbs/BreadcrumbsProps.d.ts +3 -0
- package/dist/Components/Button/ButtonProps.d.ts +3 -0
- package/dist/Components/ButtonGroupIcon/ButtonGoupIconProps.d.ts +7 -0
- package/dist/Components/Buttons/ButtonsProps.d.ts +2 -0
- package/dist/Components/Card/CardProps.d.ts +3 -0
- package/dist/Components/Card/PaymentCard/PaymentCardProps.d.ts +6 -0
- package/dist/Components/Checkbox/Checkbox.d.ts +1 -0
- package/dist/Components/Checkbox/Checkbox.js +1 -0
- package/dist/Components/Checkbox/CheckboxProps.d.ts +4 -0
- package/dist/Components/Common/ErrorComponent.d.ts +2 -0
- package/dist/Components/Common/ErrorComponent.js +1 -0
- package/dist/Components/Common/ErrorMessage.js +2 -2
- package/dist/Components/Common/FormLabel.d.ts +4 -0
- package/dist/Components/Common/FormLabel.js +1 -0
- package/dist/Components/Common/FormattedDescription.d.ts +2 -0
- package/dist/Components/Common/FormattedDescription.js +1 -0
- package/dist/Components/Common/HelperText.d.ts +2 -0
- package/dist/Components/Common/HelperText.js +2 -0
- package/dist/Components/Common/Label.d.ts +1 -0
- package/dist/Components/Common/Label.js +1 -0
- package/dist/Components/ContactForm/ContactForm.d.ts +1 -0
- package/dist/Components/ContactForm/ContactForm.js +1 -0
- package/dist/Components/ContactForm/ContactFormProps.d.ts +4 -0
- package/dist/Components/CopyButton/CopyButton.d.ts +3 -1
- package/dist/Components/CopyButton/CopyButton.js +1 -0
- package/dist/Components/CustomModulesTable/CustomModulesTableProps.d.ts +8 -0
- package/dist/Components/DatePicker/CalendarPanel.d.ts +1 -0
- package/dist/Components/DatePicker/CalendarPanel.js +1 -0
- package/dist/Components/DatePicker/DatePicker.d.ts +1 -0
- package/dist/Components/DatePicker/DatePicker.js +1 -0
- package/dist/Components/DatePicker/DatePickerProps.d.ts +9 -0
- package/dist/Components/DatePicker/RangeDatePicker.d.ts +1 -0
- package/dist/Components/DatePicker/RangeDatePicker.js +1 -0
- package/dist/Components/DatePicker/SingleDatePicker.d.ts +1 -0
- package/dist/Components/DatePicker/SingleDatePicker.js +1 -0
- package/dist/Components/DatePicker/ThemeDatePicker.d.ts +1 -0
- package/dist/Components/DatePicker/ThemeDatePicker.js +1 -0
- package/dist/Components/DatePicker/TimeOnlyPicker.d.ts +1 -0
- package/dist/Components/DatePicker/TimeOnlyPicker.js +4 -1
- package/dist/Components/DatePicker/TimePicker.d.ts +1 -0
- package/dist/Components/DatePicker/TimePicker.js +1 -0
- package/dist/Components/DatePicker/TimePickerInput.d.ts +1 -0
- package/dist/Components/DatePicker/TimePickerInput.js +1 -0
- package/dist/Components/Divider/Divider.d.ts +1 -0
- package/dist/Components/Divider/Divider.js +1 -0
- package/dist/Components/Drawer/DrawerProps.d.ts +2 -0
- package/dist/Components/Dropdown/DropDown.d.ts +1 -0
- package/dist/Components/Dropdown/DropDown.js +1 -0
- package/dist/Components/Dropdown/DropdownProps.d.ts +3 -0
- package/dist/Components/Editor/Editor.d.ts +1 -0
- package/dist/Components/Editor/Editor.js +1 -0
- package/dist/Components/Editor/EditorProps.d.ts +2 -0
- package/dist/Components/EmailCards/VerifyEmailOtp/VerifyEmailOtp.d.ts +1 -0
- package/dist/Components/EmailCards/VerifyEmailOtp/VerifyEmailOtp.js +2 -5
- package/dist/Components/EmailCards/VerifyEmailOtp/VerifyEmailOtpProps.d.ts +4 -0
- package/dist/Components/EmptyState/EmptyState.d.ts +1 -0
- package/dist/Components/EmptyState/EmptyState.js +1 -0
- package/dist/Components/EmptyState/EmptyStateProps.d.ts +3 -0
- package/dist/Components/FeedbackForm/FeedbackForm.d.ts +3 -0
- package/dist/Components/FeedbackForm/FeedbackForm.js +1 -0
- package/dist/Components/FieldSelectModal/FieldSelectModal.d.ts +3 -2
- package/dist/Components/FieldSelectModal/FieldSelectModal.js +1 -0
- package/dist/Components/FilePreview/FilePreview.d.ts +1 -0
- package/dist/Components/FilePreview/FilePreview.js +1 -0
- package/dist/Components/FilePreview/FilePreviewProps.d.ts +5 -2
- package/dist/Components/FileUpload/FileUpload.d.ts +1 -0
- package/dist/Components/FileUpload/FileUpload.js +1 -0
- package/dist/Components/FileUpload/FileUploadProps.d.ts +4 -0
- package/dist/Components/FileUploader/FileUploader.d.ts +1 -0
- package/dist/Components/FileUploader/FileUploader.js +1 -0
- package/dist/Components/FileUploader/FileUploaderProps.d.ts +2 -0
- package/dist/Components/FilterSidebar/FilterSidebar.d.ts +3 -0
- package/dist/Components/Form/FormWrapper.d.ts +3 -0
- package/dist/Components/Form/FormWrapper.js +2 -1
- package/dist/Components/Header/HeaderProps.d.ts +5 -0
- package/dist/Components/Input/Input/InputProps.d.ts +2 -0
- package/dist/Components/Input/PhoneNumberInput.d.ts +1 -0
- package/dist/Components/Input/PhoneNumberInput.js +1 -0
- package/dist/Components/Input/PhoneNumberInputProps.d.ts +3 -0
- package/dist/Components/Input/Switch/InputSwitch.d.ts +2 -0
- package/dist/Components/Input/Switch/InputSwitch.js +1 -0
- package/dist/Components/Input/TextInput.js +1 -0
- package/dist/Components/Input/TextInputProps.d.ts +2 -0
- package/dist/Components/InputTextArea/InputTextArea.d.ts +1 -0
- package/dist/Components/InputTextArea/InputTextArea.js +1 -0
- package/dist/Components/InputTextArea/InputTextAreaProps.d.ts +1 -0
- package/dist/Components/KanbanBoard/AccountCard.d.ts +3 -0
- package/dist/Components/KanbanBoard/AccountCard.js +1 -0
- package/dist/Components/KanbanBoard/AccountRow.d.ts +1 -0
- package/dist/Components/KanbanBoard/AccountRow.js +1 -0
- package/dist/Components/KanbanBoard/KanbanActions/KanbanActions.d.ts +2 -0
- package/dist/Components/KanbanBoard/KanbanActions/KanbanActions.js +1 -0
- package/dist/Components/KanbanBoard/KanbanBoard.d.ts +1 -0
- package/dist/Components/KanbanBoard/KanbanBoard.js +1 -0
- package/dist/Components/KanbanBoard/KanbanBoardProps.d.ts +12 -11
- package/dist/Components/KanbanBoard/MeasuredItem.d.ts +1 -0
- package/dist/Components/KanbanBoard/MeasuredItem.js +1 -0
- package/dist/Components/LazyWrapper/LazyWrapper.d.ts +3 -2
- package/dist/Components/LazyWrapper/LazyWrapper.js +1 -0
- package/dist/Components/LimitReachedModal/LimitReachedModalProps.d.ts +4 -1
- package/dist/Components/LimitReachedModal/limitReachedCopy.d.ts +2 -0
- package/dist/Components/LimitReachedModal/limitReachedCopy.js +2 -0
- package/dist/Components/Loading/Loading.d.ts +1 -0
- package/dist/Components/Loading/Loading.js +1 -0
- package/dist/Components/Loading/LoadingProps.d.ts +2 -0
- package/dist/Components/Modal/ModalProps.d.ts +2 -0
- package/dist/Components/MoreItems/MoreItems.d.ts +1 -0
- package/dist/Components/MoreItems/MoreItems.js +1 -0
- package/dist/Components/MoreItems/MoreItemsProps.d.ts +4 -2
- package/dist/Components/MultiSelect/MultiSelectProps.d.ts +2 -0
- package/dist/Components/NavigationBar/NavigationBarProps.d.ts +3 -0
- package/dist/Components/NoteTextArea/NoteTextArea.d.ts +1 -0
- package/dist/Components/NoteTextArea/NoteTextArea.js +1 -0
- package/dist/Components/NoteTextArea/NoteTextAreaProps.d.ts +2 -0
- package/dist/Components/Notification/Notification.d.ts +1 -0
- package/dist/Components/Notification/Notification.js +1 -0
- package/dist/Components/Notification/NotificationProps.d.ts +6 -0
- package/dist/Components/NumberInput/NumberInput.d.ts +1 -0
- package/dist/Components/NumberInput/NumberInput.js +1 -0
- package/dist/Components/NumberInput/NumberInputProps.d.ts +3 -0
- package/dist/Components/OrgSwitcher/OrgSwitcherProps.d.ts +6 -1
- package/dist/Components/OrgSwitcher/OrgSwitcherProps.js +1 -0
- package/dist/Components/OrganizationDetails/OrganizationDetailsProps.d.ts +10 -2
- package/dist/Components/PdfViewer/PdfViewer.d.ts +2 -1
- package/dist/Components/PdfViewer/PdfViewer.js +1 -0
- package/dist/Components/PinInput/PinInput.d.ts +1 -0
- package/dist/Components/PinInput/PinInput.js +1 -0
- package/dist/Components/PinInput/PinInputProps.d.ts +2 -0
- package/dist/Components/PinInputs/PinInputs.d.ts +1 -0
- package/dist/Components/PinInputs/PinInputs.js +1 -0
- package/dist/Components/PinInputs/PinInputsProps.d.ts +1 -0
- package/dist/Components/PlanBadge/PlanBadgeProps.d.ts +2 -0
- package/dist/Components/PlanPill/PlanPillProps.d.ts +2 -0
- package/dist/Components/ProductCard/ProductCardProps.d.ts +10 -0
- package/dist/Components/ProductCard/ProductReview.d.ts +1 -0
- package/dist/Components/ProductDetails/ProductDetailsProps.d.ts +7 -0
- package/dist/Components/ProfileCard/ProfileCardProps.d.ts +3 -0
- package/dist/Components/ProfilePhotoViewer/ProfilePhotoViewer.d.ts +1 -0
- package/dist/Components/ProfilePhotoViewer/ProfilePhotoViewer.js +1 -0
- package/dist/Components/ProfilePhotoViewer/ProfilePhotoViewerProps.d.ts +9 -1
- package/dist/Components/ProgressBar/ProgressBar.d.ts +1 -0
- package/dist/Components/ProgressBar/ProgressBar.js +1 -0
- package/dist/Components/ProgressBar/ProgressBarProps.d.ts +2 -0
- package/dist/Components/RadioButton/RadioButtonProps.d.ts +2 -0
- package/dist/Components/Reorder/Reorder.d.ts +2 -0
- package/dist/Components/Reorder/Reorder.js +1 -0
- package/dist/Components/Reorder/ReorderProps.d.ts +3 -0
- package/dist/Components/RolesPermission/RolesPermissionProps.d.ts +10 -0
- package/dist/Components/ScrollToTop/ScrollToTop.d.ts +3 -2
- package/dist/Components/ScrollToTop/ScrollToTop.js +1 -0
- package/dist/Components/Search/Search.d.ts +1 -0
- package/dist/Components/Search/Search.js +1 -0
- package/dist/Components/Search/SearchProps.d.ts +2 -0
- package/dist/Components/SearchSelect/SearchSelect.d.ts +1 -0
- package/dist/Components/SearchSelect/SearchSelect.js +1 -0
- package/dist/Components/SearchSelect/SearchSelectProps.d.ts +5 -0
- package/dist/Components/SegmentedControl/SegmentedControl.d.ts +1 -0
- package/dist/Components/SegmentedControl/SegmentedControl.js +1 -0
- package/dist/Components/SegmentedControl/SegmentedControlProps.d.ts +4 -0
- package/dist/Components/Select/SelectProps.d.ts +3 -0
- package/dist/Components/SelectSearch/SelectSearch.d.ts +1 -0
- package/dist/Components/SelectSearch/SelectSearch.js +1 -0
- package/dist/Components/SelectSearch/SelectSearchProps.d.ts +5 -0
- package/dist/Components/SelectV2/SelectV2.d.ts +1 -0
- package/dist/Components/SelectV2/SelectV2.js +1 -0
- package/dist/Components/SelectV2/SelectV2Props.d.ts +6 -1
- package/dist/Components/SideBar/SideBarProps.d.ts +9 -0
- package/dist/Components/SignInActivityTable/SignInActivityTableProps.d.ts +3 -0
- package/dist/Components/Skeletons/SkeletonProps.d.ts +2 -0
- package/dist/Components/Skeletons/Skeletons.d.ts +1 -0
- package/dist/Components/Skeletons/Skeletons.js +1 -0
- package/dist/Components/Slider/Slider.d.ts +3 -0
- package/dist/Components/Slider/Slider.js +1 -0
- package/dist/Components/StageProgress/StageItem.d.ts +1 -0
- package/dist/Components/StageProgress/StageItem.js +1 -0
- package/dist/Components/StageProgress/StageProgress.d.ts +1 -0
- package/dist/Components/StageProgress/StageProgress.js +1 -0
- package/dist/Components/StageProgress/StageProgressProps.d.ts +12 -4
- package/dist/Components/Switch/Switch.d.ts +1 -0
- package/dist/Components/Switch/Switch.js +1 -0
- package/dist/Components/Switch/SwitchProps.d.ts +1 -0
- package/dist/Components/Table/TableProps.d.ts +14 -0
- package/dist/Components/Table/filters/CompactSelect.d.ts +1 -0
- package/dist/Components/Table/filters/LeftFilterPane.d.ts +9 -1
- package/dist/Components/Tag/Tag.d.ts +1 -0
- package/dist/Components/Tag/Tag.js +1 -0
- package/dist/Components/Tag/TagProps.d.ts +7 -0
- package/dist/Components/Timeline/Timeline.d.ts +1 -0
- package/dist/Components/Timeline/Timeline.js +1 -0
- package/dist/Components/Timeline/TimelineProps.d.ts +8 -0
- package/dist/Components/Toaster/Toaster.d.ts +1 -0
- package/dist/Components/Toaster/Toaster.js +1 -0
- package/dist/Components/Toaster/ToasterProps.d.ts +3 -0
- package/dist/Components/Toggle/TableToggle.d.ts +1 -0
- package/dist/Components/Toggle/TableToggle.js +1 -0
- package/dist/Components/Toggle/TableToggleProps.d.ts +3 -0
- package/dist/Components/ToggleSwitch/ToggleSwitch.d.ts +1 -0
- package/dist/Components/ToggleSwitch/ToggleSwitch.js +1 -0
- package/dist/Components/ToggleSwitch/ToggleSwitchProps.d.ts +2 -0
- package/dist/Components/ToolTip/ToolTip.d.ts +1 -0
- package/dist/Components/ToolTip/ToolTip.js +1 -0
- package/dist/Components/ToolTip/ToolTipProps.d.ts +2 -0
- package/dist/Components/Trail/EditableCell.d.ts +2 -0
- package/dist/Components/Trail/EditableCell.js +1 -0
- package/dist/Components/Trail/SelectAllCheckbox.d.ts +1 -0
- package/dist/Components/Trail/SelectAllCheckbox.js +1 -0
- package/dist/Components/Trail/TrailWorks.d.ts +1 -0
- package/dist/Components/Trail/TrailWorks.js +1 -0
- package/dist/Components/UpgradeButton/UpgradeButtonProps.d.ts +6 -2
- package/dist/Components/UserDetails/UserDetailsProps.d.ts +17 -1
- package/dist/Components/WorkspaceWindow/WorkspaceWindowProps.d.ts +6 -1
- package/dist/esm/Components/Accordion/Accordion.js +1 -0
- package/dist/esm/Components/AlertDialog/AlertDialog.js +1 -0
- package/dist/esm/Components/Apexcharts/ApexAreaChart/ApexAreaChart.js +1 -0
- package/dist/esm/Components/Apexcharts/ApexRadialChart/ApexRadialChart.js +1 -0
- package/dist/esm/Components/Checkbox/Checkbox.js +1 -0
- package/dist/esm/Components/Common/ErrorComponent.js +1 -0
- package/dist/esm/Components/Common/ErrorMessage.js +2 -2
- package/dist/esm/Components/Common/FormLabel.js +1 -0
- package/dist/esm/Components/Common/FormattedDescription.js +1 -0
- package/dist/esm/Components/Common/HelperText.js +2 -0
- package/dist/esm/Components/Common/Label.js +1 -0
- package/dist/esm/Components/ContactForm/ContactForm.js +1 -0
- package/dist/esm/Components/CopyButton/CopyButton.js +1 -0
- package/dist/esm/Components/DatePicker/CalendarPanel.js +1 -0
- package/dist/esm/Components/DatePicker/DatePicker.js +1 -0
- package/dist/esm/Components/DatePicker/RangeDatePicker.js +1 -0
- package/dist/esm/Components/DatePicker/SingleDatePicker.js +1 -0
- package/dist/esm/Components/DatePicker/ThemeDatePicker.js +1 -0
- package/dist/esm/Components/DatePicker/TimeOnlyPicker.js +4 -1
- package/dist/esm/Components/DatePicker/TimePicker.js +1 -0
- package/dist/esm/Components/DatePicker/TimePickerInput.js +1 -0
- package/dist/esm/Components/Divider/Divider.js +1 -0
- package/dist/esm/Components/Dropdown/DropDown.js +1 -0
- package/dist/esm/Components/Editor/Editor.js +1 -0
- package/dist/esm/Components/EmailCards/VerifyEmailOtp/VerifyEmailOtp.js +2 -5
- package/dist/esm/Components/EmptyState/EmptyState.js +1 -0
- package/dist/esm/Components/FeedbackForm/FeedbackForm.js +1 -0
- package/dist/esm/Components/FieldSelectModal/FieldSelectModal.js +1 -0
- package/dist/esm/Components/FilePreview/FilePreview.js +1 -0
- package/dist/esm/Components/FileUpload/FileUpload.js +1 -0
- package/dist/esm/Components/FileUploader/FileUploader.js +1 -0
- package/dist/esm/Components/Form/FormWrapper.js +2 -1
- package/dist/esm/Components/Input/PhoneNumberInput.js +1 -0
- package/dist/esm/Components/Input/Switch/InputSwitch.js +1 -0
- package/dist/esm/Components/Input/TextInput.js +1 -0
- package/dist/esm/Components/InputTextArea/InputTextArea.js +1 -0
- package/dist/esm/Components/KanbanBoard/AccountCard.js +1 -0
- package/dist/esm/Components/KanbanBoard/AccountRow.js +1 -0
- package/dist/esm/Components/KanbanBoard/KanbanActions/KanbanActions.js +1 -0
- package/dist/esm/Components/KanbanBoard/KanbanBoard.js +1 -0
- package/dist/esm/Components/KanbanBoard/MeasuredItem.js +1 -0
- package/dist/esm/Components/LazyWrapper/LazyWrapper.js +1 -0
- package/dist/esm/Components/LimitReachedModal/limitReachedCopy.js +2 -0
- package/dist/esm/Components/Loading/Loading.js +1 -0
- package/dist/esm/Components/MoreItems/MoreItems.js +1 -0
- package/dist/esm/Components/NoteTextArea/NoteTextArea.js +1 -0
- package/dist/esm/Components/Notification/Notification.js +1 -0
- package/dist/esm/Components/NumberInput/NumberInput.js +1 -0
- package/dist/esm/Components/OrgSwitcher/OrgSwitcherProps.js +1 -0
- package/dist/esm/Components/PdfViewer/PdfViewer.js +1 -0
- package/dist/esm/Components/PinInput/PinInput.js +1 -0
- package/dist/esm/Components/PinInputs/PinInputs.js +1 -0
- package/dist/esm/Components/ProfilePhotoViewer/ProfilePhotoViewer.js +1 -0
- package/dist/esm/Components/ProgressBar/ProgressBar.js +1 -0
- package/dist/esm/Components/Reorder/Reorder.js +1 -0
- package/dist/esm/Components/ScrollToTop/ScrollToTop.js +1 -0
- package/dist/esm/Components/Search/Search.js +1 -0
- package/dist/esm/Components/SearchSelect/SearchSelect.js +1 -0
- package/dist/esm/Components/SegmentedControl/SegmentedControl.js +1 -0
- package/dist/esm/Components/SelectSearch/SelectSearch.js +1 -0
- package/dist/esm/Components/SelectV2/SelectV2.js +1 -0
- package/dist/esm/Components/Skeletons/Skeletons.js +1 -0
- package/dist/esm/Components/Slider/Slider.js +1 -0
- package/dist/esm/Components/StageProgress/StageItem.js +1 -0
- package/dist/esm/Components/StageProgress/StageProgress.js +1 -0
- package/dist/esm/Components/Switch/Switch.js +1 -0
- package/dist/esm/Components/Tag/Tag.js +1 -0
- package/dist/esm/Components/Timeline/Timeline.js +1 -0
- package/dist/esm/Components/Toaster/Toaster.js +1 -0
- package/dist/esm/Components/Toggle/TableToggle.js +1 -0
- package/dist/esm/Components/ToggleSwitch/ToggleSwitch.js +1 -0
- package/dist/esm/Components/ToolTip/ToolTip.js +1 -0
- package/dist/esm/Components/Trail/EditableCell.js +1 -0
- package/dist/esm/Components/Trail/SelectAllCheckbox.js +1 -0
- package/dist/esm/Components/Trail/TrailWorks.js +1 -0
- package/package.json +4 -3
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import React, { ElementType } from "react";
|
|
2
|
+
/** Renders an icon+label header above a bordered card — not an HTML form; no submit/validation, just a section wrapper. */
|
|
2
3
|
declare const FormWrapper: ({ icon, text, children, }: {
|
|
4
|
+
/** Must be a component reference (e.g. FiUser), not a rendered element like <FiUser />. */
|
|
3
5
|
icon?: ElementType;
|
|
4
6
|
text?: string;
|
|
7
|
+
/** Only icon/text/children are accepted — no `...rest`, so className/style/data- and aria-attributes never reach the DOM. */
|
|
5
8
|
children: React.ReactNode;
|
|
6
9
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
7
10
|
export default FormWrapper;
|
|
@@ -3,8 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
4
4
|
const react_1 = require("@chakra-ui/react");
|
|
5
5
|
const useCustomTheme_1 = require("../../Theme/useCustomTheme");
|
|
6
|
+
/** Renders an icon+label header above a bordered card — not an HTML form; no submit/validation, just a section wrapper. */
|
|
6
7
|
const FormWrapper = ({ icon, text, children, }) => {
|
|
7
8
|
const { colors } = (0, useCustomTheme_1.useCustomTheme)();
|
|
8
|
-
return ((0, jsx_runtime_1.jsxs)(react_1.Box, { children: [(0, jsx_runtime_1.jsxs)(react_1.Box, { display: "flex", alignItems: "center", gap: 2, mb: 2, children: [icon && (0, jsx_runtime_1.jsx)(react_1.Icon, { as: icon,
|
|
9
|
+
return ((0, jsx_runtime_1.jsxs)(react_1.Box, { children: [(0, jsx_runtime_1.jsxs)(react_1.Box, { display: "flex", alignItems: "center", gap: 2, mb: 2, children: [icon && (0, jsx_runtime_1.jsx)(react_1.Icon, { as: icon, boxSize: "1rem", color: colors.header[500] }), text && ((0, jsx_runtime_1.jsx)(react_1.Box, { fontFamily: "open-sans, sans-serif", fontWeight: 600, fontSize: 12, lineHeight: "100%", letterSpacing: "4%", textTransform: "uppercase", color: colors.header[500], children: text }))] }), (0, jsx_runtime_1.jsx)(react_1.Box, { borderRadius: "base", bg: colors.background[50], border: `0.075rem solid ${colors.boxborder[200]}`, boxShadow: `0 0.063rem 0.125rem 0 ${colors.boxShadow.primary}`, p: "1.5rem", children: children })] }));
|
|
9
10
|
};
|
|
10
11
|
exports.default = FormWrapper;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/** Horizontal top bar with page-link nav + submenus — for a user-avatar dropdown bar instead, use NavigationBar. */
|
|
1
2
|
type SubItem = {
|
|
2
3
|
label: string;
|
|
3
4
|
href: string;
|
|
@@ -15,8 +16,10 @@ type MenuItemProp = {
|
|
|
15
16
|
colorScheme?: "blue" | "cyan" | "gray" | "green" | "orange" | "pink" | "purple" | "red" | "teal" | "yellow" | "whiteAlpha" | "blackAlpha" | undefined;
|
|
16
17
|
};
|
|
17
18
|
onClick?: () => void;
|
|
19
|
+
/** Opens as a hover-only dropdown on desktop (no click/keyboard trigger) — a click-toggled accordion on mobile instead. */
|
|
18
20
|
children?: SubItem[];
|
|
19
21
|
};
|
|
22
|
+
/** Props for Header, the horizontal top bar; use NavigationBar for a user-avatar dropdown instead. */
|
|
20
23
|
export type HeaderProps = {
|
|
21
24
|
logo: React.ReactNode;
|
|
22
25
|
menuItems: MenuItemProp[];
|
|
@@ -32,6 +35,7 @@ export type HeaderProps = {
|
|
|
32
35
|
boxShadow?: string;
|
|
33
36
|
onMobileMenuClose?: () => void;
|
|
34
37
|
};
|
|
38
|
+
/** Internal props for Header's desktop nav row; not meant for consumers. */
|
|
35
39
|
export type DesktopMenuProps = Pick<HeaderProps, "menuItems" | "rightSlot"> & {
|
|
36
40
|
setHoveredMenu: (menu: string | null) => void;
|
|
37
41
|
isActive: (href?: string) => boolean | "" | undefined;
|
|
@@ -41,6 +45,7 @@ export type DesktopMenuProps = Pick<HeaderProps, "menuItems" | "rightSlot"> & {
|
|
|
41
45
|
color: string;
|
|
42
46
|
hoverTextColor?: string;
|
|
43
47
|
};
|
|
48
|
+
/** Internal props for Header's collapsible mobile menu panel; not meant for consumers. */
|
|
44
49
|
export type MobileMenuProps = Pick<HeaderProps, 'menuItems' | 'rightSlot'> & Pick<DesktopMenuProps, 'isActive' | 'activeBg' | 'color' | 'hoverBg'> & {
|
|
45
50
|
isOpen: boolean;
|
|
46
51
|
onClose?: () => void;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/** Internal, not exported from index.ts — use TextInput for a public field. No id prop; the label always renders as a plain span, never linked to the input. */
|
|
1
2
|
export type InputProps = {
|
|
2
3
|
label: string;
|
|
3
4
|
type?: "email" | "password" | "text" | "number";
|
|
@@ -7,6 +8,7 @@ export type InputProps = {
|
|
|
7
8
|
placeholder?: string;
|
|
8
9
|
className?: string;
|
|
9
10
|
inputBoxClassName?: string;
|
|
11
|
+
/** disabled, autoComplete, autoFocus, inputClassName, labelClassName, errorClassName are typed here but Input.tsx never reads them — no effect. */
|
|
10
12
|
inputClassName?: string;
|
|
11
13
|
labelClassName?: string;
|
|
12
14
|
errorClassName?: string;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { PhoneNumberInputProps } from "./PhoneNumberInputProps";
|
|
2
|
+
/** Country-code-aware phone field with a flag/dial-code prefix; its `ref` prop never attaches — this is a plain function component, not `forwardRef`. */
|
|
2
3
|
declare const PhoneNumberInput: ({ size, value, codeValueReturn, country, countries, placeholder, onChange, inputId, selectId, error, errorMessage, helperText, label, id, width, isInformation, informationMessage, isRequired, onBlur, onFocus, isReadOnly, height, autoComplete, showCountrySelect, ref, name, minW, maxW, ...rest }: PhoneNumberInputProps) => import("react/jsx-runtime").JSX.Element;
|
|
3
4
|
export default PhoneNumberInput;
|
|
@@ -19,6 +19,7 @@ const getFlagEmoji = (countryCode) => {
|
|
|
19
19
|
};
|
|
20
20
|
const sizeToPt = { xs: 2, sm: -1, md: 2, lg: 4 };
|
|
21
21
|
const sizeToWidth = { xs: "3.5rem", sm: "3.8rem", md: "4rem", lg: "4rem" };
|
|
22
|
+
/** Country-code-aware phone field with a flag/dial-code prefix; its `ref` prop never attaches — this is a plain function component, not `forwardRef`. */
|
|
22
23
|
const PhoneNumberInput = ({ size = "md", value, codeValueReturn = true, country, countries, placeholder = "Enter phone number", onChange, inputId, selectId, error, errorMessage, helperText, label, id, width = "100%", isInformation, informationMessage, isRequired, onBlur, onFocus, isReadOnly, height, autoComplete, showCountrySelect = true, ref, name, minW, maxW, ...rest }) => {
|
|
23
24
|
const theme = (0, useCustomTheme_1.useCustomTheme)();
|
|
24
25
|
const getCountryTelCode = (0, react_1.useCallback)((countryCode) => {
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
+
/** One entry in the `countries` select; `dial_code` prefixes the number on change. */
|
|
1
2
|
export type CountryOption = {
|
|
2
3
|
country_id: string | number;
|
|
3
4
|
code: string;
|
|
4
5
|
country: string;
|
|
5
6
|
dial_code: string;
|
|
6
7
|
};
|
|
8
|
+
/** The number field stays isDisabled until a country is chosen (via the select or the country prop) — with neither, typing silently does nothing. */
|
|
7
9
|
export type PhoneNumberInputProps = {
|
|
8
10
|
label?: string;
|
|
9
11
|
id?: string;
|
|
@@ -26,6 +28,7 @@ export type PhoneNumberInputProps = {
|
|
|
26
28
|
onBlur?: () => void;
|
|
27
29
|
onFocus?: () => void;
|
|
28
30
|
isReadOnly?: boolean;
|
|
31
|
+
/** Typed here but PhoneNumberInput is a plain function component, not forwardRef — passing ref never attaches; ref.current stays null. */
|
|
29
32
|
ref?: React.Ref<HTMLInputElement>;
|
|
30
33
|
autoComplete?: string;
|
|
31
34
|
height?: string;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SwitchProps } from "@chakra-ui/react";
|
|
2
|
+
/** Extends SwitchProps, so a caller-supplied sx spreads in last and silently replaces the built-in checked/unchecked track color. */
|
|
2
3
|
export interface ThemedSwitchProps extends SwitchProps {
|
|
3
4
|
switchText?: string;
|
|
4
5
|
switchTextPosition?: "left" | "right";
|
|
@@ -8,4 +9,5 @@ export interface ThemedSwitchProps extends SwitchProps {
|
|
|
8
9
|
label?: string;
|
|
9
10
|
size?: "sm" | "md" | "lg";
|
|
10
11
|
}
|
|
12
|
+
/** Themed Chakra `Switch` wrapper; a caller-supplied `sx` replaces (not merges with) the built-in checked/unchecked track color. */
|
|
11
13
|
export declare const InputSwitch: ({ switchText, switchTextPosition, id, isChecked, label, isInformation, informationMessage, isRequired, size, ...props }: ThemedSwitchProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -5,6 +5,7 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
5
5
|
const react_1 = require("@chakra-ui/react");
|
|
6
6
|
const FormLabel_1 = require("../../Common/FormLabel");
|
|
7
7
|
const useCustomTheme_1 = require("../../../Theme/useCustomTheme");
|
|
8
|
+
/** Themed Chakra `Switch` wrapper; a caller-supplied `sx` replaces (not merges with) the built-in checked/unchecked track color. */
|
|
8
9
|
const InputSwitch = ({ switchText, switchTextPosition = "right", id, isChecked, label, isInformation, informationMessage, isRequired, size = "md", ...props }) => {
|
|
9
10
|
const theme = (0, useCustomTheme_1.useCustomTheme)();
|
|
10
11
|
// Read the palette directly — it is already swapped for the active mode, so pairing the rungs
|
|
@@ -44,6 +44,7 @@ const FormLabel_1 = require("../Common/FormLabel");
|
|
|
44
44
|
const HelperText_1 = __importDefault(require("../Common/HelperText"));
|
|
45
45
|
const ErrorMessage_1 = __importDefault(require("../Common/ErrorMessage"));
|
|
46
46
|
const useCustomTheme_1 = require("../../Theme/useCustomTheme");
|
|
47
|
+
/** Standard labelled text field — error/helper text, left/right icons; `isRequired` only draws the label asterisk, it isn't native HTML validation. */
|
|
47
48
|
const TextInput = (0, react_1.forwardRef)(({ label, type = "text", id, name, onChange, onBlur, onFocus, isDisabled = false, isReadOnly = false, isRequired = false, value, placeholder = "Placeholder", width = "100%", height, error, errorMessage, helperText, onRightIconclick, inputRightIcon, inputLeftIcon, onLeftIconClick, inputGroupStyle, inputStyle, size = "md", isInformation = false, informationMessage, leftElementStyle, rightElementStyle, autoComplete, minW, maxW, ...props }, ref) => {
|
|
48
49
|
const theme = (0, useCustomTheme_1.useCustomTheme)();
|
|
49
50
|
const sizeKey = typeof size === "string" ? size : "md";
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { InputProps } from "@chakra-ui/react";
|
|
2
2
|
import type { ReactNode } from "react";
|
|
3
|
+
/** The library's primary single-line text field; type="password" has no built-in show/hide toggle — compose one via inputRightIcon + onRightIconclick. */
|
|
3
4
|
export type TextInputProps = Pick<InputProps, "value" | "type" | "onChange" | "placeholder" | "onBlur" | "onFocus" | "isDisabled" | "isRequired" | "isReadOnly" | "width" | "height" | "errorBorderColor" | "size" | "onKeyDown" | "onKeyUp" | "onMouseEnter" | "onMouseLeave"> & {
|
|
4
5
|
label?: string;
|
|
6
|
+
/** Omit id and the label renders as a plain span, unlabelled — same as InputTextArea. isRequired only draws an asterisk, never sets required/aria-required. */
|
|
5
7
|
id?: string;
|
|
6
8
|
name?: string;
|
|
7
9
|
error?: boolean;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/** Labelled multi-line text field; `width` defaults to a literal `500` (px, not responsive) and there's no `...rest` escape hatch. */
|
|
1
2
|
declare const InputTextArea: import("react").ForwardRefExoticComponent<Pick<import("@chakra-ui/react").TextareaProps, "placeholder" | "resize" | "id" | "onBlur" | "onChange" | "variant" | "size" | "isDisabled" | "name" | "value" | "isReadOnly" | "isRequired" | "autoComplete"> & {
|
|
2
3
|
label?: string;
|
|
3
4
|
error?: boolean;
|
|
@@ -9,6 +9,7 @@ const react_2 = require("@chakra-ui/react");
|
|
|
9
9
|
const FormLabel_1 = require("../Common/FormLabel");
|
|
10
10
|
const ErrorMessage_1 = __importDefault(require("../Common/ErrorMessage"));
|
|
11
11
|
const HelperText_1 = __importDefault(require("../Common/HelperText"));
|
|
12
|
+
/** Labelled multi-line text field; `width` defaults to a literal `500` (px, not responsive) and there's no `...rest` escape hatch. */
|
|
12
13
|
const InputTextArea = (0, react_1.forwardRef)(function InputTextArea({ label, placeholder, value, onChange, onBlur, name, size = "md", resize = "both", width = 500, isDisabled, isReadOnly, isRequired = false, error, errorMessage, helperText, rows, height, isInformation, informationMessage, id, autoComplete = "" }, ref) {
|
|
13
14
|
return ((0, jsx_runtime_1.jsxs)(react_2.FormControl, { children: [label && (0, jsx_runtime_1.jsx)(FormLabel_1.TextLabel, { label: label, id: id, isInformation: isInformation, informationMessage: informationMessage, isRequired: isRequired }), (0, jsx_runtime_1.jsx)(react_2.Textarea, { ref: ref, id: id, name: name, placeholder: placeholder, value: value, onChange: onChange, onBlur: onBlur, size: size, resize: resize, isDisabled: isDisabled, isReadOnly: isReadOnly, isInvalid: error, width: width, rows: rows, height: height, autoComplete: autoComplete }), error && (0, jsx_runtime_1.jsx)(ErrorMessage_1.default, { errorMessage: errorMessage }), helperText && !error && (0, jsx_runtime_1.jsx)(HelperText_1.default, { helperText: helperText })] }));
|
|
14
15
|
});
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { TextareaProps } from "@chakra-ui/react";
|
|
2
|
+
/** width defaults to 500 → literal "500px", not responsive (pass "100%"); id is required or the label has no accessible association. */
|
|
2
3
|
export type InputTextAreaProps = Pick<TextareaProps, "placeholder" | "value" | "onChange" | "onBlur" | "name" | "id" | "size" | "resize" | "isDisabled" | "isReadOnly" | "isRequired" | "variant" | "autoComplete"> & {
|
|
3
4
|
label?: string;
|
|
4
5
|
error?: boolean;
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { Account, KanbanBoardProps } from "./KanbanBoardProps";
|
|
3
|
+
/** Renders one card; if `account.customNode` is set it fully replaces this (and the built-in delete/open/expand) — not exported from the package. */
|
|
3
4
|
declare const AccountCard: React.MemoExoticComponent<({ account, onDelete, onOpen, isExpanded, onToggleExpand, isDeletable, }: {
|
|
4
5
|
account: Account;
|
|
6
|
+
/** Accepted but never read inside the component — has no effect on rendering, keys, or ordering. */
|
|
5
7
|
index?: number;
|
|
6
8
|
onDelete: KanbanBoardProps["onDelete"];
|
|
7
9
|
onOpen: KanbanBoardProps["onOpen"];
|
|
10
|
+
/** When false, shows only the first 4 string fields; `details` never renders until this is true. */
|
|
8
11
|
isExpanded?: boolean;
|
|
9
12
|
onToggleExpand?: () => void;
|
|
10
13
|
isDeletable?: boolean;
|
|
@@ -45,6 +45,7 @@ const accentText_1 = require("../../Theme/tokens/builders/accentText");
|
|
|
45
45
|
const statusTone_1 = require("../../Theme/tokens/builders/statusTone");
|
|
46
46
|
const AccountRow_1 = __importDefault(require("./AccountRow"));
|
|
47
47
|
const excludeKeys = ["id", "details"];
|
|
48
|
+
/** Renders one card; if `account.customNode` is set it fully replaces this (and the built-in delete/open/expand) — not exported from the package. */
|
|
48
49
|
const AccountCard = react_1.default.memo(({ account, onDelete, onOpen, isExpanded = false, onToggleExpand, isDeletable = true, }) => {
|
|
49
50
|
const { colors } = (0, useCustomTheme_1.useCustomTheme)();
|
|
50
51
|
const mode = (0, accentText_1.isDarkCanvas)(colors.backgroundColor.main) ? "dark" : "light";
|
|
@@ -4,6 +4,7 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
4
4
|
const react_1 = require("@chakra-ui/react");
|
|
5
5
|
const useCustomTheme_1 = require("../../Theme/useCustomTheme");
|
|
6
6
|
const functions_1 = require("../../Utils/functions");
|
|
7
|
+
/** Renders one label:value row; `label` is re-run through `toWords`, which only splits snake_case — a camelCase key like `nextFollowUp` displays as `Nextfollowup`. */
|
|
7
8
|
const AccountRow = ({ label, value }) => {
|
|
8
9
|
const { colors } = (0, useCustomTheme_1.useCustomTheme)();
|
|
9
10
|
return ((0, jsx_runtime_1.jsxs)(react_1.Flex, { w: "full", gap: 1, children: [(0, jsx_runtime_1.jsx)(react_1.Tooltip, { label: label, isDisabled: label.length <= 15, hasArrow: true, children: (0, jsx_runtime_1.jsx)(react_1.Text, { color: colors.text[700], w: "30%", noOfLines: 1, fontSize: "0.75rem", children: (0, functions_1.toWords)(label) }) }), (0, jsx_runtime_1.jsx)(react_1.Text, { w: "0.75rem", textAlign: "center", fontSize: "0.75rem", children: ":" }), (0, jsx_runtime_1.jsx)(react_1.Tooltip, { label: value, isDisabled: value.length <= 17, hasArrow: true, children: (0, jsx_runtime_1.jsx)(react_1.Text, { fontWeight: 600, color: colors.text[800], w: "calc(55% - 0.625rem)", noOfLines: 1, fontSize: "0.75rem", children: value }) })] }));
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { OptionProp } from "../../Select/SelectProps";
|
|
2
|
+
/** Standalone filter+Edit+Create action bar; NOT rendered by KanbanBoard (which uses HeaderActions instead) and not exported from the package. */
|
|
2
3
|
declare const KanbanActions: ({ options, onSelectChange, onEdit, onCreate, }: {
|
|
3
4
|
options: OptionProp[];
|
|
4
5
|
onSelectChange?: (option?: OptionProp) => void;
|
|
6
|
+
/** Unlike `HeaderActions`, there is no `isEditable`/`isCreatable` gate — both buttons always render. */
|
|
5
7
|
onEdit?: () => void;
|
|
6
8
|
onCreate?: () => void;
|
|
7
9
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -10,6 +10,7 @@ const lucide_react_1 = require("lucide-react");
|
|
|
10
10
|
const Divider_1 = __importDefault(require("../../Divider/Divider"));
|
|
11
11
|
const useCustomTheme_1 = require("../../../Theme/useCustomTheme");
|
|
12
12
|
const Button_1 = __importDefault(require("../../Button/Button"));
|
|
13
|
+
/** Standalone filter+Edit+Create action bar; NOT rendered by KanbanBoard (which uses HeaderActions instead) and not exported from the package. */
|
|
13
14
|
const KanbanActions = ({ options, onSelectChange, onEdit, onCreate, }) => {
|
|
14
15
|
const { colors } = (0, useCustomTheme_1.useCustomTheme)();
|
|
15
16
|
return ((0, jsx_runtime_1.jsxs)(react_1.Box, { display: "flex", alignItems: "center", gap: "0.625rem", children: [(0, jsx_runtime_1.jsx)(Select_1.default, { options: options, placeholder: "Filter by Status", width: "12.5rem", onChange: (option) => onSelectChange && onSelectChange(option) }), (0, jsx_runtime_1.jsxs)(react_1.Box, { display: "flex", alignItems: "center", gap: "0.5rem", children: [(0, jsx_runtime_1.jsx)(Button_1.default, { size: "sm", variant: "ghost", leftIcon: (0, jsx_runtime_1.jsx)(lucide_react_1.SquarePen, { size: 20, color: colors.text[500] }), onClick: () => onEdit === null || onEdit === void 0 ? void 0 : onEdit(), children: "Edit Layout" }), (0, jsx_runtime_1.jsx)(Divider_1.default, {}), (0, jsx_runtime_1.jsx)(Button_1.default, { size: "sm", variant: "solid", leftIcon: (0, jsx_runtime_1.jsx)(lucide_react_1.CirclePlus, { size: 20 }), onClick: () => onCreate === null || onCreate === void 0 ? void 0 : onCreate(), children: "Create New" })] })] }));
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { KanbanBoardProps } from "./KanbanBoardProps";
|
|
2
|
+
/** Full drag-and-drop board (columns + virtualized cards); its header select/edit/create bar is `HeaderActions`, not the unrelated `KanbanActions`. */
|
|
2
3
|
declare const KanbanBoard: ({ data, customColumns, customizeColumn, onDrag, onDelete, onOpen, onColumnDelete, isLoading, kanbanSelect, kanbanEdit, kanbanCreate, virtualization, permissions, noItems, enableColumnCollapse, collapsedColumns: defaultCollapsedColumns, onColumnCollapseChange, enableColumnReorder, onColumnReorder, preferences, }: KanbanBoardProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
3
4
|
export default KanbanBoard;
|
|
@@ -75,6 +75,7 @@ function reorderColumnEntries(entries, startIndex, endIndex) {
|
|
|
75
75
|
result.splice(endIndex, 0, removed);
|
|
76
76
|
return result;
|
|
77
77
|
}
|
|
78
|
+
/** Full drag-and-drop board (columns + virtualized cards); its header select/edit/create bar is `HeaderActions`, not the unrelated `KanbanActions`. */
|
|
78
79
|
const KanbanBoard = ({ data, customColumns, customizeColumn, onDrag, onDelete, onOpen, onColumnDelete, isLoading = false, kanbanSelect, kanbanEdit, kanbanCreate, virtualization, permissions, noItems, enableColumnCollapse = false, collapsedColumns: defaultCollapsedColumns, onColumnCollapseChange, enableColumnReorder = false, onColumnReorder, preferences = {
|
|
79
80
|
baseurl: "",
|
|
80
81
|
token: "",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ReactNode } from "react";
|
|
2
2
|
import { OptionProp } from "../Select/SelectProps";
|
|
3
|
-
/**
|
|
3
|
+
/** Extra string keys render as label:value rows on the card; number values (also allowed here) are silently never shown. */
|
|
4
4
|
export type Account = {
|
|
5
5
|
id: string;
|
|
6
6
|
customNode?: () => ReactNode;
|
|
@@ -10,6 +10,7 @@ export type Account = {
|
|
|
10
10
|
rating?: string;
|
|
11
11
|
[key: string]: string | number | null | undefined | (() => ReactNode);
|
|
12
12
|
};
|
|
13
|
+
/** One Kanban column: id, title, accent color, and its `Account` items. */
|
|
13
14
|
export type ColumnType = {
|
|
14
15
|
id: string;
|
|
15
16
|
title: string;
|
|
@@ -28,9 +29,12 @@ export type ColumnCollapseChangePayload = {
|
|
|
28
29
|
/** Full collapsed map for all columns (same shape as `collapsedColumns` initial prop). */
|
|
29
30
|
collapsedColumns: Record<string, boolean>;
|
|
30
31
|
};
|
|
32
|
+
/** Props for KanbanBoard — keyed columns (`data`) of draggable `Account` cards. */
|
|
31
33
|
export type KanbanBoardProps = {
|
|
32
34
|
data: Record<string, ColumnType>;
|
|
35
|
+
/** Merged on top of `data` — a matching column id in both silently overwrites the `data` entry, not merges its fields. */
|
|
33
36
|
customColumns?: Record<string, ColumnType>;
|
|
37
|
+
/** `isVisible` renders an inline dashed column when others exist, or a centered empty-state overlay when there are none. */
|
|
34
38
|
customizeColumn?: {
|
|
35
39
|
isVisible?: boolean;
|
|
36
40
|
buttonText?: string;
|
|
@@ -38,7 +42,9 @@ export type KanbanBoardProps = {
|
|
|
38
42
|
};
|
|
39
43
|
onDelete?: (account: Account) => void;
|
|
40
44
|
onOpen?: (account: Account) => void;
|
|
45
|
+
/** Receives the deleted column's item ids, not the column's own id — the column identity itself is not passed. */
|
|
41
46
|
onColumnDelete?: (colId: (string | number)[]) => void;
|
|
47
|
+
/** Fires after `columns` state already updated internally — a notification, not a gate; it cannot veto or revert the move. */
|
|
42
48
|
onDrag?: ({ from, to, item, columns, fromIndex, toIndex, }: {
|
|
43
49
|
from: string;
|
|
44
50
|
to: string;
|
|
@@ -56,11 +62,13 @@ export type KanbanBoardProps = {
|
|
|
56
62
|
width?: string;
|
|
57
63
|
value?: string;
|
|
58
64
|
};
|
|
65
|
+
/** Button shows only when this `isEditable` AND `permissions.isEditable` (default true) both allow it. */
|
|
59
66
|
kanbanEdit?: {
|
|
60
67
|
isEditable?: boolean;
|
|
61
68
|
onEdit?: () => void;
|
|
62
69
|
label?: string;
|
|
63
70
|
};
|
|
71
|
+
/** Same `permissions.isCreatable` AND-gate as `kanbanEdit`. */
|
|
64
72
|
kanbanCreate?: {
|
|
65
73
|
isCreatable?: boolean;
|
|
66
74
|
onCreate?: () => void;
|
|
@@ -82,22 +90,15 @@ export type KanbanBoardProps = {
|
|
|
82
90
|
};
|
|
83
91
|
/** When true, columns can collapse to a narrow horizontal rail (full height). */
|
|
84
92
|
enableColumnCollapse?: boolean;
|
|
85
|
-
/**
|
|
86
|
-
* Initial collapsed state keyed by column id (`data` / `customColumns` object keys).
|
|
87
|
-
* Merged on mount; when `preferences.url` is set, server `json.collapsedColumns` overrides these keys after load.
|
|
88
|
-
*/
|
|
93
|
+
/** Seeds collapsed state once on mount only — later prop changes are ignored unless `preferences.baseurl` is set to sync from saved prefs. */
|
|
89
94
|
collapsedColumns?: Record<string, boolean>;
|
|
90
95
|
/** Called when the user collapses or expands a column (after internal state updates). */
|
|
91
96
|
onColumnCollapseChange?: (payload: ColumnCollapseChangePayload) => void;
|
|
92
|
-
/**
|
|
97
|
+
/** Column drag ignores `permissions.isEditable` — reordering stays possible even when item drag is permission-locked. */
|
|
93
98
|
enableColumnReorder?: boolean;
|
|
94
99
|
/** Called after column order changes (same shape as `data` keys order). */
|
|
95
100
|
onColumnReorder?: (columns: Record<string, ColumnType>) => void;
|
|
96
|
-
/**
|
|
97
|
-
* Optional user-preferences API (same shape as `Table` `preferences`).
|
|
98
|
-
* When `url` is set, column collapse state is loaded from and saved to `json.collapsedColumns`
|
|
99
|
-
* (record of column id → collapsed).
|
|
100
|
-
*/
|
|
101
|
+
/** Same shape as Table's `preferences`; collapse state loads/saves to `json.collapsedColumns` only when `baseurl` is set. */
|
|
101
102
|
preferences?: {
|
|
102
103
|
baseurl: string;
|
|
103
104
|
token: string;
|
|
@@ -4,5 +4,6 @@ type MeasuredItemProps = {
|
|
|
4
4
|
setSize: (index: number, size: number) => void;
|
|
5
5
|
children: React.ReactNode;
|
|
6
6
|
};
|
|
7
|
+
/** Wraps one virtualized row to report its rendered height to KanbanBoard's row-size cache; not exported, virtualization-only. */
|
|
7
8
|
declare const MeasuredItem: React.FC<MeasuredItemProps>;
|
|
8
9
|
export default MeasuredItem;
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
4
4
|
const react_1 = require("react");
|
|
5
|
+
/** Wraps one virtualized row to report its rendered height to KanbanBoard's row-size cache; not exported, virtualization-only. */
|
|
5
6
|
const MeasuredItem = ({ index, setSize, children, }) => {
|
|
6
7
|
const ref = (0, react_1.useRef)(null);
|
|
7
8
|
const prevHeight = (0, react_1.useRef)(null);
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
export interface LazyWrapperProps {
|
|
3
3
|
children: React.ReactNode;
|
|
4
|
-
/**
|
|
4
|
+
/** Overrides the default spinner entirely — `minHeight` below then has no effect. */
|
|
5
5
|
fallback?: React.ReactNode;
|
|
6
|
-
/**
|
|
6
|
+
/** Sizes only the built-in spinner — ignored once a custom `fallback` is passed. */
|
|
7
7
|
minHeight?: string;
|
|
8
8
|
}
|
|
9
|
+
/** Suspense boundary + themed spinner only — wrap an already-lazy() child; a non-lazy child never suspends. */
|
|
9
10
|
declare const LazyWrapper: React.FC<LazyWrapperProps>;
|
|
10
11
|
export default LazyWrapper;
|
|
@@ -8,5 +8,6 @@ const DefaultFallback = ({ minHeight }) => {
|
|
|
8
8
|
const theme = (0, useCustomTheme_1.useCustomTheme)();
|
|
9
9
|
return ((0, jsx_runtime_1.jsx)(react_2.Box, { display: "flex", alignItems: "center", justifyContent: "center", minHeight: minHeight, width: "100%", p: "2rem", children: (0, jsx_runtime_1.jsx)(react_2.Spinner, { thickness: "3px", speed: "0.65s", size: "lg", emptyColor: theme.colors.gray[100], color: theme.colors.accentText }) }));
|
|
10
10
|
};
|
|
11
|
+
/** Suspense boundary + themed spinner only — wrap an already-lazy() child; a non-lazy child never suspends. */
|
|
11
12
|
const LazyWrapper = ({ children, fallback, minHeight = "400px", }) => ((0, jsx_runtime_1.jsx)(react_1.Suspense, { fallback: fallback !== null && fallback !== void 0 ? fallback : (0, jsx_runtime_1.jsx)(DefaultFallback, { minHeight: minHeight }), children: children }));
|
|
12
13
|
exports.default = LazyWrapper;
|
|
@@ -1,13 +1,16 @@
|
|
|
1
|
+
/** Which plan limit was hit; selects the modal's icon and copy via `resolveLimitCopy`. */
|
|
1
2
|
export type LimitKind = "record" | "automation" | "custom_modules" | "user" | "projects" | "tickets";
|
|
3
|
+
/** Fully controlled (isOpen/onClose only, no internal useDisclosure/autoOpen); closed prop list — modal size is fixed at "lg", not configurable. */
|
|
2
4
|
export interface LimitReachedModalProps {
|
|
3
5
|
isOpen: boolean;
|
|
4
6
|
onClose: () => void;
|
|
5
7
|
kind: LimitKind;
|
|
6
|
-
/**
|
|
8
|
+
/** Inline usage line needs BOTH limit and used — either alone silently renders nothing. */
|
|
7
9
|
limit?: number | null;
|
|
8
10
|
used?: number | null;
|
|
9
11
|
/** false hides the upgrade CTA and swaps in "contact your administrator" copy. */
|
|
10
12
|
canManageBilling: boolean;
|
|
13
|
+
/** Clicking the CTA calls only this — it does not also call onClose. Close the modal yourself if upgrading should dismiss it. */
|
|
11
14
|
onUpgrade?: () => void;
|
|
12
15
|
title?: string;
|
|
13
16
|
message?: string;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { LimitKind } from "./LimitReachedModalProps";
|
|
2
|
+
/** title is the same for both audiences — only message swaps between admin and member copy. */
|
|
2
3
|
export declare function resolveLimitCopy(kind: LimitKind, canManageBilling: boolean): {
|
|
3
4
|
title: string;
|
|
4
5
|
message: string;
|
|
5
6
|
};
|
|
7
|
+
/** Returns null unless BOTH used and limit are non-null — no partial "X used" line. */
|
|
6
8
|
export declare function formatLimitUsage(kind: LimitKind, used?: number | null, limit?: number | null): string | null;
|
|
@@ -43,10 +43,12 @@ const COPY = {
|
|
|
43
43
|
member: "Your organization has reached its ticket limit. Contact your organization administrator to upgrade the plan.",
|
|
44
44
|
},
|
|
45
45
|
};
|
|
46
|
+
/** title is the same for both audiences — only message swaps between admin and member copy. */
|
|
46
47
|
function resolveLimitCopy(kind, canManageBilling) {
|
|
47
48
|
const c = COPY[kind];
|
|
48
49
|
return { title: c.title, message: canManageBilling ? c.admin : c.member };
|
|
49
50
|
}
|
|
51
|
+
/** Returns null unless BOTH used and limit are non-null — no partial "X used" line. */
|
|
50
52
|
function formatLimitUsage(kind, used, limit) {
|
|
51
53
|
if (used == null || limit == null)
|
|
52
54
|
return null;
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import { LoadingProps } from "./LoadingProps";
|
|
2
|
+
/** Full-viewport (or container-scoped) blocking overlay gated on isLoading; not a substitute for Button's own isLoading spinner on one control. */
|
|
2
3
|
export default function Loading({ text, isLoading, onlytext, container }: LoadingProps): import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -6,6 +6,7 @@ const react_1 = require("react");
|
|
|
6
6
|
const react_2 = require("@chakra-ui/react");
|
|
7
7
|
const react_3 = require("@emotion/react");
|
|
8
8
|
const useCustomTheme_1 = require("../../Theme/useCustomTheme");
|
|
9
|
+
/** Full-viewport (or container-scoped) blocking overlay gated on isLoading; not a substitute for Button's own isLoading spinner on one control. */
|
|
9
10
|
function Loading({ text, isLoading, onlytext, container }) {
|
|
10
11
|
const theme = (0, useCustomTheme_1.useCustomTheme)();
|
|
11
12
|
const colorTransition = (0, react_1.useMemo)(() => (0, react_3.keyframes) `
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
/** Props for Loading, a full-viewport (or container-scoped) blocking overlay gated on `isLoading`. */
|
|
1
2
|
export type LoadingProps = {
|
|
2
3
|
text?: string;
|
|
3
4
|
isLoading: boolean;
|
|
5
|
+
/** Swaps the spinner+label for a large pulsing 50px uppercase heading — a different treatment, not just "no spinner". */
|
|
4
6
|
onlytext?: boolean;
|
|
5
7
|
/** Scope the overlay to the nearest positioned ancestor with a MUI-style scrim, instead of full-viewport. */
|
|
6
8
|
container?: boolean;
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { ModalProps } from "@chakra-ui/react";
|
|
2
|
+
/** Props for our Modal wrapper — a curated subset of Chakra's ModalProps plus overlay/loading extras. */
|
|
2
3
|
export type ChakraModelProps = Pick<ModalProps, "isOpen" | "onClose" | "finalFocusRef" | "blockScrollOnMount" | "initialFocusRef" | "closeOnOverlayClick" | "isCentered" | "motionPreset" | "scrollBehavior"> & {
|
|
3
4
|
overlaybg?: string;
|
|
4
5
|
overlaybackdropFilter?: string;
|
|
5
6
|
overlaybackdropInvert?: string;
|
|
6
7
|
overlaybackdropBlur?: string;
|
|
7
8
|
size: "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | "4xl" | "5xl" | "6xl" | "full";
|
|
9
|
+
/** Only ModalHeader/ModalBody/ModalFooter render; other elements and fragment-wrapped slots are silently dropped. */
|
|
8
10
|
children?: React.ReactNode;
|
|
9
11
|
isLoading?: boolean;
|
|
10
12
|
};
|
|
@@ -4,6 +4,7 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
4
4
|
const react_1 = require("@chakra-ui/react");
|
|
5
5
|
const useCustomTheme_1 = require("../../Theme/useCustomTheme");
|
|
6
6
|
const rowStates_1 = require("../../Theme/tokens/builders/rowStates");
|
|
7
|
+
/** "+N more" popover trigger for an overflowed list — renders nothing at all once the count reaches 0. */
|
|
7
8
|
const MoreItems = ({ items, moreCount, triggerText, colorResolver, hideDots = false, columns = 2, minWidth = "260px", triggerMaxWidth = "250px", trigger = "hover", placement = "bottom-start", }) => {
|
|
8
9
|
const theme = (0, useCustomTheme_1.useCustomTheme)();
|
|
9
10
|
const countBadgeBg = (0, rowStates_1.listRowBackgrounds)(theme.colors).selected;
|
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
import { ReactNode } from "react";
|
|
2
|
+
/** One row in the MoreItems popover grid — id, label and an optional dot color. */
|
|
2
3
|
export interface MoreItem {
|
|
3
4
|
id: string | number;
|
|
4
5
|
label: string;
|
|
5
6
|
/** Optional leading dot color. Falls back to colorResolver or a neutral gray. */
|
|
6
7
|
color?: string;
|
|
7
8
|
}
|
|
9
|
+
/** Full trigger + popover configuration for MoreItems — see MoreItem for the shape of each listed row. */
|
|
8
10
|
export interface MoreItemsProps {
|
|
9
11
|
/** Items shown inside the popover. */
|
|
10
12
|
items: MoreItem[];
|
|
11
|
-
/**
|
|
13
|
+
/** Defaults to items.length; ≤0 either way hides the trigger, falling back to bare triggerText or null. */
|
|
12
14
|
moreCount?: number;
|
|
13
15
|
/** Text shown before the "+N more" pill (e.g. the first visible value). */
|
|
14
16
|
triggerText?: ReactNode;
|
|
15
|
-
/**
|
|
17
|
+
/** Only runs when item.color is unset — item.color always wins over this resolver. */
|
|
16
18
|
colorResolver?: (item: MoreItem) => string | undefined;
|
|
17
19
|
/** Hide the colored leading dot entirely. */
|
|
18
20
|
hideDots?: boolean;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/** No `options` prop — typed text is validated as an email, not picked from a list; use `SearchSelect isMultiple`. */
|
|
1
2
|
export type MultiSelectProps = {
|
|
2
3
|
value: MultiSelctOPtions[];
|
|
3
4
|
onValueChange: (options: MultiSelctOPtions[]) => void;
|
|
@@ -17,6 +18,7 @@ export type MultiSelectProps = {
|
|
|
17
18
|
errorMessage?: string;
|
|
18
19
|
helperText?: string;
|
|
19
20
|
};
|
|
21
|
+
/** One entered chip — id is a generated key, label is the email text the user typed. */
|
|
20
22
|
export type MultiSelctOPtions = {
|
|
21
23
|
id: string;
|
|
22
24
|
label: string;
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { ReactNode } from "react";
|
|
2
|
+
/** Props for the top navbar — user menu, nav items, and the toggle/peek affordances shared with SideBar. */
|
|
2
3
|
export type NavbarProps = {
|
|
4
|
+
/** Prop name is spelled exactly this way ("Avathar") — not a typo to correct at the call site. */
|
|
3
5
|
userAvathar?: string;
|
|
4
6
|
userName: string;
|
|
5
7
|
userRole?: string;
|
|
@@ -27,6 +29,7 @@ export type NavbarProps = {
|
|
|
27
29
|
*/
|
|
28
30
|
onSideBarPeek?: () => void;
|
|
29
31
|
};
|
|
32
|
+
/** One navMenu entry (id/title/url/icon) — unrelated to Chakra's own MenuProps despite the shared name. */
|
|
30
33
|
export type MenuProps = {
|
|
31
34
|
id?: string | number;
|
|
32
35
|
title: string;
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
import { NoteTextAreaProps } from "./NoteTextAreaProps";
|
|
2
|
+
/** Self-contained note composer (optional title + textarea + Save); its `ref` only ever reaches the title input, never the primary textarea. */
|
|
2
3
|
export default function NoteTextArea({ width, handleSubmit, handleCancel, value, title, file, isEditable, saveButtonLoading, maxFileSize, maxFilesSizeError, maxNoteWordCount, onChange, ref: inputRef, customPlaceholder, cancelButtonHide, }: NoteTextAreaProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -15,6 +15,7 @@ const countWords = (text = "") => {
|
|
|
15
15
|
return 0;
|
|
16
16
|
return t.split(/\s+/).length;
|
|
17
17
|
};
|
|
18
|
+
/** Self-contained note composer (optional title + textarea + Save); its `ref` only ever reaches the title input, never the primary textarea. */
|
|
18
19
|
function NoteTextArea({ width = "100%", handleSubmit, handleCancel, value, title, file, isEditable = false, saveButtonLoading, maxFileSize = 1 * 1024 * 1024, maxFilesSizeError = "Some files are too large. Maximum allowed size is", maxNoteWordCount = 15, onChange, ref: inputRef, customPlaceholder = "Add a note...", cancelButtonHide = false, }) {
|
|
19
20
|
const theme = (0, useCustomTheme_1.useCustomTheme)();
|
|
20
21
|
const noteAreaRef = (0, react_1.useRef)(null);
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { LegacyRef } from "react";
|
|
2
|
+
/** Plain Chakra Textarea + title + file attach, not a rich text editor — no formatting toolbar despite the "note" naming. Use Editor for HTML content. */
|
|
2
3
|
export type NoteTextAreaProps = {
|
|
3
4
|
width?: number | string;
|
|
4
5
|
handleSubmit: (noteValue: string, titleValue: string, file: File[], resetState: void) => void;
|
|
@@ -7,6 +8,7 @@ export type NoteTextAreaProps = {
|
|
|
7
8
|
file?: File[];
|
|
8
9
|
isEditable?: boolean;
|
|
9
10
|
handleCancel?: (isActive: boolean) => void;
|
|
11
|
+
/** Any transition to false while isEditable is not true clears the note, title and files — including after a failed save, not just success. */
|
|
10
12
|
saveButtonLoading?: boolean;
|
|
11
13
|
maxFileSize?: number;
|
|
12
14
|
maxFilesSizeError?: string;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { NotificationProps } from "./NotificationProps";
|
|
2
|
+
/** Self-contained event/task card with its own loading skeleton — not the app's toast/alert system; for status messages use Toaster (overlays). */
|
|
2
3
|
declare const Notification: ({ notification, onClose, showStatus, onClick, isLoading, colors, }: NotificationProps) => import("react/jsx-runtime").JSX.Element;
|
|
3
4
|
export default Notification;
|
|
@@ -7,6 +7,7 @@ const lucide_react_1 = require("lucide-react");
|
|
|
7
7
|
const useCustomTheme_1 = require("../../Theme/useCustomTheme");
|
|
8
8
|
const accentText_1 = require("../../Theme/tokens/builders/accentText");
|
|
9
9
|
const statusTone_1 = require("../../Theme/tokens/builders/statusTone");
|
|
10
|
+
/** Self-contained event/task card with its own loading skeleton — not the app's toast/alert system; for status messages use Toaster (overlays). */
|
|
10
11
|
const Notification = ({ notification, onClose, showStatus, onClick, isLoading = false, colors, }) => {
|
|
11
12
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
12
13
|
const theme = (0, useCustomTheme_1.useCustomTheme)();
|