@btst/stack 1.1.0 → 1.1.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 (297) hide show
  1. package/README.md +12 -12
  2. package/dist/api/index.cjs +2 -0
  3. package/dist/api/index.d.cts +1 -0
  4. package/dist/api/index.d.mts +1 -0
  5. package/dist/api/index.d.ts +1 -0
  6. package/dist/api/index.mjs +1 -0
  7. package/dist/client/components/index.cjs +2 -2
  8. package/dist/client/components/index.mjs +2 -2
  9. package/dist/client/index.cjs +4 -2
  10. package/dist/client/index.d.cts +24 -1
  11. package/dist/client/index.d.mts +24 -1
  12. package/dist/client/index.d.ts +24 -1
  13. package/dist/client/index.mjs +3 -2
  14. package/dist/context/index.cjs +1 -1
  15. package/dist/context/index.mjs +1 -1
  16. package/dist/index.cjs +2 -0
  17. package/dist/index.d.cts +1 -0
  18. package/dist/index.d.mts +1 -0
  19. package/dist/index.d.ts +1 -0
  20. package/dist/index.mjs +1 -0
  21. package/dist/node_modules/.pnpm/@floating-ui_core@1.7.3/node_modules/@floating-ui/core/dist/floating-ui.core.cjs +825 -0
  22. package/dist/node_modules/.pnpm/@floating-ui_core@1.7.3/node_modules/@floating-ui/core/dist/floating-ui.core.mjs +814 -0
  23. package/dist/node_modules/.pnpm/@floating-ui_dom@1.7.4/node_modules/@floating-ui/dom/dist/floating-ui.dom.cjs +763 -0
  24. package/dist/node_modules/.pnpm/@floating-ui_dom@1.7.4/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs +751 -0
  25. package/dist/node_modules/.pnpm/@floating-ui_react-dom@2.1.6_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.cjs +375 -0
  26. package/dist/node_modules/.pnpm/@floating-ui_react-dom@2.1.6_react-dom@19.2.0_react@19.2.0__react@19.2.0/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs +350 -0
  27. package/dist/node_modules/.pnpm/@floating-ui_utils@0.2.10/node_modules/@floating-ui/utils/dist/floating-ui.utils.cjs +160 -0
  28. package/dist/node_modules/.pnpm/@floating-ui_utils@0.2.10/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.cjs +182 -0
  29. package/dist/node_modules/.pnpm/@floating-ui_utils@0.2.10/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs +161 -0
  30. package/dist/node_modules/.pnpm/@floating-ui_utils@0.2.10/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs +137 -0
  31. package/dist/node_modules/.pnpm/@radix-ui_number@1.1.1/node_modules/@radix-ui/number/dist/index.cjs +8 -0
  32. package/dist/node_modules/.pnpm/@radix-ui_number@1.1.1/node_modules/@radix-ui/number/dist/index.mjs +6 -0
  33. package/dist/node_modules/.pnpm/@radix-ui_primitive@1.1.3/node_modules/@radix-ui/primitive/dist/index.cjs +13 -0
  34. package/dist/node_modules/.pnpm/@radix-ui_primitive@1.1.3/node_modules/@radix-ui/primitive/dist/index.mjs +11 -0
  35. package/dist/node_modules/.pnpm/@radix-ui_react-arrow@1.1.7_@types_react-dom@19.2.2_@types_react@19.2.2__@types_react@1_9e04309f365863673e44407648bb0cb6/node_modules/@radix-ui/react-arrow/dist/index.cjs +42 -0
  36. package/dist/node_modules/.pnpm/@radix-ui_react-arrow@1.1.7_@types_react-dom@19.2.2_@types_react@19.2.2__@types_react@1_9e04309f365863673e44407648bb0cb6/node_modules/@radix-ui/react-arrow/dist/index.mjs +25 -0
  37. package/dist/node_modules/.pnpm/@radix-ui_react-collection@1.1.7_@types_react-dom@19.2.2_@types_react@19.2.2__@types_re_6d7c277722b3619c9ee7e64e9a822c45/node_modules/@radix-ui/react-collection/dist/index.cjs +77 -0
  38. package/dist/node_modules/.pnpm/@radix-ui_react-collection@1.1.7_@types_react-dom@19.2.2_@types_react@19.2.2__@types_re_6d7c277722b3619c9ee7e64e9a822c45/node_modules/@radix-ui/react-collection/dist/index.mjs +71 -0
  39. package/dist/node_modules/.pnpm/@radix-ui_react-compose-refs@1.1.2_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-compose-refs/dist/index.cjs +56 -0
  40. package/dist/node_modules/.pnpm/@radix-ui_react-compose-refs@1.1.2_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-compose-refs/dist/index.mjs +39 -0
  41. package/dist/node_modules/.pnpm/@radix-ui_react-context@1.1.2_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-context/dist/index.cjs +79 -0
  42. package/dist/node_modules/.pnpm/@radix-ui_react-context@1.1.2_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-context/dist/index.mjs +63 -0
  43. package/dist/node_modules/.pnpm/@radix-ui_react-direction@1.1.1_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-direction/dist/index.cjs +27 -0
  44. package/dist/node_modules/.pnpm/@radix-ui_react-direction@1.1.1_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-direction/dist/index.mjs +11 -0
  45. package/dist/node_modules/.pnpm/@radix-ui_react-dismissable-layer@1.1.11_@types_react-dom@19.2.2_@types_react@19.2.2__@_ca5522e5d45d4722cb9eb5ce53defa61/node_modules/@radix-ui/react-dismissable-layer/dist/index.cjs +229 -0
  46. package/dist/node_modules/.pnpm/@radix-ui_react-dismissable-layer@1.1.11_@types_react-dom@19.2.2_@types_react@19.2.2__@_ca5522e5d45d4722cb9eb5ce53defa61/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs +212 -0
  47. package/dist/node_modules/.pnpm/@radix-ui_react-focus-guards@1.1.3_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-focus-guards/dist/index.cjs +46 -0
  48. package/dist/node_modules/.pnpm/@radix-ui_react-focus-guards@1.1.3_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-focus-guards/dist/index.mjs +30 -0
  49. package/dist/node_modules/.pnpm/@radix-ui_react-focus-scope@1.1.7_@types_react-dom@19.2.2_@types_react@19.2.2__@types_r_93de389b3f622f9f764acc8e59ec80c0/node_modules/@radix-ui/react-focus-scope/dist/index.cjs +224 -0
  50. package/dist/node_modules/.pnpm/@radix-ui_react-focus-scope@1.1.7_@types_react-dom@19.2.2_@types_react@19.2.2__@types_r_93de389b3f622f9f764acc8e59ec80c0/node_modules/@radix-ui/react-focus-scope/dist/index.mjs +208 -0
  51. package/dist/node_modules/.pnpm/@radix-ui_react-id@1.1.1_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-id/dist/index.cjs +31 -0
  52. package/dist/node_modules/.pnpm/@radix-ui_react-id@1.1.1_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-id/dist/index.mjs +15 -0
  53. package/dist/node_modules/.pnpm/@radix-ui_react-popper@1.2.8_@types_react-dom@19.2.2_@types_react@19.2.2__@types_react@_d6285b8269ea5d6b59b300f5be279a0c/node_modules/@radix-ui/react-popper/dist/index.cjs +308 -0
  54. package/dist/node_modules/.pnpm/@radix-ui_react-popper@1.2.8_@types_react-dom@19.2.2_@types_react@19.2.2__@types_react@_d6285b8269ea5d6b59b300f5be279a0c/node_modules/@radix-ui/react-popper/dist/index.mjs +284 -0
  55. package/dist/node_modules/.pnpm/@radix-ui_react-portal@1.1.9_@types_react-dom@19.2.2_@types_react@19.2.2__@types_react@_478b3d5dd4afab1a3dcce7ed1748cb95/node_modules/@radix-ui/react-portal/dist/index.cjs +37 -0
  56. package/dist/node_modules/.pnpm/@radix-ui_react-portal@1.1.9_@types_react-dom@19.2.2_@types_react@19.2.2__@types_react@_478b3d5dd4afab1a3dcce7ed1748cb95/node_modules/@radix-ui/react-portal/dist/index.mjs +18 -0
  57. package/dist/node_modules/.pnpm/@radix-ui_react-primitive@2.1.3_@types_react-dom@19.2.2_@types_react@19.2.2__@types_rea_bdc15f10281778271ffcbe8dd3cd491e/node_modules/@radix-ui/react-primitive/dist/index.cjs +61 -0
  58. package/dist/node_modules/.pnpm/@radix-ui_react-primitive@2.1.3_@types_react-dom@19.2.2_@types_react@19.2.2__@types_rea_bdc15f10281778271ffcbe8dd3cd491e/node_modules/@radix-ui/react-primitive/dist/index.mjs +43 -0
  59. package/dist/node_modules/.pnpm/@radix-ui_react-select@2.2.6_@types_react-dom@19.2.2_@types_react@19.2.2__@types_react@_802c3d414c85063bee785fcc98a39c07/node_modules/@radix-ui/react-select/dist/index.cjs +1198 -0
  60. package/dist/node_modules/.pnpm/@radix-ui_react-select@2.2.6_@types_react-dom@19.2.2_@types_react@19.2.2__@types_react@_802c3d414c85063bee785fcc98a39c07/node_modules/@radix-ui/react-select/dist/index.mjs +1154 -0
  61. package/dist/node_modules/.pnpm/@radix-ui_react-use-callback-ref@1.1.1_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-use-callback-ref/dist/index.cjs +28 -0
  62. package/dist/node_modules/.pnpm/@radix-ui_react-use-callback-ref@1.1.1_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs +12 -0
  63. package/dist/node_modules/.pnpm/@radix-ui_react-use-controllable-state@1.2.2_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-use-controllable-state/dist/index.cjs +86 -0
  64. package/dist/node_modules/.pnpm/@radix-ui_react-use-controllable-state@1.2.2_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs +70 -0
  65. package/dist/node_modules/.pnpm/@radix-ui_react-use-escape-keydown@1.1.1_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-use-escape-keydown/dist/index.cjs +34 -0
  66. package/dist/node_modules/.pnpm/@radix-ui_react-use-escape-keydown@1.1.1_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs +18 -0
  67. package/dist/node_modules/.pnpm/@radix-ui_react-use-layout-effect@1.1.1_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-use-layout-effect/dist/index.cjs +23 -0
  68. package/dist/node_modules/.pnpm/@radix-ui_react-use-layout-effect@1.1.1_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs +7 -0
  69. package/dist/node_modules/.pnpm/@radix-ui_react-use-previous@1.1.1_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-use-previous/dist/index.cjs +31 -0
  70. package/dist/node_modules/.pnpm/@radix-ui_react-use-previous@1.1.1_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-use-previous/dist/index.mjs +15 -0
  71. package/dist/node_modules/.pnpm/@radix-ui_react-use-size@1.1.1_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-use-size/dist/index.cjs +56 -0
  72. package/dist/node_modules/.pnpm/@radix-ui_react-use-size@1.1.1_@types_react@19.2.2_react@19.2.0/node_modules/@radix-ui/react-use-size/dist/index.mjs +40 -0
  73. package/dist/node_modules/.pnpm/@radix-ui_react-visually-hidden@1.2.3_@types_react-dom@19.2.2_@types_react@19.2.2__@typ_a84e98a44624c31e835a98d4b8b0c30d/node_modules/@radix-ui/react-visually-hidden/dist/index.cjs +51 -0
  74. package/dist/node_modules/.pnpm/@radix-ui_react-visually-hidden@1.2.3_@types_react-dom@19.2.2_@types_react@19.2.2__@typ_a84e98a44624c31e835a98d4b8b0c30d/node_modules/@radix-ui/react-visually-hidden/dist/index.mjs +34 -0
  75. package/dist/node_modules/.pnpm/aria-hidden@1.2.6/node_modules/aria-hidden/dist/es2015/index.cjs +139 -0
  76. package/dist/node_modules/.pnpm/aria-hidden@1.2.6/node_modules/aria-hidden/dist/es2015/index.mjs +137 -0
  77. package/dist/node_modules/.pnpm/embla-carousel-react@8.6.0_react@19.2.0/node_modules/embla-carousel-react/esm/embla-carousel-react.esm.cjs +39 -0
  78. package/dist/node_modules/.pnpm/embla-carousel-react@8.6.0_react@19.2.0/node_modules/embla-carousel-react/esm/embla-carousel-react.esm.mjs +37 -0
  79. package/dist/node_modules/.pnpm/embla-carousel-reactive-utils@8.6.0_embla-carousel@8.6.0/node_modules/embla-carousel-reactive-utils/esm/embla-carousel-reactive-utils.esm.cjs +43 -0
  80. package/dist/node_modules/.pnpm/embla-carousel-reactive-utils@8.6.0_embla-carousel@8.6.0/node_modules/embla-carousel-reactive-utils/esm/embla-carousel-reactive-utils.esm.mjs +38 -0
  81. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/embla-carousel.esm.cjs +1671 -0
  82. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/embla-carousel.esm.mjs +1669 -0
  83. package/dist/node_modules/.pnpm/get-nonce@1.0.1/node_modules/get-nonce/dist/es2015/index.cjs +10 -0
  84. package/dist/node_modules/.pnpm/get-nonce@1.0.1/node_modules/get-nonce/dist/es2015/index.mjs +8 -0
  85. package/dist/node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll-bar/dist/es2015/component.cjs +74 -0
  86. package/dist/node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll-bar/dist/es2015/component.mjs +56 -0
  87. package/dist/node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll-bar/dist/es2015/constants.cjs +15 -0
  88. package/dist/node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll-bar/dist/es2015/constants.mjs +10 -0
  89. package/dist/node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll-bar/dist/es2015/utils.cjs +34 -0
  90. package/dist/node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll-bar/dist/es2015/utils.mjs +31 -0
  91. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll/dist/es2015/Combination.cjs +25 -0
  92. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll/dist/es2015/Combination.mjs +9 -0
  93. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll/dist/es2015/SideEffect.cjs +178 -0
  94. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll/dist/es2015/SideEffect.mjs +160 -0
  95. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll/dist/es2015/UI.cjs +54 -0
  96. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll/dist/es2015/UI.mjs +38 -0
  97. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.cjs +23 -0
  98. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.mjs +21 -0
  99. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll/dist/es2015/handleScroll.cjs +113 -0
  100. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll/dist/es2015/handleScroll.mjs +110 -0
  101. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll/dist/es2015/medium.cjs +7 -0
  102. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll/dist/es2015/medium.mjs +5 -0
  103. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll/dist/es2015/sidecar.cjs +9 -0
  104. package/dist/node_modules/.pnpm/react-remove-scroll@2.7.1_@types_react@19.2.2_react@19.2.0/node_modules/react-remove-scroll/dist/es2015/sidecar.mjs +7 -0
  105. package/dist/node_modules/.pnpm/react-style-singleton@2.2.3_@types_react@19.2.2_react@19.2.0/node_modules/react-style-singleton/dist/es2015/component.cjs +21 -0
  106. package/dist/node_modules/.pnpm/react-style-singleton@2.2.3_@types_react@19.2.2_react@19.2.0/node_modules/react-style-singleton/dist/es2015/component.mjs +19 -0
  107. package/dist/node_modules/.pnpm/react-style-singleton@2.2.3_@types_react@19.2.2_react@19.2.0/node_modules/react-style-singleton/dist/es2015/hook.cjs +41 -0
  108. package/dist/node_modules/.pnpm/react-style-singleton@2.2.3_@types_react@19.2.2_react@19.2.0/node_modules/react-style-singleton/dist/es2015/hook.mjs +25 -0
  109. package/dist/node_modules/.pnpm/react-style-singleton@2.2.3_@types_react@19.2.2_react@19.2.0/node_modules/react-style-singleton/dist/es2015/singleton.cjs +53 -0
  110. package/dist/node_modules/.pnpm/react-style-singleton@2.2.3_@types_react@19.2.2_react@19.2.0/node_modules/react-style-singleton/dist/es2015/singleton.mjs +51 -0
  111. package/dist/node_modules/.pnpm/tslib@2.8.1/node_modules/tslib/tslib.es6.cjs +59 -0
  112. package/dist/node_modules/.pnpm/tslib@2.8.1/node_modules/tslib/tslib.es6.mjs +56 -0
  113. package/dist/node_modules/.pnpm/use-callback-ref@1.3.3_@types_react@19.2.2_react@19.2.0/node_modules/use-callback-ref/dist/es2015/assignRef.cjs +26 -0
  114. package/dist/node_modules/.pnpm/use-callback-ref@1.3.3_@types_react@19.2.2_react@19.2.0/node_modules/use-callback-ref/dist/es2015/assignRef.mjs +24 -0
  115. package/dist/node_modules/.pnpm/use-callback-ref@1.3.3_@types_react@19.2.2_react@19.2.0/node_modules/use-callback-ref/dist/es2015/useMergeRef.cjs +64 -0
  116. package/dist/node_modules/.pnpm/use-callback-ref@1.3.3_@types_react@19.2.2_react@19.2.0/node_modules/use-callback-ref/dist/es2015/useMergeRef.mjs +48 -0
  117. package/dist/node_modules/.pnpm/use-callback-ref@1.3.3_@types_react@19.2.2_react@19.2.0/node_modules/use-callback-ref/dist/es2015/useRef.cjs +44 -0
  118. package/dist/node_modules/.pnpm/use-callback-ref@1.3.3_@types_react@19.2.2_react@19.2.0/node_modules/use-callback-ref/dist/es2015/useRef.mjs +42 -0
  119. package/dist/node_modules/.pnpm/use-sidecar@1.1.3_@types_react@19.2.2_react@19.2.0/node_modules/use-sidecar/dist/es2015/exports.cjs +37 -0
  120. package/dist/node_modules/.pnpm/use-sidecar@1.1.3_@types_react@19.2.2_react@19.2.0/node_modules/use-sidecar/dist/es2015/exports.mjs +21 -0
  121. package/dist/node_modules/.pnpm/use-sidecar@1.1.3_@types_react@19.2.2_react@19.2.0/node_modules/use-sidecar/dist/es2015/medium.cjs +79 -0
  122. package/dist/node_modules/.pnpm/use-sidecar@1.1.3_@types_react@19.2.2_react@19.2.0/node_modules/use-sidecar/dist/es2015/medium.mjs +77 -0
  123. package/dist/packages/better-stack/src/client/path-utils.cjs +15 -0
  124. package/dist/packages/better-stack/src/client/path-utils.mjs +13 -0
  125. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/forms/image-field.cjs +3 -3
  126. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/forms/image-field.mjs +3 -3
  127. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/forms/post-forms.cjs +5 -5
  128. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/forms/post-forms.mjs +5 -5
  129. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/forms/tags-multiselect.cjs +2 -6
  130. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/forms/tags-multiselect.mjs +1 -1
  131. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/loading/form-page-skeleton.cjs +1 -1
  132. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/loading/form-page-skeleton.mjs +1 -1
  133. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/loading/list-page-skeleton.cjs +1 -1
  134. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/loading/list-page-skeleton.mjs +1 -1
  135. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/loading/page-header-skeleton.cjs +1 -1
  136. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/loading/page-header-skeleton.mjs +1 -1
  137. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/loading/post-card-skeleton.cjs +2 -2
  138. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/loading/post-card-skeleton.mjs +2 -2
  139. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/loading/post-page-skeleton.cjs +1 -1
  140. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/loading/post-page-skeleton.mjs +1 -1
  141. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/post-page.internal.cjs +1 -1
  142. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/post-page.internal.mjs +1 -1
  143. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/better-blog-attribution.cjs +4 -4
  144. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/better-blog-attribution.mjs +4 -4
  145. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/empty-list.cjs +1 -1
  146. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/empty-list.mjs +1 -1
  147. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/on-this-page.cjs +1 -1
  148. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/on-this-page.mjs +1 -1
  149. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/post-card.cjs +2 -2
  150. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/post-card.mjs +2 -2
  151. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/post-navigation.cjs +1 -1
  152. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/post-navigation.mjs +1 -1
  153. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/posts-list.cjs +1 -1
  154. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/posts-list.mjs +1 -1
  155. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/recent-posts-carousel.cjs +1 -1
  156. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/recent-posts-carousel.mjs +1 -1
  157. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/search-modal.cjs +1 -1
  158. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/search-modal.mjs +1 -1
  159. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/tags-list.cjs +1 -1
  160. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/tags-list.mjs +1 -1
  161. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/hooks/blog-hooks.cjs +1 -1
  162. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/hooks/blog-hooks.mjs +1 -1
  163. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/plugin.cjs +1 -1
  164. package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/plugin.mjs +1 -1
  165. package/dist/packages/ui/src/components/badge.cjs +42 -0
  166. package/dist/packages/ui/src/components/badge.mjs +39 -0
  167. package/dist/packages/ui/src/components/button.cjs +54 -0
  168. package/dist/packages/ui/src/components/button.mjs +51 -0
  169. package/dist/packages/ui/src/components/card.cjs +67 -0
  170. package/dist/packages/ui/src/components/card.mjs +61 -0
  171. package/dist/packages/ui/src/components/carousel.cjs +215 -0
  172. package/dist/packages/ui/src/components/carousel.mjs +195 -0
  173. package/dist/packages/ui/src/components/command.cjs +142 -0
  174. package/dist/packages/ui/src/components/command.mjs +134 -0
  175. package/dist/packages/ui/src/components/dialog.cjs +127 -0
  176. package/dist/packages/ui/src/components/dialog.mjs +105 -0
  177. package/dist/packages/ui/src/components/empty.cjs +76 -0
  178. package/dist/packages/ui/src/components/empty.mjs +71 -0
  179. package/dist/packages/ui/src/components/form.cjs +133 -0
  180. package/dist/packages/ui/src/components/form.mjs +110 -0
  181. package/dist/packages/ui/src/components/input.cjs +23 -0
  182. package/dist/packages/ui/src/components/input.mjs +21 -0
  183. package/dist/packages/ui/src/components/label.cjs +39 -0
  184. package/dist/packages/ui/src/components/label.mjs +23 -0
  185. package/dist/packages/ui/src/components/multi-select.cjs +555 -0
  186. package/dist/packages/ui/src/components/multi-select.mjs +540 -0
  187. package/dist/packages/ui/src/components/select.cjs +140 -0
  188. package/dist/packages/ui/src/components/select.mjs +132 -0
  189. package/dist/packages/ui/src/components/skeleton.cjs +17 -0
  190. package/dist/packages/ui/src/components/skeleton.mjs +15 -0
  191. package/dist/packages/ui/src/components/switch.cjs +48 -0
  192. package/dist/packages/ui/src/components/switch.mjs +32 -0
  193. package/dist/packages/ui/src/components/textarea.cjs +20 -0
  194. package/dist/packages/ui/src/components/textarea.mjs +18 -0
  195. package/dist/packages/ui/src/hooks/use-debounce.cjs +18 -0
  196. package/dist/packages/ui/src/hooks/use-debounce.mjs +16 -0
  197. package/dist/packages/ui/src/lib/utils.cjs +10 -0
  198. package/dist/packages/ui/src/lib/utils.mjs +8 -0
  199. package/dist/plugins/api/index.cjs +0 -2
  200. package/dist/plugins/api/index.d.cts +0 -1
  201. package/dist/plugins/api/index.d.mts +0 -1
  202. package/dist/plugins/api/index.d.ts +0 -1
  203. package/dist/plugins/api/index.mjs +0 -1
  204. package/dist/plugins/blog/api/index.cjs +1 -1
  205. package/dist/plugins/blog/api/index.mjs +1 -1
  206. package/dist/plugins/blog/client/components/index.cjs +4 -4
  207. package/dist/plugins/blog/client/components/index.mjs +4 -4
  208. package/dist/plugins/blog/client/hooks/index.cjs +1 -1
  209. package/dist/plugins/blog/client/hooks/index.mjs +1 -1
  210. package/dist/plugins/blog/client/index.cjs +1 -1
  211. package/dist/plugins/blog/client/index.mjs +1 -1
  212. package/dist/plugins/client/index.cjs +1 -1
  213. package/dist/plugins/client/index.mjs +1 -1
  214. package/package.json +5 -5
  215. package/src/api/index.ts +2 -0
  216. package/src/client/index.ts +2 -0
  217. package/src/client/path-utils.ts +38 -0
  218. package/src/plugins/api/index.ts +0 -1
  219. package/src/plugins/blog/client/components/shared/better-blog-attribution.tsx +4 -4
  220. /package/dist/{client → packages/better-stack/src/client}/components/compose.cjs +0 -0
  221. /package/dist/{client → packages/better-stack/src/client}/components/compose.mjs +0 -0
  222. /package/dist/{client → packages/better-stack/src/client}/components/error-boundary.cjs +0 -0
  223. /package/dist/{client → packages/better-stack/src/client}/components/error-boundary.mjs +0 -0
  224. /package/dist/{client → packages/better-stack/src/client}/meta-utils.cjs +0 -0
  225. /package/dist/{client → packages/better-stack/src/client}/meta-utils.mjs +0 -0
  226. /package/dist/{client → packages/better-stack/src/client}/sitemap-utils.cjs +0 -0
  227. /package/dist/{client → packages/better-stack/src/client}/sitemap-utils.mjs +0 -0
  228. /package/dist/{context → packages/better-stack/src/context}/provider.cjs +0 -0
  229. /package/dist/{context → packages/better-stack/src/context}/provider.mjs +0 -0
  230. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/api/plugin.cjs +0 -0
  231. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/api/plugin.mjs +0 -0
  232. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/forms/markdown-editor.cjs +0 -0
  233. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/forms/markdown-editor.mjs +0 -0
  234. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/loading/index.cjs +0 -0
  235. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/loading/index.mjs +0 -0
  236. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/404-page.cjs +0 -0
  237. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/404-page.mjs +0 -0
  238. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/edit-post-page.cjs +0 -0
  239. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/edit-post-page.internal.cjs +0 -0
  240. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/edit-post-page.internal.mjs +0 -0
  241. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/edit-post-page.mjs +0 -0
  242. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/home-page.cjs +0 -0
  243. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/home-page.internal.cjs +0 -0
  244. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/home-page.internal.mjs +0 -0
  245. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/home-page.mjs +0 -0
  246. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/new-post-page.cjs +0 -0
  247. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/new-post-page.internal.cjs +0 -0
  248. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/new-post-page.internal.mjs +0 -0
  249. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/new-post-page.mjs +0 -0
  250. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/post-page.cjs +0 -0
  251. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/post-page.mjs +0 -0
  252. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/tag-page.cjs +0 -0
  253. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/tag-page.internal.cjs +0 -0
  254. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/tag-page.internal.mjs +0 -0
  255. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/pages/tag-page.mjs +0 -0
  256. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/default-error.cjs +0 -0
  257. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/default-error.mjs +0 -0
  258. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/defaults.cjs +0 -0
  259. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/defaults.mjs +0 -0
  260. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/error-placeholder.cjs +0 -0
  261. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/error-placeholder.mjs +0 -0
  262. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/highlight-text.cjs +0 -0
  263. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/highlight-text.mjs +0 -0
  264. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/markdown-content.cjs +0 -0
  265. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/markdown-content.mjs +0 -0
  266. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/page-header.cjs +0 -0
  267. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/page-header.mjs +0 -0
  268. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/page-layout.cjs +0 -0
  269. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/page-layout.mjs +0 -0
  270. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/page-wrapper.cjs +0 -0
  271. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/page-wrapper.mjs +0 -0
  272. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/search-input.cjs +0 -0
  273. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/search-input.mjs +0 -0
  274. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/use-route-lifecycle.cjs +0 -0
  275. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/components/shared/use-route-lifecycle.mjs +0 -0
  276. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/hooks/use-debounce.cjs +0 -0
  277. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/hooks/use-debounce.mjs +0 -0
  278. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/localization/blog-card.cjs +0 -0
  279. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/localization/blog-card.mjs +0 -0
  280. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/localization/blog-common.cjs +0 -0
  281. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/localization/blog-common.mjs +0 -0
  282. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/localization/blog-forms.cjs +0 -0
  283. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/localization/blog-forms.mjs +0 -0
  284. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/localization/blog-list.cjs +0 -0
  285. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/localization/blog-list.mjs +0 -0
  286. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/localization/blog-post.cjs +0 -0
  287. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/localization/blog-post.mjs +0 -0
  288. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/localization/index.cjs +0 -0
  289. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/client/localization/index.mjs +0 -0
  290. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/db.cjs +0 -0
  291. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/db.mjs +0 -0
  292. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/schemas.cjs +0 -0
  293. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/schemas.mjs +0 -0
  294. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/utils.cjs +0 -0
  295. /package/dist/{plugins → packages/better-stack/src/plugins}/blog/utils.mjs +0 -0
  296. /package/dist/{plugins → packages/better-stack/src/plugins}/utils.cjs +0 -0
  297. /package/dist/{plugins → packages/better-stack/src/plugins}/utils.mjs +0 -0
