ag-grid-url-sync 0.5.1 → 0.5.2

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 (47) hide show
  1. package/README.md +244 -26
  2. package/dist/core/ag-grid-url-sync.d.ts +6 -0
  3. package/dist/core/ag-grid-url-sync.js.map +1 -1
  4. package/dist/core/codecs.d.ts +28 -0
  5. package/dist/core/codecs.js +39 -0
  6. package/dist/core/codecs.js.map +1 -0
  7. package/dist/core/data-issue-codes.d.ts +3 -0
  8. package/dist/core/data-issue-codes.js +10 -0
  9. package/dist/core/data-issue-codes.js.map +1 -0
  10. package/dist/core/grid-integration.d.ts +11 -1
  11. package/dist/core/grid-integration.js +20 -11
  12. package/dist/core/grid-integration.js.map +1 -1
  13. package/dist/core/grid-url-sync.d.ts +62 -0
  14. package/dist/core/grid-url-sync.js +738 -0
  15. package/dist/core/grid-url-sync.js.map +1 -0
  16. package/dist/core/index.d.ts +2 -0
  17. package/dist/core/index.js +2 -0
  18. package/dist/core/index.js.map +1 -1
  19. package/dist/core/issues.d.ts +2 -2
  20. package/dist/core/issues.js +2 -9
  21. package/dist/core/issues.js.map +1 -1
  22. package/dist/core/own-write.d.ts +138 -0
  23. package/dist/core/own-write.js +133 -0
  24. package/dist/core/own-write.js.map +1 -0
  25. package/dist/core/types.d.ts +151 -4
  26. package/dist/core/types.js +4 -0
  27. package/dist/core/types.js.map +1 -1
  28. package/dist/index.d.ts +2 -0
  29. package/dist/index.js +2 -0
  30. package/dist/index.js.map +1 -1
  31. package/dist/react/index.d.ts +3 -2
  32. package/dist/react/index.js +1 -0
  33. package/dist/react/index.js.map +1 -1
  34. package/dist/react/sync-holder.d.ts +22 -0
  35. package/dist/react/sync-holder.js +68 -0
  36. package/dist/react/sync-holder.js.map +1 -0
  37. package/dist/react/sync-options.d.ts +17 -0
  38. package/dist/react/sync-options.js +22 -0
  39. package/dist/react/sync-options.js.map +1 -0
  40. package/dist/react/types.d.ts +71 -3
  41. package/dist/react/use-ag-grid-url-sync.d.ts +3 -0
  42. package/dist/react/use-ag-grid-url-sync.js +310 -526
  43. package/dist/react/use-ag-grid-url-sync.js.map +1 -1
  44. package/dist/react/use-grid-url-sync.d.ts +14 -0
  45. package/dist/react/use-grid-url-sync.js +206 -0
  46. package/dist/react/use-grid-url-sync.js.map +1 -0
  47. package/package.json +16 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grid-url-sync.js","sourceRoot":"","sources":["../../src/core/grid-url-sync.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACtD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,EACL,aAAa,EACb,cAAc,EACd,WAAW,EACZ,MAAM,uBAAuB,CAAA;AAS9B,OAAO,EACL,aAAa,EACb,QAAQ,EACR,WAAW,EACX,UAAU,EACV,QAAQ,EACT,MAAM,gBAAgB,CAAA;AAMvB,MAAM,SAAS,GAA4B,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;AAC5D,MAAM,QAAQ,GAAwB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;AAGvD,MAAM,CAAC,MAAM,aAAa,GAAwB,MAAM,CAAC,MAAM,CAAC;IAC9D,MAAM,EAAE,MAAM;IACd,GAAG,EAAE,EAAE;IACP,UAAU,EAAE,KAAK;IACjB,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,QAAQ;IACf,YAAY,EAAE,IAAI;CACnB,CAAC,CAAA;AAkBF,SAAS,SAAS;IAChB,OAAO,OAAO,MAAM,KAAK,WAAW,CAAA;AACtC,CAAC;AAGD,SAAS,UAAU,CACjB,CAA0B,EAC1B,CAA0B;IAE1B,OAAO,CACL,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QACrB,CAAC,CAAC,KAAK,CACL,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CACf,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI;YAC7B,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM;YACjC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,OAAO,CACtC,CACF,CAAA;AACH,CAAC;AAaD,MAAM,UAAU,iBAAiB,CAAC,OAA2B;IAC3D,OAAO,UAAU,CAAC,OAAO,CAAC,CAAA;AAC5B,CAAC;AAgBD,MAAM,SAAS,GAAG,IAAI,OAAO,EAAsC,CAAA;AAMnE,MAAM,UAAU,QAAQ,CAAC,IAAiB;IACxC,OAAO,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,IAAI,CAAA;AACxC,CAAC;AA8BD,MAAM,UAAU,UAAU,CACxB,OAA2B,EAC3B,KAAK,GAAc,EAAE;IAErB,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,CAAA;IACvC,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,IAAI,UAAU,EAAE,CAAC,CAAA;IACzD,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,cAAc,CAAC,cAAc,CAAA;IAE9E,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,KAAK,EAAE,cAAc,EAAE,CAAC,CAAA;IAEzD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAc,CAAA;IACvC,IAAI,MAAM,GAAe,QAAQ,CAAA;IACjC,IAAI,KAAK,GAAgB,EAAE,CAAA;IAC3B,IAAI,GAAG,GAAG,EAAE,CAAA;IACZ,IAAI,WAAW,GAA4B,SAAS,CAAA;IACpD,IAAI,UAAU,GAA4B,SAAS,CAAA;IACnD,IAAI,WAAW,GAA4B,SAAS,CAAA;IACpD,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,IAAI,MAAM,CAAA;IAG7C,IAAI,GAAG,GAAoB,IAAI,CAAA;IAG/B,IAAI,SAAS,GAAgB,MAAM,CAAA;IACnC,MAAM,iBAAiB,GAAG,OAAO,CAAC,QAAQ,IAAI,WAAW,KAAK,MAAM,CAAA;IAEpE,IAAI,MAAM,GAAsB,IAAI,CAAA;IACpC,IAAI,QAAQ,GAAwB,QAAQ,CAAA;IAC5C,IAAI,QAAQ,GAAwB,aAAa,CAAA;IAOjD,SAAS,IAAI,CAAC,KAAmB,EAAE,MAAmB;QACpD,IAAI,CAAC;YACH,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;QAC7B,CAAC;IACH,CAAC;IAED,SAAS,SAAS,CAAC,MAAmB,EAAE,IAAe;QACrD,MAAM,MAAM,GAAmB,EAAE,CAAA;QAEjC,OAAO;YACL,MAAM;YACN,MAAM;YACN,OAAO,EAAE;gBACP,GAAG,KAAK;gBACR,cAAc;gBACd,YAAY,EAAE,KAAK,CAAC,EAAE;oBAEpB,IAAI,CAAC,CAAC,KAAK,YAAY,YAAY,CAAC;wBAAE,OAAM;oBAE5C,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;oBAElB,IAAI,IAAI,KAAK,SAAS;wBAAE,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;gBAC7C,CAAC;gBACD,YAAY,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK;aACzE;SACF,CAAA;IACH,CAAC;IAGD,SAAS,IAAI,CAAC,IAAU,EAAE,KAAc,EAAE,IAAe;QACvD,eAAe,CAAC,KAAK,CAAC,CAAA;QACtB,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAA;IACjD,CAAC;IAGD,SAAS,YAAY;QACnB,IAAI,CAAC,KAAK;YAAE,OAAM;QAElB,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,EAAE,CAAA;QAE9B,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC;YAAE,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAChE,CAAC;IAGD,SAAS,QAAQ;QACf,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QAEtC,IAAI,CACF,IAAI,EACJ,IAAI,YAAY,CAAC,uBAAuB,EAAE,SAAS,EAAE;YACnD,IAAI,EAAE,WAAW;SAClB,CAAC,EACF,WAAW,CACZ,CAAA;IACH,CAAC;IAGD,SAAS,OAAO;QACd,MAAM,IAAI,GAAG,CAAC,GAAG,WAAW,EAAE,GAAG,UAAU,EAAE,GAAG,WAAW,CAAC,CAAA;QAC5D,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAA;QAChD,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QAClD,MAAM,YAAY,GAAG,MAAM,EAAE,EAAE,IAAI,IAAI,CAAA;QAEvC,IACE,QAAQ,CAAC,MAAM,KAAK,MAAM;YAC1B,QAAQ,CAAC,GAAG,KAAK,GAAG;YACpB,QAAQ,CAAC,UAAU,KAAK,UAAU;YAClC,QAAQ,CAAC,KAAK,KAAK,QAAQ;YAC3B,QAAQ,CAAC,YAAY,KAAK,YAAY;YACtC,QAAQ,EACR,CAAC;YACD,OAAM;QACR,CAAC;QAID,MAAM,MAAM,GAAG,QAAQ;YACrB,CAAC,CAAC,QAAQ,CAAC,MAAM;YACjB,CAAC,CAAC,IAAI,CAAC,MAAM;gBACX,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;gBACrB,CAAC,CAAC,SAAS,CAAA;QAEf,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;YACvB,MAAM;YACN,GAAG;YACH,UAAU;YACV,MAAM;YACN,KAAK,EAAE,QAAQ;YACf,YAAY;SACb,CAAC,CAAA;QAKF,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7C,IAAI,CAAC;gBACH,QAAQ,EAAE,CAAA;YACZ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;YAC7B,CAAC;QACH,CAAC;IACH,CAAC;IAOD,SAAS,QAAQ;QACf,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;QAEzC,IAAI,CAAC;YACH,KAAK,GAAG,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;QAC3C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;QACjC,CAAC;QAED,GAAG,GAAG,SAAS,EAAE;YACf,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC;YACxD,CAAC,CAAC,EAAE,CAAA;QAEN,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAA;QAE/C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAAE,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QACtD,CAAC;QAED,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAA;IAC3D,CAAC;IAMD,SAAS,KAAK,CACZ,MAAc,EACd,MAAmB,EACnB,IAAe,EACf,QAAiB;QAEjB,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QACpC,IAAI,OAAgC,CAAA;QAEpC,IAAI,CAAC;YACH,OAAO,GAAG,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,aAAa,CAAC,CAAA;QAClC,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAA;QAC3E,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;QAE3C,IAAI,MAAM,GAAG,KAAK,CAAA;QAElB,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;YACvB,IAAI,KAA8B,CAAA;YAElC,IAAI,CAAC;gBACH,KAAK,GAAG,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;YACjD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,GAAG,GAAG,IAAI,CAAA;gBACV,MAAM,GAAG,IAAI,CAAA;gBACb,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;YACjC,CAAC;YAED,IAAI,KAAK;gBAAE,MAAM,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QACnD,CAAC;QAED,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAA;QAC1D,QAAQ,EAAE,CAAA;QAEV,IAAI,OAAO,IAAI,OAAO,IAAI,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;YAClE,gBAAgB,CAAC,KAAK,CAAC,CAAA;QACzB,CAAC;QAED,OAAO,EAAE,CAAA;QAET,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAA;IAChC,CAAC;IAMD,SAAS,QAAQ,CAAC,KAAkB,EAAE,IAAe,EAAE,IAAU;QAG/D,GAAG,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QAC3B,SAAS,GAAG,IAAI,CAAC,MAAM,CAAA;QAIvB,IAAI,CAAC;YACH,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;YAEzB,OAAO,IAAI,CAAA;QACb,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,GAAG,GAAG,IAAI,CAAA;YACV,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;YAE/B,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;IAOD,SAAS,UAAU,CACjB,KAAkB,EAClB,IAAoB,EACpB,IAAU;QAEV,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;QAE1B,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC;YAAE,OAAO,KAAK,CAAA;QAE9C,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;QACpC,MAAM,KAAK,GAAG,SAAS,EAAE,CAAA;QAEzB,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE;YAC/B,IAAI;YACJ,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;YACxC,MAAM;YACN,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI;YAC3C,QAAQ;YACR,WAAW,EAAE,QAAQ,CAAC,QAAQ,CAAC;YAC/B,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC;YAChC,qBAAqB,EAAE,aAAa,CAAC,QAAQ,CAAC;SAC/C,CAAC,CAAA;QAEF,GAAG,GAAG,OAAO,CAAC,GAAG,CAAA;QACjB,QAAQ,EAAE,CAAA;QAEV,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,gBAAgB,CAAC,IAAI,CAAC,CAAA;YACtB,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;QACjC,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAGD,SAAS,SAAS;QAChB,IAAI,CAAC;YACH,OAAO,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,CAAA;QAClE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;IAGD,SAAS,SAAS;QAChB,IAAI,CAAC;YAEH,OAAO,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,CAAA;QACnC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC;IAGD,SAAS,OAAO,CAAC,IAAe;QAC9B,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;YACnB,MAAM,IAAI,GAAG,SAAS,EAAE,CAAA;YAExB,OAAO,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QACvC,CAAC;QAED,MAAM,IAAI,GAAG,SAAS,EAAE,CAAA;QAExB,OAAO,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACrC,CAAC;IAMD,SAAS,QAAQ,CAAC,IAAe;QAC/B,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;QAEzB,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO,IAAI,CAAA;QAE7B,IAAI,IAAI,KAAK,KAAK;YAAE,OAAO,EAAE,GAAG,EAAE,CAAA;QAElC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,CAAA;IACnD,CAAC;IAGD,SAAS,MAAM,CAAC,KAAc;QAC5B,OAAO,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;IACnC,CAAC;IAGD,SAAS,OAAO,CAAC,KAAc;QAC7B,OAAO,aAAa,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,CAAA;IACnE,CAAC;IAGD,SAAS,aAAa,CAAC,KAAc;QACnC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAA;QAEtC,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACpD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;YAE9D,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC;gBAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;QAC3E,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAMD,SAAS,WAAW,CAAC,EAAU,EAAE,KAAkB;QACjD,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;QACpC,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;QAEjC,OAAO;YACL,EAAE;YACF,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,QAAQ,CAAC,QAAQ,CAAC;YACvB,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;SACrE,CAAA;IACH,CAAC;IASD,SAAS,WAAW,CAClB,IAAgB,EAChB,IAAiB,EACjB,GAAY;QAEZ,OAAO,CACL,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG;YAC3B,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,CAC9D,CAAA;IACH,CAAC;IAGD,SAAS,KAAK,CAAC,KAAyB;QACtC,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,KAAK,CAAA;QAEhC,MAAM,IAAI,GAAG,SAAS,EAAE,CAAA;QAExB,OAAO,IAAI,KAAK,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC5D,CAAC;IAWD,SAAS,gBAAgB,CACvB,OAAyB,EACzB,IAAI,GAAS,MAAM,EACnB,GAAG,GAAG,IAAI;QAEV,IAAI,CAAC,MAAM;YAAE,OAAM;QAEnB,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAChD,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,CAAA;YAE1C,OAAM;QACR,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,SAAS,EAAE,CAAA;YAExB,IAAI,IAAI,KAAK,IAAI,IAAI,WAAW,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;gBACpD,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;gBAEnC,OAAM;YACR,CAAC;YAED,IAAI,IAAI,KAAK,MAAM;gBAAE,OAAM;QAC7B,CAAC;QAED,IAAI,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,OAAM;QAEpD,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,CAAA;QACrB,MAAM,GAAG,IAAI,CAAA;QACb,YAAY,CAAC,EAAE,EAAE,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;IAC/C,CAAC;IAMD,SAAS,YAAY,CAAC,EAAU,EAAE,IAAU;QAC1C,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE;gBAAE,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAA;QACtE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,sBAAsB,CAAC,CAAA;QAC3C,CAAC;IACH,CAAC;IAGD,SAAS,cAAc,CAAC,EAAiB,EAAE,IAAU;QACnD,IAAI,CAAC;YACH,KAAK,EAAE,mBAAmB,CAAC,EAAE,CAAC,CAAA;QAChC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,sBAAsB,CAAC,CAAA;QAC3C,CAAC;IACH,CAAC;IAOD,SAAS,cAAc,CACrB,OAAoB,EACpB,MAA0B,EAC1B,MAAe;QAEf,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAA;QAEtC,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE;YAC/B,IAAI,EAAE,KAAK;YACX,MAAM;YACN,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC;YAC3B,MAAM;YACN,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI;YAC7C,QAAQ;YACR,WAAW,EAAE,UAAU,CAAC,QAAQ,CAAC;SAClC,CAAC,CAAA;QAEF,GAAG,GAAG,OAAO,CAAC,GAAG,CAAA;QAEjB,OAAO,OAAO,CAAC,MAAM,CAAA;IACvB,CAAC;IAGD,SAAS,YAAY,CAAC,OAAgB;QAEpC,IAAI,CAAC,CAAC,WAAW,IAAI,GAAG,CAAC;YAAE,OAAO,OAAO,CAAA;QAEzC,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE;YACzC,IAAI,CAAC;gBACH,OAAO,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,IAAI,CAAA;YACtC,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,IAAI,CAAA;YACb,CAAC;QACH,CAAC,CAAC,CACH,CAAA;IACH,CAAC;IAQD,SAAS,QAAQ,CAAC,MAA0B;QAC1C,MAAM,SAAS,GAAG,GAAG,KAAK,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,KAAK,CAAA;QACpD,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;QAGpD,MAAM,YAAY,GAAG,SAAS,IAAI,GAAG,EAAE,KAAK,KAAK,SAAS,CAAA;QAE1D,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,EAAE;YAChC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;YACnD,IAAI;YACJ,MAAM;YACN,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;YAC/C,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;SAC9D,CAAC,CAAA;QAEF,GAAG,GAAG,MAAM,CAAC,GAAG,CAAA;QAEhB,OAAO,MAAM,CAAA;IACf,CAAC;IAOD,SAAS,YAAY,CAAC,MAAc;QAClC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,eAAe,CAC7B,MAAM,EACN,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,OAAO,CACpC,CAAA;YAED,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAA;QACxC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;IAGD,SAAS,eAAe,CAAC,MAAc;QACrC,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QAEpD,IAAI,CAAC;YACH,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CACzD,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,GAAG,KAAK,KAAK,CAAC,YAAY,CAC5D,CAAA;QACH,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;IAMD,SAAS,UAAU,CAAC,OAAoB;QACtC,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAA;QAE3E,OAAO,WAAW,CAChB,qBAAqB,EACrB,MAAM,EACN,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,OAAO,CACrC,CAAA;IACH,CAAC;IAGD,SAAS,KAAK,CAAC,MAAmB,EAAE,OAAgB;QAClD,IAAI,CAAC;YACH,IAAI,WAAW,YAAY,QAAQ,EAAE,CAAC;gBACpC,WAAW,CAAC,GAAG,CAAC,CAAA;YAClB,CAAC;iBAAM,IAAI,OAAO,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAChD,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,CAAC,CAAA;YAC5D,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,CAAC,CAAA;YACzD,CAAC;YAED,WAAW,GAAG,SAAS,CAAA;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAA;YACpD,WAAW,GAAG,CAAC,KAAK,CAAC,CAAA;YACrB,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QACrB,CAAC;IACH,CAAC;IAGD,SAAS,WAAW,CAAC,MAAmB,EAAE,OAAgB;QACxD,IAAI,WAAW,KAAK,MAAM,IAAI,CAAC,SAAS,EAAE;YAAE,OAAM;QAElD,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;QAE7B,MAAM,OAAO,GAAG,eAAe,CAC7B,MAAM,CAAC,QAAQ,CAAC,IAAI,EACpB,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,OAAO,CACrC,CAAA;QAED,IAAI,GAAG,KAAK,UAAU,CAAC,OAAO,CAAC;YAAE,OAAM;QAEvC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACxB,CAAC;IAOD,SAAS,YAAY,CAAC,IAAe,EAAE,MAAmB;QACxD,IAAI,IAAI,KAAK,KAAK;YAAE,WAAW,CAAC,MAAM,EAAE,IAAI,KAAK,SAAS,CAAC,CAAA;IAC7D,CAAC;IAMD,SAAS,SAAS,CAAC,MAAc,EAAE,IAAc;QAC/C,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,eAAe,CAC7B,MAAM,EACN,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,OAAO,CACpC,CAAA;YAED,OAAO,UAAU,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC;IAMD,SAAS,OAAO,CAAC,IAAc;QAG7B,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;QAE/C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC;YACzE,MAAM,GAAG,IAAI,CAAA;QACf,CAAC;QAED,OAAO,EAAE,CAAA;IACX,CAAC;IAED,SAAS,eAAe,CAAC,KAA2B;QAClD,IAAI,MAAM,KAAK,QAAQ;YAAE,OAAM;QAI/B,IAAI,GAAG,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YAC7B,GAAG,GAAG,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,CAAA;YAEpE,OAAM;QACR,CAAC;QAED,QAAQ,EAAE,CAAA;QAEV,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QAItC,gBAAgB,CACd,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAC/C,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EACrE,KAAK,EAAE,MAAM,KAAK,KAAK,CACxB,CAAA;QAED,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ;YAAE,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QAExD,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;YACvD,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;QACvC,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,IAAI,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;YAE5C,GAAG,GAAG,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAA;YAC/C,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;QACnC,CAAC;QAED,OAAO,EAAE,CAAA;IACX,CAAC;IASD,SAAS,iBAAiB,CACxB,MAAuB;QAEvB,OAAO,CACL,MAAM,EAAE,KAAK,KAAK,SAAS;YAC3B,MAAM,CAAC,IAAI,KAAK,KAAK;YACrB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC;YACjC,MAAM,CAAC,cAAc,KAAK,SAAS;YACnC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC,cAAc,CACpD,CAAA;IACH,CAAC;IAGD,SAAS,UAAU;QACjB,IAAI,MAAM,KAAK,QAAQ;YAAE,OAAM;QAE/B,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;IACrD,CAAC;IAED,SAAS,OAAO;QACd,IAAI,MAAM,KAAK,WAAW;YAAE,OAAM;QAElC,MAAM,GAAG,WAAW,CAAA;QAEpB,IAAI,iBAAiB,IAAI,SAAS,EAAE,EAAE,CAAC;YACrC,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;QACpD,CAAC;QAED,GAAG,CAAC,mBAAmB,CAAC,eAAe,EAAE,eAAe,CAAC,CAAA;QACzD,GAAG,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAA;QACpD,OAAO,EAAE,CAAA;IACX,CAAC;IAED,MAAM,IAAI,GAAgB;QACxB,WAAW,EAAE,GAAG,EAAE,CAAC,QAAQ;QAE3B,SAAS,CAAC,QAAQ;YAChB,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YAEvB,OAAO,GAAG,EAAE;gBACV,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YAC5B,CAAC,CAAA;QACH,CAAC;QAED,QAAQ,CAAC,MAAM;YACb,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACxB,QAAQ,EAAE,CAAA;gBAEV,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;YAC9B,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;YAEvE,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;YAEpD,OAAO,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;QAC3C,CAAC;QAED,YAAY,CAAC,OAAO;YAClB,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACxB,QAAQ,EAAE,CAAA;gBAEV,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;YAC9B,CAAC;YAED,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;YACtC,IAAI,KAA8B,CAAA;YAElC,IAAI,CAAC;gBACH,KAAK,GAAG,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;YACjD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;YACjC,CAAC;YAED,IAAI,KAAK;gBAAE,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;YAEzC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAA;YAC1D,OAAO,EAAE,CAAA;YAET,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAA;QAChC,CAAC;QAED,MAAM,CAAC,OAAO;YACZ,MAAM,IAAI,GAAG,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;YAExE,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,EAAE,CAAA;YAEjC,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;YACtC,IAAI,OAAO,GAAG,KAAK,CAAA;YAEnB,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACxB,IAAI,CAAC;oBACH,OAAO,GAAG,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;gBAC7C,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;gBACjC,CAAC;YACH,CAAC;YAED,IAAI,CAAC;gBACH,OAAO,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;YACjD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,aAAa,CAAC,CAAA;gBAEhC,OAAO,EAAE,CAAA;YACX,CAAC;QACH,CAAC;QAED,QAAQ,CAAC,IAAI;YACX,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAA;YAEvB,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACxB,QAAQ,EAAE,CAAA;gBAEV,OAAO,IAAI,CAAA;YACb,CAAC;YAED,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;YACtC,IAAI,KAAkB,CAAA;YAEtB,IAAI,CAAC;gBAEH,KAAK,GAAG,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,CAAA;YACpC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAA;gBAE/B,OAAO,IAAI,CAAA;YACb,CAAC;YAED,IAAI,IAAc,CAAA;YAElB,IAAI,CAAC;gBACH,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;YACpC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,sBAAsB,CAAC,CAAA;gBAEzC,OAAO,IAAI,CAAA;YACb,CAAC;YAKD,IACE,GAAG,EAAE,KAAK,KAAK,SAAS;gBACxB,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,EAC/C,CAAC;gBACD,GAAG,GAAG,IAAI,CAAA;YACZ,CAAC;YAED,MAAM,GAAG,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,CAAA;YAClD,YAAY,EAAE,CAAA;YACd,OAAO,EAAE,CAAA;YAET,OAAO,IAAI,CAAA;QACb,CAAC;QAED,QAAQ,CAAC,EAAE;YACT,IAAI,CAAC,KAAK;gBAAE,OAAM;YAElB,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACxB,QAAQ,EAAE,CAAA;gBAEV,OAAM;YACR,CAAC;YAED,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;YAGtC,MAAM,MAAM,GAAG,EAAE,IAAI,IAAI,CAAA;YAEzB,MAAM,IAAI,GACR,MAAM,KAAK,IAAI;gBACb,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,MAAM,CAAC,CAAA;YAElE,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBAEvB,YAAY,EAAE,CAAA;gBACd,OAAO,EAAE,CAAA;gBACT,IAAI,CACF,IAAI,EACJ,IAAI,YAAY,CAAC,0BAA0B,MAAM,GAAG,EAAE,SAAS,EAAE;oBAC/D,IAAI,EAAE,gBAAgB;iBACvB,CAAC,EACF,gBAAgB,CACjB,CAAA;gBAED,OAAM;YACR,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,CAAA;YAIvB,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YAE7D,IAAI,KAAK,GAAG,KAAK,CAAA;YAEjB,IAAI,CAAC;gBACH,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,WAAW,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;YAC3D,CAAC;oBAAS,CAAC;gBAET,IAAI,CAAC,KAAK;oBAAE,MAAM,GAAG,QAAQ,CAAA;YAC/B,CAAC;YAED,IAAI,CAAC,KAAK;gBAAE,OAAM;YAGlB,WAAW,GAAG,SAAS,CAAA;YACvB,OAAO,EAAE,CAAA;YAET,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,IAAI,CAAC,KAAK,MAAM;gBAAE,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QACnE,CAAC;QAED,UAAU,CAAC,EAAE;YACX,IAAI,CAAC,KAAK;gBAAE,OAAM;YAElB,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;YAEtC,IAAI,CAAC;gBACH,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;YACtB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,sBAAsB,CAAC,CAAA;gBAEzC,OAAM;YACR,CAAC;YAID,MAAM,MAAM,GACV,MAAM,KAAK,QAAQ,IAAI,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YAEjE,IAAI,MAAM,EAAE,EAAE,KAAK,EAAE;gBAAE,MAAM,GAAG,IAAI,CAAA;YAEpC,YAAY,EAAE,CAAA;YAEd,IAAI,CAAC;gBACH,IAAI,MAAM;oBAAE,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;YAC1C,CAAC;oBAAS,CAAC;gBACT,OAAO,EAAE,CAAA;YACX,CAAC;QACH,CAAC;QAED,OAAO;KACR,CAAA;IAED,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,GAAG,WAAW,CAAA;QACpB,IAAI,CACF,IAAI,YAAY,CAAC,+BAA+B,EAAE,SAAS,EAAE;YAC3D,IAAI,EAAE,WAAW;SAClB,CAAC,EACF,KAAK,CACN,CAAA;QACD,OAAO,EAAE,CAAA;QAET,OAAO,IAAI,CAAA;IACb,CAAC;IAED,YAAY,EAAE,CAAA;IAKd,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAA;IAE7B,IAAI,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QACxC,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;QACrD,SAAS,GAAG,MAAM,CAAC,MAAM,CAAA;IAC3B,CAAC;IAED,IAAI,MAAM,IAAI,KAAK,CAAC,eAAe;QAAE,WAAW,GAAG,MAAM,CAAC,WAAW,CAAA;IAErE,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;QACzB,GAAG,EAAE,GAAG,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG;QAC1C,MAAM,EAAE,SAAS;QACjB,IAAI;QACJ,WAAW;KACZ,CAAC,CAAC,CAAA;IAKH,MAAM,OAAO,GAAG,KAAK,EAAE,eAAe,EAAE,CAAA;IAExC,MAAM,MAAM,GAAG,OAAO;QACpB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,OAAO,CAAC;QAC5C,CAAC,CAAC,SAAS,CAAA;IAEb,GAAG,CAAC,gBAAgB,CAAC,eAAe,EAAE,eAAe,CAAC,CAAA;IACtD,GAAG,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAA;IAEjD,IAAI,iBAAiB,IAAI,SAAS,EAAE,EAAE,CAAC;QACrC,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;IACjD,CAAC;IAED,IAAI,OAAO,CAAC,gBAAgB,KAAK,KAAK,IAAI,SAAS,EAAE,EAAE,CAAC;QACtD,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAA;QACjC,MAAM,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;QAEvC,MAAM,MAAM,GAAG,SAAS,IAAI,YAAY,CAAC,IAAI,CAAC,CAAA;QAI9C,IAAI,MAAM,IAAI,CAAC,CAAC,MAAM,IAAI,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;YACnD,OAAO,CAAC,MAAM,CAAC,CAAA;QACjB,CAAC;aAAM,IAAI,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;YAG5B,QAAQ,EAAE,CAAA;YACV,OAAO,EAAE,CAAA;QACX,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;YAIlC,IAAI,MAAM,IAAI,OAAO;gBAAE,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAA;QACzE,CAAC;QAKD,IACE,CAAC,MAAM;YACP,CAAC,SAAS;YACV,WAAW,KAAK,MAAM;YACtB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAC7B,CAAC;YACD,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;YAClB,OAAO,EAAE,CAAA;QACX,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,IAAI,CAAA;QAE3C,MAAM,IAAI,GACR,UAAU,KAAK,IAAI;YACjB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,UAAU,CAAC,CAAA;QAEnD,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,CAAC,IAAI,CAAC,CAAA;QACf,CAAC;aAAM,CAAC;YACN,QAAQ,EAAE,CAAA;YACV,OAAO,EAAE,CAAA;QACX,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAsBD,SAAS,SAAS,CAAC,CAAsB,EAAE,CAAsB;IAC/D,OAAO,CACL,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QACrB,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YACtB,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAA;YAEtB,OAAO,CACL,KAAK,KAAK,SAAS;gBACnB,IAAI,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE;gBACpB,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;gBACxB,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;gBAClC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CACvE,CAAA;QACH,CAAC,CAAC,CACH,CAAA;AACH,CAAC;AAGD,SAAS,UAAU,CAAC,CAAC,CAAC,CAAoB,EAAE,CAAC,CAAC,CAAoB;IAChE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACnC,CAAC;AAGD,SAAS,QAAQ,CAAC,KAAmB;IACnC,OAAO,GAAG,KAAK,CAAC,IAAI,SAAS,KAAK,CAAC,MAAM,IAAI,EAAE,SAAS,KAAK,CAAC,OAAO,EAAE,CAAA;AACzE,CAAC;AAMD,SAAS,WAAW,CAAC,KAAY;IAC/B,IAAI,aAAa,IAAI,UAAU,EAAE,CAAC;QAChC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QAE7B,OAAM;IACR,CAAC;IAED,UAAU,CAAC,GAAG,EAAE;QACd,MAAM,KAAK,CAAA;IACb,CAAC,CAAC,CAAA;AACJ,CAAC;AAGD,SAAS,WAAW,CAAC,GAAY;IAC/B,OAAO,aAAa,IAAI,GAAG,IAAI,GAAG,CAAC,WAAW,EAAE,CAAA;AAClD,CAAC"}
