valtech-components 4.0.185 → 4.0.186
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/esm2022/lib/components/molecules/load-more/load-more.component.mjs +113 -0
- package/esm2022/lib/components/molecules/load-more/types.mjs +2 -0
- package/esm2022/lib/components/molecules/pin-input/pin-input.component.mjs +27 -4
- package/esm2022/lib/version.mjs +2 -2
- package/esm2022/public-api.mjs +3 -1
- package/fesm2022/valtech-components.mjs +136 -5
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/molecules/load-more/load-more.component.d.ts +38 -0
- package/lib/components/molecules/load-more/types.d.ts +23 -0
- package/lib/components/molecules/pin-input/pin-input.component.d.ts +7 -0
- package/lib/version.d.ts +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +2 -0
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import { LoadMoreMetadata } from './types';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Boton "Cargar mas" con spinner integrado, o infinite scroll.
|
|
6
|
+
*
|
|
7
|
+
* Modo button (default): muestra un ion-button con ion-spinner en slot=start
|
|
8
|
+
* mientras loading=true. Se oculta cuando hasMore=false.
|
|
9
|
+
*
|
|
10
|
+
* Modo infinite: usa ion-infinite-scroll. Emite (loadMore), espera que el
|
|
11
|
+
* padre ponga loading=false para completar el ciclo del scroll.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* <val-load-more
|
|
15
|
+
* [props]="{ loading: loadingMore(), hasMore: !!nextCursor() }"
|
|
16
|
+
* (loadMore)="onLoadMore()"
|
|
17
|
+
* />
|
|
18
|
+
*/
|
|
19
|
+
export declare class LoadMoreComponent {
|
|
20
|
+
private readonly i18n;
|
|
21
|
+
readonly props: import("@angular/core").InputSignal<LoadMoreMetadata>;
|
|
22
|
+
readonly loadMore: EventEmitter<void>;
|
|
23
|
+
readonly loading: import("@angular/core").Signal<boolean>;
|
|
24
|
+
readonly hasMore: import("@angular/core").Signal<boolean>;
|
|
25
|
+
readonly mode: import("@angular/core").Signal<"button" | "infinite">;
|
|
26
|
+
readonly color: import("@angular/core").Signal<string>;
|
|
27
|
+
readonly fill: import("@angular/core").Signal<string>;
|
|
28
|
+
readonly shape: import("@angular/core").Signal<string>;
|
|
29
|
+
readonly size: import("@angular/core").Signal<"default" | "small" | "large">;
|
|
30
|
+
readonly threshold: import("@angular/core").Signal<string>;
|
|
31
|
+
readonly label: import("@angular/core").Signal<string>;
|
|
32
|
+
private readonly _pendingComplete;
|
|
33
|
+
constructor();
|
|
34
|
+
onButtonClick(): void;
|
|
35
|
+
onInfiniteScroll(event: CustomEvent): void;
|
|
36
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<LoadMoreComponent, never>;
|
|
37
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<LoadMoreComponent, "val-load-more", never, { "props": { "alias": "props"; "required": false; "isSignal": true; }; }, { "loadMore": "loadMore"; }, never, never, true, never>;
|
|
38
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Metadata para val-load-more.
|
|
3
|
+
*/
|
|
4
|
+
export interface LoadMoreMetadata {
|
|
5
|
+
/** Muestra spinner y deshabilita el boton/scroll mientras es true. */
|
|
6
|
+
loading?: boolean;
|
|
7
|
+
/** Si es false, oculta el componente (no hay mas items). Default: true. */
|
|
8
|
+
hasMore?: boolean;
|
|
9
|
+
/** Modo de carga. Default: 'button'. */
|
|
10
|
+
mode?: 'button' | 'infinite';
|
|
11
|
+
/** Texto del boton. Default: i18n 'Cargar mas' / 'Load more'. */
|
|
12
|
+
label?: string;
|
|
13
|
+
/** Color Ionic del boton. Default: 'dark'. */
|
|
14
|
+
color?: string;
|
|
15
|
+
/** Fill del boton. Default: 'outline'. */
|
|
16
|
+
fill?: string;
|
|
17
|
+
/** Shape del boton. Default: 'round'. */
|
|
18
|
+
shape?: string;
|
|
19
|
+
/** Size del boton. Default: 'small'. */
|
|
20
|
+
size?: 'small' | 'default' | 'large';
|
|
21
|
+
/** Umbral de scroll para modo 'infinite'. Default: '100px'. */
|
|
22
|
+
threshold?: string;
|
|
23
|
+
}
|
|
@@ -11,6 +11,13 @@ export declare class PinInputComponent implements OnInit, AfterViewInit {
|
|
|
11
11
|
* @property length - Number of digits in PIN (default: 5).
|
|
12
12
|
*/
|
|
13
13
|
props: PinInputMetadata;
|
|
14
|
+
private i18n;
|
|
15
|
+
/**
|
|
16
|
+
* Nombre accesible del grupo de cajas del PIN. Deriva de `props.label`; si está
|
|
17
|
+
* vacío usa el default i18n `PinInput.inputGroupLabel`. Como el componente no
|
|
18
|
+
* renderiza un label visible, se expone vía `aria-label` (no `aria-labelledby`).
|
|
19
|
+
*/
|
|
20
|
+
get ariaLabel(): string;
|
|
14
21
|
codeLength: number;
|
|
15
22
|
otpInputConfig: NgOtpInputConfig;
|
|
16
23
|
constructor();
|
package/lib/version.d.ts
CHANGED
package/package.json
CHANGED
package/public-api.d.ts
CHANGED
|
@@ -130,6 +130,8 @@ export * from './lib/components/molecules/tabs/tabs.component';
|
|
|
130
130
|
export * from './lib/components/molecules/tabs/types';
|
|
131
131
|
export * from './lib/components/molecules/breadcrumb/breadcrumb.component';
|
|
132
132
|
export * from './lib/components/molecules/breadcrumb/types';
|
|
133
|
+
export * from './lib/components/molecules/load-more/load-more.component';
|
|
134
|
+
export * from './lib/components/molecules/load-more/types';
|
|
133
135
|
export * from './lib/components/molecules/pagination/pagination.component';
|
|
134
136
|
export * from './lib/components/molecules/pagination/types';
|
|
135
137
|
export * from './lib/components/molecules/stepper/stepper.component';
|