@toheeb/base 1.5.5 → 1.6.0

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/base-settings.js CHANGED
@@ -208,39 +208,49 @@ class BaseSettings extends HTMLElement {
208
208
 
209
209
  // Indent Mode
210
210
  {
211
- const mode_indent = root_styles.getPropertyValue("--base-mode-indent").trim();
212
211
  const label_mode_indent = this.querySelector("#base-mode-indent").closest("label");
212
+ const has_other_sheet = doc_sheets.some(sheet => sheet.title?.toLowerCase()?.trim() != "base");
213
+ const mode_indent = root_styles.getPropertyValue("--base-mode-indent").trim();
213
214
 
214
- if (mode_indent) {
215
- label_mode_indent.hidden = false;
216
- this.querySelector("#base-mode-indent").checked = parseInt(mode_indent) === 1;
217
- } else {
215
+ if (has_other_sheet) {
218
216
  label_mode_indent.hidden = true;
217
+ this.querySelector("#base-mode-indent").checked = false;
218
+ } else {
219
+
220
+ if (mode_indent) {
221
+ label_mode_indent.hidden = false;
222
+ this.querySelector("#base-mode-indent").checked = parseInt(mode_indent) === 1;
223
+ } else {
224
+ label_mode_indent.hidden = true;
225
+ }
219
226
  }
220
227
  }
221
228
 
229
+
222
230
  // Font Family
223
231
  {
224
232
  const font_family = root_styles.getPropertyValue("--base-font-family").trim();
233
+ const font_family_toggle = root_styles.getPropertyValue("--base-font-family-toggle").trim();
225
234
  const label_font_family = this.querySelector("#base-font-family").closest("label");
226
-
227
- if (font_family) {
235
+
236
+ if (parseInt(font_family_toggle) == 0) {
237
+ label_font_family.hidden = true;
238
+ } else {
228
239
  label_font_family.hidden = false;
229
-
240
+
230
241
  const def_typefaces = ["serif", "sans-serif", "cursive", "system-ui", "monospace"];
231
-
242
+
232
243
  if (def_typefaces.includes(font_family.toLowerCase())) {
233
244
  } else {
234
245
  const option = document.createElement("option");
235
-
246
+
236
247
  option.value = font_family;
237
248
  option.textContent = font_family;
238
249
  this.querySelector("#base-font-family").append(option);
239
250
  }
240
251
 
241
252
  this.querySelector("#base-font-family").value = font_family;
242
- } else {
243
- label_font_family.hidden = true;
253
+
244
254
  }
245
255
 
246
256
  }
@@ -248,23 +258,29 @@ class BaseSettings extends HTMLElement {
248
258
  // Font Size
249
259
  {
250
260
  const font_size = root_styles.getPropertyValue("--base-font-size").trim();
261
+ const font_size_toggle = root_styles.getPropertyValue("--base-font-size-toggle").trim();
251
262
  const label_font_size = this.querySelector("#base-font-size").closest("label");
252
263
  const positive_numbers = /^\d+\.?\d*$/;
253
264
 
254
- if (positive_numbers.test(font_size)) {
255
- label_font_size.hidden = false;
256
- this.querySelector("#base-font-size").value = font_size;
257
- } else {
265
+ if (parseInt(font_size_toggle) == 0) {
258
266
  label_font_size.hidden = true;
267
+ } else {
268
+ if (positive_numbers.test(font_size)) {
269
+ label_font_size.hidden = false;
270
+ this.querySelector("#base-font-size").value = font_size;
271
+ }
259
272
  }
260
273
  }
261
274
 
262
275
  // Font Scale
263
276
  {
264
277
  const font_scale = root_styles.getPropertyValue("--base-font-scale").trim();
278
+ const font_scale_toggle = root_styles.getPropertyValue("--base-font-scale-toggle").trim();
265
279
  const label_font_scale = this.querySelector("#base-font-scale").closest("label");
266
-
267
- if (font_scale) {
280
+
281
+ if (parseInt(font_scale_toggle) == 0) {
282
+ label_font_scale.hidden = true;
283
+ } else {
268
284
  label_font_scale.hidden = false;
269
285
 
270
286
  const scale_set = [1.067, 1.125, 1.2, 1.25, 1.333, 1.414, 1.5, 1.618];
@@ -279,8 +295,6 @@ class BaseSettings extends HTMLElement {
279
295
  }
280
296
 
281
297
  this.querySelector("#base-font-scale").value = font_scale;
282
- } else {
283
- label_font_scale.hidden = true;
284
298
  }
285
299
 
286
300
  }
@@ -288,41 +302,50 @@ class BaseSettings extends HTMLElement {
288
302
  // Line Height
289
303
  {
290
304
  const line_height = root_styles.getPropertyValue("--base-line-height").trim();
305
+ const line_height_toggle = root_styles.getPropertyValue("--base-line-height-toggle").trim();
291
306
  const label_line_height = this.querySelector("#base-line-height").closest("label");
292
307
  const positive_numbers = /^\d*\.?\d*$/;
293
308
 
294
- if (positive_numbers.test(line_height)) {
295
- label_line_height.hidden = false;
296
- this.querySelector("#base-line-height").value = line_height;
297
- } else {
309
+ if (parseInt(line_height_toggle) == 0) {
298
310
  label_line_height.hidden = true;
311
+ } else {
312
+ if (positive_numbers.test(line_height)) {
313
+ label_line_height.hidden = false;
314
+ this.querySelector("#base-line-height").value = line_height;
315
+ }
299
316
  }
300
317
  }
301
318
 
302
319
  // Line Length
303
320
  {
304
321
  const line_length = root_styles.getPropertyValue("--base-line-length").trim();
322
+ const line_length_toggle = root_styles.getPropertyValue("--base-line-length-toggle").trim();
305
323
  const label_line_length = this.querySelector("#base-line-length").closest("label");
306
324
 
307
- if (parseFloat(line_length)) {
308
- label_line_length.hidden = false;
309
- this.querySelector("#base-line-length").value = parseFloat(line_length);
310
- } else {
325
+ if (parseInt(line_length_toggle) == 0) {
311
326
  label_line_length.hidden = true;
327
+ } else {
328
+ if (parseFloat(line_length)) {
329
+ label_line_length.hidden = false;
330
+ this.querySelector("#base-line-length").value = parseFloat(line_length);
331
+ }
312
332
  }
313
333
  }
314
334
 
315
335
  // Block Gap
316
336
  {
317
337
  const block_gap = root_styles.getPropertyValue("--base-block-gap").trim();
338
+ const block_gap_toggle = root_styles.getPropertyValue("--base-block-gap-toggle").trim();
318
339
  const label_block_gap = this.querySelector("#base-block-gap").closest("label");
319
340
  const positive_numbers = /^\d*\.?\d*$/;
320
341
 
321
- if (positive_numbers.test(block_gap)) {
322
- label_block_gap.hidden = false;
323
- this.querySelector("#base-block-gap").value = block_gap;
324
- } else {
342
+ if (parseInt(block_gap_toggle) == 0) {
325
343
  label_block_gap.hidden = true;
344
+ } else {
345
+ if (positive_numbers.test(block_gap)) {
346
+ label_block_gap.hidden = false;
347
+ this.querySelector("#base-block-gap").value = block_gap;
348
+ }
326
349
  }
327
350
  }
328
351
 
package/base.html CHANGED
@@ -5,9 +5,19 @@
5
5
  <meta charset="UTF-8">
6
6
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
7
  <title>Document</title>
8
- <link rel="stylesheet" href="./base.css">
8
+ <link rel="stylesheet" href="./base.css" title="Base">
9
9
  <meta name="color-scheme" content="darks slight">
10
10
  <script src="./base-settings.js"></script>
11
+ <style>
12
+ :root {
13
+ /* --base-font-family-toggle: 0;
14
+ --base-font-scale-toggle: 0;
15
+ --base-font-size-toggle: 0;
16
+ --base-line-length-toggle: 0;
17
+ --base-line-height-toggle: 0;
18
+ --base-block-gap-toggle: 0; */
19
+ }
20
+ </style>
11
21
  </head>
12
22
 
13
23
  <body>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@toheeb/base",
3
- "version": "1.5.5",
3
+ "version": "1.6.0",
4
4
  "description": "A classless stylesheet for Personalizable Web Design",
5
5
  "main": "index.js",
6
6
  "scripts": {