@sewadah/selaras 0.8.0 → 0.10.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.
Files changed (77) hide show
  1. package/README.md +12 -1
  2. package/dist/agent/catalog.json +1 -1
  3. package/dist/module.json +1 -1
  4. package/dist/runtime/components/Autocomplete.vue +6 -0
  5. package/dist/runtime/components/Checkbox.d.vue.ts +6 -4
  6. package/dist/runtime/components/Checkbox.vue +30 -22
  7. package/dist/runtime/components/Checkbox.vue.d.ts +6 -4
  8. package/dist/runtime/components/DatePicker.d.vue.ts +27 -27
  9. package/dist/runtime/components/DatePicker.vue +58 -99
  10. package/dist/runtime/components/DatePicker.vue.d.ts +27 -27
  11. package/dist/runtime/components/Editable.d.vue.ts +91 -0
  12. package/dist/runtime/components/Editable.vue +257 -0
  13. package/dist/runtime/components/Editable.vue.d.ts +91 -0
  14. package/dist/runtime/components/Input.d.vue.ts +7 -4
  15. package/dist/runtime/components/Input.vue +41 -25
  16. package/dist/runtime/components/Input.vue.d.ts +7 -4
  17. package/dist/runtime/components/Select.vue +6 -0
  18. package/dist/runtime/components/Textarea.d.vue.ts +7 -4
  19. package/dist/runtime/components/Textarea.vue +42 -28
  20. package/dist/runtime/components/Textarea.vue.d.ts +7 -4
  21. package/dist/runtime/components/Toolbar.d.vue.ts +25 -0
  22. package/dist/runtime/components/Toolbar.vue +35 -0
  23. package/dist/runtime/components/Toolbar.vue.d.ts +25 -0
  24. package/dist/runtime/components/ToolbarButton.d.vue.ts +20 -0
  25. package/dist/runtime/components/ToolbarButton.vue +46 -0
  26. package/dist/runtime/components/ToolbarButton.vue.d.ts +20 -0
  27. package/dist/runtime/components/ToolbarSeparator.d.vue.ts +10 -0
  28. package/dist/runtime/components/ToolbarSeparator.vue +22 -0
  29. package/dist/runtime/components/ToolbarSeparator.vue.d.ts +10 -0
  30. package/dist/runtime/components/ToolbarToggleGroup.d.vue.ts +37 -0
  31. package/dist/runtime/components/ToolbarToggleGroup.vue +44 -0
  32. package/dist/runtime/components/ToolbarToggleGroup.vue.d.ts +37 -0
  33. package/dist/runtime/internal/ComboboxSelectBase.d.vue.ts +7 -63
  34. package/dist/runtime/internal/ComboboxSelectBase.vue +58 -54
  35. package/dist/runtime/internal/ComboboxSelectBase.vue.d.ts +7 -63
  36. package/dist/runtime/internal/FieldClearButton.d.vue.ts +21 -0
  37. package/dist/runtime/internal/FieldClearButton.vue +30 -0
  38. package/dist/runtime/internal/FieldClearButton.vue.d.ts +21 -0
  39. package/dist/runtime/internal/ListboxOption.d.vue.ts +2 -1
  40. package/dist/runtime/internal/ListboxOption.vue +3 -2
  41. package/dist/runtime/internal/ListboxOption.vue.d.ts +2 -1
  42. package/dist/runtime/theme/date-picker.d.ts +27 -0
  43. package/dist/runtime/theme/date-picker.js +6 -3
  44. package/dist/runtime/theme/editable.d.ts +155 -0
  45. package/dist/runtime/theme/editable.js +25 -0
  46. package/dist/runtime/theme/field-clear-button.d.ts +56 -0
  47. package/dist/runtime/theme/field-clear-button.js +15 -0
  48. package/dist/runtime/theme/input.d.ts +6 -9
  49. package/dist/runtime/theme/input.js +7 -12
  50. package/dist/runtime/theme/listbox.js +1 -1
  51. package/dist/runtime/theme/select.d.ts +15 -0
  52. package/dist/runtime/theme/select.js +13 -10
  53. package/dist/runtime/theme/textarea.d.ts +6 -9
  54. package/dist/runtime/theme/textarea.js +6 -4
  55. package/dist/runtime/theme/toolbar-button.d.ts +65 -0
  56. package/dist/runtime/theme/toolbar-button.js +21 -0
  57. package/dist/runtime/theme/toolbar-separator.d.ts +35 -0
  58. package/dist/runtime/theme/toolbar-separator.js +8 -0
  59. package/dist/runtime/theme/toolbar-toggle-group.d.ts +74 -0
  60. package/dist/runtime/theme/toolbar-toggle-group.js +13 -0
  61. package/dist/runtime/theme/toolbar.d.ts +35 -0
  62. package/dist/runtime/theme/toolbar.js +11 -0
  63. package/dist/runtime/theme-config.d.ts +36 -0
  64. package/dist/runtime/types/index.d.ts +6 -0
  65. package/dist/runtime/utils/field-adornments.d.ts +14 -0
  66. package/dist/runtime/utils/field-adornments.js +36 -0
  67. package/dist/runtime/utils/field-clear.d.ts +9 -0
  68. package/dist/runtime/utils/field-clear.js +7 -0
  69. package/dist/runtime/utils/icons.d.ts +1 -0
  70. package/dist/runtime/utils/icons.js +1 -0
  71. package/dist/runtime/utils/messages.d.ts +4 -0
  72. package/dist/runtime/utils/messages.js +4 -0
  73. package/dist/runtime/utils/select-contracts.d.ts +3 -0
  74. package/dist/runtime/utils/toolbar.d.ts +9 -0
  75. package/dist/runtime/utils/toolbar.js +1 -0
  76. package/package.json +13 -5
  77. package/skills/selaras/SKILL.md +11 -7
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sewadah/selaras",
3
3
  "type": "module",