@@ -1,4 +1,6 @@
1
1
  export { AGGridUrlSync, createUrlSync } from './ag-grid-url-sync.js';
2
+ export { createGridUrlSync, IDLE_SNAPSHOT } from './grid-url-sync.js';
3
+ export { individual, grouped } from './codecs.js';
2
4
  export * from './types.js';
3
5
  export { validateFilterValue } from './validation.js';
4
6
  export { DEFAULT_CONFIG } from './options.js';
@@ -1,4 +1,6 @@
1
1
  export { AGGridUrlSync, createUrlSync } from './ag-grid-url-sync.js';
2
+ export { createGridUrlSync, IDLE_SNAPSHOT } from './grid-url-sync.js';
3
+ export { individual, grouped } from './codecs.js';
2
4
  export * from './types.js';
3
5
  export { validateFilterValue } from './validation.js';
4
6
  export { DEFAULT_CONFIG } from './options.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAEpE,cAAc,YAAY,CAAA;AAG1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAG7C,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAGnE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAGlE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAGxE,cAAc,0BAA0B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAGpE,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAErE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAEjD,cAAc,YAAY,CAAA;AAG1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAG7C,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AAGnE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAGlE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAGxE,cAAc,0BAA0B,CAAA"}
@@ -1,7 +1,7 @@
1
1
  import type { IssueCode, ResolvedOptions } from './types.js';
