-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfig.d.ts
101 lines (100 loc) · 2.7 KB
/
config.d.ts
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
import type { SignatoriesWithSignature } from '../scripts/downloader';
import type { FillingBox } from './filling-box';
export interface EInitiativeConfig {
/** General website information for SEO and OG social sharing */
metadata: {
/** Website title */
title: string;
/** Website description */
description: string;
/** Full website url */
siteUrl: string;
/** URL for OG image showing on social media */
previewImageUrl: string;
};
/** Pettition related information */
petition: {
/** Build after campaign end will disable signature submission */
endDate: Date;
/** Number of signatures goal */
expectedSignatures: number;
/** Offline channel information
* @optional
*/
offline?: {
/** URL to the petition form PDF */
formUrl: string;
/** URL of Pettition form preview image */
formExampleImageUrl: string;
/** Where to submit the offline petition form */
headquarter: {
/** Location name */
name: string;
/** Post address */
address: string;
/** URL in Google Map embed snippet */
embedGoogleMapUrl: string;
};
/** Information for voluntary offline signing station
* @optional
*/
volunteer?: {
/** URL to volunteer registration form (connected to locations sheet)
* @optional
*/
registrationFormUrl: string;
/** URL to download campaign's assets */
assetsUrl: string;
/** Contact point for volunteer */
contact: {
name: string;
url: string;
};
};
};
};
/** Theme for DaisyUI and Tailwind */
theme: {
/** Color schema
* @see Daisy UI colors name {@link https://v3.daisyui.com/docs/colors/}
*/
colors: Record<string, string>;
/** Object with keys of typography type and values of font name
* @see typography type {@link src/styles/typography.css}
*/
fonts: Record<
'body' | 'heading-fixed' | 'heading-responsive' | 'link',
string
>;
/** URL of CSS files to include in the HTML head
* @optional
*/
stylesheets?: string[];
};
/** Google Sheets data source configuration */
sheets?: {
/** Google Sheets ID found from the Sheets URL: `https://docs.google.com/spreadsheets/d/{id}/` */
id: string;
/** Include offline signature count from "offline-signature" sheet
* @optional
*/
enableOfflineSignature?: boolean;
/** Add locations page from "locations" sheet
* @optional
*/
enableLocations?: boolean;
};
/** Signatories PDF render configuration */
renderer: {
/** Path to the blank PDF template */
templateFile: string;
/** Path to font file */
fontFile: string;
/** Default font size */
fontSize: number;
/** Default line height */
lineHeight: number;
/** Data fields to be rendered to the PDF */
fields: FillingBox[];
};
}