1mpacto-react-ui 2.0.25 → 2.0.26

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 (84) hide show
  1. package/dist/assets/_colors.scss +42 -0
  2. package/dist/assets/_typography.scss +32 -2
  3. package/dist/assets/core.css +1 -1
  4. package/dist/assets/fontfamily.css +1 -1
  5. package/dist/assets/style.css +1 -1
  6. package/dist/components/Button/Button.config.cjs +1 -1
  7. package/dist/components/Button/Button.config.mjs +58 -55
  8. package/dist/components/Button/style.module.scss.cjs +1 -1
  9. package/dist/components/Button/style.module.scss.mjs +60 -57
  10. package/dist/components/Calendar/Calendar.cjs +1 -1
  11. package/dist/components/Calendar/Calendar.config.cjs +1 -0
  12. package/dist/components/Calendar/Calendar.config.mjs +22 -0
  13. package/dist/components/Calendar/Calendar.mjs +221 -133
  14. package/dist/components/Calendar/CalendarCell.cjs +1 -1
  15. package/dist/components/Calendar/CalendarCell.mjs +9 -9
  16. package/dist/components/Calendar/CalendarMonth.cjs +1 -1
  17. package/dist/components/Calendar/CalendarMonth.mjs +23 -21
  18. package/dist/components/Calendar/CalendarRange.cjs +1 -1
  19. package/dist/components/Calendar/CalendarRange.mjs +100 -98
  20. package/dist/components/Calendar/CalendarYear.cjs +2 -2
  21. package/dist/components/Calendar/CalendarYear.mjs +25 -23
  22. package/dist/components/Calendar/style.module.scss.cjs +1 -1
  23. package/dist/components/Calendar/style.module.scss.mjs +35 -33
  24. package/dist/components/Chart/LineChart.cjs +1 -1
  25. package/dist/components/Chart/LineChart.mjs +1 -1
  26. package/dist/components/DatePicker/DatePicker.cjs +1 -1
  27. package/dist/components/DatePicker/DatePicker.mjs +78 -69
  28. package/dist/components/DatePicker/DateRangePicker.cjs +1 -1
  29. package/dist/components/DatePicker/DateRangePicker.mjs +91 -79
  30. package/dist/components/DatePicker/FilterDate.cjs +1 -1
  31. package/dist/components/DatePicker/FilterDate.mjs +181 -127
  32. package/dist/components/DatePicker/MonthYearPicker.cjs +1 -1
  33. package/dist/components/DatePicker/MonthYearPicker.mjs +58 -49
  34. package/dist/components/Input/InputInnerLabel.cjs +6 -6
  35. package/dist/components/Input/InputInnerLabel.config.cjs +1 -1
  36. package/dist/components/Input/InputInnerLabel.config.mjs +9 -5
  37. package/dist/components/Input/InputInnerLabel.mjs +36 -35
  38. package/dist/components/Input/InputInnerLabel.module.scss.cjs +1 -1
  39. package/dist/components/Input/InputInnerLabel.module.scss.mjs +19 -17
  40. package/dist/components/Sidebar/ItemSidebar.config.cjs +1 -1
  41. package/dist/components/Sidebar/ItemSidebar.config.mjs +6 -2
  42. package/dist/components/Sidebar/Sidebar.cjs +1 -1
  43. package/dist/components/Sidebar/Sidebar.config.cjs +1 -1
  44. package/dist/components/Sidebar/Sidebar.config.mjs +14 -12
  45. package/dist/components/Sidebar/Sidebar.mjs +78 -77
  46. package/dist/components/Sidebar/Sidebar.module.scss.cjs +1 -1
  47. package/dist/components/Sidebar/Sidebar.module.scss.mjs +22 -20
  48. package/dist/components/Sidebar/itemSidebar.module.scss.cjs +1 -1
  49. package/dist/components/Sidebar/itemSidebar.module.scss.mjs +25 -24
  50. package/dist/config/resources/index.cjs +1 -1
  51. package/dist/config/resources/index.mjs +1 -1
  52. package/dist/config/tailwind/colors.cjs +1 -1
  53. package/dist/config/tailwind/colors.mjs +22 -1
  54. package/dist/config/tailwind/typography.cjs +1 -1
  55. package/dist/config/tailwind/typography.mjs +70 -3
  56. package/dist/package.json.cjs +1 -1
  57. package/dist/package.json.d.ts +1 -1
  58. package/dist/package.json.mjs +1 -1
  59. package/dist/src/components/Button/Button.config.d.ts +3 -0
  60. package/dist/src/components/Calendar/Calendar.config.d.ts +19 -0
  61. package/dist/src/components/Calendar/Calendar.d.ts +5 -3
  62. package/dist/src/components/Calendar/Calendar.stories.d.ts +21 -5
  63. package/dist/src/components/Calendar/CalendarMonth.d.ts +1 -1
  64. package/dist/src/components/Calendar/CalendarRange.d.ts +1 -1
  65. package/dist/src/components/Calendar/CalendarYear.d.ts +1 -1
  66. package/dist/src/components/DatePicker/DatePicker.stories.d.ts +28 -0
  67. package/dist/src/components/DatePicker/FilterDate.d.ts +1 -1
  68. package/dist/src/components/DatePicker/FilterDate.stories.d.ts +29 -1
  69. package/dist/src/components/DatePicker/MonthYearPicker.d.ts +1 -1
  70. package/dist/src/components/DatePicker/MonthYearPicker.stories.d.ts +29 -1
  71. package/dist/src/components/Input/InputInnerLabel.config.d.ts +5 -1
  72. package/dist/src/components/Input/InputInnerLabel.stories.d.ts +16 -0
  73. package/dist/src/components/Sidebar/ItemSidebar.config.d.ts +4 -0
  74. package/dist/src/components/Sidebar/Sidebar.config.d.ts +2 -0
  75. package/dist/src/config/resources/index.d.ts +2 -2
  76. package/dist/src/config/tailwind/typography.d.ts +1 -0
  77. package/dist/src/interfaces/components/Button/index.d.ts +1 -1
  78. package/dist/src/interfaces/components/Calendar/index.d.ts +41 -0
  79. package/dist/src/interfaces/components/DatePicker/index.d.ts +41 -1
  80. package/dist/src/interfaces/components/Input/index.d.ts +10 -0
  81. package/dist/src/interfaces/components/Sidebar/index.d.ts +6 -1
  82. package/dist/utils/common.cjs +1 -1
  83. package/dist/utils/common.mjs +7 -7
  84. package/package.json +1 -1
