@gipisistemas/ngx-core 1.0.20 → 1.0.22

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.
@@ -1,7 +1,7 @@
1
1
  import { trigger, state, transition, style, group, animate } from '@angular/animations';
2
2
  import * as i0 from '@angular/core';
3
3
  import { inject, input, ChangeDetectionStrategy, Component, NgModule, Injectable, ViewEncapsulation, InjectionToken, DestroyRef, signal, Directive, Inject, computed, EnvironmentInjector, runInInjectionContext, numberAttribute, booleanAttribute, effect, afterNextRender, ElementRef, PLATFORM_ID, Renderer2, output, forwardRef, ChangeDetectorRef, viewChild, HostBinding, HostListener, TemplateRef, Input as Input$1, KeyValueDiffers, contentChild, model, NgZone, EventEmitter, Output, ContentChildren, Injector, viewChildren, ViewChild, Pipe, LOCALE_ID, untracked } from '@angular/core';
4
- import { takeUntilDestroyed, toObservable, toSignal } from '@angular/core/rxjs-interop';
4
+ import { takeUntilDestroyed, toSignal, toObservable } from '@angular/core/rxjs-interop';
5
5
  import * as i1 from '@angular/material/dialog';
6
6
  import { MatDialogRef, MAT_DIALOG_DATA, MatDialogModule, MatDialog, MatDialogConfig } from '@angular/material/dialog';
7
7
  import { finalize, take, filter, switchMap as switchMap$1, takeUntil as takeUntil$1, map as map$1, catchError as catchError$1, skip, distinctUntilChanged as distinctUntilChanged$1 } from 'rxjs/operators';
@@ -4445,6 +4445,42 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
4445
4445
  type: Directive
4446
4446
  }], ctorParameters: () => [{ type: BaseCrudService }] });
4447
4447
 
