@seedgrid/fe-components 2026.9.4 → 2026.10.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/dist/ai/seedgrid-components.manifest.json +361 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/inputs/SgInputDate.d.ts.map +1 -1
- package/dist/inputs/SgInputDate.js +13 -1
- package/dist/inputs/SgPeriodSelector.d.ts.map +1 -1
- package/dist/inputs/SgPeriodSelector.js +37 -25
- package/dist/realtime/SgRealtimeProvider.d.ts +71 -0
- package/dist/realtime/SgRealtimeProvider.d.ts.map +1 -0
- package/dist/realtime/SgRealtimeProvider.js +170 -0
- package/dist/realtime/SgRealtimeProvider.meta.d.ts +4 -0
- package/dist/realtime/SgRealtimeProvider.meta.d.ts.map +1 -0
- package/dist/realtime/SgRealtimeProvider.meta.js +50 -0
- package/dist/realtime/useSgRealtimeEvent.meta.d.ts +4 -0
- package/dist/realtime/useSgRealtimeEvent.meta.d.ts.map +1 -0
- package/dist/realtime/useSgRealtimeEvent.meta.js +33 -0
- package/dist/realtime/useSgRealtimeStatus.meta.d.ts +4 -0
- package/dist/realtime/useSgRealtimeStatus.meta.d.ts.map +1 -0
- package/dist/realtime/useSgRealtimeStatus.meta.js +32 -0
- package/dist/sandbox.cjs +38 -38
- package/package.json +5 -4
|
@@ -18397,6 +18397,367 @@
|
|
|
18397
18397
|
}
|
|
18398
18398
|
}
|
|
18399
18399
|
},
|
|
18400
|
+
{
|
|
18401
|
+
"componentId": "provider.realtime",
|
|
18402
|
+
"exportName": "SgRealtimeProvider",
|
|
18403
|
+
"sgMeta": {
|
|
18404
|
+
"version": "0.1",
|
|
18405
|
+
"componentId": "provider.realtime",
|
|
18406
|
+
"package": "@seedgrid/fe-components",
|
|
18407
|
+
"exportName": "SgRealtimeProvider",
|
|
18408
|
+
"slug": "sg-realtime-provider",
|
|
18409
|
+
"displayName": "SgRealtimeProvider",
|
|
18410
|
+
"category": "provider",
|
|
18411
|
+
"subcategory": "realtime",
|
|
18412
|
+
"description": "Avisos em tempo real para o usuario logado pelo SeedGrid Pulse: pede o token de conexao ao backend (que o emite para o usuario da sessao), conecta direto no Pulse, reconecta sozinho, para quando a credencial e revogada e expoe o status para a tela decidir entre aviso e polling de reserva.",
|
|
18413
|
+
"tags": [
|
|
18414
|
+
"provider",
|
|
18415
|
+
"realtime",
|
|
18416
|
+
"pulse",
|
|
18417
|
+
"websocket",
|
|
18418
|
+
"notification",
|
|
18419
|
+
"polling"
|
|
18420
|
+
],
|
|
18421
|
+
"capabilities": [
|
|
18422
|
+
"token-from-backend",
|
|
18423
|
+
"auto-reconnect",
|
|
18424
|
+
"channel-subscription",
|
|
18425
|
+
"fallback-status"
|
|
18426
|
+
],
|
|
18427
|
+
"fieldSemantics": [
|
|
18428
|
+
"realtimeChannels",
|
|
18429
|
+
"tokenEndpoint",
|
|
18430
|
+
"connectionStatus"
|
|
18431
|
+
],
|
|
18432
|
+
"props": [
|
|
18433
|
+
{
|
|
18434
|
+
"name": "channels",
|
|
18435
|
+
"type": "string[]",
|
|
18436
|
+
"required": true,
|
|
18437
|
+
"description": "Channels que a aplicacao quer ouvir (ex.: [\"backup\"]).",
|
|
18438
|
+
"semanticRole": "data",
|
|
18439
|
+
"bindable": true
|
|
18440
|
+
},
|
|
18441
|
+
{
|
|
18442
|
+
"name": "tokenEndpoint",
|
|
18443
|
+
"type": "string",
|
|
18444
|
+
"required": false,
|
|
18445
|
+
"default": "/api/realtime/connect",
|
|
18446
|
+
"description": "Rota que entrega o token de conexao do usuario logado (a BFF, na mesma origem).",
|
|
18447
|
+
"semanticRole": "behavior",
|
|
18448
|
+
"bindable": true
|
|
18449
|
+
},
|
|
18450
|
+
{
|
|
18451
|
+
"name": "enabled",
|
|
18452
|
+
"type": "boolean",
|
|
18453
|
+
"required": false,
|
|
18454
|
+
"default": true,
|
|
18455
|
+
"description": "Liga/desliga (ex.: false enquanto nao ha usuario logado).",
|
|
18456
|
+
"semanticRole": "behavior",
|
|
18457
|
+
"bindable": true
|
|
18458
|
+
},
|
|
18459
|
+
{
|
|
18460
|
+
"name": "children",
|
|
18461
|
+
"type": "ReactNode",
|
|
18462
|
+
"required": true,
|
|
18463
|
+
"description": "Arvore que ouve os avisos com useSgRealtimeEvent.",
|
|
18464
|
+
"semanticRole": "data",
|
|
18465
|
+
"bindable": false
|
|
18466
|
+
},
|
|
18467
|
+
{
|
|
18468
|
+
"name": "connectOptions",
|
|
18469
|
+
"type": "Omit<ConnectInput, \"getToken\" | \"accountKey\" | \"baseUrl\">",
|
|
18470
|
+
"required": false,
|
|
18471
|
+
"description": "Opções avançadas do cliente do Pulse (reconexão, `webSocketImpl` em testes...)."
|
|
18472
|
+
},
|
|
18473
|
+
{
|
|
18474
|
+
"name": "fetchToken",
|
|
18475
|
+
"type": "(() => Promise<SgRealtimeConnectResponse>)",
|
|
18476
|
+
"required": false,
|
|
18477
|
+
"description": "Substitui o pedido de token inteiro (apps sem BFF, testes)."
|
|
18478
|
+
},
|
|
18479
|
+
{
|
|
18480
|
+
"name": "pulseUrl",
|
|
18481
|
+
"type": "string",
|
|
18482
|
+
"required": false,
|
|
18483
|
+
"description": "Endereço do Pulse, usado quando o token não traz `connectUrl` (Pulse sem endereço público)."
|
|
18484
|
+
},
|
|
18485
|
+
{
|
|
18486
|
+
"name": "tokenRequestInit",
|
|
18487
|
+
"type": "RequestInit",
|
|
18488
|
+
"required": false,
|
|
18489
|
+
"description": "Opções do `fetch` do token (ex.: `headers: { Authorization: ... }` quando não há cookie)."
|
|
18490
|
+
}
|
|
18491
|
+
],
|
|
18492
|
+
"states": [
|
|
18493
|
+
"idle",
|
|
18494
|
+
"disabled",
|
|
18495
|
+
"connecting",
|
|
18496
|
+
"connected",
|
|
18497
|
+
"reconnecting",
|
|
18498
|
+
"unavailable",
|
|
18499
|
+
"auth-error"
|
|
18500
|
+
],
|
|
18501
|
+
"examples": [
|
|
18502
|
+
{
|
|
18503
|
+
"id": "simulador",
|
|
18504
|
+
"title": "Simulador",
|
|
18505
|
+
"file": "apps/showcase/src/app/components/providers/sg-realtime-provider/samples/simulador.tsx.sample",
|
|
18506
|
+
"kind": "sample"
|
|
18507
|
+
},
|
|
18508
|
+
{
|
|
18509
|
+
"id": "layout-com-bff",
|
|
18510
|
+
"title": "No layout, com a BFF",
|
|
18511
|
+
"file": "apps/showcase/src/app/components/providers/sg-realtime-provider/samples/layout-com-bff.tsx.sample",
|
|
18512
|
+
"kind": "sample"
|
|
18513
|
+
},
|
|
18514
|
+
{
|
|
18515
|
+
"id": "polling-de-reserva",
|
|
18516
|
+
"title": "Polling de reserva",
|
|
18517
|
+
"file": "apps/showcase/src/app/components/providers/sg-realtime-provider/samples/polling-de-reserva.tsx.sample",
|
|
18518
|
+
"kind": "sample"
|
|
18519
|
+
}
|
|
18520
|
+
],
|
|
18521
|
+
"showcase": {
|
|
18522
|
+
"route": "/components/providers/sg-realtime-provider",
|
|
18523
|
+
"hasPlayground": true,
|
|
18524
|
+
"hasPropsTable": true
|
|
18525
|
+
},
|
|
18526
|
+
"sdui": {
|
|
18527
|
+
"rendererType": "provider.realtime",
|
|
18528
|
+
"acceptsDataBinding": true,
|
|
18529
|
+
"defaultProps": {
|
|
18530
|
+
"channels": [],
|
|
18531
|
+
"tokenEndpoint": "/api/realtime/connect",
|
|
18532
|
+
"enabled": true
|
|
18533
|
+
}
|
|
18534
|
+
}
|
|
18535
|
+
},
|
|
18536
|
+
"aiHints": {
|
|
18537
|
+
"version": "0.1",
|
|
18538
|
+
"preferredUseCases": [
|
|
18539
|
+
"Avisar o usuario quando um processo demorado termina (backup, relatorio, importacao) sem polling.",
|
|
18540
|
+
"Atualizar uma lista quando o backend publica um evento para o usuario logado."
|
|
18541
|
+
],
|
|
18542
|
+
"avoidUseCases": [
|
|
18543
|
+
"Transportar dados de negocio: o aviso so leva identificadores; busque o registro pela API.",
|
|
18544
|
+
"Mensagens entre usuarios ou chat."
|
|
18545
|
+
],
|
|
18546
|
+
"synonyms": [
|
|
18547
|
+
"realtime provider",
|
|
18548
|
+
"pulse provider",
|
|
18549
|
+
"websocket provider",
|
|
18550
|
+
"push notifications"
|
|
18551
|
+
],
|
|
18552
|
+
"relatedEntityFields": [
|
|
18553
|
+
"channel",
|
|
18554
|
+
"event",
|
|
18555
|
+
"userPublicId"
|
|
18556
|
+
],
|
|
18557
|
+
"compositionHints": [
|
|
18558
|
+
"Montar uma vez no layout autenticado e ouvir com useSgRealtimeEvent nas telas.",
|
|
18559
|
+
"Usar useSgRealtimeStatus para ligar o polling de reserva quando nao estiver conectado."
|
|
18560
|
+
],
|
|
18561
|
+
"rankingSignals": {
|
|
18562
|
+
"freeText": 0,
|
|
18563
|
+
"structuredChoice": 0,
|
|
18564
|
+
"date": 0,
|
|
18565
|
+
"number": 0,
|
|
18566
|
+
"denseLayout": 0
|
|
18567
|
+
}
|
|
18568
|
+
}
|
|
18569
|
+
},
|
|
18570
|
+
{
|
|
18571
|
+
"componentId": "hook.realtime-event",
|
|
18572
|
+
"exportName": "useSgRealtimeEvent",
|
|
18573
|
+
"sgMeta": {
|
|
18574
|
+
"version": "0.1",
|
|
18575
|
+
"componentId": "hook.realtime-event",
|
|
18576
|
+
"package": "@seedgrid/fe-components",
|
|
18577
|
+
"exportName": "useSgRealtimeEvent",
|
|
18578
|
+
"slug": "use-sg-realtime-event",
|
|
18579
|
+
"displayName": "useSgRealtimeEvent",
|
|
18580
|
+
"category": "hook",
|
|
18581
|
+
"subcategory": "realtime",
|
|
18582
|
+
"description": "Hook que chama o handler a cada aviso do SgRealtimeProvider no channel informado cujo evento casa o padrao (nome, lista, prefixo.* ou *).",
|
|
18583
|
+
"tags": [
|
|
18584
|
+
"hook",
|
|
18585
|
+
"realtime",
|
|
18586
|
+
"pulse",
|
|
18587
|
+
"event"
|
|
18588
|
+
],
|
|
18589
|
+
"capabilities": [
|
|
18590
|
+
"event-subscription",
|
|
18591
|
+
"wildcard-match"
|
|
18592
|
+
],
|
|
18593
|
+
"fieldSemantics": [
|
|
18594
|
+
"realtimeChannel",
|
|
18595
|
+
"eventPattern",
|
|
18596
|
+
"eventHandler"
|
|
18597
|
+
],
|
|
18598
|
+
"props": [
|
|
18599
|
+
{
|
|
18600
|
+
"name": "channel",
|
|
18601
|
+
"type": "string",
|
|
18602
|
+
"required": true,
|
|
18603
|
+
"description": "Channel do aviso (ex.: \"backup\").",
|
|
18604
|
+
"semanticRole": "data",
|
|
18605
|
+
"bindable": false
|
|
18606
|
+
},
|
|
18607
|
+
{
|
|
18608
|
+
"name": "events",
|
|
18609
|
+
"type": "string | string[]",
|
|
18610
|
+
"required": true,
|
|
18611
|
+
"description": "Nome do evento, lista, \"prefixo.*\" ou \"*\".",
|
|
18612
|
+
"semanticRole": "data",
|
|
18613
|
+
"bindable": false
|
|
18614
|
+
},
|
|
18615
|
+
{
|
|
18616
|
+
"name": "handler",
|
|
18617
|
+
"type": "(event: SgRealtimeEvent) => void",
|
|
18618
|
+
"required": true,
|
|
18619
|
+
"description": "Chamado a cada aviso que casa.",
|
|
18620
|
+
"semanticRole": "behavior",
|
|
18621
|
+
"bindable": false
|
|
18622
|
+
}
|
|
18623
|
+
],
|
|
18624
|
+
"states": [
|
|
18625
|
+
"listening"
|
|
18626
|
+
],
|
|
18627
|
+
"examples": [
|
|
18628
|
+
{
|
|
18629
|
+
"id": "uso-basico",
|
|
18630
|
+
"title": "Uso basico",
|
|
18631
|
+
"file": "apps/showcase/src/app/components/hooks/use-sg-realtime-event/samples/uso-basico.tsx.sample",
|
|
18632
|
+
"kind": "sample"
|
|
18633
|
+
}
|
|
18634
|
+
],
|
|
18635
|
+
"showcase": {
|
|
18636
|
+
"route": "/components/hooks/use-sg-realtime-event",
|
|
18637
|
+
"hasPlayground": true,
|
|
18638
|
+
"hasPropsTable": true
|
|
18639
|
+
}
|
|
18640
|
+
},
|
|
18641
|
+
"aiHints": {
|
|
18642
|
+
"version": "0.1",
|
|
18643
|
+
"preferredUseCases": [
|
|
18644
|
+
"Recarregar uma tela quando o backend avisa que um processo terminou."
|
|
18645
|
+
],
|
|
18646
|
+
"avoidUseCases": [
|
|
18647
|
+
"Ler dados de negocio do aviso: ele so traz identificadores."
|
|
18648
|
+
],
|
|
18649
|
+
"synonyms": [
|
|
18650
|
+
"realtime event",
|
|
18651
|
+
"pulse event",
|
|
18652
|
+
"on notice"
|
|
18653
|
+
],
|
|
18654
|
+
"relatedEntityFields": [
|
|
18655
|
+
"channel",
|
|
18656
|
+
"event"
|
|
18657
|
+
],
|
|
18658
|
+
"compositionHints": [
|
|
18659
|
+
"Usar dentro de um SgRealtimeProvider que assina o channel."
|
|
18660
|
+
],
|
|
18661
|
+
"rankingSignals": {
|
|
18662
|
+
"freeText": 0,
|
|
18663
|
+
"structuredChoice": 0,
|
|
18664
|
+
"date": 0,
|
|
18665
|
+
"number": 0,
|
|
18666
|
+
"denseLayout": 0
|
|
18667
|
+
}
|
|
18668
|
+
}
|
|
18669
|
+
},
|
|
18670
|
+
{
|
|
18671
|
+
"componentId": "hook.realtime-status",
|
|
18672
|
+
"exportName": "useSgRealtimeStatus",
|
|
18673
|
+
"sgMeta": {
|
|
18674
|
+
"version": "0.1",
|
|
18675
|
+
"componentId": "hook.realtime-status",
|
|
18676
|
+
"package": "@seedgrid/fe-components",
|
|
18677
|
+
"exportName": "useSgRealtimeStatus",
|
|
18678
|
+
"slug": "use-sg-realtime-status",
|
|
18679
|
+
"displayName": "useSgRealtimeStatus",
|
|
18680
|
+
"category": "hook",
|
|
18681
|
+
"subcategory": "realtime",
|
|
18682
|
+
"description": "Hook com o estado da conexao do SgRealtimeProvider com o Pulse. connected falso indica que a tela deve usar o polling de reserva.",
|
|
18683
|
+
"tags": [
|
|
18684
|
+
"hook",
|
|
18685
|
+
"realtime",
|
|
18686
|
+
"pulse",
|
|
18687
|
+
"status",
|
|
18688
|
+
"polling"
|
|
18689
|
+
],
|
|
18690
|
+
"capabilities": [
|
|
18691
|
+
"connection-status",
|
|
18692
|
+
"fallback-signal"
|
|
18693
|
+
],
|
|
18694
|
+
"fieldSemantics": [
|
|
18695
|
+
"connectionStatus",
|
|
18696
|
+
"connected"
|
|
18697
|
+
],
|
|
18698
|
+
"props": [
|
|
18699
|
+
{
|
|
18700
|
+
"name": "returns.status",
|
|
18701
|
+
"type": "SgRealtimeStatus",
|
|
18702
|
+
"description": "idle, disabled, connecting, connected, reconnecting, unavailable ou auth-error.",
|
|
18703
|
+
"semanticRole": "data",
|
|
18704
|
+
"bindable": false
|
|
18705
|
+
},
|
|
18706
|
+
{
|
|
18707
|
+
"name": "returns.connected",
|
|
18708
|
+
"type": "boolean",
|
|
18709
|
+
"description": "true so com a conexao aberta e assinada.",
|
|
18710
|
+
"semanticRole": "data",
|
|
18711
|
+
"bindable": false
|
|
18712
|
+
}
|
|
18713
|
+
],
|
|
18714
|
+
"states": [
|
|
18715
|
+
"disabled",
|
|
18716
|
+
"connected",
|
|
18717
|
+
"unavailable"
|
|
18718
|
+
],
|
|
18719
|
+
"examples": [
|
|
18720
|
+
{
|
|
18721
|
+
"id": "uso-basico",
|
|
18722
|
+
"title": "Uso basico",
|
|
18723
|
+
"file": "apps/showcase/src/app/components/hooks/use-sg-realtime-status/samples/uso-basico.tsx.sample",
|
|
18724
|
+
"kind": "sample"
|
|
18725
|
+
}
|
|
18726
|
+
],
|
|
18727
|
+
"showcase": {
|
|
18728
|
+
"route": "/components/hooks/use-sg-realtime-status",
|
|
18729
|
+
"hasPlayground": true,
|
|
18730
|
+
"hasPropsTable": true
|
|
18731
|
+
}
|
|
18732
|
+
},
|
|
18733
|
+
"aiHints": {
|
|
18734
|
+
"version": "0.1",
|
|
18735
|
+
"preferredUseCases": [
|
|
18736
|
+
"Decidir entre aviso em tempo real e polling de reserva numa tela."
|
|
18737
|
+
],
|
|
18738
|
+
"avoidUseCases": [
|
|
18739
|
+
"Decidir permissao ou autenticacao: o status so diz da conexao com o Pulse."
|
|
18740
|
+
],
|
|
18741
|
+
"synonyms": [
|
|
18742
|
+
"realtime status",
|
|
18743
|
+
"pulse status",
|
|
18744
|
+
"connection state"
|
|
18745
|
+
],
|
|
18746
|
+
"relatedEntityFields": [
|
|
18747
|
+
"status"
|
|
18748
|
+
],
|
|
18749
|
+
"compositionHints": [
|
|
18750
|
+
"Usar dentro de um SgRealtimeProvider; fora dele o status e disabled."
|
|
18751
|
+
],
|
|
18752
|
+
"rankingSignals": {
|
|
18753
|
+
"freeText": 0,
|
|
18754
|
+
"structuredChoice": 0,
|
|
18755
|
+
"date": 0,
|
|
18756
|
+
"number": 0,
|
|
18757
|
+
"denseLayout": 0
|
|
18758
|
+
}
|
|
18759
|
+
}
|
|
18760
|
+
},
|
|
18400
18761
|
{
|
|
18401
18762
|
"componentId": "gadget.clock-theme-picker",
|
|
18402
18763
|
"exportName": "SgClockThemePicker",
|
package/dist/index.d.ts
CHANGED
|
@@ -140,6 +140,8 @@ export { SgTimeProvider, useSgTime } from "./gadgets/clock/SgTimeProvider";
|
|
|
140
140
|
export { SgClock } from "./gadgets/clock/SgClock";
|
|
141
141
|
export { SgCalendar } from "./gadgets/calendar";
|
|
142
142
|
export type { SgTimeContextValue } from "./gadgets/clock/SgTimeProvider";
|
|
143
|
+
export { SgRealtimeProvider, useSgRealtimeEvent, useSgRealtimeStatus, matchesSgRealtimeEvent } from "./realtime/SgRealtimeProvider";
|
|
144
|
+
export type { SgRealtimeProviderProps, SgRealtimeStatus, SgRealtimeEvent, SgRealtimeConnectResponse } from "./realtime/SgRealtimeProvider";
|
|
143
145
|
export type { SgClockProps, SgClockDigitalStyle } from "./gadgets/clock/SgClock";
|
|
144
146
|
export type { SgCalendarProps, SgCalendarWeekdayFormat } from "./gadgets/calendar";
|
|
145
147
|
export { SgFlipDigit } from "./digits/flip-digit";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,YAAY,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,YAAY,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,YAAY,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,YAAY,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,YAAY,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,YAAY,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5G,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,YAAY,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,YAAY,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,YAAY,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACvF,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACjI,YAAY,EAAE,qBAAqB,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAG7G,OAAO,EACL,YAAY,EACZ,eAAe,EACf,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,eAAe,EACf,aAAa,EACb,UAAU,EACX,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,YAAY,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAChH,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,YAAY,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACxI,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,6BAA6B,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC3K,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,YAAY,EACV,gBAAgB,EAChB,eAAe,EACf,wBAAwB,EACxB,2BAA2B,EAC3B,cAAc,EACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,YAAY,EACV,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,EACzB,oBAAoB,EACpB,eAAe,EACf,qBAAqB,EACrB,aAAa,EACd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,YAAY,EACV,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,EAC1B,oBAAoB,EACpB,cAAc,EACd,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,YAAY,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,YAAY,EACV,wBAAwB,EAAE,WAAW,EACrC,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,aAAa,EAC5G,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACrH,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,YAAY,EACV,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,YAAY,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,YAAY,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACvF,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AACvH,OAAO,EAAE,uBAAuB,EAAE,sCAAsC,EAAE,kCAAkC,EAAE,MAAM,wBAAwB,CAAC;AAC7I,OAAO,EAAE,2BAA2B,EAAE,6BAA6B,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,4BAA4B,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AACtO,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC7I,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,YAAY,EACV,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,sBAAsB,EACtB,YAAY,EACZ,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,YAAY,EACV,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,YAAY,EACV,yBAAyB,EACzB,gCAAgC,EACjC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC7D,YAAY,EACV,YAAY,EACZ,eAAe,EACf,cAAc,EACd,WAAW,EACX,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAC7F,YAAY,EAAE,eAAe,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAClG,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC7E,YAAY,EACV,SAAS,EACT,SAAS,EACT,WAAW,EACX,aAAa,EACb,cAAc,EACd,aAAa,EACb,sBAAsB,EACvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACvF,YAAY,EACV,WAAW,EACX,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,eAAe,EACf,sBAAsB,EACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,UAAU,EACV,OAAO,EACP,QAAQ,EACR,WAAW,EACX,OAAO,EACP,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,SAAS,EACV,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,UAAU,EACV,WAAW,EACX,YAAY,EACZ,oBAAoB,EACpB,sBAAsB,EACtB,6BAA6B,EAC7B,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,YAAY,EACb,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,YAAY,EACV,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,YAAY,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC9F,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACtG,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,YAAY,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,YAAY,EACV,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,EAC1B,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,EACtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,YAAY,EACV,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC1E,YAAY,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,eAAe,EAAE,mBAAmB,EAAE,6BAA6B,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,4BAA4B,EAAE,0BAA0B,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,+BAA+B,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AAC1oB,YAAY,EACV,WAAW,EACX,WAAW,EACX,UAAU,EACV,eAAe,EACf,WAAW,EACX,UAAU,EACX,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,kBAAkB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC9F,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACpE,YAAY,EACV,cAAc,EACd,oBAAoB,EACpB,6BAA6B,EAC7B,iBAAiB,EACjB,aAAa,EACb,wBAAwB,EACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,YAAY,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACpH,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,YAAY,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAC5F,YAAY,EACV,eAAe,EACf,aAAa,EACb,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,MAAM,EACP,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,YAAY,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACzE,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACjF,YAAY,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,YAAY,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,YAAY,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,YAAY,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,YAAY,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,YAAY,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AACzG,OAAO,EAAE,gBAAgB,EAAE,kCAAkC,EAAE,MAAM,2BAA2B,CAAC;AACjG,YAAY,EACV,qBAAqB,EACrB,mBAAmB,EACnB,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,YAAY,EAAE,aAAa,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC/D,YAAY,EACV,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,yBAAyB,EACzB,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,EACxB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,aAAa,EACb,cAAc,EACd,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,eAAe,EACf,WAAW,EACX,mBAAmB,EACnB,oBAAoB,EACpB,uBAAuB,EACvB,UAAU,EACV,YAAY,EACZ,WAAW,EACX,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EACV,YAAY,EACZ,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC3D,YAAY,EACV,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,eAAe,EAChB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC5J,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,qBAAqB,EACrB,0BAA0B,EAC1B,4BAA4B,EAC5B,kCAAkC,EAClC,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,qCAAqC,CAAC;AAC7C,YAAY,EACV,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACvB,MAAM,qCAAqC,CAAC;AAC7C,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EACL,wBAAwB,EACxB,iBAAiB,EACjB,iBAAiB,EACjB,qBAAqB,EACrB,iBAAiB,EACjB,CAAC,IAAI,WAAW,EAChB,aAAa,IAAI,uBAAuB,EACxC,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,yBAAyB,EACzB,4BAA4B,EAC7B,MAAM,QAAQ,CAAC;AAChB,YAAY,EACV,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,EACpB,+BAA+B,EAChC,MAAM,QAAQ,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -79,6 +79,7 @@ export { SgTreeView, sgTreeFromJson, sgTreeFromJsonWithChecked } from "./layout/
|
|
|
79
79
|
export { SgTimeProvider, useSgTime } from "./gadgets/clock/SgTimeProvider";
|
|
80
80
|
export { SgClock } from "./gadgets/clock/SgClock";
|
|
81
81
|
export { SgCalendar } from "./gadgets/calendar";
|
|
82
|
+
export { SgRealtimeProvider, useSgRealtimeEvent, useSgRealtimeStatus, matchesSgRealtimeEvent } from "./realtime/SgRealtimeProvider";
|
|
82
83
|
export { SgFlipDigit } from "./digits/flip-digit";
|
|
83
84
|
export { SgFadeDigit } from "./digits/fade-digit";
|
|
84
85
|
export { SgRoller3DDigit } from "./digits/roller3d-digit";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SgInputDate.d.ts","sourceRoot":"","sources":["../../src/inputs/SgInputDate.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAKnE,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,GAAG;IAC9D,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,qEAAqE;IACrE,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;
|
|
1
|
+
{"version":3,"file":"SgInputDate.d.ts","sourceRoot":"","sources":["../../src/inputs/SgInputDate.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAKnE,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,GAAG;IAC9D,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,qEAAqE;IACrE,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAoCF,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CA0JlD"}
|
|
@@ -29,6 +29,18 @@ function parseDateValue(value) {
|
|
|
29
29
|
return null;
|
|
30
30
|
return date;
|
|
31
31
|
}
|
|
32
|
+
/**
|
|
33
|
+
* Teto do widget quando o consumidor nao informa `maxDate`.
|
|
34
|
+
*
|
|
35
|
+
* O <input type="date"> aceita ano de ate 6 digitos (o calendario do HTML vai ate
|
|
36
|
+
* 275760), entao sem `max` o campo aceita "202699" no lugar de "2026". Com um `max`
|
|
37
|
+
* de ano de 4 digitos o navegador contem o segmento em 4.
|
|
38
|
+
*
|
|
39
|
+
* Vale so' para o atributo HTML: a validacao continua usando os limites que o
|
|
40
|
+
* consumidor pediu, para nenhuma mensagem de erro citar um 31/12/9999 que ninguem
|
|
41
|
+
* escolheu.
|
|
42
|
+
*/
|
|
43
|
+
const WIDGET_MAX_DATE = "9999-12-31";
|
|
32
44
|
export function SgInputDate(props) {
|
|
33
45
|
const i18n = useComponentsI18n();
|
|
34
46
|
const isDark = useDarkFlag();
|
|
@@ -86,7 +98,7 @@ export function SgInputDate(props) {
|
|
|
86
98
|
...inputProps,
|
|
87
99
|
placeholder: showStaticLabel ? " " : (inputProps?.placeholder ?? rest.hintText ?? labelText),
|
|
88
100
|
min: minDateValue,
|
|
89
|
-
max: maxDateValue,
|
|
101
|
+
max: maxDateValue ?? WIDGET_MAX_DATE,
|
|
90
102
|
readOnly: inputProps?.readOnly,
|
|
91
103
|
onChange: (event) => {
|
|
92
104
|
setHasInteracted(true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SgPeriodSelector.d.ts","sourceRoot":"","sources":["../../src/inputs/SgPeriodSelector.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"SgPeriodSelector.d.ts","sourceRoot":"","sources":["../../src/inputs/SgPeriodSelector.tsx"],"names":[],"mappings":"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"}
|
|
@@ -296,37 +296,51 @@ export function buildPeriodOptions(config, locale = "pt-BR") {
|
|
|
296
296
|
/* ------------------------------------------------------------------ */
|
|
297
297
|
/* Componente */
|
|
298
298
|
/* ------------------------------------------------------------------ */
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
299
|
+
/**
|
|
300
|
+
* Converte o valor cru do <input type="date"> (ISO yyyy-MM-dd) em Date local.
|
|
301
|
+
*
|
|
302
|
+
* O input nativo emite um change a cada digito do ano, entao "2026" chega aqui
|
|
303
|
+
* antes como "0002", "0020" e "0202". Esses anos incompletos sao recusados, e o
|
|
304
|
+
* ano completo passa por setFullYear para escapar da regra legada do JS que
|
|
305
|
+
* mapeia ano 0..99 para 1900+ano (new Date(2, 8, 19) => 1902-09-19).
|
|
306
|
+
*/
|
|
307
307
|
function parseIsoDate(value) {
|
|
308
|
-
|
|
308
|
+
const match = /^(\d{4})-(\d{2})-(\d{2})$/.exec(value);
|
|
309
|
+
if (!match)
|
|
309
310
|
return null;
|
|
310
|
-
const
|
|
311
|
-
|
|
311
|
+
const year = Number(match[1]);
|
|
312
|
+
const month = Number(match[2]);
|
|
313
|
+
const day = Number(match[3]);
|
|
314
|
+
if (year < 1000 || month < 1 || month > 12 || day < 1 || day > 31)
|
|
312
315
|
return null;
|
|
313
|
-
|
|
316
|
+
const date = new Date(year, month - 1, day);
|
|
317
|
+
date.setFullYear(year);
|
|
318
|
+
return Number.isNaN(date.getTime()) ? null : date;
|
|
314
319
|
}
|
|
315
320
|
function SgPeriodSelectorBase(props) {
|
|
316
321
|
const { id = "sg-period-selector", label, value, onChange, permitPast = true, permitCurrent = true, permitFuture = true, permitAll = true, allowCustomPeriod = true, locale = "pt-BR", disabled, required, minDate, maxDate, referenceDate, className, error } = props;
|
|
317
322
|
const isControlled = value !== undefined;
|
|
318
323
|
const [internalPreset, setInternalPreset] = React.useState(value ?? null);
|
|
319
324
|
const selectedPreset = isControlled ? value ?? null : internalPreset;
|
|
320
|
-
|
|
321
|
-
|
|
325
|
+
// Guardamos a string crua do input (ISO ou parcial), nunca um Date reformatado:
|
|
326
|
+
// devolver ao input um texto diferente do digitado reinicia o segmento em foco
|
|
327
|
+
// e impede o usuario de terminar de digitar o ano.
|
|
328
|
+
const [customStart, setCustomStart] = React.useState("");
|
|
329
|
+
const [customEnd, setCustomEnd] = React.useState("");
|
|
322
330
|
const options = React.useMemo(() => buildPeriodOptions({ permitAll, allowCustomPeriod, permitCurrent, permitFuture, permitPast }, locale), [permitAll, allowCustomPeriod, permitCurrent, permitFuture, permitPast, locale]);
|
|
323
331
|
const resolveOptions = React.useMemo(() => ({ minDate, maxDate, locale }), [minDate, maxDate, locale]);
|
|
324
|
-
const emitCustom = React.useCallback((
|
|
332
|
+
const emitCustom = React.useCallback((startIso, endIso) => {
|
|
333
|
+
// Enquanto a data estiver incompleta o parse devolve null: melhor emitir
|
|
334
|
+
// "sem limite" do que uma data de ano 0002 no meio da digitacao.
|
|
335
|
+
const startDate = parseIsoDate(startIso);
|
|
336
|
+
const endDate = parseIsoDate(endIso);
|
|
337
|
+
startDate?.setHours(0, 0, 0, 0);
|
|
338
|
+
endDate?.setHours(23, 59, 59, 999);
|
|
325
339
|
onChange?.({
|
|
326
340
|
preset: PeriodPreset.CUSTOM,
|
|
327
341
|
label: periodPresetLabel(PeriodPreset.CUSTOM, locale),
|
|
328
|
-
startDate
|
|
329
|
-
endDate
|
|
342
|
+
startDate,
|
|
343
|
+
endDate
|
|
330
344
|
});
|
|
331
345
|
}, [locale, onChange]);
|
|
332
346
|
const handleValueChange = React.useCallback((raw) => {
|
|
@@ -346,14 +360,12 @@ function SgPeriodSelectorBase(props) {
|
|
|
346
360
|
onChange?.(resolvePeriod(preset, referenceDate ?? new Date(), resolveOptions));
|
|
347
361
|
}, [customEnd, customStart, emitCustom, isControlled, onChange, referenceDate, resolveOptions]);
|
|
348
362
|
const showCustomRange = allowCustomPeriod && selectedPreset === PeriodPreset.CUSTOM;
|
|
349
|
-
return (_jsxs("div", { className: cn("w-full max-w-[18rem]", className), children: [_jsx(SgCombobox, { id: id, label: label, source: options, value: selectedPreset ?? null, grouped: true, openOnFocus: true, enabled: disabled ? false : undefined, required: required, error: error, renderGroupHeader: (group) => group ? (_jsx("div", { className: "mt-2 border-b border-border pb-1.5 text-center text-[11px] font-bold uppercase tracking-wider text-muted-foreground", children: group })) : null, onValueChange: handleValueChange }), showCustomRange ? (_jsxs("div", { className: "mt-2 grid grid-cols-1 gap-2", children: [_jsx(SgInputDate, { id: `${id}-custom-start`, inputProps: { value:
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
setCustomEnd(parsed);
|
|
356
|
-
emitCustom(customStart, parsed);
|
|
363
|
+
return (_jsxs("div", { className: cn("w-full max-w-[18rem]", className), children: [_jsx(SgCombobox, { id: id, label: label, source: options, value: selectedPreset ?? null, grouped: true, openOnFocus: true, enabled: disabled ? false : undefined, required: required, error: error, renderGroupHeader: (group) => group ? (_jsx("div", { className: "mt-2 border-b border-border pb-1.5 text-center text-[11px] font-bold uppercase tracking-wider text-muted-foreground", children: group })) : null, onValueChange: handleValueChange }), showCustomRange ? (_jsxs("div", { className: "mt-2 grid grid-cols-1 gap-2", children: [_jsx(SgInputDate, { id: `${id}-custom-start`, inputProps: { value: customStart }, minDate: minDate, maxDate: maxDate, enabled: disabled ? false : undefined, onChange: (next) => {
|
|
364
|
+
setCustomStart(next);
|
|
365
|
+
emitCustom(next, customEnd);
|
|
366
|
+
} }), _jsx(SgInputDate, { id: `${id}-custom-end`, inputProps: { value: customEnd }, minDate: minDate, maxDate: maxDate, enabled: disabled ? false : undefined, onChange: (next) => {
|
|
367
|
+
setCustomEnd(next);
|
|
368
|
+
emitCustom(customStart, next);
|
|
357
369
|
} })] })) : null] }));
|
|
358
370
|
}
|
|
359
371
|
export function SgPeriodSelector(props) {
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { type ConnectInput } from "@seedgrid/pulse-subscriber-react/core";
|
|
3
|
+
/**
|
|
4
|
+
* Estado do realtime, do ponto de vista da tela:
|
|
5
|
+
*
|
|
6
|
+
* - `disabled`: o backend respondeu `{enabled:false}` (realtime desligado) — use o polling.
|
|
7
|
+
* - `connecting` / `reconnecting`: ainda sem conexão — use o polling.
|
|
8
|
+
* - `connected`: avisos chegando — dispense o polling.
|
|
9
|
+
* - `unavailable`: o pedido de token falhou (401, 503, rede) ou a conexão caiu de vez — use o polling.
|
|
10
|
+
* - `auth-error`: o Pulse recusou a credencial (chave revogada, 4403) — use o polling.
|
|
11
|
+
*/
|
|
12
|
+
export type SgRealtimeStatus = "idle" | "disabled" | "connecting" | "connected" | "reconnecting" | "unavailable" | "auth-error";
|
|
13
|
+
/** Resposta do `POST /realtime/connect` das extensões de realtime (Java e Rust). */
|
|
14
|
+
export type SgRealtimeConnectResponse = {
|
|
15
|
+
enabled: boolean;
|
|
16
|
+
token?: string;
|
|
17
|
+
/** Segundos desde a época. */
|
|
18
|
+
expiresAt?: number;
|
|
19
|
+
connectUrl?: string;
|
|
20
|
+
channels?: string[];
|
|
21
|
+
};
|
|
22
|
+
/** Aviso recebido. `data` só traz identificadores: busque o registro pela API de sempre. */
|
|
23
|
+
export type SgRealtimeEvent = {
|
|
24
|
+
channel: string;
|
|
25
|
+
event: string;
|
|
26
|
+
data: unknown;
|
|
27
|
+
messageId: string;
|
|
28
|
+
publishedAt: string;
|
|
29
|
+
};
|
|
30
|
+
export type SgRealtimeProviderProps = {
|
|
31
|
+
children: React.ReactNode;
|
|
32
|
+
/** Channels que a tela quer ouvir (ex.: `["backup"]`). */
|
|
33
|
+
channels: string[];
|
|
34
|
+
/**
|
|
35
|
+
* Rota que entrega o token de conexão do usuário logado. Default: `/api/realtime/connect` (a BFF, na
|
|
36
|
+
* mesma origem — o navegador manda o cookie da sessão).
|
|
37
|
+
*/
|
|
38
|
+
tokenEndpoint?: string;
|
|
39
|
+
/** Opções do `fetch` do token (ex.: `headers: { Authorization: ... }` quando não há cookie). */
|
|
40
|
+
tokenRequestInit?: RequestInit;
|
|
41
|
+
/** Substitui o pedido de token inteiro (apps sem BFF, testes). */
|
|
42
|
+
fetchToken?: () => Promise<SgRealtimeConnectResponse>;
|
|
43
|
+
/** Endereço do Pulse, usado quando o token não traz `connectUrl` (Pulse sem endereço público). */
|
|
44
|
+
pulseUrl?: string;
|
|
45
|
+
/** Liga/desliga (ex.: `false` enquanto não há usuário logado). Default: `true`. */
|
|
46
|
+
enabled?: boolean;
|
|
47
|
+
/** Opções avançadas do cliente do Pulse (reconexão, `webSocketImpl` em testes...). */
|
|
48
|
+
connectOptions?: Omit<ConnectInput, "getToken" | "accountKey" | "baseUrl">;
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* Avisos em tempo real para o usuário logado, pelo SeedGrid Pulse.
|
|
52
|
+
*
|
|
53
|
+
* Monte uma vez (no layout) e ouça com {@link useSgRealtimeEvent}. Pede o token de conexão ao backend
|
|
54
|
+
* (que o emite para o usuário DA SESSÃO), conecta direto no Pulse, reconecta sozinho e para se a
|
|
55
|
+
* credencial for revogada. O token fica só em memória. Quando o realtime não está conectado,
|
|
56
|
+
* {@link useSgRealtimeStatus} diz isso e a tela volta ao polling.
|
|
57
|
+
*/
|
|
58
|
+
export declare function SgRealtimeProvider({ children, channels, tokenEndpoint, tokenRequestInit, fetchToken, pulseUrl, enabled, connectOptions }: SgRealtimeProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
59
|
+
/** `backup.finished.*` casa `backup.finished.success` e `backup.finished.error`. */
|
|
60
|
+
export declare function matchesSgRealtimeEvent(pattern: string, event: string): boolean;
|
|
61
|
+
/**
|
|
62
|
+
* Chama `handler` a cada aviso do `channel` cujo nome casa `events` (aceita `prefixo.*`). Fora de um
|
|
63
|
+
* {@link SgRealtimeProvider}, não faz nada.
|
|
64
|
+
*/
|
|
65
|
+
export declare function useSgRealtimeEvent(channel: string, events: string | string[], handler: (event: SgRealtimeEvent) => void): void;
|
|
66
|
+
/** Estado do realtime. `connected` falso ⇒ a tela usa o polling de reserva. */
|
|
67
|
+
export declare function useSgRealtimeStatus(): {
|
|
68
|
+
status: SgRealtimeStatus;
|
|
69
|
+
connected: boolean;
|
|
70
|
+
};
|
|
71
|
+
//# sourceMappingURL=SgRealtimeProvider.d.ts.map
|