diff options
| author | Oliver <oliver@mohlin.dev> | 2024-12-17 22:47:55 +0100 |
|---|---|---|
| committer | Oliver <oliver@mohlin.dev> | 2024-12-17 22:47:55 +0100 |
| commit | 0e780afbce9c62706eb0d8428093746c82eeac73 (patch) | |
| tree | 8bebe8a3047f8d8f2d8ce6053d9777cdfa4ed15d | |
| parent | 30491067b2071ae9a9b23da3d492da0f21b7a59b (diff) | |
| download | mullvadvpn-0e780afbce9c62706eb0d8428093746c82eeac73.tar.xz mullvadvpn-0e780afbce9c62706eb0d8428093746c82eeac73.zip | |
Move transient props to types folder
4 files changed, 12 insertions, 2 deletions
diff --git a/desktop/packages/mullvad-vpn/src/renderer/components/ImageView.tsx b/desktop/packages/mullvad-vpn/src/renderer/components/ImageView.tsx index f40a93fbbc..20ec42236d 100644 --- a/desktop/packages/mullvad-vpn/src/renderer/components/ImageView.tsx +++ b/desktop/packages/mullvad-vpn/src/renderer/components/ImageView.tsx @@ -1,7 +1,7 @@ import React, { useMemo } from 'react'; import styled from 'styled-components'; -import { NonTransientProps } from '../lib/styles'; +import { NonTransientProps } from '../lib/types'; export interface IImageViewProps extends NonTransientProps<IImageMaskProps, 'tintColor' | 'tintHoverColor'> { diff --git a/desktop/packages/mullvad-vpn/src/renderer/lib/components/typography/Text.tsx b/desktop/packages/mullvad-vpn/src/renderer/lib/components/typography/Text.tsx index a590fbe119..93834cb4a8 100644 --- a/desktop/packages/mullvad-vpn/src/renderer/lib/components/typography/Text.tsx +++ b/desktop/packages/mullvad-vpn/src/renderer/lib/components/typography/Text.tsx @@ -2,7 +2,7 @@ import { forwardRef } from 'react'; import styled from 'styled-components'; import { Colors, Typography, typography, TypographyProperties } from '../../foundations'; -import { TransientProps } from '../../styles'; +import { TransientProps } from '../../types'; export type TextProps = React.PropsWithChildren<{ variant?: Typography; diff --git a/desktop/packages/mullvad-vpn/src/renderer/lib/types/index.ts b/desktop/packages/mullvad-vpn/src/renderer/lib/types/index.ts new file mode 100644 index 0000000000..dd810c8061 --- /dev/null +++ b/desktop/packages/mullvad-vpn/src/renderer/lib/types/index.ts @@ -0,0 +1 @@ +export * from './transient-props'; diff --git a/desktop/packages/mullvad-vpn/src/renderer/lib/types/transient-props.ts b/desktop/packages/mullvad-vpn/src/renderer/lib/types/transient-props.ts new file mode 100644 index 0000000000..ea527ab791 --- /dev/null +++ b/desktop/packages/mullvad-vpn/src/renderer/lib/types/transient-props.ts @@ -0,0 +1,9 @@ +type NonTransientPropKey<K> = K extends `$${infer L}` ? L : K; + +export type NonTransientProps<T, K extends NonTransientPropKey<keyof T>> = { + [P in keyof T as NonTransientPropKey<P> extends K ? NonTransientPropKey<P> : P]: T[P]; +}; + +export type TransientProps<T, K extends keyof T = keyof T> = { + [P in keyof T as P extends K ? `$${P & string}` : P]: T[P]; +}; |
