1mpacto-react-ui 0.2.0-beta.2 → 0.2.0-beta.21

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 (162) hide show
  1. package/dist/assets/_colors.scss +327 -1
  2. package/dist/assets/_mixins.scss +44 -0
  3. package/dist/assets/_screen.scss +6 -0
  4. package/dist/assets/_typography.scss +654 -0
  5. package/dist/assets/colors.css +41 -0
  6. package/dist/assets/core.css +1 -1
  7. package/dist/assets/fontfamily.css +1 -1
  8. package/dist/assets/fonts/PlusJakartaSans-Italic-VariableFont_wght.ttf +0 -0
  9. package/dist/assets/fonts/PlusJakartaSans-VariableFont_wght.ttf +0 -0
  10. package/dist/assets/icons/arrow-narrow-down.svg +3 -3
  11. package/dist/assets/screen.css +8 -0
  12. package/dist/assets/style.css +1 -1
  13. package/dist/assets/typography.css +132 -0
  14. package/dist/index.cjs +150 -116
  15. package/dist/index.cjs.map +1 -1
  16. package/dist/index.d.ts +4 -2
  17. package/dist/index.mjs +28958 -16226
  18. package/dist/index.mjs.map +1 -1
  19. package/dist/package.json.d.ts +132 -126
  20. package/dist/src/components/Breadcrumbs/Breadcrumbs.d.ts +1 -1
  21. package/dist/src/components/Breadcrumbs/Breadcrumbs.stories.d.ts +1 -1
  22. package/dist/src/components/Collapse/CollapseV2.d.ts +3 -0
  23. package/dist/src/components/Collapse/CollapseV2.stories.d.ts +18 -0
  24. package/dist/src/components/Colors/Colors.stories.d.ts +13 -0
  25. package/dist/src/components/Input/InputInnerLabel.d.ts +4 -0
  26. package/dist/src/components/Input/InputInnerLabel.stories.d.ts +31 -0
  27. package/dist/src/components/Pagination/Pagination.d.ts +1 -1
  28. package/dist/src/components/Pagination/Pagination.stories.d.ts +1 -1
  29. package/dist/src/components/RadioCheckbox/RadioCheckbox.stories.d.ts +189 -7
  30. package/dist/src/components/SelectDropdownContainer/SelectDropdownContainer.stories.d.ts +355 -4
  31. package/dist/src/components/SelectDropdownContainer/styleConfig.d.ts +4 -1
  32. package/dist/src/components/Sidebar/Sidebar.stories.d.ts +171 -2
  33. package/dist/src/components/Table/Table.d.ts +1 -1
  34. package/dist/src/components/Table/Table.stories.d.ts +248 -2
  35. package/dist/src/components/Table/TableSubMobile.d.ts +3 -0
  36. package/dist/src/components/Tabs/Tabs.d.ts +1 -1
  37. package/dist/src/components/Tabs/Tabs.stories.d.ts +1 -1
  38. package/dist/src/components/TextEditor/TextEditor.stories.d.ts +75 -1
  39. package/dist/src/components/Textarea/TextareaInnerLabel.d.ts +4 -0
  40. package/dist/src/components/Textarea/TextareaInnerLabel.stories.d.ts +25 -0
  41. package/dist/src/components/TimeRange/TimeRange.d.ts +3 -0
  42. package/dist/src/components/TimeRange/TimeRange.stories.d.ts +19 -0
  43. package/dist/src/components/Typography/Typography.stories.d.ts +13 -0
  44. package/dist/src/components/Upload/UploadImage.d.ts +1 -1
  45. package/dist/src/components/Upload/UploadImage.stories.d.ts +1 -1
  46. package/dist/src/components/Upload/UploadMultipleFile.d.ts +1 -1
  47. package/dist/src/components/Upload/UploadMultipleFile.stories.d.ts +1 -1
  48. package/dist/src/components/index.d.ts +14 -8
  49. package/dist/src/components/screens/Screens.stories.d.ts +13 -0
  50. package/dist/src/config/components/font.d.ts +6 -0
  51. package/dist/src/config/components/typography.d.ts +13 -1
  52. package/dist/src/config/tailwind/index.d.ts +2 -1
  53. package/dist/src/config/tailwind/nativeScreen.d.ts +3 -0
  54. package/dist/src/config/tailwind/typography.d.ts +1 -0
  55. package/dist/src/hooks/index.d.ts +5 -3
  56. package/dist/src/hooks/useCountdown.d.ts +6 -3
  57. package/dist/src/hooks/useOtpInput.d.ts +42 -0
  58. package/dist/src/interfaces/components/Badges/index.d.ts +2 -1
  59. package/dist/src/interfaces/components/Breadcrumbs/index.d.ts +6 -2
  60. package/dist/src/interfaces/components/Button/index.d.ts +2 -2
  61. package/dist/src/interfaces/components/Calendar/index.d.ts +1 -1
  62. package/dist/src/interfaces/components/Chips/index.d.ts +2 -1
  63. package/dist/src/interfaces/components/Collapse/index.d.ts +7 -0
  64. package/dist/src/interfaces/components/Input/index.d.ts +13 -0
  65. package/dist/src/interfaces/components/Pagination/index.d.ts +2 -0
  66. package/dist/src/interfaces/components/Popover/index.d.ts +3 -1
  67. package/dist/src/interfaces/components/RadioCheckbox/RadioCheckbox.d.ts +3 -2
  68. package/dist/src/interfaces/components/RadioCheckbox/RadioCheckboxLabel.d.ts +2 -1
  69. package/dist/src/interfaces/components/SelectDropdownContainer/index.d.ts +1 -1
  70. package/dist/src/interfaces/components/Sidebar/index.d.ts +7 -4
  71. package/dist/src/interfaces/components/Switch/index.d.ts +1 -1
  72. package/dist/src/interfaces/components/Table/index.d.ts +38 -6
  73. package/dist/src/interfaces/components/Tabs/index.d.ts +6 -2
  74. package/dist/src/interfaces/components/Textarea/index.d.ts +13 -0
  75. package/dist/src/interfaces/components/TimeRange/index.d.ts +28 -0
  76. package/dist/src/interfaces/components/TruncateComponent/index.d.ts +1 -3
  77. package/dist/src/interfaces/components/UploadFile/index.d.ts +2 -0
  78. package/dist/src/utils/common.d.ts +7 -4
  79. package/dist/tinymce/CHANGELOG.md +3785 -3785
  80. package/dist/tinymce/js/tinymce/langs/README.md +3 -3
  81. package/dist/tinymce/js/tinymce/license.md +6 -6
  82. package/dist/tinymce/js/tinymce/notices.txt +21 -21
  83. package/dist/tinymce/js/tinymce/plugins/codesample/plugin.min.js +8 -8
  84. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/ar.js +92 -92
  85. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/bg_BG.js +92 -92
  86. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/ca.js +92 -92
  87. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/cs.js +92 -92
  88. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/da.js +92 -92
  89. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/de.js +92 -92
  90. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/el.js +92 -92
  91. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/en.js +92 -92
  92. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/es.js +92 -92
  93. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/eu.js +92 -92
  94. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/fa.js +92 -92
  95. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/fi.js +92 -92
  96. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/fr_FR.js +92 -92
  97. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/he_IL.js +92 -92
  98. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/hi.js +92 -92
  99. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/hr.js +92 -92
  100. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/hu_HU.js +92 -92
  101. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/id.js +92 -92
  102. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/it.js +92 -92
  103. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/ja.js +92 -92
  104. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/kk.js +92 -92
  105. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/ko_KR.js +92 -92
  106. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/ms.js +92 -92
  107. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/nb_NO.js +92 -92
  108. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/nl.js +92 -92
  109. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/pl.js +92 -92
  110. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/pt_BR.js +92 -92
  111. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/pt_PT.js +92 -92
  112. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/ro.js +92 -92
  113. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/ru.js +92 -92
  114. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/sk.js +92 -92
  115. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/sl_SI.js +92 -92
  116. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/sv_SE.js +92 -92
  117. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/th_TH.js +92 -92
  118. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/tr.js +92 -92
  119. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/uk.js +92 -92
  120. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/vi.js +92 -92
  121. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/zh_CN.js +86 -86
  122. package/dist/tinymce/js/tinymce/plugins/help/js/i18n/keynav/zh_TW.js +92 -92
  123. package/dist/tinymce/js/tinymce/skins/content/dark/content.js +9 -9
  124. package/dist/tinymce/js/tinymce/skins/content/dark/content.min.css +10 -10
  125. package/dist/tinymce/js/tinymce/skins/content/default/content.js +9 -9
  126. package/dist/tinymce/js/tinymce/skins/content/default/content.min.css +10 -10
  127. package/dist/tinymce/js/tinymce/skins/content/document/content.js +9 -9
  128. package/dist/tinymce/js/tinymce/skins/content/document/content.min.css +10 -10
  129. package/dist/tinymce/js/tinymce/skins/content/tinymce-5/content.js +9 -9
  130. package/dist/tinymce/js/tinymce/skins/content/tinymce-5/content.min.css +10 -10
  131. package/dist/tinymce/js/tinymce/skins/content/tinymce-5-dark/content.js +9 -9
  132. package/dist/tinymce/js/tinymce/skins/content/tinymce-5-dark/content.min.css +10 -10
  133. package/dist/tinymce/js/tinymce/skins/content/writer/content.js +9 -9
  134. package/dist/tinymce/js/tinymce/skins/content/writer/content.min.css +10 -10
  135. package/dist/tinymce/js/tinymce/skins/ui/oxide/content.inline.js +9 -9
  136. package/dist/tinymce/js/tinymce/skins/ui/oxide/content.inline.min.css +10 -10
  137. package/dist/tinymce/js/tinymce/skins/ui/oxide/content.js +9 -9
  138. package/dist/tinymce/js/tinymce/skins/ui/oxide/content.min.css +10 -10
  139. package/dist/tinymce/js/tinymce/skins/ui/oxide/skin.min.css +1 -1
  140. package/dist/tinymce/js/tinymce/skins/ui/oxide/skin.shadowdom.min.css +1 -1
  141. package/dist/tinymce/js/tinymce/skins/ui/oxide-dark/content.inline.js +9 -9
  142. package/dist/tinymce/js/tinymce/skins/ui/oxide-dark/content.inline.min.css +10 -10
  143. package/dist/tinymce/js/tinymce/skins/ui/oxide-dark/content.js +9 -9
  144. package/dist/tinymce/js/tinymce/skins/ui/oxide-dark/content.min.css +10 -10
  145. package/dist/tinymce/js/tinymce/skins/ui/oxide-dark/skin.min.css +1 -1
  146. package/dist/tinymce/js/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.css +1 -1
  147. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5/content.inline.js +9 -9
  148. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5/content.inline.min.css +10 -10
  149. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5/content.js +9 -9
  150. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5/content.min.css +10 -10
  151. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5/skin.min.css +1 -1
  152. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5/skin.shadowdom.min.css +1 -1
  153. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5-dark/content.inline.js +9 -9
  154. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css +10 -10
  155. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5-dark/content.js +9 -9
  156. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5-dark/content.min.css +10 -10
  157. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5-dark/skin.min.css +1 -1
  158. package/dist/tinymce/js/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.min.css +1 -1
  159. package/dist/tinymce/js/tinymce/tinymce.d.ts +3350 -3350
  160. package/dist/tinymce/js/tinymce/tinymce.min.js +10 -10
  161. package/dist/types-external/table.d.ts +15 -12
  162. package/package.json +132 -126
