@astrake/lumora-ui 0.2.2 → 0.7.3

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 (94) hide show
  1. package/CHANGELOG.md +113 -21
  2. package/README.md +29 -31
  3. package/dist/LuAccordion.vue_vue_type_script_setup_true_lang-CwG5Ml8t.js +5032 -0
  4. package/dist/__mocks__/empty.d.ts +4 -0
  5. package/dist/components/LuAccordion.vue.d.ts +23 -0
  6. package/dist/components/LuBarChart.vue.d.ts +22 -0
  7. package/dist/components/LuBottomSheet.vue.d.ts +27 -0
  8. package/dist/components/LuCalendar.vue.d.ts +34 -0
  9. package/dist/components/LuCheckbox.vue.d.ts +17 -3
  10. package/dist/components/LuChip.vue.d.ts +35 -0
  11. package/dist/components/LuChipGroup.vue.d.ts +23 -0
  12. package/dist/components/LuCollapsible.vue.d.ts +5 -2
  13. package/dist/components/LuCommandPalette.vue.d.ts +25 -0
  14. package/dist/components/LuDataGrid.types.d.ts +39 -0
  15. package/dist/components/LuDataGrid.vue.d.ts +84 -0
  16. package/dist/components/LuDateRangePicker.vue.d.ts +29 -0
  17. package/dist/components/LuDoughnutChart.vue.d.ts +17 -0
  18. package/dist/components/LuDrawer.vue.d.ts +33 -0
  19. package/dist/components/LuFileUpload.vue.d.ts +38 -0
  20. package/dist/components/LuFormField.vue.d.ts +21 -0
  21. package/dist/components/LuFormWizard.types.d.ts +7 -0
  22. package/dist/components/LuFormWizard.vue.d.ts +33 -0
  23. package/dist/components/LuGaugeChart.vue.d.ts +16 -0
  24. package/dist/components/LuKanban.types.d.ts +24 -0
  25. package/dist/components/LuKanban.vue.d.ts +30 -0
  26. package/dist/components/LuLineChart.vue.d.ts +19 -0
  27. package/dist/components/LuList.vue.d.ts +18 -0
  28. package/dist/components/LuListDivider.vue.d.ts +5 -0
  29. package/dist/components/LuListItem.vue.d.ts +32 -0
  30. package/dist/components/LuListSubheader.vue.d.ts +16 -0
  31. package/dist/components/LuMediaGallery.vue.d.ts +25 -0
  32. package/dist/components/LuMenu.vue.d.ts +2 -2
  33. package/dist/components/LuPlanner.types.d.ts +14 -0
  34. package/dist/components/LuPlanner.vue.d.ts +23 -0
  35. package/dist/components/LuPopover.vue.d.ts +24 -0
  36. package/dist/components/LuRadioGroup.types.d.ts +1 -0
  37. package/dist/components/LuRichTextEditor.vue.d.ts +27 -0
  38. package/dist/components/LuSelect.vue.d.ts +35 -2
  39. package/dist/components/{LuPageHeader.vue.d.ts → LuSparkline.vue.d.ts} +9 -5
  40. package/dist/components/LuSwitch.vue.d.ts +19 -5
  41. package/dist/components/LuTimeline.vue.d.ts +17 -0
  42. package/dist/components/LuTimelineItem.vue.d.ts +24 -0
  43. package/dist/components/LuToast.vue.d.ts +5 -0
  44. package/dist/components/LuTree.types.d.ts +9 -0
  45. package/dist/components/LuTree.vue.d.ts +25 -0
  46. package/dist/components/LuTreeNode.vue.d.ts +37 -0
  47. package/dist/components/__tests__/LuAccordion.test.d.ts +1 -0
  48. package/dist/components/__tests__/LuBarChart.test.d.ts +1 -0
  49. package/dist/components/__tests__/LuBottomSheet.test.d.ts +1 -0
  50. package/dist/components/__tests__/LuCalendar.test.d.ts +1 -0
  51. package/dist/components/__tests__/LuCheckbox.test.d.ts +1 -0
  52. package/dist/components/__tests__/LuChip.test.d.ts +1 -0
  53. package/dist/components/__tests__/LuCommandPalette.test.d.ts +1 -0
  54. package/dist/components/__tests__/LuDataGrid.test.d.ts +1 -0
  55. package/dist/components/__tests__/LuDateRangePicker.test.d.ts +1 -0
  56. package/dist/components/__tests__/LuDoughnutChart.test.d.ts +1 -0
  57. package/dist/components/__tests__/LuDrawer.test.d.ts +1 -0
  58. package/dist/components/__tests__/LuFileUpload.test.d.ts +1 -0
  59. package/dist/components/__tests__/LuFormWizard.test.d.ts +1 -0
  60. package/dist/components/__tests__/LuGaugeChart.test.d.ts +1 -0
  61. package/dist/components/__tests__/LuKanban.test.d.ts +1 -0
  62. package/dist/components/__tests__/LuLineChart.test.d.ts +1 -0
  63. package/dist/components/__tests__/LuList.test.d.ts +1 -0
  64. package/dist/components/__tests__/LuMediaGallery.test.d.ts +1 -0
  65. package/dist/components/__tests__/LuPlanner.test.d.ts +1 -0
  66. package/dist/components/__tests__/LuPopover.test.d.ts +1 -0
  67. package/dist/components/__tests__/LuRadio.test.d.ts +1 -0
  68. package/dist/components/__tests__/LuRichTextEditor.test.d.ts +1 -0
  69. package/dist/components/__tests__/LuSelect.test.d.ts +1 -0
  70. package/dist/components/__tests__/LuSparkline.test.d.ts +1 -0
  71. package/dist/components/__tests__/LuSwitch.test.d.ts +1 -0
  72. package/dist/components/__tests__/LuTimeline.test.d.ts +1 -0
  73. package/dist/components/__tests__/LuToast.test.d.ts +1 -0
  74. package/dist/components/__tests__/LuTree.test.d.ts +1 -0
  75. package/dist/components/index.d.ts +42 -3
  76. package/dist/components/index.js +73 -44
  77. package/dist/composables/index.d.ts +2 -0
  78. package/dist/composables/index.js +36 -17
  79. package/dist/composables/lazyVChart.d.ts +10 -0
  80. package/dist/composables/useChartTheme.d.ts +65 -0
  81. package/dist/composables/useDataGrid.d.ts +52 -0
  82. package/dist/composables/useFloating.d.ts +12 -0
  83. package/dist/composables/useLuToast.d.ts +14 -0
  84. package/dist/index.d.ts +5 -0
  85. package/dist/index.js +210 -146
  86. package/dist/skins/index.js +824 -20
  87. package/dist/useLuToast-D5d7Wrcr.js +1029 -0
  88. package/package.json +16 -3
  89. package/scripts/postinstall.mjs +35 -0
  90. package/src/lumora.css +216 -5
  91. package/dist/LuCodeBlock.vue_vue_type_script_setup_true_lang-BdXflBkJ.js +0 -1672
  92. package/dist/components/LuThemeSelect.vue.d.ts +0 -2
  93. package/dist/components/LuThemeSwitch.vue.d.ts +0 -2
  94. package/dist/useShiki-DPOJfneq.js +0 -30
