@riebeckite/plugin-bases 0.0.5 → 0.0.7

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/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import type { BasesOptions } from "./src/types.js";
2
- export { remarkBases } from "./src/remark.js";
3
- export { parseBases } from "./src/parse.js";
4
2
  export { matchesCondition, resolveValueRef } from "./src/evaluate.js";
3
+ export { parseBases } from "./src/parse.js";
4
+ export { remarkBases } from "./src/remark.js";
5
5
  export type { BasesBuiltinValue, BasesCondition, BasesLiteral, BasesOperator, BasesOptions, BasesSpec, BasesValueRef, BasesView, BasesViewType, } from "./src/types.js";
6
6
  /**
7
7
  * Renders Obsidian Bases definitions from fenced `base` code blocks.
package/dist/index.js CHANGED
@@ -64,10 +64,7 @@ function parseFilterObject(object, path) {
64
64
  const children = [];
65
65
  if ("and" in object || "or" in object || "not" in object) {
66
66
  if ("and" in object) {
67
- const parsed = combineAnd(
68
- toList(object.and),
69
- `${path}.and`
70
- );
67
+ const parsed = combineAnd(toList(object.and), `${path}.and`);
71
68
  if (parsed.ok === false) return parsed;
72
69
  if (parsed.value) children.push(parsed.value);
73
70
  }
@@ -740,9 +737,7 @@ function renderCards(view, entries, spec, className) {
740
737
  const titleProperty = view.columns.find(
741
738
  (property) => TITLE_PROPERTIES.has(property.toLowerCase())
742
739
  );
743
- const fields = view.columns.filter(
744
- (property) => property !== titleProperty
745
- );
740
+ const fields = view.columns.filter((property) => property !== titleProperty);
746
741
  const items = entries.map((entry) => {
747
742
  const title = `<a class="${escapeHtmlAttribute(className)}__link" href="${escapeHtmlAttribute(entry.permalink)}">${escapeHtml(entry.title)}</a>`;
748
743
  const fieldHtml = fields.map((property) => {
@@ -789,7 +784,8 @@ function columnLabel(property, spec) {
789
784
  function formatValue(value) {
790
785
  if (value === void 0 || value === null) return "";
791
786
  if (value instanceof Date) return formatDate(value);
792
- if (Array.isArray(value)) return value.map((item) => formatValue(item)).join(", ");
787
+ if (Array.isArray(value))
788
+ return value.map((item) => formatValue(item)).join(", ");
793
789
  if (typeof value === "string") {
794
790
  return DATE_ONLY.test(value.trim()) ? value.trim() : value;
795
791
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@riebeckite/plugin-bases",
3
- "version": "0.0.5",
3
+ "version": "0.0.7",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -18,7 +18,7 @@
18
18
  "@types/mdast": "^4.0.4",
19
19
  "unist-util-visit": "^5.1.0",
20
20
  "vfile-matter": "^5.0.1",
21
- "@riebeckite/core": "0.0.5"
21
+ "@riebeckite/core": "0.0.7"
22
22
  },
23
23
  "publishConfig": {
24
24
  "access": "public"
package/style.css CHANGED
@@ -1,145 +1,145 @@
1
- .rb-bases {
2
- --rb-bases-ink: var(--rb-color-ink, #000000);
3
- --rb-bases-paper: var(--rb-color-paper, #ffffff);
4
- --rb-bases-muted: var(--rb-color-muted, #69645c);
5
- --rb-bases-accent: var(--rb-color-accent, #686868);
6
- --rb-bases-rule: var(
7
- --rb-color-border,
8
- color-mix(in srgb, var(--rb-bases-ink) 18%, transparent)
9
- );
10
- --rb-bases-surface: color-mix(
11
- in srgb,
12
- var(--rb-bases-paper) 94%,
13
- var(--rb-bases-ink)
14
- );
15
-
16
- margin: 1.5rem 0;
17
- color: var(--rb-bases-ink);
18
- }
19
-
20
- .rb-bases__view + .rb-bases__view {
21
- margin-top: 1.5rem;
22
- }
23
-
24
- .rb-bases__view-name {
25
- margin: 0 0 0.5rem;
26
- font-size: 0.9375rem;
27
- font-weight: 700;
28
- letter-spacing: 0.01em;
29
- }
30
-
31
- .rb-bases__table {
32
- width: 100%;
33
- border-collapse: collapse;
34
- font-size: 0.9375rem;
35
- }
36
-
37
- .rb-bases__heading {
38
- padding: 0.5rem 0.75rem;
39
- border-bottom: 1px solid var(--rb-bases-ink);
40
- text-align: left;
41
- font-weight: 700;
42
- }
43
-
44
- .rb-bases__cell {
45
- padding: 0.5rem 0.75rem;
46
- vertical-align: top;
47
- }
48
-
49
- .rb-bases__row:not(:last-child) .rb-bases__cell {
50
- border-bottom: 1px solid var(--rb-bases-rule);
51
- }
52
-
53
- .rb-bases__link {
54
- color: inherit;
55
- text-decoration: underline;
56
- text-decoration-color: var(--rb-bases-rule);
57
- text-underline-offset: 0.2em;
58
- }
59
-
60
- .rb-bases__link:hover,
61
- .rb-bases__link:focus-visible {
62
- text-decoration-color: var(--rb-bases-accent);
63
- }
64
-
65
- .rb-bases__tag {
66
- margin-right: 0.35rem;
67
- color: var(--rb-bases-muted);
68
- font-size: 0.8125em;
69
- white-space: nowrap;
70
- }
71
-
72
- .rb-bases__cards {
73
- display: grid;
74
- grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
75
- gap: 0.75rem;
76
- margin: 0;
77
- padding: 0;
78
- list-style: none;
79
- }
80
-
81
- .rb-bases__card {
82
- padding: 0.75rem 1rem;
83
- border: 1px solid var(--rb-bases-rule);
84
- background: var(--rb-bases-surface);
85
- }
86
-
87
- .rb-bases__card-title {
88
- font-weight: 700;
89
- }
90
-
91
- .rb-bases__fields {
92
- display: grid;
93
- grid-template-columns: auto 1fr;
94
- gap: 0.15rem 0.75rem;
95
- margin: 0.5rem 0 0;
96
- font-size: 0.875rem;
97
- }
98
-
99
- .rb-bases__field {
100
- display: contents;
101
- }
102
-
103
- .rb-bases__field-label {
104
- color: var(--rb-bases-muted);
105
- font-weight: 400;
106
- }
107
-
108
- .rb-bases__field-value {
109
- margin: 0;
110
- }
111
-
112
- .rb-bases__empty {
113
- margin: 0;
114
- color: var(--rb-bases-muted);
115
- font-style: italic;
116
- }
117
-
118
- .rb-bases__fallback {
119
- margin-top: 1rem;
120
- color: var(--rb-bases-muted);
121
- font-size: 0.8125rem;
122
- }
123
-
124
- .rb-bases__fallback pre {
125
- overflow-x: auto;
126
- margin: 0.5rem 0 0;
127
- padding: 0.75rem;
128
- border: 1px solid var(--rb-bases-rule);
129
- background: var(--rb-bases-surface);
130
- font-size: 0.8125rem;
131
- }
132
-
133
- .rb-bases--error {
134
- margin: 1.5rem 0;
135
- padding: 0.75rem 1rem;
136
- border: 1px solid var(--rb-bases-ink);
137
- background: var(--rb-bases-surface);
138
- font-size: 0.875rem;
139
- }
140
-
141
- html[data-theme="dark"] .rb-bases,
142
- html.dark .rb-bases {
143
- --rb-bases-ink: var(--rb-color-paper, #ffffff);
144
- --rb-bases-paper: var(--rb-color-ink, #000000);
145
- }
1
+ .rb-bases {
2
+ --rb-bases-ink: var(--rb-color-ink, #000000);
3
+ --rb-bases-paper: var(--rb-color-paper, #ffffff);
4
+ --rb-bases-muted: var(--rb-color-muted, #69645c);
5
+ --rb-bases-accent: var(--rb-color-accent, #686868);
6
+ --rb-bases-rule: var(
7
+ --rb-color-border,
8
+ color-mix(in srgb, var(--rb-bases-ink) 18%, transparent)
9
+ );
10
+ --rb-bases-surface: color-mix(
11
+ in srgb,
12
+ var(--rb-bases-paper) 94%,
13
+ var(--rb-bases-ink)
14
+ );
15
+
16
+ margin: 1.5rem 0;
17
+ color: var(--rb-bases-ink);
18
+ }
19
+
20
+ .rb-bases__view + .rb-bases__view {
21
+ margin-top: 1.5rem;
22
+ }
23
+
24
+ .rb-bases__view-name {
25
+ margin: 0 0 0.5rem;
26
+ font-size: 0.9375rem;
27
+ font-weight: 700;
28
+ letter-spacing: 0.01em;
29
+ }
30
+
31
+ .rb-bases__table {
32
+ width: 100%;
33
+ border-collapse: collapse;
34
+ font-size: 0.9375rem;
35
+ }
36
+
37
+ .rb-bases__heading {
38
+ padding: 0.5rem 0.75rem;
39
+ border-bottom: 1px solid var(--rb-bases-ink);
40
+ text-align: left;
41
+ font-weight: 700;
42
+ }
43
+
44
+ .rb-bases__cell {
45
+ padding: 0.5rem 0.75rem;
46
+ vertical-align: top;
47
+ }
48
+
49
+ .rb-bases__row:not(:last-child) .rb-bases__cell {
50
+ border-bottom: 1px solid var(--rb-bases-rule);
51
+ }
52
+
53
+ .rb-bases__link {
54
+ color: inherit;
55
+ text-decoration: underline;
56
+ text-decoration-color: var(--rb-bases-rule);
57
+ text-underline-offset: 0.2em;
58
+ }
59
+
60
+ .rb-bases__link:hover,
61
+ .rb-bases__link:focus-visible {
62
+ text-decoration-color: var(--rb-bases-accent);
63
+ }
64
+
65
+ .rb-bases__tag {
66
+ margin-right: 0.35rem;
67
+ color: var(--rb-bases-muted);
68
+ font-size: 0.8125em;
69
+ white-space: nowrap;
70
+ }
71
+
72
+ .rb-bases__cards {
73
+ display: grid;
74
+ grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
75
+ gap: 0.75rem;
76
+ margin: 0;
77
+ padding: 0;
78
+ list-style: none;
79
+ }
80
+
81
+ .rb-bases__card {
82
+ padding: 0.75rem 1rem;
83
+ border: 1px solid var(--rb-bases-rule);
84
+ background: var(--rb-bases-surface);
85
+ }
86
+
87
+ .rb-bases__card-title {
88
+ font-weight: 700;
89
+ }
90
+
91
+ .rb-bases__fields {
92
+ display: grid;
93
+ grid-template-columns: auto 1fr;
94
+ gap: 0.15rem 0.75rem;
95
+ margin: 0.5rem 0 0;
96
+ font-size: 0.875rem;
97
+ }
98
+
99
+ .rb-bases__field {
100
+ display: contents;
101
+ }
102
+
103
+ .rb-bases__field-label {
104
+ color: var(--rb-bases-muted);
105
+ font-weight: 400;
106
+ }
107
+
108
+ .rb-bases__field-value {
109
+ margin: 0;
110
+ }
111
+
112
+ .rb-bases__empty {
113
+ margin: 0;
114
+ color: var(--rb-bases-muted);
115
+ font-style: italic;
116
+ }
117
+
118
+ .rb-bases__fallback {
119
+ margin-top: 1rem;
120
+ color: var(--rb-bases-muted);
121
+ font-size: 0.8125rem;
122
+ }
123
+
124
+ .rb-bases__fallback pre {
125
+ overflow-x: auto;
126
+ margin: 0.5rem 0 0;
127
+ padding: 0.75rem;
128
+ border: 1px solid var(--rb-bases-rule);
129
+ background: var(--rb-bases-surface);
130
+ font-size: 0.8125rem;
131
+ }
132
+
133
+ .rb-bases--error {
134
+ margin: 1.5rem 0;
135
+ padding: 0.75rem 1rem;
136
+ border: 1px solid var(--rb-bases-ink);
137
+ background: var(--rb-bases-surface);
138
+ font-size: 0.875rem;
139
+ }
140
+
141
+ html[data-theme="dark"] .rb-bases,
142
+ html.dark .rb-bases {
143
+ --rb-bases-ink: var(--rb-color-paper, #ffffff);
144
+ --rb-bases-paper: var(--rb-color-ink, #000000);
145
+ }