@redneckz/wildless-cms-uni-blocks 0.2.79 → 0.2.83

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 (152) hide show
  1. package/bundle/bundle.umd.js +158 -9
  2. package/bundle/bundle.umd.min.js +1 -1
  3. package/dist/ProjectSettings.d.ts +1 -0
  4. package/dist/ProjectSettings.js.map +1 -1
  5. package/dist/components/Blocks.d.ts +1 -0
  6. package/dist/components/Blocks.js +2 -0
  7. package/dist/components/Blocks.js.map +1 -1
  8. package/dist/components/CreditCalculator/CreditCalculator.d.ts +2 -1
  9. package/dist/components/CreditCalculator/CreditCalculator.js +43 -15
  10. package/dist/components/CreditCalculator/CreditCalculator.js.map +1 -1
  11. package/dist/components/CreditCalculator/CreditCalculatorContent.d.ts +15 -0
  12. package/dist/components/CreditCalculator/CreditCalculatorContent.js +2 -0
  13. package/dist/components/CreditCalculator/CreditCalculatorContent.js.map +1 -0
  14. package/dist/components/CreditCalculator/constants.d.ts +7 -0
  15. package/dist/components/CreditCalculator/constants.js +10 -0
  16. package/dist/components/CreditCalculator/constants.js.map +1 -0
  17. package/dist/components/CreditCalculator/getCalculatorParams.d.ts +7 -0
  18. package/dist/components/CreditCalculator/getCalculatorParams.js +11 -0
  19. package/dist/components/CreditCalculator/getCalculatorParams.js.map +1 -0
  20. package/dist/components/CreditCalculator/getCreditRate.d.ts +7 -0
  21. package/dist/components/CreditCalculator/getCreditRate.js +13 -0
  22. package/dist/components/CreditCalculator/getCreditRate.js.map +1 -0
  23. package/dist/components/CreditCalculator/getCreditTermYears.d.ts +1 -0
  24. package/dist/components/CreditCalculator/getCreditTermYears.js +15 -0
  25. package/dist/components/CreditCalculator/getCreditTermYears.js.map +1 -0
  26. package/dist/components/CreditCalculator/getMonthlyPayment.d.ts +11 -0
  27. package/dist/components/CreditCalculator/getMonthlyPayment.js +19 -0
  28. package/dist/components/CreditCalculator/getMonthlyPayment.js.map +1 -0
  29. package/dist/components/Footer/SocialMedia.js +11 -5
  30. package/dist/components/Footer/SocialMedia.js.map +1 -1
  31. package/dist/components/Header/HeaderSecondaryMenu.js +1 -1
  32. package/dist/components/Header/HeaderSecondaryMenu.js.map +1 -1
  33. package/dist/hooks/useCreditCalculatorData.d.ts +3 -0
  34. package/dist/hooks/useCreditCalculatorData.js +15 -0
  35. package/dist/hooks/useCreditCalculatorData.js.map +1 -0
  36. package/dist/ui-kit/Icon/Icon.js +1 -1
  37. package/dist/ui-kit/Icon/Icon.js.map +1 -1
  38. package/dist/ui-kit/InputRange/InputRange.js +3 -2
  39. package/dist/ui-kit/InputRange/InputRange.js.map +1 -1
  40. package/dist/utils/addSpacesBetweenNumbers.d.ts +1 -0
  41. package/dist/utils/addSpacesBetweenNumbers.js +5 -0
  42. package/dist/utils/addSpacesBetweenNumbers.js.map +1 -0
  43. package/lib/ProjectSettings.d.ts +1 -0
  44. package/lib/ProjectSettings.js.map +1 -1
  45. package/lib/common.css +1 -1
  46. package/lib/components/Accordion/Accordion.fixture.d.ts +4 -0
  47. package/lib/components/BenefitsBlock/BenefitsBlock.fixture.d.ts +2 -0
  48. package/lib/components/Blocks.d.ts +1 -0
  49. package/lib/components/Blocks.js +2 -0
  50. package/lib/components/Blocks.js.map +1 -1
  51. package/lib/components/ComparisonTable/ComparisonTable.fixture.d.ts +8 -0
  52. package/lib/components/ContentPage/ContentPage.fixture.d.ts +6 -0
  53. package/lib/components/CreditCalculator/CreditCalculator.d.ts +2 -1
  54. package/lib/components/CreditCalculator/CreditCalculator.fixture.d.ts +2 -0
  55. package/lib/components/CreditCalculator/CreditCalculator.js +43 -15
  56. package/lib/components/CreditCalculator/CreditCalculator.js.map +1 -1
  57. package/lib/components/CreditCalculator/CreditCalculatorContent.d.ts +15 -0
  58. package/lib/components/CreditCalculator/CreditCalculatorContent.js +2 -0
  59. package/lib/components/CreditCalculator/CreditCalculatorContent.js.map +1 -0
  60. package/lib/components/CreditCalculator/constants.d.ts +7 -0
  61. package/lib/components/CreditCalculator/constants.js +8 -0
  62. package/lib/components/CreditCalculator/constants.js.map +1 -0
  63. package/lib/components/CreditCalculator/getCalculatorParams.d.ts +7 -0
  64. package/lib/components/CreditCalculator/getCalculatorParams.js +8 -0
  65. package/lib/components/CreditCalculator/getCalculatorParams.js.map +1 -0
  66. package/lib/components/CreditCalculator/getCreditRate.d.ts +7 -0
  67. package/lib/components/CreditCalculator/getCreditRate.js +10 -0
  68. package/lib/components/CreditCalculator/getCreditRate.js.map +1 -0
  69. package/lib/components/CreditCalculator/getCreditTermYears.d.ts +1 -0
  70. package/lib/components/CreditCalculator/getCreditTermYears.js +12 -0
  71. package/lib/components/CreditCalculator/getCreditTermYears.js.map +1 -0
  72. package/lib/components/CreditCalculator/getMonthlyPayment.d.ts +11 -0
  73. package/lib/components/CreditCalculator/getMonthlyPayment.js +16 -0
  74. package/lib/components/CreditCalculator/getMonthlyPayment.js.map +1 -0
  75. package/lib/components/ExchangeRateTile/ExchangeRateTile.fixture.d.ts +4 -0
  76. package/lib/components/Footer/Footer.fixture.d.ts +2 -0
  77. package/lib/components/Footer/SocialMedia.js +11 -5
  78. package/lib/components/Footer/SocialMedia.js.map +1 -1
  79. package/lib/components/Gallery/Gallery.fixture.d.ts +9 -0
  80. package/lib/components/Header/Header.fixture.d.ts +2 -0
  81. package/lib/components/Header/HeaderSecondaryMenu.js +1 -1
  82. package/lib/components/Header/HeaderSecondaryMenu.js.map +1 -1
  83. package/lib/components/LikeControl/LikeControl.fixture.d.ts +2 -0
  84. package/lib/components/MiniGallery/MiniGallery.fixture.d.ts +5 -0
  85. package/lib/components/MobileAppTile/MobileAppTile.fixture.d.ts +4 -0
  86. package/lib/components/Placeholder/Placeholder.fixture.d.ts +2 -0
  87. package/lib/components/ProductBlock/ProductBlock.fixture.d.ts +5 -0
  88. package/lib/components/ProductGallery/ProductGallery.fixture.d.ts +2 -0
  89. package/lib/components/ProductTile/ProductTile.fixture.d.ts +7 -0
  90. package/lib/components/PromoTile/PromoTile.fixture.d.ts +4 -0
  91. package/lib/components/StepsBlock/StepsBlock.fixture.d.ts +2 -0
  92. package/lib/components/TextBlock/TextBlock.fixture.d.ts +2 -0
  93. package/lib/components/Tile/Tile.fixture.d.ts +8 -0
  94. package/lib/cosmos.decorator.d.ts +4 -0
  95. package/lib/hooks/useCreditCalculatorData.d.ts +3 -0
  96. package/lib/hooks/useCreditCalculatorData.js +12 -0
  97. package/lib/hooks/useCreditCalculatorData.js.map +1 -0
  98. package/lib/setup-fixture.d.ts +3 -0
  99. package/lib/ui-kit/BlockItem/BlockItem.fixture.d.ts +3 -0
  100. package/lib/ui-kit/Button/Button.fixture.d.ts +13 -0
  101. package/lib/ui-kit/Button/LikeButton.fixture.d.ts +5 -0
  102. package/lib/ui-kit/HeaderItem/HeaderItem.fixture.d.ts +6 -0
  103. package/lib/ui-kit/Icon/Icon.fixture.d.ts +5 -0
  104. package/lib/ui-kit/Icon/Icon.js +2 -2
  105. package/lib/ui-kit/Icon/Icon.js.map +1 -1
  106. package/lib/ui-kit/InputRange/InputRange.js +3 -2
  107. package/lib/ui-kit/InputRange/InputRange.js.map +1 -1
  108. package/lib/ui-kit/Logo/Logo.fixture.d.ts +3 -0
  109. package/lib/ui-kit/TopItem/TopItem.fixture.d.ts +6 -0
  110. package/lib/utils/addSpacesBetweenNumbers.d.ts +1 -0
  111. package/lib/utils/addSpacesBetweenNumbers.js +2 -0
  112. package/lib/utils/addSpacesBetweenNumbers.js.map +1 -0
  113. package/package.json +3 -2
  114. package/src/ProjectSettings.ts +1 -0
  115. package/src/components/Blocks.ts +2 -0
  116. package/src/components/ContentPage/ContentPage.page.json +7 -0
  117. package/src/components/CreditCalculator/CreditCalculator.fixture.tsx +1 -1
  118. package/src/components/CreditCalculator/CreditCalculator.tsx +132 -85
  119. package/src/components/CreditCalculator/CreditCalculatorContent.ts +17 -0
  120. package/src/components/CreditCalculator/constants.ts +8 -0
  121. package/src/components/CreditCalculator/getCalculatorParams.ts +16 -0
  122. package/src/components/CreditCalculator/getCreditRate.ts +18 -0
  123. package/src/components/CreditCalculator/getCreditTermYears.spec.ts +10 -0
  124. package/src/components/CreditCalculator/getCreditTermYears.ts +15 -0
  125. package/src/components/CreditCalculator/getMonthlyPayment.ts +32 -0
  126. package/src/components/Footer/Footer.fixture.tsx +1 -1
  127. package/src/components/Footer/SocialMedia.tsx +26 -7
  128. package/src/components/Header/HeaderSecondaryMenu.tsx +6 -2
  129. package/src/hooks/useCreditCalculatorData.ts +23 -0
  130. package/src/icons/ActualBalanceIcon.svg +1 -0
  131. package/src/icons/AppleIcon.svg +1 -1
  132. package/src/icons/CalendarIcon.svg +1 -1
  133. package/src/icons/ClockIcon.svg +1 -0
  134. package/src/icons/ComfortableCompIcon.svg +1 -0
  135. package/src/icons/DollarIcon.svg +1 -1
  136. package/src/icons/EmptyWalletIcon.svg +1 -1
  137. package/src/icons/EuroIcon.svg +1 -1
  138. package/src/icons/GlassIcon.svg +1 -1
  139. package/src/icons/GridIcon.svg +2 -2
  140. package/src/icons/LoupeIcon.svg +1 -1
  141. package/src/icons/NewDocIcon.svg +1 -0
  142. package/src/icons/OkIcon.svg +1 -2
  143. package/src/icons/PassSendIcon.svg +1 -0
  144. package/src/icons/PercentageSquareIcon.svg +1 -1
  145. package/src/icons/PlayMarketIcon.svg +1 -1
  146. package/src/icons/ProfileIcon.svg +1 -1
  147. package/src/icons/SignDocsIcon.svg +1 -0
  148. package/src/icons/TelegramIcon.svg +1 -2
  149. package/src/icons/VKIcon.svg +1 -2
  150. package/src/ui-kit/Icon/Icon.tsx +8 -7
  151. package/src/ui-kit/InputRange/InputRange.tsx +3 -2
  152. package/src/utils/addSpacesBetweenNumbers.ts +2 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Blocks.js","sourceRoot":"","sources":["../../src/components/Blocks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,MAAM;IACN,MAAM;IACN,WAAW;IACX,IAAI;IACJ,SAAS;IACT,SAAS;IACT,WAAW;IACX,YAAY;IACZ,UAAU;IACV,aAAa;IACb,cAAc;IACd,gBAAgB;IAChB,aAAa;IACb,OAAO;IACP,WAAW;IACX,eAAe;IACf,SAAS;CACV,CAAC"}
