ng-primitives 0.123.1 → 0.124.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/fesm2022/ng-primitives-pagination.mjs +25 -15
- package/fesm2022/ng-primitives-pagination.mjs.map +1 -1
- package/fesm2022/ng-primitives-radio.mjs +135 -129
- package/fesm2022/ng-primitives-radio.mjs.map +1 -1
- package/fesm2022/ng-primitives-toggle-group.mjs +10 -8
- package/fesm2022/ng-primitives-toggle-group.mjs.map +1 -1
- package/package.json +1 -1
- package/schematics/ng-generate/templates/radio/radio-group.__fileSuffix@dasherize__.ts.template +16 -4
- package/types/ng-primitives-radio.d.ts +147 -52
- package/types/ng-primitives-toggle-group.d.ts +5 -6
|
@@ -52,15 +52,17 @@ const [NgpPaginationButtonStateToken, ngpPaginationButton, injectPaginationButto
|
|
|
52
52
|
dataBinding(elementRef, 'data-selected', () => (selected() ? '' : null));
|
|
53
53
|
// Listeners
|
|
54
54
|
listener(elementRef, 'click', goToPage);
|
|
55
|
-
listener(elementRef, 'keydown
|
|
56
|
-
listener(elementRef, 'keydown.enter', handleOnEnter);
|
|
55
|
+
listener(elementRef, 'keydown', handleKeydown);
|
|
57
56
|
function goToPage() {
|
|
58
57
|
if (disabled()) {
|
|
59
58
|
return;
|
|
60
59
|
}
|
|
61
60
|
paginationState().goToPage(page());
|
|
62
61
|
}
|
|
63
|
-
function
|
|
62
|
+
function handleKeydown(event) {
|
|
63
|
+
if (event.repeat || (event.key !== 'Enter' && event.key !== ' ')) {
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
64
66
|
event.preventDefault();
|
|
65
67
|
event.stopPropagation();
|
|
66
68
|
goToPage();
|
|
@@ -120,15 +122,17 @@ const [NgpPaginationFirstStateToken, ngpPaginationFirst, injectPaginationFirstSt
|
|
|
120
122
|
dataBinding(elementRef, 'data-first-page', () => (paginationState().firstPage() ? '' : null));
|
|
121
123
|
// Listener
|
|
122
124
|
listener(elementRef, 'click', goToFirstPage);
|
|
123
|
-
listener(elementRef, 'keydown
|
|
124
|
-
listener(elementRef, 'keydown.space', handleOnEnter);
|
|
125
|
+
listener(elementRef, 'keydown', handleKeydown);
|
|
125
126
|
function goToFirstPage() {
|
|
126
127
|
if (disabled()) {
|
|
127
128
|
return;
|
|
128
129
|
}
|
|
129
130
|
paginationState().goToPage(1);
|
|
130
131
|
}
|
|
131
|
-
function
|
|
132
|
+
function handleKeydown(event) {
|
|
133
|
+
if (event.repeat || (event.key !== 'Enter' && event.key !== ' ')) {
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
132
136
|
event.preventDefault();
|
|
133
137
|
event.stopPropagation();
|
|
134
138
|
goToFirstPage();
|
|
@@ -181,15 +185,17 @@ const [NgpPaginationLastStateToken, ngpPaginationLast, injectPaginationLastState
|
|
|
181
185
|
dataBinding(elementRef, 'data-last-page', () => (paginationState().lastPage() ? '' : null));
|
|
182
186
|
// Listener
|
|
183
187
|
listener(elementRef, 'click', goToLastPage);
|
|
184
|
-
listener(elementRef, 'keydown
|
|
185
|
-
listener(elementRef, 'keydown.space', handleOnEnter);
|
|
188
|
+
listener(elementRef, 'keydown', handleKeydown);
|
|
186
189
|
function goToLastPage() {
|
|
187
190
|
if (disabled()) {
|
|
188
191
|
return;
|
|
189
192
|
}
|
|
190
193
|
paginationState().goToPage(paginationState().pageCount());
|
|
191
194
|
}
|
|
192
|
-
function
|
|
195
|
+
function handleKeydown(event) {
|
|
196
|
+
if (event.repeat || (event.key !== 'Enter' && event.key !== ' ')) {
|
|
197
|
+
return;
|
|
198
|
+
}
|
|
193
199
|
event.preventDefault();
|
|
194
200
|
event.stopPropagation();
|
|
195
201
|
goToLastPage();
|
|
@@ -242,15 +248,17 @@ const [NgpPaginationNextStateToken, ngpPaginationNext, injectPaginationNextState
|
|
|
242
248
|
dataBinding(elementRef, 'data-last-page', () => (paginationState().lastPage() ? '' : null));
|
|
243
249
|
// Listener
|
|
244
250
|
listener(elementRef, 'click', goToNextPage);
|
|
245
|
-
listener(elementRef, 'keydown
|
|
246
|
-
listener(elementRef, 'keydown.space', handleOnEnter);
|
|
251
|
+
listener(elementRef, 'keydown', handleKeydown);
|
|
247
252
|
function goToNextPage() {
|
|
248
253
|
if (disabled()) {
|
|
249
254
|
return;
|
|
250
255
|
}
|
|
251
256
|
paginationState().goToPage(paginationState().page() + 1);
|
|
252
257
|
}
|
|
253
|
-
function
|
|
258
|
+
function handleKeydown(event) {
|
|
259
|
+
if (event.repeat || (event.key !== 'Enter' && event.key !== ' ')) {
|
|
260
|
+
return;
|
|
261
|
+
}
|
|
254
262
|
event.preventDefault();
|
|
255
263
|
event.stopPropagation();
|
|
256
264
|
goToNextPage();
|
|
@@ -303,15 +311,17 @@ const [NgpPaginationPreviousStateToken, ngpPaginationPrevious, injectPaginationP
|
|
|
303
311
|
dataBinding(elementRef, 'data-first-page', () => (paginationState().firstPage() ? '' : null));
|
|
304
312
|
// Listener
|
|
305
313
|
listener(elementRef, 'click', goToPreviousPage);
|
|
306
|
-
listener(elementRef, 'keydown
|
|
307
|
-
listener(elementRef, 'keydown.space', handleOnEnter);
|
|
314
|
+
listener(elementRef, 'keydown', handleKeydown);
|
|
308
315
|
function goToPreviousPage() {
|
|
309
316
|
if (disabled()) {
|
|
310
317
|
return;
|
|
311
318
|
}
|
|
312
319
|
paginationState().goToPage(paginationState().page() - 1);
|
|
313
320
|
}
|
|
314
|
-
function
|
|
321
|
+
function handleKeydown(event) {
|
|
322
|
+
if (event.repeat || (event.key !== 'Enter' && event.key !== ' ')) {
|
|
323
|
+
return;
|
|
324
|
+
}
|
|
315
325
|
event.preventDefault();
|
|
316
326
|
event.stopPropagation();
|
|
317
327
|
goToPreviousPage();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-primitives-pagination.mjs","sources":["../../../../packages/ng-primitives/pagination/src/pagination/pagination-state.ts","../../../../packages/ng-primitives/pagination/src/pagination-button/pagination-button-state.ts","../../../../packages/ng-primitives/pagination/src/pagination-button/pagination-button.ts","../../../../packages/ng-primitives/pagination/src/pagination-first/pagination-first-state.ts","../../../../packages/ng-primitives/pagination/src/pagination-first/pagination-first.ts","../../../../packages/ng-primitives/pagination/src/pagination-last/pagination-last-state.ts","../../../../packages/ng-primitives/pagination/src/pagination-last/pagination-last.ts","../../../../packages/ng-primitives/pagination/src/pagination-next/pagination-next-state.ts","../../../../packages/ng-primitives/pagination/src/pagination-next/pagination-next.ts","../../../../packages/ng-primitives/pagination/src/pagination-previous/pagination-previous-state.ts","../../../../packages/ng-primitives/pagination/src/pagination-previous/pagination-previous.ts","../../../../packages/ng-primitives/pagination/src/pagination/pagination.ts","../../../../packages/ng-primitives/pagination/src/ng-primitives-pagination.ts"],"sourcesContent":["import { computed, signal, Signal, WritableSignal } from '@angular/core';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport {\n attrBinding,\n controlledState,\n createPrimitive,\n dataBinding,\n deprecatedSetter,\n} from 'ng-primitives/state';\nimport { Observable } from 'rxjs';\n\nexport interface NgpPaginationState {\n /**\n * The currently selected page.\n */\n readonly page: WritableSignal<number>;\n /**\n * The total number of pages.\n */\n readonly pageCount: Signal<number>;\n /**\n * Whether the pagination is disabled.\n */\n readonly disabled: Signal<boolean>;\n /**\n * Determine if we are on the first page.\n * @internal\n */\n readonly firstPage: Signal<boolean>;\n /**\n * Determine if we are on the last page.\n * @internal\n */\n readonly lastPage: Signal<boolean>;\n /**\n * The event that is fired when the page changes.\n */\n readonly pageChange: Observable<number>;\n /**\n * Go to the specified page.\n * @param page The page to go to.\n */\n goToPage: (page: number) => void;\n}\n\nexport interface NgpPaginationProps {\n /**\n * The currently selected page. When `undefined`, the pagination is uncontrolled\n * and seeds from `defaultPage`.\n */\n readonly page?: Signal<number | undefined>;\n /**\n * The default page for uncontrolled usage.\n */\n readonly defaultPage?: Signal<number>;\n /**\n * The total number of pages.\n */\n readonly pageCount?: Signal<number>;\n /**\n * Whether the pagination is disabled.\n */\n readonly disabled?: Signal<boolean>;\n /** Callback fired when the page state changes. */\n onPageChange: (page: number) => void;\n}\n\nexport const [\n NgpPaginationStateToken,\n ngpPagination,\n injectPaginationState,\n providePaginationState,\n] = createPrimitive(\n 'NgpPagination',\n ({\n page: _page = signal<number | undefined>(undefined),\n defaultPage: _defaultPage = signal<number>(1),\n pageCount: _pageCount = signal<number>(0),\n disabled: _disabled = signal<boolean>(false),\n onPageChange,\n }: NgpPaginationProps) => {\n const elementRef = injectElementRef();\n\n const [page, setPage, pageChange] = controlledState({\n value: _page,\n defaultValue: _defaultPage,\n onChange: onPageChange,\n });\n\n const firstPage = computed(() => page() === 1);\n const lastPage = computed(() => page() === _pageCount());\n\n // Host bindings\n attrBinding(elementRef, 'role', 'navigation');\n dataBinding(elementRef, 'data-page', () => page().toString());\n dataBinding(elementRef, 'data-page-count', () => _pageCount().toString());\n dataBinding(elementRef, 'data-first-page', () => (firstPage() ? '' : null));\n dataBinding(elementRef, 'data-last-page', () => (lastPage() ? '' : null));\n dataBinding(elementRef, 'data-disabled', () => (_disabled() ? '' : null));\n\n function goToPage(page: number) {\n // check if the page is within the bounds of the pagination\n if (page < 1 || page > _pageCount()) {\n return;\n }\n\n setPage(page);\n }\n\n return {\n page: deprecatedSetter(page, 'setPage', setPage),\n pageCount: _pageCount,\n pageChange,\n disabled: _disabled,\n firstPage,\n lastPage,\n goToPage,\n } satisfies NgpPaginationState;\n },\n);\n","import { computed, signal, Signal } from '@angular/core';\nimport { ngpButton } from 'ng-primitives/button';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { attrBinding, createPrimitive, dataBinding, listener } from 'ng-primitives/state';\nimport { injectPaginationState } from '../pagination/pagination-state';\n\nexport interface NgpPaginationButtonState {\n /**\n * Define the page this button represents.\n */\n readonly page: Signal<number>;\n /**\n * Whether the button is disabled, accounting for the parent pagination state.\n */\n readonly disabled: Signal<boolean>;\n /**\n * Go to the page this button represents.\n */\n goToPage(): void;\n}\n\nexport interface NgpPaginationButtonProps {\n /**\n * Define the page this button represents.\n */\n readonly page?: Signal<number>;\n /**\n * Whether the button is disabled.\n */\n readonly disabled?: Signal<boolean>;\n}\n\nexport const [\n NgpPaginationButtonStateToken,\n ngpPaginationButton,\n injectPaginationButtonState,\n providePaginationButtonState,\n] = createPrimitive(\n 'NgpPaginationButton',\n ({\n page = signal<number>(-1),\n disabled: _disabled = signal<boolean>(false),\n }: NgpPaginationButtonProps) => {\n const elementRef = injectElementRef();\n const paginationState = injectPaginationState();\n\n const selected = computed(() => page() === paginationState().page());\n const disabled = computed(() => _disabled() || paginationState().disabled());\n\n // Setup interactions\n ngpButton({ disabled: disabled });\n\n // Host binding\n attrBinding(elementRef, 'tabindex', () => (disabled() ? -1 : 0));\n attrBinding(elementRef, 'aria-current', selected);\n dataBinding(elementRef, 'data-page', () => page().toString());\n dataBinding(elementRef, 'data-selected', () => (selected() ? '' : null));\n\n // Listeners\n listener(elementRef, 'click', goToPage);\n listener(elementRef, 'keydown.space', handleOnEnter);\n listener(elementRef, 'keydown.enter', handleOnEnter);\n\n function goToPage(): void {\n if (disabled()) {\n return;\n }\n\n paginationState().goToPage(page());\n }\n\n function handleOnEnter(event: Event): void {\n event.preventDefault();\n event.stopPropagation();\n goToPage();\n }\n\n return {\n page,\n disabled,\n goToPage,\n } satisfies NgpPaginationButtonState;\n },\n);\n","import { BooleanInput, NumberInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, Directive, input, numberAttribute } from '@angular/core';\nimport { ngpPaginationButton } from './pagination-button-state';\n\n/**\n * The `NgpPaginationButton` directive is used to create a pagination button.\n */\n@Directive({\n selector: '[ngpPaginationButton]',\n exportAs: 'ngpPaginationButton',\n})\nexport class NgpPaginationButton {\n /**\n * Define the page this button represents.\n */\n readonly page = input.required<number, NumberInput>({\n alias: 'ngpPaginationButtonPage',\n transform: numberAttribute,\n });\n\n /**\n * Whether the button is disabled.\n */\n readonly disabled = input<boolean, BooleanInput>(false, {\n alias: 'ngpPaginationButtonDisabled',\n transform: booleanAttribute,\n });\n\n protected readonly state = ngpPaginationButton({\n page: this.page,\n disabled: this.disabled,\n });\n\n /**\n * Go to the page this button represents.\n */\n goToPage(): void {\n return this.state.goToPage();\n }\n}\n","import { computed, signal, Signal } from '@angular/core';\nimport { ngpButton } from 'ng-primitives/button';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { attrBinding, createPrimitive, dataBinding, listener } from 'ng-primitives/state';\nimport { injectPaginationState } from '../pagination/pagination-state';\n\nexport interface NgpPaginationFirstState {\n /**\n * Whether the button is disabled, accounting for the parent pagination state.\n */\n readonly disabled: Signal<boolean>;\n /**\n * Go to the first page.\n */\n goToFirstPage(): void;\n}\n\nexport interface NgpPaginationFirstProps {\n /**\n * Whether the button is disabled.\n */\n readonly disabled?: Signal<boolean>;\n}\n\nexport const [\n NgpPaginationFirstStateToken,\n ngpPaginationFirst,\n injectPaginationFirstState,\n providePaginationFirstState,\n] = createPrimitive(\n 'NgpPaginationFirst',\n ({ disabled: _disabled = signal<boolean>(false) }: NgpPaginationFirstProps) => {\n const elementRef = injectElementRef();\n const paginationState = injectPaginationState();\n\n const disabled = computed(\n () => _disabled() || paginationState().disabled() || paginationState().firstPage(),\n );\n\n // Setup interactions\n ngpButton({ disabled: disabled });\n\n // Host binding\n attrBinding(elementRef, 'tabindex', () => (disabled() ? -1 : 0));\n dataBinding(elementRef, 'data-first-page', () => (paginationState().firstPage() ? '' : null));\n\n // Listener\n listener(elementRef, 'click', goToFirstPage);\n listener(elementRef, 'keydown.enter', handleOnEnter);\n listener(elementRef, 'keydown.space', handleOnEnter);\n\n function goToFirstPage(): void {\n if (disabled()) {\n return;\n }\n\n paginationState().goToPage(1);\n }\n\n function handleOnEnter(event: Event): void {\n event.preventDefault();\n event.stopPropagation();\n goToFirstPage();\n }\n\n return {\n disabled,\n goToFirstPage,\n } satisfies NgpPaginationFirstState;\n },\n);\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, Directive, input } from '@angular/core';\nimport { ngpPaginationFirst } from './pagination-first-state';\n\n/**\n * The `NgpPaginationFirst` directive is used to create a pagination button that navigates to the first page.\n */\n@Directive({\n selector: '[ngpPaginationFirst]',\n exportAs: 'ngpPaginationFirst',\n})\nexport class NgpPaginationFirst {\n /**\n * Whether the button is disabled.\n */\n readonly disabled = input<boolean, BooleanInput>(false, {\n alias: 'ngpPaginationFirstDisabled',\n transform: booleanAttribute,\n });\n\n protected readonly state = ngpPaginationFirst({\n disabled: this.disabled,\n });\n\n /**\n * Go to the first page.\n */\n goToFirstPage() {\n return this.state.goToFirstPage();\n }\n}\n","import { computed, signal, Signal } from '@angular/core';\nimport { ngpButton } from 'ng-primitives/button';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { attrBinding, createPrimitive, dataBinding, listener } from 'ng-primitives/state';\nimport { injectPaginationState } from '../pagination/pagination-state';\n\nexport interface NgpPaginationLastState {\n /** Whether the button is disabled, accounting for the parent pagination state. */\n readonly disabled: Signal<boolean>;\n /** Go to the last page. */\n goToLastPage(): void;\n}\n\nexport interface NgpPaginationLastProps {\n /** Whether the button is disabled. */\n readonly disabled?: Signal<boolean>;\n}\n\nexport const [\n NgpPaginationLastStateToken,\n ngpPaginationLast,\n injectPaginationLastState,\n providePaginationLastState,\n] = createPrimitive(\n 'NgpPaginationLast',\n ({ disabled: _disabled = signal<boolean>(false) }: NgpPaginationLastProps) => {\n const elementRef = injectElementRef();\n const paginationState = injectPaginationState();\n\n const disabled = computed(\n () => _disabled() || paginationState().disabled() || paginationState().lastPage(),\n );\n\n // Setup interactions\n ngpButton({ disabled: disabled });\n\n // Host binding\n attrBinding(elementRef, 'tabindex', () => (disabled() ? -1 : 0));\n dataBinding(elementRef, 'data-last-page', () => (paginationState().lastPage() ? '' : null));\n\n // Listener\n listener(elementRef, 'click', goToLastPage);\n listener(elementRef, 'keydown.enter', handleOnEnter);\n listener(elementRef, 'keydown.space', handleOnEnter);\n\n function goToLastPage(): void {\n if (disabled()) {\n return;\n }\n\n paginationState().goToPage(paginationState().pageCount());\n }\n\n function handleOnEnter(event: Event): void {\n event.preventDefault();\n event.stopPropagation();\n goToLastPage();\n }\n\n return {\n disabled,\n goToLastPage,\n } satisfies NgpPaginationLastState;\n },\n);\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, Directive, input } from '@angular/core';\nimport { ngpPaginationLast } from './pagination-last-state';\n\n/**\n * The `NgpPaginationLast` directive is used to create a pagination button that navigates to the last page.\n */\n@Directive({\n selector: '[ngpPaginationLast]',\n exportAs: 'ngpPaginationLast',\n})\nexport class NgpPaginationLast {\n /**\n * Whether the button is disabled.\n */\n readonly disabled = input<boolean, BooleanInput>(false, {\n alias: 'ngpPaginationLastDisabled',\n transform: booleanAttribute,\n });\n\n protected readonly state = ngpPaginationLast({\n disabled: this.disabled,\n });\n\n /**\n * Go to the last page.\n */\n goToLastPage(): void {\n this.state.goToLastPage();\n }\n}\n","import { computed, Signal, signal } from '@angular/core';\nimport { ngpButton } from 'ng-primitives/button';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { attrBinding, createPrimitive, dataBinding, listener } from 'ng-primitives/state';\nimport { injectPaginationState } from '../pagination/pagination-state';\n\nexport interface NgpPaginationNextState {\n /** Whether the button is disabled, accounting for the parent pagination state. */\n readonly disabled: Signal<boolean>;\n /** Go to the next page. */\n goToNextPage(): void;\n}\n\nexport interface NgpPaginationNextProps {\n /** Whether the button is disabled */\n readonly disabled?: Signal<boolean>;\n}\n\nexport const [\n NgpPaginationNextStateToken,\n ngpPaginationNext,\n injectPaginationNextState,\n providePaginationNextState,\n] = createPrimitive(\n 'NgpPaginationNext',\n ({ disabled: _disabled = signal<boolean>(false) }: NgpPaginationNextProps) => {\n const elementRef = injectElementRef();\n const paginationState = injectPaginationState();\n\n const disabled = computed(\n () => _disabled() || paginationState().disabled() || paginationState().lastPage(),\n );\n\n // Setup interactions\n ngpButton({ disabled: disabled });\n\n // Host binding\n attrBinding(elementRef, 'tabindex', () => (disabled() ? -1 : 0));\n dataBinding(elementRef, 'data-last-page', () => (paginationState().lastPage() ? '' : null));\n\n // Listener\n listener(elementRef, 'click', goToNextPage);\n listener(elementRef, 'keydown.enter', handleOnEnter);\n listener(elementRef, 'keydown.space', handleOnEnter);\n\n function goToNextPage(): void {\n if (disabled()) {\n return;\n }\n\n paginationState().goToPage(paginationState().page() + 1);\n }\n\n function handleOnEnter(event: Event): void {\n event.preventDefault();\n event.stopPropagation();\n goToNextPage();\n }\n\n return {\n disabled,\n goToNextPage,\n } satisfies NgpPaginationNextState;\n },\n);\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, Directive, input } from '@angular/core';\nimport { ngpPaginationNext } from './pagination-next-state';\n\n/**\n * The `NgpPaginationNext` directive is used to create a pagination button that navigates to the next page.\n */\n@Directive({\n selector: '[ngpPaginationNext]',\n exportAs: 'ngpPaginationNext',\n})\nexport class NgpPaginationNext {\n /**\n * Whether the button is disabled.\n */\n readonly disabled = input<boolean, BooleanInput>(false, {\n alias: 'ngpPaginationNextDisabled',\n transform: booleanAttribute,\n });\n\n protected readonly state = ngpPaginationNext({\n disabled: this.disabled,\n });\n\n /**\n * Go to the next page.\n */\n goToNextPage(): void {\n return this.state.goToNextPage();\n }\n}\n","import { computed, signal, Signal } from '@angular/core';\nimport { ngpButton } from 'ng-primitives/button';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { attrBinding, createPrimitive, dataBinding, listener } from 'ng-primitives/state';\nimport { injectPaginationState } from '../pagination/pagination-state';\n\nexport interface NgpPaginationPreviousState {\n /**\n * Whether the button is disabled, accounting for the parent pagination state.\n */\n readonly disabled: Signal<boolean>;\n /**\n * Go to the previous page.\n */\n goToPreviousPage(): void;\n}\n\nexport interface NgpPaginationPreviousProps {\n /**\n * Whether the button is disabled.\n */\n readonly disabled?: Signal<boolean>;\n}\n\nexport const [\n NgpPaginationPreviousStateToken,\n ngpPaginationPrevious,\n injectPaginationPreviousState,\n providePaginationPreviousState,\n] = createPrimitive(\n 'NgpPaginationPrevious',\n ({ disabled: _disabled = signal<boolean>(false) }: NgpPaginationPreviousProps) => {\n const elementRef = injectElementRef();\n const paginationState = injectPaginationState();\n\n const disabled = computed(\n () => _disabled() || paginationState().disabled() || paginationState().firstPage(),\n );\n\n // Setup interactions\n ngpButton({ disabled: disabled });\n\n // Host binding\n attrBinding(elementRef, 'tabindex', () => (disabled() ? -1 : 0));\n dataBinding(elementRef, 'data-first-page', () => (paginationState().firstPage() ? '' : null));\n\n // Listener\n listener(elementRef, 'click', goToPreviousPage);\n listener(elementRef, 'keydown.enter', handleOnEnter);\n listener(elementRef, 'keydown.space', handleOnEnter);\n\n function goToPreviousPage(): void {\n if (disabled()) {\n return;\n }\n\n paginationState().goToPage(paginationState().page() - 1);\n }\n\n function handleOnEnter(event: Event): void {\n event.preventDefault();\n event.stopPropagation();\n goToPreviousPage();\n }\n\n return {\n disabled,\n goToPreviousPage,\n } satisfies NgpPaginationPreviousState;\n },\n);\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, Directive, input } from '@angular/core';\nimport { ngpPaginationPrevious } from './pagination-previous-state';\n\n/**\n * The `NgpPaginationPrevious` directive is used to create a pagination button that navigates to the previous page.\n */\n@Directive({\n selector: '[ngpPaginationPrevious]',\n exportAs: 'ngpPaginationPrevious',\n})\nexport class NgpPaginationPrevious {\n /**\n * Whether the button is disabled.\n */\n readonly disabled = input<boolean, BooleanInput>(false, {\n alias: 'ngpPaginationPreviousDisabled',\n transform: booleanAttribute,\n });\n\n protected readonly state = ngpPaginationPrevious({\n disabled: this.disabled,\n });\n\n /**\n * Go to the previous page.\n */\n goToPreviousPage() {\n return this.state.goToPreviousPage();\n }\n}\n","import { BooleanInput, NumberInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, Directive, input, numberAttribute, output } from '@angular/core';\nimport { ngpPagination, providePaginationState } from './pagination-state';\n\n/**\n * The `NgpPagination` directive is used to create a pagination control.\n */\n@Directive({\n selector: '[ngpPagination]',\n exportAs: 'ngpPagination',\n providers: [providePaginationState()],\n})\nexport class NgpPagination {\n /**\n * The currently selected page. Leave unset for uncontrolled usage, where the\n * internal state is seeded from `defaultPage`.\n */\n readonly page = input<number | undefined, NumberInput>(undefined, {\n alias: 'ngpPaginationPage',\n transform: numberAttribute,\n });\n\n /**\n * The default page for uncontrolled usage.\n * @default 1\n */\n readonly defaultPage = input<number, NumberInput>(1, {\n alias: 'ngpPaginationDefaultPage',\n transform: numberAttribute,\n });\n\n /**\n * The event that is fired when the page changes.\n */\n readonly pageChange = output<number>({\n alias: 'ngpPaginationPageChange',\n });\n\n /**\n * The total number of pages.\n */\n readonly pageCount = input<number, NumberInput>(0, {\n alias: 'ngpPaginationPageCount',\n transform: numberAttribute,\n });\n\n /**\n * Whether the pagination is disabled.\n */\n readonly disabled = input<boolean, BooleanInput>(false, {\n alias: 'ngpPaginationDisabled',\n transform: booleanAttribute,\n });\n\n /**\n * The control state for the pagination.\n * @internal\n */\n protected readonly state = ngpPagination({\n page: this.page,\n defaultPage: this.defaultPage,\n pageCount: this.pageCount,\n disabled: this.disabled,\n onPageChange: (value: number) => this.pageChange.emit(value),\n });\n\n /**\n * Go to the specified page.\n * @param page The page to go to.\n */\n goToPage(page: number) {\n return this.state.goToPage(page);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-primitives-pagination.mjs","sources":["../../../../packages/ng-primitives/pagination/src/pagination/pagination-state.ts","../../../../packages/ng-primitives/pagination/src/pagination-button/pagination-button-state.ts","../../../../packages/ng-primitives/pagination/src/pagination-button/pagination-button.ts","../../../../packages/ng-primitives/pagination/src/pagination-first/pagination-first-state.ts","../../../../packages/ng-primitives/pagination/src/pagination-first/pagination-first.ts","../../../../packages/ng-primitives/pagination/src/pagination-last/pagination-last-state.ts","../../../../packages/ng-primitives/pagination/src/pagination-last/pagination-last.ts","../../../../packages/ng-primitives/pagination/src/pagination-next/pagination-next-state.ts","../../../../packages/ng-primitives/pagination/src/pagination-next/pagination-next.ts","../../../../packages/ng-primitives/pagination/src/pagination-previous/pagination-previous-state.ts","../../../../packages/ng-primitives/pagination/src/pagination-previous/pagination-previous.ts","../../../../packages/ng-primitives/pagination/src/pagination/pagination.ts","../../../../packages/ng-primitives/pagination/src/ng-primitives-pagination.ts"],"sourcesContent":["import { computed, signal, Signal, WritableSignal } from '@angular/core';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport {\n attrBinding,\n controlledState,\n createPrimitive,\n dataBinding,\n deprecatedSetter,\n} from 'ng-primitives/state';\nimport { Observable } from 'rxjs';\n\nexport interface NgpPaginationState {\n /**\n * The currently selected page.\n */\n readonly page: WritableSignal<number>;\n /**\n * The total number of pages.\n */\n readonly pageCount: Signal<number>;\n /**\n * Whether the pagination is disabled.\n */\n readonly disabled: Signal<boolean>;\n /**\n * Determine if we are on the first page.\n * @internal\n */\n readonly firstPage: Signal<boolean>;\n /**\n * Determine if we are on the last page.\n * @internal\n */\n readonly lastPage: Signal<boolean>;\n /**\n * The event that is fired when the page changes.\n */\n readonly pageChange: Observable<number>;\n /**\n * Go to the specified page.\n * @param page The page to go to.\n */\n goToPage: (page: number) => void;\n}\n\nexport interface NgpPaginationProps {\n /**\n * The currently selected page. When `undefined`, the pagination is uncontrolled\n * and seeds from `defaultPage`.\n */\n readonly page?: Signal<number | undefined>;\n /**\n * The default page for uncontrolled usage.\n */\n readonly defaultPage?: Signal<number>;\n /**\n * The total number of pages.\n */\n readonly pageCount?: Signal<number>;\n /**\n * Whether the pagination is disabled.\n */\n readonly disabled?: Signal<boolean>;\n /** Callback fired when the page state changes. */\n onPageChange: (page: number) => void;\n}\n\nexport const [\n NgpPaginationStateToken,\n ngpPagination,\n injectPaginationState,\n providePaginationState,\n] = createPrimitive(\n 'NgpPagination',\n ({\n page: _page = signal<number | undefined>(undefined),\n defaultPage: _defaultPage = signal<number>(1),\n pageCount: _pageCount = signal<number>(0),\n disabled: _disabled = signal<boolean>(false),\n onPageChange,\n }: NgpPaginationProps) => {\n const elementRef = injectElementRef();\n\n const [page, setPage, pageChange] = controlledState({\n value: _page,\n defaultValue: _defaultPage,\n onChange: onPageChange,\n });\n\n const firstPage = computed(() => page() === 1);\n const lastPage = computed(() => page() === _pageCount());\n\n // Host bindings\n attrBinding(elementRef, 'role', 'navigation');\n dataBinding(elementRef, 'data-page', () => page().toString());\n dataBinding(elementRef, 'data-page-count', () => _pageCount().toString());\n dataBinding(elementRef, 'data-first-page', () => (firstPage() ? '' : null));\n dataBinding(elementRef, 'data-last-page', () => (lastPage() ? '' : null));\n dataBinding(elementRef, 'data-disabled', () => (_disabled() ? '' : null));\n\n function goToPage(page: number) {\n // check if the page is within the bounds of the pagination\n if (page < 1 || page > _pageCount()) {\n return;\n }\n\n setPage(page);\n }\n\n return {\n page: deprecatedSetter(page, 'setPage', setPage),\n pageCount: _pageCount,\n pageChange,\n disabled: _disabled,\n firstPage,\n lastPage,\n goToPage,\n } satisfies NgpPaginationState;\n },\n);\n","import { computed, signal, Signal } from '@angular/core';\nimport { ngpButton } from 'ng-primitives/button';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { attrBinding, createPrimitive, dataBinding, listener } from 'ng-primitives/state';\nimport { injectPaginationState } from '../pagination/pagination-state';\n\nexport interface NgpPaginationButtonState {\n /**\n * Define the page this button represents.\n */\n readonly page: Signal<number>;\n /**\n * Whether the button is disabled, accounting for the parent pagination state.\n */\n readonly disabled: Signal<boolean>;\n /**\n * Go to the page this button represents.\n */\n goToPage(): void;\n}\n\nexport interface NgpPaginationButtonProps {\n /**\n * Define the page this button represents.\n */\n readonly page?: Signal<number>;\n /**\n * Whether the button is disabled.\n */\n readonly disabled?: Signal<boolean>;\n}\n\nexport const [\n NgpPaginationButtonStateToken,\n ngpPaginationButton,\n injectPaginationButtonState,\n providePaginationButtonState,\n] = createPrimitive(\n 'NgpPaginationButton',\n ({\n page = signal<number>(-1),\n disabled: _disabled = signal<boolean>(false),\n }: NgpPaginationButtonProps) => {\n const elementRef = injectElementRef();\n const paginationState = injectPaginationState();\n\n const selected = computed(() => page() === paginationState().page());\n const disabled = computed(() => _disabled() || paginationState().disabled());\n\n // Setup interactions\n ngpButton({ disabled: disabled });\n\n // Host binding\n attrBinding(elementRef, 'tabindex', () => (disabled() ? -1 : 0));\n attrBinding(elementRef, 'aria-current', selected);\n dataBinding(elementRef, 'data-page', () => page().toString());\n dataBinding(elementRef, 'data-selected', () => (selected() ? '' : null));\n\n // Listeners\n listener(elementRef, 'click', goToPage);\n listener(elementRef, 'keydown', handleKeydown);\n\n function goToPage(): void {\n if (disabled()) {\n return;\n }\n\n paginationState().goToPage(page());\n }\n\n function handleKeydown(event: KeyboardEvent): void {\n if (event.repeat || (event.key !== 'Enter' && event.key !== ' ')) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n goToPage();\n }\n\n return {\n page,\n disabled,\n goToPage,\n } satisfies NgpPaginationButtonState;\n },\n);\n","import { BooleanInput, NumberInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, Directive, input, numberAttribute } from '@angular/core';\nimport { ngpPaginationButton } from './pagination-button-state';\n\n/**\n * The `NgpPaginationButton` directive is used to create a pagination button.\n */\n@Directive({\n selector: '[ngpPaginationButton]',\n exportAs: 'ngpPaginationButton',\n})\nexport class NgpPaginationButton {\n /**\n * Define the page this button represents.\n */\n readonly page = input.required<number, NumberInput>({\n alias: 'ngpPaginationButtonPage',\n transform: numberAttribute,\n });\n\n /**\n * Whether the button is disabled.\n */\n readonly disabled = input<boolean, BooleanInput>(false, {\n alias: 'ngpPaginationButtonDisabled',\n transform: booleanAttribute,\n });\n\n protected readonly state = ngpPaginationButton({\n page: this.page,\n disabled: this.disabled,\n });\n\n /**\n * Go to the page this button represents.\n */\n goToPage(): void {\n return this.state.goToPage();\n }\n}\n","import { computed, signal, Signal } from '@angular/core';\nimport { ngpButton } from 'ng-primitives/button';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { attrBinding, createPrimitive, dataBinding, listener } from 'ng-primitives/state';\nimport { injectPaginationState } from '../pagination/pagination-state';\n\nexport interface NgpPaginationFirstState {\n /**\n * Whether the button is disabled, accounting for the parent pagination state.\n */\n readonly disabled: Signal<boolean>;\n /**\n * Go to the first page.\n */\n goToFirstPage(): void;\n}\n\nexport interface NgpPaginationFirstProps {\n /**\n * Whether the button is disabled.\n */\n readonly disabled?: Signal<boolean>;\n}\n\nexport const [\n NgpPaginationFirstStateToken,\n ngpPaginationFirst,\n injectPaginationFirstState,\n providePaginationFirstState,\n] = createPrimitive(\n 'NgpPaginationFirst',\n ({ disabled: _disabled = signal<boolean>(false) }: NgpPaginationFirstProps) => {\n const elementRef = injectElementRef();\n const paginationState = injectPaginationState();\n\n const disabled = computed(\n () => _disabled() || paginationState().disabled() || paginationState().firstPage(),\n );\n\n // Setup interactions\n ngpButton({ disabled: disabled });\n\n // Host binding\n attrBinding(elementRef, 'tabindex', () => (disabled() ? -1 : 0));\n dataBinding(elementRef, 'data-first-page', () => (paginationState().firstPage() ? '' : null));\n\n // Listener\n listener(elementRef, 'click', goToFirstPage);\n listener(elementRef, 'keydown', handleKeydown);\n\n function goToFirstPage(): void {\n if (disabled()) {\n return;\n }\n\n paginationState().goToPage(1);\n }\n\n function handleKeydown(event: KeyboardEvent): void {\n if (event.repeat || (event.key !== 'Enter' && event.key !== ' ')) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n goToFirstPage();\n }\n\n return {\n disabled,\n goToFirstPage,\n } satisfies NgpPaginationFirstState;\n },\n);\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, Directive, input } from '@angular/core';\nimport { ngpPaginationFirst } from './pagination-first-state';\n\n/**\n * The `NgpPaginationFirst` directive is used to create a pagination button that navigates to the first page.\n */\n@Directive({\n selector: '[ngpPaginationFirst]',\n exportAs: 'ngpPaginationFirst',\n})\nexport class NgpPaginationFirst {\n /**\n * Whether the button is disabled.\n */\n readonly disabled = input<boolean, BooleanInput>(false, {\n alias: 'ngpPaginationFirstDisabled',\n transform: booleanAttribute,\n });\n\n protected readonly state = ngpPaginationFirst({\n disabled: this.disabled,\n });\n\n /**\n * Go to the first page.\n */\n goToFirstPage() {\n return this.state.goToFirstPage();\n }\n}\n","import { computed, signal, Signal } from '@angular/core';\nimport { ngpButton } from 'ng-primitives/button';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { attrBinding, createPrimitive, dataBinding, listener } from 'ng-primitives/state';\nimport { injectPaginationState } from '../pagination/pagination-state';\n\nexport interface NgpPaginationLastState {\n /** Whether the button is disabled, accounting for the parent pagination state. */\n readonly disabled: Signal<boolean>;\n /** Go to the last page. */\n goToLastPage(): void;\n}\n\nexport interface NgpPaginationLastProps {\n /** Whether the button is disabled. */\n readonly disabled?: Signal<boolean>;\n}\n\nexport const [\n NgpPaginationLastStateToken,\n ngpPaginationLast,\n injectPaginationLastState,\n providePaginationLastState,\n] = createPrimitive(\n 'NgpPaginationLast',\n ({ disabled: _disabled = signal<boolean>(false) }: NgpPaginationLastProps) => {\n const elementRef = injectElementRef();\n const paginationState = injectPaginationState();\n\n const disabled = computed(\n () => _disabled() || paginationState().disabled() || paginationState().lastPage(),\n );\n\n // Setup interactions\n ngpButton({ disabled: disabled });\n\n // Host binding\n attrBinding(elementRef, 'tabindex', () => (disabled() ? -1 : 0));\n dataBinding(elementRef, 'data-last-page', () => (paginationState().lastPage() ? '' : null));\n\n // Listener\n listener(elementRef, 'click', goToLastPage);\n listener(elementRef, 'keydown', handleKeydown);\n\n function goToLastPage(): void {\n if (disabled()) {\n return;\n }\n\n paginationState().goToPage(paginationState().pageCount());\n }\n\n function handleKeydown(event: KeyboardEvent): void {\n if (event.repeat || (event.key !== 'Enter' && event.key !== ' ')) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n goToLastPage();\n }\n\n return {\n disabled,\n goToLastPage,\n } satisfies NgpPaginationLastState;\n },\n);\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, Directive, input } from '@angular/core';\nimport { ngpPaginationLast } from './pagination-last-state';\n\n/**\n * The `NgpPaginationLast` directive is used to create a pagination button that navigates to the last page.\n */\n@Directive({\n selector: '[ngpPaginationLast]',\n exportAs: 'ngpPaginationLast',\n})\nexport class NgpPaginationLast {\n /**\n * Whether the button is disabled.\n */\n readonly disabled = input<boolean, BooleanInput>(false, {\n alias: 'ngpPaginationLastDisabled',\n transform: booleanAttribute,\n });\n\n protected readonly state = ngpPaginationLast({\n disabled: this.disabled,\n });\n\n /**\n * Go to the last page.\n */\n goToLastPage(): void {\n this.state.goToLastPage();\n }\n}\n","import { computed, Signal, signal } from '@angular/core';\nimport { ngpButton } from 'ng-primitives/button';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { attrBinding, createPrimitive, dataBinding, listener } from 'ng-primitives/state';\nimport { injectPaginationState } from '../pagination/pagination-state';\n\nexport interface NgpPaginationNextState {\n /** Whether the button is disabled, accounting for the parent pagination state. */\n readonly disabled: Signal<boolean>;\n /** Go to the next page. */\n goToNextPage(): void;\n}\n\nexport interface NgpPaginationNextProps {\n /** Whether the button is disabled */\n readonly disabled?: Signal<boolean>;\n}\n\nexport const [\n NgpPaginationNextStateToken,\n ngpPaginationNext,\n injectPaginationNextState,\n providePaginationNextState,\n] = createPrimitive(\n 'NgpPaginationNext',\n ({ disabled: _disabled = signal<boolean>(false) }: NgpPaginationNextProps) => {\n const elementRef = injectElementRef();\n const paginationState = injectPaginationState();\n\n const disabled = computed(\n () => _disabled() || paginationState().disabled() || paginationState().lastPage(),\n );\n\n // Setup interactions\n ngpButton({ disabled: disabled });\n\n // Host binding\n attrBinding(elementRef, 'tabindex', () => (disabled() ? -1 : 0));\n dataBinding(elementRef, 'data-last-page', () => (paginationState().lastPage() ? '' : null));\n\n // Listener\n listener(elementRef, 'click', goToNextPage);\n listener(elementRef, 'keydown', handleKeydown);\n\n function goToNextPage(): void {\n if (disabled()) {\n return;\n }\n\n paginationState().goToPage(paginationState().page() + 1);\n }\n\n function handleKeydown(event: KeyboardEvent): void {\n if (event.repeat || (event.key !== 'Enter' && event.key !== ' ')) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n goToNextPage();\n }\n\n return {\n disabled,\n goToNextPage,\n } satisfies NgpPaginationNextState;\n },\n);\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, Directive, input } from '@angular/core';\nimport { ngpPaginationNext } from './pagination-next-state';\n\n/**\n * The `NgpPaginationNext` directive is used to create a pagination button that navigates to the next page.\n */\n@Directive({\n selector: '[ngpPaginationNext]',\n exportAs: 'ngpPaginationNext',\n})\nexport class NgpPaginationNext {\n /**\n * Whether the button is disabled.\n */\n readonly disabled = input<boolean, BooleanInput>(false, {\n alias: 'ngpPaginationNextDisabled',\n transform: booleanAttribute,\n });\n\n protected readonly state = ngpPaginationNext({\n disabled: this.disabled,\n });\n\n /**\n * Go to the next page.\n */\n goToNextPage(): void {\n return this.state.goToNextPage();\n }\n}\n","import { computed, signal, Signal } from '@angular/core';\nimport { ngpButton } from 'ng-primitives/button';\nimport { injectElementRef } from 'ng-primitives/internal';\nimport { attrBinding, createPrimitive, dataBinding, listener } from 'ng-primitives/state';\nimport { injectPaginationState } from '../pagination/pagination-state';\n\nexport interface NgpPaginationPreviousState {\n /**\n * Whether the button is disabled, accounting for the parent pagination state.\n */\n readonly disabled: Signal<boolean>;\n /**\n * Go to the previous page.\n */\n goToPreviousPage(): void;\n}\n\nexport interface NgpPaginationPreviousProps {\n /**\n * Whether the button is disabled.\n */\n readonly disabled?: Signal<boolean>;\n}\n\nexport const [\n NgpPaginationPreviousStateToken,\n ngpPaginationPrevious,\n injectPaginationPreviousState,\n providePaginationPreviousState,\n] = createPrimitive(\n 'NgpPaginationPrevious',\n ({ disabled: _disabled = signal<boolean>(false) }: NgpPaginationPreviousProps) => {\n const elementRef = injectElementRef();\n const paginationState = injectPaginationState();\n\n const disabled = computed(\n () => _disabled() || paginationState().disabled() || paginationState().firstPage(),\n );\n\n // Setup interactions\n ngpButton({ disabled: disabled });\n\n // Host binding\n attrBinding(elementRef, 'tabindex', () => (disabled() ? -1 : 0));\n dataBinding(elementRef, 'data-first-page', () => (paginationState().firstPage() ? '' : null));\n\n // Listener\n listener(elementRef, 'click', goToPreviousPage);\n listener(elementRef, 'keydown', handleKeydown);\n\n function goToPreviousPage(): void {\n if (disabled()) {\n return;\n }\n\n paginationState().goToPage(paginationState().page() - 1);\n }\n\n function handleKeydown(event: KeyboardEvent): void {\n if (event.repeat || (event.key !== 'Enter' && event.key !== ' ')) {\n return;\n }\n\n event.preventDefault();\n event.stopPropagation();\n goToPreviousPage();\n }\n\n return {\n disabled,\n goToPreviousPage,\n } satisfies NgpPaginationPreviousState;\n },\n);\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, Directive, input } from '@angular/core';\nimport { ngpPaginationPrevious } from './pagination-previous-state';\n\n/**\n * The `NgpPaginationPrevious` directive is used to create a pagination button that navigates to the previous page.\n */\n@Directive({\n selector: '[ngpPaginationPrevious]',\n exportAs: 'ngpPaginationPrevious',\n})\nexport class NgpPaginationPrevious {\n /**\n * Whether the button is disabled.\n */\n readonly disabled = input<boolean, BooleanInput>(false, {\n alias: 'ngpPaginationPreviousDisabled',\n transform: booleanAttribute,\n });\n\n protected readonly state = ngpPaginationPrevious({\n disabled: this.disabled,\n });\n\n /**\n * Go to the previous page.\n */\n goToPreviousPage() {\n return this.state.goToPreviousPage();\n }\n}\n","import { BooleanInput, NumberInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, Directive, input, numberAttribute, output } from '@angular/core';\nimport { ngpPagination, providePaginationState } from './pagination-state';\n\n/**\n * The `NgpPagination` directive is used to create a pagination control.\n */\n@Directive({\n selector: '[ngpPagination]',\n exportAs: 'ngpPagination',\n providers: [providePaginationState()],\n})\nexport class NgpPagination {\n /**\n * The currently selected page. Leave unset for uncontrolled usage, where the\n * internal state is seeded from `defaultPage`.\n */\n readonly page = input<number | undefined, NumberInput>(undefined, {\n alias: 'ngpPaginationPage',\n transform: numberAttribute,\n });\n\n /**\n * The default page for uncontrolled usage.\n * @default 1\n */\n readonly defaultPage = input<number, NumberInput>(1, {\n alias: 'ngpPaginationDefaultPage',\n transform: numberAttribute,\n });\n\n /**\n * The event that is fired when the page changes.\n */\n readonly pageChange = output<number>({\n alias: 'ngpPaginationPageChange',\n });\n\n /**\n * The total number of pages.\n */\n readonly pageCount = input<number, NumberInput>(0, {\n alias: 'ngpPaginationPageCount',\n transform: numberAttribute,\n });\n\n /**\n * Whether the pagination is disabled.\n */\n readonly disabled = input<boolean, BooleanInput>(false, {\n alias: 'ngpPaginationDisabled',\n transform: booleanAttribute,\n });\n\n /**\n * The control state for the pagination.\n * @internal\n */\n protected readonly state = ngpPagination({\n page: this.page,\n defaultPage: this.defaultPage,\n pageCount: this.pageCount,\n disabled: this.disabled,\n onPageChange: (value: number) => this.pageChange.emit(value),\n });\n\n /**\n * Go to the specified page.\n * @param page The page to go to.\n */\n goToPage(page: number) {\n return this.state.goToPage(page);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|