2
2
  import { URLSyncError } from './types.js';
3
- /** The codes for a filter that is dropped or not valid */
4
- export declare const DATA_ISSUE_CODES: ReadonlySet<IssueCode>;
3
+ import { DATA_ISSUE_CODES } from './data-issue-codes.js';
4
+ export { DATA_ISSUE_CODES };
5
5
  /** Whether the error is a data issue: a filter that is dropped or not valid */
6
6
  export declare function isDataIssue(error: unknown): error is URLSyncError;
7
7
  /**
@@ -1,15 +1,8 @@
1
1
  import { URLSyncError } from './types.js';
2
+ import { DATA_ISSUE_CODES } from './data-issue-codes.js';
2
3
  import { attachColumn } from './issue-columns.js';
3
4
  import { toError } from './to-error.js';
4
- export const DATA_ISSUE_CODES = new Set([
5
- 'INVALID_PARAM',
6
- 'INVALID_NUMBER',
7
- 'INVALID_DATE',
8
- 'VALUE_TOO_LONG',
9
- 'INVALID_GROUPED',
10
- 'TYPE_MISMATCH',
11
- 'INVALID_URL'
12
- ]);
5
+ export { DATA_ISSUE_CODES };
13
6
  export function isDataIssue(error) {
14
7
  return error instanceof URLSyncError && DATA_ISSUE_CODES.has(error.code);
15
8
  }
@@ -1 +1 @@
1
- {"version":3,"file":"issues.js","sourceRoot":"","sources":["../../src/core/issues.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAOvC,MAAM,CAAC,MAAM,gBAAgB,GAA2B,IAAI,GAAG,CAAY;IACzE,eAAe;IACf,gBAAgB;IAChB,cAAc;IACd,gBAAgB;IAChB,iBAAiB;IACjB,eAAe;IACf,aAAa;CACd,CAAC,CAAA;AAGF,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,OAAO,KAAK,YAAY,YAAY,IAAI,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;AAC1E,CAAC;AAOD,MAAM,UAAU,OAAO,CACrB,KAAc,EACd,IAAe,EACf,MAAe;IAEf,IAAI,KAAK,YAAY,YAAY,EAAE,CAAC;QAClC,IAAI,MAAM,KAAK,SAAS;YAAE,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QAErD,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;IAE5B,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;AACjE,CAAC;AAYD,MAAM,UAAU,aAAa,CAAC,OAAwB;IACpD,MAAM,MAAM,GAAmB,EAAE,CAAA;IAEjC,OAAO;QACL,MAAM;QACN,OAAO,EAAE;YACP,GAAG,OAAO;YACV,YAAY,EAAE,KAAK,CAAC,EAAE;gBAEpB,IAAI,KAAK,YAAY,YAAY;oBAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBACrD,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;YAC7B,CAAC;SACF;KACF,CAAA;AACH,CAAC;AAGD,MAAM,YAAY,GAAG,IAAI,OAAO,EAAS,CAAA;AAGzC,MAAM,UAAU,WAAW,CACzB,YAA6C,EAC7C,KAAmB;IAEnB,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,KAAK;QAAE,OAAO,KAAK,CAAA;IAEtE,IAAI,YAAY,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAEtC,OAAO,YAAY,CAAC,KAAK,CAAC,CAAA;AAC5B,CAAC;AAMD,MAAM,UAAU,WAAW,CACzB,OAAwB,EACxB,KAAmB;IAEnB,IAAI,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC;QAC7C,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAEvB,MAAM,KAAK,CAAA;IACb,CAAC;IAED,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;AAC7B,CAAC;AAMD,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,IAAI,KAAK,YAAY,KAAK,IAAI,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,MAAM,KAAK,CAAA;AACpE,CAAC"}
1
+ {"version":3,"file":"issues.js","sourceRoot":"","sources":["../../src/core/issues.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAOvC,OAAO,EAAE,gBAAgB,EAAE,CAAA;AAG3B,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,OAAO,KAAK,YAAY,YAAY,IAAI,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;AAC1E,CAAC;AAOD,MAAM,UAAU,OAAO,CACrB,KAAc,EACd,IAAe,EACf,MAAe;IAEf,IAAI,KAAK,YAAY,YAAY,EAAE,CAAC;QAClC,IAAI,MAAM,KAAK,SAAS;YAAE,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;QAErD,OAAO,KAAK,CAAA;IACd,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;IAE5B,OAAO,IAAI,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;AACjE,CAAC;AAYD,MAAM,UAAU,aAAa,CAAC,OAAwB;IACpD,MAAM,MAAM,GAAmB,EAAE,CAAA;IAEjC,OAAO;QACL,MAAM;QACN,OAAO,EAAE;YACP,GAAG,OAAO;YACV,YAAY,EAAE,KAAK,CAAC,EAAE;gBAEpB,IAAI,KAAK,YAAY,YAAY;oBAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBACrD,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;YAC7B,CAAC;SACF;KACF,CAAA;AACH,CAAC;AAGD,MAAM,YAAY,GAAG,IAAI,OAAO,EAAS,CAAA;AAGzC,MAAM,UAAU,WAAW,CACzB,YAA6C,EAC7C,KAAmB;IAEnB,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,KAAK;QAAE,OAAO,KAAK,CAAA;IAEtE,IAAI,YAAY,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAEtC,OAAO,YAAY,CAAC,KAAK,CAAC,CAAA;AAC5B,CAAC;AAMD,MAAM,UAAU,WAAW,CACzB,OAAwB,EACxB,KAAmB;IAEnB,IAAI,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC;QAC7C,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QAEvB,MAAM,KAAK,CAAA;IACb,CAAC;IAED,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;AAC7B,CAAC;AAMD,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,IAAI,KAAK,YAAY,KAAK,IAAI,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,MAAM,KAAK,CAAA;AACpE,CAAC"}
@@ -0,0 +1,138 @@
1
+ import type { FilterModel } from 'ag-grid-community';
2
+ import type { FilterState } from './types.js';
3
+ /** What a write is. It decides the key form and the history write at the landing. */
4
+ export type WriteKind = 'url' | 'view' | 'restore' | 'app';
5
+ /** Per-column values: a FilterState ('url') or an AG Grid model (the others) */
6
+ export type Columns = Readonly<FilterState> | Readonly<FilterModel>;
7
+ /**
8
+ * The sync's own latest grid write. It is set before setFilterModel, because
9
+ * AG Grid can send filterChanged inside the call, after it, or one tick later.
10
+ * - `writing`: inside the call, so an event is the write landing.
11
+ * - `pending`: the grid did not take the write yet (deferred). `before` is
12
+ * the grid's columns before the write, and `accepted` the part of the write
13
+ * that the grid has columns for. A model write also has `acceptedUrlKey`:
14
+ * the URL form of `accepted`, because the grid can rebuild a model.
15
+ * - `landed`: the grid shows the write with this key. An event with the same
16
+ * key is the write's echo: one write can cause more than one event.
17
+ *
18
+ * `waits`: the URL forms of earlier writes that were still pending when this
19
+ * write started, oldest first. A deferred grid lands them first and in
20
+ * order, so their landing events are echoes of this write, not changes.
21
+ * Each such event takes its write (and the ones before it) off the queue.
22
+ */
23
+ export type OwnWrite = {
24
+ readonly phase: 'writing';
25
+ readonly kind: WriteKind;
26
+ readonly waits?: readonly string[] | undefined;
27
+ } | {
28
+ readonly phase: 'pending';
29
+ readonly kind: WriteKind;
30
+ readonly before: Columns | null;
31
+ readonly beforeKey: string | null;
32
+ readonly accepted: Columns;
33
+ readonly acceptedKey: string;
34
+ readonly acceptedUrlKey?: string | undefined;
35
+ readonly acceptedColumnUrlKeys?: ColumnUrlKeys | undefined;
36
+ readonly waits?: readonly string[] | undefined;
37
+ } | {
38
+ readonly phase: 'landed';
39
+ readonly kind: WriteKind;
40
+ readonly key: string;
41
+ };
42
+ /**
43
+ * The URL form of each column of a model, by column id. A column that the
44
+ * URL cannot hold (a set filter) has no entry.
45
+ */
46
+ export type ColumnUrlKeys = ReadonlyMap<string, string>;
47
+ /** The URL form of each column of the grid now and of the write */
48
+ export interface ColumnUrlForms {
49
+ readonly live: ColumnUrlKeys;
50
+ readonly written: ColumnUrlKeys;
51
+ }
52
+ export interface AfterCall {
53
+ readonly kind: WriteKind;
54
+ /** The grid threw */
55
+ readonly failed: boolean;
56
+ /** The key of the grid after the call. Null: the grid could not be read. */
57
+ readonly afterKey: string | null;
58
+ readonly before: Columns | null;
59
+ readonly beforeKey: string | null;
60
+ readonly accepted: Columns;
61
+ readonly acceptedKey: string;
62
+ /** A model write: the URL form of `accepted` */
63
+ readonly acceptedUrlKey?: string | undefined;
64
+ /** A model write: the URL form of each column of `accepted` */
65
+ readonly acceptedColumnUrlKeys?: ColumnUrlKeys | undefined;
66
+ }
67
+ export interface Settled {
68
+ readonly own: OwnWrite | null;
69
+ readonly landed: boolean;
70
+ }
71
+ export interface Classified {
72
+ readonly own: OwnWrite | null;
73
+ readonly kind: EventKind;
74
+ readonly write: WriteKind | null;
75
+ /**
76
+ * An echo in which the grid lands an earlier write from `waits`: the grid
77
+ * passes through the state of that write
78
+ */
79
+ readonly queued?: boolean | undefined;
80
+ }
81
+ /**
82
+ * The record of a new write, set before setFilterModel. A write that starts
83
+ * while another write is pending keeps the URL form of that write (and of
84
+ * the writes that it waited for) in `waits`.
85
+ */
86
+ export declare function startWrite(own: OwnWrite | null, kind: WriteKind): OwnWrite;
87
+ /** After the sync's setFilterModel returns. `landed`: the write is on the grid now. */
88
+ export declare function settleWrite(own: OwnWrite | null, call: AfterCall): Settled;
89
+ /**
90
+ * - `echo`: the same grid state as the record (or the state from before the
91
+ * write, while the write is pending).
92
+ * - `landing`: the pending write lands now.
93
+ * - `change`: anything else. The record ends.
94
+ */
95
+ export type EventKind = 'echo' | 'landing' | 'change';
96
+ /**
97
+ * A filterChanged outside the call. `key` and `live` are in the form of
98
+ * `own.kind`. For a pending model write, `urlKey` is the URL form of `live`,
99
+ * and `columnUrlKeys` the URL form of each of its columns.
100
+ */
101
+ export declare function classifyEvent(own: OwnWrite | null, event: {
102
+ key: string;
103
+ live: Columns;
104
+ source: string | undefined;
105
+ urlKey?: string | undefined;
106
+ columnUrlKeys?: ColumnUrlKeys | undefined;
107
+ }): Classified;
108
+ /**
109
+ * The record that a new sync on the same grid takes from the earlier sync
110
+ * (#276), checked against the grid now. The write can land, or the user can
111
+ * edit, while no sync listens (for example while React hides the tree), so
112
+ * the record holds only while the grid agrees with it:
113
+ * - pending: the grid still shows the state from before (still pending), or
114
+ * it shows the write, also in a form that the grid made of it (landed).
115
+ * - landed: the grid still shows it.
116
+ * Anything else is null: the next event is then a change, as with no record.
117
+ * `live` has the keys of the grid now in the record's form, and for a model
118
+ * write the URL form. Null: the grid cannot be read.
119
+ */
120
+ export declare function takeOver(own: OwnWrite, live: {
121
+ key: string;
122
+ urlKey?: string | undefined;
123
+ } | null): OwnWrite | null;
124
+ /**
125
+ * A key for per-column values that depends on no key order, at any level.
126
+ * The grid can rebuild a column's model with its keys in another order.
127
+ */
128
+ export declare function modelKey(columns: Columns): string;
129
+ /**
130
+ * Whether the grid's columns could be a write landing in which the grid took
131
+ * only part of the write: each column has the write's value, or the value
132
+ * that the grid had before. At least one column must be the write's, so a
133
+ * clear-all or another value is a change, not the landing (#274 review).
134
+ *
135
+ * With `forms`, a column that the grid rebuilt is the write's too when its
136
+ * URL form is the URL form of the write's column (#223).
137
+ */
138
+ export declare function couldBeLanding(live: Columns, accepted: Columns, before: Columns | null, forms?: ColumnUrlForms): boolean;
@@ -0,0 +1,133 @@
1
+ export function startWrite(own, kind) {
2
+ if (own?.phase !== 'pending')
3
+ return { phase: 'writing', kind };
4
+ const urlForm = own.kind === 'url' ? own.acceptedKey : own.acceptedUrlKey;
5
+ const waits = [
6
+ ...(own.waits ?? []),
7
+ ...(urlForm === undefined ? [] : [urlForm])
8
+ ];
9
+ return waits.length
10
+ ? { phase: 'writing', kind, waits }
11
+ : { phase: 'writing', kind };
12
+ }
13
+ export function settleWrite(own, call) {
14
+ if (call.failed)
15
+ return { own: null, landed: false };
16
+ if (own?.phase === 'landed') {
17
+ return {
18
+ own: { phase: 'landed', kind: call.kind, key: call.afterKey ?? own.key },
19
+ landed: true
20
+ };
21
+ }
22
+ const waits = own?.phase === 'writing' ? own.waits : undefined;
23
+ if (call.afterKey !== null &&
24
+ ((waits === undefined && call.afterKey === call.acceptedKey) ||
25
+ (call.beforeKey !== null && call.afterKey !== call.beforeKey))) {
26
+ return {
27
+ own: { phase: 'landed', kind: call.kind, key: call.afterKey },
28
+ landed: true
29
+ };
30
+ }
31
+ return {
32
+ own: {
33
+ phase: 'pending',
34
+ kind: call.kind,
35
+ before: call.before,
36
+ beforeKey: call.beforeKey,
37
+ accepted: call.accepted,
38
+ acceptedKey: call.acceptedKey,
39
+ acceptedUrlKey: call.acceptedUrlKey,
40
+ acceptedColumnUrlKeys: call.acceptedColumnUrlKeys,
41
+ waits
42
+ },
43
+ landed: false
44
+ };
45
+ }
46
+ export function classifyEvent(own, event) {
47
+ if (own?.phase === 'landed' && event.key === own.key) {
48
+ return { own, kind: 'echo', write: own.kind };
49
+ }
50
+ if (own?.phase === 'pending') {
51
+ if (event.source === 'api') {
52
+ const waited = afterWait(own, event);
53
+ if (waited)
54
+ return waited;
55
+ }
56
+ if (event.key === own.acceptedKey)
57
+ return landing(own, event.key);
58
+ if (own.beforeKey !== null && event.key === own.beforeKey) {
59
+ return { own, kind: 'echo', write: own.kind };
60
+ }
61
+ const forms = own.acceptedColumnUrlKeys && event.columnUrlKeys
62
+ ? { live: event.columnUrlKeys, written: own.acceptedColumnUrlKeys }
63
+ : undefined;
64
+ if (event.source === 'api' &&
65
+ (couldBeLanding(event.live, own.accepted, own.before, forms) ||
66
+ rebuiltLanding(own, event))) {
67
+ return landing(own, event.key);
68
+ }
69
+ }
70
+ return { own: null, kind: 'change', write: null };
71
+ }
72
+ function landing(own, key) {
73
+ return {
74
+ own: { phase: 'landed', kind: own.kind, key },
75
+ kind: 'landing',
76
+ write: own.kind
77
+ };
78
+ }
79
+ function afterWait(own, event) {
80
+ const urlForm = own.kind === 'url' ? event.key : event.urlKey;
81
+ const waits = own.waits ?? [];
82
+ const at = urlForm === undefined ? -1 : waits.indexOf(urlForm);
83
+ if (at < 0)
84
+ return null;
85
+ const rest = waits.slice(at + 1);
86
+ const other = rest.findIndex(form => form !== urlForm);
87
+ const left = other < 0 ? [] : rest.slice(other);
88
+ const next = { ...own, waits: left };
89
+ if (left.length === 0 && event.key === own.acceptedKey) {
90
+ return landing(next, event.key);
91
+ }
92
+ return { own: next, kind: 'echo', write: own.kind, queued: true };
93
+ }
94
+ function rebuiltLanding(own, event) {
95
+ return (own.acceptedUrlKey !== undefined &&
96
+ event.urlKey === own.acceptedUrlKey &&
97
+ event.key !== own.beforeKey);
98
+ }
99
+ export function takeOver(own, live) {
100
+ if (live === null || own.phase === 'writing')
101
+ return null;
102
+ if (own.phase === 'landed')
103
+ return live.key === own.key ? own : null;
104
+ if (own.beforeKey !== null && live.key === own.beforeKey)
105
+ return own;
106
+ const shown = live.key === own.acceptedKey ||
107
+ (own.acceptedUrlKey !== undefined && live.urlKey === own.acceptedUrlKey);
108
+ return shown ? { phase: 'landed', kind: own.kind, key: live.key } : null;
109
+ }
110
+ export function modelKey(columns) {
111
+ return stableJson(columns);
112
+ }
113
+ function stableJson(value) {
114
+ return JSON.stringify(value, (_key, part) => part instanceof Object && !Array.isArray(part)
115
+ ? Object.fromEntries(Object.entries(part).sort(([a], [b]) => (a < b ? -1 : a > b ? 1 : 0)))
116
+ : part);
117
+ }
118
+ export function couldBeLanding(live, accepted, before, forms) {
119
+ const columns = Object.keys(live);
120
+ const sameUrlForm = (colId) => {
121
+ const written = forms?.written.get(colId);
122
+ return written !== undefined && forms?.live.get(colId) === written;
123
+ };
124
+ const fromWrite = (colId) => Object.hasOwn(accepted, colId) &&
125
+ (stableJson(live[colId]) === stableJson(accepted[colId]) ||
126
+ sameUrlForm(colId));
127
+ const fromBefore = (colId) => before !== null &&
128
+ Object.hasOwn(before, colId) &&
129
+ stableJson(live[colId]) === stableJson(before[colId]);
130
+ return (columns.some(fromWrite) &&
131
+ columns.every(colId => fromWrite(colId) || fromBefore(colId)));
132
+ }
133
+ //# sourceMappingURL=own-write.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"own-write.js","sourceRoot":"","sources":["../../src/core/own-write.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { GridApi as AGGridApi, TextFilterModel, NumberFilterModel, DateFilterModel } from 'ag-grid-community';
2
+ import type { GridView, ViewStore } from './view-storage.js';
2
3
  import { type Operator, type OperationsFor } from './operators.js';
