@seedgrid/fe-components 2026.6.6 → 2026.6.8

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 (40) hide show
  1. package/dist/ai/seedgrid-components.manifest.json +523 -0
  2. package/dist/i18n/en-US.d.ts.map +1 -1
  3. package/dist/i18n/en-US.js +2 -0
  4. package/dist/i18n/es.d.ts.map +1 -1
  5. package/dist/i18n/es.js +2 -0
  6. package/dist/i18n/fr.d.ts.map +1 -1
  7. package/dist/i18n/fr.js +2 -0
  8. package/dist/i18n/pt-BR.d.ts.map +1 -1
  9. package/dist/i18n/pt-BR.js +2 -0
  10. package/dist/i18n/pt-PT.d.ts.map +1 -1
  11. package/dist/i18n/pt-PT.js +2 -0
  12. package/dist/index.d.ts +6 -0
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +3 -0
  15. package/dist/inputs/SgInputTextSearch.d.ts +11 -0
  16. package/dist/inputs/SgInputTextSearch.d.ts.map +1 -0
  17. package/dist/inputs/SgInputTextSearch.js +47 -0
  18. package/dist/inputs/SgInputTextSearch.meta.d.ts +4 -0
  19. package/dist/inputs/SgInputTextSearch.meta.d.ts.map +1 -0
  20. package/dist/inputs/SgInputTextSearch.meta.js +50 -0
  21. package/dist/inputs/SgMultiSelect.d.ts +23 -0
  22. package/dist/inputs/SgMultiSelect.d.ts.map +1 -0
  23. package/dist/inputs/SgMultiSelect.js +117 -0
  24. package/dist/inputs/SgMultiSelect.meta.d.ts +4 -0
  25. package/dist/inputs/SgMultiSelect.meta.d.ts.map +1 -0
  26. package/dist/inputs/SgMultiSelect.meta.js +56 -0
  27. package/dist/inputs/SgMultiSelectChips.d.ts +27 -0
  28. package/dist/inputs/SgMultiSelectChips.d.ts.map +1 -0
  29. package/dist/inputs/SgMultiSelectChips.js +127 -0
  30. package/dist/inputs/SgMultiSelectChips.meta.d.ts +4 -0
  31. package/dist/inputs/SgMultiSelectChips.meta.d.ts.map +1 -0
  32. package/dist/inputs/SgMultiSelectChips.meta.js +55 -0
  33. package/dist/inputs/SgMultiSelectDropdown.d.ts +28 -0
  34. package/dist/inputs/SgMultiSelectDropdown.d.ts.map +1 -0
  35. package/dist/inputs/SgMultiSelectDropdown.js +41 -0
  36. package/dist/inputs/useSgMultiSelect.d.ts +48 -0
  37. package/dist/inputs/useSgMultiSelect.d.ts.map +1 -0
  38. package/dist/inputs/useSgMultiSelect.js +202 -0
  39. package/dist/sandbox.cjs +53 -53
  40. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,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,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,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
@@ -1,4 +1,5 @@
1
1
  export { SgInputText } from "./inputs/SgInputText";
2
+ export { SgInputTextSearch } from "./inputs/SgInputTextSearch";
2
3
  export { SgInputNumber } from "./inputs/SgInputNumber";
3
4
  export { SgInputCurrency } from "./inputs/SgInputCurrency";
4
5
  export { SgInputTextArea } from "./inputs/SgInputTextArea";
@@ -17,6 +18,8 @@ export { SgInputBirthDate } from "./inputs/SgInputBirthDate";
17
18
  export { SgToggleSwitch } from "./inputs/SgToggleSwitch";
18
19
  export { SgAutocomplete } from "./inputs/SgAutocomplete";
19
20
  export { SgCombobox } from "./inputs/SgCombobox";
21
+ export { SgMultiSelect } from "./inputs/SgMultiSelect";
22
+ export { SgMultiSelectChips } from "./inputs/SgMultiSelectChips";
20
23
  export { SgTextEditor } from "./inputs/SgTextEditor";
21
24
  export { SgRating } from "./inputs/SgRating";
22
25
  export { SgRadioGroup } from "./inputs/SgRadioGroup";