@@ -17,6 +17,7 @@ export type TDateType = Date | string | null | undefined;
17
17
  * [EN] : Supported locale keys.
18
18
  */
19
19
  export type TKeyLocale = 'id-ID' | 'en-US' | 'nl-NL' | 'zh-CN';
20
+ export type TCalendarVariants = 'laba-blue-10' | 'fin-primary-500';
20
21
  /**
21
22
  * [ID] : Interface untuk ikon navigasi kalender.
22
23
  * [EN] : Interface for calendar navigation icons.
@@ -141,6 +142,11 @@ export interface ICalendar extends CalendarStateOptions<DateValue>, ICalendarPre
141
142
  * [EN] : Hide header (optional).
142
143
  */
143
144
  hiddenHeader?: boolean;
145
+ /**
146
+ * [ID] : Varian gaya kalender (opsional).
147
+ * [EN] : Calendar style variant (optional).
148
+ */
149
+ variants?: TCalendarVariants;
144
150
  /**
145
151
  * [ID] : Handler perubahan waktu (opsional).
146
152
  * [EN] : Time change handler (optional).
@@ -221,6 +227,11 @@ export interface ICustomTimeCalendar {
221
227
  * [EN] : Time type (start or end).
222
228
  */
223
229
  type: 'start' | 'end';
230
+ /**
231
+ * [ID] : Lokal bahasa (opsional).
232
+ * [EN] : Locale (optional).
233
+ */
234
+ locale?: TKeyLocale;
224
235
  /**
225
236
  * [ID] : Handler perubahan waktu (opsional).
226
237
  * [EN] : Time change handler (optional).
@@ -292,6 +303,11 @@ export interface ICalendarMonth extends ICalendarPrevNextIcon {
292
303
  * [EN] : Hide header (optional).
293
304
  */
294
305
  hiddenHeader?: boolean;
306
+ /**
307
+ * [ID] : Varian gaya kalender (opsional).
308
+ * [EN] : Calendar style variant (optional).
309
+ */
310
+ variants?: TCalendarVariants;
295
311
  }
296
312
  /**
297
313
  * [ID] : Interface untuk pengaturan tahun.
@@ -351,6 +367,11 @@ export interface ICalendarYear {
351
367
  * [EN] : Hide header (optional).
352
368
  */
353
369
  hiddenHeader?: boolean;
370
+ /**
371
+ * [ID] : Varian gaya kalender (opsional).
372
+ * [EN] : Calendar style variant (optional).
373
+ */
374
+ variants?: TCalendarVariants;
354
375
  }
355
376
  /**
356
377
  * [ID] : Interface untuk rentang tanggal.
@@ -420,6 +441,16 @@ export interface ICalendarDateRange extends RangeCalendarProps<DateValue>, ICale
420
441
  * @param v - [ID] : State kalender rentang. [EN] : Range calendar state.
421
442
  */
422
443
  handlerReset: (v: RangeCalendarState) => void;
444
+ /**
445
+ * [ID] : Varian gaya kalender (opsional).
446
+ * [EN] : Calendar style variant (optional).
447
+ */
448
+ variants?: TCalendarVariants;
449
+ /**
450
+ * [ID] : Lokal bahasa (opsional).
451
+ * [EN] : Locale (optional).
452
+ */
453
+ locale?: TKeyLocale;
423
454
  }
424
455
  /**
425
456
  * [ID] : Interface untuk kalender rentang.
@@ -468,4 +499,14 @@ export interface ICalendarRange extends DateRangePickerStateOptions, ICalendarPr
468
499
  * @param v - [ID] : State kalender rentang. [EN] : Range calendar state.
469
500
  */
470
501
  handlerReset: (v: RangeCalendarState) => void;
