@seedgrid/fe-theme 2026.4.19 → 2026.4.20

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.
@@ -3,6 +3,113 @@
3
3
  "package": "@seedgrid/fe-theme",
4
4
  "packageVersion": "0.3.0",
5
5
  "components": [
6
+ {
7
+ "componentId": "layout.app-shell",
8
+ "exportName": "AppShell",
9
+ "sgMeta": {
10
+ "version": "0.1",
11
+ "componentId": "layout.app-shell",
12
+ "package": "@seedgrid/fe-theme",
13
+ "exportName": "AppShell",
14
+ "slug": "app-shell",
15
+ "displayName": "AppShell",
16
+ "category": "layout",
17
+ "subcategory": "shell",
18
+ "description": "Shell de aplicacao baseado no tema legado, com area de navegacao lateral, header opcional e superficie principal.",
19
+ "tags": [
20
+ "layout",
21
+ "shell",
22
+ "app",
23
+ "navigation",
24
+ "legacy-theme"
25
+ ],
26
+ "capabilities": [
27
+ "sidebar-layout",
28
+ "header-slot",
29
+ "themed-surface",
30
+ "legacy-theme-aware"
31
+ ],
32
+ "fieldSemantics": [
33
+ "appShell",
34
+ "navigationLayout",
35
+ "pageFrame"
36
+ ],
37
+ "props": [
38
+ {
39
+ "name": "children",
40
+ "type": "ReactNode",
41
+ "required": true,
42
+ "description": "Conteudo principal da aplicacao.",
43
+ "semanticRole": "data",
44
+ "bindable": false
45
+ },
46
+ {
47
+ "name": "nav",
48
+ "type": "ReactNode",
49
+ "description": "Conteudo da navegacao lateral.",
50
+ "semanticRole": "data",
51
+ "bindable": false
52
+ },
53
+ {
54
+ "name": "header",
55
+ "type": "ReactNode",
56
+ "description": "Conteudo opcional de cabecalho.",
57
+ "semanticRole": "data",
58
+ "bindable": false
59
+ }
60
+ ],
61
+ "states": [
62
+ "default",
63
+ "with-nav",
64
+ "with-header"
65
+ ],
66
+ "examples": [],
67
+ "showcase": {
68
+ "route": "/packages/fe-theme/app-shell",
69
+ "hasPlayground": false,
70
+ "hasPropsTable": false
71
+ },
72
+ "sdui": {
73
+ "rendererType": "layout.app-shell",
74
+ "acceptsDataBinding": true,
75
+ "defaultProps": {}
76
+ }
77
+ },
78
+ "aiHints": {
79
+ "version": "0.1",
80
+ "preferredUseCases": [
81
+ "Montar um shell simples de aplicacao com menu lateral e area principal.",
82
+ "Demonstrar o tema legado aplicado a uma estrutura de pagina completa."
83
+ ],
84
+ "avoidUseCases": [
85
+ "Layouts altamente customizaveis com docking ou zonas complexas.",
86
+ "Novo shell baseado no sistema moderno de componentes, se existir alternativa mais atual."
87
+ ],
88
+ "synonyms": [
89
+ "app shell",
90
+ "application shell",
91
+ "page frame",
92
+ "layout shell"
93
+ ],
94
+ "relatedEntityFields": [
95
+ "nav",
96
+ "header",
97
+ "layout",
98
+ "shell"
99
+ ],
100
+ "compositionHints": [
101
+ "Usar junto de ThemeProvider em contextos legados.",
102
+ "Migrar para estruturas mais modernas quando o shell deixar de depender do tema legado."
103
+ ],
104
+ "rankingSignals": {
105
+ "freeText": 0.12,
106
+ "structuredChoice": 0.24,
107
+ "date": 0,
108
+ "number": 0,
109
+ "denseLayout": 0.9
110
+ }
111
+ }
112
+ },
6
113
  {
7
114
  "componentId": "provider.seed-theme",
8
115
  "exportName": "SeedThemeProvider",
@@ -95,6 +202,13 @@
95
202
  "route": "/components/providers/seed-theme-provider",
96
203
  "hasPlayground": true,
97
204
  "hasPropsTable": true
205
+ },
206
+ "sdui": {
207
+ "rendererType": "provider.seed-theme",
208
+ "acceptsDataBinding": true,
209
+ "defaultProps": {
210
+ "applyTo": "html"
211
+ }
98
212
  }
99
213
  },
