Compare commits

..

23 Commits
v0.5 ... main

Author SHA1 Message Date
griimick
96a03759eb
0.6.4 2024-10-19 02:30:01 +05:30
Soumik
a87be21ff9
chore: update deps and README (#58) 2024-10-19 02:25:44 +05:30
renovate[bot]
c267e80f94
chore(deps): update actions/setup-node action to v4 (#50)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-18 21:55:21 +05:30
renovate[bot]
2e3c5b3750
chore(deps): update peaceiris/actions-gh-pages action to v4 (#53)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-18 21:55:04 +05:30
renovate[bot]
f8d951c804
chore(deps): update softprops/action-gh-release action to v2 (#54)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-18 21:54:49 +05:30
renovate[bot]
f0100d1747
chore(deps): update dependency rimraf to v6 (#51)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-18 21:53:44 +05:30
renovate[bot]
59f8557125
chore(deps): update dependency @catppuccin/highlightjs to v1 (#52)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-18 21:53:32 +05:30
renovate[bot]
bb7e639599
chore(deps): update dependency sass to v1.80.2 (#56)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-18 21:53:09 +05:30
renovate[bot]
5ea03d7099
chore(deps): update dependency sass to v1.79.3 (#48)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-23 03:08:29 +01:00
renovate[bot]
95c3bcc9bb
chore(deps): update actions/checkout action to v4 (#49)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-23 03:08:13 +01:00
renovate[bot]
78d22d0926
chore(deps): update dependency @catppuccin/palette to v1.4.0 (#46)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-23 03:06:43 +01:00
renovate[bot]
40e6fa312e
chore: Configure Renovate (#44)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-23 03:05:36 +01:00
Soumik
0ae63934c0 0.6.3 2024-04-28 04:10:17 +05:30
Soumik
3d571f7012
fix: unthemed bgcolor (#43) 2024-04-28 04:09:37 +05:30
Soumik
55350efa50
docs: create meta.yml 2024-04-28 01:00:37 +05:30
Soumik
e1bf93b92e
docs: create config.yml 2024-04-28 00:57:16 +05:30
Soumik
ea286912dd
docs: create bug.yml 2024-04-28 00:54:17 +05:30
Soumik
0f1087f32d 0.6.2 2024-04-21 02:36:01 +05:30
Soumik
ce2791805d fix: selected text too hard to read
fixes #39
2024-04-21 02:26:49 +05:30
Soumik
2de9390c56 release: v0.6.1 2024-04-11 17:32:36 +05:30
Soumik
f941496af9
feat: wonky wednesday fixes (#38)
* fix: highlight broker in v0.10.6

* fix: popover bg in logseq accent

* fix: flashcard search box

* fix: add italics to bold+italics text

* feat: make plugin toolbar consistent with header

* rest of fixes
2024-04-11 17:30:28 +05:30
Soumik
5643bccec5
feat: setting to override whiteboard to latte (#30)
* organise whiteboard vars

* remove hardcoded var in main

* feat: add whiteboard override setting

* whiteboard latte override working v1

* latte override working 2

* more minor changes

* fix: minor

* fix: whiteboard fill colors

* fix: whiteboard fill colors
2024-03-10 02:33:32 +05:30
Soumik
64487bbbfe
fix: regression issues from v0.5 (#29)
* fix: whiteboard tooltip container styles

* fix: button icon color fav and recent tab

* comment out temp vars

* fix: theme selection hover, selected color

* init support for logseq accent

* feat: start using catppuccin/palette

* fix: whiteboard shape background color

* fix: latte in logseq accent

* fix
2024-03-07 03:59:23 +05:30
23 changed files with 1934 additions and 758 deletions

40
.github/ISSUE_TEMPLATE/bug.yml vendored Normal file
View File

@ -0,0 +1,40 @@
name: Bug Report
description: Report your bugs with the theme here!
labels: [bug]
body:
- type: checkboxes
attributes:
label: Is there an existing issue outlining your problem?
description: Please search to see if an issue already exists for your problem.
options:
- label: I have searched the existing issues and they do not solve my problem.
required: true
- type: textarea
attributes:
label: Describe your problem.
description: Also tell us what you expect to see.
placeholder: The highlighted text color is hard to read...
validations:
required: true
- type: textarea
attributes:
label: Attach screenshots.
description: If applicable, attach screenshots that highlight the issue.
- type: input
attributes:
label: What Logseq version do you see the issue on?
description: "You can find your Logseq version under Settings > General > Current Version"
placeholder: 0.10.9
validations:
required: true
- type: input
attributes:
label: What theme version do you see the issue on?
description: "You can find your theme version under Plugins > Installed > Themes if installed as a plugin"
placeholder: 0.6.3
validations:
required: true
- type: textarea
attributes:
label: Any additional comments?
description: Add any information not covered in the previous sections!

5
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Community Discord
url: https://discord.com/servers/catppuccin-907385605422448742
about: Chat to other community members!

18
.github/ISSUE_TEMPLATE/meta.yml vendored Normal file
View File

@ -0,0 +1,18 @@
name: Meta Issue
description: Raise any issue regarding the repository here!
labels: [meta]
body:
- type: checkboxes
attributes:
label: Is there an existing issue outlining your problem?
description: Please search to see if an issue already exists for your problem.
options:
- label: I have searched the existing issues and they do not solve my problem.
required: true
- type: textarea
attributes:
label: Describe your issue.
description: Bugs should be raised under a [Bug Report](https://github.com/catppuccin/tmux/issues/new?assignees=&labels=bug&template=bug.yml).
placeholder: The README is missing crucial information such as...
validations:
required: true

View File

@ -9,11 +9,11 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: 'true'
- name: Use Node.js
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: '16' # You might need to adjust this value to your own version
- name: Build
@ -26,7 +26,7 @@ jobs:
cp README.md package.json index.html index.js ctp-latte.css ctp-frappe.css ctp-macchiato.css ctp-mocha.css ctp-oled.css ${{ env.PLUGIN_NAME }} # move build assets
zip -r ${{ env.PLUGIN_NAME }}-${{ github.ref_name }}.zip ${{ env.PLUGIN_NAME }} # create zip
- name: Create Release
uses: softprops/action-gh-release@v1
uses: softprops/action-gh-release@v2
id: create_release
with:
draft: true
@ -39,7 +39,7 @@ jobs:
ctp-mocha.css
ctp-oled.css
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./${{ env.PLUGIN_NAME }}/

View File

@ -38,20 +38,30 @@
<blockquote>Selected Accent: Green</blockquote>
</details>
## Usage
### Installation
> [!WARNING]
> Logseq now officially supports accents for its default theme. Catppuccin Theme **DOES NOT** support the new accent colors.
> Select **no accent color or Logseq classical color** (one of the first two) for maximum theme compatibility.
>
> ![accent-no-support](https://github.com/user-attachments/assets/d26f0194-a260-4c90-9d75-ca8a86327077)
There are couple of other methods you can use to set the theme up in Logseq. Later methods are more for development purpose.
1. Logseq Plugin Marketplace **(Recommended)**
1. Search for 'catppuccin' in `Plugins` > `Marketplace` > `Themes` and install the plugin.
2. Choose the the appropriate theme variant from `Settings` > `Themes`.
### Logseq Plugin Marketplace **(Recommended)**
1. Search for 'catppuccin' in `Plugins` > `Marketplace` > `Themes` and install the plugin.
2. Choose the the appropriate theme variant from `Settings` > `Themes`.
<img src="https://raw.githubusercontent.com/catppuccin/logseq/main/assets/ctp-logseq-marketplace.webp"/>
2. Editing custom theme: **`custom.css`** (recommended for mobile). Choose one of the following and restart Logseq
### Importing external CSS (Recommended for mobile)
A. Add one of the following lines at the start of your `custom.css` and restart Logseq
> [!NOTE]
> `@import` statement works only when defined at the top of CSS files ([ref](https://developer.mozilla.org/en-US/docs/Web/CSS/@import))
```css
@import url('https://logseq.catppuccin.com/ctp-latte.css');
@ -60,8 +70,9 @@ There are couple of other methods you can use to set the theme up in Logseq. Lat
@import url('https://logseq.catppuccin.com/ctp-mocha.css');
@import url('https://logseq.catppuccin.com/ctp-oled.css');
```
OR
3. Editing custom configuration: **`config.edn`** ([source](https://github.com/logseq/logseq/blob/master/src/resources/templates/config.edn#97)) Set one of the following in your config and restart Logseq.
B. Add one of the following in your custom `config.edn` ([source](https://github.com/logseq/logseq/blob/master/src/resources/templates/config.edn#97)) and restart Logseq.
```edn
:custom-css-url "@import url('https://logseq.catppuccin.com/ctp-latte.css');"
@ -70,30 +81,20 @@ There are couple of other methods you can use to set the theme up in Logseq. Lat
:custom-css-url "@import url('https://logseq.catppuccin.com/ctp-mocha.css');"
```
4. Add manually from GitHub Releases
1. Download `.zip` from latest release.
2. Extract it to desired location.
3. Enable `Developer Mode` under `Settings` > `Advanced`.
4. Use the new `Load unpacked plugin` option under `Plugins`, choosing extracted folder to install the theme.
## Switching Accent Color
5. Clone Repository and add manually
1. Clone repository (including submodules)
2. Run `npm ci && npm run build`
3. Enable `Developer Mode` under `Settings` > `Advanced`
4. Use the new `Load unpacked plugin` option under `Plugins`, choosing repo folder to install the theme.
### Switching Accent Color
This option is only available when the theme installed through the Plugins Marketplace
1. Theme settings can be accessed under `Settings` > `Plugins` > `Catppuccin`
2. Select an accent color of choice from the dropdown under `CtpAccent` setting.
2. Select an accent color from the dropdown under `CtpAccent` setting.
<img src="https://raw.githubusercontent.com/catppuccin/logseq/main/assets/ctp-logseq-switch-accent.webp"/>
### Bonus: Oledppuccin
## Bonus: Oledppuccin
> The _niche_ dark side
You can choose this variant of dark theme under `Settings` > `Themes`.
You can choose this dark theme variant under `Settings` > `Themes`.
<img src="https://raw.githubusercontent.com/catppuccin/logseq/main/assets/ctp-oledppuccin.webp"/>

View File

@ -29,13 +29,41 @@ const settings = [
enumChoices: accentNames,
default: "Full palette"
},
{
key: "CtpWhiteboard",
title: "Override Whiteboard theme to light theme?",
description: " Override whiteboard theme to use Latte theme flavor",
type: "boolean",
default: false,
},
];
function setWhiteboardOverride(bool) {
const rootContainer = parent.document.querySelector(`html`);
if (bool) {
rootContainer.classList.add('whiteboard-latte');
} else {
rootContainer.classList.remove('whiteboard-latte');
}
}
function setAccent(accentName) {
logseq.provideStyle({
key: 'ctp-accent',
style: `
:root:not([data-color]), :root[data-color='none'] {
:root:not([data-color]), :root[data-color='none'], :root[data-color='logseq'] {
--ctp-accent: ${accentMap[accentName]};
}
html.whiteboard-latte div.whiteboard-page {
--ctp-accent: ${accentMap[accentName]};
}
html.whiteboard-latte div.dashboard-card {
--ctp-accent: ${accentMap[accentName]};
}
html.whiteboard-latte div.tl-tooltip-content {
--ctp-accent: ${accentMap[accentName]};
}
html.whiteboard-latte div.tl-select-input-content {
--ctp-accent: ${accentMap[accentName]};
}
`,
@ -54,6 +82,9 @@ async function main() {
if (setAccent(updatedSettings.CtpAccent)) {
console.log(`Applied ${updatedSettings.CtpAccent} accent✨`);
}
if (setWhiteboardOverride(updatedSettings.CtpWhiteboard)) {
console.log(`${updatedSettings.CtpWhiteboard ? 'Applied' : 'Removed'} Latte whiteboard flavor✨`);
}
});
}

1527
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
{
"name": "logseq-catppuccin",
"version": "0.2.3",
"version": "0.6.4",
"description": "🦫 Soothing pastel theme for Logseq",
"main": "index.html",
"scripts": {
@ -20,9 +20,9 @@
},
"homepage": "https://github.com/catppuccin/logseq#readme",
"devDependencies": {
"@catppuccin/highlightjs": "^0.1.4",
"@catppuccin/highlightjs": "^1.0.0",
"@catppuccin/palette": "^1.1.0",
"rimraf": "^3.0.2",
"rimraf": "^6.0.0",
"sass": "^1.55.0"
},
"logseq": {

6
renovate.json Normal file
View File

@ -0,0 +1,6 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"local>catppuccin/renovate-config"
]
}

View File

@ -1,5 +1,5 @@
:root:not([data-color]), :root[data-color='none'] {
// following are mapped to variables used in logseq
@mixin variables {
// following are custom ctp variables mapped to logseq variables
--ctp-primary-background-color: rgb(var(--ctp-base));
--ctp-secondary-background-color: rgb(var(--ctp-mantle));
--ctp-tertiary-background-color: rgb(var(--ctp-crust));
@ -45,7 +45,7 @@
--ctp-block-highlight-color: var(--color-base-30);
--ctp-selection-background-color: rgba(var(--ctp-yellow, 0.9));
--ctp-selection-text-color: rgb(var(--color-base-00));
--ctp-selection-text-color: var(--color-base-00);
--ctp-page-checkbox-color: rgb(var(--ctp-accent, var(--ctp-blue)));
--ctp-page-checkbox-border-color: var(--ctp-primary-background-color);
@ -94,49 +94,6 @@
--ctp-success-color: var(--ctp-green);
--ctp-info-color: var(--ctp-yellow);
/* Whiteboard */
/* Whiteboard object colors */
--ctp-wb-background-color-gray: color-mix(in srgb, rgb(var(--ctp-gray)), rgb(var(--ctp-base)) 60%);
--ctp-wb-background-color-red: color-mix(in srgb, rgb(var(--ctp-red)), rgb(var(--ctp-base)) 60%);
--ctp-wb-background-color-yellow: color-mix(in srgb, rgb(var(--ctp-yellow)), rgb(var(--ctp-base)) 60%);
--ctp-wb-background-color-green: color-mix(in srgb, rgb(var(--ctp-green)), rgb(var(--ctp-base)) 60%);
--ctp-wb-background-color-blue: color-mix(in srgb, rgb(var(--ctp-blue)), rgb(var(--ctp-base)) 60%);
--ctp-wb-background-color-purple: color-mix(in srgb, rgb(var(--ctp-mauve)), rgb(var(--ctp-base)) 60%);
--ctp-wb-background-color-pink: color-mix(in srgb, rgb(var(--ctp-pink)), rgb(var(--ctp-base)) 60%);
// NOTE: drawn lines with the pencil use the text color
// and not this stroke color
--ctp-wb-stroke-color-gray: rgb(var(--ctp-overlay2));
--ctp-wb-stroke-color-red: rgb(var(--ctp-red));
--ctp-wb-stroke-color-yellow: rgb(var(--ctp-yellow));
--ctp-wb-stroke-color-green: rgb(var(--ctp-green));
--ctp-wb-stroke-color-blue: rgb(var(--ctp-blue));
--ctp-wb-stroke-color-purple: rgb(var(--ctp-mauve));
--ctp-wb-stroke-color-pink: rgb(var(--ctp-pink));
--ctp-wb-text-color-gray: rgb(var(--ctp-overlay2));
--ctp-wb-text-color-red: rgb(var(--ctp-red));
--ctp-wb-text-color-yellow: rgb(var(--ctp-yellow));
--ctp-wb-text-color-green: rgb(var(--ctp-green));
--ctp-wb-text-color-blue: rgb(var(--ctp-blue));
--ctp-wb-text-color-purple: rgb(var(--ctp-mauve));
--ctp-wb-text-color-pink: rgb(var(--ctp-pink));
// since text and lines share a color, it is not possible to have a fill color
// with the regular ctp colors
// so the options are to either shade the fill/bg color or
// override the text color variable inside the shape labels
--ctp-wb-shape-label-color-gray: rgb(var(--ctp-gray));
--ctp-wb-shape-label-color-red: rgb(var(--ctp-red));
--ctp-wb-shape-label-color-yellow: rgb(var(--ctp-yellow));
--ctp-wb-shape-label-color-green: rgb(var(--ctp-green));
--ctp-wb-shape-label-color-blue: var(--ctp-blue);
--ctp-wb-shape-label-color-purple: rgb(var(--ctp-purple));
--ctp-wb-shape-label-color-pink: rgb(var(--ctp-pink));
// following used in _custom.scss
// Switches
@ -163,7 +120,7 @@
--ctp-dropdown-border-color: var(--color-base-50);
// Full accent overrides
--ctp-text-bold: var(var(--ctp-primary-text-color));
--ctp-text-bold: var(--ctp-primary-text-color);
--ctp-text-heading: var(--ctp-accent, var(--ctp-lavender));
--ctp-text-italics: var(--ctp-accent, var(--ctp-green));
--ctp-text-underline: var(--ctp-primary-text-color);
@ -171,33 +128,6 @@
--ctp-blockquote-line: var(--ctp-accent);
--ctp-active-setting: var(--ctp-accent, var(--ctp-blue));
// Whiteboard Buttons
// selected tool button
--ctp-wb-button-selected-foreground: var(--ctp-accent, var(--ctp-mauve));
--ctp-wb-button-selected-background: var(--ctp-surface0);
// regular tool button
--ctp-wb-button-foreground: var(--ctp-text);
--ctp-wb-button-menu-foreground: var(--ctp-accent, var(--ctp-teal));
// double click or "add block or page" from toolbar -> bottom icons
--ctp-wb-button-type-tag-background-active: var(--ctp-accent, var(--ctp-mauve));
--ctp-wb-button-type-tag-background-inactive: var(--ctp-surface0);
--ctp-wb-button-type-tag-foreground: var(--ctp-text);
// page reference block -> hover -> below button to referenced page
--ctp-wb-quick-links-button: var(--ctp-accent, var(--ctp-blue));
--ctp-wb-quick-links-button-hover: var(--ctp-sky);
// select multiple objects -> right click -> align buttons on top
--ctp-wb-layout-button-foreground: var(--ctp-accent, var(--ctp-teal));
// selected item bg in e.g. a dropdown
--ctp-tl-select-input-select-item: var(--ctp-surface2);
--ctp-tl-selectFill: var(--ctp-accent, var(--ctp-blue));
--ctp-tl-selectStroke: var(--ctp-accent, var(--ctp-blue));
// priorites variables
--ctp-priority-bg-color: var(--ctp-crust);
--ctp-priority-todo: var(--ctp-teal);
@ -215,4 +145,8 @@
--ctp-marker-size: 16px;
}
:root:not([data-color]), :root[data-color='none'], :root[data-color='logseq'] {
@include variables;
}

View File

@ -1,7 +1,12 @@
html:not(html[data-color]),
html[data-theme=light][data-color='logseq'],
html[data-theme=dark][data-color='logseq'],
html[data-color='none'] {
// place for selection to customise elements not supported by default variables
#left-sidebar {
background-color: var(--ctp-secondary-background-color);
}
// Search bar placeholder
div.input-wrap>input::placeholder {
color: var(--ctp-search-input-placeholder);
@ -40,7 +45,7 @@ html[data-color='none'] {
background-color: rgb(var(--ctp-button-background));
}
&:hover {
&.as-ghost:hover, &:hover {
background-color: rgb(var(--ctp-button-background));
}
}
@ -176,16 +181,11 @@ html[data-color='none'] {
}
html[data-theme=dark] .cp__header a,
html[data-theme=dark] .cp__header button,
html[data-theme=dark] .cp__header button.button,
html[data-theme=dark] .cp__right-sidebar-topbar button {
opacity: 1;
}
// selection
::selection {
color: var(--ls-text-on-accent);
}
.inline.with-bg-color {
color: var(--ctp-primary-background-color);
@ -230,8 +230,12 @@ html[data-color='none'] {
background-color: var(--ctp-menu-hover-color);
}
.menu-link.chosen {
background-color: var(--ls-menu-hover-color);
}
.cp__settings-inner>aside ul>li>a>strong {
color: rgb(var(--ctp-primary-text-color));
color: var(--ctp-primary-text-color);
}
.cp__settings-inner>aside ul>li.active {
@ -243,7 +247,7 @@ html[data-color='none'] {
}
.cp__all_pages_table td>span {
color: rgb(var(--ctp-primary-text-color));
color: var(--ctp-primary-text-color);
}
// full pallete overrides
@ -255,7 +259,7 @@ html[data-color='none'] {
b,
strong {
color: rgb(var(--ctp-text-bold));
color: var(--ctp-text-bold);
}
i {
@ -298,108 +302,6 @@ html[data-color='none'] {
background: var(--ctp-tertiary-background-color);
}
// Whiteboard
// Whiteboard tool button
.tl-button[data-selected=true] {
background: rgb(var(--ctp-wb-button-selected-background));
i {
color: rgb(var(--ctp-wb-button-selected-foreground));
}
}
.ti,
.tie {
color: rgb(var(--ctp-wb-button-foreground));
}
.tl-context-bar {
.ti,
.tie {
color: rgb(var(--ctp-wb-button-menu-foreground));
}
}
// double click or "add block or page" from toolbar -> icons
// by default, bg color is hardcoded
.tl-type-tag {
background-color: rgb(var(--ctp-wb-button-type-tag-background-inactive));
border-color: rgb(var(--ctp-wb-button-type-tag-background-inactive));
// color: #ff00ff; // fg color has to be set on inner i element (.tie)
.tie {
color: rgb(var(--ctp-wb-button-type-tag-foreground));
}
}
html[data-theme=dark] .tl-type-tag[data-active=true] {
background-color: rgba(var(--ctp-wb-button-type-tag-background-active), 0.8);
border-color: rgb(var(--ctp-wb-button-type-tag-background-active));
.tie {
color: rgb(var(--ctp-wb-button-type-tag-foreground));
}
}
// Whiteboard context menu button icon
.tl-menu-item i {
color: rgb(var(--ctp-wb-button-menu-foreground));
}
// Button that appears below a page reference block (on hover)
.tl-quick-links-row:first-child {
background-color: rgb(var(--ctp-wb-quick-links-button));
:hover {
background-color: rgb(var(--ctp-wb-quick-links-button-hover));
}
}
// selected item bg in e.g. a dropdown
.tl-select-input-select-item[data-state=checked] {
background: rgb(var(--ctp-tl-select-input-select-item));
}
// align-buttons that appear when right clicking after
// selecting multiple objects
i[class*="ti-layout-"] {
color: rgb(var(--ctp-wb-layout-button-foreground));
}
// these are the colors that appear when selecting a color (e.g. for fill)
.bg-gray-500 {
background-color: rgb(var(--ctp-gray));
}
.bg-red-500 {
background-color: rgb(var(--ctp-red));
}
.bg-yellow-500 {
background-color: rgb(var(--ctp-yellow));
}
.bg-green-500 {
background-color: rgb(var(--ctp-green));
}
.bg-blue-500 {
background-color: rgb(var(--ctp-blue));
}
.bg-purple-500 {
background-color: rgb(var(--ctp-mauve));
}
.bg-pink-500 {
background-color: rgb(var(--ctp-pink));
}
// Priorities custom styles
.block-marker {
@ -501,6 +403,9 @@ html[data-color='none'] {
.sidebar-item-header .item-actions {
button {
background-color: transparent;
.ui__icon {
color: var(--ctp-primary-text-color);
}
}
button:hover {
background-color: var(--ctp-menu-hover-color);
@ -509,6 +414,12 @@ html[data-color='none'] {
div.favorites, div.recent {
button.ui__button {
background: transparent;
&.as-ghost:hover, &:hover {
background: transparent;
}
}
span.ui__icon {
color: var(--ctp-primary-text-color);
}
}
@ -567,4 +478,71 @@ html[data-color='none'] {
}
}
}
.cp__themes-installed .it.is-active, .cp__themes-installed .it:hover {
background-color: var(--ctp-menu-hover-color);
opacity: 1;
}
.search-results {
.text-gray-12 {
color: var(--ctp-primary-text-color);
}
}
.input-wrap > input {
background-color: var(--ls-primary-background-color);
border-color: var(--ls-border-color);
color: var(--ls-primary-text-color);
}
/* #35 make bold+italics text color same as italics */
i b {
color: rgb(var(--ctp-text-italics));
}
/* #35 make plugin icons in header consistent with other icons in header */
.ui-items-container,
.toolbar-plugin-manager {
.button {
color: var(--ls-header-button-background);
i {
color: var(--ls-header-button-background);
}
&:hover {
color: rgb(var(--ctp-accent, var(--ctp-pink)));
background-color: var(--ctp-header-icon-background);
i, span.ui__icon {
color: rgb(var(--ctp-accent, var(--ctp-pink)));
}
}
}
}
/* #32 theme search modal */
.ui__modal[label="ls-modal-search"] {
color: var(--ctp-primary-text-color);
// TODO: port all the new design system variables once its stable
.text-gray-12, .text-gray-11, input {
color: var(--ctp-primary-text-color);
}
input::placeholder {
color: var(--ctp-primary-text-color);
opacity: .75;
}
}
.cp__settings-inner {
min-height: 70dvh;
max-height: 70dvh;
}
::selection {
background-color: var(--ls-selection-background-color);
color: var(--ls-selection-text-color);
}
}

View File

@ -1,8 +1,7 @@
@use "@catppuccin/highlightjs/sass/catppuccin.variables";
@use "@catppuccin/highlightjs/sass/catppuccin-variables";
html:not(html[data-color]),
html[data-color='none'] {
html:not(html[data-color]), html[data-color='logseq'], html[data-color='none'] {
code.hljs {
background-color: var(--ctp-tertiary-background-color);
}
}
}

View File

@ -1,41 +1,4 @@
// Source: https://github.com/logseq/logseq/blob/master/resources/css/common.css
:root:not([data-color]), :root[data-color='none'] {
--ls-error-color: var(--ctp-error-color);
--ls-warning-color: var(--ctp-warning-color);
--ls-success-color: var(--ctp-success-color);
--ls-text-on-accent: rgb(var(--ctp-text));
.logseq-tldraw {
--tl-selectFill: rgba(var(--ctp-tl-selectFill), 0.05);
--tl-selectStroke: rgb(var(--ctp-tl-selectStroke));
}
.tl-text-label-inner-wrapper {
// this is for overriding the text colors inside shapes (e.g. the label color of a rectangle)
--ls-wb-text-color-gray: var(--ctp-wb-shape-label-color-gray);
--ls-wb-text-color-red: var(--ctp-wb-shape-label-color-red);
--ls-wb-text-color-yellow: var(--ctp-wb-shape-label-color-yellow);
--ls-wb-text-color-green: var(--ctp-wb-shape-label-color-green);
--ls-wb-text-color-blue: var(--ctp-wb-shape-label-color-blue);
--ls-wb-text-color-purple: var(--ctp-wb-shape-label-color-purple);
--ls-wb-text-color-pink: var(--ctp-wb-shape-label-color-pink);
}
}
@media (prefers-color-scheme: dark) {
html:not(html[data-color]),
html[data-color='none'] {
background-color: rgb(var(--ctp-primary-background-color));
}
html[data-theme='light'] {
background-color: transparent;
}
}
html:not(html[data-color]),
html[data-color='none'] {
@mixin variables {
--ls-primary-background-color: var(--ctp-primary-background-color);
--ls-secondary-background-color: var(--ctp-secondary-background-color);
--ls-tertiary-background-color: var(--ctp-tertiary-background-color);
@ -128,37 +91,37 @@ html[data-color='none'] {
--ls-focus-ring-color: var(--ctp-focus-ring-color);
--ls-header-button-background: var(--ctp-header-button-background);
--ls-left-sidebar-active-background: var(--ls-active-primary-color);
/* Whiteboard */
/* Whiteboard object colors */
--ls-wb-background-color-gray: var(--ctp-wb-background-color-gray);
--ls-wb-background-color-red: var(--ctp-wb-background-color-red);
--ls-wb-background-color-yellow: var(--ctp-wb-background-color-yellow);
--ls-wb-background-color-green: var(--ctp-wb-background-color-green);
--ls-wb-background-color-blue: var(--ctp-wb-background-color-blue);
--ls-wb-background-color-purple: var(--ctp-wb-background-color-purple);
--ls-wb-background-color-pink: var(--ctp-wb-background-color-pink);
--ls-wb-stroke-color-gray: var(--ctp-wb-stroke-color-gray);
--ls-wb-stroke-color-red: var(--ctp-wb-stroke-color-red);
--ls-wb-stroke-color-yellow: var(--ctp-wb-stroke-color-yellow);
--ls-wb-stroke-color-green: var(--ctp-wb-stroke-color-green);
--ls-wb-stroke-color-blue: var(--ctp-wb-stroke-color-blue);
--ls-wb-stroke-color-purple: var(--ctp-wb-stroke-color-purple);
--ls-wb-stroke-color-pink: var(--ctp-wb-stroke-color-pink);
--ls-wb-text-color-gray: var(--ctp-wb-text-color-gray);
--ls-wb-text-color-red: var(--ctp-wb-text-color-red);
--ls-wb-text-color-yellow: var(--ctp-wb-text-color-yellow);
--ls-wb-text-color-green: var(--ctp-wb-text-color-green);
--ls-wb-text-color-blue: var(--ctp-wb-text-color-blue);
--ls-wb-text-color-purple: var(--ctp-wb-text-color-purple);
--ls-wb-text-color-pink: var(--ctp-wb-text-color-pink);
--ls-left-sidebar-active-background: var(--ctp-color-level-4);
--ls-color-file-sync-error: rgb(var(--ctp-red));
--ls-color-file-sync-pending: rgb(var(--ctp-yellow));
--ls-color-file-sync-idle: rgb(var(--ctp-green));
;}
}
// Source: https://github.com/logseq/logseq/blob/master/resources/css/common.css
html:not(html[data-color]),
html[data-theme='dark'][data-color='logseq'],
html[data-theme='light'][data-color='logseq'],
html[data-theme='dark'],
html[data-theme='light'],
html[data-color='none'] {
@include variables;
}
:root:not([data-color]), :root[data-color='none'], :root[data-color='logseq'] {
--ls-error-color: var(--ctp-error-color);
--ls-warning-color: var(--ctp-warning-color);
--ls-success-color: var(--ctp-success-color);
}
@media (prefers-color-scheme: dark) {
html:not(html[data-color]), html[data-color='logseq'], html[data-color='none'] {
background-color: rgb(var(--ctp-primary-background-color));
}
html[data-theme='light'] {
background-color: transparent;
}
}

View File

@ -1,3 +1,70 @@
:root:not([data-color]), :root[data-color='none'] {
:root:not([data-color]), :root[data-color='none'], :root[data-theme=dark][data-color='logseq'] {
/*
--background: 192 100% 11%;
--foreground: 0 0% 95%;
--accent: 192 80% 10%;
--accent-foreground: 255 92% 100%;
--primary: 200 97% 37%;
--primary-foreground: 255 92% 100%;
--ring: 200 97% 37%;
--secondary: 203 50% 20%;
--secondary-foreground: 0 0% 98%;
--muted: 192 100% 13%;
--card: 192 100% 10%;
--card-foreground: 0 0% 95%;
--input: 203 35% 25%;
*/
--popover: var(--ctp-mantle-hsl);
--border: var(--ctp-surface0-hsl);
--lx-popover-bg: var(--ctp-secondary-background-color);
}
:root:not([data-color]), :root[data-color='none'] {
.light-theme,
.white-theme {
--color-level-1: var(--color-base-10);
--color-level-2: var(--color-base-20);
--color-level-3: var(--color-base-30);
--color-level-4: var(--color-base-40);
--color-level-5: var(--color-base-50);
--color-level-6: var(--color-base-60);
}
}
html[data-color=logseq][data-theme=light] {
/*
--primary: 200 97% 37%;
--primary-foreground: 255 92% 100%;
--accent: 200 97% 37%;
--accent-foreground: 255 92% 100%;
--ring: 200 97% 37%;
*/
--lx-gray-01: initial;
--lx-gray-02: initial;
--lx-gray-03: initial;
--lx-gray-04: initial;
--lx-gray-05: initial;
--lx-gray-06: initial;
--lx-gray-07: initial;
--lx-gray-08: initial;
--lx-gray-09: initial;
--lx-gray-10: initial;
--lx-gray-11: initial;
--lx-gray-12: initial;
}
html[data-color=logseq] {
--lx-accent-01: initial;
--lx-accent-02: initial;
--lx-accent-03: initial;
--lx-accent-04: initial;
--lx-accent-05: initial;
--lx-accent-06: initial;
--lx-accent-07: initial;
--lx-accent-08: initial;
--lx-accent-09: initial;
--lx-accent-10: initial;
--lx-accent-11: initial;
--lx-accent-12: initial;
}

View File

@ -5,3 +5,4 @@
@use "custom.scss";
@use "codemirror.scss";
@use "highlightjs.scss";
@use "whiteboard.scss";

View File

@ -1,4 +1,4 @@
:root:not([data-color]), :root[data-color='none'] {
@mixin variables {
// darkest -> lightest (dark theme)
--color-base-00: rgb(var(--ctp-crust));
--color-base-10: rgb(var(--ctp-mantle));
@ -11,4 +11,9 @@
--color-base-80: rgb(var(--ctp-overlay2));
--color-base-90: rgb(var(--ctp-subtext0));
--color-base-100: rgb(var(--ctp-text));
}
:root:not([data-color]), :root[data-color='none'], :root[data-color='logseq'] {
@include variables;
}

36
scss/_utils.scss Normal file
View File

@ -0,0 +1,36 @@
@use "@catppuccin/palette/scss/catppuccin" as catppuccin;
@use 'sass:math';
@use "sass:map";
@function strip-unit($value) {
@return math.div($value, ($value * 0 + 1));
}
@function hex-to-hsl($hexColor) {
@return #{math.round(strip-unit(hue($hexColor)))}, #{math.round(saturation($hexColor))}, #{math.round(lightness($hexColor))};
}
@function hex-to-rgb($hexColor) {
@return #{red($hexColor)}, #{green($hexColor)}, #{blue($hexColor)};
}
@function get-flavor-color($flavor, $name) {
$map: map.get(catppuccin.$palette, $flavor);
@return map.get($map, $name);
}
@function get-flavor-color-rgb($flavor, $name) {
@return #{hex-to-rgb(get-flavor-color($flavor, $name))};
}
@mixin ctp-hsl-vars ($flavor) {
@each $color, $hex in map.get(catppuccin.$palette, $flavor) {
--ctp-#{$color}-hsl: #{hex-to-hsl($hex)};
}
}
@mixin ctp-rgb-vars ($flavor) {
@each $color, $hex in map.get(catppuccin.$palette, $flavor) {
--ctp-#{$color}: #{hex-to-rgb($hex)};
}
}

294
scss/_whiteboard.scss Normal file
View File

@ -0,0 +1,294 @@
@use "utils.scss" as utils;
@use "ctp-vars" as ctp;
@use "ls-vars" as ls;
@use "theme" as theme;
@mixin latte-override-vars {
@include utils.ctp-rgb-vars(latte);
@include utils.ctp-hsl-vars(latte);
@include ctp.variables;
@include ls.variables;
@include theme.variables;
}
@mixin variables {
/* Color swatches */
--ctp-wb-color-gray: rgb(var(--ctp-overlay2));
--ctp-wb-color-red: rgb(var(--ctp-red));
--ctp-wb-color-yellow: rgb(var(--ctp-yellow));
--ctp-wb-color-green: rgb(var(--ctp-green));
--ctp-wb-color-blue: rgb(var(--ctp-blue));
--ctp-wb-color-purple: rgb(var(--ctp-mauve));
--ctp-wb-color-pink: rgb(var(--ctp-pink));
/* Whiteboard object colors */
--ctp-wb-background-color-gray: color-mix(in srgb, var(--ctp-wb-color-gray), rgb(var(--ctp-base)) 70%);
--ctp-wb-background-color-red: color-mix(in srgb, var(--ctp-wb-color-red), rgb(var(--ctp-base)) 60%);
--ctp-wb-background-color-yellow: color-mix(in srgb, var(--ctp-wb-color-yellow), rgb(var(--ctp-base)) 60%);
--ctp-wb-background-color-green: color-mix(in srgb, var(--ctp-wb-color-green), rgb(var(--ctp-base)) 60%);
--ctp-wb-background-color-blue: color-mix(in srgb, var(--ctp-wb-color-blue), rgb(var(--ctp-base)) 60%);
--ctp-wb-background-color-purple: color-mix(in srgb, var(--ctp-wb-color-purple), rgb(var(--ctp-base)) 60%);
--ctp-wb-background-color-pink: color-mix(in srgb, var(--ctp-wb-color-pink), rgb(var(--ctp-base)) 60%);
// NOTE: drawn lines with the pencil use the text color
// and not this stroke color
--ctp-wb-stroke-color-gray: var(--ctp-wb-color-gray);
--ctp-wb-stroke-color-red: var(--ctp-wb-color-red);
--ctp-wb-stroke-color-yellow: var(--ctp-wb-color-yellow);
--ctp-wb-stroke-color-green: var(--ctp-wb-color-green);
--ctp-wb-stroke-color-blue: var(--ctp-wb-color-blue);
--ctp-wb-stroke-color-purple: var(--ctp-wb-color-purple);
--ctp-wb-stroke-color-pink: var(--ctp-wb-color-pink);
/* Pen path color */
--ctp-wb-text-color-gray: var(--ctp-wb-color-gray);
--ctp-wb-text-color-red: var(--ctp-wb-color-red);
--ctp-wb-text-color-yellow: var(--ctp-wb-color-yellow);
--ctp-wb-text-color-green: var(--ctp-wb-color-green);
--ctp-wb-text-color-blue: var(--ctp-wb-color-blue);
--ctp-wb-text-color-purple: var(--ctp-wb-color-purple);
--ctp-wb-text-color-pink: var(--ctp-wb-color-pink);
/* Shape label color */
--ctp-wb-shape-label-color-gray: var(--ctp-wb-color-gray);
--ctp-wb-shape-label-color-red: var(--ctp-wb-color-red);
--ctp-wb-shape-label-color-yellow: var(--ctp-wb-color-yellow);
--ctp-wb-shape-label-color-green: var(--ctp-wb-color-green);
--ctp-wb-shape-label-color-blue: var(--ctp-wb-color-blue);
--ctp-wb-shape-label-color-purple: var(--ctp-wb-color-purple);
--ctp-wb-shape-label-color-pink: var(--ctp-wb-color-pink);
// Whiteboard Buttons
// selected tool button
--ctp-wb-button-selected-foreground: var(--ctp-accent, var(--ctp-mauve));
--ctp-wb-button-selected-background: var(--ctp-surface0);
// regular tool button
--ctp-wb-button-foreground: var(--ctp-text);
--ctp-wb-button-menu-foreground: var(--ctp-accent, var(--ctp-teal));
// double click or "add block or page" from toolbar -> bottom icons
--ctp-wb-button-type-tag-background-active: var(--ctp-accent, var(--ctp-mauve));
--ctp-wb-button-type-tag-background-inactive: var(--ctp-surface0);
--ctp-wb-button-type-tag-foreground: var(--ctp-text);
// page reference block -> hover -> below button to referenced page
--ctp-wb-quick-links-button: var(--ctp-accent, var(--ctp-blue));
--ctp-wb-quick-links-button-hover: var(--ctp-sky);
// select multiple objects -> right click -> align buttons on top
--ctp-wb-layout-button-foreground: var(--ctp-accent, var(--ctp-teal));
// selected item bg in e.g. a dropdown
--ctp-tl-select-input-select-item: var(--ctp-link-text-hover-color);
--ctp-tl-selectFill: var(--ctp-accent, var(--ctp-blue));
--ctp-tl-selectStroke: var(--ctp-accent, var(--ctp-blue));
/* logseq variables for whiteboard */
/* Shape background color */
--ls-wb-background-color-gray: var(--ctp-wb-background-color-gray);
--ls-wb-background-color-red: var(--ctp-wb-background-color-red);
--ls-wb-background-color-yellow: var(--ctp-wb-background-color-yellow);
--ls-wb-background-color-green: var(--ctp-wb-background-color-green);
--ls-wb-background-color-blue: var(--ctp-wb-background-color-blue);
--ls-wb-background-color-purple: var(--ctp-wb-background-color-purple);
--ls-wb-background-color-pink: var(--ctp-wb-background-color-pink);
/* Shape outline color */
--ls-wb-stroke-color-gray: var(--ctp-wb-stroke-color-gray);
--ls-wb-stroke-color-red: var(--ctp-wb-stroke-color-red);
--ls-wb-stroke-color-yellow: var(--ctp-wb-stroke-color-yellow);
--ls-wb-stroke-color-green: var(--ctp-wb-stroke-color-green);
--ls-wb-stroke-color-blue: var(--ctp-wb-stroke-color-blue);
--ls-wb-stroke-color-purple: var(--ctp-wb-stroke-color-purple);
--ls-wb-stroke-color-pink: var(--ctp-wb-stroke-color-pink);
/* Pen path color */
--ls-wb-text-color-gray: var(--ctp-wb-text-color-gray);
--ls-wb-text-color-red: var(--ctp-wb-text-color-red);
--ls-wb-text-color-yellow: var(--ctp-wb-text-color-yellow);
--ls-wb-text-color-green: var(--ctp-wb-text-color-green);
--ls-wb-text-color-blue: var(--ctp-wb-text-color-blue);
--ls-wb-text-color-purple: var(--ctp-wb-text-color-purple);
--ls-wb-text-color-pink: var(--ctp-wb-text-color-pink);
--ls-wb-stroke-color-default: var(--ls-secondary-border-color);
--ls-wb-text-color-default: var(--ls-primary-text-color);
--ls-wb-background-color-default: var(--ls-tertiary-background-color);
--ls-whiteboard-tooltip-background: var(--ls-secondary-background-color);
--ls-whiteboard-select-background-selected: var(--ctp-color-level-5);
}
/* Below related to whiteboard latte override feature */
html.whiteboard-latte {
div.dashboard-card, div.whiteboard-page {
@include latte-override-vars;
@include variables;
background-color: var(--ls-primary-background-color);
color: var(--ls-primary-text-color);
.tl-button:hover {
background-color: var(--ls-menu-hover-color);
}
.dashboard-card-title {
color: rgb(var(--ctp-text));
}
}
.tl-select-input-content {
@include latte-override-vars;
@include variables;
}
.tl-tooltip-content {
@include latte-override-vars;
@include variables;
}
}
/* Above related to whiteboard latte override feature */
.light-theme, .white-theme, html[data-theme=light],
.dark-theme, html[data-theme=dark],
html:not(.whiteboard-latte),
:root:not([data-color]),
:root[data-color='none'],
:root[data-color='logseq'] {
@include variables;
}
html:not(html[data-color]),
html[data-theme=light][data-color='logseq'],
html[data-theme=dark][data-color='logseq'],
html[data-color='none'] {
// selected item bg in e.g. a dropdown
.tl-select-input-select-item[data-state=checked] {
background: rgb(var(--ctp-wb-button-selected-background));
color: var(--ctp-link-text-hover-color);
}
div.whiteboard-page {
// these are the colors that appear when selecting a color (e.g. for fill)
.bg-gray-500 {
background-color: var(--ctp-wb-color-gray);
}
.bg-red-500 {
background-color: var(--ctp-wb-color-red);
}
.bg-yellow-500 {
background-color: var(--ctp-wb-color-yellow);
}
.bg-green-500 {
background-color: var(--ctp-wb-color-green);
}
.bg-blue-500 {
background-color: var(--ctp-wb-color-blue);
}
.bg-purple-500 {
background-color: var(--ctp-wb-color-purple);
}
.bg-pink-500 {
background-color: var(--ctp-wb-color-pink);
}
// Whiteboard tool button
.tl-button[data-selected=true] {
background: rgb(var(--ctp-wb-button-selected-background));
i {
color: rgb(var(--ctp-wb-button-selected-foreground));
}
}
.ti,
.tie {
color: rgb(var(--ctp-wb-button-foreground));
}
.tl-context-bar {
.ti,
.tie {
color: rgb(var(--ctp-wb-button-menu-foreground));
}
}
// double click or "add block or page" from toolbar -> icons
// by default, bg color is hardcoded
.tl-type-tag {
background-color: rgb(var(--ctp-wb-button-type-tag-background-inactive));
border-color: rgb(var(--ctp-wb-button-type-tag-background-inactive));
// color: #ff00ff; // fg color has to be set on inner i element (.tie)
.tie {
color: rgb(var(--ctp-wb-button-type-tag-foreground));
}
}
html[data-theme=dark] .tl-type-tag[data-active=true] {
background-color: rgba(var(--ctp-wb-button-type-tag-background-active), 0.8);
border-color: rgb(var(--ctp-wb-button-type-tag-background-active));
.tie {
color: rgb(var(--ctp-wb-button-type-tag-foreground));
}
}
// Whiteboard context menu button icon
.tl-menu {
background-color: var(--ctp-secondary-background-color);
}
.tl-menu-item i {
color: rgb(var(--ctp-wb-button-menu-foreground));
}
// Button that appears below a page reference block (on hover)
.tl-quick-links-row:first-child {
background-color: rgb(var(--ctp-wb-quick-links-button));
:hover {
background-color: rgb(var(--ctp-wb-quick-links-button-hover));
}
}
// align-buttons that appear when right clicking after
// selecting multiple objects
i[class*="ti-layout-"] {
color: rgb(var(--ctp-wb-layout-button-foreground));
}
.tl-container {
--ls-primary-background-color: var(--ctp-primary-background-color);
--ls-secondary-background-color: var(--ctp-secondary-background-color);
--ls-tertiary-background-color: var(--ctp-tertiary-background-color);
--ls-quaternary-background-color: var(--ctp-quaternary-background-color);
}
.tl-button:hover {
background-color: var(--ctp-tertiary-background-color);
}
.tl-text-label-inner-wrapper {
// this is for overriding the text colors inside shapes (e.g. the label color of a rectangle)
--ls-wb-text-color-gray: var(--ctp-wb-shape-label-color-gray);
--ls-wb-text-color-red: var(--ctp-wb-shape-label-color-red);
--ls-wb-text-color-yellow: var(--ctp-wb-shape-label-color-yellow);
--ls-wb-text-color-green: var(--ctp-wb-shape-label-color-green);
--ls-wb-text-color-blue: var(--ctp-wb-shape-label-color-blue);
--ls-wb-text-color-purple: var(--ctp-wb-shape-label-color-purple);
--ls-wb-text-color-pink: var(--ctp-wb-shape-label-color-pink);
}
.logseq-tldraw {
--tl-selectFill: rgba(var(--ctp-tl-selectFill), 0.05);
--tl-selectStroke: rgb(var(--ctp-tl-selectStroke));
}
}
}

View File

@ -1,39 +1,15 @@
@use "main.scss";
@use "utils.scss" as utils;
:root:not([data-color]), :root[data-color='none'] {
--ctp-cm-theme: 'ctp-frappe';
--ctp-rosewater: 242, 213, 207;
--ctp-flamingo: 238, 190, 190;
--ctp-pink: 244, 184, 228;
--ctp-mauve: 202, 158, 230;
--ctp-red: 231, 130, 132;
--ctp-maroon: 234, 153, 156;
--ctp-peach: 239, 159, 118;
--ctp-yellow: 229, 200, 144;
--ctp-green: 166, 209, 137;
--ctp-teal: 129, 200, 190;
--ctp-sky: 153, 209, 219;
--ctp-sapphire: 133, 193, 220;
--ctp-blue: 140, 170, 238;
--ctp-lavender: 186, 187, 241;
--ctp-text: 198, 206, 239;
--ctp-subtext1: 181, 189, 220;
--ctp-subtext0: 165, 172, 201;
--ctp-overlay2: 148, 155, 183;
--ctp-overlay1: 131, 138, 164;
--ctp-overlay0: 115, 120, 145;
--ctp-surface2: 98, 103, 126;
--ctp-surface1: 81, 86, 108;
--ctp-surface0: 65, 69, 89;
--ctp-base: 48, 52, 70;
--ctp-mantle: 41, 44, 60;
--ctp-crust: 35, 38, 52;
$flavor: frappe;
:root:not([data-color]), :root[data-color='none'], :root[data-color='logseq'] {
--ctp-cm-theme: 'ctp-#{$flavor}';
@include utils.ctp-rgb-vars($flavor);
@include utils.ctp-hsl-vars($flavor);
}
// custom check box checked image
// css var works but does not trigger reloading data asset in browser
// hence a sass variable
$ctp-base: 48, 52, 70;
$ctp-base: utils.get-flavor-color-rgb($flavor, base);
.form-checkbox:checked {
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 16 16' fill='rgb(#{$ctp-base})' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0z'/%3E%3C/svg%3E") !important;

View File

@ -1,39 +1,15 @@
@use "main.scss";
@use "utils.scss" as utils;
:root:not([data-color]), :root[data-color='none'] {
--ctp-cm-theme: 'ctp-latte';
--ctp-rosewater: 222, 149, 132;
--ctp-flamingo: 221, 120, 120;
--ctp-pink: 236, 131, 208;
--ctp-mauve: 136, 57, 239;
--ctp-red: 210, 15, 57;
--ctp-maroon: 230, 69, 83;
--ctp-peach: 254, 100, 11;
--ctp-yellow: 228, 147, 32;
--ctp-green: 64, 160, 43;
--ctp-teal: 23, 146, 153;
--ctp-sky: 4, 165, 229;
--ctp-sapphire: 32, 159, 181;
--ctp-blue: 42, 110, 245;
--ctp-lavender: 114, 135, 253;
--ctp-text: 76, 79, 105;
--ctp-subtext1: 92, 95, 119;
--ctp-subtext0: 108, 111, 133;
--ctp-overlay2: 124, 127, 147;
--ctp-overlay1: 140, 143, 161;
--ctp-overlay0: 156, 160, 176;
--ctp-surface2: 172, 176, 190;
--ctp-surface1: 188, 192, 204;
--ctp-surface0: 204, 208, 218;
--ctp-base: 239, 241, 245;
--ctp-mantle: 230, 233, 239;
--ctp-crust: 220, 224, 232;
$flavor: latte;
:root:not([data-color]), :root[data-color='none'], :root[data-color='logseq'] {
--ctp-cm-theme: 'ctp-#{$flavor}';
@include utils.ctp-rgb-vars($flavor);
@include utils.ctp-hsl-vars($flavor);
}
// custom check box checked image
// css var works but does not trigger reloading data asset in browser
// hence a sass variable
$ctp-base: 239, 241, 245;
$ctp-base: utils.get-flavor-color-rgb($flavor, base);
.form-checkbox:checked {
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 16 16' fill='rgb(#{$ctp-base})' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0z'/%3E%3C/svg%3E") !important;

View File

@ -1,40 +1,16 @@
@use "main.scss";
@use "utils.scss" as utils;
:root:not([data-color]), :root[data-color='none'] {
--ctp-cm-theme: 'ctp-macchiato';
--ctp-rosewater: 244, 219, 214;
--ctp-flamingo: 240, 198, 198;
--ctp-pink: 245, 189, 230;
--ctp-mauve: 198, 160, 246;
--ctp-red: 237, 135, 150;
--ctp-maroon: 238, 153, 160;
--ctp-peach: 245, 169, 127;
--ctp-yellow: 238, 212, 159;
--ctp-green: 166, 218, 149;
--ctp-teal: 139, 213, 202;
--ctp-sky: 145, 215, 227;
--ctp-sapphire: 125, 196, 228;
--ctp-blue: 138, 173, 244;
--ctp-lavender: 183, 189, 248;
--ctp-text: 197, 207, 245;
--ctp-subtext1: 179, 188, 224;
--ctp-subtext0: 161, 170, 203;
--ctp-overlay2: 143, 151, 183;
--ctp-overlay1: 125, 132, 162;
--ctp-overlay0: 108, 114, 141;
--ctp-surface2: 90, 95, 120;
--ctp-surface1: 72, 76, 100;
--ctp-surface0: 54, 58, 79;
--ctp-base: 36, 39, 58;
--ctp-mantle: 30, 32, 48;
--ctp-crust: 24, 25, 38;
$flavor: macchiato;
:root:not([data-color]), :root[data-color='none'], :root[data-color='logseq'] {
--ctp-cm-theme: 'ctp-#{$flavor}';
@include utils.ctp-rgb-vars($flavor);
@include utils.ctp-hsl-vars($flavor);
}
// custom check box checked image
// css var works but does not trigger reloading data asset in browser
// hence a sass variable
$ctp-base: 36, 39, 58;
$ctp-base: utils.get-flavor-color-rgb($flavor, base);
.form-checkbox:checked {
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 16 16' fill='rgb(#{$ctp-base})' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0z'/%3E%3C/svg%3E") !important;
}
}

View File

@ -1,41 +1,16 @@
@use "main.scss";
@use "utils.scss" as utils;
:root:not([data-color]), :root[data-color='none'] {
--ctp-cm-theme: 'ctp-mocha';
--ctp-rosewater: 245, 224, 220;
--ctp-flamingo: 242, 205, 205;
--ctp-pink: 245, 194, 231;
--ctp-mauve: 203, 166, 247;
--ctp-red: 243, 139, 168;
--ctp-maroon: 235, 160, 172;
--ctp-peach: 250, 179, 135;
--ctp-yellow: 249, 226, 175;
--ctp-green: 166, 227, 161;
--ctp-teal: 148, 226, 213;
--ctp-sky: 137, 220, 235;
--ctp-sapphire: 116, 199, 236;
--ctp-blue: 135, 176, 249;
--ctp-lavender: 180, 190, 254;
--ctp-text: 198, 208, 245;
--ctp-subtext1: 179, 188, 223;
--ctp-subtext0: 161, 168, 201;
--ctp-overlay2: 142, 149, 179;
--ctp-overlay1: 123, 129, 157;
--ctp-overlay0: 105, 109, 134;
--ctp-surface2: 86, 89, 112;
--ctp-surface1: 67, 70, 90;
--ctp-surface0: 49, 50, 68;
--ctp-base: 30, 30, 46;
--ctp-mantle: 24, 24, 37;
--ctp-crust: 17, 17, 27;
$flavor: mocha;
:root:not([data-color]), :root[data-color='none'], :root[data-color='logseq'] {
--ctp-cm-theme: 'ctp-#{$flavor}';
@include utils.ctp-rgb-vars($flavor);
@include utils.ctp-hsl-vars($flavor);
}
// custom check box checked image
// css var works but does not trigger reloading data asset in browser
// hence a sass variable
$ctp-base: 30, 30, 46;
$ctp-base: utils.get-flavor-color-rgb($flavor, base);
.form-checkbox:checked {
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 16 16' fill='rgb(#{$ctp-base})' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0z'/%3E%3C/svg%3E") !important;
}
}

View File

@ -1,41 +1,19 @@
@use "main.scss";
@use "utils.scss" as utils;
:root:not([data-color]), :root[data-color='none'] {
--ctp-cm-theme: 'ctp-oled';
--ctp-rosewater: 245, 224, 220;
--ctp-flamingo: 242, 205, 205;
--ctp-pink: 245, 194, 231;
--ctp-mauve: 203, 166, 247;
--ctp-red: 243, 139, 168;
--ctp-maroon: 235, 160, 172;
--ctp-peach: 250, 179, 135;
--ctp-yellow: 249, 226, 175;
--ctp-green: 166, 227, 161;
--ctp-teal: 148, 226, 213;
--ctp-sky: 137, 220, 235;
--ctp-sapphire: 116, 199, 236;
--ctp-blue: 135, 176, 249;
--ctp-lavender: 180, 190, 254;
--ctp-text: 198, 208, 245;
--ctp-subtext1: 179, 188, 223;
--ctp-subtext0: 161, 168, 201;
--ctp-overlay2: 142, 149, 179;
--ctp-overlay1: 123, 129, 157;
--ctp-overlay0: 105, 109, 134;
--ctp-surface2: 86, 89, 112;
--ctp-surface1: 67, 70, 90;
--ctp-surface0: 49, 50, 68;
$flavor: mocha;
:root:not([data-color]), :root[data-color='none'], :root[data-color='logseq'] {
--ctp-cm-theme: 'ctp-#{$flavor}';
@include utils.ctp-rgb-vars($flavor);
@include utils.ctp-hsl-vars($flavor);
--ctp-base: 02, 02, 02;
--ctp-mantle: 01, 01, 01;
--ctp-crust: 00, 00, 00;
}
// custom check box checked image
// css var works but does not trigger reloading data asset in browser
// hence a sass variable
$ctp-base: 02, 02, 02;
$ctp-base: utils.get-flavor-color-rgb($flavor, base);
.form-checkbox:checked {
background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 16 16' fill='rgb(#{$ctp-base})' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0z'/%3E%3C/svg%3E") !important;
}
}