502
+ /**
503
+ * [ID] : Varian gaya kalender (opsional).
504
+ * [EN] : Calendar style variant (optional).
505
+ */
506
+ variants?: TCalendarVariants;
507
+ /**
508
+ * [ID] : Lokal bahasa (opsional).
509
+ * [EN] : Locale (optional).
510
+ */
511
+ locale?: TKeyLocale;
471
512
  }
@@ -1,5 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
- import { ICalendarButtonConfirm, ICalendarPrevNextIcon, IDateRange, TDateType } from '../Calendar';
2
+ import { ICalendarButtonConfirm, ICalendarPrevNextIcon, IDateRange, TCalendarVariants, TDateType, TKeyLocale } from '../Calendar';
3
3
  import { OffsetOptions, UseFloatingOptions } from '@floating-ui/react';
4
4
  /**
5
5
  * [ID] : Interface untuk komponen DatePicker tunggal.
@@ -89,6 +89,16 @@ export interface IDatePicker extends ICalendarPrevNextIcon, ICalendarButtonConfi
89
89
  * [EN] : Hide header (optional).
90
90
  */
91
91
  hiddenHeader?: boolean;
92
+ /**
93
+ * [ID] : Varian gaya kalender (opsional).
94
+ * [EN] : Calendar style variant (optional).
95
+ */
96
+ variants?: TCalendarVariants;
97
+ /**
98
+ * [ID] : Lokal bahasa (opsional).
99
+ * [EN] : Locale (optional).
100
+ */
101
+ locale?: TKeyLocale;
92
102
  }
93
103
  /**
94
104
  * [ID] : Interface untuk komponen DatePicker rentang tanggal.
@@ -141,6 +151,16 @@ export interface IDateRangePicker extends ICalendarPrevNextIcon, ICalendarButton
141
151
  * [EN] : Reset handler (optional).
142
152
  */
143
153
  onReset?: () => void;
154
+ /**
155
+ * [ID] : Varian gaya kalender (opsional).
156
+ * [EN] : Calendar style variant (optional).
157
+ */
158
+ variants?: TCalendarVariants;
159
+ /**
160
+ * [ID] : Lokal bahasa (opsional).
161
+ * [EN] : Locale (optional).
162
+ */
163
+ locale?: TKeyLocale;
144
164
  }
145
165
  /**
146
166
  * [ID] : Tipe kunci untuk daftar tombol filter tanggal.
@@ -251,6 +271,16 @@ export interface IFilterDate extends ICalendarPrevNextIcon, ICalendarButtonConfi
251
271
  * [EN] : Date formatting (optional).
252
272
  */
253
273
  formatingDate?: string | boolean;
274
+ /**
275
+ * [ID] : Varian gaya kalender (opsional).
276
+ * [EN] : Calendar style variant (optional).
277
+ */
278
+ variants?: TCalendarVariants;
279
+ /**
280
+ * [ID] : Lokal bahasa (opsional).
281
+ * [EN] : Locale (optional).
282
+ */
283
+ locale?: TKeyLocale;
254
284
  }
255
285
  /**
256
286
  * [ID] : Tipe picker bulan/tahun.
@@ -354,4 +384,14 @@ export interface IMonthYearPicker {
354
384
  * [EN] : Hide header (optional).
355
385
  */
356
386
  hiddenHeader?: boolean;
387
+ /**
388
+ * [ID] : Varian gaya kalender (opsional).
389
+ * [EN] : Calendar style variant (optional).
390
+ */
391
+ variants?: TCalendarVariants;
392
+ /**
393
+ * [ID] : Lokal bahasa (opsional).
394
+ * [EN] : Locale (optional).
395
+ */
396
+ locale?: TKeyLocale;
357
397
  }
@@ -1,4 +1,9 @@
1
1
  import { InputHTMLAttributes, ReactNode } from 'react';
2
+ /**
3
+ * [ID] : Tipe varian input.
4
+ * [EN] : Input variant type.
5
+ */
6
+ export type TVariantTabs = 'bill-blue-800' | 'fin-black';
2
7
  /**
3
8
  * [ID] : Interface untuk input dengan label mengambang di dalam.
4
9
  * [EN] : Interface for input with floating inner label.
@@ -227,6 +232,11 @@ export interface IInputInnerLabel extends InputHTMLAttributes<HTMLInputElement>
227
232
  * [EN] : Input size (optional).
228
233
  */
229
234
  sizeInput?: 'large' | 'small';
235
+ /**
236
+ * [ID] : Varian input (opsional).
237
+ * [EN] : Input variant (optional).
238
+ */
239
+ variant?: TVariantTabs;
230
240
  /**
231
241
  * [ID] : Nama kelas CSS untuk label (opsional).
232
242
  * [EN] : CSS class name for label (optional).
@@ -3,7 +3,7 @@ import { default as React } from 'react';
3
3
  * [ID] : Tipe varian sidebar.
4
4
  * [EN] : Sidebar variant type.
5
5
  */
