@nimbus-ds/patterns 1.8.0-rc.1 → 1.8.0-rc.10

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/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  Nimbus is an open-source Design System created by Tiendanube / Nuvesmhop’s team to empower and enhance more stories every day, with simplicity, accessibility, consistency and performance.
4
4
 
5
+ ## 2025-02-12
6
+
7
+ - Added new `@nimbus-ds/initial-screen` component. ([#97](https://github.com/TiendaNube/nimbus-patterns/pull/97) by [@joacotornello](https://github.com/joacotornello))
8
+
5
9
  ## 2024-03-06 `1.8.0`
6
10
 
7
11
  ### 🎉 New features
package/dist/index.d.ts CHANGED
@@ -4,7 +4,7 @@ import { BoxBaseProps, BoxProperties, BoxProps, ButtonProperties, ButtonProps, C
4
4
  import { IconProps } from '@nimbus-ds/icons';
5
5
  import { PolymorphicForwardRefComponent } from '@nimbus-ds/typings';
6
6
  import React from 'react';
7
- import { ButtonHTMLAttributes, ComponentProps, ComponentPropsWithRef, FC, HTMLAttributes, MouseEventHandler, ReactNode } from 'react';
7
+ import { ButtonHTMLAttributes, ComponentProps, ComponentPropsWithRef, FC, HTMLAttributes, MouseEventHandler, PropsWithChildren, ReactElement, ReactNode } from 'react';
8
8
  import { DayPicker } from 'react-day-picker';
9
9
 
10
10
  export interface AppShellHeaderProperties {
@@ -777,6 +777,7 @@ export type EmptyAppContentTextElementProps = EmptyAppContentTextElementProperti
777
777
  declare const EmptyAppContentTextElement: React.FC<EmptyAppContentTextElementProps>;
778
778
  export interface EmptyAppHeroSectionProperties extends Pick<ThumbnailProps, "src" | "alt"> {
779
779
  title: string;
780
+ titleChildren?: ReactNode;
780
781
  subtitle?: string;
781
782
  content: string;
782
783
  actions?: ReactNode;
@@ -813,5 +814,102 @@ export interface EmptyAppProperties {
813
814
  }
814
815
  export type EmptyAppProps = EmptyAppProperties & Omit<BoxProps, "width" | "display" | "flexDirection" | "backgroundColor" | "pb" | "children">;
815
816
  export declare const EmptyApp: React.FC<EmptyAppProps> & EmptyAppComponents;
817
+ export type BulletProps = {
818
+ icon: ReactNode;
819
+ text: string;
820
+ };
821
+ export type InitialScreenBulletProps = PropsWithChildren<BulletProps & Omit<BoxProps, "display" | "gap">>;
822
+ declare const InitialScreenBullet: React.FC<InitialScreenBulletProps>;
823
+ export type BaseHeroProps = {
824
+ title?: string;
825
+ subtitle?: string;
826
+ actions?: ReactNode;
827
+ image: ReactNode;
828
+ description?: ReactNode;
829
+ bullets?: ReactElement<InitialScreenBulletProps, typeof InitialScreenBullet>[];
830
+ };
831
+ export type InitialScreenHeroProps = PropsWithChildren<BaseHeroProps> & Omit<BoxProps, "alignItems" | "mx">;
832
+ declare const InitialScreenHero: React.FC<InitialScreenHeroProps>;
833
+ export type Props = {
834
+ title: string;
835
+ };
836
+ export type InitialScreenSectionProps = PropsWithChildren<Props> & Omit<BoxProps, "display" | "flexDirection" | "paddingTop" | "gap" | "maxWidth" | "mx">;
837
+ declare const InitialScreenSection: React.FC<InitialScreenSectionProps>;
838
+ export type InitialScreenCardProps = {
839
+ icon: ReactNode;
840
+ title: string;
841
+ description: string;
842
+ };
843
+ export type InitialScreenCardLayoutProps = PropsWithChildren & Omit<BoxProps, "display" | "flexDirection" | "gap">;
844
+ declare const InitialScreenCard: React.FC<InitialScreenCardProps>;
845
+ declare const InitialScreenCardLayout: React.FC<InitialScreenCardLayoutProps>;
846
+ export type InitialScreenFeatureItemProps = PropsWithChildren<{
847
+ title: string;
848
+ description: string;
849
+ }>;
850
+ export type InitialScreenFeatureProps = {
851
+ content: ReactNode;
852
+ image: ReactNode;
853
+ };
854
+ export type InitialScreenFeatureItemSpacingProps = Omit<BoxProps, "borderTopWidth" | "borderBottomWidth" | "borderColor" | "borderStyle">;
855
+ declare const InitialScreenFeatureItem: React.FC<InitialScreenFeatureItemProps>;
856
+ declare const InitialScreenFeatureItemSpacing: React.FC<InitialScreenFeatureItemSpacingProps>;
857
+ declare const InitialScreenFeature: React.FC<InitialScreenFeatureProps>;
858
+ export type ModuleProps = {
859
+ title: string;
860
+ description: string;
861
+ };
862
+ export type InitialScreenModuleProps = PropsWithChildren<ModuleProps> & BoxProps;
863
+ declare const InitialScreenModule: React.FC<InitialScreenModuleProps>;
864
+ export interface InitialScreenComponents {
865
+ /**
866
+ * Displays a bullet point with an icon and text, typically used to list app features with visual appeal.
867
+ */
868
+ Bullet: typeof InitialScreenBullet;
869
+ /**
870
+ * Displays a card with an icon, title, and children, generally used for descriptive purposes.
871
+ */
872
+ Card: typeof InitialScreenCard;
873
+ /**
874
+ * Displays multiple cards in a row or column, responsive to screen size.
875
+ */
876
+ CardLayout: typeof InitialScreenCardLayout;
877
+ /**
878
+ * Displays a feature with content and an image side by side.
879
+ */
880
+ Feature: typeof InitialScreenFeature;
881
+ /**
882
+ * Displays a feature with a title, description, and children, often used with the ItemSpacing component.
883
+ */
884
+ FeatureItem: typeof InitialScreenFeatureItem;
885
+ /**
886
+ * A line that separates items in the feature, maintaining a consistent layout.
887
+ */
888
+ FeatureItemSpacing: typeof InitialScreenFeatureItemSpacing;
889
+ /**
890
+ * Displays a hero with a title, subtitle, description, actions, bullets, and an image, typically for the main content of the initial screen.
891
+ */
892
+ Hero: typeof InitialScreenHero;
893
+ /**
894
+ * Displays a module with a title, description, and children, generally used for application modules or callout cards.
895
+ */
896
+ Module: typeof InitialScreenModule;
897
+ /**
898
+ * Displays a section with a title and children, used to separate content in the initial screen while maintaining a consistent layout.
899
+ */
900
+ Section: typeof InitialScreenSection;
901
+ }
902
+ export interface InitialScreenBaseProps {
903
+ /**
904
+ * Content of the InitialScreen component.
905
+ * @TJS-type React.ReactNode
906
+ */
907
+ children: React.ReactNode;
908
+ }
909
+ export type InitialScreenProps = InitialScreenBaseProps & Omit<BoxProps, "width" | "display" | "flexDirection" | "backgroundColor" | "pb" | "children">;
910
+ /**
911
+ * This component provides a consistent layout and spacing for displaying a landing or welcome screen. It introduces users to an application or service, offering options to access more information or proceed further.
912
+ */
913
+ export declare const InitialScreen: React.FC<InitialScreenProps> & InitialScreenComponents;
816
914
 
817
915
  export {};