@contractspec/lib.design-system 3.11.2 → 4.0.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.
- package/README.md +1 -1
- package/dist/browser/components/atoms/InputPassword.js +1 -0
- package/dist/browser/components/forms/controls/index.js +1 -1
- package/dist/browser/components/legal/templates/ContactTemplate.js +1 -1
- package/dist/browser/components/list/List.js +1 -0
- package/dist/browser/components/list/index.js +1 -0
- package/dist/browser/components/molecules/Tabs.js +1 -0
- package/dist/browser/components/typography/Typography.js +1 -0
- package/dist/browser/components/typography/index.js +1 -0
- package/dist/browser/controls.js +1 -0
- package/dist/browser/forms.js +1 -0
- package/dist/browser/index.js +1 -1
- package/dist/browser/layout.js +1 -0
- package/dist/browser/list.js +1 -0
- package/dist/browser/renderers/form-contract/renderer.js +1 -1
- package/dist/browser/renderers/form-contract/shell.js +1 -1
- package/dist/browser/typography.js +1 -0
- package/dist/components/atoms/{ButtonLink.mobile.d.ts → ButtonLink.native.d.ts} +1 -1
- package/dist/components/atoms/InputPassword.d.ts +15 -0
- package/dist/components/atoms/InputPassword.js +1 -0
- package/dist/components/atoms/InputPassword.native.d.ts +17 -0
- package/dist/components/atoms/Link.native.d.ts +1 -1
- package/dist/components/forms/controls/index.d.ts +1 -0
- package/dist/components/forms/controls/index.js +1 -1
- package/dist/components/legal/templates/ContactTemplate.js +1 -1
- package/dist/components/list/List.d.ts +6 -0
- package/dist/components/list/List.js +1 -0
- package/dist/components/list/List.native.d.ts +6 -0
- package/dist/components/list/index.d.ts +1 -0
- package/dist/components/list/index.js +1 -0
- package/dist/components/molecules/Tabs.d.ts +32 -0
- package/dist/components/molecules/Tabs.js +1 -0
- package/dist/components/molecules/Tabs.native.d.ts +32 -0
- package/dist/components/organisms/{AppHeader.mobile.d.ts → AppHeader.native.d.ts} +1 -1
- package/dist/components/typography/Typography.d.ts +19 -0
- package/dist/components/typography/Typography.js +1 -0
- package/dist/components/typography/Typography.native.d.ts +19 -0
- package/dist/components/typography/index.d.ts +1 -0
- package/dist/components/typography/index.js +1 -0
- package/dist/controls.d.ts +1 -0
- package/dist/controls.js +1 -0
- package/dist/forms.d.ts +1 -0
- package/dist/forms.js +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +1 -1
- package/dist/layout.d.ts +1 -0
- package/dist/layout.js +1 -0
- package/dist/list.d.ts +1 -0
- package/dist/list.js +1 -0
- package/dist/native/components/agent/AgentMonitor.js +1 -0
- package/dist/native/components/agent/ApprovalQueue.js +1 -0
- package/dist/native/components/atoms/ActionButtons.js +1 -0
- package/dist/native/components/atoms/Button.js +1 -0
- package/dist/native/components/atoms/ButtonLink.js +1 -0
- package/dist/{browser/components/atoms/ButtonLink.mobile.js → native/components/atoms/ButtonLink.native.js} +1 -1
- package/dist/native/components/atoms/Cta.js +1 -0
- package/dist/native/components/atoms/DataChips.js +1 -0
- package/dist/native/components/atoms/EmptyState.js +1 -0
- package/dist/native/components/atoms/ErrorState.js +1 -0
- package/dist/native/components/atoms/ErrorState.native.js +1 -0
- package/dist/native/components/atoms/Input.js +1 -0
- package/dist/native/components/atoms/InputPassword.js +1 -0
- package/dist/native/components/atoms/InputPassword.native.js +1 -0
- package/dist/native/components/atoms/Link.js +1 -0
- package/dist/native/components/atoms/Link.native.js +1 -0
- package/dist/native/components/atoms/LoaderCircular.js +1 -0
- package/dist/native/components/atoms/NavBrand.js +1 -0
- package/dist/native/components/atoms/RankBadge.js +1 -0
- package/dist/native/components/atoms/ScoreBar.js +1 -0
- package/dist/native/components/atoms/Stepper.js +1 -0
- package/dist/native/components/atoms/Textarea.js +1 -0
- package/dist/native/components/data-table/DataTable.js +1 -0
- package/dist/native/components/data-table/DataTableToolbar.js +1 -0
- package/dist/{browser/components/data-table/DataTableToolbar.mobile.js → native/components/data-table/DataTableToolbar.native.js} +1 -1
- package/dist/native/components/data-table/DataTableToolbar.shared.js +1 -0
- package/dist/native/components/data-view/DataViewDetail.js +1 -0
- package/dist/native/components/data-view/DataViewList.js +1 -0
- package/dist/native/components/data-view/DataViewRenderer.js +1 -0
- package/dist/native/components/data-view/DataViewTable.js +1 -0
- package/dist/native/components/data-view/utils.js +1 -0
- package/dist/native/components/forms/ActionForm.js +1 -0
- package/dist/native/components/forms/FormCardLayout.js +1 -0
- package/dist/native/components/forms/FormDialog.js +1 -0
- package/dist/native/components/forms/FormLayout.js +1 -0
- package/dist/native/components/forms/FormOneByOneLayout.js +1 -0
- package/dist/native/components/forms/FormStepsLayout.js +1 -0
- package/dist/native/components/forms/ZodForm.js +1 -0
- package/dist/native/components/forms/controls/Autocomplete.js +1 -0
- package/dist/native/components/forms/controls/ChoiceControls.js +1 -0
- package/dist/native/components/forms/controls/Combobox.js +1 -0
- package/dist/native/components/forms/controls/DateTimeControls.js +1 -0
- package/dist/{components/forms/controls/DropdownMenu.mobile.js → native/components/forms/controls/DropdownMenu.js} +1 -1
- package/dist/native/components/forms/controls/Field.js +1 -0
- package/dist/native/components/forms/controls/InputGroup.js +1 -0
- package/dist/native/components/forms/controls/InputOTP.js +1 -0
- package/dist/native/components/forms/controls/LoadingButton.js +1 -0
- package/dist/native/components/forms/controls/NativeSelect.js +1 -0
- package/dist/native/components/forms/controls/Select.js +1 -0
- package/dist/native/components/forms/controls/index.js +1 -0
- package/dist/native/components/forms/index.js +1 -0
- package/dist/native/components/layout/Stack.js +1 -0
- package/dist/native/components/layout/index.js +1 -0
- package/dist/native/components/legal/atoms/DefinitionList.js +1 -0
- package/dist/native/components/legal/atoms/KeyValueList.js +1 -0
- package/dist/native/components/legal/atoms/LegalCallout.js +1 -0
- package/dist/native/components/legal/atoms/LegalHeading.js +1 -0
- package/dist/native/components/legal/atoms/LegalList.js +1 -0
- package/dist/native/components/legal/atoms/LegalSection.js +1 -0
- package/dist/native/components/legal/atoms/LegalText.js +1 -0
- package/dist/native/components/legal/molecules/Consent.js +1 -0
- package/dist/native/components/legal/molecules/ContactFields.js +1 -0
- package/dist/native/components/legal/molecules/LegalMeta.js +1 -0
- package/dist/native/components/legal/molecules/LegalTOC.js +1 -0
- package/dist/native/components/legal/organisms/ContactForm.js +1 -0
- package/dist/native/components/legal/organisms/GDPRDataRequest.js +1 -0
- package/dist/native/components/legal/organisms/GDPRRights.js +1 -0
- package/dist/native/components/legal/organisms/LegalPageLayout.js +1 -0
- package/dist/native/components/legal/templates/ContactTemplate.js +1 -0
- package/dist/native/components/legal/templates/CookiesTemplate.js +1 -0
- package/dist/native/components/legal/templates/PrivacyTemplate.js +1 -0
- package/dist/native/components/legal/templates/SalesTermsTemplate.js +1 -0
- package/dist/native/components/legal/templates/TermsTemplate.js +1 -0
- package/dist/native/components/list/List.js +1 -0
- package/dist/native/components/list/List.native.js +1 -0
- package/dist/native/components/list/index.js +1 -0
- package/dist/native/components/marketing/MarketingCard.js +1 -0
- package/dist/native/components/marketing/MarketingCardsSection.js +1 -0
- package/dist/native/components/marketing/MarketingComparisonSection.js +1 -0
- package/dist/native/components/marketing/MarketingIconCard.js +1 -0
- package/dist/native/components/marketing/MarketingSection.js +1 -0
- package/dist/native/components/marketing/MarketingStepCard.js +1 -0
- package/dist/native/components/molecules/AiLinkButton.js +1 -0
- package/dist/native/components/molecules/Breadcrumbs.js +1 -0
- package/dist/native/components/molecules/CodeBlock/CodeBlock.js +1 -0
- package/dist/native/components/molecules/CodeBlock/index.js +1 -0
- package/dist/native/components/molecules/CommandPalette.js +1 -0
- package/dist/native/components/molecules/CommandSearchTrigger.js +1 -0
- package/dist/native/components/molecules/CommandTabs/CommandTabs.js +1 -0
- package/dist/native/components/molecules/CommandTabs/index.js +1 -0
- package/dist/native/components/molecules/CopyButton/CopyButton.js +1 -0
- package/dist/native/components/molecules/CopyButton/index.js +1 -0
- package/dist/native/components/molecules/CopyButton/types.js +0 -0
- package/dist/native/components/molecules/DimensionScoresCard.js +1 -0
- package/dist/native/components/molecules/DropdownMenu.js +0 -0
- package/dist/native/components/molecules/EntityCard.js +1 -0
- package/dist/native/components/molecules/FiltersToolbar.js +1 -0
- package/dist/native/components/molecules/HoverPreview.js +1 -0
- package/dist/native/components/molecules/InstallCommand/InstallCommand.js +1 -0
- package/dist/native/components/molecules/InstallCommand/index.js +1 -0
- package/dist/native/components/molecules/InstallCommand/types.js +0 -0
- package/dist/native/components/molecules/LangSwitch.js +1 -0
- package/dist/native/components/molecules/LangSwitchDropdown.js +1 -0
- package/dist/native/components/molecules/LoaderBlock.js +1 -0
- package/dist/{browser/components/molecules/LoaderBlock.mobile.js → native/components/molecules/LoaderBlock.native.js} +1 -1
- package/dist/native/components/molecules/MarkdownRenderer/MarkdownRenderer.js +2 -0
- package/dist/native/components/molecules/MarkdownRenderer/formatInlineMarkdown.js +1 -0
- package/dist/native/components/molecules/MarkdownRenderer/index.js +1 -0
- package/dist/native/components/molecules/MarkdownRenderer/renderMarkdownTable.js +1 -0
- package/dist/native/components/molecules/MarkdownRenderer/types.js +0 -0
- package/dist/native/components/molecules/MobileNavMenu.js +1 -0
- package/dist/native/components/molecules/NavItemCard.js +1 -0
- package/dist/native/components/molecules/NavMain.js +1 -0
- package/dist/native/components/molecules/NavUser.js +1 -0
- package/dist/native/components/molecules/OverviewCard.js +1 -0
- package/dist/native/components/molecules/SkeletonBlock/index.js +1 -0
- package/dist/native/components/molecules/SkeletonBlock/types.js +0 -0
- package/dist/native/components/molecules/SkeletonCircle/index.js +1 -0
- package/dist/native/components/molecules/SkeletonCircle/types.js +0 -0
- package/dist/native/components/molecules/SkeletonList/index.js +1 -0
- package/dist/native/components/molecules/SkeletonList/types.js +0 -0
- package/dist/native/components/molecules/StatCard.js +1 -0
- package/dist/native/components/molecules/StatusChip.js +1 -0
- package/dist/native/components/molecules/Tabs.js +1 -0
- package/dist/native/components/molecules/Tabs.native.js +1 -0
- package/dist/native/components/molecules/hover-previews/Doc.js +1 -0
- package/dist/native/components/molecules/hover-previews/Media.js +1 -0
- package/dist/native/components/molecules/hover-previews/Simple.js +1 -0
- package/dist/native/components/molecules/hover-previews/Stats.js +1 -0
- package/dist/native/components/molecules/hover-previews/User.js +1 -0
- package/dist/native/components/organisms/AcademyLayout.js +1 -0
- package/dist/native/components/organisms/AppHeader.js +1 -0
- package/dist/{browser/components/organisms/AppHeader.mobile.js → native/components/organisms/AppHeader.native.js} +1 -1
- package/dist/native/components/organisms/AppLayout.js +1 -0
- package/dist/native/components/organisms/AppSidebar.js +1 -0
- package/dist/native/components/organisms/AppSidebar.native.js +0 -0
- package/dist/native/components/organisms/EmptyDataList.js +1 -0
- package/dist/native/components/organisms/EmptyDataList.types.js +0 -0
- package/dist/native/components/organisms/EmptySearchResult.js +1 -0
- package/dist/native/components/organisms/FAQSection.js +1 -0
- package/dist/native/components/organisms/FeatureCarousel.js +1 -0
- package/dist/native/components/organisms/FeaturesSection.js +1 -0
- package/dist/native/components/organisms/Footer.js +1 -0
- package/dist/native/components/organisms/GridLayout.js +1 -0
- package/dist/native/components/organisms/Header.js +1 -0
- package/dist/native/components/organisms/HeroResponsive.js +1 -0
- package/dist/native/components/organisms/HeroSection.js +1 -0
- package/dist/native/components/organisms/ListCardPage.js +1 -0
- package/dist/native/components/organisms/ListGridPage.js +1 -0
- package/dist/native/components/organisms/ListPageResponsive.js +1 -0
- package/dist/native/components/organisms/ListTablePage.js +1 -0
- package/dist/native/components/organisms/MarketingHeader.js +1 -0
- package/dist/native/components/organisms/MarketingHeaderDesktop.js +1 -0
- package/dist/native/components/organisms/MarketingHeaderMobile.js +1 -0
- package/dist/native/components/organisms/MarketingLayout.js +1 -0
- package/dist/native/components/organisms/ModelComparisonView.js +1 -0
- package/dist/native/components/organisms/PageHeaderResponsive.js +1 -0
- package/dist/{browser/components/organisms/PageHeaderResponsive.mobile.js → native/components/organisms/PageHeaderResponsive.native.js} +1 -1
- package/dist/native/components/organisms/PricingCarousel.js +1 -0
- package/dist/native/components/organisms/PricingSection.js +1 -0
- package/dist/native/components/organisms/TestimonialCarousel.js +1 -0
- package/dist/native/components/primitives/control.js +1 -0
- package/dist/native/components/primitives/themed.js +1 -0
- package/dist/native/components/providers/PackageManagerProvider.js +1 -0
- package/dist/native/components/templates/lists/ListPageTemplate/index.js +1 -0
- package/dist/{browser/components/templates/lists/ListPageTemplate/index.mobile.js → native/components/templates/lists/ListPageTemplate/index.native.js} +1 -1
- package/dist/native/components/templates/lists/ListPageTemplate/types.js +0 -0
- package/dist/native/components/typography/Typography.js +1 -0
- package/dist/native/components/typography/Typography.native.js +1 -0
- package/dist/native/components/typography/index.js +1 -0
- package/dist/native/components/visualization/ComparisonView.js +1 -0
- package/dist/{browser/components/visualization/ComparisonView.mobile.js → native/components/visualization/ComparisonView.native.js} +1 -1
- package/dist/native/components/visualization/TimelineView.js +1 -0
- package/dist/{browser/components/visualization/TimelineView.mobile.js → native/components/visualization/TimelineView.native.js} +1 -1
- package/dist/native/components/visualization/VisualizationCard.js +1 -0
- package/dist/native/components/visualization/VisualizationCard.native.js +1 -0
- package/dist/native/components/visualization/VisualizationGrid.js +1 -0
- package/dist/native/components/visualization/VisualizationRenderer.js +1 -0
- package/dist/native/components/visualization/types.js +0 -0
- package/dist/native/contracts.typecheck.js +1 -0
- package/dist/native/controls.js +1 -0
- package/dist/native/design-system.feature.js +1 -0
- package/dist/native/forms.js +1 -0
- package/dist/native/hooks/useListUrlState.js +1 -0
- package/dist/native/i18n/translation.js +1 -0
- package/dist/native/index.js +1 -0
- package/dist/native/layout.js +1 -0
- package/dist/native/lib/keyboard.js +1 -0
- package/dist/native/lib/utils.js +1 -0
- package/dist/native/list.js +1 -0
- package/dist/native/platform/useColorScheme.js +1 -0
- package/dist/native/platform/useReducedMotion.js +1 -0
- package/dist/native/platform/useResponsive.js +1 -0
- package/dist/native/platform/withPlatformUI.js +1 -0
- package/dist/native/renderers/form-contract/renderer.js +1 -0
- package/dist/native/renderers/form-contract/rich-fields.js +1 -0
- package/dist/native/renderers/form-contract/shell.js +1 -0
- package/dist/native/renderers/form-contract/values.js +1 -0
- package/dist/native/renderers/form-contract.js +1 -0
- package/dist/native/renderers/index.js +1 -0
- package/dist/native/theme/contracts.js +1 -0
- package/dist/native/theme/index.js +1 -0
- package/dist/native/theme/runtime-resolvers.js +1 -0
- package/dist/native/theme/runtime.js +1 -0
- package/dist/native/theme/tailwind-config.js +1 -0
- package/dist/native/theme/tailwind-css.js +9 -0
- package/dist/native/theme/tailwind-variables.js +1 -0
- package/dist/native/theme/tailwind.js +1 -0
- package/dist/native/theme/tokenBridge.js +1 -0
- package/dist/native/theme/tokens.js +1 -0
- package/dist/native/theme/variants.js +1 -0
- package/dist/native/types/nativewind-env.d.js +0 -0
- package/dist/native/types/navigation.js +0 -0
- package/dist/native/typography.js +1 -0
- package/dist/renderers/form-contract/renderer.js +1 -1
- package/dist/renderers/form-contract/shell.d.ts +5 -0
- package/dist/renderers/form-contract/shell.js +1 -1
- package/dist/typography.d.ts +1 -0
- package/dist/typography.js +1 -0
- package/package.json +3052 -22
- package/dist/browser/components/atoms/ErrorState.mobile.js +0 -1
- package/dist/browser/components/visualization/VisualizationCard.mobile.js +0 -1
- package/dist/components/agent/ApprovalQueue.mobile.js +0 -1
- package/dist/components/atoms/Button.mobile.js +0 -1
- package/dist/components/atoms/ButtonLink.mobile.js +0 -1
- package/dist/components/atoms/Cta.mobile.js +0 -1
- package/dist/components/atoms/ErrorState.mobile.js +0 -1
- package/dist/components/atoms/Input.mobile.js +0 -1
- package/dist/components/atoms/LoaderCircular.mobile.js +0 -1
- package/dist/components/atoms/Textarea.mobile.js +0 -1
- package/dist/components/data-table/DataTable.mobile.js +0 -1
- package/dist/components/data-table/DataTableToolbar.mobile.js +0 -1
- package/dist/components/data-view/DataViewRenderer.mobile.js +0 -1
- package/dist/components/data-view/DataViewTable.mobile.js +0 -1
- package/dist/components/forms/controls/Autocomplete.mobile.js +0 -1
- package/dist/components/forms/controls/ChoiceControls.mobile.js +0 -1
- package/dist/components/forms/controls/Combobox.mobile.js +0 -1
- package/dist/components/forms/controls/DateTimeControls.mobile.js +0 -1
- package/dist/components/forms/controls/Field.mobile.js +0 -1
- package/dist/components/forms/controls/InputGroup.mobile.js +0 -1
- package/dist/components/forms/controls/InputOTP.mobile.js +0 -1
- package/dist/components/forms/controls/LoadingButton.mobile.js +0 -1
- package/dist/components/forms/controls/NativeSelect.mobile.js +0 -1
- package/dist/components/forms/controls/Select.mobile.js +0 -1
- package/dist/components/layout/Stack.mobile.js +0 -1
- package/dist/components/molecules/FiltersToolbar.mobile.js +0 -1
- package/dist/components/molecules/LoaderBlock.mobile.js +0 -1
- package/dist/components/molecules/SkeletonBlock/index.mobile.js +0 -1
- package/dist/components/molecules/SkeletonCircle/index.mobile.js +0 -1
- package/dist/components/molecules/SkeletonList/index.mobile.js +0 -1
- package/dist/components/native/BottomTabs.mobile.js +0 -1
- package/dist/components/native/FlatListScreen.mobile.js +0 -1
- package/dist/components/native/SheetMenu.mobile.js +0 -1
- package/dist/components/organisms/AppHeader.mobile.js +0 -1
- package/dist/components/organisms/EmptyDataList.mobile.js +0 -1
- package/dist/components/organisms/Header.mobile.js +0 -1
- package/dist/components/organisms/ListTablePage.mobile.js +0 -1
- package/dist/components/organisms/PageHeaderResponsive.mobile.js +0 -1
- package/dist/components/templates/lists/ListPageTemplate/index.mobile.js +0 -1
- package/dist/components/visualization/ComparisonView.mobile.js +0 -1
- package/dist/components/visualization/TimelineView.mobile.js +0 -1
- package/dist/components/visualization/VisualizationCard.mobile.js +0 -1
- package/dist/components/visualization/VisualizationGrid.mobile.js +0 -1
- package/dist/components/visualization/VisualizationRenderer.mobile.js +0 -1
- package/dist/platform/useColorScheme.mobile.js +0 -1
- package/dist/platform/useReducedMotion.mobile.js +0 -1
- package/dist/platform/useResponsive.mobile.js +0 -1
- /package/dist/components/agent/{ApprovalQueue.mobile.d.ts → ApprovalQueue.native.d.ts} +0 -0
- /package/dist/components/atoms/{Button.mobile.d.ts → Button.native.d.ts} +0 -0
- /package/dist/components/atoms/{Cta.mobile.d.ts → Cta.native.d.ts} +0 -0
- /package/dist/components/atoms/{ErrorState.mobile.d.ts → ErrorState.native.d.ts} +0 -0
- /package/dist/components/atoms/{Input.mobile.d.ts → Input.native.d.ts} +0 -0
- /package/dist/components/atoms/{LoaderCircular.mobile.d.ts → LoaderCircular.native.d.ts} +0 -0
- /package/dist/components/atoms/{Textarea.mobile.d.ts → Textarea.native.d.ts} +0 -0
- /package/dist/components/data-table/{DataTable.mobile.d.ts → DataTable.native.d.ts} +0 -0
- /package/dist/components/data-table/{DataTableToolbar.mobile.d.ts → DataTableToolbar.native.d.ts} +0 -0
- /package/dist/components/data-view/{DataViewRenderer.mobile.d.ts → DataViewRenderer.native.d.ts} +0 -0
- /package/dist/components/data-view/{DataViewTable.mobile.d.ts → DataViewTable.native.d.ts} +0 -0
- /package/dist/components/forms/controls/{Autocomplete.mobile.d.ts → Autocomplete.native.d.ts} +0 -0
- /package/dist/components/forms/controls/{ChoiceControls.mobile.d.ts → ChoiceControls.native.d.ts} +0 -0
- /package/dist/components/forms/controls/{Combobox.mobile.d.ts → Combobox.native.d.ts} +0 -0
- /package/dist/components/forms/controls/{DateTimeControls.mobile.d.ts → DateTimeControls.native.d.ts} +0 -0
- /package/dist/components/forms/controls/{DropdownMenu.mobile.d.ts → DropdownMenu.native.d.ts} +0 -0
- /package/dist/components/forms/controls/{Field.mobile.d.ts → Field.native.d.ts} +0 -0
- /package/dist/components/forms/controls/{InputGroup.mobile.d.ts → InputGroup.native.d.ts} +0 -0
- /package/dist/components/forms/controls/{InputOTP.mobile.d.ts → InputOTP.native.d.ts} +0 -0
- /package/dist/components/forms/controls/{LoadingButton.mobile.d.ts → LoadingButton.native.d.ts} +0 -0
- /package/dist/components/forms/controls/{NativeSelect.mobile.d.ts → NativeSelect.native.d.ts} +0 -0
- /package/dist/components/forms/controls/{Select.mobile.d.ts → Select.native.d.ts} +0 -0
- /package/dist/components/layout/{Stack.mobile.d.ts → Stack.native.d.ts} +0 -0
- /package/dist/components/molecules/{FiltersToolbar.mobile.d.ts → FiltersToolbar.native.d.ts} +0 -0
- /package/dist/components/molecules/{LoaderBlock.mobile.d.ts → LoaderBlock.native.d.ts} +0 -0
- /package/dist/components/molecules/SkeletonBlock/{index.mobile.d.ts → index.native.d.ts} +0 -0
- /package/dist/components/molecules/SkeletonCircle/{index.mobile.d.ts → index.native.d.ts} +0 -0
- /package/dist/components/molecules/SkeletonList/{index.mobile.d.ts → index.native.d.ts} +0 -0
- /package/dist/components/native/{BottomTabs.mobile.d.ts → BottomTabs.native.d.ts} +0 -0
- /package/dist/components/native/{FlatListScreen.mobile.d.ts → FlatListScreen.native.d.ts} +0 -0
- /package/dist/components/native/{SheetMenu.mobile.d.ts → SheetMenu.native.d.ts} +0 -0
- /package/dist/components/organisms/{AppSidebar.mobile.d.ts → AppSidebar.native.d.ts} +0 -0
- /package/dist/components/organisms/{EmptyDataList.mobile.d.ts → EmptyDataList.native.d.ts} +0 -0
- /package/dist/components/organisms/{Header.mobile.d.ts → Header.native.d.ts} +0 -0
- /package/dist/components/organisms/{ListTablePage.mobile.d.ts → ListTablePage.native.d.ts} +0 -0
- /package/dist/components/organisms/{PageHeaderResponsive.mobile.d.ts → PageHeaderResponsive.native.d.ts} +0 -0
- /package/dist/components/templates/lists/ListPageTemplate/{index.mobile.d.ts → index.native.d.ts} +0 -0
- /package/dist/components/visualization/{ComparisonView.mobile.d.ts → ComparisonView.native.d.ts} +0 -0
- /package/dist/components/visualization/{TimelineView.mobile.d.ts → TimelineView.native.d.ts} +0 -0
- /package/dist/components/visualization/{VisualizationCard.mobile.d.ts → VisualizationCard.native.d.ts} +0 -0
- /package/dist/components/visualization/{VisualizationGrid.mobile.d.ts → VisualizationGrid.native.d.ts} +0 -0
- /package/dist/components/visualization/{VisualizationRenderer.mobile.d.ts → VisualizationRenderer.native.d.ts} +0 -0
- /package/dist/{browser/components/agent/ApprovalQueue.mobile.js → native/components/agent/ApprovalQueue.native.js} +0 -0
- /package/dist/{browser/components/atoms/Button.mobile.js → native/components/atoms/Button.native.js} +0 -0
- /package/dist/{browser/components/atoms/Cta.mobile.js → native/components/atoms/Cta.native.js} +0 -0
- /package/dist/{browser/components/atoms/Input.mobile.js → native/components/atoms/Input.native.js} +0 -0
- /package/dist/{browser/components/atoms/LoaderCircular.mobile.js → native/components/atoms/LoaderCircular.native.js} +0 -0
- /package/dist/{browser/components/atoms/Textarea.mobile.js → native/components/atoms/Textarea.native.js} +0 -0
- /package/dist/{browser/components/data-table/DataTable.mobile.js → native/components/data-table/DataTable.native.js} +0 -0
- /package/dist/{browser/components/data-view/DataViewRenderer.mobile.js → native/components/data-view/DataViewRenderer.native.js} +0 -0
- /package/dist/{browser/components/data-view/DataViewTable.mobile.js → native/components/data-view/DataViewTable.native.js} +0 -0
- /package/dist/{browser/components/forms/controls/Autocomplete.mobile.js → native/components/forms/controls/Autocomplete.native.js} +0 -0
- /package/dist/{browser/components/forms/controls/ChoiceControls.mobile.js → native/components/forms/controls/ChoiceControls.native.js} +0 -0
- /package/dist/{browser/components/forms/controls/Combobox.mobile.js → native/components/forms/controls/Combobox.native.js} +0 -0
- /package/dist/{browser/components/forms/controls/DateTimeControls.mobile.js → native/components/forms/controls/DateTimeControls.native.js} +0 -0
- /package/dist/{browser/components/forms/controls/DropdownMenu.mobile.js → native/components/forms/controls/DropdownMenu.native.js} +0 -0
- /package/dist/{browser/components/forms/controls/Field.mobile.js → native/components/forms/controls/Field.native.js} +0 -0
- /package/dist/{browser/components/forms/controls/InputGroup.mobile.js → native/components/forms/controls/InputGroup.native.js} +0 -0
- /package/dist/{browser/components/forms/controls/InputOTP.mobile.js → native/components/forms/controls/InputOTP.native.js} +0 -0
- /package/dist/{browser/components/forms/controls/LoadingButton.mobile.js → native/components/forms/controls/LoadingButton.native.js} +0 -0
- /package/dist/{browser/components/forms/controls/NativeSelect.mobile.js → native/components/forms/controls/NativeSelect.native.js} +0 -0
- /package/dist/{browser/components/forms/controls/Select.mobile.js → native/components/forms/controls/Select.native.js} +0 -0
- /package/dist/{browser/components/layout/Stack.mobile.js → native/components/layout/Stack.native.js} +0 -0
- /package/dist/{browser/components/organisms/AppSidebar.mobile.js → native/components/molecules/CodeBlock/types.js} +0 -0
- /package/dist/{components/organisms/AppSidebar.mobile.js → native/components/molecules/CommandTabs/types.js} +0 -0
- /package/dist/{browser/components/molecules/FiltersToolbar.mobile.js → native/components/molecules/FiltersToolbar.native.js} +0 -0
- /package/dist/{browser/components/molecules/SkeletonBlock/index.mobile.js → native/components/molecules/SkeletonBlock/index.native.js} +0 -0
- /package/dist/{browser/components/molecules/SkeletonCircle/index.mobile.js → native/components/molecules/SkeletonCircle/index.native.js} +0 -0
- /package/dist/{browser/components/molecules/SkeletonList/index.mobile.js → native/components/molecules/SkeletonList/index.native.js} +0 -0
- /package/dist/{browser/components/native/BottomTabs.mobile.js → native/components/native/BottomTabs.native.js} +0 -0
- /package/dist/{browser/components/native/FlatListScreen.mobile.js → native/components/native/FlatListScreen.native.js} +0 -0
- /package/dist/{browser/components/native/SheetMenu.mobile.js → native/components/native/SheetMenu.native.js} +0 -0
- /package/dist/{browser/components/organisms/EmptyDataList.mobile.js → native/components/organisms/EmptyDataList.native.js} +0 -0
- /package/dist/{browser/components/organisms/Header.mobile.js → native/components/organisms/Header.native.js} +0 -0
- /package/dist/{browser/components/organisms/ListTablePage.mobile.js → native/components/organisms/ListTablePage.native.js} +0 -0
- /package/dist/{browser/components/visualization/VisualizationGrid.mobile.js → native/components/visualization/VisualizationGrid.native.js} +0 -0
- /package/dist/{browser/components/visualization/VisualizationRenderer.mobile.js → native/components/visualization/VisualizationRenderer.native.js} +0 -0
- /package/dist/{browser/platform/useColorScheme.mobile.js → native/platform/useColorScheme.native.js} +0 -0
- /package/dist/{browser/platform/useReducedMotion.mobile.js → native/platform/useReducedMotion.native.js} +0 -0
- /package/dist/{browser/platform/useResponsive.mobile.js → native/platform/useResponsive.native.js} +0 -0
- /package/dist/platform/{useColorScheme.mobile.d.ts → useColorScheme.native.d.ts} +0 -0
- /package/dist/platform/{useReducedMotion.mobile.d.ts → useReducedMotion.native.d.ts} +0 -0
- /package/dist/platform/{useResponsive.mobile.d.ts → useResponsive.native.d.ts} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as t,jsxs as l}from"react/jsx-runtime";import*as N from"react";import{Linking as g,Text as n,View as c}from"react-native";import{Button as i}from"../atoms/Button.mobile";export function ErrorState({title:m="Something went wrong",description:o,icon:p,onRetry:r,retryLabel:s="Retry",supportHref:e,onContactSupport:a,supportLabel:u="Contact support",className:R}){const d=N.useCallback(()=>{if(e)g.openURL(e).catch(()=>{});else a?.()},[e,a]);return l(c,{className:["items-center p-6",R].filter(Boolean).join(" "),children:[p,t(n,{className:"font-medium text-lg",children:m}),o?t(n,{className:"mt-1 text-base text-muted-foreground",children:o}):null,l(c,{className:"mt-3 flex-row items-center gap-2",children:[r?t(i,{onPress:r,children:s}):null,t(i,{variant:"ghost",onPress:d,children:u})]})]})}export default ErrorState;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as q,jsxs as J}from"react/jsx-runtime";import{Card as U,CardContent as W,CardDescription as X,CardFooter as Y,CardHeader as Z,CardTitle as $}from"@contractspec/lib.ui-kit/ui/card";import{cn as k}from"@contractspec/lib.ui-kit/ui/utils";import{resolveTranslationNode as F,resolveTranslationString as H,useDesignSystemTranslation as b}from"../../i18n/translation";import{VisualizationRenderer as z}from"./VisualizationRenderer.mobile";export function VisualizationCard({spec:E,data:K,title:L,description:M,footer:G,className:O,contentClassName:P,height:Q}){const I=b(),A=L??F(E.meta.title,I),B=M??H(E.meta.description,I);return J(U,{className:O,children:[A||B?J(Z,{children:[A?q($,{children:A}):null,B?q(X,{children:B}):null]}):null,q(W,{className:k(A||B?"pt-0":"",P),children:q(z,{data:K,height:Q,spec:E})}),G?q(Y,{children:G}):null]})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as E,jsxs as C}from"react/jsx-runtime";import{useContractTable as W}from"@contractspec/lib.presentation-runtime-react";import{Badge as X}from"@contractspec/lib.ui-kit/ui/badge";import{HStack as Y}from"@contractspec/lib.ui-kit/ui/stack";import{Text as L}from"@contractspec/lib.ui-kit/ui/text";import{Button as O}from"../atoms/Button";import{DataTable as Z}from"../data-table/DataTable";export function ApprovalQueue({title:F="Approvals",description:G="Requests escalated by AI agents",requests:I,onApprove:J,onReject:K,className:P,emptyState:Q=E(L,{className:"text-muted-foreground",children:"Nothing waiting for review."})}){const U=W({data:I,columns:[{id:"agent",header:"Agent",accessor:(z)=>z.agentId,cell:({item:z})=>E(L,{className:"font-medium",children:z.agentId})},{id:"reason",header:"Reason",accessor:(z)=>z.reason,cell:({item:z})=>E(L,{className:"max-w-sm",children:z.reason})},{id:"tenant",header:"Tenant",accessor:(z)=>z.tenantId??"\u2014"},{id:"requested",header:"Requested",accessor:(z)=>h(z.requestedAt)},{id:"status",header:"Status",accessor:(z)=>z.status,cell:({item:z})=>E(X,{variant:$(z.status),children:z.status})},{id:"actions",header:"Actions",canSort:!1,canHide:!1,canResize:!1,cell:({item:z})=>C(Y,{gap:"sm",children:[E(O,{size:"sm",variant:"secondary",disabled:z.status!=="pending",onPress:()=>K?.(z),children:"Reject"}),E(O,{size:"sm",disabled:z.status!=="pending",onPress:()=>J?.(z),children:"Approve"})]})}]});return E(Z,{controller:U,title:F,description:G,className:P,emptyState:Q})}function $(F){switch(F){case"approved":return"default";case"rejected":return"destructive";default:return"secondary"}}function h(F){const G=new Intl.RelativeTimeFormat(void 0,{numeric:"auto"}),I=Math.round((Date.now()-new Date(F).getTime())/60000);if(Math.abs(I)<60)return G.format(-I,"minute");const J=Math.round(I/60);if(Math.abs(J)<24)return G.format(-J,"hour");const K=Math.round(J/24);return G.format(-K,"day")}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as q,jsxs as L}from"react/jsx-runtime";import{Button as H}from"@contractspec/lib.ui-kit/ui/button";import{HStack as S}from"@contractspec/lib.ui-kit/ui/stack";import{Text as k}from"@contractspec/lib.ui-kit/ui/text";import{ActivityIndicator as G}from"react-native";import{useThemedPrimitive as A,useTranslatedNode as B,useTranslatedText as K}from"../primitives/themed";export function Button({children:J,loading:C,loadingText:M,spinnerPlacement:E="start",disabled:O,className:Q,componentKey:R,themeVariant:U,labelI18n:W,ariaLabelI18n:X,...z}){const F=A({defaultComponentKey:"Button",componentKey:R,themeVariant:U,className:Q}),Y=B(),Z=K(),$=Boolean(O||C),D=C?L(S,{className:"items-center gap-x-2",children:[E==="start"?q(G,{size:"small",color:z.variant==="outline"?"#6b7280":"#ffffff"}):null,q(k,{children:M||"Loading\u2026"}),E==="end"?q(G,{size:"small",color:z.variant==="outline"?"#6b7280":"#ffffff"}):null]}):Y(W??J);return q(H,{...F.props,disabled:$,className:F.className,accessibilityLabel:Z(X),...z,children:D})}export default Button;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var {require}=import.meta;import{jsx as U}from"react/jsx-runtime";import*as S from"react";import{Linking as K}from"react-native";import{Button as T}from"./Button.mobile";export function ButtonLink({href:q,replace:D,loading:F,disabled:G,onPressIn:M,onPressOut:N,...H}){const J=Boolean(G||F),Q=S.useCallback(()=>{if(J)return;try{const A=require("expo-router");if(A?.Link){const z=A.router??A.useRouter?.();if(z?.replace&&D)z.replace(q);else if(z?.push)z.push(q);else K.openURL(q);return}}catch{}K.openURL(q)},[J,q,D]);return U(T,{...H,onPress:Q,loading:F,disabled:G,onPressIn:M,onPressOut:N,children:H.children})}export default ButtonLink;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var {require}=import.meta;import{jsx as K}from"react/jsx-runtime";import{Button as J}from"./Button";export function Cta({capture:D,ctaName:q,size:E="touch",onClick:F,children:G,ref:H,...I}){return K(J,{size:E,onPress:()=>{try{if(q){if(D)D(q);let v;try{v=require("posthog-react-native").default??require("posthog-react-native")}catch{}if(v&&typeof v.capture==="function")v.capture("cta_click",{cta:q});else{const A=globalThis.posthog;if(A&&typeof A.capture==="function")A.capture("cta_click",{cta:q})}}}catch{}F?.()},ref:H,...I,children:G})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as t,jsxs as l}from"react/jsx-runtime";import*as N from"react";import{Linking as g,Text as n,View as c}from"react-native";import{Button as i}from"../atoms/Button.mobile";export function ErrorState({title:m="Something went wrong",description:o,icon:p,onRetry:r,retryLabel:s="Retry",supportHref:e,onContactSupport:a,supportLabel:u="Contact support",className:R}){const d=N.useCallback(()=>{if(e)g.openURL(e).catch(()=>{});else a?.()},[e,a]);return l(c,{className:["items-center p-6",R].filter(Boolean).join(" "),children:[p,t(n,{className:"font-medium text-lg",children:m}),o?t(n,{className:"mt-1 text-base text-muted-foreground",children:o}):null,l(c,{className:"mt-3 flex-row items-center gap-2",children:[r?t(i,{onPress:r,children:s}):null,t(i,{variant:"ghost",onPress:d,children:u})]})]})}export default ErrorState;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as C}from"react/jsx-runtime";import{Input as _}from"@contractspec/lib.ui-kit/ui/input";import{mapKeyboardToNative as j}from"../../lib/keyboard";import{useThemedTextField as B}from"../primitives/control";export function Input({value:z,defaultValue:A,onChange:D,onSubmit:E,onFocus:G,onBlur:H,placeholder:J,disabled:M,readOnly:P,maxLength:Q,className:R,keyboard:U,componentKey:W,themeVariant:X,placeholderI18n:Y,ariaLabelI18n:Z,...$}){const w=j(U),q=B({defaultComponentKey:"Input",componentKey:W,themeVariant:X,className:R,placeholder:J,placeholderI18n:Y,ariaLabelI18n:Z});return C(_,{...q.themed.props,...$,className:q.themed.className,value:z,defaultValue:A,onChangeText:D,onSubmitEditing:E,onFocus:G,onBlur:H,placeholder:q.placeholder,accessibilityLabel:q.ariaLabel,editable:!M&&!P,maxLength:Q,...w})}export default Input;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as t,jsxs as n}from"react/jsx-runtime";import{ActivityIndicator as l,Text as o,View as i}from"react-native";function m(e){switch(e){case"sm":return"small";case"lg":return"large";case"md":default:return"small"}}export function LoaderCircular({size:e="md",label:r,className:a}){return n(i,{className:["inline-flex flex-row items-center gap-2",a].filter(Boolean).join(" "),children:[t(l,{size:m(e)}),r?t(o,{className:"text-base text-muted-foreground",children:r}):null]})}export default LoaderCircular;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as C}from"react/jsx-runtime";import{Textarea as _}from"@contractspec/lib.ui-kit/ui/textarea";import{mapKeyboardToNative as j}from"../../lib/keyboard";import{useThemedTextField as B}from"../primitives/control";export function Textarea({value:z,defaultValue:A,onChange:D,onSubmit:E,onFocus:G,onBlur:H,placeholder:J,disabled:M,readOnly:P,maxLength:Q,className:R,keyboard:U,componentKey:W,themeVariant:X,placeholderI18n:Y,ariaLabelI18n:Z,...$}){const w=j(U),q=B({defaultComponentKey:"Textarea",componentKey:W,themeVariant:X,className:R,placeholder:J,placeholderI18n:Y,ariaLabelI18n:Z});return C(_,{...q.themed.props,...$,className:q.themed.className,value:z,defaultValue:A,onChangeText:D,onSubmitEditing:E,onFocus:G,onBlur:H,placeholder:q.placeholder,accessibilityLabel:q.ariaLabel,editable:!M&&!P,maxLength:Q,...w})}export default Textarea;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as q,jsxs as E}from"react/jsx-runtime";import{Card as X,CardContent as Y,CardDescription as Z,CardHeader as $,CardTitle as K}from"@contractspec/lib.ui-kit/ui/card";import{DataTable as V}from"@contractspec/lib.ui-kit/ui/data-table";import{HStack as v,VStack as H}from"@contractspec/lib.ui-kit/ui/stack";import{resolveTranslationNode as I,useDesignSystemTranslation as P}from"../../i18n/translation";export function DataTable({controller:J,title:z,description:B,className:L,headerActions:F,toolbar:M,footer:O,emptyState:Q,loading:U,onRowPress:W}){const G=P();return E(X,{className:L,children:[z||B||F?q($,{children:E(v,{justify:"between",align:"start",children:[E(H,{gap:"xs",children:[z?q(K,{children:I(z,G)}):null,B?q(Z,{children:I(B,G)}):null]}),F]})}):null,q(Y,{children:q(V,{controller:J,toolbar:M,footer:O,emptyState:Q,loading:U,onRowPress:W})})]})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as A,jsxs as z}from"react/jsx-runtime";import{HStack as $}from"@contractspec/lib.ui-kit/ui/stack";import{Text as f}from"@contractspec/lib.ui-kit/ui/text";import{Button as k}from"../atoms/Button";import{FiltersToolbar as B}from"../molecules/FiltersToolbar.mobile";import{getHiddenDataColumns as p,showHiddenDataColumns as w}from"./DataTableToolbar.shared";export function DataTableToolbar({controller:q,className:J,searchPlaceholder:K,searchValue:L,onSearchChange:O,onSearchSubmit:Q,debounceMs:R,activeChips:U=[],onClearAll:W,actionsStart:X,actionsEnd:Y,selectionSummary:G}){const I=p(q),Z=G===void 0&&q.selectionMode!=="none"?z(f,{className:"text-muted-foreground text-sm",children:["Selected ",q.selectedRowIds.length]}):G;return A(B,{className:J,searchPlaceholder:K,searchValue:L,onSearchChange:O,onSearchSubmit:Q,debounceMs:R,activeChips:U,onClearAll:W,right:z($,{className:"flex flex-wrap items-center justify-end gap-2",children:[Z,I.length?z(k,{variant:"outline",size:"sm",onPress:()=>w(q),children:["Show ",I.length," Hidden"]}):null,Y]}),children:X})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as G,jsxs as d,Fragment as w}from"react/jsx-runtime";import{Pagination as D}from"@contractspec/lib.ui-kit/ui/atoms/Pagination";import{VStack as j}from"@contractspec/lib.ui-kit/ui/stack";import{Text as _}from"@contractspec/lib.ui-kit/ui/text";import*as k from"react";import{resolveTranslationString as F,useDesignSystemTranslation as N}from"../../i18n/translation";import{FiltersToolbar as x}from"../molecules/FiltersToolbar";import{DataViewDetail as A}from"./DataViewDetail";import{DataViewList as T}from"./DataViewList";import{DataViewTable as C}from"./DataViewTable";export function DataViewRenderer({spec:E,items:M=[],item:Y=null,className:I,renderActions:Q,onSelect:U,onRowClick:Z,toolbar:$,loading:q,headerActions:O,emptyState:K,footer:z,search:V,onSearchChange:L,filters:J,onFilterChange:P,pagination:H,onPageChange:R}){const W=N(),u=k.useMemo(()=>{switch(E.view.kind){case"list":return G(T,{spec:E,items:M,className:I,renderActions:Q,onSelect:U,emptyState:K});case"table":return G(C,{spec:E,items:M,className:I,onRowClick:Z,toolbar:$,loading:q,emptyState:K,headerActions:O,footer:z});case"detail":return G(A,{spec:E,item:Y,className:I,emptyState:K,headerActions:O});case"grid":{const B=E.view,X={kind:"list",layout:"card",fields:B.fields,filters:B.filters,actions:B.actions,primaryField:B.primaryField,secondaryFields:B.secondaryFields},v={...E,view:X};return G(T,{spec:v,items:M,className:I,renderActions:Q,onSelect:U,emptyState:K})}default:return G(_,{className:I,children:F("Unsupported data view kind",W)})}},[E,M,Y,I,Q,U,Z,$,q,O,K,z,W]);if(!(E.view.kind==="list"||E.view.kind==="table"||E.view.kind==="grid"))return G(w,{children:u});return d(j,{gap:"lg",children:[(E.view.filters?.length||L)&&G(x,{searchValue:V,onSearchChange:L,searchPlaceholder:F("Search...",W)??"Search...",activeChips:J?Object.entries(J).map(([B,X])=>({key:B,label:`${B}: ${X}`,onRemove:()=>{if(J){const{[B]:v,...b}=J;P?.(b)}}})):[],onClearAll:J&&Object.keys(J).length>0?()=>P?.({}):void 0,right:E.view.kind==="table"?void 0:O}),u,H&&H.total>0?G(D,{currentPage:H.page,totalPages:Math.ceil(H.total/H.pageSize),totalItems:H.total,itemsPerPage:H.pageSize,onPageChange:(B)=>R?.(B),onItemsPerPageChange:(B)=>{R?.(1)},showItemsPerPage:!1}):null]})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as E,jsxs as D}from"react/jsx-runtime";import{useDataViewTable as A}from"@contractspec/lib.presentation-runtime-react";import{HStack as F,VStack as h}from"@contractspec/lib.ui-kit/ui/stack";import{Text as X}from"@contractspec/lib.ui-kit/ui/text";import*as C from"react";import{resolveTranslationString as W,useDesignSystemTranslation as K}from"../../i18n/translation";import{DataTable as R}from"../data-table/DataTable";import{DataViewFormattedValue as Y,getAtPath as b}from"./utils";export function DataViewTable({spec:q,items:J,className:L,onRowClick:G,toolbar:O,loading:Z,emptyState:$,headerActions:B,footer:H}){const Q=K();if(q.view.kind!=="table")throw Error(`DataViewTable received view kind "${q.view.kind}", expected "table".`);const M=q.view,P=C.useMemo(()=>(M.rowExpansion?.fields??[]).map((z)=>M.fields.find((I)=>I.key===z)).filter((z)=>Boolean(z)),[M.fields,M.rowExpansion?.fields]),N=A({spec:q,data:J,renderValue:({value:z,field:I})=>E(Y,{value:z,format:I.format}),renderExpandedContent:P.length>0?({item:z,fields:I})=>E(h,{gap:"sm",className:"py-2",children:I.map((U)=>D(F,{justify:"between",align:"start",children:[E(X,{className:"font-medium text-muted-foreground text-sm",children:W(U.label,Q)}),E(X,{className:"text-right text-sm",children:E(DisplayValue,{item:z,fields:I,fieldKey:U.key})})]},U.key))}):void 0});return E(R,{controller:N,className:L,title:W(q.meta.title,Q),description:W(q.meta.description,Q),toolbar:O,loading:Z,headerActions:B,emptyState:$,footer:H,onRowPress:G?(z)=>G(z.original):void 0})}function g(q,J){return q.find((L)=>L.key===J)}export function DisplayValue({item:q,fields:J,fieldKey:L}){const G=g(J,L);if(!G)return"";const O=b(q,G.dataPath);return E(Y,{value:O,format:G.format})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as A,jsxs as S}from"react/jsx-runtime";import{Text as J}from"@contractspec/lib.ui-kit/ui/text";import{Button as U}from"../../atoms/Button";import{Input as R}from"../../atoms/Input";import{HStack as B,VStack as W}from"../../layout/Stack";import{useThemedPrimitive as I,useTranslatedText as k}from"../../primitives/themed";function X(D){return typeof D==="string"?D:String(D??"")}export function Autocomplete({query:D,options:L,selectedOptions:M,onQueryChange:Y,onSelectOption:Z,onRemoveOption:$,multiple:H,placeholder:P,placeholderI18n:g,readOnly:F,disabled:G,className:q,componentKey:C,themeVariant:K,emptyText:N="No results found."}){const E=k(),Q=I({defaultComponentKey:"Autocomplete",componentKey:C,themeVariant:K,className:q});return S(W,{gap:"sm",className:Q.className,children:[A(R,{value:D,onChange:(z)=>{if(typeof z==="string")Y?.(z)},placeholder:E(g??P),disabled:G||F}),A(W,{gap:"xs",children:L.length?L.map((z)=>A(U,{variant:"ghost",onPress:()=>Z?.(z),disabled:G||z.disabled||F,children:A(J,{children:E(z.labelI18n)})},X(z.value))):A(J,{children:E(N)})}),M.length?A(B,{gap:"sm",wrap:"wrap",children:M.map((z)=>A(U,{variant:"outline",size:"sm",onPress:()=>$?.(z),disabled:!H||F||G,children:A(J,{children:E(z.labelI18n)})},`selected-${X(z.value)}`))}):null]})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as A,jsxs as R}from"react/jsx-runtime";import{Checkbox as Y}from"@contractspec/lib.ui-kit/ui/checkbox";import{Label as Z}from"@contractspec/lib.ui-kit/ui/label";import{RadioGroup as $,RadioGroupItem}from"@contractspec/lib.ui-kit/ui/radio-group";import{Switch as H}from"@contractspec/lib.ui-kit/ui/switch";import{HStack as L,VStack as G}from"../../layout/Stack";import{optionValue as W}from"../../primitives/control";import{useThemedPrimitive as Q,useTranslatedText as P}from"../../primitives/themed";export function Checkbox({componentKey:B,themeVariant:z,className:D,checked:E,onCheckedChange:F,...J}){const q=Q({defaultComponentKey:"Checkbox",componentKey:B,themeVariant:z,className:D});return A(Y,{...q.props,...J,className:q.className,checked:Boolean(E),onCheckedChange:(M)=>F?.(Boolean(M))})}export function Switch({componentKey:B,themeVariant:z,className:D,checked:E,onCheckedChange:F,...J}){const q=Q({defaultComponentKey:"Switch",componentKey:B,themeVariant:z,className:D});return A(H,{...q.props,...J,className:q.className,checked:Boolean(E),onCheckedChange:(M)=>F?.(Boolean(M))})}export function RadioGroup({options:B,value:z,onValueChange:D,disabled:E,componentKey:F,themeVariant:J,className:q}){const M=P(),X=Q({defaultComponentKey:"RadioGroup",componentKey:F,themeVariant:J,className:q});return A($,{value:z==null?"":W(z),onValueChange:(O)=>D?.(O),disabled:E,className:X.className,children:A(G,{gap:"sm",children:B?.map((O)=>{const U=W(O.value);return R(L,{gap:"sm",align:"center",children:[A(RadioGroupItem,{value:U,disabled:O.disabled}),A(Z,{children:M(O.labelI18n)})]},U)})})})}export{RadioGroupItem};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export{Autocomplete as Combobox}from"./Autocomplete";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as J}from"react/jsx-runtime";import{DatePicker as Q}from"@contractspec/lib.ui-kit/ui/date-picker";import{DateRangePicker as S}from"@contractspec/lib.ui-kit/ui/date-range-picker";import{DateTimePicker as U}from"@contractspec/lib.ui-kit/ui/datetime-picker";import{TimePicker as W}from"@contractspec/lib.ui-kit/ui/time-picker";import{useThemedPrimitive as H,useTranslatedText as L}from"../../primitives/themed";export function DatePicker({componentKey:z,themeVariant:A,placeholder:B,placeholderI18n:C,className:q,...F}){const G=L(),E=H({defaultComponentKey:"DatePicker",componentKey:z,themeVariant:A,className:q});return J(Q,{...E.props,...F,className:E.className,placeholder:G(C??B)})}export function TimePicker({componentKey:z,themeVariant:A,placeholder:B,placeholderI18n:C,className:q,...F}){const G=L(),E=H({defaultComponentKey:"TimePicker",componentKey:z,themeVariant:A,className:q});return J(W,{...E.props,...F,className:E.className,placeholder:G(C??B)})}export function DateTimePicker({componentKey:z,themeVariant:A,datePlaceholder:B,timePlaceholder:C,datePlaceholderI18n:q,timePlaceholderI18n:F,className:G,...E}){const M=L(),O=H({defaultComponentKey:"DateTimePicker",componentKey:z,themeVariant:A,className:G});return J(U,{...O.props,...E,className:O.className,datePlaceholder:M(q??B),timePlaceholder:M(F??C)})}export function DateRangePicker({componentKey:z,themeVariant:A,className:B,...C}){const q=H({defaultComponentKey:"DateRangePicker",componentKey:z,themeVariant:A,className:B});return J(S,{...q.props,...C,className:q.className})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export{Field,FieldContent,FieldDescription,FieldError,FieldGroup,FieldLabel,FieldLegend,FieldSeparator,FieldSet}from"./Field";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export{Text as InputGroupText}from"@contractspec/lib.ui-kit/ui/text";export{Button as InputGroupButton}from"../../atoms/Button";export{Input as InputGroupInput}from"../../atoms/Input";export{Textarea as InputGroupTextarea}from"../../atoms/Textarea";export{HStack as InputGroup,HStack as InputGroupAddon}from"../../layout/Stack";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export{Input as InputOTP}from"../../atoms/Input";export{Box as InputOTPSlot,Box as InputOTPSeparator,HStack as InputOTPGroup}from"../../layout/Stack";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as S}from"react/jsx-runtime";import{LoadingButton as M}from"@contractspec/lib.ui-kit/ui/loading-button";import{useThemedPrimitive as O,useTranslatedNode as Q,useTranslatedText as R}from"../../primitives/themed";export function LoadingButton({componentKey:z,themeVariant:A,className:C,children:D,loadingText:E,labelI18n:F,...G}){const q=O({defaultComponentKey:"LoadingButton",componentKey:z,themeVariant:A,className:C}),H=Q(),J=R();return S(M,{...q.props,...G,className:q.className,loadingText:J(E),children:H(F??D)})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export{Select as NativeSelect,SelectGroup as NativeSelectOptGroup,SelectItem as NativeSelectOption}from"./Select";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as B,jsxs as $}from"react/jsx-runtime";import{Select as X,SelectContent,SelectGroup,SelectItem,SelectTrigger,SelectValue}from"@contractspec/lib.ui-kit/ui/select";import{useThemedPrimitive as Y,useTranslatedText as Z}from"../../primitives/themed";function A(z){return typeof z==="string"?z:String(z??"")}export function Select({options:z,value:D,onChange:F,placeholder:H,disabled:J,className:L,componentKey:M,themeVariant:O,placeholderI18n:Q}){const E=Z(),U=Y({defaultComponentKey:"Select",componentKey:M,themeVariant:O,className:L});return $(X,{value:D==null?void 0:{value:A(D),label:A(D)},onValueChange:(q)=>F?.(q?.value),children:[B(SelectTrigger,{disabled:J,className:U.className,children:B(SelectValue,{placeholder:E(Q??H)??""})}),B(SelectContent,{children:B(SelectGroup,{children:z?.map((q,W)=>B(SelectItem,{value:A(q.value),label:E(q.labelI18n)??A(q.labelI18n),disabled:q.disabled},`${A(q.value)}-${W}`))})})]})}export{SelectContent,SelectGroup,SelectItem,SelectTrigger,SelectValue};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as E}from"react/jsx-runtime";import{Box as F,HStack as G,VStack as I}from"@contractspec/lib.ui-kit/ui/stack";import{useThemedPrimitive as D}from"../primitives/themed";export function Box({componentKey:q,themeVariant:z,className:A,...C}){const g=D({defaultComponentKey:"Box",componentKey:q,themeVariant:z,className:A});return E(F,{...g.props,...C,className:g.className})}export function HStack({componentKey:q,themeVariant:z,className:A,...C}){const g=D({defaultComponentKey:"HStack",componentKey:q,themeVariant:z,className:A});return E(G,{...g.props,...C,className:g.className})}export function VStack({componentKey:q,themeVariant:z,className:A,...C}){const g=D({defaultComponentKey:"VStack",componentKey:q,themeVariant:z,className:A});return E(I,{...g.props,...C,className:g.className})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as E,jsxs as F}from"react/jsx-runtime";import{HStack as L,VStack as P}from"@contractspec/lib.ui-kit/ui/stack";import*as O from"react";import{Button as T}from"../atoms/Button";import{Input as Q}from"../atoms/Input";export function FiltersToolbar({className:Y,children:Z,right:$,searchPlaceholder:I,searchValue:G,onSearchChange:D,onSearchSubmit:N,debounceMs:U=250,activeChips:W=[],onClearAll:J}){const[K,X]=O.useState(G??"");O.useEffect(()=>{X(G??"")},[G]);O.useEffect(()=>{if(!D)return;const z=setTimeout(()=>D(K),U);return()=>clearTimeout(z)},[K,U,D]);return F(P,{className:Y,children:[F(L,{className:"items-center gap-2",children:[D?F(L,{className:"flex-1 items-center gap-2",children:[E(Q,{value:K,onChange:(z)=>X(z.target.value),placeholder:I,keyboard:{kind:"search"}}),E(T,{variant:"outline",onPress:()=>N?.(),children:"Rechercher"})]}):null,Z,$]}),(W.length>0||J)&&F(L,{className:"mt-2 flex flex-wrap items-center gap-2",children:[W.map((z)=>E(T,{size:"sm",variant:"secondary",onPress:z.onRemove,children:z.label},z.key)),J?E(T,{size:"sm",variant:"ghost",onPress:J,children:"Effacer les filtres"}):null]})]})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as e,jsxs as m}from"react/jsx-runtime";import{Text as c,View as o}from"react-native";import{LoaderCircular as i}from"../atoms/LoaderCircular.mobile";export function LoaderBlock({label:r,description:t,className:a,size:l="md"}){return e(o,{className:["items-center justify-center p-6",a].filter(Boolean).join(" "),children:m(o,{className:"flex-row items-center gap-3",children:[e(i,{size:l,label:r}),t?e(c,{className:"text-base text-muted-foreground",children:t}):null]})})}export default LoaderBlock;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as d}from"react/jsx-runtime";import{View as t}from"react-native";export function SkeletonBlock({w:l="w-full",h:e="h-4",rounded:o="md",className:r}){return d(t,{className:[l,e,o==="full"?"rounded-full":o==="lg"?"rounded-lg":o==="sm"?"rounded-xs":"rounded-md","bg-muted",r].filter(Boolean).join(" ")})}export default SkeletonBlock;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as l}from"react/jsx-runtime";import{View as r}from"react-native";export function SkeletonCircle({size:e=32,sizeClass:o,className:t}){if(o)return l(r,{className:["rounded-full bg-muted",o,t].filter(Boolean).join(" ")});return l(r,{className:["rounded-full bg-muted",t].filter(Boolean).join(" "),style:{width:e,height:e}})}export default SkeletonCircle;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as e}from"react/jsx-runtime";import{View as o}from"react-native";import{SkeletonBlock as p}from"../SkeletonBlock";export function SkeletonList({count:t=10,className:r}){return e(o,{className:r,children:Array.from({length:Math.max(1,t)}).map((i,m)=>e(o,{className:"mb-2",children:e(p,{h:"h-5",rounded:"md"})},m))})}export default SkeletonList;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as q,jsxs as E}from"react/jsx-runtime";import{cn as g}from"@contractspec/lib.ui-kit-web/ui/utils";import{Pressable as B,Text as C,View as D}from"react-native";export function BottomTabs({items:z,className:A}){return q(D,{className:g("flex flex-row items-stretch border-t bg-background",A),children:z.map((d)=>E(B,{className:g("flex-1 items-center justify-center py-2",d.active?"bg-muted":void 0),onPress:d.onPress,accessibilityRole:"tab",accessibilityState:{selected:!!d.active},accessibilityLabel:d.label,children:[d.icon,q(C,{className:g("mt-1 text-xs",d.active?"text-foreground":"text-muted-foreground"),children:d.label})]},d.key))})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as q,jsxs as R}from"react/jsx-runtime";import{VStack as K}from"@contractspec/lib.ui-kit/ui/stack";import{Text as b}from"@contractspec/lib.ui-kit/ui/text";import{cva as v}from"class-variance-authority";import{FlatList as I,RefreshControl as L}from"react-native";import{SafeAreaView as P}from"react-native-safe-area-context";const k=v("",{variants:{padding:{none:"",sm:"px-3 py-3",md:"px-4 py-4",lg:"px-5 py-5"}},defaultVariants:{padding:"none"}});export function FlatListScreen({children:M,data:O,renderItem:Q,header:z,className:T,contentClassName:U,edges:W=["top","left","right"],showsVerticalScrollIndicator:X=!1,keyboardShouldPersistTaps:Y="handled",onRefresh:B,refreshing:D=!1,emptyComponent:G,emptyText:Z="No items found",padding:$,...A}){const E=()=>{if(G)return G;return q(K,{align:"center",justify:"center",className:"py-20",children:q(b,{className:"text-center text-muted-foreground",children:Z})})},F=z?q(K,{className:[k({padding:$}),U].filter(Boolean).join(" "),children:z}):void 0;return R(P,{style:{flex:1},edges:W,children:[q(I,{data:O,renderItem:Q,keyExtractor:(H,N)=>{const J=H;return J?.id?.toString()||J?.key?.toString()||String(N)},showsVerticalScrollIndicator:X,keyboardShouldPersistTaps:Y,ListHeaderComponent:F,ListEmptyComponent:E,refreshing:D,refreshControl:B?q(L,{refreshing:D,onRefresh:B}):void 0,...A}),M]})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as q,jsxs as M}from"react/jsx-runtime";import{Dialog as F,DialogContent as G,DialogHeader as I,DialogTitle as J}from"@contractspec/lib.ui-kit-web/ui/dialog";import{Text as K,View as L}from"react-native";export function SheetMenu({open:A,onOpenChange:B,title:E="Menu",children:z}){return M(F,{open:A,onOpenChange:B,children:[q(I,{children:q(J,{children:E})}),q(G,{children:q(L,{className:"gap-2",children:typeof z==="string"?q(K,{children:z}):z})})]})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as d,jsxs as F}from"react/jsx-runtime";import{cn as K}from"@contractspec/lib.ui-kit/ui/utils";import*as L from"react";import{Pressable as Q,Text as E,View as q}from"react-native";import{BottomTabs as U}from"../native/BottomTabs.mobile";import{SheetMenu as W}from"../native/SheetMenu.mobile";export function AppHeader({logo:z,toolbarRight:G,className:H,menuContent:I,bottomTabs:A}){const[J,D]=L.useState(!1);return F(q,{className:K("border-b bg-background",H),children:[F(q,{className:"flex-row items-center justify-between px-3 py-2",children:[d(Q,{accessibilityLabel:"Open menu",onPress:()=>D(!0),children:d(E,{className:"text-lg",children:"\u2630"})}),d(q,{className:"px-2",children:typeof z==="string"?d(E,{className:"font-bold text-xl",children:z}):z}),d(q,{className:"flex-row items-center gap-2",children:G})]}),A&&A.length>0&&d(U,{items:A}),d(W,{open:J,onOpenChange:D,title:"Menu",children:I})]})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as g,jsxs as F}from"react/jsx-runtime";import{Empty as K,EmptyContent as O,EmptyDescription as P,EmptyHeader as Q,EmptyMedia as R,EmptyTitle as U}from"@contractspec/lib.ui-kit/ui/empty";import{HStack as W}from"@contractspec/lib.ui-kit-web/ui/stack";import{Text as A}from"@contractspec/lib.ui-kit-web/ui/text";export function EmptyDataList({emptyListTitle:q,emptyListDescription:v,createButton:G,secondaryButton:X,media:z,mediaVariant:I="icon",learnMoreHref:Y,learnMoreLabel:Z,learnMoreEndIcon:$,onLearnMore:C,handleLearnMore:M,className:J}){return F(K,{className:J,children:[F(Q,{children:[z?g(R,{variant:I,children:z}):null,q?g(U,{children:g(A,{children:q})}):null,v?g(P,{children:g(A,{children:v})}):null]}),g(O,{children:g(W,{className:"gap-2",children:G})})]})}export default EmptyDataList;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as v}from"react/jsx-runtime";import{VStack as q}from"@contractspec/lib.ui-kit/ui/stack";export function Header({logo:h}){return v(q,{className:"px-3 py-2",children:h})}export const DesktopHeader=Header;export const MobileHeader=Header;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as z,jsxs as H}from"react/jsx-runtime";import{useContractTable as U}from"@contractspec/lib.presentation-runtime-react";import{VStack as F}from"@contractspec/lib.ui-kit/ui/stack";import{Text as G}from"@contractspec/lib.ui-kit/ui/text";import{cva as W}from"class-variance-authority";import{DataTable as X}from"../data-table/DataTable";const Y=W("",{variants:{density:{compact:"gap-3",comfortable:"gap-4 md:gap-5"}},defaultVariants:{density:"comfortable"}});export function ListTablePage({title:J,subtitle:B,items:K,columns:L,className:M,density:O,renderActions:E}){const P=U({data:K,columns:[...L.map((g,q)=>({id:`column.${q}`,header:g.header,cell:({item:Q,rowIndex:R})=>g.cell(Q,R)})),...E?[{id:"actions",header:"Actions",label:"Actions",canSort:!1,canHide:!1,canResize:!1,cell:({item:g,rowIndex:q})=>E(g,q)}]:[]]});return H(F,{className:[Y({density:O}),M].filter(Boolean).join(" "),children:[H(F,{className:"gap-1",children:[z(G,{className:"font-bold text-2xl md:text-3xl",children:J}),B?z(G,{className:"text-base text-muted-foreground",children:B}):null]}),z(X,{controller:P})]})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as F,jsxs as A}from"react/jsx-runtime";import{HStack as L,VStack as D}from"@contractspec/lib.ui-kit/ui/stack";import{Text as E}from"@contractspec/lib.ui-kit/ui/text";import{useResponsive as M}from"../../platform/useResponsive.mobile";export function PageHeaderResponsive({title:z,subtitle:q,actions:G,breadcrumb:I,spacing:J,className:K}){const{screen:B}=M(),C=J??(B==="desktop"?"lg":B==="tablet"?"md":"sm");return A(D,{className:[C==="lg"?"gap-4":C==="md"?"gap-3":"gap-2",K].filter(Boolean).join(" "),children:[I,A(L,{className:"items-start justify-between",children:[A(D,{className:"gap-1",children:[typeof z==="string"?F(E,{className:"font-bold text-2xl",children:z}):z,q?typeof q==="string"?F(E,{className:"text-base text-muted-foreground",children:q}):q:null]}),G]})]})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as k,jsxs as D,Fragment as q}from"react/jsx-runtime";import{FiltersToolbar as X}from"../../../molecules/FiltersToolbar.mobile";import{FlatListScreen as Y}from"../../../native/FlatListScreen.mobile";import{EmptyDataList as Z}from"../../../organisms/EmptyDataList.mobile";import{PageHeaderResponsive as $}from"../../../organisms/PageHeaderResponsive.mobile";export*from"./types";export function ListPageTemplate({children:E,title:A,description:B,breadcrumb:G,actions:J,searchPlaceholder:K,searchValue:M,onSearchChange:N,onSearchSubmit:O,isLoading:Q,data:U,renderItem:W,emptyProps:z}){return k(Y,{refreshing:Q,header:D(q,{children:[k($,{title:A,subtitle:B,breadcrumb:G,actions:J}),k(X,{searchPlaceholder:K,searchValue:M,onSearchChange:N,onSearchSubmit:O})]}),data:U??[],renderItem:W,showsVerticalScrollIndicator:!1,padding:"md",emptyComponent:z?k(Z,{...z}):void 0})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as A,jsxs as I}from"react/jsx-runtime";import{VStack as F}from"@contractspec/lib.ui-kit/ui/stack";import{Text as G}from"@contractspec/lib.ui-kit/ui/text";import{resolveTranslationNode as H,useDesignSystemTranslation as M}from"../../i18n/translation";import{VisualizationCard as O}from"./VisualizationCard.mobile";export function ComparisonView({items:J,title:K="Comparison",description:B,className:L}){const E=M();return I(F,{gap:"md",className:L,children:[I(F,{gap:"xs",children:[A(G,{className:"font-semibold text-xl",children:H(K,E)}),B?A(G,{className:"text-muted-foreground text-sm",children:H(B,E)}):null]}),J.map((q)=>A(O,{className:q.className,data:q.data,description:q.description,footer:q.footer,height:q.height,spec:q.spec,title:q.title},q.key))]})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as A,jsxs as I}from"react/jsx-runtime";import{VStack as F}from"@contractspec/lib.ui-kit/ui/stack";import{Text as G}from"@contractspec/lib.ui-kit/ui/text";import{resolveTranslationNode as H,useDesignSystemTranslation as M}from"../../i18n/translation";import{VisualizationCard as O}from"./VisualizationCard.mobile";export function TimelineView({items:J,title:K="Timeline",description:B,className:L}){const E=M();return I(F,{gap:"md",className:L,children:[I(F,{gap:"xs",children:[A(G,{className:"font-semibold text-xl",children:H(K,E)}),B?A(G,{className:"text-muted-foreground text-sm",children:H(B,E)}):null]}),J.map((q)=>A(O,{className:q.className,data:q.data,description:q.description,footer:q.footer,height:q.height,spec:q.spec,title:q.title},q.key))]})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as q,jsxs as J}from"react/jsx-runtime";import{Card as U,CardContent as W,CardDescription as X,CardFooter as Y,CardHeader as Z,CardTitle as $}from"@contractspec/lib.ui-kit/ui/card";import{cn as k}from"@contractspec/lib.ui-kit/ui/utils";import{resolveTranslationNode as F,resolveTranslationString as H,useDesignSystemTranslation as b}from"../../i18n/translation";import{VisualizationRenderer as z}from"./VisualizationRenderer.mobile";export function VisualizationCard({spec:E,data:K,title:L,description:M,footer:G,className:O,contentClassName:P,height:Q}){const I=b(),A=L??F(E.meta.title,I),B=M??H(E.meta.description,I);return J(U,{className:O,children:[A||B?J(Z,{children:[A?q($,{children:A}):null,B?q(X,{children:B}):null]}):null,q(W,{className:k(A||B?"pt-0":"",P),children:q(z,{data:K,height:Q,spec:E})}),G?q(Y,{children:G}):null]})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as z}from"react/jsx-runtime";import{VStack as v}from"@contractspec/lib.ui-kit/ui/stack";export function VisualizationGrid({children:g,className:q}){return z(v,{gap:"md",className:q,children:g})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{jsx as C,Fragment as Q}from"react/jsx-runtime";import{useVisualizationModel as L}from"@contractspec/lib.presentation-runtime-react";import{Visualization as O}from"@contractspec/lib.ui-kit/ui/visualization";export function VisualizationRenderer({spec:E,data:G,className:H,height:I,emptyState:B,onDataPointPress:J}){const A=L({spec:E,data:G});if(!(A.metric?.value!=null||A.series.some((K)=>K.points.length>0)||A.table.rows.length>0)&&B)return C(Q,{children:B});return C(O,{className:H,height:I,model:A,onDataPointPress:J})}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import*as f from"react";import{Appearance as g}from"react-native";export function useColorScheme(){const[j,k]=f.useState(()=>g.getColorScheme?.()==="dark"?"dark":"light");f.useEffect(()=>{const q=({colorScheme:z})=>{k(z==="dark"?"dark":"light")},w=g.addChangeListener?.(q);return()=>w?.remove?.()},[]);return j}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import*as z from"react";import{AccessibilityInfo as k}from"react-native";export function useReducedMotion(){const[B,q]=z.useState(!1);z.useEffect(()=>{let g=!0;k?.isReduceMotionEnabled().then((j)=>{if(g)q(Boolean(j))});const w=(j)=>{if(g)q(Boolean(j))},C=k?.addEventListener?.("reduceMotionChanged",w);return()=>{g=!1;C?.remove?.();k?.removeEventListener?.("reduceMotionChanged",w)}},[]);return B}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{useEffect as I,useMemo as J,useState as K}from"react";import{Dimensions as y}from"react-native";const O={sm:640,md:768,lg:1024,xl:1280};export function useResponsive(k){const g=J(()=>({...O,...k}),[k]),[j,z]=K(y.get("window").width);I(()=>{const x=y.addEventListener("change",({window:H})=>{z(H.width)});return()=>{if(typeof x?.remove==="function")x.remove()}},[]);const l=j>=g.sm,B=j>=g.md,q=j>=g.lg,C=j>=g.xl;return{width:j,breakpoints:g,isSM:l,isMD:B,isLG:q,isXL:C,screen:q?"desktop":l?"tablet":"mobile"}}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/components/data-table/{DataTableToolbar.mobile.d.ts → DataTableToolbar.native.d.ts}
RENAMED
|
File without changes
|
/package/dist/components/data-view/{DataViewRenderer.mobile.d.ts → DataViewRenderer.native.d.ts}
RENAMED
|
File without changes
|
|
File without changes
|
/package/dist/components/forms/controls/{Autocomplete.mobile.d.ts → Autocomplete.native.d.ts}
RENAMED
|
File without changes
|
/package/dist/components/forms/controls/{ChoiceControls.mobile.d.ts → ChoiceControls.native.d.ts}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/components/forms/controls/{DropdownMenu.mobile.d.ts → DropdownMenu.native.d.ts}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/components/forms/controls/{LoadingButton.mobile.d.ts → LoadingButton.native.d.ts}
RENAMED
|
File without changes
|
/package/dist/components/forms/controls/{NativeSelect.mobile.d.ts → NativeSelect.native.d.ts}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/components/molecules/{FiltersToolbar.mobile.d.ts → FiltersToolbar.native.d.ts}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/components/templates/lists/ListPageTemplate/{index.mobile.d.ts → index.native.d.ts}
RENAMED
|
File without changes
|
/package/dist/components/visualization/{ComparisonView.mobile.d.ts → ComparisonView.native.d.ts}
RENAMED
|
File without changes
|
/package/dist/components/visualization/{TimelineView.mobile.d.ts → TimelineView.native.d.ts}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/{browser/components/atoms/Button.mobile.js → native/components/atoms/Button.native.js}
RENAMED
|
File without changes
|
/package/dist/{browser/components/atoms/Cta.mobile.js → native/components/atoms/Cta.native.js}
RENAMED
|
File without changes
|
/package/dist/{browser/components/atoms/Input.mobile.js → native/components/atoms/Input.native.js}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/{browser/components/layout/Stack.mobile.js → native/components/layout/Stack.native.js}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/{browser/platform/useColorScheme.mobile.js → native/platform/useColorScheme.native.js}
RENAMED
|
File without changes
|
|
File without changes
|
/package/dist/{browser/platform/useResponsive.mobile.js → native/platform/useResponsive.native.js}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|