Es6 cmp migration (#113)

* migrate Alert component

* convert Mainlist component

* add webpack watch task

* update build script for different manifests

* add types for api responses

* convert changeExtensionIcon

* convert inArray, getDomainParts, contains to ts

* convert changeExtensionTooltip

* convert changeExtensionState to ts
This commit is contained in:
Vu Nguyen
2021-01-16 19:31:52 -06:00
committed by GitHub
parent 9ecc2144aa
commit d194bcfe60
21 changed files with 660 additions and 10 deletions

28
src/types/heartbeats.d.ts vendored Normal file
View File

@@ -0,0 +1,28 @@
// Generated by https://quicktype.io
export interface HeartBeatsPayload {
data: Datum[];
end: string;
start: string;
timezone: string;
}
export interface Datum {
branch: string;
category: string;
created_at: string;
cursorpos: null;
dependencies: string;
entity: string;
id: string;
is_write: boolean;
language: string;
lineno: null;
lines: number;
machine_name_id: string;
project: string;
time: number;
type: string;
user_agent_id: string;
user_id: string;
}

47
src/types/summaries.d.ts vendored Normal file
View File

@@ -0,0 +1,47 @@
// Generated by https://quicktype.io
export interface SummariesPayload {
data: Datum[];
end: string;
start: string;
}
export interface Datum {
categories: Category[];
dependencies: Category[];
editors: Category[];
grand_total: GrandTotal;
languages: Category[];
machines: Category[];
operating_systems: Category[];
projects: Category[];
range: Range;
}
export interface Category {
digital: string;
hours: number;
machine_name_id?: string;
minutes: number;
name: string;
percent: number;
seconds: number;
text: string;
total_seconds: number;
}
export interface GrandTotal {
digital: string;
hours: number;
minutes: number;
text: string;
total_seconds: number;
}
export interface Range {
date: string;
end: string;
start: string;
text: string;
timezone: string;
}

44
src/types/user.d.ts vendored Normal file
View File

@@ -0,0 +1,44 @@
// Generated by https://quicktype.io
export interface UserPayload {
data: User;
}
export interface User {
bio: null;
color_scheme: string;
created_at: string;
date_format: string;
default_dashboard_range: string;
display_name: string;
email: string;
full_name: string;
has_premium_features: boolean;
human_readable_website: string;
id: string;
is_email_confirmed: boolean;
is_email_public: boolean;
is_hireable: boolean;
is_onboarding_finished: boolean;
languages_used_public: boolean;
last_heartbeat_at: string;
last_plugin: string;
last_plugin_name: string;
last_project: string;
location: string;
logged_time_public: boolean;
modified_at: string;
needs_payment_method: boolean;
photo: string;
photo_public: boolean;
plan: string;
public_email: string;
show_machine_name_ip: boolean;
time_format_24hr: boolean;
timeout: number;
timezone: string;
username: string;
website: string;
weekday_start: number;
writes_only: boolean;
}