ObsidianCustomFrames/src/settings.ts

115 lines
2.9 KiB
TypeScript
Raw Normal View History

2022-03-29 13:18:25 +02:00
export const defaultSettings: CustomFramesSettings = {
frames: [],
padding: 5
};
2022-04-13 21:21:48 +02:00
export const presets: Record<string, CustomFrameSettings> = {
2022-03-29 13:18:25 +02:00
"obsidian": {
url: "https://forum.obsidian.md/",
displayName: "Obsidian Forum",
icon: "edit",
hideOnMobile: true,
2022-04-15 13:22:09 +02:00
addRibbonIcon: true,
openInCenter: true,
zoomLevel: 1,
2022-03-29 13:18:25 +02:00
customCss: ""
},
2022-04-02 14:50:55 +02:00
"calendar": {
url: "https://calendar.google.com/calendar/u/0/r/day",
displayName: "Google Calendar",
icon: "calendar",
hideOnMobile: true,
2022-04-15 13:22:09 +02:00
addRibbonIcon: true,
openInCenter: true,
zoomLevel: 1,
customCss: `/* hide right-side menu, and some buttons */
div.d6McF,
div.pw6cBb,
div.gb_Td.gb_Va.gb_Id,
div.Kk7lMc-QWPxkf-LgbsSe-haAclf,
div.h8Aqhb,
div.gboEAb,
div.dwlvNd {
display: none !important;
}`
2022-03-29 13:18:25 +02:00
},
"keep": {
url: "https://keep.google.com",
displayName: "Google Keep",
icon: "files",
hideOnMobile: true,
2022-04-15 13:22:09 +02:00
addRibbonIcon: false,
openInCenter: false,
zoomLevel: 1,
2022-03-29 13:18:25 +02:00
customCss: `/* hide the menu bar and the "Keep" text */
html > body > div:nth-child(2) > div:nth-child(2) > div:first-child,
html > body > div:first-child > header:first-child > div > div:first-child > div > div:first-child > a:first-child > span {
2022-03-29 13:18:25 +02:00
display: none !important;
}`
},
2022-04-02 15:19:27 +02:00
"todoist": {
url: "https://todoist.com",
displayName: "Todoist",
icon: "list-checks",
hideOnMobile: true,
2022-04-15 13:22:09 +02:00
addRibbonIcon: false,
openInCenter: false,
2022-04-02 15:19:27 +02:00
zoomLevel: 1,
customCss: `/* hide the help, home, search, and productivity overview buttons, create extra space, and prevent toast pop-up from acting weird */
[aria-label="Go to Home view"], #quick_find, [aria-label="Productivity"], [aria-label="Help & Feedback"] {
display: none !important;
}
.view_content {
padding-left: 15px;
}
.view_header {
padding-left: 15px;
padding-top: 10px;
}
.undo_toast {
width: 95%;
2022-04-02 15:19:27 +02:00
}`
},
2022-03-29 13:18:25 +02:00
"notion": {
url: "https://www.notion.so/",
displayName: "Notion",
icon: "box",
hideOnMobile: true,
2022-04-15 13:22:09 +02:00
addRibbonIcon: true,
openInCenter: true,
zoomLevel: 1,
2022-03-29 13:18:25 +02:00
customCss: ""
2022-03-29 14:07:25 +02:00
},
"twitter": {
url: "https://twitter.com",
displayName: "Twitter",
icon: "twitter",
hideOnMobile: true,
2022-04-15 13:22:09 +02:00
addRibbonIcon: false,
openInCenter: false,
zoomLevel: 1,
2022-03-29 14:07:25 +02:00
customCss: ""
2022-03-29 13:18:25 +02:00
}
};
export interface CustomFramesSettings {
2022-04-13 21:21:48 +02:00
frames: CustomFrameSettings[];
2022-03-29 13:18:25 +02:00
padding: number;
}
2022-04-13 21:21:48 +02:00
export interface CustomFrameSettings {
2022-03-29 13:18:25 +02:00
url: string;
displayName: string;
icon: string;
hideOnMobile: boolean;
2022-04-15 13:22:09 +02:00
addRibbonIcon: boolean;
openInCenter: boolean;
zoomLevel: number;
2022-03-29 13:18:25 +02:00
customCss: string;
}
2022-04-15 13:22:09 +02:00
export function getIcon(settings: CustomFrameSettings) {
return settings.icon ? `lucide-${settings.icon}` : "documents";
}