Skip to content

Commit c5d1392

Browse files
committed
ts: add typescript def for mark defaults
1 parent 834c843 commit c5d1392

File tree

1 file changed

+154
-24
lines changed

1 file changed

+154
-24
lines changed

src/lib/types.ts

Lines changed: 154 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,32 @@ import type { MouseEventHandler } from 'svelte/elements';
44
import type { MarkerShape } from './marks/helpers/Marker.svelte';
55
import type { Writable } from 'svelte/store';
66
import type * as CSS from 'csstype';
7+
import type { AreaMarkProps } from './marks/Area.svelte';
8+
import type { ArrowMarkProps } from './marks/Arrow.svelte';
9+
import type { AxisXMarkProps } from './marks/AxisX.svelte';
10+
import type { AxisYMarkProps } from './marks/AxisY.svelte';
11+
import type { BarXMarkProps } from './marks/BarX.svelte';
12+
import type { CellMarkProps } from './marks/Cell.svelte';
13+
import type { DotMarkProps } from './marks/Dot.svelte';
14+
import type { FrameMarkProps } from './marks/Frame.svelte';
15+
import type { GeoMarkProps } from './marks/Geo.svelte';
16+
import type { GraticuleMarkProps } from './marks/Graticule.svelte';
17+
import type { LineMarkProps } from './marks/Line.svelte';
18+
import type { LinkMarkProps } from './marks/Link.svelte';
19+
import type { RectMarkProps } from './marks/Rect.svelte';
20+
import type { RuleXMarkProps } from './marks/RuleX.svelte';
21+
import type { SphereMarkProps } from './marks/Sphere.svelte';
22+
import type { SpikeMarkProps } from './marks/Spike.svelte';
23+
import type { TextMarkProps } from './marks/Text.svelte';
24+
import type { TickXMarkProps } from './marks/TickX.svelte';
25+
import type { VectorMarkProps } from './marks/Vector.svelte';
26+
import type { BrushMarkProps } from './marks/Brush.svelte';
27+
import type { BrushXMarkProps } from './marks/BrushX.svelte';
28+
import type { BrushYMarkProps } from './marks/BrushY.svelte';
29+
import type { RectXMarkProps } from './marks/RectX.svelte';
30+
import type { RectYMarkProps } from './marks/RectY.svelte';
31+
import type { RuleYMarkProps } from './marks/RuleY.svelte';
32+
import type { TickYMarkProps } from './marks/TickY.svelte';
733