@@ -0,0 +1,11 @@
1
+ import { type SgInputTextProps } from "./SgInputText";
2
+ export type SgInputTextSearchProps = Omit<SgInputTextProps, "onChange"> & {
3
+ minChars?: number;
4
+ debounceMs?: number;
5
+ /** Disparado imediatamente a cada digitacao, com o valor cru. */
6
+ onChange?: (value: string) => void;
7
+ /** Disparado apos o debounce, com o valor normalizado (trim + gate por minChars). */
8
+ onSearchChange: (value: string) => void;
9
+ };
10
+ export declare function SgInputTextSearch({ minChars, debounceMs, onChange, onSearchChange, ...props }: Readonly<SgInputTextSearchProps>): import("react/jsx-runtime").JSX.Element;
11
+ //# sourceMappingURL=SgInputTextSearch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SgInputTextSearch.d.ts","sourceRoot":"","sources":["../../src/inputs/SgInputTextSearch.tsx"],"names":[],"mappings":"AASA,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEnE,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,gBAAgB,EAAE,UAAU,CAAC,GAAG;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,qFAAqF;IACrF,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,EAChC,QAAY,EACZ,UAAgB,EAChB,QAAQ,EACR,cAAc,EACd,GAAG,KAAK,EACT,EAAE,QAAQ,CAAC,sBAAsB,CAAC,2CA8ClC"}
@@ -0,0 +1,47 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ // Origem: admin-web/app/components/SgInputTextSearch.tsx (movido para o DS).
4
+ // A versao original usava rxjs (Subject + debounceTime/distinctUntilChanged/map).
5
+ // Aqui o debounce e feito com useEffect + setTimeout, sem dependencia externa,
6
+ // preservando o mesmo comportamento: trim, gate por minChars, debounceMs e
7
+ // "distinct" (nao redispara onSearchChange quando o valor normalizado nao muda).
8
+ import React from "react";
9
+ import { SgInputText } from "./SgInputText";
10
+ export function SgInputTextSearch({ minChars = 3, debounceMs = 350, onChange, onSearchChange, ...props }) {
11
+ const [value, setValue] = React.useState("");
12
+ // Mantem o callback mais recente em ref para que o efeito de debounce abaixo
13
+ // dependa apenas de `value`/`debounceMs`/`minChars`. Assim uma nova identidade
14
+ // de `onSearchChange` (re-render do pai) nao reinicia o timer em andamento.
15
+ const onSearchChangeRef = React.useRef(onSearchChange);
16
+ onSearchChangeRef.current = onSearchChange;
17
+ // Guarda o ultimo valor normalizado JA emitido para implementar o "distinct".
18
+ const lastEmittedRef = React.useRef(null);
19
+ // So dispara onSearchChange DEPOIS da 1a digitacao. Igual ao rxjs (o Subject so
20
+ // emite quando ha um .next), nao dispara no MOUNT com a query vazia.
21
+ const hasInteractedRef = React.useRef(false);
22
+ React.useEffect(() => {
23
+ if (!hasInteractedRef.current)
24
+ return;
25
+ const timer = window.setTimeout(() => {
26
+ const normalized = value.trim();
27
+ const passesGate = normalized.length === 0 || normalized.length >= minChars;
28
+ if (!passesGate)
29
+ return;
30
+ if (lastEmittedRef.current === normalized)
31
+ return;
32
+ lastEmittedRef.current = normalized;
33
+ onSearchChangeRef.current(normalized);
34
+ }, Math.max(0, debounceMs));
35
+ return () => {
36
+ window.clearTimeout(timer);
37
+ };
38
+ }, [value, debounceMs, minChars]);
39
+ return (_jsx(SgInputText, { ...props, onChange: (nextValue) => {
40
+ hasInteractedRef.current = true;
41
+ setValue(nextValue);
42
+ onChange?.(nextValue);
43
+ }, inputProps: {
44
+ ...(props.inputProps ?? {}),
45
+ value
46
+ } }));
47
+ }
@@ -0,0 +1,4 @@
1
+ import type { SgAiHintsV0, SgMetaV0 } from "../ai-meta/types";
2
+ export declare const sgMeta: SgMetaV0;
3
+ export declare const aiHints: SgAiHintsV0;
4
+ //# sourceMappingURL=SgInputTextSearch.meta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SgInputTextSearch.meta.d.ts","sourceRoot":"","sources":["../../src/inputs/SgInputTextSearch.meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE9D,eAAO,MAAM,MAAM,EAAE,QA8BpB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,WAmBrB,CAAC"}
@@ -0,0 +1,50 @@
1
+ export const sgMeta = {
2
+ version: "0.1",
3
+ componentId: "form.input.textsearch",
4
+ package: "@seedgrid/fe-components",
5
+ exportName: "SgInputTextSearch",
6
+ slug: "sg-input-text-search",
7
+ displayName: "SgInputTextSearch",
8
+ category: "input",
9
+ subcategory: "search",
10
+ description: "Campo de busca que embrulha o SgInputText com debounce sem dependencia externa: onChange imediato e onSearchChange disparado apos o debounce com o termo normalizado (trim + gate por minChars).",
11
+ tags: ["form", "search", "debounce", "text", "filter"],
12
+ capabilities: ["debounce", "min-chars-gate", "distinct", "controlled"],
13
+ fieldSemantics: ["freeText", "search", "filter"],
14
+ props: [
15
+ { name: "id", type: "string", required: true, description: "Identificador unico do campo.", semanticRole: "data", bindable: false },
16
+ { name: "label", type: "string", description: "Rotulo exibido ao usuario.", semanticRole: "label", bindable: true },
17
+ { name: "placeholder", type: "string", description: "Texto de apoio dentro do input.", semanticRole: "label", bindable: true },
18
+ { name: "minChars", type: "number", default: 3, description: "Minimo de caracteres (apos trim) para disparar onSearchChange; 0 caracteres tambem dispara (limpar busca).", semanticRole: "behavior", bindable: true },
19
+ { name: "debounceMs", type: "number", default: 350, description: "Atraso do debounce em milissegundos antes de disparar onSearchChange.", semanticRole: "behavior", bindable: true },
20
+ { name: "onChange", type: "(value: string) => void", description: "Disparado imediatamente a cada digitacao, com o valor cru.", semanticRole: "event", bindable: false },
21
+ { name: "onSearchChange", type: "(value: string) => void", required: true, description: "Disparado apos o debounce, com o termo normalizado.", semanticRole: "event", bindable: false }
22
+ ],
23
+ states: ["default", "focused", "disabled", "error"],
24
+ showcase: { route: "/components/sg-input-text-search", hasPlayground: false, hasPropsTable: true },
25
+ sdui: {
26
+ rendererType: "field.textsearch",
27
+ acceptsDataBinding: true,
28
+ defaultProps: { minChars: 3, debounceMs: 350 }
29
+ }
30
+ };
31
+ export const aiHints = {
32
+ version: "0.1",
33
+ preferredUseCases: [
34
+ "Campo de busca/filtro que dispara requisicoes apos o usuario parar de digitar.",
35
+ "Filtragem de listas, tabelas ou grids com termo de pesquisa debounced.",
36
+ "Buscas onde se quer evitar disparos a cada tecla e exigir um minimo de caracteres."
37
+ ],
38
+ avoidUseCases: [
39
+ "Entrada de texto comum sem busca; nesses casos prefira SgInputText.",
40
+ "Selecao a partir de uma lista fechada; nesses casos prefira SgAutocomplete ou SgCombobox.",
41
+ "Busca instantanea sem debounce; nesses casos use SgInputText com onChange direto."
42
+ ],
43
+ synonyms: ["search input", "search field", "campo de busca", "debounced search", "filtro de busca"],
44
+ relatedEntityFields: ["query", "search", "term", "filter", "busca"],
45
+ compositionHints: [
46
+ "Combinar com SgDatatable ou listas para filtrar resultados.",
47
+ "Agrupar com SgPanel/SgToolBar em cabecalhos de listagem."
48
+ ],
49
+ rankingSignals: { freeText: 0.9, structuredChoice: 0.1, date: 0, number: 0, denseLayout: 0.7 }
50
+ };
@@ -0,0 +1,23 @@
1
+ import { type SgInputTextProps } from "./SgInputText";
2
+ import type { SgMultiSelectOption, SgMultiSelectOptionValue } from "./useSgMultiSelect";
3
+ export type { SgMultiSelectOption, SgMultiSelectOptionValue } from "./useSgMultiSelect";
4
+ type SgMultiSelectBaseHostProps = Omit<SgInputTextProps, "onChange" | "clearButton" | "iconButtons" | "inputProps" | "readOnly" | "value" | "type" | "showCharCounter" | "maxLength" | "minLength">;
5
+ export type SgMultiSelectProps = SgMultiSelectBaseHostProps & {
6
+ options: SgMultiSelectOption[];
7
+ value?: SgMultiSelectOptionValue[];
8
+ onChange?: (value: SgMultiSelectOptionValue[]) => void;
9
+ searchable?: boolean;
10
+ searchPlaceholder?: string;
11
+ clearable?: boolean;
12
+ maxSelected?: number;
13
+ emptyText?: string;
14
+ /**
15
+ * Quantos rotulos exibir antes de cair no resumo "N selecionadas".
16
+ * @default 2
17
+ */
18
+ summaryThreshold?: number;
19
+ onEnter?: () => void;
20
+ onExit?: () => void;
21
+ };
22
+ export declare function SgMultiSelect(props: Readonly<SgMultiSelectProps>): import("react/jsx-runtime").JSX.Element;
23
+ //# sourceMappingURL=SgMultiSelect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SgMultiSelect.d.ts","sourceRoot":"","sources":["../../src/inputs/SgMultiSelect.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAe,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAInE,OAAO,KAAK,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAExF,YAAY,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAExF,KAAK,0BAA0B,GAAG,IAAI,CACpC,gBAAgB,EACd,UAAU,GACV,aAAa,GACb,aAAa,GACb,YAAY,GACZ,UAAU,GACV,OAAO,GACP,MAAM,GACN,iBAAiB,GACjB,WAAW,GACX,WAAW,CACd,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,0BAA0B,GAAG;IAC5D,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B,KAAK,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACnC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,wBAAwB,EAAE,KAAK,IAAI,CAAC;IACvD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAmLF,wBAAgB,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,kBAAkB,CAAC,2CAsBhE"}
@@ -0,0 +1,117 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import React from "react";
4
+ import { Check, ChevronDown, X } from "lucide-react";
5
+ import { Controller } from "react-hook-form";
6
+ import { resolveFieldError } from "../rhf";
7
+ import { SgInputText } from "./SgInputText";
8
+ import { t, useComponentsI18n } from "../i18n";
9
+ import { SgMultiSelectDropdown } from "./SgMultiSelectDropdown";
10
+ import { useSgMultiSelect } from "./useSgMultiSelect";
11
+ function SgMultiSelectBase(props) {
12
+ const { options, value, onChange, searchable = false, searchPlaceholder, clearable = false, maxSelected, emptyText: emptyTextProp, summaryThreshold = 2, placeholder, enabled, borderRadius, onEnter, onExit, ...rest } = props;
13
+ const i18n = useComponentsI18n();
14
+ const emptyText = emptyTextProp ?? t(i18n, "components.autocomplete.empty");
15
+ const resolvedPlaceholder = placeholder ?? t(i18n, "components.inputs.select.placeholder");
16
+ const isDisabled = enabled === false;
17
+ const ms = useSgMultiSelect({
18
+ options,
19
+ value,
20
+ onChange,
21
+ searchable,
22
+ maxSelected,
23
+ isDisabled,
24
+ borderRadius
25
+ });
26
+ const displayedValue = React.useMemo(() => {
27
+ if (ms.selectedLabels.length === 0)
28
+ return "";
29
+ if (ms.selectedLabels.length <= summaryThreshold)
30
+ return ms.selectedLabels.join(", ");
31
+ return t(i18n, "components.inputs.multiSelect.summary", { count: ms.selectedLabels.length });
32
+ }, [i18n, ms.selectedLabels, summaryThreshold]);
33
+ const triggerIcon = (_jsx("button", { type: "button", className: "text-foreground/60 hover:text-foreground", tabIndex: -1, onMouseDown: (event) => {
34
+ event.preventDefault();
35
+ ms.ignoreBlurRef.current = true;
36
+ }, onClick: () => {
37
+ if (ms.open) {
38
+ ms.closeDropdown();
39
+ return;
40
+ }
41
+ ms.openDropdown();
42
+ }, "aria-label": t(i18n, "components.actions.openList"), children: ms.open ? _jsx(Check, { size: 16 }) : _jsx(ChevronDown, { size: 16 }) }));
43
+ const iconButtons = [];
44
+ if (clearable && ms.selectedLabels.length > 0 && !isDisabled) {
45
+ iconButtons.push(_jsx("button", { type: "button", className: "text-foreground/60 hover:text-foreground", tabIndex: -1, onMouseDown: (event) => {
46
+ event.preventDefault();
47
+ ms.ignoreBlurRef.current = true;
48
+ }, onClick: () => {
49
+ ms.clearSelection();
50
+ }, "aria-label": t(i18n, "components.actions.clearSelection"), children: _jsx(X, { size: 16 }) }, "clear"));
51
+ }
52
+ iconButtons.push(_jsx("span", { children: triggerIcon }, "trigger"));
53
+ return (_jsxs("div", { className: ms.open ? "relative z-[1100]" : "relative", ref: ms.wrapperRef, children: [_jsx(SgInputText, { ...rest, placeholder: resolvedPlaceholder, enabled: enabled, borderRadius: borderRadius, clearButton: false, readOnly: true, iconButtons: iconButtons, inputProps: {
54
+ ref: ms.inputRef,
55
+ value: displayedValue,
56
+ role: "combobox",
57
+ "aria-expanded": ms.open,
58
+ "aria-haspopup": "listbox",
59
+ onMouseDown: (event) => {
60
+ if (isDisabled)
61
+ return;
62
+ event.preventDefault();
63
+ if (ms.open) {
64
+ ms.closeDropdown();
65
+ }
66
+ else {
67
+ ms.openDropdown();
68
+ }
69
+ },
70
+ onFocus: () => {
71
+ onEnter?.();
72
+ },
73
+ onBlur: (event) => {
74
+ if (event.relatedTarget && ms.wrapperRef.current?.contains(event.relatedTarget)) {
75
+ return;
76
+ }
77
+ if (event.relatedTarget && ms.dropdownRef.current?.contains(event.relatedTarget)) {
78
+ return;
79
+ }
80
+ if (ms.ignoreBlurRef.current) {
81
+ setTimeout(() => {
82
+ ms.ignoreBlurRef.current = false;
83
+ }, 0);
84
+ return;
85
+ }
86
+ onExit?.();
87
+ },
88
+ onKeyDown: (event) => {
89
+ if (event.defaultPrevented)
90
+ return;
91
+ if (isDisabled)
92
+ return;
93
+ if (event.key === "Escape") {
94
+ event.preventDefault();
95
+ ms.closeDropdown();
96
+ return;
97
+ }
98
+ if (event.key === "ArrowDown" || event.key === "Enter" || event.key === " ") {
99
+ event.preventDefault();
100
+ if (!ms.open) {
101
+ ms.openDropdown();
102
+ return;
103
+ }
104
+ if (!searchable) {
105
+ ms.handleListKeyDown(event);
106
+ }
107
+ }
108
+ }
109
+ } }), ms.open && !isDisabled ? (_jsx(SgMultiSelectDropdown, { dropdownRef: ms.dropdownRef, searchRef: ms.searchRef, ignoreBlurRef: ms.ignoreBlurRef, dropdownStyle: ms.dropdownStyle, searchable: searchable, searchPlaceholder: searchPlaceholder, query: ms.query, setQuery: ms.setQuery, setActiveIndex: ms.setActiveIndex, activeIndex: ms.activeIndex, visibleOptions: ms.visibleOptions, emptyText: emptyText, isSelected: ms.isSelected, resolvedValueLength: ms.resolvedValue.length, maxSelected: maxSelected, toggleOption: ms.toggleOption, onKeyDown: ms.handleListKeyDown })) : null] }));
110
+ }
111
+ export function SgMultiSelect(props) {
112
+ const { control, name, rules, ...rest } = props;
113
+ if (control && name) {
114
+ return (_jsx(Controller, { name: name, control: control, rules: rules, render: ({ field, fieldState }) => (_jsx(SgMultiSelectBase, { ...rest, error: resolveFieldError(rest.error, fieldState.error?.message), value: field.value ?? [], onChange: (next) => field.onChange(next) })) }));
115
+ }
116
+ return _jsx(SgMultiSelectBase, { ...rest });
117
+ }
@@ -0,0 +1,4 @@
1
+ import type { SgAiHintsV0, SgMetaV0 } from "../ai-meta/types";
2
+ export declare const sgMeta: SgMetaV0;
3
+ export declare const aiHints: SgAiHintsV0;
4
+ //# sourceMappingURL=SgMultiSelect.meta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SgMultiSelect.meta.d.ts","sourceRoot":"","sources":["../../src/inputs/SgMultiSelect.meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE9D,eAAO,MAAM,MAAM,EAAE,QAoCpB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,WAmBrB,CAAC"}
@@ -0,0 +1,56 @@
1
+ export const sgMeta = {
2
+ version: "0.1",
3
+ componentId: "form.input.multiselect",
4
+ package: "@seedgrid/fe-components",
5
+ exportName: "SgMultiSelect",
6
+ slug: "sg-multi-select",
7
+ displayName: "SgMultiSelect",
8
+ category: "input",
9
+ subcategory: "multiselect",
10
+ description: "Campo de selecao multipla no estilo select: trigger com chevron que vira check ao abrir e dropdown com checkboxes que mantem a lista aberta.",
11
+ tags: ["form", "multiselect", "choice", "checkbox", "rhf"],
12
+ capabilities: ["multi-selection", "search", "clearable", "max-selected", "keyboard"],
13
+ fieldSemantics: ["structuredChoice", "multiChoice", "tags", "categories"],
14
+ props: [
15
+ { name: "id", type: "string", required: true, description: "Identificador unico do campo.", semanticRole: "data", bindable: false },
16
+ { name: "label", type: "string", description: "Rotulo exibido ao usuario.", semanticRole: "label", bindable: true },
17
+ { name: "options", type: "{ label: string; value: string | number; disabled?: boolean }[]", description: "Lista de opcoes disponiveis.", semanticRole: "data", bindable: false },
18
+ { name: "value", type: "(string | number)[]", description: "Array de valores selecionados.", semanticRole: "value", bindable: true },
19
+ { name: "onChange", type: "(value: (string | number)[]) => void", description: "Callback com o array atualizado de valores.", semanticRole: "event", bindable: false },
20
+ { name: "searchable", type: "boolean", default: false, description: "Exibe campo de busca no topo do dropdown.", semanticRole: "behavior", bindable: true },
21
+ { name: "clearable", type: "boolean", default: false, description: "Exibe botao para limpar toda a selecao.", semanticRole: "behavior", bindable: true },
22
+ { name: "maxSelected", type: "number", description: "Limite maximo de itens selecionaveis.", semanticRole: "validation", bindable: true },
23
+ { name: "placeholder", type: "string", description: "Texto exibido quando nada esta selecionado.", semanticRole: "label", bindable: true },
24
+ { name: "summaryThreshold", type: "number", default: 2, description: "Quantidade de rotulos antes de mostrar 'N selecionadas'.", semanticRole: "appearance", bindable: true },
25
+ { name: "required", type: "boolean", default: false, description: "Marca o campo como obrigatorio.", semanticRole: "validation", bindable: true },
26
+ { name: "onEnter", type: "() => void", description: "Disparado ao focar o campo.", semanticRole: "event", bindable: false },
27
+ { name: "onExit", type: "() => void", description: "Disparado ao sair do campo.", semanticRole: "event", bindable: false }
28
+ ],
29
+ states: ["default", "focused", "open", "disabled", "error"],
30
+ showcase: { route: "/components/sg-multi-select", hasPlayground: false, hasPropsTable: true },
31
+ sdui: {
32
+ rendererType: "field.multiselect",
33
+ acceptsDataBinding: true,
34
+ defaultProps: { searchable: false, clearable: false, summaryThreshold: 2 }
35
+ }
36
+ };
37
+ export const aiHints = {
38
+ version: "0.1",
39
+ preferredUseCases: [
40
+ "Selecao de varias opcoes a partir de uma lista fechada (ex.: empresas, categorias, tags).",
41
+ "Filtros multi-valor em formularios e relatorios.",
42
+ "Campos relacionais N:N em formularios CRUD."
43
+ ],
44
+ avoidUseCases: [
45
+ "Escolha unica; nesses casos prefira SgCombobox ou SgRadioGroup.",
46
+ "Listas muito grandes com busca remota assincrona; nesses casos prefira SgAutocomplete.",
47
+ "Poucas opcoes sempre visiveis; nesses casos prefira SgCheckboxGroup."
48
+ ],
49
+ synonyms: ["multi select", "multiselect", "selecao multipla", "multiple choice select", "checkbox dropdown"],
50
+ relatedEntityFields: ["empresas", "categorias", "tags", "permissoes", "roles"],
51
+ compositionHints: [
52
+ "Usar dentro de SgPanel ou SgGroupBox em formularios.",
53
+ "Combinar com SgCheckboxGroup quando todas as opcoes precisam ficar sempre visiveis."
54
+ ],
55
+ rankingSignals: { freeText: 0.1, structuredChoice: 0.95, date: 0, number: 0, denseLayout: 0.7 }
56
+ };
@@ -0,0 +1,27 @@
1
+ import { type RhfFieldProps } from "../rhf";
2
+ import type { SgMultiSelectOption, SgMultiSelectOptionValue } from "./useSgMultiSelect";
3
+ export type { SgMultiSelectOption, SgMultiSelectOptionValue } from "./useSgMultiSelect";
4
+ export type SgMultiSelectChipsProps = RhfFieldProps & {
5
+ id: string;
6
+ label?: string;
7
+ labelText?: string;
8
+ className?: string;
9
+ labelClassName?: string;
10
+ width?: number | string;
11
+ borderRadius?: number | string;
12
+ enabled?: boolean;
13
+ required?: boolean;
14
+ options: SgMultiSelectOption[];
15
+ value?: SgMultiSelectOptionValue[];
16
+ onChange?: (value: SgMultiSelectOptionValue[]) => void;
17
+ searchable?: boolean;
18
+ searchPlaceholder?: string;
19
+ clearable?: boolean;
20
+ maxSelected?: number;
21
+ emptyText?: string;
22
+ placeholder?: string;
23
+ onEnter?: () => void;
24
+ onExit?: () => void;
25
+ };
26
+ export declare function SgMultiSelectChips(props: Readonly<SgMultiSelectChipsProps>): import("react/jsx-runtime").JSX.Element;
27
+ //# sourceMappingURL=SgMultiSelectChips.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SgMultiSelectChips.d.ts","sourceRoot":"","sources":["../../src/inputs/SgMultiSelectChips.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAqB,KAAK,aAAa,EAAE,MAAM,QAAQ,CAAC;AAI/D,OAAO,KAAK,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAExF,YAAY,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAExF,MAAM,MAAM,uBAAuB,GAAG,aAAa,GAAG;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B,KAAK,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACnC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,wBAAwB,EAAE,KAAK,IAAI,CAAC;IACvD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB,CAAC;AAwPF,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,uBAAuB,CAAC,2CAsB1E"}
@@ -0,0 +1,127 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import React from "react";
4
+ import { Check, ChevronDown, X } from "lucide-react";
5
+ import { Controller } from "react-hook-form";
6
+ import { resolveFieldError } from "../rhf";
7
+ import { t, useComponentsI18n } from "../i18n";
8
+ import { SgMultiSelectDropdown } from "./SgMultiSelectDropdown";
9
+ import { useSgMultiSelect } from "./useSgMultiSelect";
10
+ function SgMultiSelectChipsBase(props) {
11
+ const { id, label, labelText, className, labelClassName, width, borderRadius, enabled, required, options, value, onChange, searchable = false, searchPlaceholder, clearable = false, maxSelected, emptyText: emptyTextProp, placeholder, error, onEnter, onExit } = props;
12
+ const i18n = useComponentsI18n();
13
+ const emptyText = emptyTextProp ?? t(i18n, "components.autocomplete.empty");
14
+ const resolvedPlaceholder = placeholder ?? t(i18n, "components.inputs.select.placeholder");
15
+ const isDisabled = enabled === false;
16
+ const resolvedLabel = labelText ?? label ?? "";
17
+ const ms = useSgMultiSelect({
18
+ options,
19
+ value,
20
+ onChange,
21
+ searchable,
22
+ maxSelected,
23
+ isDisabled,
24
+ borderRadius
25
+ });
26
+ const triggerRef = React.useRef(null);
27
+ const hasError = Boolean(error);
28
+ const resolvedBorderRadius = borderRadius === undefined
29
+ ? undefined
30
+ : typeof borderRadius === "number"
31
+ ? `${borderRadius}px`
32
+ : borderRadius;
33
+ const borderClass = hasError
34
+ ? "border border-[hsl(var(--destructive))]"
35
+ : ms.open
36
+ ? "border border-[hsl(var(--primary))] ring-2 ring-[hsl(var(--primary)/0.25)]"
37
+ : "border border-border";
38
+ const triggerClass = [
39
+ "flex min-h-11 w-full flex-wrap items-center gap-1.5 rounded-md px-2 py-1.5 text-sm",
40
+ "bg-[var(--sg-input-bg,hsl(var(--background)))] text-[var(--sg-input-fg,hsl(var(--foreground)))]",
41
+ borderClass,
42
+ isDisabled
43
+ ? "cursor-not-allowed bg-[var(--sg-input-disabled-bg,hsl(var(--muted)))] text-[var(--sg-input-disabled-fg,hsl(var(--muted-foreground)))]"
44
+ : "cursor-text",
45
+ className ?? ""
46
+ ].join(" ");
47
+ const openOrClose = () => {
48
+ if (isDisabled)
49
+ return;
50
+ if (ms.open) {
51
+ ms.closeDropdown();
52
+ }
53
+ else {
54
+ ms.openDropdown();
55
+ }
56
+ };
57
+ return (_jsxs("div", { style: { width: width ?? "100%" }, children: [resolvedLabel ? (_jsxs("label", { htmlFor: id, className: [
58
+ "mb-1 block text-sm font-medium",
59
+ hasError ? "text-[hsl(var(--destructive))]" : "text-foreground/70",
60
+ labelClassName ?? ""
61
+ ].join(" "), children: [_jsx("span", { children: resolvedLabel }), required ? (_jsx("span", { className: "ml-1 text-[hsl(var(--destructive))]", "aria-hidden": "true", children: "*" })) : null] })) : null, _jsxs("div", { className: ms.open ? "relative z-[1100]" : "relative", ref: ms.wrapperRef, children: [_jsxs("div", { ref: triggerRef, id: id, role: "combobox", "aria-expanded": ms.open, "aria-haspopup": "listbox", tabIndex: isDisabled ? -1 : 0, className: triggerClass, style: { borderRadius: resolvedBorderRadius }, onMouseDown: (event) => {
62
+ // Clicks on chip remove buttons handle their own logic.
63
+ if (event.target.closest("[data-sg-chip-remove]"))
64
+ return;
65
+ event.preventDefault();
66
+ ms.ignoreBlurRef.current = true;
67
+ openOrClose();
68
+ triggerRef.current?.focus();
69
+ }, onFocus: () => {
70
+ onEnter?.();
71
+ }, onBlur: (event) => {
72
+ if (event.relatedTarget && ms.wrapperRef.current?.contains(event.relatedTarget)) {
73
+ return;
74
+ }
75
+ if (event.relatedTarget && ms.dropdownRef.current?.contains(event.relatedTarget)) {
76
+ return;
77
+ }
78
+ if (ms.ignoreBlurRef.current) {
79
+ setTimeout(() => {
80
+ ms.ignoreBlurRef.current = false;
81
+ }, 0);
82
+ return;
83
+ }
84
+ onExit?.();
85
+ }, onKeyDown: (event) => {
86
+ if (isDisabled)
87
+ return;
88
+ if (event.key === "Escape") {
89
+ event.preventDefault();
90
+ ms.closeDropdown();
91
+ return;
92
+ }
93
+ if (event.key === "ArrowDown" || event.key === "Enter" || event.key === " ") {
94
+ event.preventDefault();
95
+ if (!ms.open) {
96
+ ms.openDropdown();
97
+ return;
98
+ }
99
+ if (!searchable) {
100
+ ms.handleListKeyDown(event);
101
+ }
102
+ }
103
+ }, children: [_jsx("div", { className: "flex min-w-0 flex-1 flex-wrap items-center gap-1.5", children: ms.selectedOptions.length === 0 ? (_jsx("span", { className: "px-1 text-[var(--sg-input-placeholder,hsl(var(--muted-foreground)))]", children: resolvedPlaceholder })) : (ms.selectedOptions.map((option) => (_jsxs("span", { className: "inline-flex max-w-full items-center gap-1 rounded-full border border-border bg-muted/60 py-0.5 pl-2 pr-1 text-xs text-foreground", children: [_jsx("span", { className: "truncate", children: option.label }), !isDisabled ? (_jsx("button", { type: "button", "data-sg-chip-remove": "true", tabIndex: -1, className: "flex h-4 w-4 shrink-0 items-center justify-center rounded-full text-foreground/60 hover:bg-foreground/10 hover:text-foreground", onMouseDown: (event) => {
104
+ event.preventDefault();
105
+ event.stopPropagation();
106
+ ms.ignoreBlurRef.current = true;
107
+ }, onClick: (event) => {
108
+ event.preventDefault();
109
+ event.stopPropagation();
110
+ ms.removeValue(option.value);
111
+ }, "aria-label": t(i18n, "components.inputs.multiSelect.removeChip", { label: option.label }), children: _jsx(X, { size: 12 }) })) : null] }, String(option.value))))) }), _jsxs("span", { className: "ml-auto flex shrink-0 items-center gap-1 self-start pt-0.5", children: [clearable && ms.selectedOptions.length > 0 && !isDisabled ? (_jsx("button", { type: "button", "data-sg-chip-remove": "true", tabIndex: -1, className: "text-foreground/60 hover:text-foreground", onMouseDown: (event) => {
112
+ event.preventDefault();
113
+ event.stopPropagation();
114
+ ms.ignoreBlurRef.current = true;
115
+ }, onClick: (event) => {
116
+ event.preventDefault();
117
+ event.stopPropagation();
118
+ ms.clearSelection();
119
+ }, "aria-label": t(i18n, "components.actions.clearSelection"), children: _jsx(X, { size: 16 }) })) : null, _jsx("span", { className: "text-foreground/60", "aria-hidden": "true", children: ms.open ? _jsx(Check, { size: 16 }) : _jsx(ChevronDown, { size: 16 }) })] })] }), error ? _jsx("p", { "data-sg-error": true, className: "mt-1 text-xs text-red-600", children: error }) : null, ms.open && !isDisabled ? (_jsx(SgMultiSelectDropdown, { dropdownRef: ms.dropdownRef, searchRef: ms.searchRef, ignoreBlurRef: ms.ignoreBlurRef, dropdownStyle: ms.dropdownStyle, searchable: searchable, searchPlaceholder: searchPlaceholder, query: ms.query, setQuery: ms.setQuery, setActiveIndex: ms.setActiveIndex, activeIndex: ms.activeIndex, visibleOptions: ms.visibleOptions, emptyText: emptyText, isSelected: ms.isSelected, resolvedValueLength: ms.resolvedValue.length, maxSelected: maxSelected, toggleOption: ms.toggleOption, onKeyDown: ms.handleListKeyDown })) : null] })] }));
120
+ }
121
+ export function SgMultiSelectChips(props) {
122
+ const { control, name, rules, ...rest } = props;
123
+ if (control && name) {
124
+ return (_jsx(Controller, { name: name, control: control, rules: rules, render: ({ field, fieldState }) => (_jsx(SgMultiSelectChipsBase, { ...rest, error: resolveFieldError(rest.error, fieldState.error?.message), value: field.value ?? [], onChange: (next) => field.onChange(next) })) }));
125
+ }
126
+ return _jsx(SgMultiSelectChipsBase, { ...rest });
127
+ }
@@ -0,0 +1,4 @@
1
+ import type { SgAiHintsV0, SgMetaV0 } from "../ai-meta/types";
2
+ export declare const sgMeta: SgMetaV0;
3
+ export declare const aiHints: SgAiHintsV0;
4
+ //# sourceMappingURL=SgMultiSelectChips.meta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SgMultiSelectChips.meta.d.ts","sourceRoot":"","sources":["../../src/inputs/SgMultiSelectChips.meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE9D,eAAO,MAAM,MAAM,EAAE,QAmCpB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,WAmBrB,CAAC"}