6
- export type TVariantSidebarType = 'payhere-brand-base-white' | 'payhere-brand-base-transparent' | 'payhere-brand-indigo-900-transparent' | 'payhere-brand-blue-gray-900-transparent' | 'laba-white' | 'lpd-brand-base-transparent' | 'lpd-brand-base-transparent-responsive' | 'lpd-brand-base-white' | 'lpd-brand-base-white-responsive' | 'bill-brand-base' | 'bill-brand-base-responsive';
6
+ export type TVariantSidebarType = 'payhere-brand-base-white' | 'payhere-brand-base-transparent' | 'payhere-brand-indigo-900-transparent' | 'payhere-brand-blue-gray-900-transparent' | 'laba-white' | 'lpd-brand-base-transparent' | 'lpd-brand-base-transparent-responsive' | 'lpd-brand-base-white' | 'lpd-brand-base-white-responsive' | 'bill-brand-base' | 'bill-brand-base-responsive' | 'fin-base' | 'fin-base-responsive';
7
7
  /**
8
8
  * [ID] : Interface untuk modul sidebar.
9
9
  * [EN] : Interface for sidebar module.
@@ -178,6 +178,11 @@ export interface ISidebar<T extends React.ElementType> extends React.HTMLAttribu
178
178
  * [EN] : Content CSS style (optional).
179
179
  */
180
180
  styleContent?: React.CSSProperties;
181
+ /**
182
+ * [ID] : Status terbuka default (opsional).
183
+ * [EN] : Default open state (optional).
184
+ */
185
+ defaultOpen?: boolean;
181
186
  }
