@lssm/lib.design-system 0.0.0-canary-20251217052941 → 0.0.0-canary-20251217060433

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 (124) hide show
  1. package/dist/components/agent/AgentMonitor.d.ts +28 -0
  2. package/dist/components/agent/ApprovalQueue.d.ts +25 -0
  3. package/dist/components/atoms/ActionButtons.d.ts +25 -0
  4. package/dist/components/atoms/Button.d.ts +38 -0
  5. package/dist/components/atoms/ButtonLink.d.ts +21 -0
  6. package/dist/components/atoms/Cta.d.ts +31 -0
  7. package/dist/components/atoms/DataChips.d.ts +37 -0
  8. package/dist/components/atoms/EmptyState.d.ts +7 -0
  9. package/dist/components/atoms/ErrorState.d.ts +28 -0
  10. package/dist/components/atoms/Input.d.ts +35 -0
  11. package/dist/components/atoms/Link.d.ts +11 -0
  12. package/dist/components/atoms/Link.web.d.ts +18 -0
  13. package/dist/components/atoms/LoaderCircular.d.ts +22 -0
  14. package/dist/components/atoms/NavBrand.d.ts +18 -0
  15. package/dist/components/atoms/Stepper.d.ts +7 -0
  16. package/dist/components/atoms/Textarea.d.ts +37 -0
  17. package/dist/components/data-view/DataViewDetail.d.ts +21 -0
  18. package/dist/components/data-view/DataViewList.d.ts +23 -0
  19. package/dist/components/data-view/DataViewRenderer.d.ts +47 -0
  20. package/dist/components/data-view/DataViewTable.d.ts +25 -0
  21. package/dist/components/forms/ActionForm.d.ts +16 -0
  22. package/dist/components/forms/FormCardLayout.d.ts +22 -0
  23. package/dist/components/forms/FormDialog.d.ts +24 -0
  24. package/dist/components/forms/FormLayout.d.ts +29 -0
  25. package/dist/components/forms/FormOneByOneLayout.d.ts +25 -0
  26. package/dist/components/forms/FormStepsLayout.d.ts +26 -0
  27. package/dist/components/forms/ZodForm.d.ts +21 -0
  28. package/dist/components/legal/atoms/DefinitionList.d.ts +16 -0
  29. package/dist/components/legal/atoms/KeyValueList.d.ts +16 -0
  30. package/dist/components/legal/atoms/LegalCallout.d.ts +17 -0
  31. package/dist/components/legal/atoms/LegalHeading.d.ts +24 -0
  32. package/dist/components/legal/atoms/LegalList.d.ts +20 -0
  33. package/dist/components/legal/atoms/LegalSection.d.ts +21 -0
  34. package/dist/components/legal/atoms/LegalText.d.ts +24 -0
  35. package/dist/components/legal/molecules/Consent.d.ts +35 -0
  36. package/dist/components/legal/molecules/ContactFields.d.ts +24 -0
  37. package/dist/components/legal/molecules/LegalMeta.d.ts +14 -0
  38. package/dist/components/legal/molecules/LegalTOC.d.ts +30 -0
  39. package/dist/components/legal/organisms/ContactForm.d.ts +29 -0
  40. package/dist/components/legal/organisms/GDPRDataRequest.d.ts +18 -0
  41. package/dist/components/legal/organisms/GDPRRights.d.ts +13 -0
  42. package/dist/components/legal/organisms/LegalPageLayout.d.ts +23 -0
  43. package/dist/components/legal/templates/ContactTemplate.d.ts +23 -0
  44. package/dist/components/legal/templates/CookiesTemplate.d.ts +32 -0
  45. package/dist/components/legal/templates/PrivacyTemplate.d.ts +32 -0
  46. package/dist/components/legal/templates/SalesTermsTemplate.d.ts +27 -0
  47. package/dist/components/legal/templates/TermsTemplate.d.ts +27 -0
  48. package/dist/components/marketing/MarketingCard.d.ts +16 -0
  49. package/dist/components/marketing/MarketingCardsSection.d.ts +21 -0
  50. package/dist/components/marketing/MarketingComparisonSection.d.ts +29 -0
  51. package/dist/components/marketing/MarketingIconCard.d.ts +37 -0
  52. package/dist/components/marketing/MarketingSection.d.ts +33 -0
  53. package/dist/components/marketing/MarketingStepCard.d.ts +19 -0
  54. package/dist/components/molecules/AiLinkButton.d.ts +15 -0
  55. package/dist/components/molecules/Breadcrumbs.d.ts +15 -0
  56. package/dist/components/molecules/CommandPalette.d.ts +26 -0
  57. package/dist/components/molecules/CommandSearchTrigger.d.ts +18 -0
  58. package/dist/components/molecules/EntityCard.d.ts +37 -0
  59. package/dist/components/molecules/FiltersToolbar.d.ts +35 -0
  60. package/dist/components/molecules/HoverPreview.d.ts +20 -0
  61. package/dist/components/molecules/LangSwitch.d.ts +22 -0
  62. package/dist/components/molecules/LoaderBlock.d.ts +18 -0
  63. package/dist/components/molecules/NavMain.d.ts +13 -0
  64. package/dist/components/molecules/NavUser.d.ts +17 -0
  65. package/dist/components/molecules/OverviewCard.d.ts +20 -0
  66. package/dist/components/molecules/SkeletonBlock/index.d.ts +2 -0
  67. package/dist/components/molecules/SkeletonBlock/index.web.d.ts +12 -0
  68. package/dist/components/molecules/SkeletonBlock/types.d.ts +9 -0
  69. package/dist/components/molecules/SkeletonCircle/index.d.ts +2 -0
  70. package/dist/components/molecules/SkeletonCircle/index.web.d.ts +11 -0
  71. package/dist/components/molecules/SkeletonCircle/types.d.ts +8 -0
  72. package/dist/components/molecules/SkeletonList/index.d.ts +2 -0
  73. package/dist/components/molecules/SkeletonList/index.web.d.ts +10 -0
  74. package/dist/components/molecules/SkeletonList/types.d.ts +7 -0
  75. package/dist/components/molecules/StatCard.d.ts +36 -0
  76. package/dist/components/molecules/StatusChip.d.ts +26 -0
  77. package/dist/components/molecules/hover-previews/Doc.d.ts +27 -0
  78. package/dist/components/molecules/hover-previews/Media.d.ts +20 -0
  79. package/dist/components/molecules/hover-previews/Simple.d.ts +25 -0
  80. package/dist/components/molecules/hover-previews/Stats.d.ts +22 -0
  81. package/dist/components/molecules/hover-previews/User.d.ts +25 -0
  82. package/dist/components/organisms/AcademyLayout.d.ts +29 -0
  83. package/dist/components/organisms/AppHeader.d.ts +18 -0
  84. package/dist/components/organisms/AppLayout.d.ts +28 -0
  85. package/dist/components/organisms/AppSidebar.d.ts +23 -0
  86. package/dist/components/organisms/EmptyDataList.d.ts +20 -0
  87. package/dist/components/organisms/EmptyDataList.types.d.ts +19 -0
  88. package/dist/components/organisms/EmptySearchResult.d.ts +24 -0
  89. package/dist/components/organisms/FAQSection.d.ts +31 -0
  90. package/dist/components/organisms/FeatureCarousel.d.ts +18 -0
  91. package/dist/components/organisms/FeaturesSection.d.ts +19 -0
  92. package/dist/components/organisms/Footer.d.ts +25 -0
  93. package/dist/components/organisms/Header.d.ts +37 -0
  94. package/dist/components/organisms/HeroResponsive.d.ts +14 -0
  95. package/dist/components/organisms/HeroSection.d.ts +29 -0
  96. package/dist/components/organisms/ListCardPage.d.ts +36 -0
  97. package/dist/components/organisms/ListGridPage.d.ts +36 -0
  98. package/dist/components/organisms/ListPageResponsive.d.ts +7 -0
  99. package/dist/components/organisms/ListTablePage.d.ts +33 -0
  100. package/dist/components/organisms/MarketingHeader.d.ts +36 -0
  101. package/dist/components/organisms/MarketingHeaderDesktop.d.ts +15 -0
  102. package/dist/components/organisms/MarketingHeaderMobile.d.ts +12 -0
  103. package/dist/components/organisms/MarketingLayout.d.ts +18 -0
  104. package/dist/components/organisms/PageHeaderResponsive.d.ts +8 -0
  105. package/dist/components/organisms/PricingCarousel.d.ts +24 -0
  106. package/dist/components/organisms/PricingSection.d.ts +18 -0
  107. package/dist/components/organisms/TestimonialCarousel.d.ts +19 -0
  108. package/dist/components/templates/lists/ListPageTemplate/index.d.ts +2 -0
  109. package/dist/components/templates/lists/ListPageTemplate/index.web.d.ts +22 -0
  110. package/dist/components/templates/lists/ListPageTemplate/types.d.ts +25 -0
  111. package/dist/hooks/useListUrlState.d.ts +30 -0
  112. package/dist/index.d.ts +116 -0
  113. package/dist/lib/keyboard.d.ts +12 -0
  114. package/dist/platform/useColorScheme.d.ts +5 -0
  115. package/dist/platform/useReducedMotion.d.ts +4 -0
  116. package/dist/platform/useResponsive.d.ts +23 -0
  117. package/dist/platform/withPlatformUI.d.ts +28 -0
  118. package/dist/renderers/form-contract.d.ts +11 -0
  119. package/dist/renderers/index.d.ts +1 -0
  120. package/dist/theme/tokenBridge.d.ts +19 -0
  121. package/dist/theme/tokens.d.ts +50 -0
  122. package/dist/theme/variants.d.ts +21 -0
  123. package/dist/types/navigation.d.ts +44 -0
  124. package/package.json +8 -8