100
214
  "aiHints": {
@@ -134,6 +248,389 @@
134
248
  }
135
249
  }
136
250
  },
251
+ {
252
+ "componentId": "provider.theme-legacy",
253
+ "exportName": "ThemeProvider",
254
+ "sgMeta": {
255
+ "version": "0.1",
256
+ "componentId": "provider.theme-legacy",
257
+ "package": "@seedgrid/fe-theme",
258
+ "exportName": "ThemeProvider",
259
+ "slug": "theme-provider",
260
+ "displayName": "ThemeProvider",
261
+ "category": "provider",
262
+ "subcategory": "theme-legacy",
263
+ "description": "Provider legado de tema para compatibilidade retroativa, aplicando tokens CSS e expondo contexto simplificado de tema.",
264
+ "tags": [
265
+ "provider",
266
+ "theme",
267
+ "legacy",
268
+ "compatibility"
269
+ ],
270
+ "capabilities": [
271
+ "legacy-theme-context",
272
+ "css-vars",
273
+ "compat-layer"
274
+ ],
275
+ "fieldSemantics": [
276
+ "legacyThemeProvider",
277
+ "themeContext",
278
+ "compatibilityLayer"
279
+ ],
280
+ "props": [
281
+ {
282
+ "name": "theme",
283
+ "type": "Partial<SeedGridThemeConfig>",
284
+ "description": "Configuracao parcial do tema legado.",
285
+ "semanticRole": "data",
286
+ "bindable": true
287
+ },
288
+ {
289
+ "name": "children",
290
+ "type": "ReactNode",
291
+ "required": true,
292
+ "description": "Arvore de componentes envolvida pelo provider.",
293
+ "semanticRole": "data",
294
+ "bindable": false
295
+ }
296
+ ],
297
+ "states": [
298
+ "default",
299
+ "legacy-theme-applied"
300
+ ],
301
+ "examples": [],
302
+ "showcase": {
303
+ "route": "/packages/fe-theme/theme-provider",
304
+ "hasPlayground": false,
305
+ "hasPropsTable": false
306
+ },
307
+ "sdui": {
308
+ "rendererType": "provider.theme-legacy",
309
+ "acceptsDataBinding": true,
310
+ "defaultProps": {
311
+ "theme": {}
312
+ }
313
+ }
314
+ },
315
+ "aiHints": {
316
+ "version": "0.1",
317
+ "preferredUseCases": [
318
+ "Manter compatibilidade com consumidores antigos do sistema de tema.",
319
+ "Aplicar configuracao de tema simplificada em arvores legadas.",
320
+ "Servir como camada de transicao entre ThemeProvider e SeedThemeProvider."
321
+ ],
322
+ "avoidUseCases": [
323
+ "Novas implementacoes de tema; nesses casos prefira SeedThemeProvider.",
324
+ "Acesso ao contexto moderno de tokens; nesses casos prefira useSgTheme."
325
+ ],
326
+ "synonyms": [
327
+ "legacy theme provider",
328
+ "theme provider compatibility",
329
+ "old theme provider"
330
+ ],
331
+ "relatedEntityFields": [
332
+ "theme",
333
+ "legacyTheme",
334
+ "themeConfig"
335
+ ],
336
+ "compositionHints": [
337
+ "Usar apenas em fluxos legados ou em migracao.",
338
+ "Planejar migracao gradual para SeedThemeProvider."
339
+ ],
340
+ "rankingSignals": {
341
+ "freeText": 0.45,
342
+ "structuredChoice": 0.5,
343
+ "date": 0,
344
+ "number": 0,
345
+ "denseLayout": 0.54
346
+ }
347
+ }
348
+ },
349
+ {
350
+ "componentId": "utility.build-scale-from-hex",
351
+ "exportName": "buildScaleFromHex",
352
+ "sgMeta": {
353
+ "version": "0.1",
354
+ "componentId": "utility.build-scale-from-hex",
355
+ "package": "@seedgrid/fe-theme",
356
+ "exportName": "buildScaleFromHex",
357
+ "slug": "build-scale-from-hex",
358
+ "displayName": "buildScaleFromHex",
359
+ "category": "utility",
360
+ "subcategory": "color-scale",
361
+ "description": "Gera uma escala tonal 50..900 a partir de uma cor base hexadecimal e do modo resolvido.",
362
+ "tags": [
363
+ "utility",
364
+ "color",
365
+ "palette",
366
+ "theme"
367
+ ],
368
+ "capabilities": [
369
+ "palette-generation",
370
+ "mode-aware-scale",
371
+ "hsl-harmonization"
372
+ ],
373
+ "fieldSemantics": [
374
+ "colorScaleGeneration",
375
+ "themePalette"
376
+ ],
377
+ "props": [
378
+ {
379
+ "name": "baseHex",
380
+ "type": "string",
381
+ "required": true,
382
+ "description": "Cor base hexadecimal.",
383
+ "semanticRole": "value",
384
+ "bindable": true
385
+ },
386
+ {
387
+ "name": "resolvedMode",
388
+ "type": "\"light\" | \"dark\"",
389
+ "required": true,
390
+ "description": "Modo usado para calcular a escala.",
391
+ "semanticRole": "behavior",
392
+ "bindable": true
393
+ },
394
+ {
395
+ "name": "opts.boostS",
396
+ "type": "number",
397
+ "description": "Ajuste opcional de saturacao.",
398
+ "semanticRole": "behavior",
399
+ "bindable": true
400
+ },
401
+ {
402
+ "name": "opts.biasL",
403
+ "type": "number",
404
+ "description": "Ajuste opcional de luminosidade.",
405
+ "semanticRole": "behavior",
406
+ "bindable": true
407
+ }
408
+ ],
409
+ "states": [
410
+ "light",
411
+ "dark"
412
+ ],
413
+ "examples": [],
414
+ "showcase": {
415
+ "route": "/packages/fe-theme/build-scale-from-hex",
416
+ "hasPlayground": false,
417
+ "hasPropsTable": false
418
+ },
419
+ "sdui": {
420
+ "rendererType": "utility.build-scale-from-hex",
421
+ "acceptsDataBinding": false,
422
+ "defaultProps": {
423
+ "opts": {}
424
+ }
425
+ }
426
+ },
427
+ "aiHints": {
428
+ "version": "0.1",
429
+ "preferredUseCases": [
430
+ "Gerar paletas tonais a partir de uma seed color.",
431
+ "Construir escalas harmonizadas para tema claro e escuro."
432
+ ],
433
+ "avoidUseCases": [
434
+ "Conversao simples de uma unica cor sem necessidade de escala.",
435
+ "Escolha manual de tokens quando a paleta ja estiver pronta."
436
+ ],
437
+ "synonyms": [
438
+ "build color scale",
439
+ "palette generator",
440
+ "hex scale"
441
+ ],
442
+ "relatedEntityFields": [
443
+ "seed",
444
+ "palette",
445
+ "colorScale",
446
+ "mode"
447
+ ],
448
+ "compositionHints": [
449
+ "Usar com generateThemeVars e outros utilitarios de tokenizacao."
450
+ ],
451
+ "rankingSignals": {
452
+ "freeText": 0,
453
+ "structuredChoice": 0.2,
454
+ "date": 0,
455
+ "number": 0.54,
456
+ "denseLayout": 0.32
457
+ }
458
+ }
459
+ },
460
+ {
461
+ "componentId": "utility.clamp",
462
+ "exportName": "clamp",
463
+ "sgMeta": {
464
+ "version": "0.1",
465
+ "componentId": "utility.clamp",
466
+ "package": "@seedgrid/fe-theme",
467
+ "exportName": "clamp",
468
+ "slug": "clamp",
469
+ "displayName": "clamp",
470
+ "category": "utility",
471
+ "subcategory": "math",
472
+ "description": "Funcao utilitaria para limitar um numero entre minimo e maximo.",
473
+ "tags": [
474
+ "utility",
475
+ "math",
476
+ "range"
477
+ ],
478
+ "capabilities": [
479
+ "numeric-clamp",
480
+ "value-bounding"
481
+ ],
482
+ "fieldSemantics": [
483
+ "rangeConstraint",
484
+ "numericClamp"
485
+ ],
486
+ "props": [
487
+ {
488
+ "name": "n",
489
+ "type": "number",
490
+ "required": true,
491
+ "description": "Valor a limitar.",
492
+ "semanticRole": "value",
493
+ "bindable": true
494
+ },
495
+ {
496
+ "name": "a",
497
+ "type": "number",
498
+ "required": true,
499
+ "description": "Limite minimo.",
500
+ "semanticRole": "validation",
501
+ "bindable": true
502
+ },
503
+ {
504
+ "name": "b",
505
+ "type": "number",
506
+ "required": true,
507
+ "description": "Limite maximo.",
508
+ "semanticRole": "validation",
509
+ "bindable": true
510
+ }
511
+ ],
512
+ "states": [],
513
+ "examples": [],
514
+ "showcase": {
515
+ "route": "/packages/fe-theme/clamp",
516
+ "hasPlayground": false,
517
+ "hasPropsTable": false
518
+ },
519
+ "sdui": {
520
+ "rendererType": "utility.clamp",
521
+ "acceptsDataBinding": false,
522
+ "defaultProps": {}
523
+ }
524
+ },
525
+ "aiHints": {
526
+ "version": "0.1",
527
+ "preferredUseCases": [
528
+ "Limitar valores numericos em utilitarios de tema e cor.",
529
+ "Garantir que saturacao, luminosidade ou canais RGB fiquem dentro do intervalo valido."
530
+ ],
531
+ "avoidUseCases": [
532
+ "Validacao complexa de dominio ou regras de negocio.",
533
+ "Fluxos de interface onde um input especializado seria mais apropriado."
534
+ ],
535
+ "synonyms": [
536
+ "clamp",
537
+ "bound number",
538
+ "limit value"
539
+ ],
540
+ "relatedEntityFields": [
541
+ "min",
542
+ "max",
543
+ "value"
544
+ ],
545
+ "compositionHints": [
546
+ "Usar em helpers de cor e tokenizacao quando for preciso manter valores em faixas validas."
547
+ ],
548
+ "rankingSignals": {
549
+ "freeText": 0,
550
+ "structuredChoice": 0,
551
+ "date": 0,
552
+ "number": 0.86,
553
+ "denseLayout": 0.15
554
+ }
555
+ }
556
+ },
557
+ {
558
+ "componentId": "utility.get-system-mode",
559
+ "exportName": "getSystemMode",
560
+ "sgMeta": {
561
+ "version": "0.1",
562
+ "componentId": "utility.get-system-mode",
563
+ "package": "@seedgrid/fe-theme",
564
+ "exportName": "getSystemMode",
565
+ "slug": "get-system-mode",
566
+ "displayName": "getSystemMode",
567
+ "category": "utility",
568
+ "subcategory": "system-mode",
569
+ "description": "Resolve o modo claro ou escuro com base na preferencia do sistema operacional no browser.",
570
+ "tags": [
571
+ "utility",
572
+ "theme",
573
+ "dark-mode",
574
+ "system-preference"
575
+ ],
576
+ "capabilities": [
577
+ "prefers-color-scheme",
578
+ "light-dark-resolution",
579
+ "browser-aware"
580
+ ],
581
+ "fieldSemantics": [
582
+ "systemModeDetection",
583
+ "preferredColorScheme"
584
+ ],
585
+ "props": [],
586
+ "states": [
587
+ "light",
588
+ "dark"
589
+ ],
590
+ "examples": [],
591
+ "showcase": {
592
+ "route": "/packages/fe-theme/get-system-mode",
593
+ "hasPlayground": false,
594
+ "hasPropsTable": false
595
+ },
596
+ "sdui": {
597
+ "rendererType": "utility.get-system-mode",
598
+ "acceptsDataBinding": false,
599
+ "defaultProps": {}
600
+ }
601
+ },
602
+ "aiHints": {
603
+ "version": "0.1",
604
+ "preferredUseCases": [
605
+ "Detectar preferencia inicial de claro ou escuro no cliente.",
606
+ "Apoiar modos automaticos de tema baseados em prefers-color-scheme."
607
+ ],
608
+ "avoidUseCases": [
609
+ "Persistencia da escolha do usuario; isso deve ser tratado por provider ou storage.",
610
+ "Uso em ambiente puramente server-side como fonte definitiva de tema."
611
+ ],
612
+ "synonyms": [
613
+ "system mode",
614
+ "prefers color scheme",
615
+ "detect dark mode"
616
+ ],
617
+ "relatedEntityFields": [
618
+ "mode",
619
+ "systemMode",
620
+ "colorScheme"
621
+ ],
622
+ "compositionHints": [
623
+ "Usar com SeedThemeProvider quando o modo auto precisar de fallback para o sistema."
624
+ ],
625
+ "rankingSignals": {
626
+ "freeText": 0.2,
627
+ "structuredChoice": 0.36,
628
+ "date": 0,
629
+ "number": 0,
630
+ "denseLayout": 0.22
631
+ }
632
+ }
633
+ },
137
634
  {
138
635
  "componentId": "hook.use-sg-theme",
139
636
  "exportName": "useSgTheme",
@@ -228,6 +725,11 @@
228
725
  "route": "/components/hooks/use-sg-theme",
229
726
  "hasPlayground": true,
230
727
  "hasPropsTable": true
728
+ },
729
+ "sdui": {
730
+ "rendererType": "hook.use-sg-theme",
731
+ "acceptsDataBinding": false,
732
+ "defaultProps": {}
231
733
  }