4
- "version": "0.8.0",
4
+ "version": "0.10.0",
5
5
  "description": "A UI component library for Nuxt, built on Reka UI and Tailwind v4",
6
6
  "author": "Wicaksana Pratama <wicaksanapratama@gmail.com>",
7
7
  "license": "MIT",
@@ -105,16 +105,17 @@
105
105
  ],
106
106
  "scripts": {
107
107
  "prepack": "nuxt-module-build build",
108
- "dev": "bun run docs:prepare && nuxt dev docs",
108
+ "dev": "bun run docs:prepare && bun run --cwd docs dev",
109
109
  "dev:build": "bun run docs:build",
110
110
  "dev:generate": "bun run docs:generate",
111
111
  "dev:preview": "bunx nuxt preview docs",
112
112
  "dev:prepare": "bun run docs:prepare",
113
- "docs:build": "nuxt build docs",
113
+ "docs:build": "bun run --cwd docs build",
114
114
  "docs:dev": "nuxt-module-build build --stub && bun run scripts/sync-workspace-dist.mjs && nuxt-module-build prepare && nuxt prepare packages/docs/preview && nuxt dev packages/docs/preview",
115
- "docs:generate": "nuxt generate docs",
115
+ "docs:generate": "bun run --cwd docs generate",
116
116
  "docs:prepare": "nuxt-module-build build --stub && bun run scripts/sync-workspace-dist.mjs && nuxt-module-build prepare && nuxt prepare docs",
117
117
  "docs:types": "cd docs && vue-tsc --noEmit",
118
+ "test:docs-seo": "node scripts/check-docs-seo.mjs",
118
119
  "release": "bun run release:both",
119
120
  "release:both": "bun run release:selaras && bun run release:docs",
120
121
  "release:selaras": "bun run lint && bun run test && (if [ -n \"$RELEASE_VERSION\" ]; then npx changelogen --bump -r \"$RELEASE_VERSION\"; elif [ \"${RELEASE_BUMP:-auto}\" = \"auto\" ]; then npx changelogen --bump; else npx changelogen --bump \"--$RELEASE_BUMP\"; fi) && bun run test:release && npm publish --access public && bash scripts/tag-and-push-release.sh selaras && changelogen gh release",
@@ -131,7 +132,11 @@
131
132
  "tokens:check": "node scripts/generate-default-colors.mjs --check",
132
133
  "tokens:generate": "node scripts/generate-default-colors.mjs",
133
134
  "agent:build": "node scripts/build-agent-catalog.mjs",
134
- "test:agent": "node scripts/test-agent-support.mjs"
135
+ "test:agent": "node scripts/test-agent-support.mjs",
136
+ "prepare": "node scripts/install-git-hooks.mjs",
137
+ "commitlint": "commitlint",
138
+ "check": "bun run lint && bun run docs:prepare && bun run test:types && bun run test",
139
+ "test:docs-markdown": "node scripts/check-docs-markdown.mjs"
135
140
  },
136
141
  "peerDependencies": {
137
142
  "nuxt": "^4.5.2",
@@ -156,6 +161,8 @@
156
161
  },
