@oliasoft-open-source/react-ui-library 4.11.1 → 4.12.0-beta-2

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 (139) hide show
  1. package/dist/assets/{index-BpSdrNXy.css → index-BU9wzZv9.css} +336 -336
  2. package/dist/assets/{index-DoFa61ar.js → index-BVCFmQTa.js} +144 -164
  3. package/dist/index.d.ts +2 -6
  4. package/dist/index.html +1 -1
  5. package/dist/index.js +135 -132
  6. package/dist/index.js.map +1 -1
  7. package/dist/storybook/assets/{Color-KGDBMAHA-B3T0ILh4.js → Color-KGDBMAHA-BODMLRvZ.js} +1 -1
  8. package/dist/storybook/assets/{DocsRenderer-PKQXORMH-CJgueRY3.js → DocsRenderer-PKQXORMH-DEi7ICVq.js} +1 -1
  9. package/dist/storybook/assets/{accordion.stories-Ctfewlsk.js → accordion.stories-C_Vx7GEC.js} +1 -1
  10. package/dist/storybook/assets/{actions-D-uVCDzk.js → actions-Bax0KeqM.js} +2 -2
  11. package/dist/storybook/assets/{actions.stories-gKfuiKQy.js → actions.stories-BnPZKqOJ.js} +1 -1
  12. package/dist/storybook/assets/{afe.stories-DM18uTAa.js → afe.stories-OEYJqexC.js} +1 -1
  13. package/dist/storybook/assets/{badge.stories-Dkq_XgEW.js → badge.stories-DA_eeQyi.js} +1 -1
  14. package/dist/storybook/assets/{blowout.stories-DHdofVc-.js → blowout.stories-DH-sYHgB.js} +1 -1
  15. package/dist/storybook/assets/button-Cbv7WK6k.js +1 -0
  16. package/dist/storybook/assets/button-DtgxLQCF.css +1 -0
  17. package/dist/storybook/assets/{button-group-1DEZPmxq.js → button-group-D2fGP_bX.js} +1 -1
  18. package/dist/storybook/assets/{button-group.stories-C4V1k0z_.js → button-group.stories-BETADGti.js} +1 -1
  19. package/dist/storybook/assets/{button.stories-DA9DGYD2.js → button.stories-C03VvX8K.js} +1 -1
  20. package/dist/storybook/assets/{buttons-and-links-BgjMT4gF.js → buttons-and-links-BHNS6Ebw.js} +1 -1
  21. package/dist/storybook/assets/{casing-loads.stories-Cc2cl9m1.js → casing-loads.stories-BAdZ87Oc.js} +1 -1
  22. package/dist/storybook/assets/{cell.stories-D8aQP2lw.js → cell.stories-Bu5u9qEl.js} +1 -1
  23. package/dist/storybook/assets/{chunk-HLWAVYOI-DW5riARI.js → chunk-HLWAVYOI-BbzmrmoZ.js} +1 -1
  24. package/dist/storybook/assets/{color-Cidw5dH_.js → color-oeF0-Pph.js} +1 -1
  25. package/dist/storybook/assets/{dialog-BelCA1mt.js → dialog-DkpQscuI.js} +1 -1
  26. package/dist/storybook/assets/drawer-BVc1xI9q.css +1 -0
  27. package/dist/storybook/assets/drawer-DaQ1xGjV.js +3 -0
  28. package/dist/storybook/assets/{drawer.stories-DcjyDHEs.js → drawer.stories-C08XBVTq.js} +1 -1
  29. package/dist/storybook/assets/{empty.stories-DcwF0pkK.js → empty.stories-L7LSMcLe.js} +1 -1
  30. package/dist/storybook/assets/{field.stories-DUGMwi1O.js → field.stories-CYpQ669-.js} +1 -1
  31. package/dist/storybook/assets/{file-button.stories-CU2pZcEO.js → file-button.stories-CRaTdLfv.js} +1 -1
  32. package/dist/storybook/assets/{file-input-B0-ERX66.js → file-input-yalPf7-m.js} +1 -1
  33. package/dist/storybook/assets/{file-input.stories-Cpd1NHbq.js → file-input.stories-DMTQqAF8.js} +1 -1
  34. package/dist/storybook/assets/{flex.stories-BhvJpHpN.js → flex.stories-CLwPyEMp.js} +1 -1
  35. package/dist/storybook/assets/{footer.stories-DcDOHTpf.js → footer.stories-LUxEpSgD.js} +1 -1
  36. package/dist/storybook/assets/{form.stories-BLcmnfy8.js → form.stories-B7V77yuI.js} +1 -1
  37. package/dist/storybook/assets/{formation.stories-D9xC_fJP.js → formation.stories-D7MX0dSY.js} +1 -1
  38. package/dist/storybook/assets/{iframe-BOQa8dKi.js → iframe-nuCPRPrd.js} +2 -2
  39. package/dist/storybook/assets/{index-IzFttIXx.js → index-BFtO1KgR.js} +88 -88
  40. package/dist/storybook/assets/{index-CqF2VcgG.js → index-CN6H1a0D.js} +1 -1
  41. package/dist/storybook/assets/{initialize-context-BvejO8yS.js → initialize-context-rEvM6bdZ.js} +1 -1
  42. package/dist/storybook/assets/input-Db9WkmPP.js +1 -0
  43. package/dist/storybook/assets/input-Dz1ZZYN5.css +1 -0
  44. package/dist/storybook/assets/{input-group.stories-EhmORqH9.js → input-group.stories-BdQ1prY4.js} +1 -1
  45. package/dist/storybook/assets/{input-validation-Barn85e8.js → input-validation-Ccu8WMpy.js} +1 -1
  46. package/dist/storybook/assets/{input.stories-FKl0qVhm.js → input.stories-SJy3TKkD.js} +1 -1
  47. package/dist/storybook/assets/{inputs-DhSTn98J.js → inputs-C4fsY4Ua.js} +1 -1
  48. package/dist/storybook/assets/{layout-forms-B7tboerR.js → layout-forms-DOgsanng.js} +1 -1
  49. package/dist/storybook/assets/{layout-general-IRBlgjFP.js → layout-general-DtDx77FI.js} +1 -1
  50. package/dist/storybook/assets/{list-bKpz6I9Q.js → list-By3wp5Wa.js} +1 -1
  51. package/dist/storybook/assets/{list.stories-Cgmt29Wv.js → list.stories-BcDHHHYJ.js} +1 -1
  52. package/dist/storybook/assets/{list.stories-data-D_Aj3AN4.js → list.stories-data-Doo2Rqun.js} +1 -1
  53. package/dist/storybook/assets/{loader.stories-pS8zRM4u.js → loader.stories-Q0U2BqZX.js} +1 -1
  54. package/dist/storybook/assets/{menu.stories-DLJSzJa-.js → menu.stories-1I5AGGQx.js} +1 -1
  55. package/dist/storybook/assets/menu.test-case.stories-W-jG-Jk8.js +3 -0
  56. package/dist/storybook/assets/message-BRyKdRaX.js +1 -0
  57. package/dist/storybook/assets/message-C2ZCkHX6.css +1 -0
  58. package/dist/storybook/assets/{message.stories-r_UlbshI.js → message.stories-bCqCYIuN.js} +1 -1
  59. package/dist/storybook/assets/meta-content-ByVTG0hd.css +1 -0
  60. package/dist/storybook/assets/meta-content-DNgQbAW0.js +9 -0
  61. package/dist/storybook/assets/{modal.stories-DOgeTuHT.js → modal.stories-DUXRRhK-.js} +1 -1
  62. package/dist/storybook/assets/modal.test-case.stories-Ci1WRYdo.js +21 -0
  63. package/dist/storybook/assets/{number-input-Dq8zEk7X.js → number-input-CNnU6gOF.js} +1 -1
  64. package/dist/storybook/assets/{number-input.stories-DUvn4L-Z.js → number-input.stories-Bo26PJmJ.js} +1 -1
  65. package/dist/storybook/assets/number-input.test-case.stories-CHGSaGbj.js +92 -0
  66. package/dist/storybook/assets/{option-dropdown.stories-CIvqMhQ3.js → option-dropdown.stories-CznUbXVi.js} +1 -1
  67. package/dist/storybook/assets/{padding-and-spacing-CZZN7tnu.js → padding-and-spacing-Mfm_1hn5.js} +1 -1
  68. package/dist/storybook/assets/{page.stories-DnCh8h8y.js → page.stories-DthnK8qb.js} +1 -1
  69. package/dist/storybook/assets/{pagination-DWc8zp3k.js → pagination-CoyQUC4R.js} +1 -1
  70. package/dist/storybook/assets/{pagination.stories-B5cOvzik.js → pagination.stories-qfpnU8DC.js} +1 -1
  71. package/dist/storybook/assets/{pop-confirm.stories-DCpooB2O.js → pop-confirm.stories-CHa0qUBe.js} +1 -1
  72. package/dist/storybook/assets/{popover-rq33c1W2.js → popover-C_2P8LFJ.js} +1 -1
  73. package/dist/storybook/assets/{popover.stories-p9_-pH_Q.js → popover.stories-TwNkFkWa.js} +1 -1
  74. package/dist/storybook/assets/{preview-Bb6CWa9a.js → preview-BIv_KaBF.js} +2 -2
  75. package/dist/storybook/assets/{preview-u3mhrMoU.js → preview-DVjsIOwK.js} +1 -1
  76. package/dist/storybook/assets/{projects.stories-Co_WnKSx.js → projects.stories-BPm6ucAe.js} +1 -1
  77. package/dist/storybook/assets/{reservoirs.stories-UW_8sofe.js → reservoirs.stories-DE9FrS0f.js} +1 -1
  78. package/dist/storybook/assets/{rich-text-input-dDjxXFl-.css → rich-text-input-BJfL0Me_.css} +1 -1
  79. package/dist/storybook/assets/{rich-text-input.stories-CK_OTGiV.js → rich-text-input.stories-BNwcnp92.js} +4 -4
  80. package/dist/storybook/assets/{row.stories-D1iDHHxo.js → row.stories-D3Bnp8i4.js} +1 -1
  81. package/dist/storybook/assets/select-BQzJMnK1.js +61 -0
  82. package/dist/storybook/assets/select-BmYXTl_0.css +1 -0
  83. package/dist/storybook/assets/{select.stories-Bpffz9TF.js → select.stories-BRGk9iYK.js} +1 -1
  84. package/dist/storybook/assets/select.test-case.stories-BYMK9M8u.js +82 -0
  85. package/dist/storybook/assets/side-bar-fBbBqyAT.css +1 -0
  86. package/dist/storybook/assets/side-bar-wpFQ5NEE.js +24 -0
  87. package/dist/storybook/assets/{side-bar.stories-M6FsuCrQ.js → side-bar.stories-LjClxJcG.js} +1 -1
  88. package/dist/storybook/assets/{site.stories-ZGohyW6Z.js → site.stories-BnWmALGd.js} +1 -1
  89. package/dist/storybook/assets/{slider-C7vnj_3M.js → slider-CcpE4BLD.js} +1 -1
  90. package/dist/storybook/assets/{slider.stories-BzBb3PkP.js → slider.stories-BqlRLY_C.js} +1 -1
  91. package/dist/storybook/assets/{smart-upload-modal.stories-xqiXR6jV.js → smart-upload-modal.stories-BlTSF64K.js} +1 -1
  92. package/dist/storybook/assets/{spacer.stories-BBTt2LdE.js → spacer.stories-BT2S6B0R.js} +1 -1
  93. package/dist/storybook/assets/table-BtBtDwPu.css +1 -0
  94. package/dist/storybook/assets/table-DPbEkZqw.js +86 -0
  95. package/dist/storybook/assets/{table.stories-oLm8-Sg3.js → table.stories-BBzqpsyH.js} +1 -1
  96. package/dist/storybook/assets/{table.stories-data-C3vJedB1.js → table.stories-data-C7mC5R8Q.js} +1 -1
  97. package/dist/storybook/assets/{textarea-D6ltcKhz.js → textarea-DflOOrxV.js} +2 -2
  98. package/dist/storybook/assets/textarea-TqxidmV4.css +1 -0
  99. package/dist/storybook/assets/{textarea.stories-CJ-Oqytp.js → textarea.stories-CzsqRVpC.js} +1 -1
  100. package/dist/storybook/assets/{title.stories-iTXgnNqS.js → title.stories-B4PYbA22.js} +1 -1
  101. package/dist/storybook/assets/{toaster-BoBcvmf9.js → toaster-O8ftrUAJ.js} +1 -1
  102. package/dist/storybook/assets/{toaster.stories-G6nKp3uV.js → toaster.stories-CdpwLBSo.js} +1 -1
  103. package/dist/storybook/assets/toaster.test-case.stories-Cy3_Gvs_.js +6 -0
  104. package/dist/storybook/assets/{tooltip.test-case.stories-C0wxGvKJ.js → tooltip.test-case.stories-De9h8ThH.js} +1 -1
  105. package/dist/storybook/assets/{top-bar-DkXSzzqt.js → top-bar-Bjf6PQE1.js} +1 -1
  106. package/dist/storybook/assets/{top-bar.stories-HDmWT243.js → top-bar.stories-1hZmlzDT.js} +1 -1
  107. package/dist/storybook/assets/{top-bar.testcase.stories-DfmrkEpT.js → top-bar.testcase.stories-BsFYqaw6.js} +1 -1
  108. package/dist/storybook/assets/{tree.stories-feLUcTtm.js → tree.stories-NGZfmH_B.js} +1 -1
  109. package/dist/storybook/assets/{unit-input-DZs3wEdY.js → unit-input-Byipu-z0.js} +1 -1
  110. package/dist/storybook/assets/{unit-input.stories-BRl4TnIK.js → unit-input.stories-CChVbxmI.js} +1 -1
  111. package/dist/storybook/assets/{unit-input.test-case.stories-xWsKGi4p.js → unit-input.test-case.stories-BeFM9DuK.js} +3 -3
  112. package/dist/storybook/assets/{unit-table.stories-C4AcKcPO.js → unit-table.stories-9x5S71wv.js} +1 -1
  113. package/dist/storybook/assets/{unit-table.test-case.stories-Do8WFzxy.js → unit-table.test-case.stories-DZJ-hZ72.js} +1 -1
  114. package/dist/storybook/iframe.html +1 -1
  115. package/dist/storybook/project.json +1 -1
  116. package/package.json +1 -1
  117. package/dist/404.html +0 -1
  118. package/dist/storybook/assets/button-DHevvVBE.js +0 -1
  119. package/dist/storybook/assets/button-fAxt_G4d.css +0 -1
  120. package/dist/storybook/assets/drawer-DOWJp9T4.js +0 -3
  121. package/dist/storybook/assets/drawer-DhrjYsQu.css +0 -1
  122. package/dist/storybook/assets/input-DD7t4kHm.css +0 -1
  123. package/dist/storybook/assets/input-DTXbDJaL.js +0 -1
  124. package/dist/storybook/assets/menu.test-case.stories-DyrNbGBs.js +0 -3
  125. package/dist/storybook/assets/message-Cl3kn7ZD.css +0 -1
  126. package/dist/storybook/assets/message-Y48EomV-.js +0 -1
  127. package/dist/storybook/assets/meta-content-DWZbURV2.js +0 -9
  128. package/dist/storybook/assets/meta-content-DnZPPeTF.css +0 -1
  129. package/dist/storybook/assets/modal.test-case.stories-DQ1Izuq6.js +0 -21
  130. package/dist/storybook/assets/number-input.test-case.stories-C6CDA2a8.js +0 -92
  131. package/dist/storybook/assets/select-03uRbc4I.js +0 -61
  132. package/dist/storybook/assets/select-H-9tdhwc.css +0 -1
  133. package/dist/storybook/assets/select.test-case.stories-DwDNDHax.js +0 -82
  134. package/dist/storybook/assets/side-bar-CSx5wI-k.js +0 -24
  135. package/dist/storybook/assets/side-bar-auov230-.css +0 -1
  136. package/dist/storybook/assets/table-B8ojy8Nj.css +0 -1
  137. package/dist/storybook/assets/table-Cw1-vdpR.js +0 -86
  138. package/dist/storybook/assets/textarea-H-YTEwr8.css +0 -1
  139. package/dist/storybook/assets/toaster.test-case.stories-CCHTh_U1.js +0 -6