package/CHANGELOG.md CHANGED
@@ -1,5 +1,116 @@
1
1
  # Changelog
2
2
 
3
+ ## Unreleased
4
+
5
+ ---
6
+
7
+ ## [0.7.3] — 2026-05-23
8
+
9
+ ### Added
10
+
11
+ - update shared skins for select, forms, timeline, calendar, and planner (`10cf2ba`)
12
+ - extend LuCalendar with mini size and showEventLabels prop (`41462de`)
13
+ - add LuPlanner weekly scheduling component (`759cc1f`)
14
+ - redesign LuTimeline with compact, numbered, and status variants (`ed6ff6c`)
15
+ - enhance LuDataGrid with sorting, select-all, and local search/filter (`8374caf`)
16
+ - overhaul LuCheckbox, LuRadio, LuSwitch with improved skins and tri-state switch (`2248907`)
17
+ - redesign LuSelect with search, groups, and chip multi-select (`b6c8d4f`)
18
+ - add LuToast, LuChip, LuAccordion (`f85b57e`)
19
+ - add LuDrawer, LuList, LuPopover, LuBottomSheet; integrate floating-ui (`04fd13b`)
20
+ - complete v0.3.0 to v0.5.0 roadmap (`14ec1c8`)
21
+
22
+ ### Fixed
23
+
24
+ - restore LuThemeSwitch recipe (`35f5988`)
25
+ - repair LuFormWizard step navigation and layout (`c8a5ba9`)
26
+ - resolve remaining headless violations and strengthen tests (`d4f8e25`)
27
+
28
+ ### Changed
29
+
30
+ - restructure navigation into functional categories (`c2575d6`)
31
+ - remove domain-specific components from core exports (`1310993`)
32
+
33
+ ### Documentation
34
+
35
+ - add LuCodeBlock documentation page (`02a6f77`)
36
+ - integrate missing v0.5.0 components and fix charts renderer error (`ffbf80d`)
37
+
38
+ ### Maintenance
39
+
40
+ - bump version to 0.7.2 (`b4ea3c4`)
41
+ - bump version to 0.7.1 (`754ee2b`)
42
+ - bump version to 0.7.0 (`0fe5c37`)
43
+ - bump version to 0.6.0 (`2e62243`)
44
+ - bump version to 0.5.0 (`18b82f6`)
45
+
46
+
47
+ ---
48
+
49
+ ## [0.7.2] — 2026-05-23
50
+
51
+ ### Fixed
52
+ - Fixed CI release workflow git authentication: added `token: ${{ secrets.GITHUB_TOKEN }}` to checkout step and explicit remote URL configuration before tag push to resolve "No such device or address" error.
53
+
54
+ ---
55
+
56
+ ## [0.7.1] — 2026-05-23
57
+
58
+ ### Fixed
59
+ - Fixed GitHub Actions release workflow `npm publish` double-packing issue.
60
+
61
+ ---
62
+
63
+ ## [0.7.0] — 2026-05-23
64
+
65
+ ### Added
66
+ - `LuPlanner` — Weekly scheduling grid with absolute-positioned time slots, event blocks, and `slot-click` / `event-click` emissions
67
+ - `LuSelect` — Rebuilt with text search/filter, option groups, chip-based multi-select, clearable state, and async-ready slot API
68
+ - `LuDataGrid` — Column sorting (asc/desc/none cycle), header select-all checkbox, local text search bar, per-column filter support
69
+ - `LuTimeline` — `compact` and `numbered` layout variants; `status` prop for per-item color coding (success/warning/error/info)
70
+ - `LuSwitch` — Indeterminate / tri-state variant via `indeterminate` prop
71
+ - `LuCalendar` — `size="mini"` compact variant and `showEventLabels` boolean prop
72
+ - Showcase: `LuCodeBlock` dedicated documentation page
73
+ - New skin keys: `timeline.*`, `calendar.*`, `planner.*`, `select.*` (chip, group, search, clearable styles)
74
+ - Test coverage: 5 new test files — `LuCheckbox`, `LuRadio`, `LuSwitch`, `LuSelect`, `LuPlanner`
75
+
76
+ ### Fixed
77
+ - `LuFormWizard` — Step navigation regressions and layout rendering corrected
78
+ - `LuCheckbox` / `LuRadio` / `LuSwitch` — Complete default-skin visual overhaul: accessible focus rings, checked/disabled states, label alignment
79
+
80
+ ---
81
+
82
+ ## [0.6.0] — 2026-05-23
83
+
84
+ ### ⚠ Breaking Changes
85
+ - Removed from core exports: `LuEntityCard`, `LuEntityCardStat`, `LuPageHeader`, `LuNotificationCenter`, `LuDashboardGrid`, `LuThemeSwitch`, `LuThemeSelect`, `LuEmbeddedPOS*` (5 components). Moved to showcase recipes.
86
+
87
+ ### Added
88
+ - `LuDrawer` — Overlay/push drawer panel (left/right/top/bottom)
89
+ - `LuList`, `LuListItem`, `LuListDivider`, `LuListSubheader` — Structured list primitives
90
+ - `LuPopover` — Rich content anchored to trigger (floating-ui)
91
+ - `LuBottomSheet` — Mobile-friendly bottom panel with drag support
92
+ - `LuToast` + `useLuToast()` — Non-blocking notification system
93
+ - `LuChip`, `LuChipGroup` — Interactive selection chips
94
+ - `LuAccordion` — Grouped collapsibles with exclusive-open mode
95
+ - `useFloating()` — Shared floating-ui composable
96
+ - Showcase: 11 functional navigation categories + Recipes section
97
+
98
+ ### Changed
99
+ - `LuTooltip` — Now uses floating-ui for precise positioning with auto-flip
100
+ - `LuMenu` — Now uses floating-ui, replaces hardcoded CSS alignment
101
+ - `LuDesktopRailBar` promoted as the recommended rail/mini-drawer pattern
102
+
103
+ ---
104
+
105
+ ## [0.5.0] — 2026-05-22
106
+
107
+ ### Added
108
+
109
+ - **`LuEntityCard` + `LuEntityCardStat`** — Rich entity summary cards with avatar, meta, stats grid, and actions slots.
110
+ - Complete v0.3.0 to v0.5.0 roadmap implementation.
111
+
112
+ ---
113
+
3
114
  ## [0.2.2] — 2026-05-14