1
+ {"version":3,"file":"Blocks.js","sourceRoot":"","sources":["../../src/components/Blocks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAEvE,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,MAAM;IACN,MAAM;IACN,WAAW;IACX,IAAI;IACJ,SAAS;IACT,SAAS;IACT,WAAW;IACX,YAAY;IACZ,UAAU;IACV,aAAa;IACb,cAAc;IACd,gBAAgB;IAChB,aAAa;IACb,OAAO;IACP,WAAW;IACX,eAAe;IACf,SAAS;IACT,gBAAgB;CACjB,CAAC"}
@@ -0,0 +1,8 @@
1
+ declare const _default: {
2
+ 'with images': any;
3
+ 'with images and hidden rows': any;
4
+ 'with images and colored first column': any;
5
+ 'with icons': any;
6
+ 'with icons and two cols': any;
7
+ };
8
+ export default _default;
@@ -0,0 +1,6 @@
1
+ declare const _default: {
2
+ default: any;
3
+ mobile: any;
4
+ editor: any;
5
+ };
6
+ export default _default;
@@ -1,4 +1,5 @@
1
1
  import { UniBlockProps } from '../../types';
2
- export interface CreditCalculatorProps extends UniBlockProps {
2
+ import { CreditCalculatorContent } from './CreditCalculatorContent';
3
+ export interface CreditCalculatorProps extends CreditCalculatorContent, UniBlockProps {
3
4
  }
4
5
  export declare const CreditCalculator: (props: import("@redneckz/uni-jsx").PropsWithChildren<CreditCalculatorProps, any>, context?: any) => any;
@@ -0,0 +1,2 @@
1
+ declare const _default: any;
2
+ export default _default;
@@ -1,27 +1,55 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "@redneckz/uni-jsx/jsx-runtime";
2
2
  import { JSX } from '@redneckz/uni-jsx';
3
+ import { useCreditCalculatorData } from '../../hooks/useCreditCalculatorData.js';
3
4
  import { Button } from '../../ui-kit/Button/Button.js';
4
5
  import { Checkbox } from '../../ui-kit/Checkbox/Checkbox.js';
5
6
  import { InputRange } from '../../ui-kit/InputRange/InputRange.js';
7
+ import { addSpacesBetweenNumbers } from '../../utils/addSpacesBetweenNumbers.js';
6
8
  import { clamp } from '../../utils/clamp.js';
7
- const borderStyle = 'border-solid border-3 border-primary-main rounded-md';
8
- const MIN_MONEY = 50000;
9
- const MAX_MONEY = 3000000;
9
+ import { DEFAULT_MAX_MONTHS, DEFAULT_MAX_SUM, DEFAULT_MIN_MONTHS, DEFAULT_MIN_SUM, DEFAULT_MONTHS, DEFAULT_SUM, MONTHS_IN_YEAR, } from './constants.js';
10
+ import { getCalculatorParams } from './getCalculatorParams.js';
11
+ import { getCreditRate } from './getCreditRate.js';
12
+ import { getCreditTermYears } from './getCreditTermYears.js';
13
+ import { getMonthlyPayment } from './getMonthlyPayment.js';
10
14
  const STEP_MONEY = 1000;
11
- const CREDIT_TERM_YEARS = [2, 3, 4, 5, 6, 7];
12
- const MIN_MONTHS = 1;
13
- const MAX_MONTHS = 84;
14
15
  const STEP_MONTHS = 1;
15
- const MONTHS_IN_YEAR = 12;
16
- export const CreditCalculator = JSX(({ context, className }) => {
17
- const [moneyValue, setMoneyValue] = context.useState(350000);
18
- const [monthsValue, setMonthsValue] = context.useState(12);
16
+ const DEFAULT_PAYMENT_TYPE = 'annuity';
17
+ const borderStyle = 'border-solid border-3 border-primary-main rounded-md';
18
+ export const CreditCalculator = JSX(({ context, className, directoryName }) => {
19
+ const [moneyValue, setMoneyValue] = context.useState(undefined);
20
+ const [monthsValue, setMonthsValue] = context.useState(undefined);
19
21
  const [isAnnuityChecked, setIsAnnuityChecked] = context.useState(true);
20
22
  const [isInsuranceChecked, setIsInsuranceChecked] = context.useState(true);
21
- const handleButtonClick = (value) => {
22
- setMonthsValue(clamp(value * MONTHS_IN_YEAR, MIN_MONTHS, MAX_MONTHS));
23
- };
24
- return (_jsx("section", { className: `font-sans text-primary-text bg-white p-4 ${className}`, children: _jsxs("div", { className: `box-border p-12 flex flex-col justify-between ${borderStyle}`, children: [_jsxs("div", { className: "flex justify-between", children: [_jsxs("div", { className: "grow mr-11", children: [_jsx(InputRange, { title: "\u0416\u0435\u043B\u0430\u0435\u043C\u0430\u044F \u0441\u0443\u043C\u043C\u0430 \u043A\u0440\u0435\u0434\u0438\u0442\u0430, \u20BD", items: ['От 50 000 рублей', 'До 3 000 000 рублей'], min: MIN_MONEY, max: MAX_MONEY, step: STEP_MONEY, value: moneyValue, onChange: setMoneyValue }), _jsx(InputRange, { title: "\u0421\u0440\u043E\u043A \u043A\u0440\u0435\u0434\u0438\u0442\u0430, \u043C\u0435\u0441\u044F\u0446\u0435\u0432", items: ['Или выберите из предложенных вариантов ниже'], min: MIN_MONTHS, max: MAX_MONTHS, step: STEP_MONTHS, value: monthsValue, onChange: setMonthsValue }), _jsx("div", { className: "flex mb-7", children: CREDIT_TERM_YEARS.map((number, i) => renderButton(number, i, handleButtonClick)) }), _jsx(Checkbox, { text: "\u041F\u043E\u043B\u0443\u0447\u0430\u044E \u043F\u0435\u043D\u0441\u0438\u044E \u043D\u0430 \u043A\u0430\u0440\u0442\u0443 \u0420\u043E\u0441\u0441\u0435\u043B\u044C\u0445\u043E\u0437\u0431\u0430\u043D\u043A\u0430", checked: isAnnuityChecked, onChange: setIsAnnuityChecked }), _jsx(Checkbox, { className: "mb-4", text: "\u041A\u043E\u043C\u043F\u043B\u0435\u043A\u0441\u043D\u0430\u044F \u0441\u0442\u0440\u0430\u0445\u043E\u0432\u0430\u044F \u0437\u0430\u0449\u0438\u0442\u0430", checked: isInsuranceChecked, onChange: setIsInsuranceChecked })] }), _jsxs("div", { className: "p-9 bg-primary-main rounded-md text-white", children: [_jsx("div", { className: "text-base mb-5", children: "\u041D\u0430\u0448\u0435 \u043F\u0440\u0435\u0434\u043B\u043E\u0436\u0435\u043D\u0438\u0435" }), _jsx("div", { className: "text-sm opacity-60", children: "\u0415\u0436\u0435\u043C\u0435\u0441\u044F\u0447\u043D\u044B\u0439 \u043F\u043B\u0430\u0442\u0451\u0436" }), _jsx("div", { className: "text-lg mb-3", children: "26 827 \u20BD" }), _jsx("div", { className: "text-sm opacity-60", children: "\u0421\u0442\u0430\u0432\u043A\u0430" }), _jsx("div", { className: "text-lg", children: "16,9 %" })] })] }), _jsxs("div", { className: "flex items-center", children: [_jsx(Button, { className: "mr-3", text: "\u041E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u044C \u0437\u0430\u044F\u0432\u043A\u0443", version: "primary", href: "#" }), _jsx("div", { className: "w-80 text-xxs leading-4 text-secondary-text", "aria-label": "\u0421\u043E\u0433\u043B\u0430\u0448\u0435\u043D\u0438\u0435 \u043D\u0430 \u043E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0443 \u043F\u0435\u0440\u0441\u043E\u043D\u0430\u043B\u044C\u043D\u044B\u0445 \u0434\u0430\u043D\u043D\u044B\u0445", children: "\u041E\u0442\u043F\u0440\u0430\u0432\u043B\u044F\u044F \u0437\u0430\u044F\u0432\u043A\u0443, \u0432\u044B \u0441\u043E\u0433\u043B\u0430\u0448\u0430\u0435\u0442\u0435\u0441\u044C \u043D\u0430 \u043E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0443 \u043F\u0435\u0440\u0441\u043E\u043D\u0430\u043B\u044C\u043D\u044B\u0445 \u0434\u0430\u043D\u043D\u044B\u0445 \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043D\u043D\u043E \u0442\u0440\u0435\u0431\u043E\u0432\u0430\u043D\u0438\u044F\u043C \u0424\u0417\u00A0\u00AB\u041E\u00A0\u043F\u0435\u0440\u0441\u043E\u043D\u0430\u043B\u044C\u043D\u044B\u0445 \u0434\u0430\u043D\u043D\u044B\u0445\u00BB" })] })] }) }));
23
+ const tableRows = useCreditCalculatorData(context.useAsyncData, directoryName).rows;
24
+ const calculatorParams = getCalculatorParams({ tableRows, isAnnuity: isAnnuityChecked });
25
+ const defaultSum = calculatorParams.maxSum && calculatorParams.minSum
26
+ ? (calculatorParams.maxSum - calculatorParams.minSum) / 2
27
+ : DEFAULT_SUM;
28
+ const defaultMonths = calculatorParams.maxMonths && calculatorParams.minMonths
29
+ ? Math.round((calculatorParams.maxMonths - calculatorParams.minMonths) / 2)
30
+ : DEFAULT_MONTHS;
31
+ const minSum = calculatorParams?.minSum || DEFAULT_MIN_SUM;
32
+ const maxSum = calculatorParams?.maxSum || DEFAULT_MAX_SUM;
33
+ const minMonths = calculatorParams?.minMonths || DEFAULT_MIN_MONTHS;
34
+ const maxMonths = calculatorParams?.maxMonths || DEFAULT_MAX_MONTHS;
35
+ const rate = getCreditRate({ calculatorParams, isInsurance: isInsuranceChecked });
36
+ const montlyPayment = getMonthlyPayment({
37
+ calculatorParams,
38
+ paymentType: DEFAULT_PAYMENT_TYPE,
39
+ rate,
40
+ sum: moneyValue || defaultSum,
41
+ months: monthsValue || defaultMonths,
42
+ });
43
+ const creditTermYears = getCreditTermYears(minMonths, maxMonths);
44
+ function handleButtonClick(value) {
45
+ setMonthsValue(clamp(value * MONTHS_IN_YEAR, minMonths, maxMonths));
46
+ }
47
+ return (_jsx("section", { className: `font-sans text-primary-text bg-white p-4 ${className}`, children: _jsxs("div", { className: `box-border p-12 flex flex-col justify-between ${borderStyle}`, children: [_jsxs("div", { className: "flex justify-between", children: [_jsxs("div", { className: "grow mr-11", children: [_jsx(InputRange, { title: "\u0416\u0435\u043B\u0430\u0435\u043C\u0430\u044F \u0441\u0443\u043C\u043C\u0430 \u043A\u0440\u0435\u0434\u0438\u0442\u0430, \u20BD", items: [
48
+ `От ${addSpacesBetweenNumbers(minSum)} рублей`,
49
+ `До ${addSpacesBetweenNumbers(maxSum)} рублей`,
50
+ ], min: minSum, max: maxSum, step: STEP_MONEY, value: moneyValue || defaultSum, onChange: setMoneyValue }), _jsx(InputRange, { title: "\u0421\u0440\u043E\u043A \u043A\u0440\u0435\u0434\u0438\u0442\u0430, \u043C\u0435\u0441\u044F\u0446\u0435\u0432", items: ['Или выберите из предложенных вариантов ниже'], min: minMonths, max: maxMonths, step: STEP_MONTHS, value: monthsValue || defaultMonths, onChange: setMonthsValue }), _jsx("div", { className: "flex mb-7", children: creditTermYears.map((number, i) => renderButton(number, i, handleButtonClick)) }), _jsx(Checkbox, { text: "\u041F\u043E\u043B\u0443\u0447\u0430\u044E \u043F\u0435\u043D\u0441\u0438\u044E \u043D\u0430 \u043A\u0430\u0440\u0442\u0443 \u0420\u043E\u0441\u0441\u0435\u043B\u044C\u0445\u043E\u0437\u0431\u0430\u043D\u043A\u0430", checked: isAnnuityChecked, onChange: setIsAnnuityChecked }), _jsx(Checkbox, { className: "mb-4", text: "\u041A\u043E\u043C\u043F\u043B\u0435\u043A\u0441\u043D\u0430\u044F \u0441\u0442\u0440\u0430\u0445\u043E\u0432\u0430\u044F \u0437\u0430\u0449\u0438\u0442\u0430", checked: isInsuranceChecked, onChange: setIsInsuranceChecked })] }), _jsxs("div", { className: "p-9 bg-primary-main rounded-md text-white", children: [_jsx("div", { className: "text-base mb-5", children: "\u041D\u0430\u0448\u0435 \u043F\u0440\u0435\u0434\u043B\u043E\u0436\u0435\u043D\u0438\u0435" }), _jsx("div", { className: "text-sm opacity-60", children: "\u0415\u0436\u0435\u043C\u0435\u0441\u044F\u0447\u043D\u044B\u0439 \u043F\u043B\u0430\u0442\u0451\u0436" }), _jsxs("div", { className: "text-lg mb-3", children: [addSpacesBetweenNumbers(Math.round(montlyPayment)), " \u20BD"] }), _jsx("div", { className: "text-sm opacity-60", children: "\u0421\u0442\u0430\u0432\u043A\u0430" }), _jsxs("div", { className: "text-lg", children: [rate, " %"] })] })] }), _jsxs("div", { className: "flex items-center", children: [_jsx(Button, { className: "mr-3", text: "\u041E\u0442\u043F\u0440\u0430\u0432\u0438\u0442\u044C \u0437\u0430\u044F\u0432\u043A\u0443", version: "primary", href: "#" }), _jsx("div", { className: "w-80 text-xxs leading-4 text-secondary-text", "aria-label": "\u0421\u043E\u0433\u043B\u0430\u0448\u0435\u043D\u0438\u0435 \u043D\u0430 \u043E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0443 \u043F\u0435\u0440\u0441\u043E\u043D\u0430\u043B\u044C\u043D\u044B\u0445 \u0434\u0430\u043D\u043D\u044B\u0445", children: "\u041E\u0442\u043F\u0440\u0430\u0432\u043B\u044F\u044F \u0437\u0430\u044F\u0432\u043A\u0443, \u0432\u044B \u0441\u043E\u0433\u043B\u0430\u0448\u0430\u0435\u0442\u0435\u0441\u044C \u043D\u0430 \u043E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0443 \u043F\u0435\u0440\u0441\u043E\u043D\u0430\u043B\u044C\u043D\u044B\u0445 \u0434\u0430\u043D\u043D\u044B\u0445 \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043D\u043D\u043E \u0442\u0440\u0435\u0431\u043E\u0432\u0430\u043D\u0438\u044F\u043C \u0424\u0417\u00A0\u00AB\u041E\u00A0\u043F\u0435\u0440\u0441\u043E\u043D\u0430\u043B\u044C\u043D\u044B\u0445 \u0434\u0430\u043D\u043D\u044B\u0445\u00BB" })] })] }) }));
25
51
  });
26
- const renderButton = (number, i, handleClick) => (_jsx("div", { className: "bg-secondary-light rounded-3xl h-10 w-[75px] box-border mr-2 flex items-center justify-center cursor-pointer", role: "button", onClick: () => handleClick(number), children: _jsxs("span", { className: "font-medium text-sm", children: [number, " ", number > 4 ? 'лет' : 'года'] }) }, String(i)));
52
+ function renderButton(number, i, handleClick) {
53
+ return (_jsx("button", { className: "bg-secondary-light rounded-3xl h-10 w-[75px] box-border mr-2 flex items-center justify-center cursor-pointer border-none", onClick: () => handleClick(number), children: _jsxs("span", { className: "font-semibold text-sm", children: [number, " ", number === 1 ? 'год' : number > 4 ? 'лет' : 'года'] }) }, String(i)));
54
+ }
27
55
  //# sourceMappingURL=CreditCalculator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CreditCalculator.js","sourceRoot":"","sources":["../../../src/components/CreditCalculator/CreditCalculator.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CreditCalculator.js","sourceRoot":"","sources":["../../../src/components/CreditCalculator/CreditCalculator.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ export interface CalculatorParams {
2
+ isAnnuity?: boolean;
3
+ minSum?: number;
4
+ maxSum?: number;
5
+ minMonths?: number;
6
+ maxMonths?: number;
7
+ rateWithInsurance?: number;
8
+ rateWithoutInsurance?: number;
9
+ }
10
+ export interface CreditCalculatorData {
11
+ rows?: CalculatorParams[];
12
+ }
13
+ export interface CreditCalculatorContent {
14
+ directoryName?: string;
15
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=CreditCalculatorContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CreditCalculatorContent.js","sourceRoot":"","sources":["../../../src/components/CreditCalculator/CreditCalculatorContent.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ export declare const DEFAULT_MIN_SUM = 30000;
2
+ export declare const DEFAULT_MAX_SUM = 3000000;
3
+ export declare const DEFAULT_SUM: number;
4
+ export declare const DEFAULT_MIN_MONTHS = 1;
5
+ export declare const DEFAULT_MAX_MONTHS = 84;
6
+ export declare const DEFAULT_MONTHS: number;
7
+ export declare const MONTHS_IN_YEAR = 12;
@@ -0,0 +1,8 @@
1
+ export const DEFAULT_MIN_SUM = 30000;
2
+ export const DEFAULT_MAX_SUM = 3000000;
3
+ export const DEFAULT_SUM = (DEFAULT_MAX_SUM - DEFAULT_MIN_SUM) / 2;
4
+ export const DEFAULT_MIN_MONTHS = 1;
5
+ export const DEFAULT_MAX_MONTHS = 84;
6
+ export const DEFAULT_MONTHS = Math.round((DEFAULT_MAX_MONTHS - DEFAULT_MIN_MONTHS) / 2);
7
+ export const MONTHS_IN_YEAR = 12;
8
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/components/CreditCalculator/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,CAAC;AACrC,MAAM,CAAC,MAAM,eAAe,GAAG,OAAO,CAAC;AACvC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,eAAe,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;AACnE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC;AACpC,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AACrC,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,kBAAkB,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC;AAExF,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { CalculatorParams } from './CreditCalculatorContent';
2
+ interface GetCalculatorParamsParams {
3
+ tableRows?: CalculatorParams[];
4
+ isAnnuity?: boolean;
5
+ }
6
+ export declare const getCalculatorParams: (params: GetCalculatorParamsParams) => CalculatorParams;
7
+ export {};
@@ -0,0 +1,8 @@
1
+ export const getCalculatorParams = (params) => {
2
+ const { tableRows, isAnnuity = false } = params;
3
+ if (!tableRows)
4
+ return {};
5
+ const calculatorParams = tableRows.find((row) => row.isAnnuity === isAnnuity);
6
+ return calculatorParams || {};
7
+ };
8
+ //# sourceMappingURL=getCalculatorParams.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getCalculatorParams.js","sourceRoot":"","sources":["../../../src/components/CreditCalculator/getCalculatorParams.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAiC,EAAE,EAAE;IACvE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,KAAK,EAAE,GAAG,MAAM,CAAC;IAEhD,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,CAAC;IAE1B,MAAM,gBAAgB,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;IAE9E,OAAO,gBAAgB,IAAI,EAAE,CAAC;AAChC,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { CalculatorParams } from './CreditCalculatorContent';
2
+ interface GetCreditRateParams {
3
+ calculatorParams?: CalculatorParams;
4
+ isInsurance: boolean;
5
+ }
6
+ export declare const getCreditRate: (params: GetCreditRateParams) => number;
7
+ export {};
@@ -0,0 +1,10 @@
1
+ const DEFAULT_RATE = 5;
2
+ export const getCreditRate = (params) => {
3
+ const { calculatorParams, isInsurance } = params;
4
+ if (!calculatorParams)
5
+ return DEFAULT_RATE;
6
+ return isInsurance
7
+ ? calculatorParams?.rateWithInsurance || DEFAULT_RATE
8
+ : calculatorParams?.rateWithoutInsurance || DEFAULT_RATE;
9
+ };
10
+ //# sourceMappingURL=getCreditRate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getCreditRate.js","sourceRoot":"","sources":["../../../src/components/CreditCalculator/getCreditRate.ts"],"names":[],"mappings":"AAEA,MAAM,YAAY,GAAG,CAAC,CAAC;AAOvB,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAA2B,EAAE,EAAE;IAC3D,MAAM,EAAE,gBAAgB,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;IAEjD,IAAI,CAAC,gBAAgB;QAAE,OAAO,YAAY,CAAC;IAE3C,OAAO,WAAW;QAChB,CAAC,CAAC,gBAAgB,EAAE,iBAAiB,IAAI,YAAY;QACrD,CAAC,CAAC,gBAAgB,EAAE,oBAAoB,IAAI,YAAY,CAAC;AAC7D,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export declare const getCreditTermYears: (minMonths: number, maxMonths: number) => number[];
@@ -0,0 +1,12 @@
1
+ import { MONTHS_IN_YEAR } from './constants.js';
2
+ const MAX_YEARS_LENGTH = 5;
3
+ export const getCreditTermYears = (minMonths, maxMonths) => {
4
+ const totalYears = Math.ceil((maxMonths - minMonths) / 12);
5
+ const firstYear = Math.floor(minMonths / MONTHS_IN_YEAR) + 1;
6
+ const result = new Array(Math.min(totalYears - 1, MAX_YEARS_LENGTH))
7
+ .fill(0)
8
+ .map((_, i) => firstYear + i);
9
+ const maxYear = totalYears + firstYear - 1;
10
+ return result.concat(maxYear);
11
+ };
12
+ //# sourceMappingURL=getCreditTermYears.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getCreditTermYears.js","sourceRoot":"","sources":["../../../src/components/CreditCalculator/getCreditTermYears.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAE3B,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,SAAiB,EAAE,SAAiB,EAAE,EAAE;IACzE,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC;IAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IAE7D,MAAM,MAAM,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,EAAE,gBAAgB,CAAC,CAAC;SACjE,IAAI,CAAC,CAAC,CAAC;SACP,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IAEhC,MAAM,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,CAAC,CAAC;IAC3C,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AAChC,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { CalculatorParams } from './CreditCalculatorContent';
2
+ declare type PaymentType = 'annuity' | 'differentiated';
3
+ interface GetMonthlyPaymentParams {
4
+ calculatorParams?: CalculatorParams;
5
+ paymentType: PaymentType;
6
+ rate: number;
7
+ sum: number;
8
+ months: number;
9
+ }
10
+ export declare const getMonthlyPayment: (params: GetMonthlyPaymentParams) => number;
11
+ export {};
@@ -0,0 +1,16 @@
1
+ import { clamp } from '../../utils/clamp.js';
2
+ import { DEFAULT_MAX_SUM, DEFAULT_MIN_SUM, MONTHS_IN_YEAR } from './constants.js';
3
+ export const getMonthlyPayment = (params) => {
4
+ const { calculatorParams, paymentType, rate, sum, months } = params;
5
+ if (!calculatorParams)
6
+ return 0;
7
+ const finalSum = clamp(sum, calculatorParams.minSum || DEFAULT_MIN_SUM, calculatorParams.maxSum || DEFAULT_MAX_SUM);
8
+ if (paymentType === 'annuity') {
9
+ const annuityCoef = Number(rate) / (MONTHS_IN_YEAR * 100);
10
+ return finalSum * (annuityCoef + annuityCoef / (Math.pow(1 + annuityCoef, months) - 1));
11
+ }
12
+ else {
13
+ return finalSum / months + finalSum * (Number(rate) / 12);
14
+ }
15
+ };
16
+ //# sourceMappingURL=getMonthlyPayment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMonthlyPayment.js","sourceRoot":"","sources":["../../../src/components/CreditCalculator/getMonthlyPayment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAa/E,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,MAA+B,EAAE,EAAE;IACnE,MAAM,EAAE,gBAAgB,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAEpE,IAAI,CAAC,gBAAgB;QAAE,OAAO,CAAC,CAAC;IAEhC,MAAM,QAAQ,GAAG,KAAK,CACpB,GAAG,EACH,gBAAgB,CAAC,MAAM,IAAI,eAAe,EAC1C,gBAAgB,CAAC,MAAM,IAAI,eAAe,CAC3C,CAAC;IAEF,IAAI,WAAW,KAAK,SAAS,EAAE;QAC7B,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,GAAG,CAAC,CAAC;QAC1D,OAAO,QAAQ,GAAG,CAAC,WAAW,GAAG,WAAW,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KACzF;SAAM;QACL,OAAO,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;KAC3D;AACH,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ declare const _default: {
2
+ default: any;
3
+ };
4
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: any;
2
+ export default _default;
@@ -4,9 +4,15 @@ import { Icon } from '../../ui-kit/Icon/Icon.js';
4
4
  import { useLink } from '../../hooks/useLink.js';
5
5
  import { Button } from '../../ui-kit/Button/Button.js';
6
6
  const ICONS_MAP = [
7
- { origins: ['t.me', 'telegram.org'], icon: 'TelegramIcon', label: 'Телеграм' },
8
- { origins: ['vk.com'], icon: 'VKIcon', label: 'ВКонтакте' },
9
- { origins: ['ok.ru'], icon: 'OkIcon', label: 'Одноклассники' },
7
+ {
8
+ origins: ['t.me', 'telegram.org'],
9
+ icon: 'TelegramIcon',
10
+ label: 'Телеграм',
11
+ width: '20px',
12
+ height: '16px',
13
+ },
14
+ { origins: ['vk.com'], icon: 'VKIcon', label: 'ВКонтакте', width: '24px', height: '12px' },
15
+ { origins: ['ok.ru'], icon: 'OkIcon', label: 'Одноклассники', width: '12px', height: '20px' },
10
16
  ];
11
17
  export const SocialMedia = JSX(({ className, media, context }) => {
12
18
  const router = context.useRouter();
@@ -14,9 +20,9 @@ export const SocialMedia = JSX(({ className, media, context }) => {
14
20
  return (_jsx("div", { className: `flex items-end justify-end gap-2 pt-[30px] pb-7 ${className || ''}`, children: media?.map((_, index) => (_jsx(MediaButton, { ...useLink({ router, handlerDecorator }, _) }, String(index)))) }));
15
21
  });
16
22
  const MediaButton = JSX(({ href }) => {
17
- const { icon, label } = ICONS_MAP.find(({ origins }) => origins.some((_) => href?.includes(_))) || {};
23
+ const { icon, label, width, height } = ICONS_MAP.find(({ origins }) => origins.some((_) => href?.includes(_))) || {};
18
24
  if (!icon)
19
25
  return null;
20
- return (_jsx(Button, { rounded: true, href: href, target: "_blank", rel: "noopener noreferrer", "aria-label": label, className: "border-solid border border-main-divider w-9 h-9 flex items-center justify-center hover:text-primary-main", appendLeft: _jsx(Icon, { name: icon }) }));
26
+ return (_jsx(Button, { rounded: true, href: href, target: "_blank", rel: "noopener noreferrer", "aria-label": label, className: "border-solid border border-main-divider w-9 h-9 flex items-center justify-center hover:fill-primary-main", appendLeft: _jsx(Icon, { name: icon, width: width, height: height, className: "[&>*]:fill-primary-text [&>*]:hover:fill-primary-main" }) }));
21
27
  });
22
28
  //# sourceMappingURL=SocialMedia.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SocialMedia.js","sourceRoot":"","sources":["../../../src/components/Footer/SocialMedia.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAGxC,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,MAAM,SAAS,GAAgE;IAC7E,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE;IAC9E,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE;IAC3D,EAAE,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,EAAE;CAC/D,CAAC;AAMF,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAmB,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;IACjF,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IACnC,MAAM,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;IACrC,OAAO,CACL,cAAK,SAAS,EAAE,mDAAmD,SAAS,IAAI,EAAE,EAAE,YACjF,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CACxB,KAAC,WAAW,OAAyB,OAAO,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC,IAA3D,MAAM,CAAC,KAAK,CAAC,CAAkD,CAClF,CAAC,GACE,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAMH,MAAM,WAAW,GAAG,GAAG,CAAmB,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;IACrD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GACnB,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAEhF,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEvB,OAAO,CACL,KAAC,MAAM,IACL,OAAO,QACP,IAAI,EAAE,IAAI,EACV,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,gBACb,KAAK,EACjB,SAAS,EAAC,0GAA0G,EACpH,UAAU,EAAE,KAAC,IAAI,IAAC,IAAI,EAAE,IAAI,GAAI,GAChC,CACH,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"SocialMedia.js","sourceRoot":"","sources":["../../../src/components/Footer/SocialMedia.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAGxC,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,MAAM,SAAS,GAMV;IACH;QACE,OAAO,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC;QACjC,IAAI,EAAE,cAAc;QACpB,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,MAAM;KACf;IACD,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE;IAC1F,EAAE,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE;CAC9F,CAAC;AAMF,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAmB,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;IACjF,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IACnC,MAAM,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;IACrC,OAAO,CACL,cAAK,SAAS,EAAE,mDAAmD,SAAS,IAAI,EAAE,EAAE,YACjF,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CACxB,KAAC,WAAW,OAAyB,OAAO,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC,IAA3D,MAAM,CAAC,KAAK,CAAC,CAAkD,CAClF,CAAC,GACE,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAMH,MAAM,WAAW,GAAG,GAAG,CAAmB,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;IACrD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAClC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAEhF,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAEvB,OAAO,CACL,KAAC,MAAM,IACL,OAAO,QACP,IAAI,EAAE,IAAI,EACV,MAAM,EAAC,QAAQ,EACf,GAAG,EAAC,qBAAqB,gBACb,KAAK,EACjB,SAAS,EAAC,0GAA0G,EACpH,UAAU,EACR,KAAC,IAAI,IACH,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,SAAS,EAAC,uDAAuD,GACjE,GAEJ,CACH,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ declare const _default: {
2
+ default: any;
3
+ 'text and button': any;
4
+ 'list and button': any;
5
+ 'text and no button': any;
6
+ 'only title': any;
7
+ mobile: any;
8
+ };
9
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: any;
2
+ export default _default;
@@ -5,6 +5,6 @@ import { TopItem } from '../../ui-kit/TopItem/TopItem.js';
5
5
  import { HeaderSecondaryMenuButton } from './HeaderSecondaryMenuButton.js';
6
6
  export const HeaderSecondaryMenu = JSX(({ context, className, defaultLocation = '' }) => {
7
7
  const [city, getCity] = context.useGeolocation(defaultLocation);
8
- return (_jsxs("div", { className: `flex items-center ${className || ''}`, children: [_jsx(TopItem, { className: "mr-5", flat: true, href: "#", text: city, ariaLabel: "\u041C\u0435\u0441\u0442\u043E\u043F\u043E\u043B\u043E\u0436\u0435\u043D\u0438\u0435", onClick: getCity }), _jsx(TopItem, { className: "mr-7", flat: true, href: "#", text: "\u041E\u0444\u0438\u0441\u044B \u0438 \u0431\u0430\u043D\u043A\u043E\u043C\u0430\u0442\u044B", ariaLabel: "\u0421\u043F\u0438\u0441\u043E\u043A \u0432\u0441\u0435\u0445 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0445 \u043E\u0444\u0438\u0441\u043E\u0432 \u0438 \u0431\u0430\u043D\u043A\u043E\u043C\u0430\u0442\u043E\u0432" }), _jsx(HeaderSecondaryMenuButton, { className: "mr-5 text-primary-text hover:text-primary-main", ariaLabel: "\u041F\u043E\u0438\u0441\u043A \u043F\u043E \u0441\u0430\u0439\u0442\u0443", children: _jsx(Icon, { name: "LoupeIcon", "aria-hidden": "true" }) }), _jsx(HeaderSecondaryMenuButton, { className: "mr-5 text-primary-text hover:text-primary-main", ariaLabel: "\u041F\u0440\u043E\u0444\u0438\u043B\u044C", children: _jsx(Icon, { name: "ProfileIcon", "aria-hidden": "true" }) }), _jsx(HeaderSecondaryMenuButton, { className: "mr-5 text-secondary-light hover:text-secondary-active min-w-[32px] min-h-[32px]", ariaLabel: "\u0414\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0435 \u0441\u0441\u044B\u043B\u043A\u0438", children: _jsx(Icon, { name: "GridIcon", "aria-hidden": "true" }) })] }));
8
+ return (_jsxs("div", { className: `flex items-center ${className || ''}`, children: [_jsx(TopItem, { className: "mr-5", flat: true, href: "#", text: city, ariaLabel: "\u041C\u0435\u0441\u0442\u043E\u043F\u043E\u043B\u043E\u0436\u0435\u043D\u0438\u0435", onClick: getCity }), _jsx(TopItem, { className: "mr-7", flat: true, href: "#", text: "\u041E\u0444\u0438\u0441\u044B \u0438 \u0431\u0430\u043D\u043A\u043E\u043C\u0430\u0442\u044B", ariaLabel: "\u0421\u043F\u0438\u0441\u043E\u043A \u0432\u0441\u0435\u0445 \u0434\u043E\u0441\u0442\u0443\u043F\u043D\u044B\u0445 \u043E\u0444\u0438\u0441\u043E\u0432 \u0438 \u0431\u0430\u043D\u043A\u043E\u043C\u0430\u0442\u043E\u0432" }), _jsx(HeaderSecondaryMenuButton, { className: "mr-5 text-primary-text hover:text-primary-main", ariaLabel: "\u041F\u043E\u0438\u0441\u043A \u043F\u043E \u0441\u0430\u0439\u0442\u0443", children: _jsx(Icon, { name: "LoupeIcon", "aria-hidden": "true" }) }), _jsx(HeaderSecondaryMenuButton, { className: "mr-5 text-primary-text hover:text-primary-main", ariaLabel: "\u041F\u0440\u043E\u0444\u0438\u043B\u044C", children: _jsx(Icon, { name: "ProfileIcon", "aria-hidden": "true" }) }), _jsx(HeaderSecondaryMenuButton, { className: "mr-5 text-secondary-light hover:text-primary-main min-w-[32px] min-h-[32px]", ariaLabel: "\u0414\u043E\u043F\u043E\u043B\u043D\u0438\u0442\u0435\u043B\u044C\u043D\u044B\u0435 \u0441\u0441\u044B\u043B\u043A\u0438", children: _jsx(Icon, { name: "GridIcon", "aria-hidden": "true", className: "[&>*]:fill-secondary-light [&>*]:hover:fill-primary-main" }) })] }));
9
9
  });
10
10
  //# sourceMappingURL=HeaderSecondaryMenu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HeaderSecondaryMenu.js","sourceRoot":"","sources":["../../../src/components/Header/HeaderSecondaryMenu.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAExC,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AASxE,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CACpC,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,GAAG,EAAE,EAAE,EAAE,EAAE;IAC/C,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;IAEhE,OAAO,CACL,eAAK,SAAS,EAAE,qBAAqB,SAAS,IAAI,EAAE,EAAE,aACpD,KAAC,OAAO,IACN,SAAS,EAAC,MAAM,EAChB,IAAI,EAAE,IAAI,EACV,IAAI,EAAC,GAAG,EACR,IAAI,EAAE,IAAI,EACV,SAAS,EAAC,sFAAgB,EAC1B,OAAO,EAAE,OAAO,GAChB,EACF,KAAC,OAAO,IACN,SAAS,EAAC,MAAM,EAChB,IAAI,EAAE,IAAI,EACV,IAAI,EAAC,GAAG,EACR,IAAI,EAAC,8FAAmB,EACxB,SAAS,EAAC,+NAA2C,GACrD,EACF,KAAC,yBAAyB,IACxB,SAAS,EAAC,gDAAgD,EAC1D,SAAS,EAAC,4EAAgB,YAE1B,KAAC,IAAI,IAAC,IAAI,EAAC,WAAW,iBAAa,MAAM,GAAG,GAClB,EAC5B,KAAC,yBAAyB,IACxB,SAAS,EAAC,gDAAgD,EAC1D,SAAS,EAAC,4CAAS,YAEnB,KAAC,IAAI,IAAC,IAAI,EAAC,aAAa,iBAAa,MAAM,GAAG,GACpB,EAC5B,KAAC,yBAAyB,IACxB,SAAS,EAAC,iFAAiF,EAC3F,SAAS,EAAC,2HAAuB,YAEjC,KAAC,IAAI,IAAC,IAAI,EAAC,UAAU,iBAAa,MAAM,GAAG,GACjB,IACxB,CACP,CAAC;AACJ,CAAC,CACF,CAAC"}
1
+ {"version":3,"file":"HeaderSecondaryMenu.js","sourceRoot":"","sources":["../../../src/components/Header/HeaderSecondaryMenu.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAExC,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AASxE,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CACpC,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,GAAG,EAAE,EAAE,EAAE,EAAE;IAC/C,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;IAEhE,OAAO,CACL,eAAK,SAAS,EAAE,qBAAqB,SAAS,IAAI,EAAE,EAAE,aACpD,KAAC,OAAO,IACN,SAAS,EAAC,MAAM,EAChB,IAAI,EAAE,IAAI,EACV,IAAI,EAAC,GAAG,EACR,IAAI,EAAE,IAAI,EACV,SAAS,EAAC,sFAAgB,EAC1B,OAAO,EAAE,OAAO,GAChB,EACF,KAAC,OAAO,IACN,SAAS,EAAC,MAAM,EAChB,IAAI,EAAE,IAAI,EACV,IAAI,EAAC,GAAG,EACR,IAAI,EAAC,8FAAmB,EACxB,SAAS,EAAC,+NAA2C,GACrD,EACF,KAAC,yBAAyB,IACxB,SAAS,EAAC,gDAAgD,EAC1D,SAAS,EAAC,4EAAgB,YAE1B,KAAC,IAAI,IAAC,IAAI,EAAC,WAAW,iBAAa,MAAM,GAAG,GAClB,EAC5B,KAAC,yBAAyB,IACxB,SAAS,EAAC,gDAAgD,EAC1D,SAAS,EAAC,4CAAS,YAEnB,KAAC,IAAI,IAAC,IAAI,EAAC,aAAa,iBAAa,MAAM,GAAG,GACpB,EAC5B,KAAC,yBAAyB,IACxB,SAAS,EAAC,6EAA6E,EACvF,SAAS,EAAC,2HAAuB,YAEjC,KAAC,IAAI,IACH,IAAI,EAAC,UAAU,iBACH,MAAM,EAClB,SAAS,EAAC,0DAA0D,GACpE,GACwB,IACxB,CACP,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ declare const _default: any;
2
+ export default _default;
@@ -0,0 +1,5 @@
1
+ declare const _default: {
2
+ default: any;
3
+ 'only title': any;
4
+ };
5
+ export default _default;
@@ -0,0 +1,4 @@
1
+ declare const _default: {
2
+ default: any;
3
+ };
4
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: any;
2
+ export default _default;
@@ -0,0 +1,5 @@
1
+ declare const _default: {
2
+ default: any;
3
+ 'with items': any;
4
+ };
5
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: any;
2
+ export default _default;
@@ -0,0 +1,7 @@
1
+ declare const _default: {
2
+ credit: any;
3
+ pension: any;
4
+ 'credit-card': any;
5
+ 'pension-credit': any;
6
+ };
7
+ export default _default;
@@ -0,0 +1,4 @@
1
+ declare const _default: {
2
+ default: any;
3
+ };
4
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: any;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: any;
2
+ export default _default;
@@ -0,0 +1,8 @@
1
+ declare const _default: {
2
+ credit: any;
3
+ mortgage: any;
4
+ 'credit-card': any;
5
+ premium: any;
6
+ ecosystem: any;
7
+ };
8
+ export default _default;
@@ -0,0 +1,4 @@
1
+ declare const _default: ({ children }: {
2
+ children: any;
3
+ }) => any;
4
+ export default _default;
@@ -0,0 +1,3 @@
1
+ import type { AsyncDataHook } from '../components/ContentPage/ContentPageContext';
2
+ import { CreditCalculatorData } from '../components/CreditCalculator/CreditCalculatorContent';
3
+ export declare function useCreditCalculatorData(useAsyncData: AsyncDataHook, directoryName: string | undefined): CreditCalculatorData;
@@ -0,0 +1,12 @@
1
+ export function useCreditCalculatorData(useAsyncData, directoryName) {
2
+ const { data } = useAsyncData(creditCalculatorUrl(directoryName), () => fetchCreditCalculatorData(directoryName));
3
+ return data || {};
4
+ }
5
+ async function fetchCreditCalculatorData(directoryName) {
6
+ const response = await fetch(creditCalculatorUrl(directoryName));
7
+ return await response.json();
8
+ }
9
+ function creditCalculatorUrl(directoryName) {
10
+ return `/wcms-resources/${directoryName || 'credit-calculator-data'}.json`;
11
+ }
12
+ //# sourceMappingURL=useCreditCalculatorData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCreditCalculatorData.js","sourceRoot":"","sources":["../../src/hooks/useCreditCalculatorData.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,uBAAuB,CACrC,YAA2B,EAC3B,aAAiC;IAEjC,MAAM,EAAE,IAAI,EAAE,GAAG,YAAY,CAAC,mBAAmB,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,CACrE,yBAAyB,CAAC,aAAa,CAAC,CACzC,CAAC;IACF,OAAO,IAAI,IAAI,EAAE,CAAC;AACpB,CAAC;AAED,KAAK,UAAU,yBAAyB,CACtC,aAAiC;IAEjC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC,CAAC;IACjE,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;AAC/B,CAAC;AAED,SAAS,mBAAmB,CAAC,aAAiC;IAC5D,OAAO,mBAAmB,aAAa,IAAI,wBAAwB,OAAO,CAAC;AAC7E,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { ContentPageContext } from './components/ContentPage/ContentPageContext';
2
+ export declare const context: ContentPageContext;
3
+ export declare const mobileContext: ContentPageContext;
@@ -0,0 +1,3 @@
1
+ import '../../setup-fixture';
2
+ declare const _default: any;
3
+ export default _default;
@@ -0,0 +1,13 @@
1
+ import '../../setup-fixture';
2
+ declare const _default: {
3
+ all: any;
4
+ 'primary (Private clients)': any;
5
+ 'secondary (Private clients)': any;
6
+ 'primary (Business clients)': any;
7
+ 'secondary (Business clients)': any;
8
+ 'primary (Ecosystem own)': any;
9
+ 'secondary (Ecosystem own)': any;
10
+ 'primary (disabled)': any;
11
+ 'secondary (disabled)': any;
12
+ };
13
+ export default _default;
@@ -0,0 +1,5 @@
1
+ declare const _default: {
2
+ default: any;
3
+ rotate: any;
4
+ };
5
+ export default _default;
@@ -0,0 +1,6 @@
1
+ import '../../setup-fixture';
2
+ declare const _default: {
3
+ default: any;
4
+ active: any;
5
+ };
6
+ export default _default;
@@ -0,0 +1,5 @@
1
+ import '../../setup-fixture';
2
+ declare const _default: {
3
+ all: any;
4
+ };
5
+ export default _default;
@@ -1,5 +1,5 @@
1
- import { jsx as _jsx } from "@redneckz/uni-jsx/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "@redneckz/uni-jsx/jsx-runtime";
2
2
  import { JSX } from '@redneckz/uni-jsx';
3
3
  import { projectSettings } from '../../ProjectSettings.js';
4
- export const Icon = JSX(({ className, name, alt = `Icon ${name}`, title = alt, ...imgProps }) => (_jsx("img", { className: className, src: `${projectSettings.CDN || ''}icons/${name}.svg`, alt: alt, title: title, ...imgProps })));
4
+ export const Icon = JSX(({ className, name, alt = `Icon ${name}`, title = alt, ...imgProps }) => (_jsxs("svg", { className: className, ...imgProps, "aria-hidden": "true", children: [title ? _jsx("title", { children: title }) : null, alt ? _jsx("desc", { children: alt }) : null, _jsx("use", { href: `${projectSettings.CDN || ''}icons/${name}.svg#icon`, xlinkHref: `${projectSettings.CDN || ''}icons/${name}.svg#icon` })] })));
5
5
  //# sourceMappingURL=Icon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Icon.js","sourceRoot":"","sources":["../../../src/ui-kit/Icon/Icon.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGxD,MAAM,CAAC,MAAM,IAAI,GAAG,GAAG,CACrB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,GAAG,QAAQ,IAAI,EAAE,EAAE,KAAK,GAAG,GAAG,EAAE,GAAG,QAAQ,EAAE,EAAE,EAAE,CAAC,CACvE,cACE,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,GAAG,eAAe,CAAC,GAAG,IAAI,EAAE,SAAS,IAAI,MAAM,EACpD,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,KACR,QAAQ,GACZ,CACH,CACF,CAAC"}
1
+ {"version":3,"file":"Icon.js","sourceRoot":"","sources":["../../../src/ui-kit/Icon/Icon.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGxD,MAAM,CAAC,MAAM,IAAI,GAAG,GAAG,CACrB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,GAAG,QAAQ,IAAI,EAAE,EAAE,KAAK,GAAG,GAAG,EAAE,GAAG,QAAQ,EAAE,EAAE,EAAE,CAAC,CACvE,eAAK,SAAS,EAAE,SAAS,KAAM,QAAQ,iBAAc,MAAM,aACxD,KAAK,CAAC,CAAC,CAAC,0BAAQ,KAAK,GAAS,CAAC,CAAC,CAAC,IAAI,EACrC,GAAG,CAAC,CAAC,CAAC,yBAAO,GAAG,GAAQ,CAAC,CAAC,CAAC,IAAI,EAChC,cACE,IAAI,EAAE,GAAG,eAAe,CAAC,GAAG,IAAI,EAAE,SAAS,IAAI,WAAW,EAC1D,SAAS,EAAE,GAAG,eAAe,CAAC,GAAG,IAAI,EAAE,SAAS,IAAI,WAAW,GAC/D,IACE,CACP,CACF,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "@redneckz/uni-jsx/jsx-runtime";
2
2
  import { JSX } from '@redneckz/uni-jsx';
3
+ import { addSpacesBetweenNumbers } from '../../utils/addSpacesBetweenNumbers.js';
3
4
  export const InputRange = JSX(({ className, title, items = [], min = 1, max = 100, step = 1, value = min, onChange }) => {
4
5
  const handleChange = (value) => {
5
6
  if (!onChange)
@@ -8,7 +9,7 @@ export const InputRange = JSX(({ className, title, items = [], min = 1, max = 10
8
9
  onChange(sanitizedValue);
9
10
  };
10
11
  const inputStyle = {
11
- backgroundSize: `${(value * 100) / max - 1}% 100%`,
12
+ backgroundSize: `${(((value - min) * 100) / (max - min)).toFixed(2)}% 100%`,
12
13
  };
13
14
  const handleBlur = () => {
14
15
  if (!onChange)
@@ -18,6 +19,6 @@ export const InputRange = JSX(({ className, title, items = [], min = 1, max = 10
18
19
  if (value > max)
19
20
  onChange(max);
20
21
  };
21
- return (_jsxs("div", { className: className, children: [_jsxs("div", { className: "relative", children: [title ? (_jsx("span", { className: "absolute text-xs text-secondary-text top-1 mt-0.5 pl-4 ml-0.5", children: title })) : null, _jsx("input", { className: `m-0 font-sans text-sm w-full h-12 border-2 border-solid border-main-divider rounded-md outline-none p-0 pl-4 m-0 box-border text-primary-text ${title ? 'pt-4' : ''}`, value: String(value).replace(/\B(?=(\d{3})+(?!\d))/g, ' '), onChange: (e) => handleChange(e.target.value), onBlur: handleBlur }), _jsx("div", { className: "absolute inset-x-0 mt-0.5 top-8 px-4", children: _jsx("input", { className: "box-border w-full m-0 cursor-pointer slider", type: "range", min: min, max: max, step: step, value: value, onChange: (e) => handleChange(e.target.value), style: inputStyle }) })] }), _jsx("div", { className: "flex justify-between mt-3 mb-4", children: items.map((item, i) => (_jsx("span", { className: "text-xs text-secondary-text pl-4", children: item }, String(i)))) })] }));
22
+ return (_jsxs("div", { className: className, children: [_jsxs("div", { className: "relative", children: [title ? (_jsx("span", { className: "absolute text-xs text-secondary-text top-1 mt-0.5 pl-4 ml-0.5", children: title })) : null, _jsx("input", { className: `m-0 font-sans text-sm w-full h-12 border-2 border-solid border-main-divider rounded-md outline-none p-0 pl-4 m-0 box-border text-primary-text ${title ? 'pt-4' : ''}`, value: addSpacesBetweenNumbers(value), onChange: (e) => handleChange(e.target.value), onBlur: handleBlur }), _jsx("div", { className: "absolute inset-x-0 mt-0.5 top-8 px-4", children: _jsx("input", { className: "box-border w-full m-0 cursor-pointer slider", type: "range", min: min, max: max, step: step, value: value, onChange: (e) => handleChange(e.target.value), style: inputStyle }) })] }), _jsx("div", { className: "flex justify-between mt-3 mb-4", children: items.map((item, i) => (_jsx("span", { className: "text-xs text-secondary-text pl-4", children: item }, String(i)))) })] }));
22
23
  });
23
24
  //# sourceMappingURL=InputRange.js.map