@ecohouse/ui 0.1.59 → 0.1.61
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.
- package/dist/index.cjs +665 -468
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +33 -12
- package/dist/index.d.ts +33 -12
- package/dist/index.js +558 -366
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/components/Button/Button.tsx +6 -2
- package/src/components/CommentCard/CommentCard.tsx +3 -0
- package/src/components/Counter/Counter.tsx +5 -3
- package/src/components/DatePicker/DatePicker.tsx +98 -40
- package/src/components/Range/Range.tsx +1 -1
- package/src/components/VerificationCodeInput/VerificationCodeInput.tsx +28 -4
- package/src/icons/Backspace/BackspaceIcon.test.ts +9 -0
- package/src/icons/Backspace/BackspaceIcon.tsx +20 -0
- package/src/icons/Backspace/BackspaceIcon.web.tsx +26 -0
- package/src/icons/Backspace/backspacePath.ts +3 -0
- package/src/icons/Backspace/index.ts +1 -0
- package/src/icons/Fingerprint/FingerprintIcon.test.ts +9 -0
- package/src/icons/Fingerprint/FingerprintIcon.tsx +23 -0
- package/src/icons/Fingerprint/FingerprintIcon.web.tsx +29 -0
- package/src/icons/Fingerprint/fingerprintPaths.ts +6 -0
- package/src/icons/Fingerprint/index.ts +1 -0
- package/src/icons/GoogleBrand/GoogleBrandIcon.test.ts +14 -0
- package/src/icons/GoogleBrand/GoogleBrandIcon.tsx +15 -0
- package/src/icons/GoogleBrand/GoogleBrandIcon.web.tsx +21 -0
- package/src/icons/GoogleBrand/googleBrandPaths.ts +18 -0
- package/src/icons/GoogleBrand/index.ts +1 -0
- package/src/icons/PaymentCard/PaymentCardIcon.tsx +14 -0
- package/src/icons/PaymentCard/PaymentCardIcon.web.tsx +13 -0
- package/src/icons/PaymentCard/index.ts +1 -0
- package/src/icons/PaymentCard/paymentCardPath.ts +3 -0
- package/src/icons/Receipt/ReceiptIcon.tsx +14 -0
- package/src/icons/Receipt/ReceiptIcon.web.tsx +13 -0
- package/src/icons/Receipt/index.ts +1 -0
- package/src/icons/Receipt/receiptPath.ts +3 -0
- package/src/icons/index.ts +5 -0
- package/src/icons/registry.ts +13 -1
- package/src/index.ts +5 -0
- package/src/theme/typography.ts +8 -8
- package/src/utils/dateUtils.ts +7 -4
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import Svg, { Path } from "react-native-svg";
|
|
2
|
+
import type { IconProps } from "../types";
|
|
3
|
+
import { GOOGLE_BRAND_PATHS } from "./googleBrandPaths";
|
|
4
|
+
|
|
5
|
+
export { GOOGLE_BRAND_PATHS } from "./googleBrandPaths";
|
|
6
|
+
|
|
7
|
+
export function GoogleBrandIcon({ size = 18 }: IconProps) {
|
|
8
|
+
return (
|
|
9
|
+
<Svg width={size} height={size} viewBox="0 0 18 18" fill="none">
|
|
10
|
+
{GOOGLE_BRAND_PATHS.map((path) => (
|
|
11
|
+
<Path key={path.fill} clipRule="evenodd" d={path.d} fill={path.fill} fillRule="evenodd" />
|
|
12
|
+
))}
|
|
13
|
+
</Svg>
|
|
14
|
+
);
|
|
15
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { IconProps } from "../types";
|
|
2
|
+
import { GOOGLE_BRAND_PATHS } from "./googleBrandPaths";
|
|
3
|
+
|
|
4
|
+
export function GoogleBrandIcon({ size = 18 }: IconProps) {
|
|
5
|
+
return (
|
|
6
|
+
<svg
|
|
7
|
+
width={size}
|
|
8
|
+
height={size}
|
|
9
|
+
viewBox="0 0 18 18"
|
|
10
|
+
fill="none"
|
|
11
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
12
|
+
aria-hidden
|
|
13
|
+
>
|
|
14
|
+
{GOOGLE_BRAND_PATHS.map((path) => (
|
|
15
|
+
<path key={path.fill} clipRule="evenodd" d={path.d} fill={path.fill} fillRule="evenodd" />
|
|
16
|
+
))}
|
|
17
|
+
</svg>
|
|
18
|
+
);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export { GOOGLE_BRAND_PATHS } from "./googleBrandPaths";
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export const GOOGLE_BRAND_PATHS = [
|
|
2
|
+
{
|
|
3
|
+
d: "M17.64 9.20456C17.64 8.56637 17.5827 7.95274 17.4764 7.36365H9V10.845H13.8436C13.635 11.97 13.0009 12.9232 12.0477 13.5614V15.8196H14.9564C16.6582 14.2527 17.64 11.9455 17.64 9.20456Z",
|
|
4
|
+
fill: "#4285F4",
|
|
5
|
+
},
|
|
6
|
+
{
|
|
7
|
+
d: "M9.00366 18C11.4337 18 13.4709 17.1941 14.96 15.8195L12.0514 13.5613C11.2455 14.1013 10.2146 14.4204 9.00366 14.4204C6.65957 14.4204 4.67548 12.8372 3.96776 10.71H0.960938V13.0418C2.44185 15.9831 5.48548 18 9.00366 18Z",
|
|
8
|
+
fill: "#34A853",
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
d: "M3.96409 10.7099C3.78409 10.1699 3.68182 9.59313 3.68182 8.99995C3.68182 8.40677 3.78409 7.82995 3.96409 7.28995V4.95813H0.957273C0.347727 6.17313 0 7.54768 0 8.99995C0 10.4522 0.347727 11.8268 0.957273 13.0418L3.96409 10.7099Z",
|
|
12
|
+
fill: "#FBBC05",
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
d: "M9.00366 3.57955C10.325 3.57955 11.5114 4.03364 12.4441 4.92545L15.0255 2.34409C13.4668 0.891818 11.4296 0 9.00366 0C5.48548 0 2.44185 2.01682 0.960938 4.95818L3.96776 7.29C4.67548 5.16273 6.65957 3.57955 9.00366 3.57955Z",
|
|
16
|
+
fill: "#A63E3E",
|
|
17
|
+
},
|
|
18
|
+
] as const;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { GoogleBrandIcon, GOOGLE_BRAND_PATHS } from "./GoogleBrandIcon";
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import Svg, { Path } from "react-native-svg";
|
|
2
|
+
import { colors } from "../../theme";
|
|
3
|
+
import type { IconProps } from "../types";
|
|
4
|
+
import { PAYMENT_CARD_PATH } from "./paymentCardPath";
|
|
5
|
+
|
|
6
|
+
export function PaymentCardIcon({ size = 16, color = colors.grey100 }: IconProps) {
|
|
7
|
+
return (
|
|
8
|
+
<Svg width={size} height={size} viewBox="0 0 16 16" fill="none">
|
|
9
|
+
<Path d={PAYMENT_CARD_PATH} fill={color} />
|
|
10
|
+
</Svg>
|
|
11
|
+
);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export { PAYMENT_CARD_PATH } from "./paymentCardPath";
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { colors } from "../../theme";
|
|
2
|
+
import type { IconProps } from "../types";
|
|
3
|
+
import { PAYMENT_CARD_PATH } from "./paymentCardPath";
|
|
4
|
+
|
|
5
|
+
export function PaymentCardIcon({ size = 16, color = colors.grey100 }: IconProps) {
|
|
6
|
+
return (
|
|
7
|
+
<svg width={size} height={size} viewBox="0 0 16 16" fill="none" aria-hidden>
|
|
8
|
+
<path d={PAYMENT_CARD_PATH} fill={color} />
|
|
9
|
+
</svg>
|
|
10
|
+
);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export { PAYMENT_CARD_PATH } from "./paymentCardPath";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { PaymentCardIcon, PAYMENT_CARD_PATH } from "./PaymentCardIcon";
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/** Filled payment card icon path — 16×16 viewBox. */
|
|
2
|
+
export const PAYMENT_CARD_PATH =
|
|
3
|
+
"M4.66536 10H6.66536C6.84218 10 7.01174 9.9298 7.13677 9.80478C7.26179 9.67975 7.33203 9.51019 7.33203 9.33337C7.33203 9.15656 7.26179 8.98699 7.13677 8.86197C7.01174 8.73695 6.84218 8.66671 6.66536 8.66671H4.66536C4.48855 8.66671 4.31898 8.73695 4.19396 8.86197C4.06894 8.98699 3.9987 9.15656 3.9987 9.33337C3.9987 9.51019 4.06894 9.67975 4.19396 9.80478C4.31898 9.9298 4.48855 10 4.66536 10ZM12.6654 3.33337H3.33203C2.8016 3.33337 2.29289 3.54409 1.91782 3.91916C1.54274 4.29423 1.33203 4.80294 1.33203 5.33337V11.3334C1.33203 11.8638 1.54274 12.3725 1.91782 12.7476C2.29289 13.1227 2.8016 13.3334 3.33203 13.3334H12.6654C13.1958 13.3334 13.7045 13.1227 14.0796 12.7476C14.4546 12.3725 14.6654 11.8638 14.6654 11.3334V5.33337C14.6654 4.80294 14.4546 4.29423 14.0796 3.91916C13.7045 3.54409 13.1958 3.33337 12.6654 3.33337ZM13.332 11.3334C13.332 11.5102 13.2618 11.6798 13.1368 11.8048C13.0117 11.9298 12.8422 12 12.6654 12H3.33203C3.15522 12 2.98565 11.9298 2.86063 11.8048C2.7356 11.6798 2.66536 11.5102 2.66536 11.3334V7.33337H13.332V11.3334ZM13.332 6.00004H2.66536V5.33337C2.66536 5.15656 2.7356 4.98699 2.86063 4.86197C2.98565 4.73695 3.15522 4.66671 3.33203 4.66671H12.6654C12.8422 4.66671 13.0117 4.73695 13.1368 4.86197C13.2618 4.98699 13.332 5.15656 13.332 5.33337V6.00004Z";
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import Svg, { Path } from "react-native-svg";
|
|
2
|
+
import { colors } from "../../theme";
|
|
3
|
+
import type { IconProps } from "../types";
|
|
4
|
+
import { RECEIPT_PATH } from "./receiptPath";
|
|
5
|
+
|
|
6
|
+
export function ReceiptIcon({ size = 16, color = colors.grey100 }: IconProps) {
|
|
7
|
+
return (
|
|
8
|
+
<Svg width={size} height={size} viewBox="0 0 16 16" fill="none">
|
|
9
|
+
<Path d={RECEIPT_PATH} fill={color} />
|
|
10
|
+
</Svg>
|
|
11
|
+
);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export { RECEIPT_PATH } from "./receiptPath";
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { colors } from "../../theme";
|
|
2
|
+
import type { IconProps } from "../types";
|
|
3
|
+
import { RECEIPT_PATH } from "./receiptPath";
|
|
4
|
+
|
|
5
|
+
export function ReceiptIcon({ size = 16, color = colors.grey100 }: IconProps) {
|
|
6
|
+
return (
|
|
7
|
+
<svg width={size} height={size} viewBox="0 0 16 16" fill="none" aria-hidden>
|
|
8
|
+
<path d={RECEIPT_PATH} fill={color} />
|
|
9
|
+
</svg>
|
|
10
|
+
);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export { RECEIPT_PATH } from "./receiptPath";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { ReceiptIcon, RECEIPT_PATH } from "./ReceiptIcon";
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/** Filled receipt icon path — 16×16 viewBox. */
|
|
2
|
+
export const RECEIPT_PATH =
|
|
3
|
+
"M6.66667 5.33337H10.6667C10.8435 5.33337 11.013 5.26314 11.1381 5.13811C11.2631 5.01309 11.3333 4.84352 11.3333 4.66671C11.3333 4.4899 11.2631 4.32033 11.1381 4.1953C11.013 4.07028 10.8435 4.00004 10.6667 4.00004H6.66667C6.48986 4.00004 6.32029 4.07028 6.19526 4.1953C6.07024 4.32033 6 4.4899 6 4.66671C6 4.84352 6.07024 5.01309 6.19526 5.13811C6.32029 5.26314 6.48986 5.33337 6.66667 5.33337ZM5.33333 8.00004H10.6667C10.8435 8.00004 11.013 7.9298 11.1381 7.80478C11.2631 7.67975 11.3333 7.51019 11.3333 7.33337C11.3333 7.15656 11.2631 6.98699 11.1381 6.86197C11.013 6.73695 10.8435 6.66671 10.6667 6.66671H5.33333C5.15652 6.66671 4.98695 6.73695 4.86193 6.86197C4.7369 6.98699 4.66667 7.15656 4.66667 7.33337C4.66667 7.51019 4.7369 7.67975 4.86193 7.80478C4.98695 7.9298 5.15652 8.00004 5.33333 8.00004ZM5.33333 10.6667H10.6667C10.8435 10.6667 11.013 10.5965 11.1381 10.4714C11.2631 10.3464 11.3333 10.1769 11.3333 10C11.3333 9.82323 11.2631 9.65366 11.1381 9.52864C11.013 9.40361 10.8435 9.33337 10.6667 9.33337H5.33333C5.15652 9.33337 4.98695 9.40361 4.86193 9.52864C4.7369 9.65366 4.66667 9.82323 4.66667 10C4.66667 10.1769 4.7369 10.3464 4.86193 10.4714C4.98695 10.5965 5.15652 10.6667 5.33333 10.6667ZM13.3333 1.33337H2.66667C2.48986 1.33337 2.32029 1.40361 2.19526 1.52864C2.07024 1.65366 2 1.82323 2 2.00004V14C2 14.1238 2.03448 14.2452 2.09957 14.3505C2.16466 14.4558 2.25779 14.541 2.36852 14.5963C2.47926 14.6517 2.60323 14.6751 2.72654 14.664C2.84984 14.6529 2.96762 14.6077 3.06667 14.5334L4.44667 13.5L5.82 14.5334C5.9354 14.6199 6.07575 14.6667 6.22 14.6667C6.36425 14.6667 6.5046 14.6199 6.62 14.5334L8 13.5L9.38 14.5334C9.4954 14.6199 9.63575 14.6667 9.78 14.6667C9.92425 14.6667 10.0646 14.6199 10.18 14.5334L11.5533 13.5L12.9333 14.5334C13.0329 14.6075 13.1511 14.6525 13.2748 14.6631C13.3985 14.6737 13.5226 14.6495 13.6333 14.5934C13.7433 14.538 13.8357 14.4532 13.9005 14.3485C13.9652 14.2438 13.9996 14.1232 14 14V2.00004C14 1.82323 13.9298 1.65366 13.8047 1.52864C13.6797 1.40361 13.5101 1.33337 13.3333 1.33337ZM12.6667 12.6667L11.9533 12.1334C11.8379 12.0468 11.6976 12 11.5533 12C11.4091 12 11.2687 12.0468 11.1533 12.1334L9.78 13.1667L8.4 12.1334C8.2846 12.0468 8.14425 12 8 12C7.85575 12 7.7154 12.0468 7.6 12.1334L6.22 13.1667L4.84667 12.1334C4.73127 12.0468 4.59091 12 4.44667 12C4.30242 12 4.16206 12.0468 4.04667 12.1334L3.33333 12.6667V2.66671H12.6667V12.6667Z";
|
package/src/icons/index.ts
CHANGED
|
@@ -12,6 +12,7 @@ export { AlertTriangleIcon } from "./AlertTriangle";
|
|
|
12
12
|
export { AppleIcon } from "./Store";
|
|
13
13
|
export { ArrowLeftIcon } from "./ArrowLeft";
|
|
14
14
|
export { ArrowRightIcon } from "./ArrowRight";
|
|
15
|
+
export { BackspaceIcon } from "./Backspace";
|
|
15
16
|
export { BagIcon } from "./Bag";
|
|
16
17
|
export { BanIcon } from "./Ban";
|
|
17
18
|
export { BlockedGuestsIcon } from "./BlockedGuests";
|
|
@@ -59,6 +60,7 @@ export {
|
|
|
59
60
|
export { QuietHoursIcon, NoSmokingIcon, PawIcon, TrashIcon } from "./HouseRules";
|
|
60
61
|
export { FacebookIcon } from "./Facebook";
|
|
61
62
|
export { FiltersIcon } from "./Filters";
|
|
63
|
+
export { FingerprintIcon } from "./Fingerprint";
|
|
62
64
|
export { FullscreenIcon } from "./Fullscreen";
|
|
63
65
|
export { CutleryIcon } from "./Cutlery";
|
|
64
66
|
export { DollarIcon } from "./Dollar";
|
|
@@ -68,6 +70,7 @@ export { DoubleCheckIcon } from "./DoubleCheck";
|
|
|
68
70
|
export { HeartIcon } from "./Heart";
|
|
69
71
|
export { HeadsetIcon } from "./Headset";
|
|
70
72
|
export { GlobeIcon } from "./Globe";
|
|
73
|
+
export { GoogleBrandIcon } from "./GoogleBrand";
|
|
71
74
|
export { GooglePlayIcon } from "./Store";
|
|
72
75
|
export { HelpCircleIcon } from "./HelpCircle";
|
|
73
76
|
export { HideIcon } from "./Hide";
|
|
@@ -99,9 +102,11 @@ export { NotificationQrCodeIcon } from "./NotificationQrCode";
|
|
|
99
102
|
export { NotificationSuccessIcon } from "./NotificationSuccess";
|
|
100
103
|
export { NotificationWarningIcon } from "./NotificationWarning";
|
|
101
104
|
export { PhoneIcon } from "./Phone";
|
|
105
|
+
export { PaymentCardIcon } from "./PaymentCard";
|
|
102
106
|
export { PlusIcon } from "./Plus";
|
|
103
107
|
export { MinusIcon } from "./Minus";
|
|
104
108
|
export { RefreshIcon } from "./Refresh";
|
|
109
|
+
export { ReceiptIcon } from "./Receipt";
|
|
105
110
|
export { RefundStatusIcon } from "./RefundStatus";
|
|
106
111
|
export { SearchIcon } from "./Search";
|
|
107
112
|
export { SettingsIcon } from "./Settings";
|
package/src/icons/registry.ts
CHANGED
|
@@ -2,6 +2,7 @@ import { ActiveGuestsIcon } from "./ActiveGuests";
|
|
|
2
2
|
import { ArrowRightIcon } from "./ArrowRight";
|
|
3
3
|
import { AlertTriangleIcon } from "./AlertTriangle";
|
|
4
4
|
import { AppleIcon, GooglePlayIcon } from "./Store";
|
|
5
|
+
import { BackspaceIcon } from "./Backspace";
|
|
5
6
|
import { BagIcon } from "./Bag";
|
|
6
7
|
import { BanIcon } from "./Ban";
|
|
7
8
|
import { BlockedGuestsIcon } from "./BlockedGuests";
|
|
@@ -47,6 +48,8 @@ import {
|
|
|
47
48
|
} from "./CottageDetail";
|
|
48
49
|
import { NoSmokingIcon, PawIcon, QuietHoursIcon, TrashIcon } from "./HouseRules";
|
|
49
50
|
import { FacebookIcon } from "./Facebook";
|
|
51
|
+
import { FingerprintIcon } from "./Fingerprint";
|
|
52
|
+
import { GoogleBrandIcon } from "./GoogleBrand";
|
|
50
53
|
import { FiltersIcon } from "./Filters";
|
|
51
54
|
import { FullscreenIcon } from "./Fullscreen";
|
|
52
55
|
import { CutleryIcon } from "./Cutlery";
|
|
@@ -87,8 +90,10 @@ import { NotificationQrCodeIcon } from "./NotificationQrCode";
|
|
|
87
90
|
import { NotificationSuccessIcon } from "./NotificationSuccess";
|
|
88
91
|
import { NotificationWarningIcon } from "./NotificationWarning";
|
|
89
92
|
import { PhoneIcon } from "./Phone";
|
|
93
|
+
import { PaymentCardIcon } from "./PaymentCard";
|
|
90
94
|
import { PlusIcon } from "./Plus";
|
|
91
95
|
import { RefreshIcon } from "./Refresh";
|
|
96
|
+
import { ReceiptIcon } from "./Receipt";
|
|
92
97
|
import { RefundStatusIcon } from "./RefundStatus";
|
|
93
98
|
import { SearchIcon } from "./Search";
|
|
94
99
|
import { SettingsIcon } from "./Settings";
|
|
@@ -118,6 +123,7 @@ export const icons = {
|
|
|
118
123
|
areaExpand: AreaExpandIcon,
|
|
119
124
|
apple: AppleIcon,
|
|
120
125
|
arrowRight: ArrowRightIcon,
|
|
126
|
+
backspace: BackspaceIcon,
|
|
121
127
|
bag: BagIcon,
|
|
122
128
|
ban: BanIcon,
|
|
123
129
|
blockedGuests: BlockedGuestsIcon,
|
|
@@ -148,6 +154,8 @@ export const icons = {
|
|
|
148
154
|
bedrooms: BedroomsIcon,
|
|
149
155
|
cardLocation: CardLocationIcon,
|
|
150
156
|
facebook: FacebookIcon,
|
|
157
|
+
fingerprint: FingerprintIcon,
|
|
158
|
+
googleBrand: GoogleBrandIcon,
|
|
151
159
|
filters: FiltersIcon,
|
|
152
160
|
fullscreen: FullscreenIcon,
|
|
153
161
|
guests: GuestsIcon,
|
|
@@ -185,12 +193,14 @@ export const icons = {
|
|
|
185
193
|
notificationSuccess: NotificationSuccessIcon,
|
|
186
194
|
notificationWarning: NotificationWarningIcon,
|
|
187
195
|
paw: PawIcon,
|
|
196
|
+
paymentCard: PaymentCardIcon,
|
|
188
197
|
phone: PhoneIcon,
|
|
189
198
|
qrCode: QrCodeIcon,
|
|
190
199
|
quietHours: QuietHoursIcon,
|
|
191
200
|
ratingStar: RatingStarIcon,
|
|
192
201
|
plus: PlusIcon,
|
|
193
202
|
refresh: RefreshIcon,
|
|
203
|
+
receipt: ReceiptIcon,
|
|
194
204
|
refundStatus: RefundStatusIcon,
|
|
195
205
|
search: SearchIcon,
|
|
196
206
|
saveHeart: SaveHeartIcon,
|
|
@@ -282,6 +292,8 @@ export const iconGroups = {
|
|
|
282
292
|
"smartKey",
|
|
283
293
|
"stayHome",
|
|
284
294
|
"filters",
|
|
295
|
+
"backspace",
|
|
296
|
+
"fingerprint",
|
|
285
297
|
"fullscreen",
|
|
286
298
|
"heart",
|
|
287
299
|
"headset",
|
|
@@ -333,7 +345,7 @@ export const iconGroups = {
|
|
|
333
345
|
"notificationQrCode",
|
|
334
346
|
"notificationWarning",
|
|
335
347
|
],
|
|
336
|
-
social: ["apple", "facebook", "googlePlay", "instagram", "linkedin"],
|
|
348
|
+
social: ["apple", "facebook", "googleBrand", "googlePlay", "instagram", "linkedin"],
|
|
337
349
|
interface: [
|
|
338
350
|
"areaExpand",
|
|
339
351
|
"cutlery",
|
package/src/index.ts
CHANGED
|
@@ -144,6 +144,7 @@ export {
|
|
|
144
144
|
getIconsByGroup,
|
|
145
145
|
ArrowLeftIcon,
|
|
146
146
|
ArrowRightIcon,
|
|
147
|
+
BackspaceIcon,
|
|
147
148
|
BagIcon,
|
|
148
149
|
BanIcon,
|
|
149
150
|
BellIcon,
|
|
@@ -188,6 +189,8 @@ export {
|
|
|
188
189
|
PawIcon,
|
|
189
190
|
TrashIcon,
|
|
190
191
|
FacebookIcon,
|
|
192
|
+
FingerprintIcon,
|
|
193
|
+
GoogleBrandIcon,
|
|
191
194
|
FiltersIcon,
|
|
192
195
|
FullscreenIcon,
|
|
193
196
|
HeartIcon,
|
|
@@ -222,8 +225,10 @@ export {
|
|
|
222
225
|
NotificationSuccessIcon,
|
|
223
226
|
NotificationWarningIcon,
|
|
224
227
|
PhoneIcon,
|
|
228
|
+
PaymentCardIcon,
|
|
225
229
|
PlusIcon,
|
|
226
230
|
RefreshIcon,
|
|
231
|
+
ReceiptIcon,
|
|
227
232
|
RefundStatusIcon,
|
|
228
233
|
SearchIcon,
|
|
229
234
|
SettingsIcon,
|
package/src/theme/typography.ts
CHANGED
|
@@ -2,20 +2,20 @@ export const fonts = {
|
|
|
2
2
|
sans: "Noto Sans Armenian",
|
|
3
3
|
} as const;
|
|
4
4
|
|
|
5
|
-
/** Button label — SemiBold, line-height
|
|
5
|
+
/** Button label — SemiBold, 125%+ line-height so Noto Sans Armenian is not clipped. */
|
|
6
6
|
export const buttonTypography = {
|
|
7
7
|
lg: {
|
|
8
8
|
fontFamily: fonts.sans,
|
|
9
9
|
fontSize: 14,
|
|
10
10
|
fontWeight: "600" as const,
|
|
11
|
-
lineHeight:
|
|
11
|
+
lineHeight: 20,
|
|
12
12
|
letterSpacing: 0.42,
|
|
13
13
|
},
|
|
14
14
|
sm: {
|
|
15
15
|
fontFamily: fonts.sans,
|
|
16
16
|
fontSize: 12,
|
|
17
17
|
fontWeight: "600" as const,
|
|
18
|
-
lineHeight:
|
|
18
|
+
lineHeight: 16,
|
|
19
19
|
letterSpacing: 0.36,
|
|
20
20
|
},
|
|
21
21
|
} as const;
|
|
@@ -47,12 +47,12 @@ export const segmentedToggleTypography = {
|
|
|
47
47
|
letterSpacing: 0,
|
|
48
48
|
} as const;
|
|
49
49
|
|
|
50
|
-
/** Language switcher trigger and option labels — SemiBold 14, tracking 3%. */
|
|
50
|
+
/** Language switcher trigger and option labels — SemiBold 14, 18px line-height, tracking 3%. */
|
|
51
51
|
export const languageSwitcherTypography = {
|
|
52
52
|
fontFamily: fonts.sans,
|
|
53
53
|
fontSize: 14,
|
|
54
54
|
fontWeight: "600" as const,
|
|
55
|
-
lineHeight:
|
|
55
|
+
lineHeight: 18,
|
|
56
56
|
letterSpacing: 0.42,
|
|
57
57
|
} as const;
|
|
58
58
|
|
|
@@ -222,7 +222,7 @@ export const datePickerTypography = {
|
|
|
222
222
|
fontFamily: fonts.sans,
|
|
223
223
|
fontSize: 14,
|
|
224
224
|
fontWeight: "700" as const,
|
|
225
|
-
lineHeight:
|
|
225
|
+
lineHeight: 18,
|
|
226
226
|
letterSpacing: 0,
|
|
227
227
|
},
|
|
228
228
|
/** Weekday header (ԵՐ, ԵՔ, ...) — Regular, uppercase, centered, Grey/300. */
|
|
@@ -230,14 +230,14 @@ export const datePickerTypography = {
|
|
|
230
230
|
fontFamily: fonts.sans,
|
|
231
231
|
fontSize: 12,
|
|
232
232
|
fontWeight: "400" as const,
|
|
233
|
-
lineHeight:
|
|
233
|
+
lineHeight: 16,
|
|
234
234
|
letterSpacing: 0,
|
|
235
235
|
},
|
|
236
236
|
day: {
|
|
237
237
|
fontFamily: fonts.sans,
|
|
238
238
|
fontSize: 14,
|
|
239
239
|
fontWeight: "400" as const,
|
|
240
|
-
lineHeight:
|
|
240
|
+
lineHeight: 18,
|
|
241
241
|
letterSpacing: 0,
|
|
242
242
|
},
|
|
243
243
|
} as const;
|
package/src/utils/dateUtils.ts
CHANGED
|
@@ -83,9 +83,10 @@ export function formatDateDayShortMonth(date: Date, monthNames: string[], letter
|
|
|
83
83
|
}
|
|
84
84
|
|
|
85
85
|
/**
|
|
86
|
-
* Builds a 6×7 grid of calendar days for the month containing `monthDate`,
|
|
87
|
-
* including
|
|
88
|
-
*
|
|
86
|
+
* Builds a 4–6 × 7 grid of calendar days for the month containing `monthDate`,
|
|
87
|
+
* including adjacent-month days only when they share a week with this month.
|
|
88
|
+
* Trailing weeks that are entirely the next month are omitted.
|
|
89
|
+
* `weekStartsOn` follows the JS `Date#getDay()` convention
|
|
89
90
|
* (0 = Sunday, 1 = Monday, ...).
|
|
90
91
|
*/
|
|
91
92
|
export function getMonthMatrix(monthDate: Date, weekStartsOn: 0 | 1 = 1): Date[][] {
|
|
@@ -105,7 +106,9 @@ export function getMonthMatrix(monthDate: Date, weekStartsOn: 0 | 1 = 1): Date[]
|
|
|
105
106
|
days.push(cursor);
|
|
106
107
|
cursor = new Date(cursor.getFullYear(), cursor.getMonth(), cursor.getDate() + 1);
|
|
107
108
|
}
|
|
108
|
-
|
|
109
|
+
if (days.some((day) => day.getMonth() === month)) {
|
|
110
|
+
weeks.push(days);
|
|
111
|
+
}
|
|
109
112
|
}
|
|
110
113
|
return weeks;
|
|
111
114
|
}
|