4
115
 
5
116
  ### Fixed
@@ -40,20 +151,11 @@
40
151
 
41
152
  ---
42
153
 
43
-
44
154
  ## [0.2.1] — 2026-05-12
155
+
45
156
  - Package publishing now ships compiled `dist` outputs (`.js` + `.d.ts`) and exports no longer point to raw `src/*.ts` entrypoints, preventing downstream strict TypeScript checks from surfacing Lumora internals.
46
157
  - Cleaned internal type noise in core source (`unused imports/params`, `type`-only `VNode` import) so workspace `vue-tsc` checks remain clean.
47
158
 
48
- ---
49
-
50
- ## [0.2.0] — 2026-04-27
51
-
52
- ### Maintenance
53
-
54
- - bump version to 0.2.0 (`d52e5c1`)
55
-
56
-
57
159
  ---
58
160
 
59
161
  ## [0.2.0] — 2026-04-27
@@ -71,7 +173,7 @@
71
173
  - Various visual hierarchy issues in documentation via typography `LuText` adjustments.
72
174
 
73
175
  ### Changed
74
- - **Zero-Raw-HTML Adherence**: Removed all raw DOM nodes (`div`, `span`, etc.) and `PreviewBlock` from the showcase application in favor of 100% native `Lu*` primitives.
176
+ - **Zero-Raw-HTML Adherence**: Removed all raw DOM nodes (`div`, `span`, etc.) and `PreviewBlock` from the showcase application in favor of 100% native `Lu*` primitives.
75
177
  - Integrated Shiki to `@astrake/lumora-ui` core package dependencies.