182
187
  /**
183
188
  * [ID] : Interface untuk item sidebar.
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const M=require("date-fns"),g=require("date-fns/locale"),N=require("../config/bigNumber/index.cjs"),b=require("node-forge"),D=e=>{try{return N.BigNumber(e).isFinite()}catch{return!1}},F=e=>{if(typeof e=="number"&&Number.isFinite(e))return!0;if(typeof e=="string"&&e.trim()!==""&&!isNaN(Number(e))){const r=Number(e);return Number.isFinite(r)}return!1};function j(e,r){const{minimumFractionDigits:n,instance:t=!1,ignoreFractionLimit:o=!1}=r||{};let{maximumFractionDigits:i=2}=r||{};D(e)||(e="0"),!o&&n!==void 0&&n>i&&(i=n);let c="";if(o?c=N.BigNumber(e).toString():c=N.BigNumber(e).toFixed(i),c.includes(".")&&!o){const[s,a]=c.split(".");let u=a.replace(/0+$/,"");n!==void 0&&n>=0&&(u=u.padEnd(n,"0")),c=u?`${s}.${u}`:s}return t?N.BigNumber(c):c}const S=(e,r=2)=>{let n=parseFloat(F(e)?e:0);return n=(+(Math.round(n+"e"+r)+"e-"+r)).toFixed(r),n=Number(n),n};function E(e,r="currency",n){const{minimumFractionDigits:t=0,locale:o="id-ID",currency:i="IDR",withSpace:c=!1}=n||{},s=new Intl.NumberFormat(o,{style:r,currency:i,minimumFractionDigits:t}).format(S(e,t>0?t:2));return c?s:s.replace(/\s/g,"")}const B=(e,r,n,t)=>{const o={"id-ID":g.id,"zh-CN":g.zhCN,"en-US":g.enUS,"nl-BE":g.nl};let i=n??"-";return e&&!isNaN(new Date(e).getTime())&&(i=M.format(e,r??"dd/MM/yyyy",{locale:o[t??"id-ID"]})),i},I=(e,r,n,t,o,i)=>{const c={"id-ID":g.id,"zh-CN":g.zhCN,"en-US":g.enUS,"nl-NL":g.nl};if(e&&!isNaN(new Date(e).getTime())){const s=M.format(e,n??"dd/MM/yyyy",{locale:c[i??"id-ID"]});if(r&&!isNaN(new Date(r).getTime())){const a=M.format(r,n??"dd/MM/yyyy",{locale:c[i??"id-ID"]});return s===a?s:`${s}${t??"-"}${a}`}return s}return o??"-"},K=(e,r)=>e.reduce((n,t)=>{const o=String(t[r]);return n[o]||(n[o]=[]),n[o].push(t),n},{}),V=({value:e,keyDate:r="date",keyFormat:n="formatDate",format:t="dd/MM/yyyy"})=>{const o=e.map(i=>({...i,[n]:B(i[r],t)}));return K(o,n)},C=e=>(Object.keys(e).forEach(r=>{["",null,void 0,[],{}].includes(e[r])&&delete e[r]}),e),L=(e,r)=>{const n=/^-?\d+[0-9.,]*$/,t=/([.])(?=.*\1)/,o=/([,])(?=.*\1)/,i=e.split(",")[0]?.trim()||"",c=e.split(",")[1]?.trim()||"",s=!t.test(i)&&(i==="-"||n.test(i)||!i),a=!t.test(c)&&(c==="-"||n.test(c)||!c),u=(l,p,y)=>{let d=l;const A=l.split(".")[0];return isNaN(parseFloat(A.split(".")[0]))||(parseFloat(A.split(".")[0])<=p?d=`${p}`:parseFloat(A)>=y&&(d=`${y}`)),d},f=u(i,r?.latMin??-85,r?.latMax??85),m=u(c,r?.longMin??-180,r?.longMax??180);return{latitude:f,longitude:m,latlong:`${f}${e.includes(",")?","+m:""}`,isValid:!o.test(e)&&s&&a}},R=(e,r)=>e?Object.fromEntries(Object.entries(r).filter(([t])=>t.startsWith(e))):r,w=(e,r)=>e.map(n=>n[r]).join(","),T=(e,r)=>e.map(n=>n[r]),P=(e,r)=>Array.isArray(e)?e?.map((n,t,o)=>typeof r=="function"?r(n,t,o):n):[],q=(e,r,n,t,o)=>Array.isArray(e)?{[r]:e?.map((i,c,s)=>typeof n=="function"?n(i,c,s):i),[`${r}-val-be`]:i=>t==="array-of-object-to-array"?T(i,o):w(i,o)}:{[r]:"",[`${r}-val-be`]:()=>""};function x(e,r){if(e===r)return!0;if(typeof e!="object"||typeof r!="object"||e===null||r===null)return!1;const n=Object.keys(e),t=Object.keys(r);if(n.length!==t.length)return!1;for(const o of n)if(!t.includes(o)||!x(e[o],r[o]))return!1;return!0}function v(e,r={maxTime:"hour"}){const{maxTime:n="hour"}=r,t=a=>a<10?`0${a}`:a;let o=t(0),i=t(0);const c=t(Math.floor(e%3600/60)),s=t(Math.floor(e%60));return n==="hour"?i=t(Math.floor(e/3600)):n==="day"&&(o=t(Math.floor(e/(3600*24))),i=t(Math.floor(e%(3600*24)/3600))),{day:o,hour:i,minute:c,second:s}}function h(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function $(e,...r){if(!r.length)return e;const n=r.shift();if(h(e)&&h(n))for(const t in n)h(n[t])?(e[t]||Object.assign(e,{[t]:{}}),$(e[t],n[t])):Object.assign(e,{[t]:n[t]});return $(e,...r)}function O(e,r){const n=r.match(/[^.[\]]+/g);if(!n||n.length===0)return;const t=(o,i)=>{if(typeof o!="object"||o===null||i.length===0)return;const c=o,s=i[0],a=i.slice(1);if(a.length===0){delete c[s];return}const u=c[s];if(s==="*"&&Array.isArray(c)){for(const f of c)t(f,a);return}t(u,a)};t(e,n)}function z(e,r){if(!e||!r)return e;if(Array.isArray(r))for(const n of r)O(e,n);else O(e,r);return e}function J(e,r){const n=JSON.parse(JSON.stringify(e));if(Array.isArray(r))for(const t of r)O(n,t);else O(n,r);return n}function U(e,r,n={}){const t=n.arrayMergeStrategy||"combine",o=(n.keepKeys||[]).map(s=>s.match(/[^.[\]]+/g)||[]),i=s=>o.some(a=>a.length!==s.length?!1:a.every((u,f)=>u===s[f]));function c(s,a,u){if(u.length>0&&i(u))return s;if(Array.isArray(a)&&Array.isArray(s)){if(t==="overwrite")return[...a];const f=t==="sync"?a.length:Math.max(s.length,a.length),m=new Array(f);for(let l=0;l<f;l++){const p=[...u,String(l)],y=s[l],d=a[l];if(l>=a.length){m[l]=y;continue}if(l>=s.length){m[l]=d;continue}m[l]=c(y,d,p)}return m}if(h(a)&&h(s)){const f={...s};return Object.keys(a).forEach(m=>{const l=[...u,m],p=a[m],y=s[m];f[m]=c(y,p,l)}),f}return a===void 0?s:a}return c(e,r,[])}const H=e=>S(e||0),W=e=>j(e||0),G=(e,r)=>j(e||0,r),Q=e=>isNaN(e)?void 0:e,X=e=>{const r=e.toString().split(""),n=r[1]!=="0"?`,${r[1]}`:"";let[t]=e.toString().split(".");return t=t.replaceAll("-",""),t.length>=15?`${+t.substring(0,3)} T`:t.length===14?`${+t.substring(0,2)} T`:t.length===13?`${+t.substring(0,1)}${n} T`:t.length===12?`${+t.substring(0,3)} M`:t.length===11?`${+t.substring(0,2)} M`:t.length===10?`${+t.substring(0,1)}${n} M`:t.length===9?`${+t.substring(0,3)} JT`:t.length===8?`${+t.substring(0,2)} JT`:t.length===7?`${+t.substring(0,1)}${n} JT`:t.length===6?`${+t.substring(0,3)} RB`:t.length===5?`${+t.substring(0,2)} RB`:t.length===4?`${+t.substring(0,1)}${n} RB`:t.length<=3?+t?`${+t}`:0:null};function Y(e){if(typeof e!="string")throw new Error("Input harus berupa string");const r=e.split(".");if(r.length===1)return{filename:e,extension:""};const n="."+r[r.length-1];return{filename:r.slice(0,-1).join("."),extension:n}}const Z=e=>(new DOMParser().parseFromString(e||"","text/html").body.textContent??"").toString();function _(e,r){const n=typeof e=="string"?e:JSON.stringify(e),t=b.util.decode64(r.replace(/\s+/g,"")),o=b.util.decode64(t),i=b.asn1.fromDer(o),s=b.pki.publicKeyFromAsn1(i).encrypt(n,"RSA-OAEP",{md:b.md.sha256.create(),mgf1:{md:b.md.sha1.create()}});return b.util.encode64(s)}exports.deepCompareEquals=x;exports.deepMerge=U;exports.deleteKeysImmutable=J;exports.deleteKeysMutable=z;exports.encryptRSAOAEP=_;exports.extractElementStringToOriginalValue=Z;exports.formatDate=B;exports.formatDateRange=I;exports.formatNumber=E;exports.groupByKey=K;exports.isAccurateBigNumber=D;exports.isAccurateNumber=F;exports.isObject=h;exports.mergeObjects=$;exports.parseBigDecimal=j;exports.parseDecimal=S;exports.parseFileName=Y;exports.removeKeyObjectEmptyValue=C;exports.sanitizeObjectKeyPrefix=R;exports.setDigit=X;exports.transformArrayMapping=P;exports.transformArrayMappingObjectFC=q;exports.transformArrayOfObjectToArray=T;exports.transformArrayOfObjectToString=w;exports.transformBigNumber=W;exports.transformBigNumberOpt=G;exports.transformDataHistory=V;exports.transformLatLong=L;exports.transformNumber=H;exports.transformSecondTime=v;exports.transfromIsNan=Q;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const M=require("date-fns"),g=require("date-fns/locale"),N=require("../config/bigNumber/index.cjs"),b=require("node-forge"),D=e=>{try{return N.BigNumber(e).isFinite()}catch{return!1}},F=e=>{if(typeof e=="number"&&Number.isFinite(e))return!0;if(typeof e=="string"&&e.trim()!==""&&!isNaN(Number(e))){const r=Number(e);return Number.isFinite(r)}return!1};function j(e,r){const{minimumFractionDigits:n,instance:t=!1,ignoreFractionLimit:o=!1}=r||{};let{maximumFractionDigits:i=2}=r||{};D(e)||(e="0"),!o&&n!==void 0&&n>i&&(i=n);let c="";if(o?c=N.BigNumber(e).toString():c=N.BigNumber(e).toFixed(i),c.includes(".")&&!o){const[s,a]=c.split(".");let u=a.replace(/0+$/,"");n!==void 0&&n>=0&&(u=u.padEnd(n,"0")),c=u?`${s}.${u}`:s}return t?N.BigNumber(c):c}const S=(e,r=2)=>{let n=parseFloat(F(e)?e:0);return n=(+(Math.round(n+"e"+r)+"e-"+r)).toFixed(r),n=Number(n),n};function I(e,r="currency",n){const{minimumFractionDigits:t=0,locale:o="id-ID",currency:i="IDR",withSpace:c=!1}=n||{},s=new Intl.NumberFormat(o,{style:r,currency:i,minimumFractionDigits:t}).format(S(e,t>0?t:2));return c?s:s.replace(/\s/g,"")}const K=(e,r,n,t)=>{const o={"id-ID":g.id,"zh-CN":g.zhCN,"en-US":g.enUS,"nl-NL":g.nl};let i=n??"-";return e&&!isNaN(new Date(e).getTime())&&(i=M.format(e,r??"dd/MM/yyyy",{locale:o[t??"id-ID"]})),i},E=(e,r,n,t,o,i)=>{const c={"id-ID":g.id,"zh-CN":g.zhCN,"en-US":g.enUS,"nl-NL":g.nl};if(e&&!isNaN(new Date(e).getTime())){const s=M.format(e,n??"dd/MM/yyyy",{locale:c[i??"id-ID"]});if(r&&!isNaN(new Date(r).getTime())){const a=M.format(r,n??"dd/MM/yyyy",{locale:c[i??"id-ID"]});return s===a?s:`${s}${t??"-"}${a}`}return s}return o??"-"},w=(e,r)=>e.reduce((n,t)=>{const o=String(t[r]);return n[o]||(n[o]=[]),n[o].push(t),n},{}),V=({value:e,keyDate:r="date",keyFormat:n="formatDate",format:t="dd/MM/yyyy"})=>{const o=e.map(i=>({...i,[n]:K(i[r],t)}));return w(o,n)},L=e=>(Object.keys(e).forEach(r=>{["",null,void 0,[],{}].includes(e[r])&&delete e[r]}),e),C=(e,r)=>{const n=/^-?\d+[0-9.,]*$/,t=/([.])(?=.*\1)/,o=/([,])(?=.*\1)/,i=e.split(",")[0]?.trim()||"",c=e.split(",")[1]?.trim()||"",s=!t.test(i)&&(i==="-"||n.test(i)||!i),a=!t.test(c)&&(c==="-"||n.test(c)||!c),u=(l,p,y)=>{let d=l;const A=l.split(".")[0];return isNaN(parseFloat(A.split(".")[0]))||(parseFloat(A.split(".")[0])<=p?d=`${p}`:parseFloat(A)>=y&&(d=`${y}`)),d},f=u(i,r?.latMin??-85,r?.latMax??85),m=u(c,r?.longMin??-180,r?.longMax??180);return{latitude:f,longitude:m,latlong:`${f}${e.includes(",")?","+m:""}`,isValid:!o.test(e)&&s&&a}},R=(e,r)=>e?Object.fromEntries(Object.entries(r).filter(([t])=>t.startsWith(e))):r,B=(e,r)=>e.map(n=>n[r]).join(","),T=(e,r)=>e.map(n=>n[r]),P=(e,r)=>Array.isArray(e)?e?.map((n,t,o)=>typeof r=="function"?r(n,t,o):n):[],q=(e,r,n,t,o)=>Array.isArray(e)?{[r]:e?.map((i,c,s)=>typeof n=="function"?n(i,c,s):i),[`${r}-val-be`]:i=>t==="array-of-object-to-array"?T(i,o):B(i,o)}:{[r]:"",[`${r}-val-be`]:()=>""};function x(e,r){if(e===r)return!0;if(typeof e!="object"||typeof r!="object"||e===null||r===null)return!1;const n=Object.keys(e),t=Object.keys(r);if(n.length!==t.length)return!1;for(const o of n)if(!t.includes(o)||!x(e[o],r[o]))return!1;return!0}function v(e,r={maxTime:"hour"}){const{maxTime:n="hour"}=r,t=a=>a<10?`0${a}`:a;let o=t(0),i=t(0);const c=t(Math.floor(e%3600/60)),s=t(Math.floor(e%60));return n==="hour"?i=t(Math.floor(e/3600)):n==="day"&&(o=t(Math.floor(e/(3600*24))),i=t(Math.floor(e%(3600*24)/3600))),{day:o,hour:i,minute:c,second:s}}function h(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function $(e,...r){if(!r.length)return e;const n=r.shift();if(h(e)&&h(n))for(const t in n)h(n[t])?(e[t]||Object.assign(e,{[t]:{}}),$(e[t],n[t])):Object.assign(e,{[t]:n[t]});return $(e,...r)}function O(e,r){const n=r.match(/[^.[\]]+/g);if(!n||n.length===0)return;const t=(o,i)=>{if(typeof o!="object"||o===null||i.length===0)return;const c=o,s=i[0],a=i.slice(1);if(a.length===0){delete c[s];return}const u=c[s];if(s==="*"&&Array.isArray(c)){for(const f of c)t(f,a);return}t(u,a)};t(e,n)}function z(e,r){if(!e||!r)return e;if(Array.isArray(r))for(const n of r)O(e,n);else O(e,r);return e}function J(e,r){const n=JSON.parse(JSON.stringify(e));if(Array.isArray(r))for(const t of r)O(n,t);else O(n,r);return n}function U(e,r,n={}){const t=n.arrayMergeStrategy||"combine",o=(n.keepKeys||[]).map(s=>s.match(/[^.[\]]+/g)||[]),i=s=>o.some(a=>a.length!==s.length?!1:a.every((u,f)=>u===s[f]));function c(s,a,u){if(u.length>0&&i(u))return s;if(Array.isArray(a)&&Array.isArray(s)){if(t==="overwrite")return[...a];const f=t==="sync"?a.length:Math.max(s.length,a.length),m=new Array(f);for(let l=0;l<f;l++){const p=[...u,String(l)],y=s[l],d=a[l];if(l>=a.length){m[l]=y;continue}if(l>=s.length){m[l]=d;continue}m[l]=c(y,d,p)}return m}if(h(a)&&h(s)){const f={...s};return Object.keys(a).forEach(m=>{const l=[...u,m],p=a[m],y=s[m];f[m]=c(y,p,l)}),f}return a===void 0?s:a}return c(e,r,[])}const H=e=>S(e||0),W=e=>j(e||0),G=(e,r)=>j(e||0,r),Q=e=>isNaN(e)?void 0:e,X=e=>{const r=e.toString().split(""),n=r[1]!=="0"?`,${r[1]}`:"";let[t]=e.toString().split(".");return t=t.replaceAll("-",""),t.length>=15?`${+t.substring(0,3)} T`:t.length===14?`${+t.substring(0,2)} T`:t.length===13?`${+t.substring(0,1)}${n} T`:t.length===12?`${+t.substring(0,3)} M`:t.length===11?`${+t.substring(0,2)} M`:t.length===10?`${+t.substring(0,1)}${n} M`:t.length===9?`${+t.substring(0,3)} JT`:t.length===8?`${+t.substring(0,2)} JT`:t.length===7?`${+t.substring(0,1)}${n} JT`:t.length===6?`${+t.substring(0,3)} RB`:t.length===5?`${+t.substring(0,2)} RB`:t.length===4?`${+t.substring(0,1)}${n} RB`:t.length<=3?+t?`${+t}`:0:null};function Y(e){if(typeof e!="string")throw new Error("Input harus berupa string");const r=e.split(".");if(r.length===1)return{filename:e,extension:""};const n="."+r[r.length-1];return{filename:r.slice(0,-1).join("."),extension:n}}const Z=e=>(new DOMParser().parseFromString(e||"","text/html").body.textContent??"").toString();function _(e,r){const n=typeof e=="string"?e:JSON.stringify(e),t=b.util.decode64(r.replace(/\s+/g,"")),o=b.util.decode64(t),i=b.asn1.fromDer(o),s=b.pki.publicKeyFromAsn1(i).encrypt(n,"RSA-OAEP",{md:b.md.sha256.create(),mgf1:{md:b.md.sha1.create()}});return b.util.encode64(s)}exports.deepCompareEquals=x;exports.deepMerge=U;exports.deleteKeysImmutable=J;exports.deleteKeysMutable=z;exports.encryptRSAOAEP=_;exports.extractElementStringToOriginalValue=Z;exports.formatDate=K;exports.formatDateRange=E;exports.formatNumber=I;exports.groupByKey=w;exports.isAccurateBigNumber=D;exports.isAccurateNumber=F;exports.isObject=h;exports.mergeObjects=$;exports.parseBigDecimal=j;exports.parseDecimal=S;exports.parseFileName=Y;exports.removeKeyObjectEmptyValue=L;exports.sanitizeObjectKeyPrefix=R;exports.setDigit=X;exports.transformArrayMapping=P;exports.transformArrayMappingObjectFC=q;exports.transformArrayOfObjectToArray=T;exports.transformArrayOfObjectToString=B;exports.transformBigNumber=W;exports.transformBigNumberOpt=G;exports.transformDataHistory=V;exports.transformLatLong=C;exports.transformNumber=H;exports.transformSecondTime=v;exports.transfromIsNan=Q;
@@ -42,7 +42,7 @@ function J(e, r = "currency", n) {
42
42
  return c ? s : s.replace(/\s/g, "");
43
43
  }
44
44
  const T = (e, r, n, t) => {
45
- const o = { "id-ID": w, "zh-CN": S, "en-US": j, "nl-BE": O };
45
+ const o = { "id-ID": w, "zh-CN": S, "en-US": j, "nl-NL": O };
46
46
  let i = n ?? "-";
47
47
  return e && !isNaN(new Date(e).getTime()) && (i = $(e, r ?? "dd/MM/yyyy", { locale: o[t ?? "id-ID"] })), i;
48
48
  }, v = (e, r, n, t, o, i) => {
@@ -56,7 +56,7 @@ const T = (e, r, n, t) => {
56
56
  return s;
57
57
  }
58
58
  return o ?? "-";
59
- }, B = (e, r) => e.reduce((n, t) => {
59
+ }, I = (e, r) => e.reduce((n, t) => {
60
60
  const o = String(t[r]);
61
61
  return n[o] || (n[o] = []), n[o].push(t), n;
62
62
  }, {}), z = ({
@@ -69,7 +69,7 @@ const T = (e, r, n, t) => {
69
69
  ...i,
70
70
  [n]: T(i[r], t)
71
71
  }));
72
- return B(o, n);
72
+ return I(o, n);
73
73
  }, U = (e) => (Object.keys(e).forEach((r) => {
74
74
  ["", null, void 0, [], {}].includes(e[r]) && delete e[r];
75
75
  }), e), q = (e, r) => {
@@ -84,13 +84,13 @@ const T = (e, r, n, t) => {
84
84
  latlong: `${f}${e.includes(",") ? "," + g : ""}`,
85
85
  isValid: !o.test(e) && s && u
86
86
  };
87
- }, H = (e, r) => e ? Object.fromEntries(Object.entries(r).filter(([t]) => t.startsWith(e))) : r, I = (e, r) => e.map((n) => n[r]).join(","), V = (e, r) => e.map((n) => n[r]), W = (e, r) => Array.isArray(e) ? e?.map(
87
+ }, H = (e, r) => e ? Object.fromEntries(Object.entries(r).filter(([t]) => t.startsWith(e))) : r, B = (e, r) => e.map((n) => n[r]).join(","), V = (e, r) => e.map((n) => n[r]), W = (e, r) => Array.isArray(e) ? e?.map(
88
88
  (n, t, o) => typeof r == "function" ? r(n, t, o) : n
89
89
  ) : [], G = (e, r, n, t, o) => Array.isArray(e) ? {
90
90
  [r]: e?.map(
91
91
  (i, c, s) => typeof n == "function" ? n(i, c, s) : i
92
92
  ),
93
- [`${r}-val-be`]: (i) => t === "array-of-object-to-array" ? V(i, o) : I(i, o)
93
+ [`${r}-val-be`]: (i) => t === "array-of-object-to-array" ? V(i, o) : B(i, o)
94
94
  } : { [r]: "", [`${r}-val-be`]: () => "" };
95
95
  function E(e, r) {
96
96
  if (e === r) return !0;
@@ -238,7 +238,7 @@ export {
238
238
  T as formatDate,
239
239
  v as formatDateRange,
240
240
  J as formatNumber,
241
- B as groupByKey,
241
+ I as groupByKey,
242
242
  x as isAccurateBigNumber,
243
243
  K as isAccurateNumber,
244
244
  h as isObject,
@@ -252,7 +252,7 @@ export {
252
252
  W as transformArrayMapping,
253
253
  G as transformArrayMappingObjectFC,
254
254
  V as transformArrayOfObjectToArray,
255
- I as transformArrayOfObjectToString,
255
+ B as transformArrayOfObjectToString,
256
256
  k as transformBigNumber,
257
257
  ee as transformBigNumberOpt,
258
258
  z as transformDataHistory,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "1mpacto-react-ui",
3
3
  "private": false,
4
- "version": "2.0.25",
4
+ "version": "2.0.26",
5
5
  "type": "module",
6
6
  "engines": {
7
7
  "node": ">=22.22.3",