232
734
  },
233
735
  "aiHints": {
@@ -266,6 +768,90 @@
266
768
  "denseLayout": 0.7
267
769
  }
268
770
  }
771
+ },
772
+ {
773
+ "componentId": "hook.use-theme-legacy",
774
+ "exportName": "useTheme",
775
+ "sgMeta": {
776
+ "version": "0.1",
777
+ "componentId": "hook.use-theme-legacy",
778
+ "package": "@seedgrid/fe-theme",
779
+ "exportName": "useTheme",
780
+ "slug": "use-theme",
781
+ "displayName": "useTheme",
782
+ "category": "hook",
783
+ "subcategory": "theme-legacy",
784
+ "description": "Hook legado para consumir o contexto de tema antigo exposto por ThemeProvider.",
785
+ "tags": [
786
+ "hook",
787
+ "theme",
788
+ "legacy",
789
+ "compatibility"
790
+ ],
791
+ "capabilities": [
792
+ "legacy-theme-read",
793
+ "theme-access"
794
+ ],
795
+ "fieldSemantics": [
796
+ "legacyThemeHook",
797
+ "themeContextAccess"
798
+ ],
799
+ "props": [
800
+ {
801
+ "name": "returns",
802
+ "type": "SeedGridThemeConfig",
803
+ "description": "Configuracao de tema legado atual.",
804
+ "semanticRole": "data",
805
+ "bindable": false
806
+ }
807
+ ],
808
+ "states": [
809
+ "inside-provider"
810
+ ],
811
+ "examples": [],
812
+ "showcase": {
813
+ "route": "/packages/fe-theme/use-theme",
814
+ "hasPlayground": false,
815
+ "hasPropsTable": false
816
+ },
817
+ "sdui": {
818
+ "rendererType": "hook.use-theme-legacy",
819
+ "acceptsDataBinding": false,
820
+ "defaultProps": {}
821
+ }
822
+ },
823
+ "aiHints": {
824
+ "version": "0.1",
825
+ "preferredUseCases": [
826
+ "Ler tema em consumidores antigos baseados em ThemeProvider.",
827
+ "Manter compatibilidade durante migracao do sistema de tema."
828
+ ],
829
+ "avoidUseCases": [
830
+ "Novos componentes e fluxos de tema; nesses casos prefira useSgTheme.",
831
+ "Uso fora de ThemeProvider, onde o hook lancara erro."
832
+ ],
833
+ "synonyms": [
834
+ "legacy theme hook",
835
+ "use theme",
836
+ "theme compatibility hook"
837
+ ],
838
+ "relatedEntityFields": [
839
+ "theme",
840
+ "legacyTheme",
841
+ "colors"
842
+ ],
843
+ "compositionHints": [
844
+ "Usar apenas com ThemeProvider.",
845
+ "Migrar gradualmente para useSgTheme quando possivel."
846
+ ],
847
+ "rankingSignals": {
848
+ "freeText": 0.42,
849
+ "structuredChoice": 0.46,
850
+ "date": 0,
851
+ "number": 0,
852
+ "denseLayout": 0.45
853
+ }
854
+ }
269
855
  }
