@lax-wp/design-system 0.3.114 → 0.3.115

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.
Files changed (201) hide show
  1. package/dist/components/button/Button.d.ts +25 -0
  2. package/dist/components/button/ButtonGroup.d.ts +6 -0
  3. package/dist/components/button/ButtonThreeDots.d.ts +3 -0
  4. package/dist/components/button/IconButton.d.ts +14 -0
  5. package/dist/components/button/Radio.d.ts +8 -0
  6. package/dist/components/buttons/option-button/OptionButton.d.ts +60 -0
  7. package/dist/components/cards/card-header-view/CardHeaderView.d.ts +33 -0
  8. package/dist/components/cards/card-header-view/index.d.ts +2 -0
  9. package/dist/components/cards/card-main/CardMain.d.ts +25 -0
  10. package/dist/components/cards/card-main/index.d.ts +2 -0
  11. package/dist/components/cards/tab-content/TabContent.d.ts +30 -0
  12. package/dist/components/cards/tab-content/index.d.ts +2 -0
  13. package/dist/components/data-display/access-denied-modal/AccessDeniedModal.d.ts +21 -0
  14. package/dist/components/data-display/badge/Badge.d.ts +44 -0
  15. package/dist/components/data-display/banner/Banner.d.ts +37 -0
  16. package/dist/components/data-display/card/Card.d.ts +31 -0
  17. package/dist/components/data-display/code-editor/CodeEditor.d.ts +6 -0
  18. package/dist/components/data-display/code-editor/JsonGrid.d.ts +37 -0
  19. package/dist/components/data-display/code-editor/Tabs.d.ts +12 -0
  20. package/dist/components/data-display/comparison/Comparison.d.ts +34 -0
  21. package/dist/components/data-display/comparison/ComparisonContext.d.ts +36 -0
  22. package/dist/components/data-display/comparison/components/GridItemHandle.d.ts +7 -0
  23. package/dist/components/data-display/comparison/components/GridLayout.d.ts +3 -0
  24. package/dist/components/data-display/comparison/components/Header.d.ts +9 -0
  25. package/dist/components/data-display/comparison/components/NoAvailableContent.d.ts +2 -0
  26. package/dist/components/data-display/comparison/components/SortableItem.d.ts +7 -0
  27. package/dist/components/data-display/comparison/constants.d.ts +15 -0
  28. package/dist/components/data-display/comparison/icons/CloseIcon.d.ts +7 -0
  29. package/dist/components/data-display/comparison/icons/ExitIcon.d.ts +6 -0
  30. package/dist/components/data-display/comparison/icons/LayoutOneIcon.d.ts +6 -0
  31. package/dist/components/data-display/comparison/icons/LayoutThreeIcon.d.ts +6 -0
  32. package/dist/components/data-display/comparison/icons/LayoutTwoIcon.d.ts +6 -0
  33. package/dist/components/data-display/comparison/icons/SearchIcon.d.ts +8 -0
  34. package/dist/components/data-display/comparison/icons/index.d.ts +12 -0
  35. package/dist/components/data-display/comparison/index.d.ts +9 -0
  36. package/dist/components/data-display/comparison/utils.d.ts +15 -0
  37. package/dist/components/data-display/context-menu/ContextMenu.d.ts +42 -0
  38. package/dist/components/data-display/datatype-icon/DataTypeIcon.d.ts +104 -0
  39. package/dist/components/data-display/delete-modal/DeleteModal.d.ts +40 -0
  40. package/dist/components/data-display/diff-viewer/DiffViewer.d.ts +64 -0
  41. package/dist/components/data-display/divider/Divider.d.ts +21 -0
  42. package/dist/components/data-display/dynamic-data-modal/DynamicDataModal.d.ts +26 -0
  43. package/dist/components/data-display/dynamic-items-cell/DynamicItemsCell.d.ts +50 -0
  44. package/dist/components/data-display/empty-state/EmptyEvent.d.ts +5 -0
  45. package/dist/components/data-display/empty-state/NoDataFound.d.ts +27 -0
  46. package/dist/components/data-display/empty-state/NoDataFoundWidgets.d.ts +20 -0
  47. package/dist/components/data-display/empty-state/PageNotFound.d.ts +33 -0
  48. package/dist/components/data-display/empty-state/UserNotFound.d.ts +28 -0
  49. package/dist/components/data-display/empty-state/empty-widget/EmptyBarChartData.d.ts +1 -0
  50. package/dist/components/data-display/empty-state/empty-widget/EmptyCardChartData.d.ts +1 -0
  51. package/dist/components/data-display/empty-state/empty-widget/EmptyContentChart.d.ts +1 -0
  52. package/dist/components/data-display/empty-state/empty-widget/EmptyCountWidgetData.d.ts +1 -0
  53. package/dist/components/data-display/empty-state/empty-widget/EmptyDonutChartData.d.ts +1 -0
  54. package/dist/components/data-display/empty-state/empty-widget/EmptyPieChatData.d.ts +1 -0
  55. package/dist/components/data-display/empty-state/empty-widget/EmptyTableWidgetData.d.ts +1 -0
  56. package/dist/components/data-display/empty-state/empty-widget/EmptyTimelineChartData.d.ts +1 -0
  57. package/dist/components/data-display/empty-state/empty-widget/index.d.ts +8 -0
  58. package/dist/components/data-display/empty-state/index.d.ts +11 -0
  59. package/dist/components/data-display/error-modal/ErrorModal.d.ts +22 -0
  60. package/dist/components/data-display/floating-element-wrapper/floating-element-dragger.d.ts +1 -0
  61. package/dist/components/data-display/in-progress/InProgress.d.ts +13 -0
  62. package/dist/components/data-display/json-grid-viewer/AddKeyModal.d.ts +7 -0
  63. package/dist/components/data-display/json-grid-viewer/JsonGridBulkFloatingBar.d.ts +2 -0
  64. package/dist/components/data-display/json-grid-viewer/JsonGridCore.d.ts +3 -0
  65. package/dist/components/data-display/json-grid-viewer/JsonGridViewer.d.ts +47 -0
  66. package/dist/components/data-display/json-grid-viewer/JsonGridViewerContext.d.ts +4 -0
  67. package/dist/components/data-display/json-grid-viewer/JsonValueDisplay.d.ts +8 -0
  68. package/dist/components/data-display/json-grid-viewer/NestedJsonGrid.d.ts +7 -0
  69. package/dist/components/data-display/json-grid-viewer/hooks.d.ts +6 -0
  70. package/dist/components/data-display/json-grid-viewer/index.d.ts +12 -0
  71. package/dist/components/data-display/json-grid-viewer/types.d.ts +64 -0
  72. package/dist/components/data-display/json-grid-viewer/utils.d.ts +4 -0
  73. package/dist/components/data-display/label/Label.d.ts +10 -0
  74. package/dist/components/data-display/label-value/LabelValue.d.ts +139 -0
  75. package/dist/components/data-display/lottie-animation/LottieAnimation.d.ts +34 -0
  76. package/dist/components/data-display/modal/Modal.d.ts +41 -0
  77. package/dist/components/data-display/pdf-viewer/PdfViewer.d.ts +45 -0
  78. package/dist/components/data-display/permission-wrapper/PermissionWrapper.d.ts +28 -0
  79. package/dist/components/data-display/popper/Popper.d.ts +57 -0
  80. package/dist/components/data-display/progress-bar/CircularProgressBar.d.ts +23 -0
  81. package/dist/components/data-display/progress-bar/LinearProgressBar.d.ts +27 -0
  82. package/dist/components/data-display/progress-bar/index.d.ts +4 -0
  83. package/dist/components/data-display/resizable-sidebar/ResizableSidebar.d.ts +48 -0
  84. package/dist/components/data-display/skeleton/Skeleton.d.ts +18 -0
  85. package/dist/components/data-display/status-color-mapping/StatusColorMapping.d.ts +29 -0
  86. package/dist/components/data-display/tag/Tag.d.ts +53 -0
  87. package/dist/components/data-display/text/Text.d.ts +41 -0
  88. package/dist/components/data-display/text-with-strike/TextWithStrike.d.ts +19 -0
  89. package/dist/components/data-display/typography/Typography.d.ts +15 -0
  90. package/dist/components/data-display/unsaved-changes-modal/UnsavedChangesModal.d.ts +30 -0
  91. package/dist/components/drag-and-drop/drag-overlay/DragOverlay.d.ts +25 -0
  92. package/dist/components/drag-and-drop/drag-overlay/index.d.ts +2 -0
  93. package/dist/components/drag-and-drop/draggable-container/DraggableContainer.d.ts +29 -0
  94. package/dist/components/drag-and-drop/draggable-container/index.d.ts +2 -0
  95. package/dist/components/feedback/confirmation-modal/ConfirmationModal.d.ts +38 -0
  96. package/dist/components/feedback/toast/Toast.d.ts +29 -0
  97. package/dist/components/floating-bar/FloatingBar.d.ts +91 -0
  98. package/dist/components/forms/base-input-field/BaseInputField.d.ts +128 -0
  99. package/dist/components/forms/checkbox/Checkbox.d.ts +55 -0
  100. package/dist/components/forms/checkbox/CheckboxComponent.d.ts +9 -0
  101. package/dist/components/forms/color-picker/ColorPicker.d.ts +60 -0
  102. package/dist/components/forms/creatable-select/CreatableSelect.d.ts +86 -0
  103. package/dist/components/forms/currency-input/CurrencyInputField.d.ts +110 -0
  104. package/dist/components/forms/currency-input/currency.constant.d.ts +13 -0
  105. package/dist/components/forms/customizable-select-field/CustomizableSelectField.d.ts +126 -0
  106. package/dist/components/forms/date-range/DateRange.d.ts +73 -0
  107. package/dist/components/forms/date-range/DateRange2.d.ts +72 -0
  108. package/dist/components/forms/date-time-field/DateTimeField.d.ts +129 -0
  109. package/dist/components/forms/debounce-input/DebounceInputField.d.ts +66 -0
  110. package/dist/components/forms/dynamic-data-input/DynamicDataInput.d.ts +64 -0
  111. package/dist/components/forms/dynamic-data-input/DynamicDataInputField.d.ts +118 -0
  112. package/dist/components/forms/field-options/FieldOptions.d.ts +5 -0
  113. package/dist/components/forms/field-options/Header.d.ts +7 -0
  114. package/dist/components/forms/field-options/Icon.d.ts +6 -0
  115. package/dist/components/forms/field-options/Item.d.ts +7 -0
  116. package/dist/components/forms/field-options/index.d.ts +2 -0
  117. package/dist/components/forms/field-options/types.d.ts +11 -0
  118. package/dist/components/forms/file-upload-dragger/FileUpload.d.ts +83 -0
  119. package/dist/components/forms/file-upload-dragger/icons.d.ts +12 -0
  120. package/dist/components/forms/formula-input/FormulaInput.d.ts +33 -0
  121. package/dist/components/forms/formula-input/index.d.ts +3 -0
  122. package/dist/components/forms/formula-input/utils.d.ts +31 -0
  123. package/dist/components/forms/icon-picker/IconPicker.d.ts +20 -0
  124. package/dist/components/forms/input-field/InputField.d.ts +62 -0
  125. package/dist/components/forms/master-data-input/MasterDataInputField.d.ts +135 -0
  126. package/dist/components/forms/md-input/MdInput.d.ts +46 -0
  127. package/dist/components/forms/multi-file-upload/MultiFileUpload.d.ts +78 -0
  128. package/dist/components/forms/number-input-field/NumberInputField.d.ts +47 -0
  129. package/dist/components/forms/percentage-input/PercentageInputField.d.ts +107 -0
  130. package/dist/components/forms/search-bar/SearchBar.d.ts +28 -0
  131. package/dist/components/forms/select-field/SelectField.d.ts +162 -0
  132. package/dist/components/forms/text-area-field/TextAreaField.d.ts +114 -0
  133. package/dist/components/forms/text-field/TextField.d.ts +48 -0
  134. package/dist/components/forms/toggle/Toggle.d.ts +108 -0
  135. package/dist/components/icons/AIExtractedIndicator.d.ts +7 -0
  136. package/dist/components/icons/AIStarIcon.d.ts +8 -0
  137. package/dist/components/icons/ArchivedIcon.d.ts +7 -0
  138. package/dist/components/icons/CheckCircle.d.ts +7 -0
  139. package/dist/components/icons/CheckSmallIcon.d.ts +7 -0
  140. package/dist/components/icons/CloseIcon.d.ts +16 -0
  141. package/dist/components/icons/CloseRounded.d.ts +9 -0
  142. package/dist/components/icons/ComingSoonIcon.d.ts +7 -0
  143. package/dist/components/icons/EditIcon.d.ts +7 -0
  144. package/dist/components/icons/HelpIcon.d.ts +6 -0
  145. package/dist/components/icons/InfoAlert.d.ts +7 -0
  146. package/dist/components/icons/InfoCircleIcon.d.ts +7 -0
  147. package/dist/components/icons/LaxIcon.d.ts +6 -0
  148. package/dist/components/icons/Required.d.ts +3 -0
  149. package/dist/components/icons/SearchIcon.d.ts +9 -0
  150. package/dist/components/layout/ComponentLoader.d.ts +20 -0
  151. package/dist/components/layout/CustomScrollbar.d.ts +46 -0
  152. package/dist/components/layout/Helmet.d.ts +29 -0
  153. package/dist/components/layout/HelmetTitle.d.ts +23 -0
  154. package/dist/components/layout/LogoLoader.d.ts +22 -0
  155. package/dist/components/layout/PageContainer.d.ts +51 -0
  156. package/dist/components/layout/index.d.ts +12 -0
  157. package/dist/components/modal/confirm-popup/ConfirmPopUp.d.ts +26 -0
  158. package/dist/components/modal/confirm-popup/index.d.ts +2 -0
  159. package/dist/components/modal/drawer/Drawer.d.ts +35 -0
  160. package/dist/components/modal/drawer/index.d.ts +2 -0
  161. package/dist/components/navigation/accordion/Accordion.d.ts +39 -0
  162. package/dist/components/navigation/accordion/index.d.ts +2 -0
  163. package/dist/components/navigation/breadcrumbs/BreadCrumb.d.ts +52 -0
  164. package/dist/components/navigation/breadcrumbs/BreadCrumbItem.d.ts +39 -0
  165. package/dist/components/navigation/breadcrumbs/index.d.ts +4 -0
  166. package/dist/components/navigation/stepper/Stepper.d.ts +45 -0
  167. package/dist/components/navigation/stepper/index.d.ts +2 -0
  168. package/dist/components/sidebar/Sidebar.d.ts +15 -0
  169. package/dist/components/sidebar/index.d.ts +2 -0
  170. package/dist/components/tooltip/Tooltip.d.ts +16 -0
  171. package/dist/components/user-avatar/NameInitialLogo.d.ts +15 -0
  172. package/dist/components/user-avatar/PersonIcon.d.ts +7 -0
  173. package/dist/components/user-avatar/StatusInfoRow.d.ts +5 -0
  174. package/dist/components/user-avatar/UserAvatar.d.ts +53 -0
  175. package/dist/components/user-avatar/UserAvatarPopper.d.ts +11 -0
  176. package/dist/components/user-avatar/UserProfilePic.d.ts +15 -0
  177. package/dist/components/user-avatar/constants.d.ts +8 -0
  178. package/dist/components/user-avatar/index.d.ts +13 -0
  179. package/dist/components/user-avatar/useDynamicPosition.d.ts +13 -0
  180. package/dist/constants/colors.d.ts +263 -0
  181. package/dist/constants/layout.d.ts +15 -0
  182. package/dist/constants/toggle.d.ts +12 -0
  183. package/dist/hooks/useEventListener.d.ts +4 -0
  184. package/dist/hooks/useIsomorphicLayoutEffect.d.ts +2 -0
  185. package/dist/hooks/useModalContainer.d.ts +23 -0
  186. package/dist/hooks/useOS.d.ts +32 -0
  187. package/dist/hooks/useOutsideClick.d.ts +28 -0
  188. package/dist/hooks/usePythonSyntax.d.ts +28 -0
  189. package/dist/hooks/useScrollToTop.d.ts +5 -0
  190. package/dist/hooks/useTheme.d.ts +6 -0
  191. package/dist/index.d.ts +212 -0
  192. package/dist/lib/utils.d.ts +2 -0
  193. package/dist/services/monacoManager.d.ts +28 -0
  194. package/dist/types/icon-picker.d.ts +2 -0
  195. package/dist/types/index.d.ts +70 -0
  196. package/dist/utils/countryFlags.d.ts +5 -0
  197. package/dist/utils/formatters.d.ts +24 -0
  198. package/dist/utils/messageConstants.d.ts +88 -0
  199. package/dist/utils/tagUtils.d.ts +12 -0
  200. package/dist/utils/utilities.d.ts +24 -0
  201. package/package.json +1 -1