76
178
 
77
179
  ---
@@ -93,14 +195,6 @@
93
195
 
94
196
  ---
95
197
 
96
- ## [0.1.6] — 2026-04-25
97
-
98
- ### Maintenance
99
-
100
- - bump version to 0.1.6 - add LuForm validation orchestrator (`1f11734`)
101
-
102
- ---
103
-
104
198
  ## [0.1.6] — 2026-04-26
105
199
 
106
200
  ### Added
@@ -126,7 +220,6 @@
126
220
 
127
221
  - prepack hook to include README and CHANGELOG in npm tarball (`e69bdfb`)
128
222
 
129
-
130
223
  ---
131
224
 
132
225
  ## [0.1.3] — 2026-04-25
@@ -140,7 +233,6 @@ All notable changes to `@astrake/lumora-ui` are documented here.
140
233
 
141
234
  Format: [Keep a Changelog](https://keepachangelog.com/) · Commits: [Conventional Commits](https://www.conventionalcommits.org/)
142
235
 
143
-
144
236
  ---
145
237
 
146
238
  ## [0.1.0] — 2026-04-25
package/README.md CHANGED
@@ -20,41 +20,35 @@
20
20
 
21
21
  | Target | Components | Use case |
22
22
  |--------|-----------|---------|
23
- | **Mobile** (`LuM*`) | `LuMButton`, `LuMInput`, `LuMCard`, `LuMList`, `LuMBottomSheet`, `LuMNavBar` | PWA-ready apps — touch targets ≥44px, swipe gestures, bottom nav |
24
- | **Desktop** (`LuD*`) | `LuDButton`, `LuDInput`, `LuDTable`, `LuDSidebar`, `LuDDropdown`, `LuDModal` | Feature-rich browser / Electron apps — data tables, keyboard shortcuts |
25
- | **Embedded** (`LuE*`) | `LuEButton`, `LuEDisplay`, `LuEGrid`, `LuEStatusBar`, `LuEAlert`, `LuENumpad` | Kiosk, IoT, in-car screens — fixed viewport, high contrast, minimal JS |
26
- | **Shared** (`Lu*`) | `LuIcon`, `LuSpinner`, `LuBadge`, `LuPortal` | Cross-surface primitives |
23
+ | **Mobile** (`LuMobile*`) | `LuMobileShell`, `LuMobileHeader`, `LuMobileNavBar` | PWA-ready apps — touch targets ≥44px, swipe gestures, bottom nav |
24
+ | **Desktop** (`LuDesktop*`) | `LuDesktopShell`, `LuDesktopSidebar`, `LuDesktopTopBar` | Feature-rich browser / Electron apps — resizable splits, keyboard shortcuts |
25
+ | **Embedded** (`LuEmbedded*`) | `LuEmbeddedShell` | Retail POS, Kiosk, IoT, in-car screens — fixed viewport, high contrast, touch-first |
26
+ | **Shared** (`Lu*`) | `LuDataGrid`, `LuKanban`, `LuBarChart`, `LuRichTextEditor`, `LuButton` | Cross-surface primitives, data-rich components, and operational features |
27
27
 
28
28
  ---
29
29
 
30
30
  ## Install
31
31
 
32
32
  ```bash
33
- bun add @astrake/lumora-ui
34
- # or
35
- npm install @astrake/lumora-ui
36
- # or
37
- pnpm add @astrake/lumora-ui
33
+ bun add @astrake/lumora-ui vue@^3.5.0 tailwindcss @tailwindcss/vite \
34
+ echarts vue-echarts \
35
+ @tiptap/vue-3 @tiptap/starter-kit @tiptap/extension-placeholder \
36
+ vue-draggable-plus
38
37
  ```
39
38
 
40
- **Peer dependency:**
41
-
42
- ```bash
43
- bun add vue@^3.5.0
44
- ```
39
+ > The `postinstall` script will print this command automatically after
40
+ > `bun add @astrake/lumora-ui`.
45
41
 
46
42
  ---
47
43
 
48
44
  ## Usage
49
45
 
50
46
  ```ts
51
- // Import all targets
52
- import { LuIcon, LuSpinner } from "@astrake/lumora-ui"
47
+ // Import shared components and layout primitives
48
+ import { LuButton, LuDataGrid, LuKanban, LuStack } from "@astrake/lumora-ui"
53
49
 
54
- // Import a specific target (recommended for tree-shaking)
55
- import { LuMButton, LuMCard } from "@astrake/lumora-ui/mobile"
56
- import { LuDTable, LuDSidebar } from "@astrake/lumora-ui/desktop"
57
- import { LuEDisplay, LuEGrid } from "@astrake/lumora-ui/embedded"
50
+ // Import surface-specific shells
51
+ import { LuMobileShell, LuDesktopShell, LuEmbeddedShell } from "@astrake/lumora-ui"
58
52
  ```
59
53
 
60
54
  **Register the plugin:**
@@ -62,10 +56,11 @@ import { LuEDisplay, LuEGrid } from "@astrake/lumora-ui/embedded"
62
56
  ```ts
63
57
  // main.ts
64
58
  import { createApp } from "vue"
65
- import { LumoraUI } from "@astrake/lumora-ui"
59
+ import { createLumoraUI } from "@astrake/lumora-ui"
60
+ import "@astrake/lumora-ui/style"
66
61
  import App from "./App.vue"
67
62
 
68
- createApp(App).use(LumoraUI).mount("#app")
63
+ createApp(App).use(createLumoraUI()).mount("#app")
69
64
  ```
70
65
 
71
66
  ---
@@ -94,9 +89,10 @@ Each target root overrides tokens as appropriate (e.g., Embedded reduces shadow
94
89
  | Component framework | Vue 3.5+ (Composition API) |
95
90
  | Language | TypeScript 5.9+ |
96
91
  | Bundler | Vite (library mode, three entry points) |
92
+ | Interactive Add-ons (Peer) | Apache ECharts, Tiptap, Sortable.js (`vue-draggable-plus`) |
97
93
  | Type check | vue-tsc |
98
94
  | Tests | Vitest + @vue/test-utils |
99
- | Package manager | Bun 1.3.12 |
95
+ | Package manager | Bun 1.3+ |
100
96
 
101
97
  ---
102
98
 
@@ -106,14 +102,16 @@ Each target root overrides tokens as appropriate (e.g., Embedded reduces shadow
106
102
  LumoraUI/
107
103
  ├── packages/core/ ← @astrake/lumora-ui (published package)
108
104
  │ └── src/
109
- │ ├── tokens/ CSS custom properties (--lu-*)
110
- │ ├── shared/ ← cross-target primitives (Lu*)
111
- │ ├── mobile/ Mobile components (LuM*)
112
- │ ├── desktop/ Desktop components (LuD*)
113
- │ ├── embedded/ Embedded components (LuE*)
105
+ │ ├── components/ shared primitives + complex components (Lu*)
106
+ │ ├── layout/ ← layout primitives (LuStack, LuGrid, LuDock, etc.)
107
+ │ ├── shell/ surface shells (LuDesktopShell, LuMobileShell, etc.)
108
+ │ ├── composables/ shared composition functions
109
+ │ ├── skins/ SkinMap default theme
110
+ │ ├── lumora.css ← structural CSS baseline
114
111
  │ └── index.ts
115
- ├── apps/showcase/ ← reference Vite + Vue 3 app
112
+ ├── apps/showcase/ ← reference Vite + Vue 3 showcase app
116
113
  ├── tools/ ← build, check, version, changelog scripts
114
+ ├── .agent/ ← AI agent rules and authoring guides
117
115
  └── docs/ ← architecture, development, releases, legal
118
116
  ```
119
117
 
@@ -126,7 +124,7 @@ git clone https://github.com/madlybong/LumoraUI.git
126
124
  cd LumoraUI
127
125
  bun install
128
126
  bun run check # typecheck
129
- bun test # run test suite
127
+ bun run test --run # run test suite
130
128
  bun run dev # start the showcase app
131
129
  ```
132
130
 
@@ -138,7 +136,7 @@ bun run dev # start the showcase app
138
136
  - [Architecture Guide](./docs/ARCHITECTURE.md)
139
137
  - [Development Workflow](./docs/DEVELOPMENT.md)
140
138
  - [Release Workflow](./docs/RELEASES.md)
141
- - [AI Agent Guide](./docs/AI_AGENT_GUIDE.md)
139
+ - [AI Agent Knowledge Base](./.agent/README.md)
142
140
  - [Legal Notice & Disclaimer](./docs/LEGAL.md)
143
141
 
144
142
  ---