270
856
  ]
271
857
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SeedThemeProvider.meta.d.ts","sourceRoot":"","sources":["../../src/theme/SeedThemeProvider.meta.ts"],"names":[],"mappings":"AAAA,KAAK,YAAY,GAAG;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,YAAY,GAAG,UAAU,GAAG,YAAY,GAAG,OAAO,GAAG,MAAM,CAAC;IAC/F,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,YAAY,CAAC;CAC/B,CAAC;AAEF,KAAK,QAAQ,GAAG;IACd,OAAO,EAAE,KAAK,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE;QACT,KAAK,EAAE,MAAM,CAAC;QACd,aAAa,EAAE,OAAO,CAAC;QACvB,aAAa,EAAE,OAAO,CAAC;KACxB,CAAC;IACF,IAAI,CAAC,EAAE;QACL,YAAY,EAAE,MAAM,CAAC;QACrB,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACxC,CAAC;CACH,CAAC;AAEF,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,KAAK,CAAC;IACf,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,cAAc,CAAC,EAAE;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,QAuEpB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,WA0BrB,CAAC"}
1
+ {"version":3,"file":"SeedThemeProvider.meta.d.ts","sourceRoot":"","sources":["../../src/theme/SeedThemeProvider.meta.ts"],"names":[],"mappings":"AAAA,KAAK,YAAY,GAAG;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,YAAY,GAAG,UAAU,GAAG,YAAY,GAAG,OAAO,GAAG,MAAM,CAAC;IAC/F,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,YAAY,CAAC;CAC/B,CAAC;AAEF,KAAK,QAAQ,GAAG;IACd,OAAO,EAAE,KAAK,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE;QACT,KAAK,EAAE,MAAM,CAAC;QACd,aAAa,EAAE,OAAO,CAAC;QACvB,aAAa,EAAE,OAAO,CAAC;KACxB,CAAC;IACF,IAAI,CAAC,EAAE;QACL,YAAY,EAAE,MAAM,CAAC;QACrB,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACxC,CAAC;CACH,CAAC;AAEF,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,KAAK,CAAC;IACf,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,cAAc,CAAC,EAAE;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,QA8EpB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,WA0BrB,CAAC"}
@@ -67,6 +67,13 @@ export const sgMeta = {
67
67
  route: "/components/providers/seed-theme-provider",
68
68
  hasPlayground: true,
69
69
  hasPropsTable: true
70
+ },
71
+ sdui: {
72
+ rendererType: "provider.seed-theme",
73
+ acceptsDataBinding: true,
74
+ defaultProps: {
75
+ applyTo: "html"
76
+ }
70
77
  }