@@ -0,0 +1,53 @@
1
+ import { FC } from 'react';
2
+ export type UserAvatarSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
3
+ export type UserDetailsTeam = {
4
+ id?: string;
5
+ name: string;
6
+ color?: string;
7
+ };
8
+ export type UserDetails = {
9
+ email?: string;
10
+ username?: string;
11
+ teams?: UserDetailsTeam[];
12
+ group?: string;
13
+ clearanceLevel?: number | string;
14
+ region?: string;
15
+ };
16
+ export type UserAvatarProps = {
17
+ firstName?: string;
18
+ lastName?: string;
19
+ email?: string;
20
+ enablePopper?: boolean;
21
+ profilePic?: string;
22
+ size?: UserAvatarSize;
23
+ hoverSize?: UserAvatarSize;
24
+ containerClassName?: string;
25
+ className?: string;
26
+ userId?: string;
27
+ lastViewedOn?: string;
28
+ isActive?: boolean;
29
+ statusIndicator?: boolean;
30
+ /** User details to display in the popper - replaces the useTeamMemberFilter hook */
31
+ userDetails?: UserDetails | null;
32
+ /** Whether user details are being fetched */
33
+ isFetchingUserDetails?: boolean;
34
+ /** Optional token for authenticated image loading */
35
+ authToken?: string;
36
+ /** Callback triggered when mouse enters the avatar */
37
+ onHover?: () => void;
38
+ };
39
+ /**
40
+ * UserAvatar component for displaying user profile pictures with hover popper
41
+ *
42
+ * @example
43
+ * ```tsx
44
+ * <UserAvatar
45
+ * firstName="John"
46
+ * lastName="Doe"
47
+ * email="john@example.com"
48
+ * profilePic="/avatar.jpg"
49
+ * userDetails={{ teams: [{ name: 'Engineering', color: '#0066cc' }], group: 'Admin' }}
50
+ * />
51
+ * ```
52
+ */
53
+ export declare const UserAvatar: FC<UserAvatarProps>;
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ export type UserAvatarPopperPlacement = 'auto' | 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end' | 'right-start' | 'right-end' | 'left-start' | 'left-end';
3
+ export interface UserAvatarPopperProps {
4
+ isOpen: boolean;
5
+ onClose: () => void;
6
+ anchorEl: HTMLElement | null;
7
+ placement?: UserAvatarPopperPlacement;
8
+ children: React.ReactNode;
9
+ className?: string;
10
+ }
11
+ export declare const UserAvatarPopper: ({ isOpen, onClose, anchorEl, placement, children, className }: UserAvatarPopperProps) => React.ReactPortal;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ export type UserProfilePicProps = {
3
+ url?: string;
4
+ className: string;
5
+ username?: string;
6
+ };
7
+ /**
8
+ * UserProfilePic component displays a user's profile picture with fallback to initials
9
+ *
10
+ * @example
11
+ * ```tsx
12
+ * <UserProfilePic url="/avatar.jpg" username="John Doe" className="w-10 h-10 rounded-full" />
13
+ * ```
14
+ */
15
+ export declare const UserProfilePic: React.FC<UserProfilePicProps>;
@@ -0,0 +1,8 @@
1
+ export declare const sizeClasses: {
2
+ xs: string;
3
+ sm: string;
4
+ md: string;
5
+ lg: string;
6
+ xl: string;
7
+ };
8
+ export declare const getInitials: (name: string) => string;
@@ -0,0 +1,13 @@
1
+ export { UserAvatar } from './UserAvatar';
2
+ export type { UserAvatarProps, UserAvatarSize, UserDetails, UserDetailsTeam } from './UserAvatar';
3
+ export { UserAvatarPopper } from './UserAvatarPopper';
4
+ export type { UserAvatarPopperProps, UserAvatarPopperPlacement } from './UserAvatarPopper';
5
+ export { StatusInfoRow } from './StatusInfoRow';
6
+ export type { StatusInfoRowProps } from './StatusInfoRow';
7
+ export { PersonIcon } from './PersonIcon';
8
+ export { sizeClasses, getInitials } from './constants';
9
+ export { useDynamicPosition } from './useDynamicPosition';
10
+ export { NameInitialLogo } from './NameInitialLogo';
11
+ export type { NameInitialLogoProps } from './NameInitialLogo';
12
+ export { UserProfilePic } from './UserProfilePic';
13
+ export type { UserProfilePicProps } from './UserProfilePic';
@@ -0,0 +1,13 @@
1
+ type Position = {
2
+ vertical: 'top' | 'bottom';
3
+ horizontal: 'left' | 'right';
4
+ };
5
+ export declare const useDynamicPosition: () => {
6
+ triggerRef: import("react").MutableRefObject<HTMLDivElement>;
7
+ dropdownRef: import("react").MutableRefObject<HTMLDivElement>;
8
+ position: Position;
9
+ isVisible: boolean;
10
+ show: () => void;
11
+ hide: () => void;
12
+ };
13
+ export {};
@@ -0,0 +1,263 @@
1
+ /**
2
+ * Color palette for tag components
3
+ */
4
+ export declare const COLORS: {
5
+ readonly primary: {
6
+ readonly 50: "#E6F1FC";
7
+ readonly 100: "#C6E1F9";
8
+ readonly 200: "#8AC0F2";
9
+ readonly 300: "#54A4EC";
10
+ readonly 400: "#3392E9";
11
+ readonly 500: "#0077E3";
12
+ readonly 600: "#016DCF";
13
+ readonly 700: "#0054A1";
14
+ readonly 800: "#00417D";
15
+ readonly 900: "#00325F";
16
+ readonly 950: "#001c35";
17
+ readonly 975: "#00111f";
18
+ };
19
+ readonly black: {
20
+ readonly 50: "#f0f0f0";
21
+ readonly 100: "#d9d9d9";
22
+ readonly 200: "#bfbfbf";
23
+ readonly 300: "#8c8c8c";
24
+ readonly 400: "#595959";
25
+ readonly 500: "#454545";
26
+ readonly 600: "#262626";
27
+ readonly 700: "#1f1f1f";
28
+ readonly 800: "#141414";
29
+ readonly 900: "#000000";
30
+ readonly 950: "#0a0a0a";
31
+ readonly 975: "#050505";
32
+ };
33
+ readonly blue: {
34
+ readonly 50: "#E6F1FC";
35
+ readonly 100: "#C6E1F9";
36
+ readonly 200: "#8AC0F2";
37
+ readonly 300: "#54A4EC";
38
+ readonly 400: "#3392E9";
39
+ readonly 500: "#0077E3";
40
+ readonly 600: "#016DCF";
41
+ readonly 700: "#0054A1";
42
+ readonly 800: "#00417D";
43
+ readonly 900: "#00325F";
44
+ readonly 950: "#002547";
45
+ readonly 975: "#001529";
46
+ };
47
+ readonly success: {
48
+ readonly 50: "#ECFDF3";
49
+ readonly 100: "#D1FADF";
50
+ readonly 200: "#A6F4C5";
51
+ readonly 300: "#6CE9A6";
52
+ readonly 400: "#32D583";
53
+ readonly 500: "#12B76A";
54
+ readonly 600: "#039855";
55
+ readonly 700: "#027A48";
56
+ readonly 800: "#05603A";
57
+ readonly 900: "#054F31";
58
+ readonly 950: "#033625";
59
+ readonly 975: "#022419";
60
+ };
61
+ readonly neutral: {
62
+ readonly 50: "#F9FAFB";
63
+ readonly 100: "#F2F4F7";
64
+ readonly 200: "#EAECF0";
65
+ readonly 300: "#D0D5DD";
66
+ readonly 400: "#98A2B3";
67
+ readonly 500: "#667085";
68
+ readonly 600: "#475467";
69
+ readonly 700: "#344054";
70
+ readonly 800: "#1D2939";
71
+ readonly 900: "#101828";
72
+ readonly 950: "#0c1219";
73
+ readonly 975: "#080a0f";
74
+ };
75
+ readonly error: {
76
+ readonly 50: "#FEF3F2";
77
+ readonly 100: "#FEE4E2";
78
+ readonly 200: "#FECDCA";
79
+ readonly 300: "#FDA29B";
80
+ readonly 400: "#F97066";
81
+ readonly 500: "#F04438";
82
+ readonly 600: "#D92D20";
83
+ readonly 700: "#B42318";
84
+ readonly 800: "#912018";
85
+ readonly 900: "#7A271A";
86
+ readonly 950: "#3d1008";
87
+ readonly 975: "#2a0b05";
88
+ };
89
+ readonly warning: {
90
+ readonly 50: "#FFFAEB";
91
+ readonly 100: "#FEF0C7";
92
+ readonly 200: "#FEDF89";
93
+ readonly 300: "#FEC84B";
94
+ readonly 400: "#FDB022";
95
+ readonly 500: "#F79009";
96
+ readonly 600: "#DC6803";
97
+ readonly 700: "#B54708";
98
+ readonly 800: "#93370D";
99
+ readonly 900: "#7A2E0E";
100
+ readonly 950: "#662505";
101
+ readonly 975: "#451803";
102
+ };
103
+ readonly teal: {
104
+ readonly 50: "#ebf5f5";
105
+ readonly 100: "#c2e0df";
106
+ readonly 200: "#a4d1d0";
107
+ readonly 300: "#7abcba";
108
+ readonly 400: "#61afad";
109
+ readonly 500: "#399b98";
110
+ readonly 600: "#348d8a";
111
+ readonly 700: "#286e6c";
112
+ readonly 800: "#1f5554";
113
+ readonly 900: "#184140";
114
+ readonly 950: "#133534";
115
+ readonly 975: "#0c2222";
116
+ };
117
+ readonly green: {
118
+ readonly 50: "#f2f7f2";
119
+ readonly 100: "#d5e5d5";
120
+ readonly 200: "#c1d9c1";
121
+ readonly 300: "#a5c7a5";
122
+ readonly 400: "#94bd93";
123
+ readonly 500: "#79ac78";
124
+ readonly 600: "#6e9d6d";
125
+ readonly 700: "#567a55";
126
+ readonly 800: "#435f42";
127
+ readonly 900: "#334832";
128
+ readonly 950: "#001e00";
129
+ readonly 975: "#182818";
130
+ };
131
+ readonly yellow: {
132
+ readonly 50: "#fffaed";
133
+ readonly 100: "#fff0c7";
134
+ readonly 200: "#ffe8ac";
135
+ readonly 300: "#ffde86";
136
+ readonly 400: "#ffd76f";
137
+ readonly 500: "#ffcd4b";
138
+ readonly 600: "#e8bb44";
139
+ readonly 700: "#b59235";
140
+ readonly 800: "#8c7129";
141
+ readonly 900: "#6b5620";
142
+ readonly 950: "#524314";
143
+ readonly 975: "#382e0e";
144
+ };
145
+ readonly orange: {
146
+ readonly 50: "#fef4e8";
147
+ readonly 100: "#fddeb7";
148
+ readonly 200: "#fcce94";
149
+ readonly 300: "#fbb764";
150
+ readonly 400: "#faa945";
151
+ readonly 500: "#f99417";
152
+ readonly 600: "#e38715";
153
+ readonly 700: "#b16910";
154
+ readonly 800: "#89510d";
155
+ readonly 900: "#693e0a";
156
+ readonly 950: "#4d2d07";
157
+ readonly 975: "#331e05";
158
+ };
159
+ readonly peach: {
160
+ readonly 50: "#fceef3";
161
+ readonly 100: "#f5cad9";
162
+ readonly 200: "#f0b0c6";
163
+ readonly 300: "#ea8cad";
164
+ readonly 400: "#e5759d";
165
+ readonly 500: "#df5384";
166
+ readonly 600: "#cb4c78";
167
+ readonly 700: "#9e3b5e";
168
+ readonly 800: "#7b2e49";
169
+ readonly 900: "#5e2337";
170
+ readonly 950: "#451a2b";
171
+ readonly 975: "#2e111d";
172
+ };
173
+ readonly red: {
174
+ readonly 50: "#fceaeb";
175
+ readonly 100: "#f6bec0";
176
+ readonly 200: "#f29ea2";
177
+ readonly 300: "#ec7278";
178
+ readonly 400: "#e9575d";
179
+ readonly 500: "#e32d35";
180
+ readonly 600: "#cf2930";
181
+ readonly 700: "#a12026";
182
+ readonly 800: "#7d191d";
183
+ readonly 900: "#5f1316";
184
+ readonly 950: "#470c0f";
185
+ readonly 975: "#2f080a";
186
+ };
187
+ readonly purple: {
188
+ readonly 50: "#f5e7ff";
189
+ readonly 100: "#dfb4ff";
190
+ readonly 200: "#d090ff";
191
+ readonly 300: "#bb5dff";
192
+ readonly 400: "#ad3dff";
193
+ readonly 500: "#990dff";
194
+ readonly 600: "#8b0ce8";
195
+ readonly 700: "#6d09b5";
196
+ readonly 800: "#54078c";
197
+ readonly 900: "#40056b";
198
+ readonly 950: "#300450";
199
+ readonly 975: "#200336";
200
+ };
201
+ readonly navy: {
202
+ readonly 50: "#eaebf6";
203
+ readonly 100: "#bebfe2";
204
+ readonly 200: "#9ea1d3";
205
+ readonly 300: "#7276bf";
206
+ readonly 400: "#575bb3";
207
+ readonly 500: "#2d32a0";
208
+ readonly 600: "#292e92";
209
+ readonly 700: "#202472";
210
+ readonly 800: "#191c58";
211
+ readonly 900: "#131543";
212
+ readonly 950: "#0d0e2f";
213
+ readonly 975: "#090a20";
214
+ };
215
+ readonly grey: {
216
+ readonly 50: "#f2f2f2";
217
+ readonly 100: "#d5d5d5";
218
+ readonly 200: "#c1c1c1";
219
+ readonly 300: "#a5a5a5";
220
+ readonly 400: "#939393";
221
+ readonly 500: "#787878";
222
+ readonly 600: "#6d6d6d";
223
+ readonly 700: "#555555";
224
+ readonly 800: "#424242";
225
+ readonly 900: "#323232";
226
+ readonly 950: "#252525";
227
+ readonly 975: "#191919";
228
+ };
229
+ };
230
+ /**
231
+ * Available color names for tag components
232
+ */
233
+ export declare const SELECT_COLORS: readonly [{
234
+ readonly title: "Blue";
235
+ readonly color: "blue";
236
+ }, {
237
+ readonly title: "Green";
238
+ readonly color: "green";
239
+ }, {
240
+ readonly title: "Teal";
241
+ readonly color: "teal";
242
+ }, {
243
+ readonly title: "Red";
244
+ readonly color: "red";
245
+ }, {
246
+ readonly title: "Yellow";
247
+ readonly color: "yellow";
248
+ }, {
249
+ readonly title: "Orange";
250
+ readonly color: "orange";
251
+ }, {
252
+ readonly title: "Peach";
253
+ readonly color: "peach";
254
+ }, {
255
+ readonly title: "Grey";
256
+ readonly color: "grey";
257
+ }, {
258
+ readonly title: "Purple";
259
+ readonly color: "purple";
260
+ }, {
261
+ readonly title: "Navy";
262
+ readonly color: "navy";
263
+ }];
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Layout-related constants
3
+ */
4
+ /**
5
+ * Available page modes
6
+ */
7
+ export declare enum MODES {
8
+ COMPARISON = "comparison",
9
+ EDIT = "edit",
10
+ FOCUS_EDIT = "focusEdit"
11
+ }
12
+ /**
13
+ * Animation duration for layout transitions in milliseconds
14
+ */
15
+ export declare const OPEN_DURATION_MS = 500;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Toggle label direction options
3
+ */
4
+ export declare enum TOGGLE_LABEL_DIRECTION {
5
+ LEFT = "left",
6
+ RIGHT = "right",
7
+ TOP = "top"
8
+ }
9
+ /**
10
+ * Type derived from TOGGLE_LABEL_DIRECTION enum
11
+ */
12
+ export type TToggleDirection = `${TOGGLE_LABEL_DIRECTION}`;
@@ -0,0 +1,4 @@
1
+ import type { RefObject } from 'react';
2
+ export declare function useEventListener<K extends keyof WindowEventMap>(eventName: K | null, handler: (event: WindowEventMap[K]) => void, element?: undefined, options?: boolean | AddEventListenerOptions): void;
3
+ export declare function useEventListener<K extends keyof HTMLElementEventMap, T extends HTMLElement = HTMLDivElement>(eventName: K | null, handler: (event: HTMLElementEventMap[K]) => void, element: RefObject<T>, options?: boolean | AddEventListenerOptions): void;
4
+ export declare function useEventListener<K extends keyof DocumentEventMap>(eventName: K | null, handler: (event: DocumentEventMap[K]) => void, element: RefObject<Document>, options?: boolean | AddEventListenerOptions): void;
@@ -0,0 +1,2 @@
1
+ import { useEffect } from 'react';
2
+ export declare const useIsomorphicLayoutEffect: typeof useEffect;
@@ -0,0 +1,23 @@
1
+ export interface UseModalContainerOptions {
2
+ /** Primary container ID to search for */
3
+ primaryContainerId?: string;
4
+ /** Fallback container ID if primary not found */
5
+ fallbackContainerId?: string;
6
+ /** Maximum number of retry attempts */
7
+ maxRetries?: number;
8
+ /** Delay between retries in milliseconds */
9
+ retryDelay?: number;
10
+ }
11
+ /**
12
+ * Hook to find a modal container element with retry mechanism
13
+ * Searches across current document and parent frame if available
14
+ *
15
+ * @example
16
+ * ```tsx
17
+ * const container = useModalContainer({
18
+ * primaryContainerId: 'layout-app-main-content-container',
19
+ * fallbackContainerId: 'full-screen-container'
20
+ * });
21
+ * ```
22
+ */
23
+ export declare const useModalContainer: (options?: UseModalContainerOptions) => HTMLElement;
@@ -0,0 +1,32 @@
1
+ export type OS = 'macos' | 'windows' | 'linux' | 'other';
2
+ /**
3
+ * Detects the current operating system
4
+ */
5
+ export declare const detectOS: () => OS;
6
+ /**
7
+ * Hook to detect the current operating system
8
+ */
9
+ export declare const useOS: () => OS;
10
+ /**
11
+ * Check if the current OS is macOS
12
+ */
13
+ export declare const isMacOS: () => boolean;
14
+ /**
15
+ * Mapping of generic shortcut keys to OS-specific symbols
16
+ */
17
+ export declare const SHORTCUT_KEY_MAP: Record<string, {
18
+ macos: string;
19
+ other: string;
20
+ }>;
21
+ /**
22
+ * Converts a shortcut key to its OS-specific representation
23
+ */
24
+ export declare const mapShortcutKey: (key: string, os?: OS) => string;
25
+ /**
26
+ * Converts an array of shortcut keys to their OS-specific representations
27
+ */
28
+ export declare const mapShortcutKeys: (keys: string[], os?: OS) => string[];
29
+ /**
30
+ * Hook to convert shortcut keys to OS-specific representations
31
+ */
32
+ export declare const useShortcutKeys: (keys: string[]) => string[];
@@ -0,0 +1,28 @@
1
+ import { type RefObject } from "react";
2
+ /**
3
+ * Props for the useOutsideClick hook
4
+ */
5
+ export interface UseOutsideClickProps {
6
+ /** Reference to the element to detect outside clicks for */
7
+ ref: RefObject<HTMLElement>;
8
+ /** Handler function called when clicking outside the referenced element */
9
+ handler: () => void;
10
+ /** Whether the hook is active */
11
+ enabled?: boolean;
12
+ }
13
+ /**
14
+ * Custom hook to detect clicks outside a referenced element
15
+ *
16
+ * @example
17
+ * ```tsx
18
+ * const menuRef = useRef<HTMLDivElement>(null);
19
+ *
20
+ * useOutsideClick({
21
+ * ref: menuRef,
22
+ * handler: () => setIsOpen(false),
23
+ * enabled: isOpen
24
+ * });
25
+ * ```
26
+ */
27
+ export declare const useOutsideClick: ({ ref, handler, enabled, }: UseOutsideClickProps) => void;
28
+ export default useOutsideClick;
@@ -0,0 +1,28 @@
1
+ import { type Monaco } from '@monaco-editor/react';
2
+ export interface UsePythonSyntaxProps {
3
+ monacoEditor: Monaco | null;
4
+ currentEditorModel: any;
5
+ code: string;
6
+ setCode: (code: string) => void;
7
+ enable: boolean;
8
+ checkSyntaxAPI?: (code: string) => Promise<{
9
+ data: {
10
+ error?: {
11
+ message: string;
12
+ line?: number;
13
+ column?: number;
14
+ };
15
+ };
16
+ }>;
17
+ formatCodeAPI?: (code: string) => Promise<{
18
+ data: {
19
+ formatted_code?: string;
20
+ };
21
+ }>;
22
+ }
23
+ export declare const usePythonSyntax: ({ monacoEditor, currentEditorModel, code, setCode, enable, checkSyntaxAPI, formatCodeAPI }: UsePythonSyntaxProps) => {
24
+ pythonError: any;
25
+ pythonLoading: boolean;
26
+ handleCheckSyntax: () => Promise<void>;
27
+ handleFormatCode: () => Promise<void>;
28
+ };
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Hook that scrolls to the top of the page when dependencies change
3
+ * @param deps - Array of dependencies to trigger scroll
4
+ */
5
+ export declare const useScrollToTop: (deps?: unknown[]) => void;
@@ -0,0 +1,6 @@
1
+ import { type ThemeContextType } from '../types';
2
+ /**
3
+ * Simple theme hook for the CodeEditor component
4
+ * In a real application, this would be connected to a global theme context
5
+ */
6
+ export declare const useTheme: () => ThemeContextType;