-
Notifications
You must be signed in to change notification settings - Fork 0
/
diagram.dot
59 lines (47 loc) · 2.84 KB
/
diagram.dot
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
digraph Madlibs {
// Light Mode
graph [pad="0.5", ranksep="0.4 equally", nodesep="0.6", fontsize="10pt"];
node [fontsize="10pt", shape="rectangle", margin="0.15"];
edge [fontsize="8pt", penwidth="1.5", arrowhead="vee"];
// Dark Mode
// graph [pad="0.5", ranksep="0.4 equally", nodesep="0.6", fontsize="10pt", bgcolor="black"];
// node [fontsize="10pt", shape="rectangle", margin="0.15", fontcolor="white", color="white", fillcolor="gray30", style="filled"];
// edge [fontsize="8pt", penwidth="1.5", arrowhead="vee", color="white", fontcolor="white"];
// Nodes & Edges
App [label="App\n\nState: currentUser"]
ApplyButton [label="ApplyButton\n\nContext: applied []"]
Homepage [label="Homepage\n\nContext: {currentUser}"]
Context [label="userContext.Provider\n\n{currentUser: null OR {}, applied: []}"]
Navigation [label="Navigation\n\nContext: {currentUser}"]
Routes [label="RoutesList\n"]
Company [label="CompanyDetail\n\nRoute: /companies/:company_id\nState: companyData {}, isLoading\nparams: {company_handle}\n\nGET Request"]
JobListing [label="JobList\n\nRoute: /jobs\nState: jobs [], searchFilter [], isLoading\nFn: handleSearch()\n\nGET Request"]
CompanyListing [label="CompanyList\n\nRoute: /companies\nState: companies [], searchFilter [], isLoading\nFn: handleSearch()\n\nGET Request"]
SearchBar [label="SearchForm\nState: formData"]
JobCardList [label="JobCardList"]
LoginForm [label="LoginForm\n\nPOST Request\n/token"]
RegisterForm [label="RegisterForm\n\nPOST Request\n/register"]
ProfileForm [label="ProfileForm\n\nPATCH Request\n/:username"]
App -> Context -> Navigation, Routes
Routes -> JobListing, Company, CompanyListing [label="Context: {currentUser}" color="red"]
Routes -> Homepage [color="blue"]
CompanyListing -> CompanyCard [label="companyData {}"]
Routes -> RegisterForm, LoginForm [label="handleSubmit()" color="blue"]
Routes -> ProfileForm [label="handleSubmit()\nContext: {currentUser}" color="red"]
RegisterForm, LoginForm, ProfileForm -> Alert [label="errorMessage"]
Homepage -> Button [label="formType"]
JobListing -> JobCardList [label="jobData {}\nshowCompany"]
Company -> JobCardList -> JobCard [label="jobData {}"]
JobListing, CompanyListing -> SearchBar [label="handleSearch()"]
JobCard -> ApplyButton [label="job.id"]
// App -> Game
// Game -> StoryPicker [label="[titles]\n'buttonLabel'"]
// Game -> GameMode [label="{storyData}"]
// StoryPicker -> Button [label="'buttonLabel'"]
// GameMode -> Story [label="{storyData}\n'buttonLabel'\nresetStory()\n'storyTitle'"];
// GameMode -> StoryForm [label="[fields]\n'buttonLabel'\nsaveStory()"];
// Story -> Button [label="'buttonLabel'\nresetStory()"];
// StoryForm -> RenderFields [label="[fields]"];
// StoryForm -> Button [label="'buttonLabel'\nsaveStory()"];
// RenderFields -> Field [label="onChange()\n[formData]"]
}