@@ -0,0 +1,42 @@
1
+ import { default as React } from 'react';
2
+ export interface IUseOtpInput {
3
+ id?: string;
4
+ numInputs: number;
5
+ onComplete?: (otp: string) => void;
6
+ disableFocusOnEdit?: boolean;
7
+ blurOnComplete?: boolean;
8
+ disableOnComplete?: boolean;
9
+ }
10
+ export interface IInputProps {
11
+ id: string;
12
+ ref: (el: HTMLInputElement | null) => void;
13
+ value: string;
14
+ onChange: (e: React.ChangeEvent<HTMLInputElement>) => void;
15
+ onKeyDown: (e: React.KeyboardEvent<HTMLInputElement>) => void;
16
+ onPaste: (e: React.ClipboardEvent<HTMLInputElement>) => void;
17
+ onFocus: (e: React.FocusEvent<HTMLInputElement>) => void;
18
+ disabled: boolean;
19
+ type: 'text';
20
+ inputMode: 'numeric';
21
+ autoComplete: 'one-time-code';
22
+ 'aria-label': string;
23
+ }
24
+ export interface IInputData {
25
+ id: string;
26
+ ref: (el: HTMLInputElement | null) => void;
27
+ value: string;
28
+ disabled: boolean;
29
+ type: 'text';
30
+ inputMode: 'numeric';
31
+ isOtpFilled: boolean;
32
+ }
33
+ export interface IUseOtpInputReturn {
34
+ getInputProps: (index: number) => IInputProps;
35
+ getInputData: (index: number) => IInputData;
36
+ clearOtp: () => void;
37
+ otpValues: string[];
38
+ otpString: string;
39
+ isOtpComplete: boolean;
40
+ }
41
+ export declare const useOtpInput: ({ id, numInputs, onComplete, disableFocusOnEdit, blurOnComplete, disableOnComplete, }: IUseOtpInput) => IUseOtpInputReturn;
42
+ export default useOtpInput;
@@ -1,11 +1,12 @@
1
1
  import { ReactNode } from 'react';