package/dist/index.js CHANGED
@@ -70245,6 +70245,109 @@ const initializeContext = (context2) => {
70245
70245
  UnitContext = context2;
70246
70246
  }
70247
70247
  };
70248
+ const PredefinedOptionsMenu = ({
70249
+ predefinedOptions,
70250
+ value = "",
70251
+ onPredefinedOptionSelect,
70252
+ disabled: disabled2,
70253
+ initialPredefinedOption,
70254
+ predefinedOptionsMenuState,
70255
+ setPredefinedOptionsMenuState,
70256
+ testId
70257
+ }) => {
70258
+ const extractedValue = isValueWithUnit(value) ? getValue$1(value) : value;
70259
+ const [foundPredefinedMenuOption, setFoundPredefinedMenuOption] = useState(void 0);
70260
+ const createPredefinedOption = (el2) => {
70261
+ const elementValue = (el2 == null ? void 0 : el2.value) ? el2.value : "";
70262
+ const [inputValue = "", unit2 = ""] = isValueWithUnit(elementValue) ? split$1(elementValue) : [elementValue];
70263
+ return {
70264
+ type: MenuType.OPTION,
70265
+ inline: true,
70266
+ onClick: () => {
70267
+ const validation = validateNumber(inputValue);
70268
+ if (validation.valid && !disabled2) {
70269
+ setPredefinedOptionsMenuState(PredefinedOptionsMenuState.PREDEFINED);
70270
+ onPredefinedOptionSelect(elementValue);
70271
+ setFoundPredefinedMenuOption(el2);
70272
+ }
70273
+ },
70274
+ label: /* @__PURE__ */ jsxs(Fragment$1, { children: [
70275
+ /* @__PURE__ */ jsx(Text, { children: el2.label }),
70276
+ /* @__PURE__ */ jsx(Spacer, { width: "20px", height: "0" })
70277
+ ] }),
70278
+ description: isValueWithUnit(elementValue) ? `${inputValue} ${unit2}` : elementValue,
70279
+ selected: extractedValue === elementValue && predefinedOptionsMenuState === PredefinedOptionsMenuState.PREDEFINED
70280
+ };
70281
+ };
70282
+ const initialPredefinedOptionObject = useMemo$1(() => {
70283
+ return predefinedOptions.find(
70284
+ (option2) => option2.value === initialPredefinedOption || option2.label === initialPredefinedOption || option2.valueKey === initialPredefinedOption
70285
+ );
70286
+ }, [initialPredefinedOption, predefinedOptions]);
70287
+ useEffect(() => {
70288
+ if (initialPredefinedOptionObject) {
70289
+ setPredefinedOptionsMenuState(PredefinedOptionsMenuState.PREDEFINED);
70290
+ setFoundPredefinedMenuOption(initialPredefinedOptionObject);
70291
+ onPredefinedOptionSelect(initialPredefinedOptionObject.value);
70292
+ }
70293
+ }, [initialPredefinedOptionObject]);
70294
+ useEffect(() => {
70295
+ const foundOption = predefinedOptions.find((option2) => {
70296
+ const currentValue = isValueWithUnit((option2 == null ? void 0 : option2.value) ?? "") ? getValue$1((option2 == null ? void 0 : option2.value) ?? "") : option2.value;
70297
+ return currentValue === extractedValue;
70298
+ });
70299
+ if (foundOption) {
70300
+ setPredefinedOptionsMenuState(PredefinedOptionsMenuState.PREDEFINED);
70301
+ setFoundPredefinedMenuOption(foundOption);
70302
+ } else {
70303
+ setPredefinedOptionsMenuState(PredefinedOptionsMenuState.CUSTOM);
70304
+ setFoundPredefinedMenuOption(void 0);
70305
+ }
70306
+ }, [extractedValue, predefinedOptions]);
70307
+ const sectionsPredefinedMenu = [
70308
+ {
70309
+ type: MenuType.OPTION,
70310
+ inline: true,
70311
+ onClick: () => {
70312
+ if (!disabled2) {
70313
+ setPredefinedOptionsMenuState(PredefinedOptionsMenuState.CUSTOM);
70314
+ }
70315
+ },
70316
+ label: "Custom",
70317
+ selected: predefinedOptionsMenuState === PredefinedOptionsMenuState.CUSTOM
70318
+ },
70319
+ ...predefinedOptions.map(createPredefinedOption)
70320
+ ];
70321
+ return /* @__PURE__ */ jsx(
70322
+ Tooltip,
70323
+ {
70324
+ text: predefinedOptionsMenuState === PredefinedOptionsMenuState.PREDEFINED ? foundPredefinedMenuOption == null ? void 0 : foundPredefinedMenuOption.label : "",
70325
+ children: /* @__PURE__ */ jsx(
70326
+ Menu,
70327
+ {
70328
+ testId: testId && `${testId}-predefined-menu`,
70329
+ maxHeight: 380,
70330
+ groupOrder: "first",
70331
+ disabled: disabled2,
70332
+ menu: {
70333
+ colored: true,
70334
+ trigger: "Component",
70335
+ component: /* @__PURE__ */ jsx(
70336
+ Button$1,
70337
+ {
70338
+ groupOrder: "first",
70339
+ active: predefinedOptionsMenuState === PredefinedOptionsMenuState.PREDEFINED,
70340
+ icon: predefinedOptionsMenuState === PredefinedOptionsMenuState.PREDEFINED ? "link" : "unlink"
70341
+ }
70342
+ ),
70343
+ small: true,
70344
+ sections: sectionsPredefinedMenu
70345
+ }
70346
+ }
70347
+ )
70348
+ }
70349
+ );
70350
+ };
70248
70351
  const predefinedMenuActive = "_predefinedMenuActive_ye9w9_1";
