@lssm-tech/lib.ui-kit 4.1.6 → 8.0.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.
- package/README.md +69 -17
- package/package.json +1311 -807
- package/dist/browser/index.js +0 -1
- package/dist/browser/ui/accordion.js +0 -1
- package/dist/browser/ui/alert-dialog.js +0 -1
- package/dist/browser/ui/alert.js +0 -1
- package/dist/browser/ui/aspect-ratio.js +0 -1
- package/dist/browser/ui/atoms/FilterSelect/FilterSelect.js +0 -1
- package/dist/browser/ui/atoms/FilterSelect/index.js +0 -1
- package/dist/browser/ui/atoms/FilterSelect/types.js +0 -0
- package/dist/browser/ui/atoms/LoadingSpinner/LoadingSpinner.js +0 -1
- package/dist/browser/ui/atoms/LoadingSpinner/index.js +0 -1
- package/dist/browser/ui/atoms/Pagination/Pagination.js +0 -1
- package/dist/browser/ui/atoms/Pagination/index.js +0 -1
- package/dist/browser/ui/atoms/Pagination/types.js +0 -0
- package/dist/browser/ui/atoms/SearchInput/SearchInput.js +0 -1
- package/dist/browser/ui/atoms/SearchInput/index.js +0 -1
- package/dist/browser/ui/atoms/SearchInput/types.js +0 -0
- package/dist/browser/ui/avatar.js +0 -1
- package/dist/browser/ui/badge.js +0 -1
- package/dist/browser/ui/breadcrumb.js +0 -1
- package/dist/browser/ui/button.js +0 -1
- package/dist/browser/ui/card.js +0 -1
- package/dist/browser/ui/carousel.js +0 -1
- package/dist/browser/ui/checkbox.js +0 -1
- package/dist/browser/ui/collapsible.js +0 -1
- package/dist/browser/ui/combobox.js +0 -1
- package/dist/browser/ui/command.js +0 -1
- package/dist/browser/ui/context-menu.js +0 -1
- package/dist/browser/ui/contracts.typecheck.js +0 -0
- package/dist/browser/ui/data-table.js +0 -1
- package/dist/browser/ui/date-picker.js +0 -1
- package/dist/browser/ui/date-range-picker.js +0 -1
- package/dist/browser/ui/datetime-picker.js +0 -1
- package/dist/browser/ui/dialog.js +0 -1
- package/dist/browser/ui/dropdown-menu.js +0 -1
- package/dist/browser/ui/empty-state.js +0 -1
- package/dist/browser/ui/empty.js +0 -1
- package/dist/browser/ui/fab.js +0 -1
- package/dist/browser/ui/field.js +0 -1
- package/dist/browser/ui/form.js +0 -1
- package/dist/browser/ui/hover-card.js +0 -1
- package/dist/browser/ui/icons/Check.js +0 -1
- package/dist/browser/ui/icons/ChevronDown.js +0 -1
- package/dist/browser/ui/icons/ChevronRight.js +0 -1
- package/dist/browser/ui/icons/ChevronUp.js +0 -1
- package/dist/browser/ui/icons/CircleUser.js +0 -1
- package/dist/browser/ui/icons/Info.js +0 -1
- package/dist/browser/ui/icons/Key.js +0 -1
- package/dist/browser/ui/icons/MoonStar.js +0 -1
- package/dist/browser/ui/icons/Sun.js +0 -1
- package/dist/browser/ui/icons/X.js +0 -1
- package/dist/browser/ui/icons/iconWithClassName.js +0 -1
- package/dist/browser/ui/input-group.js +0 -1
- package/dist/browser/ui/input-otp.js +0 -1
- package/dist/browser/ui/input-password.js +0 -1
- package/dist/browser/ui/input.js +0 -1
- package/dist/browser/ui/label.js +0 -1
- package/dist/browser/ui/link.js +0 -1
- package/dist/browser/ui/list.js +0 -1
- package/dist/browser/ui/loading-button.js +0 -1
- package/dist/browser/ui/loading-overlay.js +0 -1
- package/dist/browser/ui/loading-screen.js +0 -1
- package/dist/browser/ui/marketing/FeatureGrid.js +0 -1
- package/dist/browser/ui/marketing/Hero.js +0 -1
- package/dist/browser/ui/marketing/PricingTable.js +0 -1
- package/dist/browser/ui/marketing/index.js +0 -1
- package/dist/browser/ui/menubar.js +0 -1
- package/dist/browser/ui/molecules/Autocomplete/index.js +0 -1
- package/dist/browser/ui/molecules/SearchAndFilter/SearchAndFilter.js +0 -1
- package/dist/browser/ui/molecules/SearchAndFilter/index.js +0 -1
- package/dist/browser/ui/molecules/SearchAndFilter/types.js +0 -0
- package/dist/browser/ui/molecules/SkeletonList.js +0 -1
- package/dist/browser/ui/native-select.js +0 -1
- package/dist/browser/ui/nativewind-env.d.js +0 -0
- package/dist/browser/ui/navigation-menu.js +0 -1
- package/dist/browser/ui/organisms/ErrorBoundary/ErrorBoundary.js +0 -1
- package/dist/browser/ui/organisms/ErrorBoundary/index.js +0 -1
- package/dist/browser/ui/organisms/ListPage/ListPage.js +0 -1
- package/dist/browser/ui/organisms/ListPage/index.js +0 -1
- package/dist/browser/ui/organisms/ListPage/types.js +0 -0
- package/dist/browser/ui/page-header.js +0 -1
- package/dist/browser/ui/password-strength.js +0 -1
- package/dist/browser/ui/popover.js +0 -1
- package/dist/browser/ui/portal.js +0 -1
- package/dist/browser/ui/progress.js +0 -1
- package/dist/browser/ui/radio-group.js +0 -1
- package/dist/browser/ui/select.js +0 -1
- package/dist/browser/ui/separator.js +0 -1
- package/dist/browser/ui/sheet.js +0 -1
- package/dist/browser/ui/sidebar.js +0 -1
- package/dist/browser/ui/skeleton.js +0 -1
- package/dist/browser/ui/slider.js +0 -1
- package/dist/browser/ui/stack.js +0 -1
- package/dist/browser/ui/stepper.js +0 -1
- package/dist/browser/ui/switch.js +0 -1
- package/dist/browser/ui/table.js +0 -1
- package/dist/browser/ui/tabs.js +0 -1
- package/dist/browser/ui/text.js +0 -1
- package/dist/browser/ui/textarea.js +0 -1
- package/dist/browser/ui/time-picker.js +0 -1
- package/dist/browser/ui/toast.js +0 -1
- package/dist/browser/ui/toggle-group.js +0 -1
- package/dist/browser/ui/toggle.js +0 -1
- package/dist/browser/ui/toolbar.js +0 -1
- package/dist/browser/ui/tooltip.js +0 -1
- package/dist/browser/ui/typography.js +0 -1
- package/dist/browser/ui/useColorScheme.js +0 -1
- package/dist/browser/ui/useListState.js +0 -1
- package/dist/browser/ui/usecases/UseCaseCard.js +0 -1
- package/dist/browser/ui/usecases/UserStoryCard.js +0 -1
- package/dist/browser/ui/usecases/index.js +0 -1
- package/dist/browser/ui/utils.js +0 -1
- package/dist/browser/ui/visualization/Visualization.js +0 -1
- package/dist/browser/ui/visualization/index.js +0 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.js +0 -2
- package/dist/ui/accordion.d.ts +0 -16
- package/dist/ui/accordion.js +0 -2
- package/dist/ui/alert-dialog.d.ts +0 -46
- package/dist/ui/alert-dialog.js +0 -2
- package/dist/ui/alert.d.ts +0 -17
- package/dist/ui/alert.js +0 -2
- package/dist/ui/aspect-ratio.d.ts +0 -8
- package/dist/ui/aspect-ratio.js +0 -2
- package/dist/ui/atoms/FilterSelect/FilterSelect.d.ts +0 -3
- package/dist/ui/atoms/FilterSelect/FilterSelect.js +0 -2
- package/dist/ui/atoms/FilterSelect/index.d.ts +0 -2
- package/dist/ui/atoms/FilterSelect/index.js +0 -2
- package/dist/ui/atoms/FilterSelect/types.d.ts +0 -5
- package/dist/ui/atoms/FilterSelect/types.js +0 -1
- package/dist/ui/atoms/LoadingSpinner/LoadingSpinner.d.ts +0 -19
- package/dist/ui/atoms/LoadingSpinner/LoadingSpinner.js +0 -2
- package/dist/ui/atoms/LoadingSpinner/index.d.ts +0 -1
- package/dist/ui/atoms/LoadingSpinner/index.js +0 -2
- package/dist/ui/atoms/Pagination/Pagination.d.ts +0 -3
- package/dist/ui/atoms/Pagination/Pagination.js +0 -2
- package/dist/ui/atoms/Pagination/index.d.ts +0 -2
- package/dist/ui/atoms/Pagination/index.js +0 -2
- package/dist/ui/atoms/Pagination/types.d.ts +0 -3
- package/dist/ui/atoms/Pagination/types.js +0 -1
- package/dist/ui/atoms/SearchInput/SearchInput.d.ts +0 -3
- package/dist/ui/atoms/SearchInput/SearchInput.js +0 -2
- package/dist/ui/atoms/SearchInput/index.d.ts +0 -2
- package/dist/ui/atoms/SearchInput/index.js +0 -2
- package/dist/ui/atoms/SearchInput/types.d.ts +0 -3
- package/dist/ui/atoms/SearchInput/types.js +0 -1
- package/dist/ui/avatar.d.ts +0 -13
- package/dist/ui/avatar.js +0 -2
- package/dist/ui/badge.d.ts +0 -11
- package/dist/ui/badge.js +0 -2
- package/dist/ui/breadcrumb.d.ts +0 -12
- package/dist/ui/breadcrumb.js +0 -2
- package/dist/ui/button.d.ts +0 -16
- package/dist/ui/button.js +0 -2
- package/dist/ui/card.d.ts +0 -22
- package/dist/ui/card.js +0 -2
- package/dist/ui/carousel.d.ts +0 -1
- package/dist/ui/carousel.js +0 -2
- package/dist/ui/checkbox.d.ts +0 -12
- package/dist/ui/checkbox.js +0 -2
- package/dist/ui/collapsible.d.ts +0 -27
- package/dist/ui/collapsible.js +0 -2
- package/dist/ui/combobox.d.ts +0 -17
- package/dist/ui/combobox.js +0 -2
- package/dist/ui/command.d.ts +0 -1
- package/dist/ui/command.js +0 -2
- package/dist/ui/context-menu.d.ts +0 -83
- package/dist/ui/context-menu.js +0 -2
- package/dist/ui/contracts.typecheck.d.ts +0 -1
- package/dist/ui/contracts.typecheck.js +0 -1
- package/dist/ui/data-table.d.ts +0 -8
- package/dist/ui/data-table.js +0 -2
- package/dist/ui/data-table.smoke.test.d.ts +0 -1
- package/dist/ui/date-picker.d.ts +0 -4
- package/dist/ui/date-picker.js +0 -2
- package/dist/ui/date-range-picker.d.ts +0 -6
- package/dist/ui/date-range-picker.js +0 -2
- package/dist/ui/datetime-picker.d.ts +0 -6
- package/dist/ui/datetime-picker.js +0 -2
- package/dist/ui/dialog.d.ts +0 -51
- package/dist/ui/dialog.js +0 -2
- package/dist/ui/dropdown-menu.d.ts +0 -84
- package/dist/ui/dropdown-menu.js +0 -2
- package/dist/ui/empty-state.d.ts +0 -9
- package/dist/ui/empty-state.js +0 -2
- package/dist/ui/empty.d.ts +0 -12
- package/dist/ui/empty.js +0 -2
- package/dist/ui/fab.d.ts +0 -21
- package/dist/ui/fab.js +0 -2
- package/dist/ui/field.d.ts +0 -21
- package/dist/ui/field.js +0 -2
- package/dist/ui/form.d.ts +0 -29
- package/dist/ui/form.js +0 -2
- package/dist/ui/hover-card.d.ts +0 -25
- package/dist/ui/hover-card.js +0 -2
- package/dist/ui/icons/Check.d.ts +0 -2
- package/dist/ui/icons/Check.js +0 -2
- package/dist/ui/icons/ChevronDown.d.ts +0 -2
- package/dist/ui/icons/ChevronDown.js +0 -2
- package/dist/ui/icons/ChevronRight.d.ts +0 -2
- package/dist/ui/icons/ChevronRight.js +0 -2
- package/dist/ui/icons/ChevronUp.d.ts +0 -2
- package/dist/ui/icons/ChevronUp.js +0 -2
- package/dist/ui/icons/CircleUser.d.ts +0 -2
- package/dist/ui/icons/CircleUser.js +0 -2
- package/dist/ui/icons/Info.d.ts +0 -2
- package/dist/ui/icons/Info.js +0 -2
- package/dist/ui/icons/Key.d.ts +0 -2
- package/dist/ui/icons/Key.js +0 -2
- package/dist/ui/icons/MoonStar.d.ts +0 -2
- package/dist/ui/icons/MoonStar.js +0 -2
- package/dist/ui/icons/Sun.d.ts +0 -2
- package/dist/ui/icons/Sun.js +0 -2
- package/dist/ui/icons/X.d.ts +0 -2
- package/dist/ui/icons/X.js +0 -2
- package/dist/ui/icons/iconWithClassName.d.ts +0 -2
- package/dist/ui/icons/iconWithClassName.js +0 -2
- package/dist/ui/input-group.d.ts +0 -36
- package/dist/ui/input-group.js +0 -2
- package/dist/ui/input-otp.d.ts +0 -20
- package/dist/ui/input-otp.js +0 -2
- package/dist/ui/input-password.d.ts +0 -10
- package/dist/ui/input-password.js +0 -2
- package/dist/ui/input.d.ts +0 -8
- package/dist/ui/input.js +0 -2
- package/dist/ui/label.d.ts +0 -3
- package/dist/ui/label.js +0 -2
- package/dist/ui/link.d.ts +0 -6
- package/dist/ui/link.js +0 -2
- package/dist/ui/list.d.ts +0 -23
- package/dist/ui/list.js +0 -2
- package/dist/ui/loading-button.d.ts +0 -9
- package/dist/ui/loading-button.js +0 -2
- package/dist/ui/loading-overlay.d.ts +0 -7
- package/dist/ui/loading-overlay.js +0 -2
- package/dist/ui/loading-screen.d.ts +0 -6
- package/dist/ui/loading-screen.js +0 -2
- package/dist/ui/marketing/FeatureGrid.d.ts +0 -4
- package/dist/ui/marketing/FeatureGrid.js +0 -2
- package/dist/ui/marketing/Hero.d.ts +0 -16
- package/dist/ui/marketing/Hero.js +0 -2
- package/dist/ui/marketing/PricingTable.d.ts +0 -4
- package/dist/ui/marketing/PricingTable.js +0 -2
- package/dist/ui/marketing/index.d.ts +0 -3
- package/dist/ui/marketing/index.js +0 -2
- package/dist/ui/menubar.d.ts +0 -80
- package/dist/ui/menubar.js +0 -2
- package/dist/ui/molecules/Autocomplete/index.d.ts +0 -1
- package/dist/ui/molecules/Autocomplete/index.js +0 -2
- package/dist/ui/molecules/SearchAndFilter/SearchAndFilter.d.ts +0 -3
- package/dist/ui/molecules/SearchAndFilter/SearchAndFilter.js +0 -2
- package/dist/ui/molecules/SearchAndFilter/index.d.ts +0 -2
- package/dist/ui/molecules/SearchAndFilter/index.js +0 -2
- package/dist/ui/molecules/SearchAndFilter/types.d.ts +0 -4
- package/dist/ui/molecules/SearchAndFilter/types.js +0 -1
- package/dist/ui/molecules/SkeletonList.d.ts +0 -7
- package/dist/ui/molecules/SkeletonList.js +0 -2
- package/dist/ui/native-select.d.ts +0 -29
- package/dist/ui/native-select.js +0 -2
- package/dist/ui/nativewind-env.d.js +0 -1
- package/dist/ui/navigation-menu.d.ts +0 -44
- package/dist/ui/navigation-menu.js +0 -2
- package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.d.ts +0 -25
- package/dist/ui/organisms/ErrorBoundary/ErrorBoundary.js +0 -2
- package/dist/ui/organisms/ErrorBoundary/index.d.ts +0 -2
- package/dist/ui/organisms/ErrorBoundary/index.js +0 -2
- package/dist/ui/organisms/ListPage/ListPage.d.ts +0 -2
- package/dist/ui/organisms/ListPage/ListPage.js +0 -2
- package/dist/ui/organisms/ListPage/index.d.ts +0 -2
- package/dist/ui/organisms/ListPage/index.js +0 -2
- package/dist/ui/organisms/ListPage/types.d.ts +0 -44
- package/dist/ui/organisms/ListPage/types.js +0 -1
- package/dist/ui/page-header.d.ts +0 -9
- package/dist/ui/page-header.js +0 -2
- package/dist/ui/password-strength.d.ts +0 -13
- package/dist/ui/password-strength.js +0 -2
- package/dist/ui/popover.d.ts +0 -23
- package/dist/ui/popover.js +0 -2
- package/dist/ui/portal.d.ts +0 -1
- package/dist/ui/portal.js +0 -2
- package/dist/ui/progress.d.ts +0 -7
- package/dist/ui/progress.js +0 -2
- package/dist/ui/radio-group.d.ts +0 -4
- package/dist/ui/radio-group.js +0 -2
- package/dist/ui/select.d.ts +0 -60
- package/dist/ui/select.js +0 -2
- package/dist/ui/separator.d.ts +0 -6
- package/dist/ui/separator.js +0 -2
- package/dist/ui/sheet.d.ts +0 -1
- package/dist/ui/sheet.js +0 -2
- package/dist/ui/sidebar.d.ts +0 -1
- package/dist/ui/sidebar.js +0 -2
- package/dist/ui/skeleton.d.ts +0 -4
- package/dist/ui/skeleton.js +0 -2
- package/dist/ui/slider.d.ts +0 -7
- package/dist/ui/slider.js +0 -2
- package/dist/ui/stack.d.ts +0 -43
- package/dist/ui/stack.js +0 -2
- package/dist/ui/stepper.d.ts +0 -10
- package/dist/ui/stepper.js +0 -2
- package/dist/ui/switch.d.ts +0 -7
- package/dist/ui/switch.js +0 -2
- package/dist/ui/table.d.ts +0 -24
- package/dist/ui/table.js +0 -2
- package/dist/ui/tabs.d.ts +0 -6
- package/dist/ui/tabs.js +0 -2
- package/dist/ui/text.d.ts +0 -12
- package/dist/ui/text.js +0 -2
- package/dist/ui/textarea.d.ts +0 -8
- package/dist/ui/textarea.js +0 -2
- package/dist/ui/time-picker.d.ts +0 -4
- package/dist/ui/time-picker.js +0 -2
- package/dist/ui/toast.d.ts +0 -40
- package/dist/ui/toast.js +0 -2
- package/dist/ui/toggle-group.d.ts +0 -15
- package/dist/ui/toggle-group.js +0 -2
- package/dist/ui/toggle.d.ts +0 -19
- package/dist/ui/toggle.js +0 -2
- package/dist/ui/toolbar.d.ts +0 -25
- package/dist/ui/toolbar.js +0 -2
- package/dist/ui/tooltip.d.ts +0 -27
- package/dist/ui/tooltip.js +0 -2
- package/dist/ui/typography.d.ts +0 -16
- package/dist/ui/typography.js +0 -2
- package/dist/ui/useColorScheme.d.ts +0 -6
- package/dist/ui/useColorScheme.js +0 -2
- package/dist/ui/useListState.d.ts +0 -6
- package/dist/ui/useListState.js +0 -2
- package/dist/ui/usecases/UseCaseCard.d.ts +0 -7
- package/dist/ui/usecases/UseCaseCard.js +0 -2
- package/dist/ui/usecases/UserStoryCard.d.ts +0 -5
- package/dist/ui/usecases/UserStoryCard.js +0 -2
- package/dist/ui/usecases/index.d.ts +0 -2
- package/dist/ui/usecases/index.js +0 -2
- package/dist/ui/utils.d.ts +0 -2
- package/dist/ui/utils.js +0 -2
- package/dist/ui/visualization/Visualization.d.ts +0 -7
- package/dist/ui/visualization/Visualization.js +0 -2
- package/dist/ui/visualization/index.d.ts +0 -1
- package/dist/ui/visualization/index.js +0 -2
package/README.md
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
# @
|
|
1
|
+
# @lssm-tech/lib.ui-kit
|
|
2
2
|
|
|
3
|
-
`@
|
|
3
|
+
`@lssm-tech/lib.ui-kit` provides cross-platform UI components for native-first and Expo-based surfaces, with most real usage happening through `./ui/*` subpaths rather than the root barrel.
|
|
4
4
|
|
|
5
5
|
Website: https://contractspec.io
|
|
6
6
|
|
|
7
7
|
## Installation
|
|
8
8
|
|
|
9
|
-
`bun add @
|
|
9
|
+
`bun add @lssm-tech/lib.ui-kit`
|
|
10
10
|
|
|
11
11
|
or
|
|
12
12
|
|
|
13
|
-
`npm install @
|
|
13
|
+
`npm install @lssm-tech/lib.ui-kit`
|
|
14
14
|
|
|
15
15
|
## What belongs here
|
|
16
16
|
|
|
@@ -35,7 +35,7 @@ Use this package for Expo and React Native surfaces. Do not use it as the design
|
|
|
35
35
|
|
|
36
36
|
Native contract-driven forms consume the shared `Field` semantics through the
|
|
37
37
|
design-system renderer; web-only input-addon composition remains in
|
|
38
|
-
`@
|
|
38
|
+
`@lssm-tech/lib.ui-kit-web/ui/input-group` and the design-system platform
|
|
39
39
|
facade.
|
|
40
40
|
|
|
41
41
|
`./ui/input-password` provides the native masked password primitive with
|
|
@@ -59,29 +59,52 @@ current/new password autocomplete hints and a right-side visibility toggle.
|
|
|
59
59
|
- `./ui/sidebar`
|
|
60
60
|
- `./ui/navigation-menu`
|
|
61
61
|
- `./ui/page-header`
|
|
62
|
+
- `./ui/stack`
|
|
62
63
|
- `./ui/table`
|
|
63
64
|
- `./ui/data-table`
|
|
64
65
|
- `./ui/card`
|
|
65
66
|
- `./ui/empty-state`
|
|
66
67
|
- `./ui/slider`
|
|
67
68
|
|
|
69
|
+
### Stack and Box layout intent
|
|
70
|
+
|
|
71
|
+
`./ui/stack` exports the native `Box`, `HStack`, and `VStack` primitives. Treat
|
|
72
|
+
direction as part of the component contract:
|
|
73
|
+
|
|
74
|
+
- Use `VStack` for vertical sections, card content, forms, lists, and panels.
|
|
75
|
+
- Use `HStack` for horizontal rows, toolbars, chips, inline metrics, and action
|
|
76
|
+
groups.
|
|
77
|
+
- Use `Box` as a neutral wrapper, semantic surface, single-child container, or
|
|
78
|
+
explicit true-grid/custom-positioning host.
|
|
79
|
+
- Do not introduce new `Box` usage that depends on implicit flex direction,
|
|
80
|
+
default spacing, centered alignment, or `className`-only stack layout.
|
|
81
|
+
|
|
82
|
+
`Box` is neutral by default and no longer injects legacy row/gap/center layout.
|
|
83
|
+
Legacy layout behavior is available only through the temporary
|
|
84
|
+
`legacyBoxLayout` compatibility bridge while owned callsites migrate. New code
|
|
85
|
+
must not use that bridge; replace `Box className="flex flex-col gap-4"` with
|
|
86
|
+
`VStack gap="md"` or `Box className="flex flex-row items-center"` with
|
|
87
|
+
`HStack align="center"`. `spacing`, `width`, and `padding` remain native-lane
|
|
88
|
+
transition props behind legacy compatibility; the shared cross-platform stack
|
|
89
|
+
subset is `gap`, `align`, `justify`, and `wrap`.
|
|
90
|
+
|
|
68
91
|
## Data table example
|
|
69
92
|
|
|
70
93
|
The canonical data-table example lives in
|
|
71
|
-
[`@
|
|
94
|
+
[`@lssm-tech/example.data-grid-showcase`](../../examples/data-grid-showcase/README.md).
|
|
72
95
|
Its native-first lane renders the same account-grid controller through
|
|
73
|
-
`@
|
|
96
|
+
`@lssm-tech/lib.ui-kit/ui/data-table`:
|
|
74
97
|
|
|
75
98
|
```tsx
|
|
76
|
-
import { DataTable } from '@
|
|
77
|
-
import { useContractTable } from '@
|
|
99
|
+
import { DataTable } from '@lssm-tech/lib.ui-kit/ui/data-table';
|
|
100
|
+
import { useContractTable } from '@lssm-tech/lib.presentation-runtime-react';
|
|
78
101
|
|
|
79
|
-
import { SHOWCASE_ROWS } from '@
|
|
80
|
-
import { useShowcaseColumns } from '@
|
|
102
|
+
import { SHOWCASE_ROWS } from '@lssm-tech/example.data-grid-showcase/ui/data-grid-showcase.data';
|
|
103
|
+
import { useShowcaseColumns } from '@lssm-tech/example.data-grid-showcase/ui/data-grid-showcase.columns';
|
|
81
104
|
import {
|
|
82
105
|
ExpandedRowContent,
|
|
83
106
|
ShowcaseToolbar,
|
|
84
|
-
} from '@
|
|
107
|
+
} from '@lssm-tech/example.data-grid-showcase/ui/data-grid-showcase.parts';
|
|
85
108
|
|
|
86
109
|
export function NativeAccountGrid() {
|
|
87
110
|
const columns = useShowcaseColumns();
|
|
@@ -133,7 +156,7 @@ This example explicitly demonstrates the same sorting, pagination, selection, co
|
|
|
133
156
|
- `./ui/utils`
|
|
134
157
|
- grouped subpaths under `./ui/marketing`, `./ui/usecases`, and `./ui/visualization`
|
|
135
158
|
- icons under `./ui/icons/*`
|
|
136
|
-
- shared semantic contracts are defined in `@
|
|
159
|
+
- shared semantic contracts are defined in `@lssm-tech/lib.ui-kit-core/interfaces`
|
|
137
160
|
|
|
138
161
|
## Public surface
|
|
139
162
|
|
|
@@ -159,7 +182,7 @@ Use `package.json` as the exhaustive source of truth for all exported subpaths.
|
|
|
159
182
|
- Many components wrap Expo, React Native, or RN-oriented primitives and dependencies.
|
|
160
183
|
- `./ui/link` is router-coupled through `expo-router`.
|
|
161
184
|
- `./ui/useColorScheme` is built on `nativewind`.
|
|
162
|
-
- `./ui/utils` exposes a local `cn()` helper, but the deeper compatibility dependency is `@
|
|
185
|
+
- `./ui/utils` exposes a local `cn()` helper, but the deeper compatibility dependency is `@lssm-tech/lib.ui-kit-core`.
|
|
163
186
|
- This package is native-first even when some components can render cross-platform through React Native Web.
|
|
164
187
|
|
|
165
188
|
## When not to use this package
|
|
@@ -170,11 +193,40 @@ Use `package.json` as the exhaustive source of truth for all exported subpaths.
|
|
|
170
193
|
|
|
171
194
|
## Related packages
|
|
172
195
|
|
|
173
|
-
- `@
|
|
174
|
-
- `@
|
|
175
|
-
- `@
|
|
196
|
+
- `@lssm-tech/lib.ui-kit-core`: tiny shared utility layer used by the UI packages.
|
|
197
|
+
- `@lssm-tech/lib.ui-kit-web`: web-first component package for React and Next surfaces.
|
|
198
|
+
- `@lssm-tech/lib.design-system`: higher-level design-system and composition layer built on top of the UI packages.
|
|
176
199
|
|
|
177
200
|
## Local commands
|
|
178
201
|
|
|
179
202
|
- `bun run lint:check`
|
|
180
203
|
- `bun run typecheck`
|
|
204
|
+
|
|
205
|
+
## Graph & Timeline Primitives
|
|
206
|
+
|
|
207
|
+
`@lssm-tech/lib.ui-kit` ships native graph and timeline primitives backed by `react-native-svg` for Expo and React Native surfaces.
|
|
208
|
+
|
|
209
|
+
**`@lssm-tech/lib.ui-kit/ui/graph`**:
|
|
210
|
+
- `GraphCanvas` — native SVG graph renderer; same `GraphCanvasProps` interface as the web lane
|
|
211
|
+
|
|
212
|
+
**`@lssm-tech/lib.ui-kit/ui/timeline`**:
|
|
213
|
+
- `Timeline` — native SVG timeline renderer
|
|
214
|
+
- `TimelineGraph` — native combined timeline + graph view
|
|
215
|
+
|
|
216
|
+
All three respect `prefers-reduced-motion` via the `reducedMotion` prop (parity with web lane).
|
|
217
|
+
|
|
218
|
+
Metro aliases (`withPresentationMetroAliases`) automatically map `@lssm-tech/lib.ui-kit-web/ui/*` subpaths to `@lssm-tech/lib.ui-kit/ui/*` for native surfaces. Product code can import from `@lssm-tech/lib.design-system` and let the alias system route to the correct primitive.
|
|
219
|
+
|
|
220
|
+
See [AGENTS.md](./AGENTS.md#graph--timeline-primitives) for layer placement and full import rules.
|
|
221
|
+
|
|
222
|
+
### Native compiler compatibility
|
|
223
|
+
|
|
224
|
+
The workspace development compiler is pinned to Babel 7.29.7. The installed Expo
|
|
225
|
+
57 and React Native Worklets presets use Babel 7 transforms; resolving this package
|
|
226
|
+
to Babel 8 prevents Metro from exporting native skeleton/worklet components. Qualify
|
|
227
|
+
the presets and compiler together before upgrading this pin. iOS/Android export
|
|
228
|
+
success is build evidence, not real-device accessibility or release acceptance.
|
|
229
|
+
|
|
230
|
+
Standalone declaration exports keep their existing public subpath names. The
|
|
231
|
+
shared builder preserves their original declaration suffix and copies checked
|
|
232
|
+
source declarations into dist, without overwriting emitted implementation types.
|