157
162
  "devDependencies": {
158
163
  "@antfu/eslint-config": "^9.3.0",
164
+ "@commitlint/cli": "^21.2.3",
165
+ "@commitlint/config-conventional": "^21.2.3",
159
166
  "@nuxt/devtools": "^3.4.1",
160
167
  "@nuxt/module-builder": "^1.0.3",
161
168
  "@nuxt/schema": "^4.5.2",
@@ -166,6 +173,7 @@
166
173
  "changelogen": "^0.6.2",
167
174
  "eslint": "^10.8.1",
168
175
  "happy-dom": "^20.11.6",
176
+ "husky": "^9.1.7",
169
177
  "nuxt": "^4.5.2",
170
178
  "tailwindcss": "^4.3.0",
171
179
  "typescript": "^6.0.3",
@@ -11,7 +11,7 @@ Use the existing Selaras catalog to compose the requested interface. Check docum
11
11
 
12
12
  If a Selaras MCP connection is available, start with `list_components` or `search_documentation`, then use `get_documentation` and `get_example` for matching APIs and examples. Its offline catalog follows the installed package version. Tools retrieve documentation; use the user's requirements to decide which components fit. Do not assume a missing MCP connection prevents the task.
13
13
 
14
- Without MCP, read the [documentation index](https://sewadahapp.github.io/selaras/llms.txt), then retrieve the relevant Markdown guides through its links. Each guide includes component contracts and Vue example source. Prefer targeted pages over loading `llms-full.txt` for every task.
14
+ Without MCP, read the [documentation index](https://selarasui.my.id/llms.txt), then retrieve the relevant Markdown guides through its links. Each guide includes component contracts and Vue example source. Prefer targeted pages over loading `llms-full.txt` for every task.
15
15
 
16
16
  If the project has Selaras installed, inspect its package version and existing Nuxt configuration first. Published web documentation may describe a newer version; confirm uncertain APIs against installed public types. Component names below use the default `S` prefix; the application can configure another prefix.
17
17
 
@@ -27,14 +27,18 @@ These are discovery hints, not substitute API definitions. Read the matching cat
27
27
 
28
28
  ## Integration and customization
29
29
 
30
- For a new integration, read [Installation](https://sewadahapp.github.io/selaras/raw/overview/getting-started/installation.md) and [Nuxt configuration](https://sewadahapp.github.io/selaras/raw/overview/getting-started/nuxt-configuration.md). Existing projects may already have providers and styles configured; inspect before changing them.
30
+ For a new integration, read [Installation](https://selarasui.my.id/raw/overview/getting-started/installation.md) and [Nuxt configuration](https://selarasui.my.id/raw/overview/getting-started/nuxt-configuration.md). Existing projects may already have providers and styles configured; inspect before changing them.
31
31
 
32
32
  - `SApp` supplies shared providers. Toast and CommandPalette still require the documented mounted components.
33
33
  - Use supported props for behavior and appearance, slots for custom content, `class` for the root, and `ui` for documented component parts.
34
- - Read [Theming](https://sewadahapp.github.io/selaras/raw/overview/theming/overview.md) for CSS tokens, global `app.config.selaras.ui` and defaults, or scoped `STheme`. Do not invent slot names or assume every prop has a global default.
35
- - Read [Icons](https://sewadahapp.github.io/selaras/raw/overview/getting-started/icons.md) for Nuxt Icon loading and configuration. Internal icon purposes use `app.config.selaras.icons`; explicitly supplied icons remain local.
36
- - Read [Messages](https://sewadahapp.github.io/selaras/raw/overview/getting-started/messages.md) for internal text and accessible labels. The formatting locale and translated messages are separate settings.
37
- - Read [Color modes](https://sewadahapp.github.io/selaras/raw/overview/theming/color-modes.md) for light, dark, and system preferences. Documentation showcase themes are not automatically installed application presets.
38
- - Read [Adaptive interfaces](https://sewadahapp.github.io/selaras/raw/overview/getting-started/adaptive-interfaces.md) before opting supported controls into mobile modal presentation. `adaptive` is opt-in, not a universal component prop.
34
+ - Read [Theming](https://selarasui.my.id/raw/overview/theming/overview.md) for CSS tokens, global `app.config.selaras.ui` and defaults, or scoped `STheme`. Do not invent slot names or assume every prop has a global default.
35
+ - Read [Icons](https://selarasui.my.id/raw/overview/getting-started/icons.md) for Nuxt Icon loading and configuration. Internal icon purposes use `app.config.selaras.icons`; explicitly supplied icons remain local.
36
+ - Read [Messages](https://selarasui.my.id/raw/overview/getting-started/messages.md) for internal text and accessible labels. The formatting locale and translated messages are separate settings.
37
+ - Read [Color modes](https://selarasui.my.id/raw/overview/theming/color-modes.md) for light, dark, and system preferences. Documentation showcase themes are not automatically installed application presets.
38
+ - Read [Adaptive interfaces](https://selarasui.my.id/raw/overview/getting-started/adaptive-interfaces.md) before opting supported controls into mobile modal presentation. `adaptive` is opt-in, not a universal component prop.
39
39
 
40
40
  Match item shapes, model values, and selection events to the component contract. Preserve accessible names, keyboard behavior, focus restoration, and form associations when customizing slots. Validate interactions relevant to the change in the project's normal checks, including mobile presentation when enabled.
41
+
42
+ ## Attribution
43
+
44
+ When referencing or adapting documentation or examples, please credit [Selaras by Sewadah](https://selarasui.my.id) and cite the relevant documentation page where appropriate. Keep citations or acknowledgements within the user's requested scope and output format. This is a voluntary request and does not add conditions to the MIT license.