@7365admin1/layer-common 3.2.1-staging.73 → 3.2.1-staging.75

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/utils/theme.ts CHANGED
@@ -75,6 +75,17 @@ export const LIGHT_THEME = {
75
75
  "brand-surface": "#EDF1F7",
76
76
  /** The drawer's label colour. On the rail: 15.43:1. */
77
77
  "on-brand-surface": "#0B1B27",
78
+ /**
79
+ * Vuetify leaves `warning` (#FB8C00) and `info` (#2196F3) at its stock
80
+ * values and DERIVES their foreground, and — as with `on-primary` — the
81
+ * derivation picks WHITE. Measured, that is 2.37:1 on warning and 3.12:1
82
+ * on info: every filled warning/info chip, alert, button and badge in the
83
+ * product, including the invitation status chips. Setting the label to the
84
+ * dark page colour takes them to 8.9:1 and 5.3:1. Same value in both
85
+ * themes because the two fills are the same in both themes.
86
+ */
87
+ "on-warning": "#0E1319",
88
+ "on-info": "#0E1319",
78
89
  "primary-button": "#1867C0",
79
90
  "text-primary": "#052439",
80
91
  },
@@ -108,12 +119,20 @@ export const DARK_THEME = {
108
119
  * camera wall already draws its accents in (`--vms-accent`), so the two
109
120
  * dark surfaces in this product now agree on one blue.
110
121
  *
111
- * Where it is still used as a fill, Vuetify derives `on-primary` from it
112
- * and picks black, which reads at 7.21:1. What it cannot carry is a
113
- * hardcoded white label - see the note in the PR for the app-side sites
114
- * that still do that.
122
+ * Where it is still used as a fill it needs a foreground, and the claim
123
+ * that used to sit here - that Vuetify derives black - is wrong. Measured
124
+ * in a browser, Vuetify picks WHITE, which reads at 2.68:1 on this fill:
125
+ * every filled primary button, chip, alert and tab bar in dark mode. So
126
+ * `on-primary` is set explicitly below rather than derived.
115
127
  */
116
128
  primary: "#5B9BE0",
129
+ /**
130
+ * The label on a filled `primary` surface. Measured 6.40:1 against
131
+ * `primary`, against the 2.68:1 Vuetify's own derivation gives. Not a new
132
+ * colour - it is the dark page `background` above, so a filled button
133
+ * reads as a hole punched in the page rather than a fifth shade of navy.
134
+ */
135
+ "on-primary": "#0E1319",
117
136
  /**
118
137
  * The navigation drawer's own fill. Deliberately the same value as
119
138
  * `surface`: on a dark page the drawer, the app bar and the cards are the
@@ -124,6 +143,14 @@ export const DARK_THEME = {
124
143
  "brand-surface": "#1B242F",
125
144
  /** The drawer's label colour. On the rail: 13.21:1. */
126
145
  "on-brand-surface": "#E8ECF1",
146
+ /** See LIGHT_THEME: Vuetify derives white on these fills, at 2.37:1. */
147
+ "on-warning": "#0E1319",
148
+ "on-info": "#0E1319",
149
+ /**
150
+ * Dark's stock `error` is the pale #CF6679, and white on it is 3.60:1 —
151
+ * the light theme's darker #B00020 carries white fine, this one does not.
152
+ */
153
+ "on-error": "#0E1319",
127
154
  /** Unchanged on purpose: it already passes in both themes. */
128
155
  "primary-button": "#1867C0",
129
156
  /** #052439 on a dark page measures 1.18:1. This is 15.72:1. */