package/README.md CHANGED
@@ -2,12 +2,12 @@
2
2
 
3
3
  <div align="center">
4
4
 
5
- **Add complete full-stack features to your React app in minutes, not weeks**
5
+ **Composable full-stack plugin system for React frameworks**
6
6
 
7
7
  [![npm version](https://img.shields.io/npm/v/@btst/stack.svg)](https://www.npmjs.com/package/@btst/stack)
8
8
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
9
9
 
10
- [📖 Documentation](https://www.btst.ai) • [🐛 Issues](https://github.com/olliethedev/better-stack/issues)
10
+ [📖 Documentation](https://www.better-stack.ai/docs) • [🐛 Issues](https://github.com/better-stack-ai/better-stack/issues)
11
11
 
12
12
  </div>
13
13
 
@@ -215,23 +215,23 @@ Now add scheduling, feedback, or newsletters the same way. Each feature is indep
215
215
 
216
216
  Better Stack transforms how you think about building apps:
217
217
 
218
- **Internal teams** - Build shared features once, use across multiple apps. Your marketing team's blog plugin works in the main app, the docs site, and the landing page
219
- **Open source** - Share complete features, not just code snippets. Someone can add your newsletter feature to their Next.js app in minutes
220
- **Agencies** - Create a library of reusable features. Drop scheduling into client A's app, feedback into client B's app, both using React Router
221
- **SaaS platforms** - Offer feature plugins your customers can compose. They pick blog + scheduling + AI assistant, mix and match to build their ideal app
222
- • **Rapid prototyping** - Add 5 features in an afternoon instead of 5 weeks. Validate ideas faster
218
+ - **Open source** - Share complete features, not just code snippets. Someone can add a newsletter plugin to their Next.js app in minutes
219
+ - **Fast development** - Add 5 features in an afternoon instead of 5 weeks. Validate ideas faster
220
+ - **Agencies** - Create a library of reusable features. Drop scheduling into client A's app, feedback into client B's app.
221
+ - **SaaS platforms** - Offer feature plugins your customers can compose. They pick blog + scheduling + AI assistant, mix and match to build their ideal app
223
222
 
224
- Each feature is a complete, self-contained full-stack capability. No configuration files. No code generation. No framework lock-in. Just add it and it works.
223
+
224
+ Each plugin is a complete, self-contained horizontal full-stack feature. No framework lock-in. Just add it and it works.
225
225
 
226
226
  ## Learn More
227
227
 
228
- For complete documentation, examples, and plugin development guides, visit **[https://www.btst.ai](https://www.btst.ai)**
228
+ For complete documentation, examples, and plugin development guides, visit **[https://www.better-stack.ai](https://www.better-stack.ai)**
229
229
 
230
230
  ## Examples
231
231
 
232
- - [Next.js App Router](./examples/nextjs) - Full SSR with App Router
233
- - [React Router](./examples/react-router) - Client-side routing with React Router
234
- - [TanStack Router](./examples/tanstack) - Type-safe routing with TanStack Router
232
+ - [Next.js App Router](./examples/nextjs) - Next.js App Router example
233
+ - [React Router](./examples/react-router) - React Router example
234
+ - [TanStack Router](./examples/tanstack) - TanStack Router example
235
235
 
236
236
  ## License
237
237
 
@@ -2,6 +2,7 @@
2
2
 
3
3
  const betterCall = require('better-call');
4
4
  const db = require('@btst/db');
5
+ const node = require('better-call/node');
5
6
 
6
7
  function betterStack(config) {
7
8
  const { plugins, adapter, dbSchema, basePath } = config;
@@ -27,4 +28,5 @@ function betterStack(config) {
27
28
  };
28
29
  }
29
30
 
31
+ exports.toNodeHandler = node.toNodeHandler;
30
32
  exports.betterStack = betterStack;
@@ -1,5 +1,6 @@
1
1
  import { d as PrefixedPluginRoutes, e as BackendLibConfig, f as BackendLib } from '../shared/stack.ByOugz9d.cjs';
2
2
  export { B as BackendPlugin } from '../shared/stack.ByOugz9d.cjs';
3
+ export { toNodeHandler } from 'better-call/node';
3
4
  import '@btst/yar';
4
5
  import '@btst/db';
5
6
  import 'better-call';
@@ -1,5 +1,6 @@
1
1
  import { d as PrefixedPluginRoutes, e as BackendLibConfig, f as BackendLib } from '../shared/stack.ByOugz9d.mjs';
2
2
  export { B as BackendPlugin } from '../shared/stack.ByOugz9d.mjs';
3
+ export { toNodeHandler } from 'better-call/node';
3
4
  import '@btst/yar';
4
5
  import '@btst/db';
5
6
  import 'better-call';
@@ -1,5 +1,6 @@
1
1
  import { d as PrefixedPluginRoutes, e as BackendLibConfig, f as BackendLib } from '../shared/stack.ByOugz9d.js';
2
2
  export { B as BackendPlugin } from '../shared/stack.ByOugz9d.js';
3
+ export { toNodeHandler } from 'better-call/node';
3
4
  import '@btst/yar';
4
5
  import '@btst/db';
5
6
  import 'better-call';
@@ -1,5 +1,6 @@
1
1
  import { createRouter } from 'better-call';
2
2
  import { defineDb } from '@btst/db';
3
+ export { toNodeHandler } from 'better-call/node';
3
4
 
4
5
  function betterStack(config) {
5
6
  const { plugins, adapter, dbSchema, basePath } = config;
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- const compose = require('./compose.cjs');
4
- const errorBoundary = require('./error-boundary.cjs');
3
+ const compose = require('../../packages/better-stack/src/client/components/compose.cjs');
4
+ const errorBoundary = require('../../packages/better-stack/src/client/components/error-boundary.cjs');
5
5
 
6
6
 
7
7
 
@@ -1,2 +1,2 @@
1
- export { ComposedRoute, RouteRenderer } from './compose.mjs';
2
- export { ErrorBoundary } from './error-boundary.mjs';
1
+ export { ComposedRoute, RouteRenderer } from '../../packages/better-stack/src/client/components/compose.mjs';
2
+ export { ErrorBoundary } from '../../packages/better-stack/src/client/components/error-boundary.mjs';
@@ -1,8 +1,9 @@
1
1
  'use strict';
2
2
 
3
3
  const yar = require('@btst/yar');
4
- const sitemapUtils = require('./sitemap-utils.cjs');
5
- const metaUtils = require('./meta-utils.cjs');
4
+ const sitemapUtils = require('../packages/better-stack/src/client/sitemap-utils.cjs');
5
+ const metaUtils = require('../packages/better-stack/src/client/meta-utils.cjs');
6
+ const pathUtils = require('../packages/better-stack/src/client/path-utils.cjs');
6
7
 
7
8
  function createStackClient(config) {
8
9
  const { plugins } = config;
@@ -36,4 +37,5 @@ function createStackClient(config) {
36
37
 
37
38
  exports.sitemapEntryToXmlString = sitemapUtils.sitemapEntryToXmlString;
38
39
  exports.metaElementsToObject = metaUtils.metaElementsToObject;
40
+ exports.normalizePath = pathUtils.normalizePath;
39
41
  exports.createStackClient = createStackClient;
@@ -72,6 +72,29 @@ interface Metadata {
72
72
  */
73
73
  declare function metaElementsToObject(metaElements: Array<React.JSX.IntrinsicElements["meta"] | undefined>): Metadata;
74
74
 
75
+ /**
76
+ * Normalizes path segments from framework route params into a consistent path string.
77
+ *
78
+ * Handles different framework param formats:
79
+ * - Next.js: `pathParams.all` (string[])
80
+ * - React Router: `params["*"]` (string)
81
+ * - TanStack Router: `params._splat` (string)
82
+ *
83
+ * @param path - Path segments as string, string array, or undefined
84
+ * @returns Normalized path string starting with "/" (or "/" for empty/undefined)
85
+ *
86
+ * @example
87
+ * ```ts
88
+ * // Next.js
89
+ * normalizePath(pathParams?.all) // ["blog", "post"] => "/blog/post"
90
+ *
91
+ * // React Router / TanStack Router
92
+ * normalizePath(params["*"]) // "blog/post" => "/blog/post"
93
+ * normalizePath(undefined) // => "/"
94
+ * ```
95
+ */
96
+ declare function normalizePath(path?: string | Array<string> | undefined): string;
97
+
75
98
  /**
76
99
  * Creates the client library with plugin support
77
100
  *
@@ -121,4 +144,4 @@ declare function metaElementsToObject(metaElements: Array<React.JSX.IntrinsicEle
121
144
  */
122
145
  declare function createStackClient<TPlugins extends Record<string, ClientPlugin<any, any>>, TRoutes extends PluginRoutes<TPlugins> = PluginRoutes<TPlugins>>(config: ClientLibConfig<TPlugins>): ClientLib<TRoutes>;
123
146
 
124
- export { ClientLib, ClientLibConfig, ClientPlugin, createStackClient, metaElementsToObject, sitemapEntryToXmlString };
147
+ export { ClientLib, ClientLibConfig, ClientPlugin, createStackClient, metaElementsToObject, normalizePath, sitemapEntryToXmlString };
@@ -72,6 +72,29 @@ interface Metadata {
72
72
  */
73
73
  declare function metaElementsToObject(metaElements: Array<React.JSX.IntrinsicElements["meta"] | undefined>): Metadata;
74
74
 
75
+ /**
76
+ * Normalizes path segments from framework route params into a consistent path string.
77
+ *
78
+ * Handles different framework param formats:
79
+ * - Next.js: `pathParams.all` (string[])
80
+ * - React Router: `params["*"]` (string)
81
+ * - TanStack Router: `params._splat` (string)
82
+ *
83
+ * @param path - Path segments as string, string array, or undefined
84
+ * @returns Normalized path string starting with "/" (or "/" for empty/undefined)
85
+ *
86
+ * @example
87
+ * ```ts
88
+ * // Next.js
89
+ * normalizePath(pathParams?.all) // ["blog", "post"] => "/blog/post"
90
+ *
91
+ * // React Router / TanStack Router
92
+ * normalizePath(params["*"]) // "blog/post" => "/blog/post"
93
+ * normalizePath(undefined) // => "/"
94
+ * ```
95
+ */
96
+ declare function normalizePath(path?: string | Array<string> | undefined): string;
97
+
75
98
  /**
76
99
  * Creates the client library with plugin support
77
100
  *
@@ -121,4 +144,4 @@ declare function metaElementsToObject(metaElements: Array<React.JSX.IntrinsicEle
121
144
  */
122
145
  declare function createStackClient<TPlugins extends Record<string, ClientPlugin<any, any>>, TRoutes extends PluginRoutes<TPlugins> = PluginRoutes<TPlugins>>(config: ClientLibConfig<TPlugins>): ClientLib<TRoutes>;
123
146
 
124
- export { ClientLib, ClientLibConfig, ClientPlugin, createStackClient, metaElementsToObject, sitemapEntryToXmlString };
147
+ export { ClientLib, ClientLibConfig, ClientPlugin, createStackClient, metaElementsToObject, normalizePath, sitemapEntryToXmlString };
@@ -72,6 +72,29 @@ interface Metadata {
72
72
  */
73
73
  declare function metaElementsToObject(metaElements: Array<React.JSX.IntrinsicElements["meta"] | undefined>): Metadata;
74
74
 
75
+ /**
76
+ * Normalizes path segments from framework route params into a consistent path string.
77
+ *
78
+ * Handles different framework param formats:
79
+ * - Next.js: `pathParams.all` (string[])
80
+ * - React Router: `params["*"]` (string)
81
+ * - TanStack Router: `params._splat` (string)
82
+ *
83
+ * @param path - Path segments as string, string array, or undefined
84
+ * @returns Normalized path string starting with "/" (or "/" for empty/undefined)
85
+ *
86
+ * @example
87
+ * ```ts
88
+ * // Next.js
89
+ * normalizePath(pathParams?.all) // ["blog", "post"] => "/blog/post"
90
+ *
91
+ * // React Router / TanStack Router
92
+ * normalizePath(params["*"]) // "blog/post" => "/blog/post"
93
+ * normalizePath(undefined) // => "/"
94
+ * ```
95
+ */
96
+ declare function normalizePath(path?: string | Array<string> | undefined): string;
97
+
75
98
  /**
76
99
  * Creates the client library with plugin support
77
100
  *
@@ -121,4 +144,4 @@ declare function metaElementsToObject(metaElements: Array<React.JSX.IntrinsicEle
121
144
  */
122
145
  declare function createStackClient<TPlugins extends Record<string, ClientPlugin<any, any>>, TRoutes extends PluginRoutes<TPlugins> = PluginRoutes<TPlugins>>(config: ClientLibConfig<TPlugins>): ClientLib<TRoutes>;
123
146
 
124
- export { ClientLib, ClientLibConfig, ClientPlugin, createStackClient, metaElementsToObject, sitemapEntryToXmlString };
147
+ export { ClientLib, ClientLibConfig, ClientPlugin, createStackClient, metaElementsToObject, normalizePath, sitemapEntryToXmlString };
@@ -1,6 +1,7 @@
1
1
  import { createRouter } from '@btst/yar';
2
- export { sitemapEntryToXmlString } from './sitemap-utils.mjs';
3
- export { metaElementsToObject } from './meta-utils.mjs';
2
+ export { sitemapEntryToXmlString } from '../packages/better-stack/src/client/sitemap-utils.mjs';
3
+ export { metaElementsToObject } from '../packages/better-stack/src/client/meta-utils.mjs';
4
+ export { normalizePath } from '../packages/better-stack/src/client/path-utils.mjs';
4
5
 
5
6
  function createStackClient(config) {
6
7
  const { plugins } = config;
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const provider = require('./provider.cjs');
3
+ const provider = require('../packages/better-stack/src/context/provider.cjs');
4
4
 
5
5
 
6
6
 
@@ -1 +1 @@
1
- export { BetterStackProvider, useBasePath, useBetterStack, usePluginOverrides } from './provider.mjs';
1
+ export { BetterStackProvider, useBasePath, useBetterStack, usePluginOverrides } from '../packages/better-stack/src/context/provider.mjs';
package/dist/index.cjs CHANGED
@@ -1,7 +1,9 @@
1
1
  'use strict';
2
2
 
3
3
  const api_index = require('./api/index.cjs');
4
+ const node = require('better-call/node');
4
5
 
5
6
 
6
7
 
7
8
  exports.betterStack = api_index.betterStack;
9
+ exports.toNodeHandler = node.toNodeHandler;
package/dist/index.d.cts CHANGED
@@ -1,4 +1,5 @@
1
1
  export { betterStack } from './api/index.cjs';
2
+ export { toNodeHandler } from 'better-call/node';
2
3
  export { f as BackendLib, e as BackendLibConfig, B as BackendPlugin } from './shared/stack.ByOugz9d.cjs';
3
4
  import '@btst/yar';
4
5
  import '@btst/db';
package/dist/index.d.mts CHANGED
@@ -1,4 +1,5 @@
1
1
  export { betterStack } from './api/index.mjs';
2
+ export { toNodeHandler } from 'better-call/node';
2
3
  export { f as BackendLib, e as BackendLibConfig, B as BackendPlugin } from './shared/stack.ByOugz9d.mjs';
3
4
  import '@btst/yar';
4
5
  import '@btst/db';
package/dist/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export { betterStack } from './api/index.js';
2
+ export { toNodeHandler } from 'better-call/node';
2
3
  export { f as BackendLib, e as BackendLibConfig, B as BackendPlugin } from './shared/stack.ByOugz9d.js';
3
4
  import '@btst/yar';
4
5
  import '@btst/db';
package/dist/index.mjs CHANGED
@@ -1 +1,2 @@
1
1
  export { betterStack } from './api/index.mjs';
2
+ export { toNodeHandler } from 'better-call/node';