3
4
  /**
4
5
  * Serialization modes for URL parameters
@@ -79,9 +80,10 @@ export interface AGGridUrlSyncConfig {
79
80
  * issues for which it gives `true`. In the core, a thrown issue is not sent
80
81
  * to `onParseError`, and the first one stops the call. In the React hook,
81
82
  * each issue is still sent to `onParseError` one time, and the picked issue
82
- * is thrown during render, so an error boundary catches it. The library does
83
- * not change the address bar, so remove the bad param before the boundary
84
- * resets, or the same issue is thrown again.
83
+ * is thrown during render, so an error boundary catches it. This API does
84
+ * not change the address bar (only `createGridUrlSync` with `history` does),
85
+ * so remove the bad param before the boundary resets, or the same issue is
86
+ * thrown again.
85
87
  *
86
88
  * A function that throws makes the library throw that error.
87
89
  * @default false
@@ -270,7 +272,13 @@ export declare function isDateFilter(filter: ColumnFilter): filter is DateColumn
270
272
  * The reason for an issue (#220). Data issues are a filter that is dropped or
271
273
  * not valid. The other codes are failures of an operation.
272
274
  */
273
- export type IssueCode = 'INVALID_PARAM' | 'INVALID_NUMBER' | 'INVALID_DATE' | 'VALUE_TOO_LONG' | 'INVALID_GROUPED' | 'TYPE_MISMATCH' | 'INVALID_URL' | 'GRID_ERROR' | 'NOT_READY' | 'VIEW_NOT_FOUND' | 'VIEW_NAME_REQUIRED' | 'STORAGE_UNAVAILABLE' | 'STORAGE_FULL' | 'STORAGE_WRITE_FAILED' | 'UNKNOWN';
275
+ export type IssueCode = 'INVALID_PARAM' | 'INVALID_NUMBER' | 'INVALID_DATE' | 'VALUE_TOO_LONG' | 'INVALID_GROUPED' | 'TYPE_MISMATCH' | 'INVALID_URL' | 'GRID_ERROR' | 'NOT_READY' | 'VIEW_NOT_FOUND' | 'VIEW_NAME_REQUIRED' | 'STORAGE_UNAVAILABLE' | 'STORAGE_FULL' | 'STORAGE_WRITE_FAILED' | 'HISTORY_WRITE_FAILED' | 'UNKNOWN';
276
+ /**
277
+ * How bad an issue is (#221). A `'warning'` is a data issue: the sync goes on
278
+ * and the bad filter (or the bad URL) is left out. An `'error'` is an
279
+ * operation that failed.
280
+ */
281
+ export type IssueSeverity = 'error' | 'warning';
274
282
  /** The code and the column of an issue, when the default is not right */
275
283
  export interface IssueDetails {
276
284
  code?: IssueCode | undefined;
@@ -286,6 +294,11 @@ export declare class URLSyncError extends Error {
286
294
  /** The column of the filter, when it is known */
287
295
  readonly column?: string;
288
296
  constructor(message: string, cause?: Error | undefined, details?: IssueDetails);
297
+ /**
298
+ * How bad the issue is, from its code (#221). A getter, so it is not an own
299
+ * property and `toEqual` comparisons of errors do not change.
300
+ */
301
+ get severity(): IssueSeverity;
289
302
  }
290
303
  /**
291
304
  * Error thrown when filter validation fails
@@ -451,4 +464,138 @@ export declare const AG_GRID_OPERATION_NAMES: Record<string, string>;
451
464
  * @deprecated The key needs the filter type too. Will be removed in 0.6.0.
452
465
  */
453
466
  export declare const REVERSE_AG_GRID_OPERATION_NAMES: Record<string, FilterOperation>;
467
+ declare const codecBrand: unique symbol;
468
+ /**
469
+ * How the filters are written in the URL. Make one with `individual()` or
470
+ * `grouped()`. It is opaque: only `createGridUrlSync` reads it.
471
+ */
472
+ export interface Codec {
473
+ readonly [codecBrand]: true;
474
+ }
475
+ /**
476
+ * The state of a sync. `'idle'`: there is no sync yet (the React hook uses
477
+ * it). `'active'`: the sync listens to the grid. `'destroyed'`: after
478
+ * `destroy()`, or after the grid is destroyed.
479
+ */
480
+ export type SyncStatus = 'idle' | 'active' | 'destroyed';
481
+ /**
482
+ * Where the work that found an issue started. `'url'`: the sync read the
483
+ * address bar itself (on create, or on `popstate`). `'grid'`: the sync read
484
+ * the grid after a filter change. `'api'`: a method that the app called.
485
+ */
486
+ export type IssueSource = 'url' | 'grid' | 'api';
487
+ /** The one argument of `onIssue` */
488
+ export interface IssueEvent {
489
+ issue: URLSyncError;
490
+ source: IssueSource;
491
+ }
492
+ /**
493
+ * The state of a sync, for `useSyncExternalStore` and for apps. The same
494
+ * object is returned until something in it changes.
495
+ */
496
+ export interface GridUrlSyncSnapshot {
497
+ readonly status: SyncStatus;
498
+ /** The URL with the grid's filters and the page's own params */
499
+ readonly url: string;
500
+ /** Whether the grid has filters that the library supports */
501
+ readonly hasFilters: boolean;
502
+ /** The issues of the latest apply and of the latest grid read */
503
+ readonly issues: readonly URLSyncError[];
504
+ /** The saved views, in save order. Empty with no `views` option. */
505
+ readonly views: readonly GridView[];
506
+ /** The id of the active saved view, or null */
507
+ readonly activeViewId: string | null;
508
+ }
509
+ /**
510
+ * How the sync writes a filter change to the address bar: a user edit, a
511
+ * view load or `applyFilters`. A URL apply writes nothing. `'none'` never
512
+ * writes. `'replace'` and `'push'` use `window.history`. A function gets the
513
+ * URL, for example `url => router.replace(url)`.
514
+ */
515
+ export type HistoryMode = 'none' | 'replace' | 'push' | ((url: string) => void);
516
+ /** The options of `createGridUrlSync` */
517
+ export interface GridUrlSyncOptions {
518
+ /** The AG Grid API */
519
+ api: AGGridApi;
520
+ /**
521
+ * How the filters are written in the URL
522
+ * @default individual()
523
+ */
524
+ codec?: Codec | undefined;
525
+ /**
526
+ * Maximum length for a filter value
527
+ * @default 200
528
+ */
529
+ maxValueLength?: number | undefined;
530
+ /** @default 'none' */
531
+ history?: HistoryMode | undefined;
532
+ /**
533
+ * Apply the URL when the browser's back or forward button changes it
534
+ * @default true when `history` is `'push'`, else false
535
+ */
536
+ popstate?: boolean | undefined;
537
+ /**
538
+ * Apply the address bar's filters when the sync is made. A URL with no
539
+ * filters keeps the grid's filters.
540
+ * @default true
541
+ */
542
+ applyUrlOnCreate?: boolean | undefined;
543
+ /**
544
+ * Throw an issue instead of reporting it, in the methods that the app
545
+ * calls (`applyUrl`, `applyFilters`, `getUrl`, `saveView`, `loadView`,
546
+ * `deleteView`). `createGridUrlSync` and the sync's own listeners never
547
+ * throw.
548
+ * @default false
549
+ */
550
+ throwOnError?: boolean | ((issue: URLSyncError) => boolean) | undefined;
551
+ /** Gets each issue one time */
552
+ onIssue?: ((event: IssueEvent) => void) | undefined;
553
+ /**
554
+ * The saved views. Give `createViewStore(key)` from
555
+ * `ag-grid-url-sync/view-storage`, or your own `ViewStore`. With no
556
+ * store, `views` is empty and the view methods do nothing. On create, a
557
+ * URL that holds the stored view restores it, else a URL with at least
558
+ * one filter wins, else the stored view is restored.
559
+ */
560
+ views?: ViewStore | undefined;
561
+ }
562
+ /** A sync between one grid and the URL */
563
+ export interface GridUrlSync {
564
+ /** The current state. The same object until something changes. */
565
+ getSnapshot(): GridUrlSyncSnapshot;
566
+ /** Calls the listener after each snapshot change. Returns unsubscribe. */
567
+ subscribe(listener: () => void): () => void;
568
+ /** Applies the filters of a URL (default: the address bar) to the grid */
569
+ applyUrl(url?: string): ApplyResult;
570
+ /**
571
+ * Applies filters to the grid as the app's own write. When it lands, the
572
+ * URL is written in the `history` mode, as for a user edit.
573
+ */
574
+ applyFilters(filters: FilterState): ApplyResult;
575
+ /** The URL with the grid's filters (default base: the address bar) */
576
+ getUrl(baseUrl?: string): string;
577
+ /**
578
+ * Saves the grid's filters as a view with this name, and makes it active.
579
+ * The same name updates that view. Returns null with no `views` option or
580
+ * when the save fails.
581
+ */
582
+ saveView(name: string): GridView | null;
583
+ /**
584
+ * Loads a saved view into the grid and makes it active. `null` clears the
585
+ * filters. When the view lands, the URL is written in the `history` mode,
586
+ * as for a user edit. An unknown id reports `VIEW_NOT_FOUND`.
587
+ */
588
+ loadView(id: string | null): void;
589
+ /**
590
+ * Deletes a saved view. If it is active and the grid still shows it, the
591
+ * grid is cleared.
592
+ */
593
+ deleteView(id: string): void;
594
+ /**
595
+ * Removes the listeners. The snapshot keeps the last state. After this,
596
+ * `applyUrl`, `applyFilters`, `saveView` and `loadView` report
597
+ * `NOT_READY`.
598
+ */
599
+ destroy(): void;
600
+ }
454
601
  export {};
@@ -1,4 +1,5 @@
1
1
  import { attachColumn } from './issue-columns.js';
2
+ import { DATA_ISSUE_CODES } from './data-issue-codes.js';
2
3
  import { OPERATORS, operationsFor, operationsOnlyFor, sharedOperations, isOperationFor, operatorById } from './operators.js';
3
4
  export const TEXT_ONLY_OPERATIONS = operationsOnlyFor('text');
4
5
  export const NUMBER_ONLY_OPERATIONS = operationsOnlyFor('number');
@@ -42,6 +43,9 @@ export class URLSyncError extends Error {
42
43
  if (details.column !== undefined)
43
44
  attachColumn(this, details.column);
44
45
  }
46
+ get severity() {
47
+ return DATA_ISSUE_CODES.has(this.code) ? 'warning' : 'error';
48
+ }
45
49
  }
46
50
  export class InvalidFilterError extends URLSyncError {
47
51
  constructor(message, cause, details = {}) {
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  export { AGGridUrlSync, createUrlSync } from './core/ag-grid-url-sync.js';
2
+ export { createGridUrlSync, IDLE_SNAPSHOT } from './core/grid-url-sync.js';
3
+ export { individual, grouped } from './core/codecs.js';
2
4
  export * from './core/types.js';
3
5
  export { validateFilterValue } from './core/validation.js';
4
6
  export { DEFAULT_CONFIG } from './core/options.js';
package/dist/index.js CHANGED
@@ -1,4 +1,6 @@
1
1
  export { AGGridUrlSync, createUrlSync } from './core/ag-grid-url-sync.js';
2
+ export { createGridUrlSync, IDLE_SNAPSHOT } from './core/grid-url-sync.js';
3
+ export { individual, grouped } from './core/codecs.js';
2
4
  export * from './core/types.js';
3
5
  export { validateFilterValue } from './core/validation.js';
4
6
  export { DEFAULT_CONFIG } from './core/options.js';