2
2
  import { IBorderRadius } from '../../../config/components/borderRadius';
3
3
  import { Itypography } from '../../../config/components/typography';
4
+ import { TFont } from '../../../config/components/font';
4
5
  export interface IBadges extends React.HTMLAttributes<HTMLSpanElement> {
5
6
  children: ReactNode | ReactNode[];
6
7
  className?: string | undefined;
7
8
  rounded?: IBorderRadius;
8
9
  variants?: 'filled-gray-600' | 'filled-green-600' | 'filled-green-50' | 'filled-blue-gray-50' | 'filled-red-500' | 'filled-blue-600' | 'filled-amber-800' | 'filled-pink-600' | 'filled-lime-700' | 'filled-lime-900-bg_lime-100' | 'filled-red-900' | 'filled-laba-green-10' | 'filled-cyan-800-bg_cyan-100' | 'ghost-gray-200' | 'ghost-green-100' | 'ghost-red-100' | 'ghost-blue-100' | 'ghost-amber-100' | 'ghost-laba-orange-01' | 'ghost-laba-green-01' | 'ghost-laba-green-02' | 'ghost-laba-blue-02' | 'ghost-laba-blue-01' | 'ghost-laba-grey-05' | 'ghost-laba-red-01' | 'outline-gray-600' | 'outline-green-600' | 'outline-red-500' | 'outline-blue-600' | 'outline-amber-800' | 'outline-laba-blue-01' | 'outline-laba-orange-06' | 'outline-laba-orange-06-bg_laba-orange-01' | 'outline-laba-red-06' | 'outline-laba-green-06';
9
- fonts?: 'lato' | 'inter';
10
+ fonts?: TFont;
10
11
  typography?: Itypography;
11
12
  }
@@ -1,9 +1,10 @@
1
1
  import { ReactNode, ElementType, HTMLAttributes } from 'react';
2
2
  import { IGap } from '../../../config/components/gap';
3
+ import { TFont } from '../../../config/components/font';
3
4
  export interface IBreadcrumbs<T extends ElementType> extends HTMLAttributes<HTMLDivElement> {
4
5
  as?: T;
5
- fonts?: 'lato' | 'inter';
6
- variants?: 'laba-blue-10' | 'blue-700';
6
+ fonts?: TFont;
7
+ variants?: 'laba-blue-10' | 'blue-700' | 'bill-secondary-800';
7
8
  urls: string[];
8
9
  textBreadcrumbs: string[];
9
10
  onClickBreadcrumbs?: (() => void | undefined)[];
@@ -15,4 +16,7 @@ export interface IBreadcrumbs<T extends ElementType> extends HTMLAttributes<HTML
15
16
  iconAction?: ReactNode | ReactNode[];
16
17
  separator?: ReactNode | ReactNode[] | string;
17
18
  propsLink?: (value: string, index: number, urls: string[]) => object;
19
+ classNameAction?: string;
20
+ classNameUrl?: string;
21
+ renderAction?: () => ReactNode | ReactNode[];
18
22
  }
