Skip to content

Commit

Permalink
feat(list slider): add new component and remove swiper 🙏 (#461)
Browse files Browse the repository at this point in the history
  • Loading branch information
felipefialho authored Jun 13, 2024
1 parent 34f839c commit 6880f68
Show file tree
Hide file tree
Showing 24 changed files with 842 additions and 508 deletions.
23 changes: 2 additions & 21 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 1 addition & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,7 @@
},
"dependencies": {
"@ionic/core": "^7.8.2",
"@stencil/core": "^4.17.2",
"swiper": "^11.1.1"
"@stencil/core": "^4.17.2"
},
"devDependencies": {
"@babel/core": "^7.24.7",
Expand Down
132 changes: 48 additions & 84 deletions packages/core/src/components.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,9 @@
import { HTMLStencilElement, JSXBase } from "@stencil/core/internal";
import { IconProps } from "./icons";
import { Color, Mode, TextFieldTypes } from "@ionic/core";
import { AutoplayOptions, PaginationOptions } from "swiper/types";
import { IonTypes } from "@ionic/core/dist/types/components";
export { IconProps } from "./icons";
export { Color, Mode, TextFieldTypes } from "@ionic/core";
export { AutoplayOptions, PaginationOptions } from "swiper/types";
export { IonTypes } from "@ionic/core/dist/types/components";
export namespace Components {
interface AtomAlert {
Expand Down Expand Up @@ -79,28 +77,6 @@ export namespace Components {
"sizeMd"?: string;
"sizeSm"?: string;
}
interface AtomDeprecatedCarousel {
"autoplay"?: boolean;
"autoplayDelay"?: AutoplayOptions['delay'];
"centerInsufficientSlides"?: boolean;
"centeredSlides"?: boolean;
"freeMode"?: boolean;
"loop"?: boolean;
"navigation"?: boolean;
"navigationButtonSize"?: 'medium' | 'xxlarge';
"pagination"?: boolean;
"paginationClickable"?: boolean;
"paginationType"?: PaginationOptions['type'] | 'thumbnails';
"slidesPerGroup"?: number | string;
"slidesPerView"?: number | string;
"spaceBetween"?: number;
"speed"?: number;
"thumbnailImages"?: string;
"videoIcons"?: boolean;
"watchSlidesProgress"?: boolean;
}
interface AtomDeprecatedCarouselItem {
}
interface AtomGrid {
"fixed"?: boolean;
}
Expand Down Expand Up @@ -164,6 +140,12 @@ export namespace Components {
"type": TextFieldTypes;
"value"?: IonTypes.IonInput['value'];
}
interface AtomListSlider {
"centralized": boolean;
"hasNavigation": boolean;
}
interface AtomListSliderItem {
}
interface AtomSelect {
"color"?: 'primary' | 'secondary' | 'danger';
"disabled"?: boolean;
Expand Down Expand Up @@ -258,14 +240,14 @@ export interface AtomChipCustomEvent<T> extends CustomEvent<T> {
detail: T;
target: HTMLAtomChipElement;
}
export interface AtomDeprecatedCarouselCustomEvent<T> extends CustomEvent<T> {
detail: T;
target: HTMLAtomDeprecatedCarouselElement;
}
export interface AtomInputCustomEvent<T> extends CustomEvent<T> {
detail: T;
target: HTMLAtomInputElement;
}
export interface AtomListSliderCustomEvent<T> extends CustomEvent<T> {
detail: T;
target: HTMLAtomListSliderElement;
}
export interface AtomSelectCustomEvent<T> extends CustomEvent<T> {
detail: T;
target: HTMLAtomSelectElement;
Expand Down Expand Up @@ -357,31 +339,6 @@ declare global {
prototype: HTMLAtomColElement;
new (): HTMLAtomColElement;
};
interface HTMLAtomDeprecatedCarouselElementEventMap {
"atomClickPrev": string;
"atomClickNext": string;
"atomChange": string;
}
interface HTMLAtomDeprecatedCarouselElement extends Components.AtomDeprecatedCarousel, HTMLStencilElement {
addEventListener<K extends keyof HTMLAtomDeprecatedCarouselElementEventMap>(type: K, listener: (this: HTMLAtomDeprecatedCarouselElement, ev: AtomDeprecatedCarouselCustomEvent<HTMLAtomDeprecatedCarouselElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
removeEventListener<K extends keyof HTMLAtomDeprecatedCarouselElementEventMap>(type: K, listener: (this: HTMLAtomDeprecatedCarouselElement, ev: AtomDeprecatedCarouselCustomEvent<HTMLAtomDeprecatedCarouselElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
}
var HTMLAtomDeprecatedCarouselElement: {
prototype: HTMLAtomDeprecatedCarouselElement;
new (): HTMLAtomDeprecatedCarouselElement;
};
interface HTMLAtomDeprecatedCarouselItemElement extends Components.AtomDeprecatedCarouselItem, HTMLStencilElement {
}
var HTMLAtomDeprecatedCarouselItemElement: {
prototype: HTMLAtomDeprecatedCarouselItemElement;
new (): HTMLAtomDeprecatedCarouselItemElement;
};
interface HTMLAtomGridElement extends Components.AtomGrid, HTMLStencilElement {
}
var HTMLAtomGridElement: {
Expand Down Expand Up @@ -414,6 +371,30 @@ declare global {
prototype: HTMLAtomInputElement;
new (): HTMLAtomInputElement;
};
interface HTMLAtomListSliderElementEventMap {
"clickNext": any;
"clickPrev": any;
}
interface HTMLAtomListSliderElement extends Components.AtomListSlider, HTMLStencilElement {
addEventListener<K extends keyof HTMLAtomListSliderElementEventMap>(type: K, listener: (this: HTMLAtomListSliderElement, ev: AtomListSliderCustomEvent<HTMLAtomListSliderElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
removeEventListener<K extends keyof HTMLAtomListSliderElementEventMap>(type: K, listener: (this: HTMLAtomListSliderElement, ev: AtomListSliderCustomEvent<HTMLAtomListSliderElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
}
var HTMLAtomListSliderElement: {
prototype: HTMLAtomListSliderElement;
new (): HTMLAtomListSliderElement;
};
interface HTMLAtomListSliderItemElement extends Components.AtomListSliderItem, HTMLStencilElement {
}
var HTMLAtomListSliderItemElement: {
prototype: HTMLAtomListSliderItemElement;
new (): HTMLAtomListSliderItemElement;
};
interface HTMLAtomSelectElementEventMap {
"atomBlur": void;
"atomCancel": void;
Expand Down Expand Up @@ -470,11 +451,11 @@ declare global {
"atom-carousel-item": HTMLAtomCarouselItemElement;
"atom-chip": HTMLAtomChipElement;
"atom-col": HTMLAtomColElement;
"atom-deprecated-carousel": HTMLAtomDeprecatedCarouselElement;
"atom-deprecated-carousel-item": HTMLAtomDeprecatedCarouselItemElement;
"atom-grid": HTMLAtomGridElement;
"atom-icon": HTMLAtomIconElement;
"atom-input": HTMLAtomInputElement;
"atom-list-slider": HTMLAtomListSliderElement;
"atom-list-slider-item": HTMLAtomListSliderItemElement;
"atom-select": HTMLAtomSelectElement;
"atom-tag": HTMLAtomTagElement;
"atom-textarea": HTMLAtomTextareaElement;
Expand Down Expand Up @@ -550,31 +531,6 @@ declare namespace LocalJSX {
"sizeMd"?: string;
"sizeSm"?: string;
}
interface AtomDeprecatedCarousel {
"autoplay"?: boolean;
"autoplayDelay"?: AutoplayOptions['delay'];
"centerInsufficientSlides"?: boolean;
"centeredSlides"?: boolean;
"freeMode"?: boolean;
"loop"?: boolean;
"navigation"?: boolean;
"navigationButtonSize"?: 'medium' | 'xxlarge';
"onAtomChange"?: (event: AtomDeprecatedCarouselCustomEvent<string>) => void;
"onAtomClickNext"?: (event: AtomDeprecatedCarouselCustomEvent<string>) => void;
"onAtomClickPrev"?: (event: AtomDeprecatedCarouselCustomEvent<string>) => void;
"pagination"?: boolean;
"paginationClickable"?: boolean;
"paginationType"?: PaginationOptions['type'] | 'thumbnails';
"slidesPerGroup"?: number | string;
"slidesPerView"?: number | string;
"spaceBetween"?: number;
"speed"?: number;
"thumbnailImages"?: string;
"videoIcons"?: boolean;
"watchSlidesProgress"?: boolean;
}
interface AtomDeprecatedCarouselItem {
}
interface AtomGrid {
"fixed"?: boolean;
}
Expand Down Expand Up @@ -639,6 +595,14 @@ declare namespace LocalJSX {
"type"?: TextFieldTypes;
"value"?: IonTypes.IonInput['value'];
}
interface AtomListSlider {
"centralized"?: boolean;
"hasNavigation"?: boolean;
"onClickNext"?: (event: AtomListSliderCustomEvent<any>) => void;
"onClickPrev"?: (event: AtomListSliderCustomEvent<any>) => void;
}
interface AtomListSliderItem {
}
interface AtomSelect {
"color"?: 'primary' | 'secondary' | 'danger';
"disabled"?: boolean;
Expand Down Expand Up @@ -735,11 +699,11 @@ declare namespace LocalJSX {
"atom-carousel-item": AtomCarouselItem;
"atom-chip": AtomChip;
"atom-col": AtomCol;
"atom-deprecated-carousel": AtomDeprecatedCarousel;
"atom-deprecated-carousel-item": AtomDeprecatedCarouselItem;
"atom-grid": AtomGrid;
"atom-icon": AtomIcon;
"atom-input": AtomInput;
"atom-list-slider": AtomListSlider;
"atom-list-slider-item": AtomListSliderItem;
"atom-select": AtomSelect;
"atom-tag": AtomTag;
"atom-textarea": AtomTextarea;
Expand All @@ -757,11 +721,11 @@ declare module "@stencil/core" {
"atom-carousel-item": LocalJSX.AtomCarouselItem & JSXBase.HTMLAttributes<HTMLAtomCarouselItemElement>;
"atom-chip": LocalJSX.AtomChip & JSXBase.HTMLAttributes<HTMLAtomChipElement>;
"atom-col": LocalJSX.AtomCol & JSXBase.HTMLAttributes<HTMLAtomColElement>;
"atom-deprecated-carousel": LocalJSX.AtomDeprecatedCarousel & JSXBase.HTMLAttributes<HTMLAtomDeprecatedCarouselElement>;
"atom-deprecated-carousel-item": LocalJSX.AtomDeprecatedCarouselItem & JSXBase.HTMLAttributes<HTMLAtomDeprecatedCarouselItemElement>;
"atom-grid": LocalJSX.AtomGrid & JSXBase.HTMLAttributes<HTMLAtomGridElement>;
"atom-icon": LocalJSX.AtomIcon & JSXBase.HTMLAttributes<HTMLAtomIconElement>;
"atom-input": LocalJSX.AtomInput & JSXBase.HTMLAttributes<HTMLAtomInputElement>;
"atom-list-slider": LocalJSX.AtomListSlider & JSXBase.HTMLAttributes<HTMLAtomListSliderElement>;
"atom-list-slider-item": LocalJSX.AtomListSliderItem & JSXBase.HTMLAttributes<HTMLAtomListSliderItemElement>;
"atom-select": LocalJSX.AtomSelect & JSXBase.HTMLAttributes<HTMLAtomSelectElement>;
"atom-tag": LocalJSX.AtomTag & JSXBase.HTMLAttributes<HTMLAtomTagElement>;
"atom-textarea": LocalJSX.AtomTextarea & JSXBase.HTMLAttributes<HTMLAtomTextareaElement>;
Expand Down
3 changes: 0 additions & 3 deletions packages/core/src/components/_deprecated-carousel/README.md

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

65 changes: 0 additions & 65 deletions packages/core/src/components/_deprecated-carousel/carousel.scss

This file was deleted.

Loading

0 comments on commit 6880f68

Please sign in to comment.