@@ -0,0 +1,116 @@
1
+ import { CtaAction, HeaderNavItem, NavLink, NavSection, UserMenuItem } from "./types/navigation.js";
2
+ import { formRenderer } from "./renderers/form-contract.js";
3
+ import "./renderers/index.js";
4
+ import { Button } from "./components/atoms/Button.js";
5
+ import { Cta } from "./components/atoms/Cta.js";
6
+ import { ButtonLink } from "./components/atoms/ButtonLink.js";
7
+ import { Link } from "./components/atoms/Link.js";
8
+ import { Input } from "./components/atoms/Input.js";
9
+ import { Textarea } from "./components/atoms/Textarea.js";
10
+ import { EmptyState } from "./components/atoms/EmptyState.js";
11
+ import { Stepper } from "./components/atoms/Stepper.js";
12
+ import { DeleteButton, EditButton, ToggleButton, ToggleLeftButton, ToggleRightButton, ViewButton } from "./components/atoms/ActionButtons.js";
13
+ import { DateChip, DurationChip, PlaceChip, TimeChip } from "./components/atoms/DataChips.js";
14
+ import { NavMain } from "./components/molecules/NavMain.js";
15
+ import { NavUser } from "./components/molecules/NavUser.js";
16
+ import { ApprovalQueue } from "./components/agent/ApprovalQueue.js";
17
+ import { AgentMonitor } from "./components/agent/AgentMonitor.js";
18
+ import { AppSidebar } from "./components/organisms/AppSidebar.js";
19
+ import { DesktopHeader, Header, MobileHeader } from "./components/organisms/Header.js";
20
+ import { Footer } from "./components/organisms/Footer.js";
21
+ import { FeatureCarousel } from "./components/organisms/FeatureCarousel.js";
22
+ import { CommandPalette } from "./components/molecules/CommandPalette.js";
23
+ import { LangSwitch } from "./components/molecules/LangSwitch.js";
24
+ import { MarketingHeader } from "./components/organisms/MarketingHeader.js";
25
+ import { MarketingHeaderDesktop } from "./components/organisms/MarketingHeaderDesktop.js";
26
+ import { MarketingHeaderMobile } from "./components/organisms/MarketingHeaderMobile.js";
27
+ import { MarketingLayout } from "./components/organisms/MarketingLayout.js";
28
+ import { MarketingSection, MarketingSectionPadding, MarketingSectionTone } from "./components/marketing/MarketingSection.js";
29
+ import { MarketingCardsSection } from "./components/marketing/MarketingCardsSection.js";
30
+ import { CardContent, CardDescription, CardHeader, CardTitle, MarketingCard, MarketingCardTone } from "./components/marketing/MarketingCard.js";
31
+ import { MarketingIconCard } from "./components/marketing/MarketingIconCard.js";
32
+ import { MarketingStepCard } from "./components/marketing/MarketingStepCard.js";
33
+ import { MarketingComparisonSection } from "./components/marketing/MarketingComparisonSection.js";
34
+ import { AppLayout } from "./components/organisms/AppLayout.js";
35
+ import { AcademyLayout } from "./components/organisms/AcademyLayout.js";
36
+ import { AppHeader } from "./components/organisms/AppHeader.js";
37
+ import { NavBrand } from "./components/atoms/NavBrand.js";
38
+ import { Breadcrumbs } from "./components/molecules/Breadcrumbs.js";
39
+ import { CommandSearchTrigger } from "./components/molecules/CommandSearchTrigger.js";
40
+ import { StatusChip } from "./components/molecules/StatusChip.js";
41
+ import { EntityCard } from "./components/molecules/EntityCard.js";
42
+ import { StatCard, StatCardGroup } from "./components/molecules/StatCard.js";
43
+ import { OverviewCard } from "./components/molecules/OverviewCard.js";
44
+ import { HoverPreview } from "./components/molecules/HoverPreview.js";
45
+ import { HoverPreviewSimple } from "./components/molecules/hover-previews/Simple.js";
46
+ import { HoverPreviewMedia } from "./components/molecules/hover-previews/Media.js";
47
+ import { HoverPreviewDoc } from "./components/molecules/hover-previews/Doc.js";
48
+ import { HoverPreviewUser } from "./components/molecules/hover-previews/User.js";
49
+ import { HoverPreviewStats } from "./components/molecules/hover-previews/Stats.js";
50
+ import { PricingCarousel } from "./components/organisms/PricingCarousel.js";
51
+ import { TestimonialCarousel } from "./components/organisms/TestimonialCarousel.js";
52
+ import { HeroSection } from "./components/organisms/HeroSection.js";
53
+ import { HeroResponsive } from "./components/organisms/HeroResponsive.js";
54
+ import { FeaturesSection } from "./components/organisms/FeaturesSection.js";
55
+ import { PageHeaderResponsive } from "./components/organisms/PageHeaderResponsive.js";
56
+ import { PricingSection } from "./components/organisms/PricingSection.js";
57
+ import { FAQSection } from "./components/organisms/FAQSection.js";
58
+ import { ListPageResponsive } from "./components/organisms/ListPageResponsive.js";
59
+ import { ListGridPage } from "./components/organisms/ListGridPage.js";
60
+ import { ListCardPage } from "./components/organisms/ListCardPage.js";
61
+ import { ListTablePage } from "./components/organisms/ListTablePage.js";
62
+ import { FiltersToolbar } from "./components/molecules/FiltersToolbar.js";
63
+ import { ListPageTemplate } from "./components/templates/lists/ListPageTemplate/index.web.js";
64
+ import "./components/templates/lists/ListPageTemplate/index.js";
65
+ import { AiLinkButton } from "./components/molecules/AiLinkButton.js";
66
+ import { EmptyDataList } from "./components/organisms/EmptyDataList.js";
67
+ import { EmptySearchResult } from "./components/organisms/EmptySearchResult.js";
68
+ import { LoaderCircular } from "./components/atoms/LoaderCircular.js";
69
+ import { LoaderBlock } from "./components/molecules/LoaderBlock.js";
70
+ import { SkeletonBlock } from "./components/molecules/SkeletonBlock/index.web.js";
71
+ import "./components/molecules/SkeletonBlock/index.js";
72
+ import { SkeletonCircle } from "./components/molecules/SkeletonCircle/index.web.js";
73
+ import "./components/molecules/SkeletonCircle/index.js";
74
+ import { SkeletonList } from "./components/molecules/SkeletonList/index.web.js";
75
+ import "./components/molecules/SkeletonList/index.js";
76
+ import { ErrorState } from "./components/atoms/ErrorState.js";
77
+ import { useListUrlState } from "./hooks/useListUrlState.js";
78
+ import { LegalHeading } from "./components/legal/atoms/LegalHeading.js";
79
+ import { LegalText } from "./components/legal/atoms/LegalText.js";
80
+ import { LegalSection } from "./components/legal/atoms/LegalSection.js";
81
+ import { DefinitionList } from "./components/legal/atoms/DefinitionList.js";
82
+ import { KeyValueList } from "./components/legal/atoms/KeyValueList.js";
83
+ import { LegalList } from "./components/legal/atoms/LegalList.js";
84
+ import { LegalCallout } from "./components/legal/atoms/LegalCallout.js";
85
+ import { LegalTOC } from "./components/legal/molecules/LegalTOC.js";
86
+ import { LegalMeta } from "./components/legal/molecules/LegalMeta.js";
87
+ import { ConsentItem, ConsentList } from "./components/legal/molecules/Consent.js";
88
+ import { ContactFields } from "./components/legal/molecules/ContactFields.js";
89
+ import { LegalPageLayout } from "./components/legal/organisms/LegalPageLayout.js";
90
+ import { GDPRRights } from "./components/legal/organisms/GDPRRights.js";
91
+ import { ContactForm } from "./components/legal/organisms/ContactForm.js";
92
+ import { GDPRDataRequest } from "./components/legal/organisms/GDPRDataRequest.js";
93
+ import { TermsTemplate } from "./components/legal/templates/TermsTemplate.js";
94
+ import { SalesTermsTemplate } from "./components/legal/templates/SalesTermsTemplate.js";
95
+ import { PrivacyTemplate } from "./components/legal/templates/PrivacyTemplate.js";
96
+ import { CookiesTemplate } from "./components/legal/templates/CookiesTemplate.js";
97
+ import { ContactTemplate } from "./components/legal/templates/ContactTemplate.js";
98
+ import { Breakpoints, DEFAULT_BREAKPOINTS, PlatformKind, PlatformUI, WithPlatformUIOptions, withPlatformUI } from "./platform/withPlatformUI.js";
99
+ import { useResponsive } from "./platform/useResponsive.js";
100
+ import { useReducedMotion } from "./platform/useReducedMotion.js";
101
+ import { useColorScheme } from "./platform/useColorScheme.js";
102
+ import { DSBaseVariantsProps, DensityVariant, EmphasisVariant, SizeVariant, ToneVariant, dsBaseVariants } from "./theme/variants.js";
103
+ import { ColorTokens, RadiusTokens, SpaceTokens, ThemeTokens, TypographyTokens, defaultTokens } from "./theme/tokens.js";
104
+ import { mapTokensForPlatform } from "./theme/tokenBridge.js";
105
+ import { FormDialog } from "./components/forms/FormDialog.js";
106
+ import { ZodForm } from "./components/forms/ZodForm.js";
107
+ import { FormGrid, FormRow, FormSection } from "./components/forms/FormLayout.js";
108
+ import { FormCardLayout } from "./components/forms/FormCardLayout.js";
109
+ import { FormStepsLayout } from "./components/forms/FormStepsLayout.js";
110
+ import { FormOneByOneLayout } from "./components/forms/FormOneByOneLayout.js";
111
+ import { ActionForm } from "./components/forms/ActionForm.js";
112
+ import { DataViewList } from "./components/data-view/DataViewList.js";
113
+ import { DataViewTable } from "./components/data-view/DataViewTable.js";
114
+ import { DataViewDetail } from "./components/data-view/DataViewDetail.js";
115
+ import { DataViewRenderer } from "./components/data-view/DataViewRenderer.js";
116
+ export { AcademyLayout, ActionForm, AgentMonitor, AiLinkButton, AppHeader, AppLayout, AppSidebar, ApprovalQueue, Breadcrumbs, Breakpoints, Button, ButtonLink, ColorTokens, CommandPalette, CommandSearchTrigger, ConsentItem, ConsentList, ContactFields, ContactForm, ContactTemplate, CookiesTemplate, Cta, CtaAction, DEFAULT_BREAKPOINTS, DSBaseVariantsProps, DataViewDetail, DataViewList, DataViewRenderer, DataViewTable, DateChip, DefinitionList, DeleteButton, DensityVariant, DesktopHeader, DurationChip, EditButton, EmphasisVariant, EmptyDataList, EmptySearchResult, EmptyState, EntityCard, ErrorState, FAQSection, FeatureCarousel, FeaturesSection, FiltersToolbar, Footer, FormCardLayout, FormDialog, FormGrid, FormOneByOneLayout, FormRow, FormSection, FormStepsLayout, GDPRDataRequest, GDPRRights, Header, HeaderNavItem, HeroResponsive, HeroSection, HoverPreview, HoverPreviewDoc, HoverPreviewMedia, HoverPreviewSimple, HoverPreviewStats, HoverPreviewUser, Input, KeyValueList, LangSwitch, LegalCallout, LegalHeading, LegalList, LegalMeta, LegalPageLayout, LegalSection, LegalTOC, LegalText, Link, ListCardPage, ListGridPage, ListPageResponsive, ListPageTemplate, ListTablePage, LoaderBlock, LoaderCircular, MarketingCard, CardContent as MarketingCardContent, CardDescription as MarketingCardDescription, CardHeader as MarketingCardHeader, CardTitle as MarketingCardTitle, type MarketingCardTone, MarketingCardsSection, MarketingComparisonSection, MarketingHeader, MarketingHeaderDesktop, MarketingHeaderMobile, MarketingIconCard, MarketingLayout, MarketingSection, type MarketingSectionPadding, type MarketingSectionTone, MarketingStepCard, MobileHeader, NavBrand, NavLink, NavMain, NavSection, NavUser, OverviewCard, PageHeaderResponsive, PlaceChip, PlatformKind, PlatformUI, PricingCarousel, PricingSection, PrivacyTemplate, RadiusTokens, SalesTermsTemplate, SizeVariant, SkeletonBlock, SkeletonCircle, SkeletonList, SpaceTokens, StatCard, StatCardGroup, StatusChip, Stepper, TermsTemplate, TestimonialCarousel, Textarea, ThemeTokens, TimeChip, ToggleButton, ToggleLeftButton, ToggleRightButton, ToneVariant, TypographyTokens, UserMenuItem, ViewButton, WithPlatformUIOptions, ZodForm, defaultTokens, dsBaseVariants, formRenderer, mapTokensForPlatform, useColorScheme, useListUrlState, useReducedMotion, useResponsive, withPlatformUI };
@@ -0,0 +1,12 @@
1
+ //#region src/lib/keyboard.d.ts
2
+ type KeyboardKind = 'text' | 'email' | 'password' | 'new-password' | 'username' | 'url' | 'search' | 'phone' | 'tel' | 'number' | 'int' | 'decimal' | 'numbers-and-punctuation' | 'otp' | 'name' | 'given-name' | 'family-name' | 'address-line1' | 'address-line2' | 'postal-code' | 'cc-number' | 'cc-exp' | 'cc-csc' | 'off' | 'date';
3
+ type AutoCompleteToken = 'on' | 'off' | 'name' | 'honorific-prefix' | 'given-name' | 'additional-name' | 'family-name' | 'honorific-suffix' | 'nickname' | 'username' | 'new-password' | 'current-password' | 'one-time-code' | 'organization-title' | 'organization' | 'street-address' | 'address-line1' | 'address-line2' | 'address-line3' | 'address-level4' | 'address-level3' | 'address-level2' | 'address-level1' | 'country' | 'country-name' | 'postal-code' | 'cc-name' | 'cc-given-name' | 'cc-additional-name' | 'cc-family-name' | 'cc-number' | 'cc-exp' | 'cc-exp-month' | 'cc-exp-year' | 'cc-csc' | 'cc-type' | 'transaction-amount' | 'language' | 'bday' | 'bday-day' | 'bday-month' | 'bday-year' | 'sex' | 'photo' | 'email' | 'impp' | 'tel' | 'tel-country-code' | 'tel-national' | 'tel-area-code' | 'tel-local' | 'tel-local-prefix' | 'tel-local-suffix' | 'tel-extension' | 'url' | 'webauthn' | `section-${string}` | (string & {});
4
+ interface KeyboardOptions {
5
+ kind?: KeyboardKind;
6
+ autoCapitalize?: 'none' | 'sentences' | 'words' | 'characters';
7
+ autoComplete?: AutoCompleteToken;
8
+ autoCorrect?: boolean;
9
+ enterKeyHint?: 'enter' | 'done' | 'go' | 'next' | 'search' | 'send';
10
+ }
11
+ //#endregion
12
+ export { KeyboardOptions };
@@ -0,0 +1,5 @@
1
+ //#region src/platform/useColorScheme.d.ts
2
+ type ColorScheme = 'light' | 'dark';
3
+ declare function useColorScheme(): ColorScheme;
4
+ //#endregion
5
+ export { useColorScheme };
@@ -0,0 +1,4 @@
1
+ //#region src/platform/useReducedMotion.d.ts
2
+ declare function useReducedMotion(): boolean;
3
+ //#endregion
4
+ export { useReducedMotion };
@@ -0,0 +1,23 @@
1
+ //#region src/platform/useResponsive.d.ts
2
+ interface Breakpoints {
3
+ sm: number;
4
+ md: number;
5
+ lg: number;
6
+ xl: number;
7
+ }
8
+ declare function useResponsive(custom?: Partial<Breakpoints>): {
9
+ readonly width: number;
10
+ readonly breakpoints: {
11
+ sm: number;
12
+ md: number;
13
+ lg: number;
14
+ xl: number;
15
+ };
16
+ readonly isSM: boolean;
17
+ readonly isMD: boolean;
18
+ readonly isLG: boolean;
19
+ readonly isXL: boolean;
20
+ readonly screen: "mobile" | "tablet" | "desktop";
21
+ };
22
+ //#endregion
23
+ export { useResponsive };
@@ -0,0 +1,28 @@
1
+ //#region src/platform/withPlatformUI.d.ts
2
+ /**
3
+ * withPlatformUI
4
+ * Lightweight adapter inspired by gluestack's withGluestack pattern.
5
+ * It centralizes tokens and responsive options while keeping DS imports
6
+ * pointed at @ui-kit-web. Metro/Webpack aliases can swap to @ui-kit in native.
7
+ */
8
+ type PlatformKind = 'web' | 'native';
9
+ interface Breakpoints {
10
+ sm: number;
11
+ md: number;
12
+ lg: number;
13
+ xl: number;
14
+ }
15
+ interface WithPlatformUIOptions<TTokens extends Record<string, unknown>> {
16
+ tokens: TTokens;
17
+ platform?: PlatformKind;
18
+ breakpoints?: Partial<Breakpoints>;
19
+ }
20
+ interface PlatformUI<TTokens> {
21
+ platform: PlatformKind;
22
+ tokens: TTokens;
23
+ breakpoints: Breakpoints;
24
+ }
25
+ declare const DEFAULT_BREAKPOINTS: Breakpoints;
26
+ declare function withPlatformUI<TTokens extends Record<string, unknown>>(options: WithPlatformUIOptions<TTokens>): PlatformUI<TTokens>;
27
+ //#endregion
28
+ export { Breakpoints, DEFAULT_BREAKPOINTS, PlatformKind, PlatformUI, WithPlatformUIOptions, withPlatformUI };
@@ -0,0 +1,11 @@
1
+ import * as _lssm_lib_contracts_client_react_form_render0 from "@lssm/lib.contracts/client/react/form-render";
2
+ import * as react_jsx_runtime108 from "react/jsx-runtime";
3
+ import * as _lssm_lib_schema0 from "@lssm/lib.schema";
4
+ import * as _lssm_lib_contracts_forms0 from "@lssm/lib.contracts/forms";
5
+
6
+ //#region src/renderers/form-contract.d.ts
7
+ declare const formRenderer: {
8
+ render: (spec: _lssm_lib_contracts_forms0.FormSpec<_lssm_lib_schema0.AnySchemaModel>, options?: _lssm_lib_contracts_client_react_form_render0.RenderOptions<Record<string, any>> | undefined) => react_jsx_runtime108.JSX.Element;
9
+ };
10
+ //#endregion
11
+ export { formRenderer };
@@ -0,0 +1 @@
1
+ import { formRenderer } from "./form-contract.js";
@@ -0,0 +1,19 @@
1
+ import { ColorTokens, RadiusTokens, SpaceTokens, defaultTokens } from "./tokens.js";
2
+
3
+ //#region src/theme/tokenBridge.d.ts
4
+ type PlatformKind = 'web' | 'native';
5
+ type WebTokens = typeof defaultTokens;
6
+ interface NativeTokens {
7
+ colors: ColorTokens;
8
+ spacing: SpaceTokens;
9
+ typography: {
10
+ h1: number;
11
+ body: number;
12
+ };
13
+ radii: RadiusTokens;
14
+ icons: Record<string, number>;
15
+ }
16
+ type BridgedTokens = WebTokens | NativeTokens;
17
+ declare function mapTokensForPlatform(platform: PlatformKind): BridgedTokens;
18
+ //#endregion
19
+ export { mapTokensForPlatform };
@@ -0,0 +1,50 @@
1
+ //#region src/theme/tokens.d.ts
2
+ interface ColorTokens {
3
+ background: string;
4
+ foreground: string;
5
+ muted: string;
6
+ mutedForeground: string;
7
+ primary: string;
8
+ primaryForeground: string;
9
+ accent: string;
10
+ accentForeground: string;
11
+ destructive: string;
12
+ destructiveForeground: string;
13
+ border: string;
14
+ ring: string;
15
+ }
16
+ interface RadiusTokens {
17
+ sm: number;
18
+ md: number;
19
+ lg: number;
20
+ xl: number;
21
+ full: number;
22
+ }
23
+ interface SpaceTokens {
24
+ xs: number;
25
+ sm: number;
26
+ md: number;
27
+ lg: number;
28
+ xl: number;
29
+ }
30
+ interface TypographyTokens {
31
+ h1: number;
32
+ h2: number;
33
+ h3: number;
34
+ body: number;
35
+ small: number;
36
+ }
37
+ interface ThemeTokens {
38
+ colors: ColorTokens;
39
+ radii: RadiusTokens;
40
+ space: SpaceTokens;
41
+ typography: TypographyTokens;
42
+ icons: {
43
+ sm: number;
44
+ md: number;
45
+ lg: number;
46
+ };
47
+ }
48
+ declare const defaultTokens: ThemeTokens;
49
+ //#endregion
50
+ export { ColorTokens, RadiusTokens, SpaceTokens, ThemeTokens, TypographyTokens, defaultTokens };
@@ -0,0 +1,21 @@
1
+ import { VariantProps } from "class-variance-authority";
2
+ import * as class_variance_authority_types21 from "class-variance-authority/types";
3
+
4
+ //#region src/theme/variants.d.ts
5
+ type SizeVariant = 'sm' | 'md' | 'lg';
6
+ type DensityVariant = 'compact' | 'comfortable';
7
+ type ToneVariant = 'neutral' | 'info' | 'success' | 'warning' | 'danger';
8
+ type EmphasisVariant = 'default' | 'subtle' | 'strong';
9
+ /**
10
+ * Base CVA example to compose in DS components.
11
+ * Consumers can extend this with component-specific classes.
12
+ */
13
+ declare const dsBaseVariants: (props?: ({
14
+ size?: "sm" | "md" | "lg" | null | undefined;
15
+ density?: "compact" | "comfortable" | null | undefined;
16
+ tone?: "neutral" | "danger" | "info" | "success" | "warning" | null | undefined;
17
+ emphasis?: "default" | "strong" | "subtle" | null | undefined;
18
+ } & class_variance_authority_types21.ClassProp) | undefined) => string;
19
+ type DSBaseVariantsProps = VariantProps<typeof dsBaseVariants>;
20
+ //#endregion
21
+ export { DSBaseVariantsProps, DensityVariant, EmphasisVariant, SizeVariant, ToneVariant, dsBaseVariants };
@@ -0,0 +1,44 @@
1
+ import * as React from "react";
2
+
3
+ //#region src/types/navigation.d.ts
4
+ interface NavLink {
5
+ label: React.ReactNode;
6
+ href: string;
7
+ icon?: React.ReactNode;
8
+ badge?: string | number;
9
+ target?: '_self' | '_blank';
10
+ ariaLabel?: string;
11
+ external?: boolean;
12
+ description?: React.ReactNode;
13
+ imageSrc?: string;
14
+ imageAlt?: string;
15
+ categories?: string[];
16
+ }
17
+ interface NavSection {
18
+ title?: React.ReactNode;
19
+ items: NavLink[];
20
+ }
21
+ interface UserMenuItem {
22
+ label: React.ReactNode;
23
+ href?: string;
24
+ onClick?: () => void;
25
+ icon?: React.ReactNode;
26
+ danger?: boolean;
27
+ }
28
+ interface HeaderNavItem {
29
+ label: React.ReactNode;
30
+ href?: string;
31
+ description?: React.ReactNode;
32
+ key?: string;
33
+ items?: NavLink[];
34
+ match?: 'exact' | 'startsWith';
35
+ }
36
+ interface CtaAction {
37
+ label: React.ReactNode;
38
+ href?: string;
39
+ onClick?: () => void;
40
+ variant?: 'default' | 'secondary' | 'outline' | 'ghost' | 'destructive';
41
+ size?: 'default' | 'sm' | 'lg' | 'icon';
42
+ }
43
+ //#endregion
44
+ export { CtaAction, HeaderNavItem, NavLink, NavSection, UserMenuItem };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lssm/lib.design-system",
3
- "version": "0.0.0-canary-20251217052941",
3
+ "version": "0.0.0-canary-20251217060433",
4
4
  "scripts": {
5
5
  "publish:pkg": "bun publish --tolerate-republish --ignore-scripts --verbose",
6
6
  "publish:pkg:canary": "bun publish:pkg --tag canary",
@@ -21,10 +21,10 @@
21
21
  "tree-shake": true,
22
22
  "dependencies": {
23
23
  "@hookform/resolvers": "5.2.2",
24
- "@lssm/lib.ai-agent": "0.0.0-canary-20251217052941",
25
- "@lssm/lib.contracts": "0.0.0-canary-20251217052941",
26
- "@lssm/lib.ui-kit": "0.0.0-canary-20251217052941",
27
- "@lssm/lib.ui-kit-web": "0.0.0-canary-20251217052941",
24
+ "@lssm/lib.ai-agent": "0.0.0-canary-20251217060433",
25
+ "@lssm/lib.contracts": "0.0.0-canary-20251217060433",
26
+ "@lssm/lib.ui-kit": "0.0.0-canary-20251217060433",
27
+ "@lssm/lib.ui-kit-web": "0.0.0-canary-20251217060433",
28
28
  "class-variance-authority": "^0.7.1",
29
29
  "clsx": "^2.1.1",
30
30
  "lucide-react": "^0.535.0",
@@ -35,8 +35,8 @@
35
35
  "zod": "^4.1.13"
36
36
  },
37
37
  "devDependencies": {
38
- "@lssm/tool.typescript": "0.0.0-canary-20251217052941",
39
- "@lssm/tool.tsdown": "0.0.0-canary-20251217052941",
38
+ "@lssm/tool.typescript": "0.0.0-canary-20251217060433",
39
+ "@lssm/tool.tsdown": "0.0.0-canary-20251217060433",
40
40
  "@types/node": "^24.9.0",
41
41
  "@types/react-dom": "^19.0.14",
42
42
  "postcss": "^8.5",
@@ -50,7 +50,7 @@
50
50
  "README.md"
51
51
  ],
52
52
  "exports": {
53
- ".": "./src/index.ts",
53
+ ".": "./dist/index.js",
54
54
  "./*": "./*"
55
55
  },
56
56
  "publishConfig": {