srcdev-nuxt-components 9.1.17 → 9.1.18
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/.claude/settings.json
CHANGED
|
@@ -20,7 +20,8 @@
|
|
|
20
20
|
"Bash(npx nuxi:*)",
|
|
21
21
|
"Bash(node -e \"const t = require\\('/Users/simoncornforth/websites/nuxt-components/node_modules/pinia-plugin-persistedstate'\\); console.log\\(Object.keys\\(t\\)\\)\")",
|
|
22
22
|
"Bash(npx vue-tsc:*)",
|
|
23
|
-
"Bash(git -C /Users/simoncornforth/websites/nuxt-components log --oneline -5)"
|
|
23
|
+
"Bash(git -C /Users/simoncornforth/websites/nuxt-components log --oneline -5)",
|
|
24
|
+
"Bash(git -C /Users/simoncornforth/websites/nuxt-components show 16ac4ef --stat)"
|
|
24
25
|
],
|
|
25
26
|
"additionalDirectories": [
|
|
26
27
|
"/Users/simoncornforth/websites/nuxt-components/app/components/01.atoms/content-wrappers/content-width",
|
package/.claude/skills/index.md
CHANGED
|
@@ -36,6 +36,7 @@ Each skill is a single markdown file named `<area>-<task>.md`.
|
|
|
36
36
|
├── component-inline-action-button.md — InputButtonCore variant="inline" pattern for buttons embedded in custom input wrappers
|
|
37
37
|
├── icon-sets.md — icon set packages required by layer components, FOUC prevention, component→package map
|
|
38
38
|
├── robots-env-aware.md — @nuxtjs/robots: allow crawling on prod domain only, block on preview/staging via env var
|
|
39
|
+
├── release-notes.md — produce release notes as a fenced markdown block from git log
|
|
39
40
|
├── composable-whatsapp.md — useWhatsApp: open pre-filled wa.me link from form payload; runtime config, security, usage
|
|
40
41
|
├── composable-zod-validation.md — useZodValidation: schema-driven form validation, error binding, submit flow, API error push
|
|
41
42
|
├── composable-colour-scheme.md — useColourScheme: reactive light/dark/auto switching, localStorage persistence, runtime config
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# Release Notes
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
When asked to create release notes, always produce a fenced markdown code block (` ```markdown `) so the content can be copied and pasted directly into a git tag, GitHub release, or changelog.
|
|
6
|
+
|
|
7
|
+
## Steps
|
|
8
|
+
|
|
9
|
+
### 1. Determine the version
|
|
10
|
+
|
|
11
|
+
Run `git log --oneline -8` to find the most recent release commit and the commits since the previous release.
|
|
12
|
+
|
|
13
|
+
### 2. Review the diff
|
|
14
|
+
|
|
15
|
+
Run `git show <commit> --stat` for each commit since the last release to understand what changed.
|
|
16
|
+
|
|
17
|
+
### 3. Produce a fenced markdown block
|
|
18
|
+
|
|
19
|
+
Always wrap the output in a ` ```markdown ` code fence — never render it as plain markdown. This ensures the user can copy the raw text without formatting being stripped.
|
|
20
|
+
|
|
21
|
+
## Format
|
|
22
|
+
|
|
23
|
+
```markdown
|
|
24
|
+
## vX.Y.Z
|
|
25
|
+
|
|
26
|
+
### New
|
|
27
|
+
|
|
28
|
+
- **`ComponentOrComposableName`** — one-line description of what it does and why it exists
|
|
29
|
+
|
|
30
|
+
### Fixed
|
|
31
|
+
|
|
32
|
+
- Short description of what was wrong and what was corrected
|
|
33
|
+
|
|
34
|
+
### Changed
|
|
35
|
+
|
|
36
|
+
- Short description of intentional behaviour or API changes
|
|
37
|
+
|
|
38
|
+
### Documentation
|
|
39
|
+
|
|
40
|
+
- **`skill-name` skill** — new/updated: what it covers
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Notes
|
|
44
|
+
|
|
45
|
+
- Only include sections that have content — omit empty headings
|
|
46
|
+
- Keep each bullet to one line where possible
|
|
47
|
+
- Lead with the most user-facing changes (New, Fixed) before internal ones (Documentation, Tests)
|
|
48
|
+
- Test additions warrant their own section only when substantial; otherwise fold into the relevant New/Fixed bullet
|
|
@@ -34,48 +34,48 @@ defineProps({
|
|
|
34
34
|
|
|
35
35
|
<style lang="css">
|
|
36
36
|
@layer components {
|
|
37
|
-
.form-field {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
37
|
+
.form-field {
|
|
38
|
+
--_gutter-width: 0rem;
|
|
39
|
+
--_max-width: 400px;
|
|
40
|
+
--_background-color: transparent;
|
|
41
|
+
--_border-radius: 0.4rem;
|
|
42
42
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
43
|
+
background-color: var(--_background-color);
|
|
44
|
+
border-radius: var(--_border-radius);
|
|
45
|
+
margin-inline: auto;
|
|
46
|
+
margin-block: var(--field-margin-block);
|
|
47
47
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
48
|
+
width: min(100% - calc(2 * var(--_gutter-width)), var(--_max-width));
|
|
49
|
+
outline: 0rem solid var(--slate-05);
|
|
50
|
+
/* overflow-block: hidden; */
|
|
51
51
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
52
|
+
&:has(.underline) {
|
|
53
|
+
--_background-color: var(--theme-form-input-bg-underlined);
|
|
54
|
+
}
|
|
55
55
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
56
|
+
.form-field-inner {
|
|
57
|
+
background-color: var(--_background-color);
|
|
58
|
+
border-radius: var(--_border-radius);
|
|
59
|
+
margin-inline-start: 0rem;
|
|
60
|
+
padding-inline-start: 0rem;
|
|
61
|
+
outline: 0 solid var(--slate-05);
|
|
62
|
+
}
|
|
63
63
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
64
|
+
&.has-gutter {
|
|
65
|
+
--_gutter-width: 1.6rem;
|
|
66
|
+
}
|
|
67
67
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
68
|
+
&.narrow {
|
|
69
|
+
max-width: 400px;
|
|
70
|
+
}
|
|
71
71
|
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
72
|
+
&.medium {
|
|
73
|
+
--_max-width: 800px;
|
|
74
|
+
}
|
|
75
75
|
|
|
76
|
-
|
|
77
|
-
|
|
76
|
+
&.wide {
|
|
77
|
+
--_max-width: 1200px;
|
|
78
|
+
}
|
|
78
79
|
}
|
|
79
80
|
}
|
|
80
|
-
}
|
|
81
81
|
</style>
|