Spaces:
Sleeping
Sleeping
File size: 2,722 Bytes
14e59b4 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 |
from __future__ import annotations
class Size:
all = []
def __init__(
self, xxs: str, xs: str, sm: str, md: str, lg: str, xl: str, xxl: str, name=None
):
self.xxs = xxs
self.xs = xs
self.sm = sm
self.md = md
self.lg = lg
self.xl = xl
self.xxl = xxl
self.name = name
Size.all.append(self)
def expand(self) -> list[str]:
return [self.xxs, self.xs, self.sm, self.md, self.lg, self.xl, self.xxl]
# Radius scales - Based on Canva's radiusElement values
radius_none = Size(
name="radius_none",
xxs="0px",
xs="0px",
sm="0px",
md="0px",
lg="0px",
xl="0px",
xxl="0px",
)
radius_sm = Size(
name="radius_sm",
xxs="4px", # radiusElementSmall
xs="4px",
sm="4px",
md="8px", # radiusElement
lg="12px", # radiusElementRelaxed
xl="12px", # radiusContainer
xxl="16px", # radiusContainerLarge
)
# Spacing scales - Based on Canva's baseUnit (8px) multiples
spacing_sm = Size(
name="spacing_sm",
xxs="2px", # space050 (4px)
xs="4px", # space1 (8px)
sm="8px", # space1
md="12px", # space150
lg="16px", # space2
xl="24px", # space3
xxl="32px", # space4
)
spacing_md = Size(
name="spacing_md",
xxs="4px", # space1
xs="8px", # space1
sm="12px", # space150
md="16px", # space2
lg="24px", # space3
xl="32px", # space4
xxl="48px", # space6
)
spacing_lg = Size(
name="spacing_lg",
xxs="8px", # space1
xs="16px", # space2
sm="24px", # space3
md="32px", # space4
lg="48px", # space6
xl="64px", # space8
xxl="96px", # space12
)
# Text sizes - Based on Canva's font size definitions
text_sm = Size(
name="text_sm",
xxs="11px", # fontSizeExtraSmall
xs="12px", # fontSizeSmall
sm="14px", # fontSizeMedium
md="16px", # fontSizeLarge
lg="18px", # fontSizeTitleSmall
xl="21px", # fontSizeExtraLarge
xxl="24px", # fontSizeExtraExtraLarge
)
text_md = Size(
name="text_md",
xxs="12px", # fontSizeSmall
xs="14px", # fontSizeMedium
sm="16px", # fontSizeLarge
md="18px", # fontSizeTitleSmall
lg="21px", # fontSizeExtraLarge
xl="24px", # fontSizeExtraExtraLarge
xxl="32px", # fontSizeTitleLarge
)
text_lg = Size(
name="text_lg",
xxs="14px", # fontSizeMedium
xs="16px", # fontSizeLarge
sm="18px", # fontSizeTitleSmall
md="21px", # fontSizeExtraLarge
lg="24px", # fontSizeExtraExtraLarge
xl="32px", # fontSizeTitleLarge
xxl="48px", # fontSizeTitleExtraLarge
) |