71
78
  };
72
79
  export const aiHints = {
@@ -0,0 +1,60 @@
1
+ type SgMetaPropV0 = {
2
+ name: string;
3
+ type: string;
4
+ required?: boolean;
5
+ default?: unknown;
6
+ description?: string;
7
+ semanticRole?: "value" | "label" | "validation" | "behavior" | "appearance" | "event" | "data";
8
+ bindable?: boolean;
9
+ };
10
+ type SgMetaV0 = {
11
+ version: "0.1";
12
+ componentId: string;
13
+ package: string;
14
+ exportName: string;
15
+ slug: string;
16
+ displayName: string;
17
+ category: string;
18
+ subcategory?: string;
19
+ description: string;
20
+ tags?: string[];
21
+ capabilities?: string[];
22
+ fieldSemantics?: string[];
23
+ props?: SgMetaPropV0[];
24
+ states?: string[];
25
+ examples?: Array<{
26
+ id: string;
27
+ title: string;
28
+ file: string;
29
+ kind: "sample" | "playground";
30
+ }>;
31
+ showcase?: {
32
+ route: string;
33
+ hasPlayground: boolean;
34
+ hasPropsTable: boolean;
35
+ };
36
+ sdui?: {
37
+ rendererType: string;
38
+ acceptsDataBinding?: boolean;
39
+ defaultProps?: Record<string, unknown>;
40
+ };
41
+ };
42
+ type SgAiHintsV0 = {
43
+ version: "0.1";
44
+ preferredUseCases: string[];
45
+ avoidUseCases?: string[];
46
+ synonyms?: string[];
47
+ relatedEntityFields?: string[];
48
+ compositionHints?: string[];
49
+ rankingSignals?: {
50
+ freeText?: number;
51
+ structuredChoice?: number;
52
+ date?: number;
53
+ number?: number;
54
+ denseLayout?: number;
55
+ };
56
+ };
57
+ export declare const sgMeta: SgMetaV0;
58
+ export declare const aiHints: SgAiHintsV0;
59
+ export {};
60
+ //# sourceMappingURL=ThemeProvider.meta.d.ts.map