4448
+ /**
4449
+ * Cria um signal que rastreia um parâmetro de rota específico.
4450
+ * Atualiza de forma reativa quando o parâmetro muda.
4451
+ *
4452
+ * @param paramName Nome do parâmetro de rota a ser rastreado
4453
+ * @returns Um signal contendo o valor do parâmetro ou null.
4454
+ *
4455
+ * @example
4456
+ * ```typescript
4457
+ * // Para a rota /users/:id
4458
+ * const userId = useRouteParam('id');
4459
+ * ```
4460
+ */
4461
+ function useRouteParam(paramName) {
4462
+ const route = inject(ActivatedRoute);
4463
+ return toSignal(route.paramMap.pipe(map((pm) => pm.get(paramName))), {
4464
+ initialValue: route.snapshot.paramMap.get(paramName),
4465
+ });
4466
+ }
4467
+ /**
4468
+ * Cria um signal que rastreia todo o mapa de parâmetros da rota.
4469
+ * Útil quando você precisa acessar vários parâmetros.
4470
+ *
4471
+ * @returns Um signal contendo o ParamMap completo
4472
+ *
4473
+ * @example
4474
+ * ```typescript
4475
+ * const params = useRouteParamsMap();
4476
+ * const id = params().get('id');
4477
+ * ```
4478
+ */
4479
+ function useRouteParamsMap() {
4480
+ const route = inject(ActivatedRoute);
4481
+ return toSignal(route.paramMap, { initialValue: route.snapshot.paramMap });
4482
+ }
4483
+
4448
4484
  class BaseFormComponent extends BaseComponent {
4449
4485
  get entity() {
4450
4486
  return this._entity;
@@ -4455,6 +4491,7 @@ class BaseFormComponent extends BaseComponent {
4455
4491
  constructor(service) {
4456
4492
  super();
4457
4493
  this.service = service;
4494
+ this.id = useRouteParam('id');
4458
4495
  this._entity = this.newEntity();
4459
4496
  }
4460
4497
  /**
@@ -4483,10 +4520,9 @@ class BaseFormComponent extends BaseComponent {
4483
4520
  */
4484
4521
  onInitForm(version) {
4485
4522
  this.loading.set(true);
4486
- const id = this.activatedRoute.snapshot.params['id'];
4487
- if (UUIDUtil.isValid(id)) {
4523
+ if (UUIDUtil.isValid(this.id())) {
4488
4524
  this.service
4489
- .getOne(id, version)
4525
+ .getOne(this.id(), version)
4490
4526
  .pipe(takeUntilDestroyed(this.destroyRef), finalize$1(() => this.loading.set(false)))
4491
4527
  .subscribe({
4492
4528
  next: (entity) => {
@@ -23855,7 +23891,9 @@ class FilterService {
23855
23891
  request.onupgradeneeded = (event) => {
23856
23892
  const db = event.target.result;
23857
23893
  if (!db.objectStoreNames.contains(this._TABLE_NAME)) {
23858
- const store = db.createObjectStore(this._TABLE_NAME, { keyPath: this._KEY_PATH });
23894
+ const store = db.createObjectStore(this._TABLE_NAME, {
23895
+ keyPath: this._KEY_PATH,
23896
+ });
23859
23897
  store.createIndex(this._INDEX_USER_ID, 'userId', { unique: false });
23860
23898
  }
23861
23899
  };
@@ -23908,7 +23946,7 @@ class FilterService {
23908
23946
  this._validateFilterInput(view, userId, filter);
23909
23947
  const allFilters = await this.findAll(userId);
23910
23948
  if (!ArrayUtil.isEmpty(allFilters) && isDefault) {
23911
- const existingDefault = allFilters.find(e => e.isDefault);
23949
+ const existingDefault = allFilters.find((e) => e.isDefault);
23912
23950
  if (!ObjectUtil.isEmpty(existingDefault)) {
23913
23951
  existingDefault.isDefault = false;
23914
23952
  await this._executeTransaction('readwrite', (store) => store.put(existingDefault));
@@ -23995,7 +24033,7 @@ class FilterService {
23995
24033
  */
23996
24034
  async exportFilters(userId) {
23997
24035
  const filters = await this.findAll(userId);
23998
- const forExport = filters.map(e => ({
24036
+ const forExport = filters.map((e) => ({
23999
24037
  tag: e.tag,
24000
24038
  filter: e.filter,
24001
24039
  isDefault: e.isDefault,
@@ -24416,9 +24454,45 @@ function useLinkedFilter(initialValue, options) {
24416
24454
  return _inner;
24417
24455
  }
24418
24456
 
24457
+ /**
24458
+ * Cria um signal que rastreia um parâmetro de consulta específico.
24459
+ * Atualiza reativamente quando o parâmetro de consulta muda.
24460
+ *
24461
+ * @param paramName - Nome do parâmetro de consulta a ser rastreado
24462
+ * @returns Um signal contendo o valor do parâmetro ou null
24463
+ *
24464
+ * @example
24465
+ * ```typescript
24466
+ * // Para URL: /search?q=angular
24467
+ * const query = useRouteQueryParams('q');
24468
+ * ```
24469
+ */
24470
+ function useRouteQueryParams(paramName) {
24471
+ const route = inject(ActivatedRoute);
24472
+ return toSignal(route.queryParamMap.pipe(map((pm) => pm.get(paramName))), {
24473
+ initialValue: route.snapshot.queryParamMap.get(paramName),
24474
+ });
24475
+ }
24476
+ /**
24477
+ * Cria um signal que rastreia todo o mapa de parâmetros de consulta.
24478
+ * Útil quando você precisa acessar vários parâmetros de consulta.
24479
+ *
24480
+ * @returns Um signal contendo o mapa completo de parâmetros de consulta (ParamMap)
24481
+ *
24482
+ * @example
24483
+ * ```typescript
24484
+ * const params = useRouteQueryParamsMap();
24485
+ * const sort = params().get('sort');
24486
+ * ```
24487
+ */
24488
+ function useRouteQueryParamsMap() {
24489
+ const route = inject(ActivatedRoute);
24490
+ return toSignal(route.queryParamMap, { initialValue: route.snapshot.queryParamMap });
24491
+ }
24492
+
24419
24493
  /**
24420
24494
  * Generated bundle index. Do not edit.
24421
24495
  */
24422
24496
 
24423
- export { ActionRow, ActionRowModule, AllowedPublicRoutesToken, AppMessagesToken, ArrayUtil, AutoFocusDirective, AutoFocusModule, Avatar, AvatarModule, BaseAppliedFilter, BaseAuthService, BaseAuthServiceToken, BaseAuthorityModel, BaseComponent, BaseControlValueAccessor, BaseCrudService, BaseFilterModel, BaseFormComponent, BaseFormDialogComponent, BaseFormDialogDataModel, BaseInput, BaseListComponent, BaseListDialogComponent, BaseListDialogDataModel, BaseMenuModel, BaseModel, BasePageModel, BaseQueryParams, BaseReportComponent, BaseService, BaseSortModel, BaseTokenModel, BaseUserModel, Button, ButtonGroup, ButtonGroupModule, ButtonModule, CAPITALIZE_ACRONYMS, CAPITALIZE_PREPOSITIONS, CURRENCY_OPTIONS_DEFAULT, CacheableService, Checkbox, CheckboxGroup, CheckboxModule, Chips, ChipsModule, ConfirmDialog, ConfirmDialogIcon, ConfirmDialogModel, ConfirmDialogModule, ConfirmDialogService, CssUtil, CurrencyDirective, CurrencyModule, CurrencyUtil, DEFAULT_MESSAGES, DatePicker, DatePickerModule, DateUtil, Debounce, DialogConfig, DialogService, DisableAutoFillDirective, DocumentPipe, DocumentUtil, EchartsConfigToken, EchartsDirective, EchartsModule, EmailUtil, Empty, EmptyModule, ExpansionPanel, ExpansionPanelModule, Fieldset, FieldsetModule, FileDragAndDrop, FileDragAndDropModule, FileSaverService, FilterListbox, FilterListboxModule, FilterPersistenceService, FilterService, FilterURLService, FlexLayoutDirective, FlexLayoutModule, FormField, FormFieldErrors, FormFieldInputDirective, FormFieldModule, FormFieldPrefixDirective, FormFieldSuffixDirective, FormWrapper, FormWrapperDialog, FormWrapperModule, HelpfulTip, HelpfulTipModule, Icon, IconModule, Input, InputCurrency, InputCurrencyModule, InputFile, InputFileModule, InputGroup, InputGroupAddon, InputGroupModule, InputModule, InputPhone, InputPhoneModule, Label, LabelModule, Loading, LoadingModule, LocalStorageToken, Lozenge, LozengeModule, MoneyPipe, NomalizeTextPipe, NumberToWordsUtil, NumberUtil, ObjectUtil, PAGINATOR_INTL_PT_BR, PageAdjustService, Paginator, PaginatorIntlToken, PaginatorModule, PaginatorPipe, PasswordRequirements, PasswordRequirementsModule, PasswordValidationUtil, PdfViewer, PdfViewerDialog, PdfViewerDialogModel, PdfViewerDialogModule, PdfViewerService, PhoneUtil, Popover, PopoverModule, PopoverTargetDirective, PopoverTriggerDirective, RadioGroup, RadioGroupModule, STATES_DATA, ScrollFadeDirective, ScrollFadeModule, SelectClientSide, SelectEnum, SelectModule, SelectServerSide, SessionStorageToken, Sidenav, SidenavContainer, SidenavContent, SidenavMenuItem, SidenavModule, Skeleton, SkeletonModule, SplitButton, SplitButtonModule, StateUtil, Step, Stepper, StepperModule, StringUtil, SvgRegisterService, Tab, TabGroup, Table, TableColumn, TableColumnBuilder, TableMenuItemContext, TableMenuItemContextBuilder, TableModule, TabsModule, Tag, TagModule, TextCapitalizeDirective, TextCapitalizeModule, TextEllipsisDirective, TextEllipsisModule, Textarea, TextareaModule, Toast, ToastIcon, ToastModel, ToastModule, ToastService, ToggleSwitch, ToggleSwitchModule, Toolbar, ToolbarModule, TooltipDirective, TooltipModule, TopNav, TopNavModule, TreeTable, TreeTableColumn, TreeTableColumnBuilder, TreeTableMenuItemContext, TreeTableMenuItemContextBuilder, TreeTableModule, UUIDUtil, UserProfile, UserProfileModule, animationFlyInOut, authChildGuard, authGuard, authInterceptor, eConfirmDialogTypes, eCurrencyInputMode, eMenuType, eSortDirection, eToastTypes, eTypeOperationCloseDialogEnum, eTypeOperationDialog, entityFilterSignal, errorInterceptor, filterSignal, provideAllowedPublicRoutes, provideAppMessages, provideBaseAuthService, provideEchartsCore, providePaginatorIntl, provideValueAccessor, publicChildGuard, publicGuard, rotateAnimation, rotateArrowTreeTableExpand, stateNamesMap, transformFilterSignal, useFilterPersistence, useLinkedFilter };
24497
+ export { ActionRow, ActionRowModule, AllowedPublicRoutesToken, AppMessagesToken, ArrayUtil, AutoFocusDirective, AutoFocusModule, Avatar, AvatarModule, BaseAppliedFilter, BaseAuthService, BaseAuthServiceToken, BaseAuthorityModel, BaseComponent, BaseControlValueAccessor, BaseCrudService, BaseFilterModel, BaseFormComponent, BaseFormDialogComponent, BaseFormDialogDataModel, BaseInput, BaseListComponent, BaseListDialogComponent, BaseListDialogDataModel, BaseMenuModel, BaseModel, BasePageModel, BaseQueryParams, BaseReportComponent, BaseService, BaseSortModel, BaseTokenModel, BaseUserModel, Button, ButtonGroup, ButtonGroupModule, ButtonModule, CAPITALIZE_ACRONYMS, CAPITALIZE_PREPOSITIONS, CURRENCY_OPTIONS_DEFAULT, CacheableService, Checkbox, CheckboxGroup, CheckboxModule, Chips, ChipsModule, ConfirmDialog, ConfirmDialogIcon, ConfirmDialogModel, ConfirmDialogModule, ConfirmDialogService, CssUtil, CurrencyDirective, CurrencyModule, CurrencyUtil, DEFAULT_MESSAGES, DatePicker, DatePickerModule, DateUtil, Debounce, DialogConfig, DialogService, DisableAutoFillDirective, DocumentPipe, DocumentUtil, EchartsConfigToken, EchartsDirective, EchartsModule, EmailUtil, Empty, EmptyModule, ExpansionPanel, ExpansionPanelModule, Fieldset, FieldsetModule, FileDragAndDrop, FileDragAndDropModule, FileSaverService, FilterListbox, FilterListboxModule, FilterPersistenceService, FilterService, FilterURLService, FlexLayoutDirective, FlexLayoutModule, FormField, FormFieldErrors, FormFieldInputDirective, FormFieldModule, FormFieldPrefixDirective, FormFieldSuffixDirective, FormWrapper, FormWrapperDialog, FormWrapperModule, HelpfulTip, HelpfulTipModule, Icon, IconModule, Input, InputCurrency, InputCurrencyModule, InputFile, InputFileModule, InputGroup, InputGroupAddon, InputGroupModule, InputModule, InputPhone, InputPhoneModule, Label, LabelModule, Loading, LoadingModule, LocalStorageToken, Lozenge, LozengeModule, MoneyPipe, NomalizeTextPipe, NumberToWordsUtil, NumberUtil, ObjectUtil, PAGINATOR_INTL_PT_BR, PageAdjustService, Paginator, PaginatorIntlToken, PaginatorModule, PaginatorPipe, PasswordRequirements, PasswordRequirementsModule, PasswordValidationUtil, PdfViewer, PdfViewerDialog, PdfViewerDialogModel, PdfViewerDialogModule, PdfViewerService, PhoneUtil, Popover, PopoverModule, PopoverTargetDirective, PopoverTriggerDirective, RadioGroup, RadioGroupModule, STATES_DATA, ScrollFadeDirective, ScrollFadeModule, SelectClientSide, SelectEnum, SelectModule, SelectServerSide, SessionStorageToken, Sidenav, SidenavContainer, SidenavContent, SidenavMenuItem, SidenavModule, Skeleton, SkeletonModule, SplitButton, SplitButtonModule, StateUtil, Step, Stepper, StepperModule, StringUtil, SvgRegisterService, Tab, TabGroup, Table, TableColumn, TableColumnBuilder, TableMenuItemContext, TableMenuItemContextBuilder, TableModule, TabsModule, Tag, TagModule, TextCapitalizeDirective, TextCapitalizeModule, TextEllipsisDirective, TextEllipsisModule, Textarea, TextareaModule, Toast, ToastIcon, ToastModel, ToastModule, ToastService, ToggleSwitch, ToggleSwitchModule, Toolbar, ToolbarModule, TooltipDirective, TooltipModule, TopNav, TopNavModule, TreeTable, TreeTableColumn, TreeTableColumnBuilder, TreeTableMenuItemContext, TreeTableMenuItemContextBuilder, TreeTableModule, UUIDUtil, UserProfile, UserProfileModule, animationFlyInOut, authChildGuard, authGuard, authInterceptor, eConfirmDialogTypes, eCurrencyInputMode, eMenuType, eSortDirection, eToastTypes, eTypeOperationCloseDialogEnum, eTypeOperationDialog, entityFilterSignal, errorInterceptor, filterSignal, provideAllowedPublicRoutes, provideAppMessages, provideBaseAuthService, provideEchartsCore, providePaginatorIntl, provideValueAccessor, publicChildGuard, publicGuard, rotateAnimation, rotateArrowTreeTableExpand, stateNamesMap, transformFilterSignal, useFilterPersistence, useLinkedFilter, useRouteParam, useRouteParamsMap, useRouteQueryParams, useRouteQueryParamsMap, useSearch };
24424
24498
  //# sourceMappingURL=gipisistemas-ngx-core.mjs.map