70249
70352
  const inputWrapper = "_inputWrapper_ye9w9_4";
70250
70353
  const styles = {
@@ -70269,28 +70372,24 @@ const UnitInput = ({
70269
70372
  onFocus = noop$3,
70270
70373
  onSwitchUnit = noop$3,
70271
70374
  unitTemplate,
70272
- doNotConvertValue = false,
70273
70375
  testId,
70274
70376
  warning: warning2 = null,
70275
70377
  predefinedOptions,
70276
- initialPredefinedOption = false,
70277
- shouldLinkAutomaticly = true,
70278
- selectedPredefinedOptionKey,
70378
+ initialPredefinedOption = "",
70279
70379
  validationCallback = () => ({ name: "", error: null }),
70280
70380
  disabledValidation = false,
70281
70381
  allowEmpty = false,
70282
- autoValue,
70283
70382
  convertBackToStorageUnit = false,
70284
70383
  enableCosmeticRounding = true,
70285
70384
  enableDisplayRounding = false
70286
70385
  }) => {
70287
70386
  const context2 = useUnitContext();
70288
70387
  const runAfterUpdate = useRunAfterUpdate();
70388
+ const [predefinedOptionsMenuState, setPredefinedOptionsMenuState] = useState(PredefinedOptionsMenuState.CUSTOM);
70289
70389
  if (typeof value === "number") {
70290
70390
  value = `${value}`;
70291
70391
  }
70292
70392
  const [propValue = "", propUnit = ""] = value !== void 0 ? split$1(value) : [];
70293
- const propAutoUnit = autoValue ? getUnit(autoValue) : "";
70294
70393
  const preferredUnit = useMemo$1(
70295
70394
  () => getPreferredUnit(unitkey, unitTemplate || (context2 == null ? void 0 : context2.unitTemplate)),
70296
70395
  [unitkey, unitTemplate, context2 == null ? void 0 : context2.unitTemplate]
@@ -70303,38 +70402,14 @@ const UnitInput = ({
70303
70402
  toUnit: initDisplayUnit,
70304
70403
  unitkey,
70305
70404
  defaultFromUnit: propUnit,
70306
- doNotConvertValue
70307
- });
70308
- const { value: convertedAutoValue } = safeConvertValue({
70309
- value: autoValue,
70310
- toUnit: initDisplayUnit,
70311
- unitkey,
70312
- defaultFromUnit: propAutoUnit,
70313
- doNotConvertValue
70405
+ doNotConvertValue: noConversion
70314
70406
  });
70315
- const initDisplayLayer = convertedValue !== "" ? { value: convertedValue, unit: initDisplayUnit } : convertedAutoValue !== "" ? { value: convertedAutoValue, unit: initDisplayUnit } : { value: propValue, unit: propUnit };
70407
+ const initDisplayLayer = convertedValue !== "" ? { value: convertedValue, unit: initDisplayUnit } : { value: propValue, unit: propUnit };
70316
70408
  const [displayLayer, setDisplayLayer] = useState(initDisplayLayer);
70317
70409
  const derivedAllowEmpty = allowEmpty || (displayLayer == null ? void 0 : displayLayer.value) === void 0;
70318
- const [predefinedOptionsMenuState, setPredefinedOptionsMenuState] = useState(
70319
- initialPredefinedOption ? PredefinedOptionsMenuState.PREDEFINED : PredefinedOptionsMenuState.CUSTOM
70320
- );
70321
- const isAutoValue = propValue === "" && autoValue;
70322
- const disableInternalErrorValidationMessages = !!(disabledValidation || autoValue);
70323
- const foundPredefinedMenuOption = predefinedOptions && predefinedOptions.find((el2) => {
70324
- if (!(el2 == null ? void 0 : el2.value)) return;
70325
- if (selectedPredefinedOptionKey) {
70326
- return selectedPredefinedOptionKey === el2.valueKey;
70327
- }
70328
- const predefinedMenuItemUnit = isValueWithUnit(el2.value) ? getUnit(el2.value) : "";
70329
- const { value: resultValue = value } = convertUnit({
70330
- value: String(value),
70331
- unitkey,
70332
- toUnit: predefinedMenuItemUnit
70333
- });
70334
- return withUnit(resultValue, predefinedMenuItemUnit) === el2.value;
70335
- });
70410
+ const disableInternalErrorValidationMessages = !!disabledValidation;
70336
70411
  const getAlternativeUnits = () => {
70337
- const valueToList = isAutoValue ? autoValue : value ?? "";
70412
+ const valueToList = value ?? "";
70338
70413
  const initToUnit = displayLayer.unit;
70339
70414
  const shouldConvert = checkConversion({
70340
70415
  value: valueToList,
@@ -70393,7 +70468,7 @@ const UnitInput = ({
70393
70468
  toUnit: initDisplayUnit,
70394
70469
  unitkey,
70395
70470
  defaultFromUnit: propUnit,
70396
- doNotConvertValue
70471
+ doNotConvertValue: noConversion
70397
70472
  });
70398
70473
  newValue = resultValue;
70399
70474
  newUnit = initDisplayUnit;
@@ -70403,96 +70478,29 @@ const UnitInput = ({
70403
70478
  toUnit: displayLayer.unit,
70404
70479
  unitkey,
70405
70480
  defaultFromUnit: propUnit,
70406
- doNotConvertValue
70481
+ doNotConvertValue: noConversion
70407
70482
  });
70408
70483
  newValue = resultValue;
70409
70484
  newUnit = displayLayer.unit;
70410
70485
  }
70411
- if (newValue !== void 0) {
70486
+ if (newValue !== void 0 && !initialPredefinedOption) {
70412
70487
  setDisplayLayer({ value: newValue, unit: newUnit });
70413
70488
  }
70414
- if (predefinedOptions) {
70415
- if (foundPredefinedMenuOption && shouldLinkAutomaticly) {
70416
- setPredefinedOptionsMenuState(PredefinedOptionsMenuState.PREDEFINED);
70417
- } else {
70418
- setPredefinedOptionsMenuState(PredefinedOptionsMenuState.CUSTOM);
70419
- }
70420
- }
70421
70489
  }
70422
- }, [initDisplayUnit, value, error2, shouldLinkAutomaticly]);
70490
+ }, [initDisplayUnit, value, error2]);
70423
70491
  const alternativeUnits = getAlternativeUnits();
70424
70492
  const displayUnitLabel = label$b(displayLayer.unit) || displayLayer.unit || "";
70425
70493
  const noConvert = noConversion || !alternativeUnits || alternativeUnits && alternativeUnits.length === 1;
70426
70494
  const stringName = getStringName(name2);
70427
- let sectionsPredefinedMenu;
70428
- const createPredefinedOption = (el2) => {
70429
- const elementValue = (el2 == null ? void 0 : el2.value) ? el2.value : "";
70430
- const [value2 = "", unit2 = ""] = isValueWithUnit(elementValue) ? split$1(elementValue) : [elementValue];
70431
- return {
70432
- type: MenuType.OPTION,
70433
- inline: true,
70434
- onClick: () => {
70435
- const validation = validateNumber(value2);
70436
- if (validation.valid && !disabled2) {
70437
- setPredefinedOptionsMenuState(PredefinedOptionsMenuState.PREDEFINED);
70438
- onChange({
70439
- target: {
70440
- value: elementValue,
70441
- name: typeof name2 === "string" ? name2 : (name2 == null ? void 0 : name2.fieldName) || "",
70442
- predefinedSelected: true,
70443
- predefinedOption: el2
70444
- }
70445
- });
70446
- }
70447
- },
70448
- label: /* @__PURE__ */ jsxs(Fragment$1, { children: [
70449
- /* @__PURE__ */ jsx(Text, { children: el2.label }),
70450
- /* @__PURE__ */ jsx(Spacer, { width: "20px", height: "0" })
70451
- ] }),
70452
- description: isValueWithUnit(elementValue) ? `${value2} ${unit2}` : elementValue,
70453
- selected: foundPredefinedMenuOption === el2 && predefinedOptionsMenuState === PredefinedOptionsMenuState.PREDEFINED
70454
- };
70455
- };
70456
- sectionsPredefinedMenu = [
70457
- {
70458
- type: MenuType.OPTION,
70459
- inline: true,
70460
- onClick: () => {
70461
- if (predefinedOptionsMenuState !== PredefinedOptionsMenuState.CUSTOM && !disabled2) {
70462
- onChange({
70463
- target: {
70464
- value: withUnit(displayLayer.value, displayLayer.unit),
70465
- name: typeof name2 === "string" ? name2 : (name2 == null ? void 0 : name2.fieldName) || ""
70466
- }
70467
- });
70468
- }
70469
- },
70470
- label: "Custom",
70471
- selected: predefinedOptionsMenuState === PredefinedOptionsMenuState.CUSTOM
70472
- }
70473
- ];
70474
- if (predefinedOptions == null ? void 0 : predefinedOptions.length) {
70475
- const dynamicOptions = predefinedOptions.map(createPredefinedOption);
70476
- sectionsPredefinedMenu = [...sectionsPredefinedMenu, ...dynamicOptions];
70477
- }
70478
70495
  const getPlaceholder = (placeholder22) => {
70479
- if (isAutoValue) {
70480
- const { value: resultValue } = safeConvertValue({
70481
- value: autoValue,
70482
- toUnit: displayLayer.unit,
70483
- unitkey,
70484
- defaultFromUnit: propAutoUnit,
70485
- doNotConvertValue
70486
- });
70487
- return resultValue;
70488
- } else if (isValueWithUnit(placeholder22)) {
70496
+ if (isValueWithUnit(placeholder22)) {
70489
70497
  const placeholderUnit = getUnit(placeholder22);
70490
70498
  const { value: resultValue } = safeConvertValue({
70491
70499
  value: placeholder22,
70492
70500
  toUnit: displayLayer.unit,
70493
70501
  unitkey,
70494
70502
  defaultFromUnit: placeholderUnit,
70495
- doNotConvertValue
70503
+ doNotConvertValue: noConversion
70496
70504
  });
70497
70505
  return resultValue;
70498
70506
  }
@@ -70504,32 +70512,27 @@ const UnitInput = ({
70504
70512
  className: predefinedOptionsMenuState === PredefinedOptionsMenuState.PREDEFINED ? cx$2(styles.predefinedMenuActive) : "",
70505
70513
  children: /* @__PURE__ */ jsxs(InputGroup, { small: small2, width: width2, children: [
70506
70514
  predefinedOptions && /* @__PURE__ */ jsx(
70507
- Tooltip,
70515
+ PredefinedOptionsMenu,
70508
70516
  {
70509
- text: predefinedOptionsMenuState === PredefinedOptionsMenuState.PREDEFINED ? foundPredefinedMenuOption == null ? void 0 : foundPredefinedMenuOption.label : "",
70510
- children: /* @__PURE__ */ jsx(
70511
- Menu,
70512
- {
70513
- maxHeight: 380,
70514
- groupOrder: "first",
70515
- testId: testId && `${testId}-predefined-menu`,
70516
- disabled: disabled2,
70517
- menu: {
70518
- colored: true,
70519
- trigger: "Component",
70520
- component: /* @__PURE__ */ jsx(
70521
- Button$1,
70522
- {
70523
- groupOrder: "first",
70524
- active: predefinedOptionsMenuState === PredefinedOptionsMenuState.PREDEFINED,
70525
- icon: predefinedOptionsMenuState === PredefinedOptionsMenuState.PREDEFINED ? "link" : "unlink"
70526
- }
70527
- ),
70528
- small: small2,
70529
- sections: sectionsPredefinedMenu
70517
+ testId,
70518
+ predefinedOptions,
70519
+ value: displayLayer.value,
70520
+ onPredefinedOptionSelect: (newValue) => {
70521
+ onChange({
70522
+ target: {
70523
+ value: newValue,
70524
+ name: stringName
70530
70525
  }
70531
- }
70532
- )
70526
+ });
70527
+ setDisplayLayer({
70528
+ value: newValue,
70529
+ unit: getUnit(newValue) || displayLayer.unit
70530
+ });
70531
+ },
70532
+ disabled: disabled2,
70533
+ initialPredefinedOption,
70534
+ predefinedOptionsMenuState,
70535
+ setPredefinedOptionsMenuState
70533
70536
  }
70534
70537
  ),
70535
70538
  /* @__PURE__ */ jsx("div", { className: styles.inputWrapper, children: /* @__PURE__ */ jsx(
@@ -70576,7 +70579,7 @@ const UnitInput = ({
70576
70579
  inline: true,
70577
70580
  onClick: (evt) => {
70578
70581
  evt.stopPropagation();
70579
- onClickUnit(isAutoValue ? "" : value2, altUnit);
70582
+ onClickUnit(value2, altUnit);
70580
70583
  },
70581
70584
  description: displayUnit,
70582
70585
  selected: displayUnit === displayUnitLabel,