@@ -1,6 +1,6 @@
1
1
  import { ReactNode } from 'react';
2
- export type TButtonVariants = 'primary-laba-blue-10' | 'primary-red-700-dsb_laba-grey-06' | 'primary-green-700' | 'ghost-laba-blue-10' | 'ghost-red-700' | 'ghost-green-700' | 'ghost-blue-gray-100-bg_white' | 'ghost-laba-green-10' | 'ghost-blue-gray-100-bg_white-text_blue-gray-400' | 'ghost-laba-blue-05' | 'nude-laba-blue-10' | 'nude-red-700' | 'nude-green-700' | 'nude-gray-500' | 'nude-laba-red-10' | 'nude-laba-red-08' | 'nude-laba-red-05' | 'primary-blue-700' | 'primary-red-700' | 'secondary-blue-700' | 'secondary-red-600' | 'secondary-green-600' | 'tertiary-blue-700' | 'tertiary-red-300' | 'tertiary-red-600' | 'tertiary-gray-500' | 'ghost-laba-blue-01' | 'filled-laba-white_laba-blue-10' | 'filled-laba-white_laba-red-05' | 'secondary-red-700';
3
- export type TButtonSize = 'large' | 'reguler' | 'small' | 'extra-small' | 'l' | 'm' | 's' | 'xs';
2
+ export type TButtonVariants = 'primary-laba-blue-10' | 'primary-red-700-dsb_laba-grey-06' | 'primary-green-700' | 'ghost-laba-blue-10' | 'ghost-red-700' | 'ghost-green-700' | 'ghost-blue-gray-100-bg_white' | 'ghost-laba-green-10' | 'ghost-blue-gray-100-bg_white-text_blue-gray-400' | 'ghost-laba-blue-05' | 'nude-laba-blue-10' | 'nude-red-700' | 'nude-green-700' | 'nude-gray-500' | 'nude-laba-red-10' | 'nude-laba-red-08' | 'nude-laba-red-05' | 'primary-blue-700' | 'primary-red-700' | 'secondary-blue-700' | 'secondary-red-600' | 'secondary-green-600' | 'tertiary-blue-700' | 'tertiary-red-300' | 'tertiary-red-600' | 'tertiary-gray-500' | 'ghost-laba-blue-01' | 'filled-laba-white_laba-blue-10' | 'filled-laba-white_laba-red-05' | 'secondary-red-700' | 'tertiary-black' | 'primary-bill-primary-600' | 'secondary-bill-secondary-800' | 'tertiary-bill-secondary-800' | 'primary-bill-red-700';
3
+ export type TButtonSize = 'large' | 'reguler' | 'small' | 'extra-small' | 'l' | 'm' | 's' | 'xs' | 'bill-l' | 'bill-m' | 'bill-s' | 'bill-xs';
4
4
  export interface IButton extends React.ButtonHTMLAttributes<HTMLButtonElement> {
5
5
  size?: TButtonSize;
6
6
  variants?: TButtonVariants;
@@ -4,7 +4,7 @@ import { AriaButtonOptions, DateValue, RangeCalendarProps } from 'react-aria';
4
4
  import { CalendarState, CalendarStateOptions, DateRangePickerStateOptions, RangeCalendarState } from 'react-stately';
5
5
  export type TCalendarType = 'date' | 'month' | 'year';
6
6
  export type TDateType = Date | string | null | undefined;
7
- export type TKeyLocale = 'id' | 'enUS' | 'nl';
7
+ export type TKeyLocale = 'id-ID' | 'en-US' | 'nl-NL' | 'zh-CN';
8
8
  export interface ICalendarPrevNextIcon {
9
9
  prevIcon?: ReactNode | ReactNode[] | (() => ReactNode) | (() => ReactNode[]);
10
10
  nextIcon?: ReactNode | ReactNode[] | (() => ReactNode) | (() => ReactNode[]);
@@ -1,9 +1,10 @@
1
1
  import { ReactNode } from 'react';
2
2
  import { Itypography } from '../../../config/components/typography';
3
+ import { TFont } from '../../../config/components/font';
3
4
  export interface IChips extends React.HTMLAttributes<HTMLSpanElement> {
4
5
  children: ReactNode | ReactNode[];
5
6
  className?: string | undefined;
6
- fonts?: 'lato' | 'inter';
7
+ fonts?: TFont;
7
8
  size?: 'reguler' | 'small' | 'l' | 's';
8
9
  variants?: 'filled-laba-blue-10' | 'ghost-laba-grey-02' | 'nude-laba-grey-10' | 'filled-blue-gray-100' | 'filled-gray-300';
9
10
  icon?: ReactNode | ReactNode[] | (() => ReactNode) | (() => ReactNode[]);
@@ -9,3 +9,10 @@ export interface ICollapse {
9
9
  triggerCalCulateContainer?: number | string | boolean | object;
10
10
  delayTriggerCalculateHeight?: number;
11
11
  }
12
+ export interface ICollapseV2 {
13
+ children: ReactNode | ReactNode[];
14
+ open: boolean;
15
+ id: string;
16
+ className?: string;
17
+ classNameContainer?: string | undefined;
18
+ }
@@ -35,3 +35,16 @@ export interface IInputNative extends InputHTMLAttributes<HTMLInputElement> {
35
35
  sizeInput?: 's' | 'xs' | 'l';
36
36
  classNameLabelError?: string | undefined;
37
37
  }
38
+ export interface IInputInnerLabel extends InputHTMLAttributes<HTMLInputElement> {
39
+ classNameContainer?: string | undefined;
40
+ id?: string | undefined;
41
+ label?: string;
42
+ type?: string;
43
+ startIcon?: ReactNode | ReactNode[] | (() => ReactNode) | (() => ReactNode[]);
44
+ endIcon?: ReactNode | ReactNode[] | (() => ReactNode) | (() => ReactNode[]);
45
+ isRequired?: boolean;
46
+ error?: string | undefined;
47
+ sizeInput?: 'large' | 'small';
48
+ classNameLabel?: string | undefined;
49
+ classNameLabelError?: string | undefined;
50
+ }
@@ -1,5 +1,6 @@
1
1
  import { OffsetOptions } from '@floating-ui/react';
2
2
  import { ReactNode } from 'react';
3
+ import { TKeyLocale } from '../Calendar';
3
4
  export type TKindPaginationType = 'box' | 'nude';
4
5
  export interface IPagination {
5
6
  pageNumber: number;
@@ -20,4 +21,5 @@ export interface IPaginationProps extends IPagination {
20
21
  withOptionPageSize?: boolean;
21
22
  withGotoPage?: boolean;
22
23
  withMorePage?: boolean;
24
+ locale?: TKeyLocale;
23
25
  }
@@ -1,5 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
- import { FlipOptions, AutoPlacementOptions, UseFloatingOptions, OffsetOptions, FloatingArrowProps } from '@floating-ui/react';
2
+ import { FlipOptions, AutoPlacementOptions, UseFloatingOptions, OffsetOptions, FloatingArrowProps, FloatingFocusManagerProps, UseDismissProps } from '@floating-ui/react';
3
3
  export interface IPopover extends React.HTMLAttributes<HTMLDivElement> {
4
4
  children: ReactNode | ReactNode[];
5
5
  className?: string | undefined;
@@ -16,6 +16,8 @@ export interface IPopover extends React.HTMLAttributes<HTMLDivElement> {
16
16
  withArrow?: boolean;
17
17
  propsArrow?: Partial<FloatingArrowProps>;
18
18
  onClose?: () => void;
19
+ floatingFocusManagerProps?: Omit<FloatingFocusManagerProps, 'context' | 'children'>;
20
+ useDismissProps?: UseDismissProps;
19
21
  }
20
22
  export interface IRefPopover {
21
23
  show: boolean;
@@ -1,18 +1,19 @@
1
1
  import { InputHTMLAttributes, ReactNode } from 'react';
2
2
  import { IBorderRadius } from '../../../config/components/borderRadius';
3
3
  import { Itypography } from '../../../config/components/typography';
4
+ import { TFont } from '../../../config/components/font';
4
5
  export interface IRadioCheckbox extends InputHTMLAttributes<HTMLInputElement> {
5
6
  classNameContainer?: string | undefined;
6
7
  classNameLabel?: string | undefined;
7
8
  classNameCheckedIcon?: string | undefined;
8
9
  classNameContainerCheckedIcon?: string | undefined;
9
10
  sizeInput?: 'reguler' | 'small' | 's' | 'm';
10
- variants?: 'laba-blue-10' | 'blue-700' | 'blue-700-hv_bg_transparent' | 'laba-blue-10-hv_bg_transparent';
11
+ variants?: 'laba-blue-10' | 'blue-700' | 'blue-700-hv_bg_transparent' | 'laba-blue-10-hv_bg_transparent' | 'bill-primary-500' | 'bill-primary-600-hv_bg_transparent' | 'bill-secondary-800-hv_bg_transparent';
11
12
  variantDisableds?: 'default-disabled-checkbox' | 'default-disabled-radio';
12
13
  borderRadius?: IBorderRadius;
13
14
  checkedIcon?: ReactNode | ReactNode[];
14
15
  type?: 'checkbox' | 'radio';
15
- fonts?: 'lato' | 'inter';
16
+ fonts?: TFont;
16
17
  label?: string;
17
18
  typography?: Itypography;
18
19
  }
@@ -2,12 +2,13 @@ import { InputHTMLAttributes, ReactNode } from 'react';
2
2
  import { Itypography } from '../../../config/components/typography';
3
3
  import { IRadioCheckbox } from './RadioCheckbox';
4
4
  import { IBorderRadius } from '../../../config/components/borderRadius';
5
+ import { TFont } from '../../../config/components/font';
5
6
  export interface IRadioCheckboxLabel extends InputHTMLAttributes<HTMLInputElement> {
6
7
  typographyLabel?: Itypography;
7
8
  typographyDesc?: Itypography;
8
9
  borderRadius?: IBorderRadius;
9
10
  type?: 'checkbox' | 'radio';
10
- fonts?: 'lato' | 'inter';
11
+ fonts?: TFont;
11
12
  radioCheckboxProps?: IRadioCheckbox;
12
13
  variants?: 'blue-50' | 'laba-blue-01';
13
14
  label: string | ReactNode | ReactNode[];
@@ -31,7 +31,7 @@ export interface ISelectDropdownContainer<T> extends Omit<SelectProps<T, boolean
31
31
  offsetPopover?: OffsetOptions;
32
32
  errorLabel?: 'payhere' | 'laba';
33
33
  actionValueChange?: (value: MultiValue<T> | SingleValue<T> | T | T[] | object) => void;
34
- controlType?: 'laba' | 'payhere';
34
+ controlType?: 'laba' | 'payhere' | 'bill';
35
35
  }
36
36
  export interface IChildrenSelectDropdownContainer<T> {
37
37
  selectValue: T | T[] | object;
@@ -1,5 +1,5 @@
1
1
  import { default as React } from 'react';
2
- export type TVariantSidebarType = 'payhere-brand-base-white' | 'payhere-brand-base-transparent' | 'laba-white';
2
+ export type TVariantSidebarType = 'payhere-brand-base-white' | 'payhere-brand-base-transparent' | 'laba-white' | 'lpd-brand-base-transparent' | 'lpd-brand-base-transparent-responsive' | 'lpd-brand-base-white' | 'lpd-brand-base-white-responsive' | 'bill-brand-base-white' | 'bill-brand-base-white-responsive';
3
3
  export interface ISidebarModule {
4
4
  name: string;
5
5
  label: string;
@@ -10,8 +10,10 @@ export interface ISidebarModule {
10
10
  icon?: string;
11
11
  svgIcon?: React.ReactNode | null;
12
12
  svgIconActive?: React.ReactNode | null;
13
+ svgIconHover?: React.ReactNode | null;
13
14
  manualRoute?: boolean;
14
- propsLink?: (value: string) => object;
15
+ propsLink?: (value: string, item: ISidebarModule) => object;
16
+ [key: string]: unknown;
15
17
  }
16
18
  export interface ISidebar<T extends React.ElementType> extends React.HTMLAttributes<HTMLDivElement> {
17
19
  as?: T;
@@ -26,8 +28,9 @@ export interface ISidebar<T extends React.ElementType> extends React.HTMLAttribu
26
28
  toleranceWidthIconCompany?: number;
27
29
  footer?: React.ReactNode | React.ReactNode[] | (() => React.ReactNode) | (() => React.ReactNode[]);
28
30
  onClickItems?: (v: ISidebarModule) => void;
29
- propsLink?: (value: string) => object;
31
+ propsLink?: (value: string, item: ISidebarModule) => object;
30
32
  withInheritance?: boolean;
33
+ id?: string;
31
34
  }
32
35
  export interface IItemSidebar<T extends React.ElementType> extends ISidebarModule {
33
36
  as?: T;
@@ -38,7 +41,7 @@ export interface IItemSidebar<T extends React.ElementType> extends ISidebarModul
38
41
  variant?: TVariantSidebarType;
39
42
  setShow: (v: string) => void;
40
43
  onClickItems?: (v: ISidebarModule) => void;
41
- propsLink?: (value: string) => object;
44
+ propsLink?: (value: string, item: ISidebarModule) => object;
42
45
  linkComponent?: T;
43
46
  }
44
47
  export interface ICloneElementSidebar {
@@ -9,7 +9,7 @@ export interface ISwitch {
9
9
  className?: string | undefined;
10
10
  classNameTitle?: string | undefined;
11
11
  classNameDesc?: string | undefined;
12
- kind?: 'payhere' | 'laba';
12
+ kind?: 'payhere' | 'laba' | 'bill';
13
13
  onChange: (v: boolean) => void;
14
14
  }
15
15
  export {};
@@ -2,6 +2,18 @@ import { Table as ITableTanstack, Row, ColumnDef } from '@tanstack/react-table';
2
2
  import { default as React } from 'react';
3
3
  import { ITableVirtualization, IWrapperProps } from '../Virtualization/TableVirtualization';
4
4
  export type ITableColumnDef<T = unknown> = ColumnDef<T>;
5
+ export interface ITableColumnBreakpoint {
6
+ maxWidth?: number;
7
+ minWidth?: number;
8
+ columns: string[];
9
+ realColumns?: string[];
10
+ resetExpanded?: boolean;
11
+ }
12
+ export type TTableRenderSubComponent<T = unknown> = (original: T, row: Row<T>, other: {
13
+ visibilityColumns: Pick<ITableColumnBreakpoint, 'columns' | 'realColumns'>;
14
+ classNameSubMobile: string;
15
+ }) => React.ReactNode | React.ReactNode[];
16
+ export type TTableHandlerRowClick<T = unknown> = (original: T, row: Row<T>) => void;
5
17
  export interface ITable<T = unknown> {
6
18
  tableInstance: ITableTanstack<T>;
7
19
  classNameWrapperTable?: string;
@@ -15,19 +27,23 @@ export interface ITable<T = unknown> {
15
27
  tbodyTrId?: (row: Row<T>) => string | undefined;
16
28
  maxHeight?: number;
17
29
  idCalculateHeight?: string;
18
- kind?: 'laba-reguler' | 'payhere-reguler' | 'laba-small';
30
+ kind?: 'laba-reguler' | 'payhere-reguler' | 'laba-small' | 'bill-reguler';
19
31
  variant?: 'laba-grey-02';
20
32
  componentSortASC?: Element | React.ReactNode | React.ReactNode[];
21
33
  componentSortDESC?: Element | React.ReactNode | React.ReactNode[];
22
34
  scrollTop?: boolean;
23
35
  emptyPlaceholder?: Element | React.ReactNode | React.ReactNode[];
24
- renderSubComponent?: (original: T, row: Row<T>) => React.ReactNode | React.ReactNode[];
36
+ renderSubComponent?: (original: T, row: Row<T>, other: {
37
+ visibilityColumns: Pick<ITableColumnBreakpoint, 'columns' | 'realColumns'>;
38
+ classNameSubMobile: string;
39
+ }) => React.ReactNode | React.ReactNode[];
40
+ columnBreakpoints?: ITableColumnBreakpoint[];
25
41
  }
26
42
  export interface INonVirtualization<T = unknown> {
27
43
  tableInstance: ITableTanstack<T>;
28
44
  classNameWrapperTable?: string;
29
45
  classNameTable?: string;
30
- handlerRowClick?: (original: T, row: Row<T>) => void;
46
+ handlerRowClick?: ITable<T>['handlerRowClick'];
31
47
  privillageRowClick?: boolean;
32
48
  headerId?: string;
33
49
  tbodyTrId: (row: Row<T>) => string | undefined;
@@ -37,7 +53,9 @@ export interface INonVirtualization<T = unknown> {
37
53
  componentSortDESC: Element | React.ReactNode | React.ReactNode[];
38
54
  classNamePointer: string;
39
55
  emptyPlaceholder?: Element | React.ReactNode | React.ReactNode[];
40
- renderSubComponent?: (original: T, row: Row<T>) => React.ReactNode | React.ReactNode[];
56
+ renderSubComponent?: ITable<T>['renderSubComponent'];
57
+ visibilityColumns: Pick<ITableColumnBreakpoint, 'columns' | 'realColumns'>;
58
+ classNameSubMobile: string;
41
59
  }
42
60
  export interface IVirtualizationProps extends Omit<ITableVirtualization, 'typeHight' | 'itemContent' | 'fixedHeaderContent' | 'itemSizeNames'> {
43
61
  typeHight?: 'min-max' | 'container';
@@ -48,7 +66,7 @@ export interface IVirtualizationProps extends Omit<ITableVirtualization, 'typeHi
48
66
  export interface IVirtualization<T = unknown> {
49
67
  tableInstance: ITableTanstack<T>;
50
68
  classNameWrapperTable?: string;
51
- handlerRowClick?: (original: T, row: Row<T>) => void;
69
+ handlerRowClick?: ITable<T>['handlerRowClick'];
52
70
  privillageRowClick?: boolean;
53
71
  virtualizationProps?: IVirtualizationProps;
54
72
  headerId?: string;
@@ -58,7 +76,9 @@ export interface IVirtualization<T = unknown> {
58
76
  componentSortDESC: Element | React.ReactNode | React.ReactNode[];
59
77
  classNamePointer: string;
60
78
  emptyPlaceholder?: Element | React.ReactNode | React.ReactNode[];
61
- renderSubComponent?: (original: T, row: Row<T>) => React.ReactNode | React.ReactNode[];
79
+ renderSubComponent?: ITable<T>['renderSubComponent'];
80
+ visibilityColumns: Pick<ITableColumnBreakpoint, 'columns' | 'realColumns'>;
81
+ classNameSubMobile: string;
62
82
  }
63
83
  export interface IVirtualizationHead extends React.HTMLAttributes<HTMLTableSectionElement> {
64
84
  context?: {
@@ -80,11 +100,19 @@ export interface ITableConfig {
80
100
  'payhere-reguler': string;
81
101
  'laba-reguler': string;
82
102
  'laba-small': string;
103
+ 'bill-reguler': string;
104
+ };
105
+ subMobile: {
106
+ 'payhere-reguler': string;
107
+ 'laba-reguler': string;
108
+ 'laba-small': string;
109
+ 'bill-reguler': string;
83
110
  };
84
111
  pointer: {
85
112
  'payhere-reguler': string;
86
113
  'laba-reguler': string;
87
114
  'laba-small': string;
115
+ 'bill-reguler': string;
88
116
  };
89
117
  utility: {
90
118
  'table-scroll-top': string;
@@ -102,6 +130,10 @@ export interface ITableConfig {
102
130
  asc: Element | React.ReactNode | React.ReactNode[];
103
131
  desc: Element | React.ReactNode | React.ReactNode[];
104
132
  };
133
+ 'bill-reguler': {
134
+ asc: Element | React.ReactNode | React.ReactNode[];
135
+ desc: Element | React.ReactNode | React.ReactNode[];
136
+ };
105
137
  };
106
138
  variant: {
107
139
  'laba-grey-02': string;
@@ -1,12 +1,15 @@
1
1
  import { IBorderRadius } from '../../../config/components/borderRadius';
2
- export type TVariantTabs = 'original-laba-blue-10' | 'container-payhere-brand-base' | 'container-laba-blue-10' | 'container-laba-blue-10-bg_white';
2
+ import { TKeyLocale } from '../Calendar';
3
+ export type TVariantTabs = 'original-laba-blue-10' | 'container-payhere-brand-base' | 'container-payhere-brand-base-bg_white' | 'container-laba-blue-10' | 'container-laba-blue-10-bg_white' | 'original-bill-secondary-800';
3
4
  export type TSizeTabs = 'tabs-m' | 'tabs-s' | 'tabs-medium' | 'tabs-small';
5
+ export type TTypeEventTabs = 'change' | 'mounted';
4
6
  export interface ITabsList {
5
7
  id: string | number;
6
8
  label: string | number;
7
9
  isHide?: boolean;
8
10
  className?: string;
9
11
  activeColor?: string;
12
+ locale?: Partial<Record<TKeyLocale, string>>;
10
13
  }
11
14
  export interface ITabs {
12
15
  id?: string;
@@ -22,8 +25,9 @@ export interface ITabs {
22
25
  disabled?: boolean;
23
26
  animation?: boolean;
24
27
  mountedExecuteChange?: boolean;
25
- onChange?: (v: ITabsList) => void;
28
+ onChange?: (v: ITabsList, sourceEvent: TTypeEventTabs) => void;
26
29
  typeButton?: 'button' | 'submit';
30
+ locale?: TKeyLocale;
27
31
  }
28
32
  export interface IStyleTabs {
29
33
  width: number;
@@ -28,3 +28,16 @@ export interface ITextareaFloatingInner extends React.InputHTMLAttributes<HTMLTe
28
28
  translateLabel?: number;
29
29
  autoTranslateLabel?: boolean;
30
30
  }
31
+ export interface ITextareaInnerLabel extends React.InputHTMLAttributes<HTMLTextAreaElement> {
32
+ classNameContainer?: string | undefined;
33
+ id?: string | undefined;
34
+ label?: string;
35
+ type?: string;
36
+ isRequired?: boolean;
37
+ error?: string | undefined;
38
+ sizeInput?: 'large' | 'small';
39
+ classNameLabel?: string | undefined;
40
+ classNameLabelError?: string | undefined;
41
+ maxHeight?: number;
42
+ minHeight?: number;
43
+ }
@@ -0,0 +1,28 @@
1
+ import { UseFloatingOptions } from '@floating-ui/react';
2
+ import { ReactNode } from 'react';
3
+ import { TKeyLocale } from '../Calendar';
4
+ export type TTimeRangeValue = [[string, string], [string, string]];
5
+ export interface ITimeRange {
6
+ id?: string;
7
+ value?: TTimeRangeValue;
8
+ zIndexPopper?: number;
9
+ offsetPopover?: number;
10
+ classNameContainer?: string;
11
+ className?: string;
12
+ buttonClick?: (value: TTimeRangeValue, formatValue: string) => ReactNode;
13
+ onChange?: (value: TTimeRangeValue) => void;
14
+ floatingOptions?: UseFloatingOptions;
15
+ locale?: TKeyLocale;
16
+ buttonReset?: (() => ReactNode) | (() => ReactNode[]);
17
+ buttonSubmit?: (() => ReactNode) | (() => ReactNode[]);
18
+ disableValidation?: boolean;
19
+ }
20
+ export interface ITimeRangeListTime {
21
+ type: 'start' | 'end';
22
+ value: TTimeRangeValue[0];
23
+ values: TTimeRangeValue;
24
+ onChange: (value: TTimeRangeValue[0]) => void;
25
+ locale: TKeyLocale;
26
+ disableValidation: boolean;
27
+ }
28
+ export type TRenderTimeRageText = (value: TTimeRangeValue, locale: TKeyLocale) => string;
@@ -1,11 +1,9 @@
1
1
  export interface ITruncateComponent extends React.HTMLAttributes<HTMLDivElement> {
2
2
  children: React.ReactNode[] | React.ReactNode;
3
- initialVisibleCount: number;
4
3
  maxWidth?: string;
5
- moreElement: (count: number) => React.ReactNode | (() => React.ReactNode[]);
4
+ moreElement: (count: number) => React.ReactNode | React.ReactNode[];
6
5
  style?: React.CSSProperties;
7
6
  className?: string;
8
7
  gap?: number;
9
8
  gapStyle?: string;
10
- triggerCalCulateContainer?: number | string | boolean | object;
11
9
  }
@@ -24,6 +24,7 @@ export interface IUploadImage {
24
24
  classNameContainer?: string | undefined;
25
25
  classNameImage?: string | undefined;
26
26
  classNameAction?: string | undefined;
27
+ id?: string;
27
28
  }
28
29
  export interface IUploadMultipleFile {
29
30
  onChange?: (v?: File[] | null) => void;
@@ -40,6 +41,7 @@ export interface IUploadMultipleFile {
40
41
  handlerDownload?: (value: IUploadMultipleFileValue) => void;
41
42
  priorityError?: 'internal' | 'external';
42
43
  eventError?: (message: string) => void;
44
+ locationRemoveElement?: 'left' | 'right';
43
45
  }
44
46
  export interface IUploadMultipleFileValue {
45
47
  name?: string;
@@ -9,10 +9,10 @@ export declare function parseBigDecimal<T extends {
9
9
  }>(value: number | string, options?: T): T['instance'] extends true ? TypeBigNumber : string;
10
10
  export declare const parseDecimal: (value: number | string, decimals?: number) => number;
11
11
  export declare function formatNumber(number: number, style?: 'currency' | 'decimal', options?: {
12
- minimumFractionDigits: number;
13
- locale: string;
14
- currency: string;
15
- withSpace: boolean;
12
+ minimumFractionDigits?: number;
13
+ locale?: string;
14
+ currency?: string;
15
+ withSpace?: boolean;
16
16
  }): string;
17
17
  export declare const formatDate: (date: TDateType, format?: string, defaultValue?: string, keyLocale?: TKeyLocale) => string;
18
18
  export declare const formatDateRange: (startDate: TDateType, endDate: TDateType, format?: string, separator?: string, defaultValue?: string, keyLocale?: TKeyLocale) => string;
@@ -53,6 +53,8 @@ export declare function transformSecondTime(secs: number, option?: {
53
53
  second: string | number;
54
54
  };
55
55
  export declare function mergeObjects<T>(target: T, ...sources: unknown[]): T;
56
+ export declare function deleteKeysMutable<T = Record<string | number, unknown>>(obj: T, paths: string | string[]): T;
57
+ export declare function deleteKeysImmutable<T = Record<string | number, unknown>>(obj: T, paths: string | string[]): T;
56
58
  export declare const transformNumber: (val: string) => number;
57
59
  export declare const transformBigNumber: (val: TBigNumber) => string;
58
60
  export declare const transfromIsNan: (value: number) => number | undefined;
@@ -62,3 +64,4 @@ export declare function parseFileName(fileName: string): {
62
64
  extension: string;
63
65
  };
64
66
  export declare const extractElementStringToOriginalValue: (value: string) => string;
67
+ export declare function encryptRSAOAEP<T = object>(data: T, base64Key: string): string;