anki/ts/graphs
Matthias Metelka 8142176f84
Introduce new color palette using Sass maps (#2016)
* Remove --medium-border variable

* Implement color palette using Sass maps

I hand-picked the gray tones, the other colors are from the Tailwind CSS v3 palette.

Significant changes:
- light theme is brighter
- dark theme is darker
- borders are softer

I also deleted some platform- and night-mode-specific code.

* Use custom colors for note view switch

* Use same placeholder color for all inputs

* Skew color palette for more dark values

by removing gray[3], which wasn't used anywhere. Slight adjustments were made to the darker tones.

* Adjust frame- window- and border colors

* Give deck browser entries --frame-bg as background color

* Define styling for QComboBox and QLineEdit globally

* Experiment with CSS filter for inline-colors

Inside darker inputs, some colors like dark blue will be hard to read, so we could try to improve text-color contrast with global adjustments depending on the theme.

* Use different map structure for _vars.scss

after @hgiesel's idea: https://github.com/ankitects/anki/pull/2016#discussion_r947087871

* Move custom QLineEdit styles out of searchbar.py

* Merge branch 'main' into color-palette

* Revert QComboBox stylesheet override

* Align gray color palette more with macOS

* Adjust light theme

* Use --slightly-grey-text for options tab color

* Replace gray tones with more neutral values

* Improve categorization of global colors

by renaming almost all of them and sorting them into separate maps.

* Saturate highlight-bg in light theme

* Tweak gray tones

* Adjust box-shadow of EditingArea to make fields look inset

* Add Sass functions to access color palette and semantic variables

in response to https://github.com/ankitects/anki/pull/2016#issuecomment-1220571076

* Showcase use of access functions in several locations

@hgiesel in buttons.scss I access the color palette directly. Is this what you meant by "... keep it local to the component, and possibly make it global at a later time ..."?

* Fix focus box shadow transition and remove default shadow for a cleaner look

I couldn't quite get the inset look the way I wanted, because inset box-shadows do not respect the border radius, therefore causing aliasing.

* Tweak light theme border and shadow colors

* Add functions and colors to base_lib

* Add vars_lib as dependency to base_lib and button_mixins_lib

* Improve uses of default-themed variables

* Use old --frame-bg color and use darker tone for canvas-default

* Return CSS var by default and add palette-of function for raw value

* Showcase use of palette-of function

The #{...} syntax is required only because the use cases are CSS var definitions. In other cases a simple palette-of(keyword, theme) would suffice.

* Light theme: decrease brightness of canvas-default and adjust fg-default

* Use canvas-inset variable for switch knob

* Adjust light theme

* Add back box-shadow to EditingArea

* Light theme: darken background and flatten transition

also set hue and saturation of gray-8 to 0 (like all the other grays).

* Reduce flag colors to single default value

* Tweak card/note accent colors

* Experiment with inset look for fields again

Is this too dark in night mode? It's the same color used for all other text inputs.

* Dark theme: make border-default one shade darker

* Tweak inset shadow color

* Dark theme: make border-faint darker than canvas-default

meaning two shades darker than it currently was.

* Fix PlainTextInput not expanding

* Dark theme: use less saturated flag colors

* Adjust gray tones

* Fix nested variables not getting extracted correctly

* Rename canvas-outset to canvas-elevated

* Light theme: darken canvas-default

* Make canvas-elevated a bit darker

* Rename variables and use them in various components

* Refactor button mixins

* Remove fusion vars from Anki

* Adjust button gradients

* Refactor button mixins

* Fix deck browser table td background color

* Use color function in buttons.scss

* Rework QTabWidget stylesheet

* Fix crash on browser open

* Perfect QTableView header

* Fix bottom toolbar button gradient

* Fix focus outline of bottom toolbar buttons

* Fix custom webview scrollbar

* Fix uses of vars in various webviews

The command @use vars as * lead to repeated inclusion of the CSS vars.

* Enable primary button color with mixin

* Run prettier

* Fix Python code style issues

* Tweak colors

* Lighten scrollbar shades in light theme

* Fix code style issues caused by merge

* Fix harsh border color in editor

caused by leftover --medium-border variables, probably introduced with a merge commit.

* Compile Sass before extracting Python colors/props

This means the Python side doesn't need to worry about the map structure and Sass functions, just copy the output CSS values.

* Desaturate primary button colors by 10%

* Convert accidentally capitalized variable names to lowercase

* Simplify color definitions with qcolor function

* Remove default border-focus variable

* Remove redundant colon

* Apply custom scrollbar CSS only on Windows and Linux

* Make border-subtle color brighter than background in dark theme

* Make border-subtle color a shade brighter in light theme

* Use border-subtle for NoteEditor and EditorToolbar border

* Small patches
2022-09-16 14:11:18 +10:00
..
added.ts Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
AddedGraph.svelte Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
AxisTicks.svelte fix deprecation warning in latest svelte-preprocess 2021-10-26 08:43:02 +10:00
BUILD.bazel Remove individual .html files + other refactorings (#1588) 2022-01-16 15:05:35 +10:00
buttons.ts Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
ButtonsGraph.svelte Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
calendar.ts Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
CalendarGraph.svelte Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
card-counts.ts Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
CardCounts.svelte Introduce new color palette using Sass maps (#2016) 2022-09-16 14:11:18 +10:00
CumulativeOverlay.svelte yarn upgrade --latest 2021-10-01 12:52:53 +10:00
ease.ts Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
EaseGraph.svelte Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
future-due.ts Fix new card positions being included in future due graph 2022-05-16 15:14:15 +10:00
FutureDue.svelte Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
graph-helpers.ts Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
graph-styles.ts merge in Henrik's TS/Svelte refactor with some changes 2021-03-21 23:01:18 +10:00
Graph.svelte fix deprecation warning in latest svelte-preprocess 2021-10-26 08:43:02 +10:00
GraphRangeRadios.svelte Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
graphs-base.scss Several CSS fixes - Editor Cleanup (#1470) 2021-10-31 08:29:22 +10:00
GraphsPage.svelte Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
histogram-graph.ts Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
HistogramGraph.svelte Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
HourGraph.svelte Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
hours.ts Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
HoverColumns.svelte Minor changes to graphs (#1566) 2021-12-29 15:04:15 +10:00
index.ts Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
InputBox.svelte yarn upgrade --latest 2021-10-01 12:52:53 +10:00
intervals.ts Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
IntervalsGraph.svelte Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
NoDataOverlay.svelte Introduce new color palette using Sass maps (#2016) 2022-09-16 14:11:18 +10:00
RangeBox.svelte Introduce new color palette using Sass maps (#2016) 2022-09-16 14:11:18 +10:00
reviews.ts Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
ReviewsGraph.svelte Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
TableData.svelte Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
today.ts Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
TodayStats.svelte Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
Tooltip.svelte Introduce new color palette using Sass maps (#2016) 2022-09-16 14:11:18 +10:00
tooltip.ts Use eslint for sorting our imports (#1637) 2022-02-04 18:36:34 +10:00
tsconfig.json add a missing references line in ts/graphs 2021-11-04 14:56:50 +10:00
WithGraphData.svelte Consider using --force-message for ts/protobuf.bzl (#1694) 2022-02-27 17:35:07 +10:00