@po-ui/ng-components 21.17.0 → 21.19.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.
Files changed (54) hide show
  1. package/fesm2022/{po-ui-ng-components-po-chart-modal-table.component-BkH0bb8j.mjs → po-ui-ng-components-po-chart-modal-table.component-CzvA7U-U.mjs} +4 -4
  2. package/fesm2022/{po-ui-ng-components-po-chart-modal-table.component-BkH0bb8j.mjs.map → po-ui-ng-components-po-chart-modal-table.component-CzvA7U-U.mjs.map} +1 -1
  3. package/fesm2022/po-ui-ng-components.mjs +14353 -11386
  4. package/fesm2022/po-ui-ng-components.mjs.map +1 -1
  5. package/lib/components/po-calendar/po-calendar-base.component.d.ts +54 -44
  6. package/lib/components/po-calendar/po-calendar-mode.enum.d.ts +2 -1
  7. package/lib/components/po-calendar/po-calendar.component.d.ts +7 -2
  8. package/lib/components/po-calendar/services/po-calendar.service.d.ts +1 -0
  9. package/lib/components/po-dynamic/po-dynamic-form/interfaces/po-dynamic-form-field.interface.d.ts +28 -8
  10. package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-fields-base.component.d.ts +7 -0
  11. package/lib/components/po-field/index.d.ts +2 -0
  12. package/lib/components/po-field/po-datetimepicker/po-datetimepicker-base.component.d.ts +509 -0
  13. package/lib/components/po-field/po-datetimepicker/po-datetimepicker.component.d.ts +130 -0
  14. package/lib/components/po-field/po-datetimepicker/po-datetimepicker.literals.d.ts +42 -0
  15. package/lib/components/po-field/po-datetimepicker/po-datetimepicker.module.d.ts +7 -0
  16. package/lib/components/po-field/po-field.module.d.ts +1 -1
  17. package/lib/components/po-timer/po-timer.component.d.ts +2 -2
  18. package/lib/services/index.d.ts +1 -0
  19. package/lib/services/po-theme/helpers/types/po-theme-dark-defaults-AA.constant.d.ts +1 -0
  20. package/lib/services/po-theme/helpers/types/po-theme-dark-defaults.constant.d.ts +1 -0
  21. package/lib/services/po-user-guide/enums/index.d.ts +2 -0
  22. package/lib/services/po-user-guide/enums/po-user-guide-alignment.enum.d.ts +18 -0
  23. package/lib/services/po-user-guide/enums/po-user-guide-position.enum.d.ts +24 -0
  24. package/lib/services/po-user-guide/index.d.ts +6 -0
  25. package/lib/services/po-user-guide/interfaces/index.d.ts +6 -0
  26. package/lib/services/po-user-guide/interfaces/po-user-guide-end-event.interface.d.ts +46 -0
  27. package/lib/services/po-user-guide/interfaces/po-user-guide-literals.interface.d.ts +19 -0
  28. package/lib/services/po-user-guide/interfaces/po-user-guide-options.interface.d.ts +195 -0
  29. package/lib/services/po-user-guide/interfaces/po-user-guide-start-event.interface.d.ts +39 -0
  30. package/lib/services/po-user-guide/interfaces/po-user-guide-step-change-event.interface.d.ts +54 -0
  31. package/lib/services/po-user-guide/interfaces/po-user-guide-step.interface.d.ts +173 -0
  32. package/lib/services/po-user-guide/po-user-guide-base.service.d.ts +365 -0
  33. package/lib/services/po-user-guide/po-user-guide-scroll-lock.d.ts +55 -0
  34. package/lib/services/po-user-guide/po-user-guide.literals.d.ts +7 -0
  35. package/lib/services/po-user-guide/po-user-guide.module.d.ts +2 -0
  36. package/lib/services/po-user-guide/po-user-guide.service.d.ts +174 -0
  37. package/package.json +5 -4
  38. package/po-ui-ng-components-21.19.0.tgz +0 -0
  39. package/schematics/ng-add/index.js +1 -1
  40. package/schematics/ng-update/v14/index.js +1 -1
  41. package/schematics/ng-update/v15/index.js +1 -1
  42. package/schematics/ng-update/v16/index.js +1 -1
  43. package/schematics/ng-update/v17/index.js +1 -1
  44. package/schematics/ng-update/v18/index.js +2 -2
  45. package/schematics/ng-update/v19/index.js +2 -2
  46. package/schematics/ng-update/v2/index.js +1 -1
  47. package/schematics/ng-update/v20/index.js +2 -2
  48. package/schematics/ng-update/v21/index.js +1 -1
  49. package/schematics/ng-update/v3/index.js +1 -1
  50. package/schematics/ng-update/v4/index.js +1 -1
  51. package/schematics/ng-update/v5/index.js +1 -1
  52. package/schematics/ng-update/v6/index.js +1 -1
  53. package/types/po-ui-ng-components.d.ts +17321 -15514
  54. package/po-ui-ng-components-21.17.0.tgz +0 -0
@@ -0,0 +1,509 @@
1
+ import { EventEmitter } from '@angular/core';
2
+ import { AbstractControl, ControlValueAccessor, Validator } from '@angular/forms';
3
+ import { PoMask } from '../po-input/po-mask';
4
+ import { PoHelperOptions } from '../../po-helper';
5
+ import { PoLanguageService } from '../../../services';
6
+ import { PoTimerFormat } from '../../po-timer/enums/po-timer-format.enum';
7
+ /**
8
+ * @description
9
+ *
10
+ * O `po-datetimepicker` é um componente para manipulação de data e hora, permitindo a digitação e/ou seleção
11
+ * por meio de um calendário integrado com um painel de horários.
12
+ *
13
+ * O formato de exibição da data é determinado automaticamente pelo locale configurado, podendo ser alterado
14
+ * pela propriedade `p-format-date`. O formato de hora pode ser 24h ou 12h (AM/PM), configurável via `p-format-time`.
15
+ *
16
+ * O idioma padrão do calendário será exibido de acordo com o navegador, caso tenha necessidade de alterar
17
+ * use a propriedade `p-locale`.
18
+ *
19
+ * O componente aceita os seguintes formatos de entrada:
20
+ *
21
+ * - ISO 8601 com timezone: `'2026-05-12T14:30:00-03:00'`
22
+ * - ISO 8601 UTC: `'2026-05-12T14:30:00Z'`
23
+ * - ISO 8601 sem timezone: `'2026-05-12T14:30:00'`
24
+ * - ISO 8601 apenas data: `'2026-05-12'`
25
+ * - JavaScript Date Object: `new Date(2026, 4, 12, 14, 30)`
26
+ *
27
+ * O formato de saída do *model* é sempre ISO 8601 com timezone local: `'yyyy-mm-ddTHH:mm+/-HH:mm'`
28
+ * (ou `'yyyy-mm-ddTHH:mm:ss+/-HH:mm'` quando `p-show-seconds` está ativo).
29
+ *
30
+ * **Importante:**
31
+ *
32
+ * - O valor emitido no model inclui o offset do timezone local do navegador.
33
+ * - Ao receber um valor com timezone, o componente converte automaticamente para horário local.
34
+ * - Caso a data/hora esteja inválida, o `model` receberá a mensagem de erro localizada.
35
+ * - Caso o `input` esteja passando um `[(ngModel)]`, mas não tenha um `name`, então irá ocorrer um erro
36
+ * do próprio Angular (`[ngModelOptions]="{standalone: true}"`).
37
+ *
38
+ * Exemplo:
39
+ *
40
+ * ```
41
+ * <po-datetimepicker
42
+ * [(ngModel)]="agendamento"
43
+ * [ngModelOptions]="{standalone: true}"
44
+ * </po-datetimepicker>
45
+ * ```
46
+ *
47
+ * > Não esqueça de importar o `FormsModule` em seu módulo, tal como para utilizar o `input default`.
48
+ *
49
+ * #### Tokens customizáveis
50
+ *
51
+ * É possível alterar o estilo do componente usando os seguintes tokens (CSS): <br>
52
+ * Obs: Só é possível realizar alterações ao adicionar a classe `.po-input`
53
+ *
54
+ * > Para maiores informações, acesse o guia [Personalizando o Tema Padrão com Tokens CSS](https://po-ui.io/guides/theme-customization).
55
+ *
56
+ * | Propriedade | Descrição | Valor Padrão |
57
+ * |----------------------------------------|-------------------------------------------------------|--------------------------------------------------|
58
+ * | **Default Values** | | |
59
+ * | `--font-family` | Família tipográfica usada | `var(--font-family-theme)` |
60
+ * | `--font-size` | Tamanho da fonte | `var(--font-size-default)` |
61
+ * | `--text-color-placeholder` &nbsp; | Cor principal do texto do placeholder | `var(--color-neutral-light-30)` |
62
+ * | `--color` | Cor principal do datetimepicker | `var(--color-neutral-dark-70)` |
63
+ * | `--background` | Cor de background | `var(--color-neutral-light-05)` |
64
+ * | `--padding` | Preenchimento | `0 0.5rem` |
65
+ * | `--text-color` | Cor do texto | `var(--color-neutral-dark-90)` |
66
+ * | `--field-container-title-justify` | Alinhamento horizontal do título (`justify-content`) | `space-between` |
67
+ * | `--field-container-title-flex` | Flex do título (`flex`) | `1 auto` |
68
+ * | **Hover** | | |
69
+ * | `--color-hover` | Cor principal no estado hover | `var(--color-brand-01-dark)` |
70
+ * | `--background-hover` | Cor de background no estado hover | `var(--color-brand-01-lightest)` |
71
+ * | **Focused** | | |
72
+ * | `--color-focused` | Cor principal no estado de focus | `var(--color-action-default)` |
73
+ * | `--outline-color-focused` | Cor do outline do estado de focus | `var(--color-action-focus)` |
74
+ * | **Disabled** | | |
75
+ * | `--color-disabled` | Cor principal no estado disabled | `var(--color-neutral-light-30)` |
76
+ * | `--background-disabled` | Cor de background no estado disabled &nbsp; | `var(--color-neutral-light-20)` |
77
+ * | `--text-color-disabled` | Cor do texto no estado disabled | `var(--color-neutral-dark-70)` |
78
+ *
79
+ */
80
+ export declare abstract class PoDatetimepickerBaseComponent implements ControlValueAccessor, Validator {
81
+ protected languageService: PoLanguageService;
82
+ private _clean;
83
+ private _disabled;
84
+ private _initialSize?;
85
+ private _format?;
86
+ private _locale?;
87
+ private _noAutocomplete;
88
+ private _placeholder;
89
+ private _readonly;
90
+ private _required;
91
+ private _size?;
92
+ private _date;
93
+ private _timeValue;
94
+ private previousValue;
95
+ private _resolvedMinDate;
96
+ private _resolvedMaxDate;
97
+ protected hasValidatorRequired: boolean;
98
+ protected hour: string;
99
+ protected isExtendedISO: boolean;
100
+ protected objMask: any;
101
+ protected onChangeModel: any;
102
+ protected onTouchedModel: any;
103
+ protected validatorChange: any;
104
+ protected shortLanguage: string;
105
+ currentErrorPattern: import("@angular/core").WritableSignal<string>;
106
+ /**
107
+ * @optional
108
+ *
109
+ * @description
110
+ *
111
+ * Define que o `calendar` e/ou tooltip serão incluídos no body da página e não dentro do componente.
112
+ *
113
+ * @default `false`
114
+ */
115
+ appendBox: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
116
+ /**
117
+ * @optional
118
+ *
119
+ * @description
120
+ *
121
+ * Aplica foco no elemento ao ser iniciado.
122
+ *
123
+ * @default `false`
124
+ */
125
+ autoFocus: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
126
+ /**
127
+ * @optional
128
+ *
129
+ * @description
130
+ *
131
+ * Habilita ação para limpar o campo.
132
+ *
133
+ * @default `false`
134
+ */
135
+ clean: import("@angular/core").InputSignal<string | boolean>;
136
+ /**
137
+ * @optional
138
+ *
139
+ * @description
140
+ *
141
+ * Define se o título do campo será exibido de forma compacta.
142
+ *
143
+ * @default `false`
144
+ */
145
+ compactLabel: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
146
+ /**
147
+ * @optional
148
+ *
149
+ * @description
150
+ *
151
+ * Desabilita o campo.
152
+ *
153
+ * @default `false`
154
+ */
155
+ disabled: import("@angular/core").InputSignal<string | boolean>;
156
+ /**
157
+ * @optional
158
+ *
159
+ * @description
160
+ *
161
+ * Limita a exibição da mensagem de erro a duas linhas e exibe um tooltip com o texto completo.
162
+ *
163
+ * @default `false`
164
+ */
165
+ errorLimit: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
166
+ /**
167
+ * @optional
168
+ *
169
+ * @description
170
+ *
171
+ * Mensagem apresentada quando a data/hora for inválida ou fora do período.
172
+ */
173
+ errorPattern: import("@angular/core").InputSignal<string>;
174
+ /**
175
+ * @optional
176
+ *
177
+ * @description
178
+ *
179
+ * Texto de apoio do campo.
180
+ */
181
+ help: import("@angular/core").InputSignal<string>;
182
+ /**
183
+ * @optional
184
+ *
185
+ * @description
186
+ *
187
+ * Rótulo do campo.
188
+ */
189
+ label: import("@angular/core").InputSignal<string>;
190
+ /**
191
+ * @optional
192
+ *
193
+ * @description
194
+ *
195
+ * Habilita a quebra automática do texto da propriedade `p-label`.
196
+ *
197
+ * @default `false`
198
+ */
199
+ labelTextWrap: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
200
+ /**
201
+ * @optional
202
+ *
203
+ * @description
204
+ *
205
+ * Exibe um ícone de carregamento no lado direito do campo.
206
+ *
207
+ * @default `false`
208
+ */
209
+ loading: import("@angular/core").InputSignal<string | boolean>;
210
+ readonly isLoading: import("@angular/core").Signal<boolean>;
211
+ /**
212
+ * @optional
213
+ *
214
+ * @description
215
+ *
216
+ * Idioma do componente.
217
+ *
218
+ * > O locale padrão será recuperado com base no [`PoI18nService`](/documentation/po-i18n) ou *browser*.
219
+ */
220
+ localeInput: import("@angular/core").InputSignal<string>;
221
+ /**
222
+ * @optional
223
+ *
224
+ * @description
225
+ *
226
+ * Define uma data máxima para o `po-datetimepicker`.
227
+ * Datas posteriores ao limite ficam desabilitadas no calendário.
228
+ *
229
+ * Aceita os formatos:
230
+ * - `Date` object: `new Date(2026, 4, 31)`
231
+ * - ISO string: `'2026-05-31'`
232
+ * - ISO com hora: `'2026-05-31T23:59:59-03:00'`
233
+ */
234
+ maxDateInput: import("@angular/core").InputSignal<string | Date>;
235
+ /**
236
+ * @optional
237
+ *
238
+ * @description
239
+ *
240
+ * Define o horário máximo permitido para seleção no timer.
241
+ * Horários posteriores ao limite ficam desabilitados.
242
+ *
243
+ * Formato aceito: `HH:mm` ou `HH:mm:ss`.
244
+ */
245
+ maxTime: import("@angular/core").InputSignal<string>;
246
+ /**
247
+ * @optional
248
+ *
249
+ * @description
250
+ *
251
+ * Define uma data mínima para o `po-datetimepicker`.
252
+ * Datas anteriores ao limite ficam desabilitadas no calendário.
253
+ *
254
+ * Aceita os formatos:
255
+ * - `Date` object: `new Date(2026, 0, 1)`
256
+ * - ISO string: `'2026-01-01'`
257
+ * - ISO com hora: `'2026-01-01T00:00:00-03:00'`
258
+ */
259
+ minDateInput: import("@angular/core").InputSignal<string | Date>;
260
+ /**
261
+ * @optional
262
+ *
263
+ * @description
264
+ *
265
+ * Define o horário mínimo permitido para seleção no timer.
266
+ * Horários anteriores ao limite ficam desabilitados.
267
+ *
268
+ * Formato aceito: `HH:mm` ou `HH:mm:ss`.
269
+ */
270
+ minTime: import("@angular/core").InputSignal<string>;
271
+ /**
272
+ * @optional
273
+ *
274
+ * @description
275
+ *
276
+ * Define o intervalo entre os minutos exibidos no painel do timer.
277
+ *
278
+ * @default `5`
279
+ */
280
+ minuteInterval: import("@angular/core").InputSignal<number>;
281
+ /**
282
+ * @optional
283
+ *
284
+ * @description
285
+ *
286
+ * Nome do componente.
287
+ */
288
+ name: import("@angular/core").InputSignal<string>;
289
+ /**
290
+ * @optional
291
+ *
292
+ * @description
293
+ *
294
+ * Define a propriedade nativa `autocomplete` do campo como `off`.
295
+ *
296
+ * @default `false`
297
+ */
298
+ noAutocomplete: import("@angular/core").InputSignal<string | boolean>;
299
+ /**
300
+ * @optional
301
+ *
302
+ * @description
303
+ *
304
+ * Define se a indicação de campo opcional será exibida.
305
+ *
306
+ * @default `false`
307
+ */
308
+ optional: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
309
+ /**
310
+ * @optional
311
+ *
312
+ * @description
313
+ *
314
+ * Mensagem que aparecerá enquanto o campo não estiver preenchido.
315
+ */
316
+ placeholder: import("@angular/core").InputSignal<string>;
317
+ /**
318
+ * @optional
319
+ *
320
+ * @description
321
+ *
322
+ * Define as opções do componente de ajuda (po-helper).
323
+ *
324
+ * > Para mais informações acesse: https://po-ui.io/documentation/po-helper.
325
+ */
326
+ poHelperComponent: import("@angular/core").InputSignal<string | PoHelperOptions>;
327
+ /**
328
+ * @optional
329
+ *
330
+ * @description
331
+ *
332
+ * Torna o componente somente leitura.
333
+ *
334
+ * @default `false`
335
+ */
336
+ readonly: import("@angular/core").InputSignal<string | boolean>;
337
+ /**
338
+ * @optional
339
+ *
340
+ * @description
341
+ *
342
+ * Define que o campo será obrigatório.
343
+ *
344
+ * @default `false`
345
+ */
346
+ required: import("@angular/core").InputSignal<string | boolean>;
347
+ /**
348
+ * @optional
349
+ *
350
+ * @description
351
+ *
352
+ * Define o intervalo entre os segundos exibidos no painel do timer.
353
+ * Utilizado apenas quando `p-show-seconds` está ativo.
354
+ *
355
+ * @default `1`
356
+ */
357
+ secondInterval: import("@angular/core").InputSignal<number>;
358
+ /**
359
+ * @optional
360
+ *
361
+ * @description
362
+ *
363
+ * Exibe a mensagem setada na propriedade `p-error-pattern` se o campo estiver vazio e for requerido.
364
+ *
365
+ * > Necessário que a propriedade `p-required` esteja habilitada.
366
+ *
367
+ * @default `false`
368
+ */
369
+ showErrorMessageRequired: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
370
+ /**
371
+ * @optional
372
+ *
373
+ * @description
374
+ *
375
+ * Define se a indicação de campo obrigatório será exibida.
376
+ *
377
+ * @default `false`
378
+ */
379
+ showRequired: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
380
+ /**
381
+ * @optional
382
+ *
383
+ * @description
384
+ *
385
+ * Exibe a coluna de segundos no painel de seleção do timer.
386
+ *
387
+ * @default `false`
388
+ */
389
+ showSeconds: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
390
+ /**
391
+ * @optional
392
+ *
393
+ * @description
394
+ *
395
+ * Define o tamanho do componente:
396
+ * - `small`: altura do input como 32px (disponível apenas para acessibilidade AA).
397
+ * - `medium`: altura do input como 44px.
398
+ *
399
+ * @default `medium`
400
+ */
401
+ size: import("@angular/core").InputSignal<string>;
402
+ /**
403
+ * @optional
404
+ *
405
+ * @description
406
+ *
407
+ * Define o formato de exibição do timer.
408
+ *
409
+ * Valores válidos:
410
+ * - `24`: formato de 24 horas (padrão para pt, es, ru)
411
+ * - `12`: formato de 12 horas com indicador AM/PM (padrão para en)
412
+ *
413
+ * Quando não informado, o formato será determinado automaticamente pelo locale:
414
+ * - `en` → 12h (AM/PM)
415
+ * - `pt`, `es`, `ru` → 24h
416
+ *
417
+ * @default Determinado pelo locale
418
+ */
419
+ timerFormat: import("@angular/core").InputSignal<PoTimerFormat>;
420
+ /**
421
+ * @optional
422
+ *
423
+ * @description
424
+ *
425
+ * Define o formato de exibição da data.
426
+ *
427
+ * Valores válidos:
428
+ * - `dd/mm/yyyy`
429
+ * - `mm/dd/yyyy`
430
+ * - `yyyy/mm/dd`
431
+ *
432
+ * Quando não informado, o formato será determinado automaticamente pelo locale:
433
+ * - `en` → `mm/dd/yyyy`
434
+ * - `pt`, `es`, `ru` → `dd/mm/yyyy`
435
+ *
436
+ * @default Determinado pelo locale
437
+ */
438
+ dateFormat: import("@angular/core").InputSignal<string>;
439
+ /**
440
+ * @optional
441
+ *
442
+ * @description
443
+ *
444
+ * Evento disparado ao sair do campo (blur).
445
+ */
446
+ onblur: EventEmitter<void>;
447
+ /**
448
+ * @optional
449
+ *
450
+ * @description
451
+ *
452
+ * Evento disparado ao alterar valor do campo.
453
+ */
454
+ onchange: EventEmitter<string>;
455
+ /**
456
+ * @optional
457
+ *
458
+ * @description
459
+ *
460
+ * Evento disparado quando uma tecla é pressionada enquanto o foco está no componente.
461
+ */
462
+ keydown: EventEmitter<KeyboardEvent>;
463
+ constructor(languageService: PoLanguageService);
464
+ writeValue(value: any): void;
465
+ registerOnChange(fn: any): void;
466
+ registerOnTouched(fn: any): void;
467
+ setDisabledState(isDisabled: boolean): void;
468
+ registerOnValidatorChange(fn: () => void): void;
469
+ validate(c: AbstractControl): {
470
+ [key: string]: any;
471
+ };
472
+ protected get date(): Date;
473
+ protected set date(value: Date);
474
+ protected get timeValue(): string;
475
+ protected set timeValue(value: string);
476
+ get format(): string;
477
+ get resolvedTimerFormat(): PoTimerFormat;
478
+ get is12HourFormat(): boolean;
479
+ get isClean(): boolean;
480
+ get isDisabled(): boolean;
481
+ get isNoAutocomplete(): boolean;
482
+ get placeholderValue(): string;
483
+ get isReadonly(): boolean;
484
+ get isRequired(): boolean;
485
+ get locale(): string;
486
+ get resolvedSize(): string;
487
+ get hostSize(): string;
488
+ protected onThemeChange(): void;
489
+ mapSizeToIcon(size: string): string;
490
+ abstract refreshValue(value: Date): void;
491
+ getModelValue(): string;
492
+ getTimezoneOffset(date?: Date): string;
493
+ callOnChange(value: any, retry?: boolean): void;
494
+ controlModel(): void;
495
+ formatTimeForDisplay(time: string): string;
496
+ protected buildMask(format?: string): PoMask;
497
+ protected validateModel(value: any): void;
498
+ get resolvedMinDate(): Date | undefined;
499
+ get resolvedMaxDate(): Date | undefined;
500
+ private isDateInRange;
501
+ private isTimeInRange;
502
+ private timeToSeconds;
503
+ private resolveFormat;
504
+ private processStringValue;
505
+ private normalizeTimePart;
506
+ private extractTimeFromDate;
507
+ private requiredFailed;
508
+ private applySizeBasedOnA11y;
509
+ }
@@ -0,0 +1,130 @@
1
+ import { OnDestroy, ElementRef, AfterViewInit } from '@angular/core';
2
+ import { PoButtonComponent } from '../../po-button';
3
+ import { PoHelperComponent } from '../../po-helper';
4
+ import { PoCalendarComponent } from '../../po-calendar/po-calendar.component';
5
+ import { PoDatetimepickerBaseComponent } from './po-datetimepicker-base.component';
6
+ /**
7
+ * @docsExtends PoDatetimepickerBaseComponent
8
+ *
9
+ * @example
10
+ *
11
+ * <example name="po-datetimepicker-basic" title="PO Datetimepicker Basic">
12
+ * <file name="sample-po-datetimepicker-basic/sample-po-datetimepicker-basic.component.html"> </file>
13
+ * <file name="sample-po-datetimepicker-basic/sample-po-datetimepicker-basic.component.ts"> </file>
14
+ * </example>
15
+ *
16
+ * <example name="po-datetimepicker-labs" title="PO Datetimepicker Labs">
17
+ * <file name="sample-po-datetimepicker-labs/sample-po-datetimepicker-labs.component.html"> </file>
18
+ * <file name="sample-po-datetimepicker-labs/sample-po-datetimepicker-labs.component.ts"> </file>
19
+ * </example>
20
+ *
21
+ * <example name="po-datetimepicker-12h-seconds" title="PO Datetimepicker - 12h with Seconds">
22
+ * <file name="sample-po-datetimepicker-12h-seconds/sample-po-datetimepicker-12h-seconds.component.html"> </file>
23
+ * <file name="sample-po-datetimepicker-12h-seconds/sample-po-datetimepicker-12h-seconds.component.ts"> </file>
24
+ * </example>
25
+ *
26
+ * <example name="po-datetimepicker-scheduling" title="PO Datetimepicker - Scheduling">
27
+ * <file name="sample-po-datetimepicker-scheduling/sample-po-datetimepicker-scheduling.component.html"> </file>
28
+ * <file name="sample-po-datetimepicker-scheduling/sample-po-datetimepicker-scheduling.component.ts"> </file>
29
+ * </example>
30
+ */
31
+ export declare class PoDatetimepickerComponent extends PoDatetimepickerBaseComponent implements AfterViewInit, OnDestroy {
32
+ iconDatepicker: PoButtonComponent;
33
+ calendarComponent: PoCalendarComponent;
34
+ inputEl: ElementRef;
35
+ iconClean: ElementRef<HTMLElement>;
36
+ dialogPicker: ElementRef;
37
+ helperEl?: PoHelperComponent;
38
+ private readonly renderer;
39
+ private readonly cd;
40
+ private readonly poCalendarService;
41
+ private readonly controlPosition;
42
+ id: string;
43
+ displayAdditionalHelp: boolean;
44
+ el: ElementRef;
45
+ literals: any;
46
+ visible: boolean;
47
+ private clickListener;
48
+ private eventResizeListener;
49
+ private valueBeforeChange;
50
+ constructor();
51
+ ngAfterViewInit(): void;
52
+ ngOnDestroy(): void;
53
+ togglePicker(focusInput?: boolean): void;
54
+ closeCalendar(focusInput?: boolean): void;
55
+ focus(): void;
56
+ wasClickedOnPicker(event: any): void;
57
+ verifyMobile(): RegExpMatchArray;
58
+ hasInvalidClass(): boolean;
59
+ getErrorPattern(): string;
60
+ onKeyup($event: any): void;
61
+ onKeydown($event: any): void;
62
+ eventOnBlur($event: any): void;
63
+ eventOnClick($event: any): void;
64
+ private isFocusOnFirstCombo;
65
+ eventOnCalendarKeydown(event: KeyboardEvent): void;
66
+ onTimerBoundaryTab(event: {
67
+ direction: string;
68
+ event: KeyboardEvent;
69
+ column: string;
70
+ }): void;
71
+ refreshValue(value: Date): void;
72
+ onTimeChange(time: string): void;
73
+ onDateChange(date: any): void;
74
+ clear(): void;
75
+ setHelper(label?: string, additionalHelpTooltip?: string): {
76
+ hideAdditionalHelp: boolean;
77
+ helperSettings?: any;
78
+ };
79
+ /**
80
+ * Método que exibe `p-helper` ou executa a ação definida em `p-helper{eventOnClick}`.
81
+ * Para isso, será necessário configurar uma tecla de atalho utilizando o evento `p-keydown`.
82
+ *
83
+ * > Exibe ou oculta o conteúdo do componente `po-helper` quando o componente estiver com foco.
84
+ *
85
+ * ```
86
+ * // Exemplo com p-label e p-helper
87
+ * <po-datetimepicker
88
+ * #datetimepicker
89
+ * ...
90
+ * p-label="Label"
91
+ * [p-helper]="helperOptions"
92
+ * (p-keydown)="onKeyDown($event, datetimepicker)"
93
+ * ></po-datetimepicker>
94
+ * ```
95
+ * ```
96
+ * onKeyDown(event: KeyboardEvent, inp: PoDatetimepickerComponent): void {
97
+ * if (event.code === 'F9') {
98
+ * inp.showAdditionalHelp();
99
+ * }
100
+ * }
101
+ * ```
102
+ */
103
+ showAdditionalHelp(): boolean;
104
+ get dateTimeInputValue(): string;
105
+ private formatToDisplay;
106
+ private parseInputAndSync;
107
+ private parseDateTimeFromInput;
108
+ private getDateFromFormattedString;
109
+ private parseTimeFromInput;
110
+ private parse12HourTime;
111
+ private parse24HourTime;
112
+ private getSeconds;
113
+ private isValid12Hour;
114
+ private isValid24Hour;
115
+ private convertTo24Hour;
116
+ private buildFormattedTime;
117
+ private isValidSeconds;
118
+ private padTime;
119
+ private syncCalendarAndTimer;
120
+ private getExpectedInputLength;
121
+ private setCalendarPosition;
122
+ protected adjustCalendarPosition(): void;
123
+ private initializeListeners;
124
+ private removeListeners;
125
+ private readonly onScroll;
126
+ private setDialogPickerStyleDisplay;
127
+ private hasOverlayClass;
128
+ private hasAttrCalendar;
129
+ private emitChangeIfDifferent;
130
+ }
@@ -0,0 +1,42 @@
1
+ export declare const PoDatetimepickerLiterals: {
2
+ en: {
3
+ open: string;
4
+ clean: string;
5
+ invalidDatetime: string;
6
+ datetimeOutOfRange: string;
7
+ };
8
+ es: {
9
+ open: string;
10
+ clean: string;
11
+ invalidDatetime: string;
12
+ datetimeOutOfRange: string;
13
+ };
14
+ pt: {
15
+ open: string;
16
+ clean: string;
17
+ invalidDatetime: string;
18
+ datetimeOutOfRange: string;
19
+ };
20
+ ru: {
21
+ open: string;
22
+ clean: string;
23
+ invalidDatetime: string;
24
+ datetimeOutOfRange: string;
25
+ };
26
+ };
27
+ /**
28
+ * Mapeamento de locale para formato de data padrão.
29
+ * - `en`: mm/dd/yyyy (padrão americano)
30
+ * - `pt`, `es`, `ru`: dd/mm/yyyy
31
+ */
32
+ export declare const PoDatetimepickerFormatByLocale: {
33
+ [key: string]: string;
34
+ };
35
+ /**
36
+ * Mapeamento de locale para formato de hora padrão.
37
+ * - `en`: 12h (AM/PM)
38
+ * - `pt`, `es`, `ru`: 24h
39
+ */
40
+ export declare const PoDatetimepickerTimeFormatByLocale: {
41
+ [key: string]: '12' | '24';
42
+ };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @description
3
+ *
4
+ * Módulo do componente `po-datetimepicker`.
5
+ */
6
+ export declare class PoDatetimepickerModule {
7
+ }
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @description
3
3
  *
4
- * Módulo dos componentes: po-checkbox, po-checkbox-group, po-combo, po-datepicker, po-datepicker-range, po-email, po-input,
4
+ * Módulo dos componentes: po-checkbox, po-checkbox-group, po-combo, po-datepicker, po-datetimepicker, po-datepicker-range, po-email, po-input,
5
5
  * po-lookup, po-number, po-multiselect, po-password, po-radio-group, po-select, po-switch, po-textarea, po-upload
6
6
  * e po-url.
7
7
  *