834
export type MarkType =
935
| 'area'
@@ -867,53 +893,157 @@ export type DefaultOptions = {
867893
*/
868894
inset: number;
869895
/**
870-
* default tick line length
896+
* default color scheme
871897
*/
872-
tickSize: number;
898+
colorScheme: ColorScheme;
873899
/**
874-
* default padding between tick line and tick label
900+
* locale, used for automatic axis ticks
875901
*/
876-
tickPadding: number;
902+
locale: string;
877903
/**
878-
* default font size for tick labels
904+
* default number format for axis ticks
879905
*/
880-
tickFontSize: number;
906+
numberFormat: Intl.NumberFormatOptions;
881907
/**
882-
* default anchor for x axis
908+
* default dot radius for line markers, used in dot, circle, and circle-stroke markers
883909
*/
884-
axisXAnchor: 'bottom' | 'top';
910+
markerDotRadius: number;
885911
/**
886-
* default anchor for y axis
912+
* default props for area marks
887913
*/
888-
axisYAnchor: 'left' | 'right';
914+
area: Omit<AreaMarkProps, 'data' | 'facet' | ChannelName>;
889915
/**
890-
* default spacing between ticks in AxisX and GridX
916+
* default props for arrow marks
891917
*/
892-
xTickSpacing: number;
918+
arrow: Omit<ArrowMarkProps, 'data' | 'facet' | ChannelName>;
893919
/**
894-
* default spacing between ticks in AxisY and GridY
920+
* default props for axis marks, applied to both axisX and axisY marks
895921
*/
896-
yTickSpacing: number;
922+
axis: BaseMarkProps;
897923
/**
898-
* default color scheme
924+
* default props for axisX marks
899925
*/
900-
colorScheme: ColorScheme;
926+
axisX: Omit<AxisXMarkProps, 'data' | 'facet' | ChannelName>;
901927
/**
902-
* default step for graticule, in degrees
928+
* default props for axisY marks
903929
*/
904-
graticuleStep: number;
930+
axisY: Omit<AxisYMarkProps, 'data' | 'facet' | ChannelName>;
905931
/**
906-
* locale, used for automatic axis ticks
932+
* default props for bar marks, applied to both barX and barY marks
907933
*/
908-
locale: string;
934+
bar: Omit<BarXMarkProps, 'data' | 'facet' | ChannelName>;
909935
/**
910-
* default number format for axis ticks
936+
* default props for barX marks
911937
*/
912-
numberFormat: Intl.NumberFormatOptions;
938+
barX: Omit<BarXMarkProps, 'data' | 'facet' | ChannelName>;
913939
/**
914-
* default dot radius for line markers, used in dot, circle, and circle-stroke markers
940+
* default props for barY marks
915941
*/
916-
markerDotRadius: number;
942+
barY: Omit<BarXMarkProps, 'data' | 'facet' | ChannelName>;
943+
/**
944+
* default props for brush marks, applied to brush, brushX and brushY marks
945+
*/
946+
brush: Omit<BrushMarkProps, 'data' | 'facet' | 'limitDimension' | ChannelName>;
947+
/**
948+
* default props for brushX marks
949+
*/
950+
brushX: Omit<BrushXMarkProps, 'data' | 'facet' | ChannelName>;
951+
/**
952+
* default props for brushY marks
953+
*/
954+
brushY: Omit<BrushYMarkProps, 'data' | 'facet' | ChannelName>;
955+
/**
956+
* default props for cell marks
957+
*/
958+
cell: Omit<CellMarkProps, 'data' | 'facet' | ChannelName>;
959+
/**
960+
* default props for dot marks
961+
*/
962+
dot: Omit<DotMarkProps, 'data' | 'facet' | ChannelName>;
963+
/**
964+
* default props for frame marks
965+
*/
966+
frame: FrameMarkProps;
967+
/**
968+
* default props for geo marks
969+
*/
970+
geo: Omit<GeoMarkProps, 'data' | 'facet' | ChannelName>;
971+
/**
972+
* default props for graticule marks
973+
*/
974+
graticule: Omit<GraticuleMarkProps, 'data' | 'facet' | ChannelName>;
975+
/**
976+
* default props for grid marks, applied to both gridX and gridY marks
977+
*/
978+
grid: Omit<AxisXMarkProps, 'data' | 'facet' | ChannelName>;
979+
/**
980+
* default props for gridX marks
981+
*/
982+
gridX: Omit<AxisXMarkProps, 'data' | 'facet' | ChannelName>;
983+
/**
984+
* default props for gridY marks
985+
*/
986+
gridY: Omit<AxisYMarkProps, 'data' | 'facet' | ChannelName>;
987+
/**
988+
* default props for line marks
989+
*/
990+
line: Omit<LineMarkProps, 'data' | 'facet' | ChannelName>;
991+
/**
992+
* default props for link marks
993+
*/
994+
link: Omit<LinkMarkProps, 'data' | 'facet' | ChannelName>;
995+
/**
996+
* default props for rect marks, applied to rect and rectX marks
997+
*/
998+
rect: Omit<RectMarkProps, 'data' | 'facet' | ChannelName>;
999+
/**
1000+
* default props for rectX marks
1001+
*/
1002+
rectX: Omit<RectXMarkProps, 'data' | 'facet' | ChannelName>;
1003+
/**
1004+
* default props for rectY marks
1005+
*/
1006+
rectY: Omit<RectYMarkProps, 'data' | 'facet' | ChannelName>;
1007+
/**
1008+
* default props for rule marks
1009+
*/
1010+
rule: Omit<RuleXMarkProps, 'data' | 'facet' | ChannelName>;
1011+
/**
1012+
* default props for rule marks
1013+
*/
1014+
ruleX: Omit<RuleXMarkProps, 'data' | 'facet' | ChannelName>;
1015+
/**
1016+
* default props for rule marks
1017+
*/
1018+
ruleY: Omit<RuleYMarkProps, 'data' | 'facet' | ChannelName>;
1019+
/**
1020+
* default props for sphere marks
1021+
*/
1022+
sphere: SphereMarkProps;
1023+
/**
1024+
* default props for spike marks
1025+
*/
1026+
spike: Omit<SpikeMarkProps, 'data' | 'facet' | ChannelName>;
1027+
/**
1028+
* default props for text marks
1029+
*/
1030+
text: Omit<TextMarkProps, 'data' | 'facet' | ChannelName>;
1031+
/**
1032+
* default props for tick marks, applied to tickX and tickY marks
1033+
*/
1034+
tick: Omit<TickXMarkProps, 'data' | 'facet' | ChannelName>;
1035+
/**
1036+
* default props for tickX marks
1037+
*/
1038+
tickX: Omit<TickXMarkProps, 'data' | 'facet' | ChannelName>;
1039+
/**
1040+
* default props for tickY marks
1041+
*/
1042+
tickY: Omit<TickYMarkProps, 'data' | 'facet' | ChannelName>;
1043+
/**
1044+
* default props for vector marks
1045+
*/
1046+
vector: Omit<VectorMarkProps, 'data' | 'facet' | ChannelName>;
9171047
};
9181048

9191049
export type MapIndexObject = {

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy