Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
122 commits
Select commit Hold shift + click to select a range
a711bb3
create getting started docs
Aug 14, 2019
00c7cc9
add getting started to side nav
Aug 14, 2019
ddea0f2
5 things you need to know
Aug 15, 2019
b9d9d32
5 things
Aug 16, 2019
6263282
Update pages/components/docs/getting-started.md
Aug 16, 2019
bf95abc
Update pages/components/docs/getting-started.md
Aug 16, 2019
b70f4e5
Update pages/components/docs/getting-started.md
Aug 16, 2019
6ba9c45
Update pages/components/docs/getting-started.md
Aug 16, 2019
743f0db
Update pages/components/docs/getting-started.md
Aug 16, 2019
3608a8d
Merge pull request #518 from primer/getting-started
Aug 16, 2019
43e2322
add links
Aug 16, 2019
3c44f5c
formatting
Aug 16, 2019
1cfb7b2
rename to core concepts
Aug 16, 2019
73ec78c
rename sidenav link
Aug 16, 2019
1ebb0a3
formatting
Aug 16, 2019
10a140f
Update pages/components/docs/core-concepts
Aug 16, 2019
99101cf
Change is to as
urre Aug 17, 2019
ce13f53
Merge pull request #524 from urre/patch-1
Aug 19, 2019
1938aea
update docs
Aug 19, 2019
f97d05c
ignore cache
Aug 19, 2019
05d637e
update docs
Aug 19, 2019
ccf26ac
Merge pull request #521 from primer/responsive
Aug 19, 2019
4580a59
update version
Aug 20, 2019
47d1a92
update tests
Jul 24, 2019
8686350
update tests
Jul 25, 2019
870a4a2
update docs
Jul 25, 2019
8cdc34d
version
Jul 22, 2019
49e8d17
fix button styles
Jul 26, 2019
559a16a
update snapshots
Jul 26, 2019
ae8dca5
typos
Jul 26, 2019
e5b5ba8
add whitespace prop to Text
Jul 26, 2019
4079bd0
move whitespace to TYPOGRAPHY
Jul 26, 2019
08e81e9
move margin out of default props
Jul 29, 2019
8991aca
lint
Jul 29, 2019
92aaf60
fix font size typo
Jul 29, 2019
3341af6
add change back
Jul 29, 2019
db34c42
fix: wrong links
Jul 27, 2019
8a83946
commit docs suggestion
Jul 31, 2019
7dd007f
update types for FlexContainer
Aug 6, 2019
94f0be7
update version
Aug 6, 2019
3b76d40
Adding skeleton for TabNav.
dmarcey Aug 26, 2019
82b1e0d
Style TabNav component.
dmarcey Aug 26, 2019
24d282f
Added type definitions and unit tests for TabNav.
dmarcey Aug 27, 2019
84cc6c0
Clean up a test name.
dmarcey Aug 27, 2019
f8cd9aa
Use aria-label instead of label in .d.ts and test.
dmarcey Aug 27, 2019
212c6f3
Adding TabNav.Item and UnderNav.Item to typings.
dmarcey Aug 27, 2019
c347c8d
create getting started docs
Aug 14, 2019
877137a
add getting started to side nav
Aug 14, 2019
1b6004d
Update pages/components/docs/getting-started.md
Aug 16, 2019
5662a63
Update pages/components/docs/getting-started.md
Aug 16, 2019
713e9fd
Update pages/components/docs/getting-started.md
Aug 16, 2019
1e3ab1d
Update pages/components/docs/getting-started.md
Aug 16, 2019
4b43609
Update pages/components/docs/getting-started.md
Aug 16, 2019
6aed73f
Change is to as
urre Aug 17, 2019
fa85516
5 things you need to know
Aug 15, 2019
dbbdc56
5 things
Aug 16, 2019
965d0fe
add links
Aug 16, 2019
6f54ea9
formatting
Aug 16, 2019
57ba03b
rename to core concepts
Aug 16, 2019
8a753f7
rename sidenav link
Aug 16, 2019
7fecefe
formatting
Aug 16, 2019
7519acb
Update pages/components/docs/core-concepts
Aug 16, 2019
10f4831
update docs
Aug 19, 2019
7fbc94c
ignore cache
Aug 19, 2019
7eca4f9
update docs
Aug 19, 2019
68b62e0
update version
Aug 20, 2019
53127d6
non-strict version for octicons
Aug 20, 2019
c7043f3
non-strict version for styled system
Aug 20, 2019
66b302b
refactor flex types
Aug 20, 2019
6215adc
undo styled system version changes
Aug 20, 2019
2abf9b8
try
Aug 20, 2019
db0a339
fix versions
Aug 20, 2019
d0ad0fa
don;'t extend flexitem
Aug 20, 2019
5af0465
test
Aug 20, 2019
c4313fb
add item back
Aug 20, 2019
308e0bd
use styled-system props
Aug 20, 2019
18346c7
just add the dep
Aug 27, 2019
aad5280
update version
Aug 28, 2019
4e0d8bc
Add TypeScript definitions for Dialog component
rafeca Jul 31, 2019
91b4cbc
fix core-concepts file
Aug 29, 2019
b3799bb
5 things you need to know
Aug 15, 2019
9e79442
5 things
Aug 16, 2019
1a8c73d
add links
Aug 16, 2019
60a5b63
formatting
Aug 16, 2019
748ab49
rename to core concepts
Aug 16, 2019
d9ae5db
rename sidenav link
Aug 16, 2019
ef406f0
formatting
Aug 16, 2019
b26b181
Update pages/components/docs/core-concepts
Aug 16, 2019
92eb8ee
update docs
Aug 19, 2019
e67bf51
ignore cache
Aug 19, 2019
60eac33
update docs
Aug 19, 2019
5293e04
update version
Aug 20, 2019
5809852
non-strict version for octicons
Aug 20, 2019
361a225
non-strict version for styled system
Aug 20, 2019
c598b62
refactor flex types
Aug 20, 2019
a3d6acc
undo styled system version changes
Aug 20, 2019
a2db553
try
Aug 20, 2019
0c79c83
fix versions
Aug 20, 2019
75937d1
don;'t extend flexitem
Aug 20, 2019
8d72aca
test
Aug 20, 2019
447cea6
add item back
Aug 20, 2019
09ac820
use styled-system props
Aug 20, 2019
1eb700f
just add the dep
Aug 27, 2019
a9d3665
update version
Aug 28, 2019
be07617
Add TypeScript definitions for Dialog component
rafeca Jul 31, 2019
56837cc
fix core-concepts file
Aug 29, 2019
104ca77
use master details
Aug 29, 2019
8982966
Merge branch 'release-13.3.2' of github.com:primer/components into re…
Aug 29, 2019
8794a6c
use master version of snapshots
Aug 29, 2019
9409bcd
add margin bottom to theme link
Aug 29, 2019
ae46488
Merge branch 'master' into release-13.3.2
Aug 29, 2019
b728087
update package lock
Aug 29, 2019
714308d
delete stray core-concepts file
Aug 29, 2019
2d7de96
Merge pull request #525 from primer/release-13.3.2
Aug 29, 2019
5e85447
Fixing some Tab/UnderlineNav Link types.
dmarcey Aug 30, 2019
0d61784
Made href optional on Link types.
dmarcey Aug 31, 2019
0de3cdc
update version
Sep 9, 2019
2f451f4
Merge pull request #533 from dmarcey/users/dmarcey/navTypings
Sep 9, 2019
4d1ec10
CommonProps should extend interfaces from StyledSystem.
dmarcey Sep 9, 2019
74844b1
Merge pull request #536 from dmarcey/users/dmarcey/styledSystemProps
Sep 9, 2019
3fc1c1d
Merge pull request #535 from primer/release-13.5.0
Sep 13, 2019
ddf8d1c
Have primer components extend props for their native elements.
dmarcey Sep 16, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,4 @@
coverage/
dist/
node_modules
.cache
117 changes: 69 additions & 48 deletions index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -60,11 +60,14 @@ declare module '@primer/components' {
StyledSystem.AlignSelfProps,
StyledSystem.OrderProps {}

interface FlexContainerProps
interface FlexProps
extends BaseProps,
CommonProps,
LayoutProps,
FlexItemProps,
StyledSystem.FlexProps,
StyledSystem.JustifySelfProps,
StyledSystem.AlignSelfProps,
StyledSystem.OrderProps,
StyledSystem.FlexBasisProps,
StyledSystem.FlexDirectionProps,
StyledSystem.FlexWrapProps,
Expand All @@ -73,41 +76,38 @@ declare module '@primer/components' {
StyledSystem.JustifyContentProps,
StyledSystem.JustifyItemsProps {}

export interface FlexProps
extends FlexContainerProps,
Omit<React.HTMLProps<HTMLDivElement>, keyof FlexContainerProps> {}

export const Flex: React.FunctionComponent<FlexProps> & {
Item: React.FunctionComponent<FlexItemProps>
}

export interface BoxProps extends BaseProps, CommonProps, LayoutProps {}
export interface BoxProps extends BaseProps, CommonProps, LayoutProps, React.HTMLAttributes<HTMLDivElement> {}

export const Box: React.FunctionComponent<BoxProps>

export interface TextProps extends BaseProps, CommonProps, TypographyProps {}
export interface TextProps extends BaseProps, CommonProps, TypographyProps, React.HTMLAttributes<HTMLSpanElement> {}

export const Text: React.FunctionComponent<TextProps>

export interface HeadingProps extends BaseProps, CommonProps, TypographyProps {}
export interface HeadingProps
extends BaseProps,
CommonProps,
TypographyProps,
React.HTMLAttributes<HTMLHeadingElement> {}

export const Heading: React.FunctionComponent<HeadingProps>

type DetailsRenderFunction = (args: {open: boolean; toggle: () => void}) => React.ReactElement

export interface DetailsProps extends CommonProps {
open?: boolean
export interface DetailsProps extends CommonProps, React.HTMLAttributes<HTMLDetailsElement> {
render?: DetailsRenderFunction
children?: DetailsRenderFunction | React.ReactNode
overlay?: boolean
}

export const Details: React.FunctionComponent<DetailsProps>

export interface ButtonProps extends BaseProps, CommonProps {
disabled?: boolean
export interface ButtonProps extends BaseProps, CommonProps, React.HTMLAttributes<HTMLDetailsElement> {
grouped?: boolean
onClick?: Function
size?: 'sm' | 'large'
}

Expand All @@ -116,9 +116,7 @@ declare module '@primer/components' {
export const ButtonDanger: React.FunctionComponent<ButtonProps>
export const Button: React.FunctionComponent<ButtonProps>

export interface AvatarProps extends CommonProps {
alt: string
src: string
export interface AvatarProps extends CommonProps, React.HTMLAttributes<HTMLImageElement> {
isChild?: boolean
size?: number
}
Expand All @@ -129,7 +127,7 @@ declare module '@primer/components' {

export const BaseStyles: React.FunctionComponent<BaseStylesProps>

export interface BorderBoxProps extends CommonProps, LayoutProps {
export interface BorderBoxProps extends CommonProps, LayoutProps, BoxProps {
border?: string
borderColor?: string
borderRadius?: string | number
Expand All @@ -138,19 +136,17 @@ declare module '@primer/components' {

export const BorderBox: React.FunctionComponent<BorderBoxProps>

export interface BranchNameProps extends CommonProps {
href?: string
}
export interface BranchNameProps extends CommonProps, React.HTMLAttributes<HTMLAnchorElement> {}

export const BranchName: React.FunctionComponent<BranchNameProps>

export interface CircleBadgeProps extends CommonProps {
export interface CircleBadgeProps extends CommonProps, React.HTMLAttributes<HTMLDivElement> {
size?: string | number
}

export const CircleBadge: React.FunctionComponent<CircleBadgeProps>

export interface CircleOcticonProps extends CommonProps {
export interface CircleOcticonProps extends CommonProps, FlexProps {
size?: number
icon: React.ReactNode
}
Expand All @@ -164,9 +160,9 @@ declare module '@primer/components' {

export const StyledOcticon: React.FunctionComponent<StyledOcticonProps>

export interface DropdownProps extends CommonProps {}
export interface DropdownProps extends CommonProps, ButtonProps {}

export interface DropdownMenuProps extends CommonProps {
export interface DropdownMenuProps extends CommonProps, React.HTMLAttributes<HTMLUListElement> {
direction?: string
title: string
}
Expand All @@ -176,11 +172,11 @@ declare module '@primer/components' {
Item: React.FunctionComponent<DropdownProps>
}

export interface FilterListProps extends CommonProps {
export interface FilterListProps extends CommonProps, React.HTMLAttributes<HTMLUListElement> {
small?: boolean
}

export interface FilterListItemProps extends CommonProps {
export interface FilterListItemProps extends CommonProps, React.HTMLAttributes<HTMLAnchorElement> {
count?: number
selected?: boolean
}
Expand All @@ -189,41 +185,44 @@ declare module '@primer/components' {
Item: React.FunctionComponent<FilterListItemProps>
}

export interface FlashProps extends CommonProps {
export interface FlashProps extends CommonProps, React.HTMLAttributes<HTMLDivElement> {
full?: boolean
scheme?: string
}

export const Flash: React.FunctionComponent<FlashProps>

export interface CounterLabelProps extends CommonProps {
export interface CounterLabelProps extends CommonProps, React.HTMLAttributes<HTMLSpanElement> {
scheme?: string
}

export const CounterLabel: React.FunctionComponent<CounterLabelProps>

export interface LabelProps extends CommonProps {
export interface LabelProps extends CommonProps, React.HTMLAttributes<HTMLSpanElement> {
outline?: boolean
size?: 'small' | 'medium' | 'large' | 'xl'
dropshadow?: boolean
}

export const Label: React.FunctionComponent<LabelProps>

export interface LinkProps extends CommonProps, TypographyProps {
href: string
export interface LinkProps extends CommonProps, TypographyProps, React.HTMLAttributes<HTMLAnchorElement> {
underline?: boolean
}

export const Link: React.FunctionComponent<LinkProps>

export interface PointerBoxProps extends CommonProps, LayoutProps {
export interface PointerBoxProps extends CommonProps, LayoutProps, BorderBoxProps {
caret?: string
}

export const PointerBox: React.FunctionComponent<PointerBoxProps>

export interface PositionComponentProps extends PositionProps, CommonProps, LayoutProps {}
export interface PositionComponentProps
extends PositionProps,
CommonProps,
LayoutProps,
React.HTMLAttributes<HTMLDivElement> {}

export const Relative: React.FunctionComponent<PositionComponentProps>
export const Absolute: React.FunctionComponent<PositionComponentProps>
Expand All @@ -237,25 +236,26 @@ declare module '@primer/components' {

export const StateLabel: React.FunctionComponent<StateLabelProps>

export interface TextInputProps extends CommonProps {
export interface TabNavProps extends CommonProps, React.HTMLAttributes<HTMLDivElement> {}

export interface TabNavLinkProps extends CommonProps, React.HTMLAttributes<HTMLAnchorElement> {
selected?: boolean
}

export const TabNav: React.FunctionComponent<TabNavProps> & {
Link: React.FunctionComponent<TabNavLinkProps>
}

export interface TextInputProps extends CommonProps, React.HTMLAttributes<HTMLInputElement> {
autocomplete?: string
'aria-label'?: string
block?: boolean
disabled?: boolean
id?: string
name?: string
onChange?: (evt: React.ChangeEvent<HTMLInputElement>) => void
placeholder?: string
required?: boolean
size?: 'small' | 'large'
value?: string
}

export const TextInput: React.FunctionComponent<TextInputProps>

export interface TooltipProps extends CommonProps {
export interface TooltipProps extends CommonProps, React.HTMLAttributes<HTMLSpanElement> {
align?: 'left' | 'right'
'aria-label'?: string
direction?: 'n' | 'ne' | 'e' | 'se' | 's' | 'sw' | 'w' | 'nw'
noDelay?: boolean
text?: string
Expand All @@ -264,17 +264,30 @@ declare module '@primer/components' {

export const Tooltip: React.FunctionComponent<TooltipProps>

export interface UnderlineNavProps extends CommonProps {
export interface UnderlineNavProps extends CommonProps, React.HTMLAttributes<HTMLDivElement> {
actions?: React.ReactNode
align?: 'right'
'aria-label'?: string
full?: boolean
label?: string
}

export const UnderlineNav: React.FunctionComponent<UnderlineNavProps>
export interface UnderlineNavLinkProps extends CommonProps, React.HTMLAttributes<HTMLAnchorElement> {
selected?: boolean
}

export const UnderlineNav: React.FunctionComponent<UnderlineNavProps> & {
Link: React.FunctionComponent<UnderlineNavLinkProps>
}

export const theme: Object

export interface DialogProps extends CommonProps {
title: string
isOpen: boolean
onDismiss: () => unknown
}

export const Dialog: React.FunctionComponent<DialogProps>
}

declare module '@primer/components/src/Box' {
Expand Down Expand Up @@ -404,6 +417,10 @@ declare module '@primer/components/src/StateLabel' {
import {StateLabel} from '@primer/components'
export default StateLabel
}
declare module '@primer/components/src/TabNav' {
import {TabNav} from '@primer/components'
export default TabNav
}
declare module '@primer/components/src/TextInput' {
import {TextInput} from '@primer/components'
export default TextInput
Expand All @@ -420,3 +437,7 @@ declare module '@primer/components/src/theme' {
import {theme} from '@primer/components'
export default theme
}
declare module '@primer/components/src/Dialog' {
import {Dialog} from '@primer/components'
export default Dialog
}
Loading