convex-cms 0.0.1 → 0.0.3

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 (267) hide show
  1. package/LICENSE +190 -0
  2. package/README.md +99 -0
  3. package/admin-dist/nitro.json +15 -0
  4. package/admin-dist/public/assets/CmsEmptyState-CRswfTzk.js +5 -0
  5. package/admin-dist/public/assets/CmsPageHeader-CirpXndm.js +1 -0
  6. package/admin-dist/public/assets/CmsStatusBadge-CbEUpQu-.js +1 -0
  7. package/admin-dist/public/assets/CmsToolbar-BI2nZOXp.js +1 -0
  8. package/admin-dist/public/assets/ContentEntryEditor-CBeCyK_m.js +4 -0
  9. package/admin-dist/public/assets/ErrorState-BIVaWmom.js +1 -0
  10. package/admin-dist/public/assets/TaxonomyFilter-ChaY6Y_x.js +1 -0
  11. package/admin-dist/public/assets/_contentTypeId-DQ8k_Rvw.js +1 -0
  12. package/admin-dist/public/assets/_entryId-CKU_glsK.js +1 -0
  13. package/admin-dist/public/assets/alert-BXjTqrwQ.js +1 -0
  14. package/admin-dist/public/assets/badge-hvUOzpVZ.js +1 -0
  15. package/admin-dist/public/assets/circle-check-big-CF_pR17r.js +1 -0
  16. package/admin-dist/public/assets/command-DU82cJlt.js +1 -0
  17. package/admin-dist/public/assets/content-_LXl3pp7.js +1 -0
  18. package/admin-dist/public/assets/content-types-KjxaXGxY.js +2 -0
  19. package/admin-dist/public/assets/globals-CS6BZ0zp.css +1 -0
  20. package/admin-dist/public/assets/index-DNGIZHL-.js +1 -0
  21. package/admin-dist/public/assets/label-KNtpL71g.js +1 -0
  22. package/admin-dist/public/assets/link-2-Bw2aI4V4.js +1 -0
  23. package/admin-dist/public/assets/list-sYepHjt_.js +1 -0
  24. package/admin-dist/public/assets/main-CKj5yfEi.js +97 -0
  25. package/admin-dist/public/assets/media-Bkrkffm7.js +1 -0
  26. package/admin-dist/public/assets/new._contentTypeId-C3LstjNs.js +1 -0
  27. package/admin-dist/public/assets/plus-DUn8v_Xf.js +1 -0
  28. package/admin-dist/public/assets/rotate-ccw-DJEoHcRI.js +1 -0
  29. package/admin-dist/public/assets/scroll-area-DfIlT0in.js +1 -0
  30. package/admin-dist/public/assets/search-MuAUDJKR.js +1 -0
  31. package/admin-dist/public/assets/select-BD29IXCI.js +1 -0
  32. package/admin-dist/public/assets/settings-DmMyn_6A.js +1 -0
  33. package/admin-dist/public/assets/switch-h3Rrnl5i.js +1 -0
  34. package/admin-dist/public/assets/tabs-imc8h-Dp.js +1 -0
  35. package/admin-dist/public/assets/taxonomies-dAsrT65H.js +1 -0
  36. package/admin-dist/public/assets/textarea-BTy7nwzR.js +1 -0
  37. package/admin-dist/public/assets/trash-SAWKZZHv.js +1 -0
  38. package/admin-dist/public/assets/triangle-alert-E52Vfeuh.js +1 -0
  39. package/admin-dist/public/assets/useBreadcrumbLabel-BECBMCzM.js +1 -0
  40. package/admin-dist/public/assets/usePermissions-Basjs9BT.js +1 -0
  41. package/admin-dist/public/favicon.ico +0 -0
  42. package/admin-dist/server/_chunks/_libs/@date-fns/tz.mjs +217 -0
  43. package/admin-dist/server/_chunks/_libs/@floating-ui/core.mjs +719 -0
  44. package/admin-dist/server/_chunks/_libs/@floating-ui/dom.mjs +622 -0
  45. package/admin-dist/server/_chunks/_libs/@floating-ui/react-dom.mjs +292 -0
  46. package/admin-dist/server/_chunks/_libs/@floating-ui/utils.mjs +320 -0
  47. package/admin-dist/server/_chunks/_libs/@radix-ui/number.mjs +6 -0
  48. package/admin-dist/server/_chunks/_libs/@radix-ui/primitive.mjs +11 -0
  49. package/admin-dist/server/_chunks/_libs/@radix-ui/react-arrow.mjs +23 -0
  50. package/admin-dist/server/_chunks/_libs/@radix-ui/react-avatar.mjs +119 -0
  51. package/admin-dist/server/_chunks/_libs/@radix-ui/react-checkbox.mjs +270 -0
  52. package/admin-dist/server/_chunks/_libs/@radix-ui/react-collection.mjs +69 -0
  53. package/admin-dist/server/_chunks/_libs/@radix-ui/react-compose-refs.mjs +39 -0
  54. package/admin-dist/server/_chunks/_libs/@radix-ui/react-context.mjs +137 -0
  55. package/admin-dist/server/_chunks/_libs/@radix-ui/react-dialog.mjs +325 -0
  56. package/admin-dist/server/_chunks/_libs/@radix-ui/react-direction.mjs +9 -0
  57. package/admin-dist/server/_chunks/_libs/@radix-ui/react-dismissable-layer.mjs +210 -0
  58. package/admin-dist/server/_chunks/_libs/@radix-ui/react-dropdown-menu.mjs +253 -0
  59. package/admin-dist/server/_chunks/_libs/@radix-ui/react-focus-guards.mjs +29 -0
  60. package/admin-dist/server/_chunks/_libs/@radix-ui/react-focus-scope.mjs +206 -0
  61. package/admin-dist/server/_chunks/_libs/@radix-ui/react-id.mjs +14 -0
  62. package/admin-dist/server/_chunks/_libs/@radix-ui/react-label.mjs +23 -0
  63. package/admin-dist/server/_chunks/_libs/@radix-ui/react-menu.mjs +812 -0
  64. package/admin-dist/server/_chunks/_libs/@radix-ui/react-popover.mjs +300 -0
  65. package/admin-dist/server/_chunks/_libs/@radix-ui/react-popper.mjs +286 -0
  66. package/admin-dist/server/_chunks/_libs/@radix-ui/react-portal.mjs +16 -0
  67. package/admin-dist/server/_chunks/_libs/@radix-ui/react-presence.mjs +128 -0
  68. package/admin-dist/server/_chunks/_libs/@radix-ui/react-primitive.mjs +141 -0
  69. package/admin-dist/server/_chunks/_libs/@radix-ui/react-roving-focus.mjs +224 -0
  70. package/admin-dist/server/_chunks/_libs/@radix-ui/react-scroll-area.mjs +721 -0
  71. package/admin-dist/server/_chunks/_libs/@radix-ui/react-select.mjs +1163 -0
  72. package/admin-dist/server/_chunks/_libs/@radix-ui/react-separator.mjs +28 -0
  73. package/admin-dist/server/_chunks/_libs/@radix-ui/react-slot.mjs +601 -0
  74. package/admin-dist/server/_chunks/_libs/@radix-ui/react-switch.mjs +152 -0
  75. package/admin-dist/server/_chunks/_libs/@radix-ui/react-tabs.mjs +189 -0
  76. package/admin-dist/server/_chunks/_libs/@radix-ui/react-use-callback-ref.mjs +11 -0
  77. package/admin-dist/server/_chunks/_libs/@radix-ui/react-use-controllable-state.mjs +69 -0
  78. package/admin-dist/server/_chunks/_libs/@radix-ui/react-use-effect-event.mjs +1 -0
  79. package/admin-dist/server/_chunks/_libs/@radix-ui/react-use-escape-keydown.mjs +17 -0
  80. package/admin-dist/server/_chunks/_libs/@radix-ui/react-use-is-hydrated.mjs +15 -0
  81. package/admin-dist/server/_chunks/_libs/@radix-ui/react-use-layout-effect.mjs +6 -0
  82. package/admin-dist/server/_chunks/_libs/@radix-ui/react-use-previous.mjs +14 -0
  83. package/admin-dist/server/_chunks/_libs/@radix-ui/react-use-size.mjs +39 -0
  84. package/admin-dist/server/_chunks/_libs/@radix-ui/react-visually-hidden.mjs +33 -0
  85. package/admin-dist/server/_chunks/_libs/@tanstack/history.mjs +409 -0
  86. package/admin-dist/server/_chunks/_libs/@tanstack/react-router.mjs +1711 -0
  87. package/admin-dist/server/_chunks/_libs/@tanstack/react-store.mjs +56 -0
  88. package/admin-dist/server/_chunks/_libs/@tanstack/router-core.mjs +4829 -0
  89. package/admin-dist/server/_chunks/_libs/@tanstack/store.mjs +134 -0
  90. package/admin-dist/server/_chunks/_libs/react-dom.mjs +10781 -0
  91. package/admin-dist/server/_chunks/_libs/react.mjs +513 -0
  92. package/admin-dist/server/_libs/aria-hidden.mjs +122 -0
  93. package/admin-dist/server/_libs/class-variance-authority.mjs +44 -0
  94. package/admin-dist/server/_libs/clsx.mjs +16 -0
  95. package/admin-dist/server/_libs/cmdk.mjs +315 -0
  96. package/admin-dist/server/_libs/convex.mjs +4841 -0
  97. package/admin-dist/server/_libs/cookie-es.mjs +58 -0
  98. package/admin-dist/server/_libs/croner.mjs +1 -0
  99. package/admin-dist/server/_libs/crossws.mjs +1 -0
  100. package/admin-dist/server/_libs/date-fns.mjs +1716 -0
  101. package/admin-dist/server/_libs/detect-node-es.mjs +1 -0
  102. package/admin-dist/server/_libs/get-nonce.mjs +9 -0
  103. package/admin-dist/server/_libs/h3-v2.mjs +277 -0
  104. package/admin-dist/server/_libs/h3.mjs +401 -0
  105. package/admin-dist/server/_libs/hookable.mjs +1 -0
  106. package/admin-dist/server/_libs/isbot.mjs +20 -0
  107. package/admin-dist/server/_libs/lucide-react.mjs +850 -0
  108. package/admin-dist/server/_libs/ohash.mjs +1 -0
  109. package/admin-dist/server/_libs/react-day-picker.mjs +2201 -0
  110. package/admin-dist/server/_libs/react-remove-scroll-bar.mjs +82 -0
  111. package/admin-dist/server/_libs/react-remove-scroll.mjs +328 -0
  112. package/admin-dist/server/_libs/react-style-singleton.mjs +69 -0
  113. package/admin-dist/server/_libs/rou3.mjs +8 -0
  114. package/admin-dist/server/_libs/seroval-plugins.mjs +58 -0
  115. package/admin-dist/server/_libs/seroval.mjs +1765 -0
  116. package/admin-dist/server/_libs/srvx.mjs +719 -0
  117. package/admin-dist/server/_libs/tailwind-merge.mjs +3010 -0
  118. package/admin-dist/server/_libs/tiny-invariant.mjs +12 -0
  119. package/admin-dist/server/_libs/tiny-warning.mjs +5 -0
  120. package/admin-dist/server/_libs/tslib.mjs +39 -0
  121. package/admin-dist/server/_libs/ufo.mjs +54 -0
  122. package/admin-dist/server/_libs/unctx.mjs +1 -0
  123. package/admin-dist/server/_libs/unstorage.mjs +1 -0
  124. package/admin-dist/server/_libs/use-callback-ref.mjs +66 -0
  125. package/admin-dist/server/_libs/use-sidecar.mjs +106 -0
  126. package/admin-dist/server/_libs/use-sync-external-store.mjs +139 -0
  127. package/admin-dist/server/_libs/zod.mjs +4223 -0
  128. package/admin-dist/server/_ssr/CmsEmptyState-DU7-7-mV.mjs +290 -0
  129. package/admin-dist/server/_ssr/CmsPageHeader-CseW0AHm.mjs +24 -0
  130. package/admin-dist/server/_ssr/CmsStatusBadge-B_pi4KCp.mjs +127 -0
  131. package/admin-dist/server/_ssr/CmsToolbar-X75ex6ek.mjs +49 -0
  132. package/admin-dist/server/_ssr/ContentEntryEditor-CepusRsA.mjs +3720 -0
  133. package/admin-dist/server/_ssr/ErrorState-cI-bKLez.mjs +89 -0
  134. package/admin-dist/server/_ssr/TaxonomyFilter-Bwrq0-cz.mjs +188 -0
  135. package/admin-dist/server/_ssr/_contentTypeId-BqYKEcLr.mjs +379 -0
  136. package/admin-dist/server/_ssr/_entryId-CRfnqeDf.mjs +161 -0
  137. package/admin-dist/server/_ssr/_tanstack-start-manifest_v-BwDlABVk.mjs +4 -0
  138. package/admin-dist/server/_ssr/alert-CVt45UUP.mjs +92 -0
  139. package/admin-dist/server/_ssr/badge-6BsP37vG.mjs +125 -0
  140. package/admin-dist/server/_ssr/command-fy8epIKf.mjs +128 -0
  141. package/admin-dist/server/_ssr/config.server-D7JHDcDv.mjs +117 -0
  142. package/admin-dist/server/_ssr/content-B5RhL7uW.mjs +532 -0
  143. package/admin-dist/server/_ssr/content-types-BIOqCQYN.mjs +1166 -0
  144. package/admin-dist/server/_ssr/index-DHSHDPt1.mjs +193 -0
  145. package/admin-dist/server/_ssr/index.mjs +1275 -0
  146. package/admin-dist/server/_ssr/label-C8Dko1j7.mjs +22 -0
  147. package/admin-dist/server/_ssr/media-CSx3XttC.mjs +1832 -0
  148. package/admin-dist/server/_ssr/new._contentTypeId-DzanEZQM.mjs +144 -0
  149. package/admin-dist/server/_ssr/router-DDWcF-kt.mjs +1556 -0
  150. package/admin-dist/server/_ssr/scroll-area-bjPYwhXN.mjs +59 -0
  151. package/admin-dist/server/_ssr/select-BUhDDf4T.mjs +142 -0
  152. package/admin-dist/server/_ssr/settings-DAsxnw2q.mjs +348 -0
  153. package/admin-dist/server/_ssr/start-HYkvq4Ni.mjs +4 -0
  154. package/admin-dist/server/_ssr/switch-BgyRtQ1Z.mjs +31 -0
  155. package/admin-dist/server/_ssr/tabs-DzMdRB1A.mjs +628 -0
  156. package/admin-dist/server/_ssr/taxonomies-C8j8g5Q5.mjs +915 -0
  157. package/admin-dist/server/_ssr/textarea-9jNeYJSc.mjs +18 -0
  158. package/admin-dist/server/_ssr/trash-DYMxwhZB.mjs +291 -0
  159. package/admin-dist/server/_ssr/useBreadcrumbLabel-FNSAr2Ha.mjs +16 -0
  160. package/admin-dist/server/_ssr/usePermissions-BJGGahrJ.mjs +68 -0
  161. package/admin-dist/server/favicon.ico +0 -0
  162. package/admin-dist/server/index.mjs +627 -0
  163. package/dist/cli/index.js +0 -0
  164. package/dist/client/admin-config.d.ts +0 -1
  165. package/dist/client/admin-config.d.ts.map +1 -1
  166. package/dist/client/admin-config.js +0 -1
  167. package/dist/client/admin-config.js.map +1 -1
  168. package/dist/client/adminApi.d.ts.map +1 -1
  169. package/dist/client/agentTools.d.ts +1237 -135
  170. package/dist/client/agentTools.d.ts.map +1 -1
  171. package/dist/client/agentTools.js +33 -9
  172. package/dist/client/agentTools.js.map +1 -1
  173. package/dist/client/index.d.ts +1 -1
  174. package/dist/client/index.d.ts.map +1 -1
  175. package/dist/client/index.js.map +1 -1
  176. package/dist/component/_generated/component.d.ts +9 -0
  177. package/dist/component/_generated/component.d.ts.map +1 -1
  178. package/dist/component/mediaAssets.d.ts +35 -0
  179. package/dist/component/mediaAssets.d.ts.map +1 -1
  180. package/dist/component/mediaAssets.js +81 -0
  181. package/dist/component/mediaAssets.js.map +1 -1
  182. package/dist/test.d.ts.map +1 -1
  183. package/dist/test.js +2 -1
  184. package/dist/test.js.map +1 -1
  185. package/package.json +24 -9
  186. package/dist/component/auditLog.d.ts +0 -410
  187. package/dist/component/auditLog.d.ts.map +0 -1
  188. package/dist/component/auditLog.js +0 -607
  189. package/dist/component/auditLog.js.map +0 -1
  190. package/dist/component/types.d.ts +0 -4
  191. package/dist/component/types.d.ts.map +0 -1
  192. package/dist/component/types.js +0 -2
  193. package/dist/component/types.js.map +0 -1
  194. package/src/cli/commands/admin.ts +0 -104
  195. package/src/cli/index.ts +0 -21
  196. package/src/cli/utils/detectConvexUrl.ts +0 -54
  197. package/src/cli/utils/openBrowser.ts +0 -16
  198. package/src/client/admin-config.ts +0 -138
  199. package/src/client/adminApi.ts +0 -942
  200. package/src/client/agentTools.ts +0 -1311
  201. package/src/client/argTypes.ts +0 -316
  202. package/src/client/field-types.ts +0 -187
  203. package/src/client/index.ts +0 -1301
  204. package/src/client/queryBuilder.ts +0 -1100
  205. package/src/client/schema/codegen.ts +0 -500
  206. package/src/client/schema/defineContentType.ts +0 -501
  207. package/src/client/schema/index.ts +0 -169
  208. package/src/client/schema/schemaDrift.ts +0 -574
  209. package/src/client/schema/typedClient.ts +0 -688
  210. package/src/client/schema/types.ts +0 -666
  211. package/src/client/types.ts +0 -723
  212. package/src/client/workflows.ts +0 -141
  213. package/src/client/wrapper.ts +0 -4304
  214. package/src/component/_generated/api.ts +0 -140
  215. package/src/component/_generated/component.ts +0 -5029
  216. package/src/component/_generated/dataModel.ts +0 -60
  217. package/src/component/_generated/server.ts +0 -156
  218. package/src/component/authorization.ts +0 -647
  219. package/src/component/authorizationHooks.ts +0 -668
  220. package/src/component/bulkOperations.ts +0 -687
  221. package/src/component/contentEntries.ts +0 -1976
  222. package/src/component/contentEntryMutations.ts +0 -1223
  223. package/src/component/contentEntryValidation.ts +0 -707
  224. package/src/component/contentLock.ts +0 -550
  225. package/src/component/contentTypeMigration.ts +0 -1064
  226. package/src/component/contentTypeMutations.ts +0 -969
  227. package/src/component/contentTypes.ts +0 -346
  228. package/src/component/convex.config.ts +0 -44
  229. package/src/component/documentTypes.ts +0 -240
  230. package/src/component/eventEmitter.ts +0 -485
  231. package/src/component/exportImport.ts +0 -1169
  232. package/src/component/index.ts +0 -491
  233. package/src/component/lib/deepReferenceResolver.ts +0 -999
  234. package/src/component/lib/errors.ts +0 -816
  235. package/src/component/lib/index.ts +0 -145
  236. package/src/component/lib/mediaReferenceResolver.ts +0 -495
  237. package/src/component/lib/metadataExtractor.ts +0 -792
  238. package/src/component/lib/mutationAuth.ts +0 -199
  239. package/src/component/lib/queries.ts +0 -79
  240. package/src/component/lib/ragContentChunker.ts +0 -1371
  241. package/src/component/lib/referenceResolver.ts +0 -430
  242. package/src/component/lib/slugGenerator.ts +0 -262
  243. package/src/component/lib/slugUniqueness.ts +0 -333
  244. package/src/component/lib/softDelete.ts +0 -44
  245. package/src/component/localeFallbackChain.ts +0 -673
  246. package/src/component/localeFields.ts +0 -896
  247. package/src/component/mediaAssetMutations.ts +0 -725
  248. package/src/component/mediaAssets.ts +0 -932
  249. package/src/component/mediaFolderMutations.ts +0 -1046
  250. package/src/component/mediaUploadMutations.ts +0 -224
  251. package/src/component/mediaVariantMutations.ts +0 -900
  252. package/src/component/mediaVariants.ts +0 -793
  253. package/src/component/ragContentIndexer.ts +0 -1067
  254. package/src/component/rateLimitHooks.ts +0 -572
  255. package/src/component/roles.ts +0 -1360
  256. package/src/component/scheduledPublish.ts +0 -358
  257. package/src/component/schema.ts +0 -617
  258. package/src/component/taxonomies.ts +0 -949
  259. package/src/component/taxonomyMutations.ts +0 -1210
  260. package/src/component/trash.ts +0 -724
  261. package/src/component/userContext.ts +0 -898
  262. package/src/component/validation.ts +0 -1388
  263. package/src/component/validators.ts +0 -949
  264. package/src/component/versionMutations.ts +0 -392
  265. package/src/component/webhookTrigger.ts +0 -1922
  266. package/src/react/index.ts +0 -898
  267. package/src/test.ts +0 -1580
@@ -0,0 +1,292 @@
1
+ import { c as computePosition, o as offset$1, s as shift$1, f as flip$1, a as size$1, h as hide$1, b as arrow$2, l as limitShift$1 } from "./dom.mjs";
2
+ import { r as reactExports } from "../react.mjs";
3
+ import { r as reactDomExports } from "../react-dom.mjs";
4
+ var isClient = typeof document !== "undefined";
5
+ var noop = function noop2() {
6
+ };
7
+ var index = isClient ? reactExports.useLayoutEffect : noop;
8
+ function deepEqual(a, b) {
9
+ if (a === b) {
10
+ return true;
11
+ }
12
+ if (typeof a !== typeof b) {
13
+ return false;
14
+ }
15
+ if (typeof a === "function" && a.toString() === b.toString()) {
16
+ return true;
17
+ }
18
+ let length;
19
+ let i;
20
+ let keys;
21
+ if (a && b && typeof a === "object") {
22
+ if (Array.isArray(a)) {
23
+ length = a.length;
24
+ if (length !== b.length) return false;
25
+ for (i = length; i-- !== 0; ) {
26
+ if (!deepEqual(a[i], b[i])) {
27
+ return false;
28
+ }
29
+ }
30
+ return true;
31
+ }
32
+ keys = Object.keys(a);
33
+ length = keys.length;
34
+ if (length !== Object.keys(b).length) {
35
+ return false;
36
+ }
37
+ for (i = length; i-- !== 0; ) {
38
+ if (!{}.hasOwnProperty.call(b, keys[i])) {
39
+ return false;
40
+ }
41
+ }
42
+ for (i = length; i-- !== 0; ) {
43
+ const key = keys[i];
44
+ if (key === "_owner" && a.$$typeof) {
45
+ continue;
46
+ }
47
+ if (!deepEqual(a[key], b[key])) {
48
+ return false;
49
+ }
50
+ }
51
+ return true;
52
+ }
53
+ return a !== a && b !== b;
54
+ }
55
+ function getDPR(element) {
56
+ if (typeof window === "undefined") {
57
+ return 1;
58
+ }
59
+ const win = element.ownerDocument.defaultView || window;
60
+ return win.devicePixelRatio || 1;
61
+ }
62
+ function roundByDPR(element, value) {
63
+ const dpr = getDPR(element);
64
+ return Math.round(value * dpr) / dpr;
65
+ }
66
+ function useLatestRef(value) {
67
+ const ref = reactExports.useRef(value);
68
+ index(() => {
69
+ ref.current = value;
70
+ });
71
+ return ref;
72
+ }
73
+ function useFloating(options) {
74
+ if (options === void 0) {
75
+ options = {};
76
+ }
77
+ const {
78
+ placement = "bottom",
79
+ strategy = "absolute",
80
+ middleware = [],
81
+ platform,
82
+ elements: {
83
+ reference: externalReference,
84
+ floating: externalFloating
85
+ } = {},
86
+ transform = true,
87
+ whileElementsMounted,
88
+ open
89
+ } = options;
90
+ const [data, setData] = reactExports.useState({
91
+ x: 0,
92
+ y: 0,
93
+ strategy,
94
+ placement,
95
+ middlewareData: {},
96
+ isPositioned: false
97
+ });
98
+ const [latestMiddleware, setLatestMiddleware] = reactExports.useState(middleware);
99
+ if (!deepEqual(latestMiddleware, middleware)) {
100
+ setLatestMiddleware(middleware);
101
+ }
102
+ const [_reference, _setReference] = reactExports.useState(null);
103
+ const [_floating, _setFloating] = reactExports.useState(null);
104
+ const setReference = reactExports.useCallback((node) => {
105
+ if (node !== referenceRef.current) {
106
+ referenceRef.current = node;
107
+ _setReference(node);
108
+ }
109
+ }, []);
110
+ const setFloating = reactExports.useCallback((node) => {
111
+ if (node !== floatingRef.current) {
112
+ floatingRef.current = node;
113
+ _setFloating(node);
114
+ }
115
+ }, []);
116
+ const referenceEl = externalReference || _reference;
117
+ const floatingEl = externalFloating || _floating;
118
+ const referenceRef = reactExports.useRef(null);
119
+ const floatingRef = reactExports.useRef(null);
120
+ const dataRef = reactExports.useRef(data);
121
+ const hasWhileElementsMounted = whileElementsMounted != null;
122
+ const whileElementsMountedRef = useLatestRef(whileElementsMounted);
123
+ const platformRef = useLatestRef(platform);
124
+ const openRef = useLatestRef(open);
125
+ const update = reactExports.useCallback(() => {
126
+ if (!referenceRef.current || !floatingRef.current) {
127
+ return;
128
+ }
129
+ const config = {
130
+ placement,
131
+ strategy,
132
+ middleware: latestMiddleware
133
+ };
134
+ if (platformRef.current) {
135
+ config.platform = platformRef.current;
136
+ }
137
+ computePosition(referenceRef.current, floatingRef.current, config).then((data2) => {
138
+ const fullData = {
139
+ ...data2,
140
+ // The floating element's position may be recomputed while it's closed
141
+ // but still mounted (such as when transitioning out). To ensure
142
+ // `isPositioned` will be `false` initially on the next open, avoid
143
+ // setting it to `true` when `open === false` (must be specified).
144
+ isPositioned: openRef.current !== false
145
+ };
146
+ if (isMountedRef.current && !deepEqual(dataRef.current, fullData)) {
147
+ dataRef.current = fullData;
148
+ reactDomExports.flushSync(() => {
149
+ setData(fullData);
150
+ });
151
+ }
152
+ });
153
+ }, [latestMiddleware, placement, strategy, platformRef, openRef]);
154
+ index(() => {
155
+ if (open === false && dataRef.current.isPositioned) {
156
+ dataRef.current.isPositioned = false;
157
+ setData((data2) => ({
158
+ ...data2,
159
+ isPositioned: false
160
+ }));
161
+ }
162
+ }, [open]);
163
+ const isMountedRef = reactExports.useRef(false);
164
+ index(() => {
165
+ isMountedRef.current = true;
166
+ return () => {
167
+ isMountedRef.current = false;
168
+ };
169
+ }, []);
170
+ index(() => {
171
+ if (referenceEl) referenceRef.current = referenceEl;
172
+ if (floatingEl) floatingRef.current = floatingEl;
173
+ if (referenceEl && floatingEl) {
174
+ if (whileElementsMountedRef.current) {
175
+ return whileElementsMountedRef.current(referenceEl, floatingEl, update);
176
+ }
177
+ update();
178
+ }
179
+ }, [referenceEl, floatingEl, update, whileElementsMountedRef, hasWhileElementsMounted]);
180
+ const refs = reactExports.useMemo(() => ({
181
+ reference: referenceRef,
182
+ floating: floatingRef,
183
+ setReference,
184
+ setFloating
185
+ }), [setReference, setFloating]);
186
+ const elements = reactExports.useMemo(() => ({
187
+ reference: referenceEl,
188
+ floating: floatingEl
189
+ }), [referenceEl, floatingEl]);
190
+ const floatingStyles = reactExports.useMemo(() => {
191
+ const initialStyles = {
192
+ position: strategy,
193
+ left: 0,
194
+ top: 0
195
+ };
196
+ if (!elements.floating) {
197
+ return initialStyles;
198
+ }
199
+ const x = roundByDPR(elements.floating, data.x);
200
+ const y = roundByDPR(elements.floating, data.y);
201
+ if (transform) {
202
+ return {
203
+ ...initialStyles,
204
+ transform: "translate(" + x + "px, " + y + "px)",
205
+ ...getDPR(elements.floating) >= 1.5 && {
206
+ willChange: "transform"
207
+ }
208
+ };
209
+ }
210
+ return {
211
+ position: strategy,
212
+ left: x,
213
+ top: y
214
+ };
215
+ }, [strategy, transform, elements.floating, data.x, data.y]);
216
+ return reactExports.useMemo(() => ({
217
+ ...data,
218
+ update,
219
+ refs,
220
+ elements,
221
+ floatingStyles
222
+ }), [data, update, refs, elements, floatingStyles]);
223
+ }
224
+ const arrow$1 = (options) => {
225
+ function isRef(value) {
226
+ return {}.hasOwnProperty.call(value, "current");
227
+ }
228
+ return {
229
+ name: "arrow",
230
+ options,
231
+ fn(state) {
232
+ const {
233
+ element,
234
+ padding
235
+ } = typeof options === "function" ? options(state) : options;
236
+ if (element && isRef(element)) {
237
+ if (element.current != null) {
238
+ return arrow$2({
239
+ element: element.current,
240
+ padding
241
+ }).fn(state);
242
+ }
243
+ return {};
244
+ }
245
+ if (element) {
246
+ return arrow$2({
247
+ element,
248
+ padding
249
+ }).fn(state);
250
+ }
251
+ return {};
252
+ }
253
+ };
254
+ };
255
+ const offset = (options, deps) => ({
256
+ ...offset$1(options),
257
+ options: [options, deps]
258
+ });
259
+ const shift = (options, deps) => ({
260
+ ...shift$1(options),
261
+ options: [options, deps]
262
+ });
263
+ const limitShift = (options, deps) => ({
264
+ ...limitShift$1(options),
265
+ options: [options, deps]
266
+ });
267
+ const flip = (options, deps) => ({
268
+ ...flip$1(options),
269
+ options: [options, deps]
270
+ });
271
+ const size = (options, deps) => ({
272
+ ...size$1(options),
273
+ options: [options, deps]
274
+ });
275
+ const hide = (options, deps) => ({
276
+ ...hide$1(options),
277
+ options: [options, deps]
278
+ });
279
+ const arrow = (options, deps) => ({
280
+ ...arrow$1(options),
281
+ options: [options, deps]
282
+ });
283
+ export {
284
+ size as a,
285
+ arrow as b,
286
+ flip as f,
287
+ hide as h,
288
+ limitShift as l,
289
+ offset as o,
290
+ shift as s,
291
+ useFloating as u
292
+ };
@@ -0,0 +1,320 @@
1
+ const sides = ["top", "right", "bottom", "left"];
2
+ const min = Math.min;
3
+ const max = Math.max;
4
+ const round = Math.round;
5
+ const floor = Math.floor;
6
+ const createCoords = (v) => ({
7
+ x: v,
8
+ y: v
9
+ });
10
+ const oppositeSideMap = {
11
+ left: "right",
12
+ right: "left",
13
+ bottom: "top",
14
+ top: "bottom"
15
+ };
16
+ const oppositeAlignmentMap = {
17
+ start: "end",
18
+ end: "start"
19
+ };
20
+ function clamp(start, value, end) {
21
+ return max(start, min(value, end));
22
+ }
23
+ function evaluate(value, param) {
24
+ return typeof value === "function" ? value(param) : value;
25
+ }
26
+ function getSide(placement) {
27
+ return placement.split("-")[0];
28
+ }
29
+ function getAlignment(placement) {
30
+ return placement.split("-")[1];
31
+ }
32
+ function getOppositeAxis(axis) {
33
+ return axis === "x" ? "y" : "x";
34
+ }
35
+ function getAxisLength(axis) {
36
+ return axis === "y" ? "height" : "width";
37
+ }
38
+ const yAxisSides = /* @__PURE__ */ new Set(["top", "bottom"]);
39
+ function getSideAxis(placement) {
40
+ return yAxisSides.has(getSide(placement)) ? "y" : "x";
41
+ }
42
+ function getAlignmentAxis(placement) {
43
+ return getOppositeAxis(getSideAxis(placement));
44
+ }
45
+ function getAlignmentSides(placement, rects, rtl) {
46
+ if (rtl === void 0) {
47
+ rtl = false;
48
+ }
49
+ const alignment = getAlignment(placement);
50
+ const alignmentAxis = getAlignmentAxis(placement);
51
+ const length = getAxisLength(alignmentAxis);
52
+ let mainAlignmentSide = alignmentAxis === "x" ? alignment === (rtl ? "end" : "start") ? "right" : "left" : alignment === "start" ? "bottom" : "top";
53
+ if (rects.reference[length] > rects.floating[length]) {
54
+ mainAlignmentSide = getOppositePlacement(mainAlignmentSide);
55
+ }
56
+ return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];
57
+ }
58
+ function getExpandedPlacements(placement) {
59
+ const oppositePlacement = getOppositePlacement(placement);
60
+ return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];
61
+ }
62
+ function getOppositeAlignmentPlacement(placement) {
63
+ return placement.replace(/start|end/g, (alignment) => oppositeAlignmentMap[alignment]);
64
+ }
65
+ const lrPlacement = ["left", "right"];
66
+ const rlPlacement = ["right", "left"];
67
+ const tbPlacement = ["top", "bottom"];
68
+ const btPlacement = ["bottom", "top"];
69
+ function getSideList(side, isStart, rtl) {
70
+ switch (side) {
71
+ case "top":
72
+ case "bottom":
73
+ if (rtl) return isStart ? rlPlacement : lrPlacement;
74
+ return isStart ? lrPlacement : rlPlacement;
75
+ case "left":
76
+ case "right":
77
+ return isStart ? tbPlacement : btPlacement;
78
+ default:
79
+ return [];
80
+ }
81
+ }
82
+ function getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {
83
+ const alignment = getAlignment(placement);
84
+ let list = getSideList(getSide(placement), direction === "start", rtl);
85
+ if (alignment) {
86
+ list = list.map((side) => side + "-" + alignment);
87
+ if (flipAlignment) {
88
+ list = list.concat(list.map(getOppositeAlignmentPlacement));
89
+ }
90
+ }
91
+ return list;
92
+ }
93
+ function getOppositePlacement(placement) {
94
+ return placement.replace(/left|right|bottom|top/g, (side) => oppositeSideMap[side]);
95
+ }
96
+ function expandPaddingObject(padding) {
97
+ return {
98
+ top: 0,
99
+ right: 0,
100
+ bottom: 0,
101
+ left: 0,
102
+ ...padding
103
+ };
104
+ }
105
+ function getPaddingObject(padding) {
106
+ return typeof padding !== "number" ? expandPaddingObject(padding) : {
107
+ top: padding,
108
+ right: padding,
109
+ bottom: padding,
110
+ left: padding
111
+ };
112
+ }
113
+ function rectToClientRect(rect) {
114
+ const {
115
+ x,
116
+ y,
117
+ width,
118
+ height
119
+ } = rect;
120
+ return {
121
+ width,
122
+ height,
123
+ top: y,
124
+ left: x,
125
+ right: x + width,
126
+ bottom: y + height,
127
+ x,
128
+ y
129
+ };
130
+ }
131
+ function hasWindow() {
132
+ return typeof window !== "undefined";
133
+ }
134
+ function getNodeName(node) {
135
+ if (isNode(node)) {
136
+ return (node.nodeName || "").toLowerCase();
137
+ }
138
+ return "#document";
139
+ }
140
+ function getWindow(node) {
141
+ var _node$ownerDocument;
142
+ return (node == null || (_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;
143
+ }
144
+ function getDocumentElement(node) {
145
+ var _ref;
146
+ return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;
147
+ }
148
+ function isNode(value) {
149
+ if (!hasWindow()) {
150
+ return false;
151
+ }
152
+ return value instanceof Node || value instanceof getWindow(value).Node;
153
+ }
154
+ function isElement(value) {
155
+ if (!hasWindow()) {
156
+ return false;
157
+ }
158
+ return value instanceof Element || value instanceof getWindow(value).Element;
159
+ }
160
+ function isHTMLElement(value) {
161
+ if (!hasWindow()) {
162
+ return false;
163
+ }
164
+ return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;
165
+ }
166
+ function isShadowRoot(value) {
167
+ if (!hasWindow() || typeof ShadowRoot === "undefined") {
168
+ return false;
169
+ }
170
+ return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;
171
+ }
172
+ const invalidOverflowDisplayValues = /* @__PURE__ */ new Set(["inline", "contents"]);
173
+ function isOverflowElement(element) {
174
+ const {
175
+ overflow,
176
+ overflowX,
177
+ overflowY,
178
+ display
179
+ } = getComputedStyle(element);
180
+ return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !invalidOverflowDisplayValues.has(display);
181
+ }
182
+ const tableElements = /* @__PURE__ */ new Set(["table", "td", "th"]);
183
+ function isTableElement(element) {
184
+ return tableElements.has(getNodeName(element));
185
+ }
186
+ const topLayerSelectors = [":popover-open", ":modal"];
187
+ function isTopLayer(element) {
188
+ return topLayerSelectors.some((selector) => {
189
+ try {
190
+ return element.matches(selector);
191
+ } catch (_e) {
192
+ return false;
193
+ }
194
+ });
195
+ }
196
+ const transformProperties = ["transform", "translate", "scale", "rotate", "perspective"];
197
+ const willChangeValues = ["transform", "translate", "scale", "rotate", "perspective", "filter"];
198
+ const containValues = ["paint", "layout", "strict", "content"];
199
+ function isContainingBlock(elementOrCss) {
200
+ const webkit = isWebKit();
201
+ const css = isElement(elementOrCss) ? getComputedStyle(elementOrCss) : elementOrCss;
202
+ return transformProperties.some((value) => css[value] ? css[value] !== "none" : false) || (css.containerType ? css.containerType !== "normal" : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== "none" : false) || !webkit && (css.filter ? css.filter !== "none" : false) || willChangeValues.some((value) => (css.willChange || "").includes(value)) || containValues.some((value) => (css.contain || "").includes(value));
203
+ }
204
+ function getContainingBlock(element) {
205
+ let currentNode = getParentNode(element);
206
+ while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {
207
+ if (isContainingBlock(currentNode)) {
208
+ return currentNode;
209
+ } else if (isTopLayer(currentNode)) {
210
+ return null;
211
+ }
212
+ currentNode = getParentNode(currentNode);
213
+ }
214
+ return null;
215
+ }
216
+ function isWebKit() {
217
+ if (typeof CSS === "undefined" || !CSS.supports) return false;
218
+ return CSS.supports("-webkit-backdrop-filter", "none");
219
+ }
220
+ const lastTraversableNodeNames = /* @__PURE__ */ new Set(["html", "body", "#document"]);
221
+ function isLastTraversableNode(node) {
222
+ return lastTraversableNodeNames.has(getNodeName(node));
223
+ }
224
+ function getComputedStyle(element) {
225
+ return getWindow(element).getComputedStyle(element);
226
+ }
227
+ function getNodeScroll(element) {
228
+ if (isElement(element)) {
229
+ return {
230
+ scrollLeft: element.scrollLeft,
231
+ scrollTop: element.scrollTop
232
+ };
233
+ }
234
+ return {
235
+ scrollLeft: element.scrollX,
236
+ scrollTop: element.scrollY
237
+ };
238
+ }
239
+ function getParentNode(node) {
240
+ if (getNodeName(node) === "html") {
241
+ return node;
242
+ }
243
+ const result = (
244
+ // Step into the shadow DOM of the parent of a slotted node.
245
+ node.assignedSlot || // DOM Element detected.
246
+ node.parentNode || // ShadowRoot detected.
247
+ isShadowRoot(node) && node.host || // Fallback.
248
+ getDocumentElement(node)
249
+ );
250
+ return isShadowRoot(result) ? result.host : result;
251
+ }
252
+ function getNearestOverflowAncestor(node) {
253
+ const parentNode = getParentNode(node);
254
+ if (isLastTraversableNode(parentNode)) {
255
+ return node.ownerDocument ? node.ownerDocument.body : node.body;
256
+ }
257
+ if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {
258
+ return parentNode;
259
+ }
260
+ return getNearestOverflowAncestor(parentNode);
261
+ }
262
+ function getOverflowAncestors(node, list, traverseIframes) {
263
+ var _node$ownerDocument2;
264
+ if (list === void 0) {
265
+ list = [];
266
+ }
267
+ if (traverseIframes === void 0) {
268
+ traverseIframes = true;
269
+ }
270
+ const scrollableAncestor = getNearestOverflowAncestor(node);
271
+ const isBody = scrollableAncestor === ((_node$ownerDocument2 = node.ownerDocument) == null ? void 0 : _node$ownerDocument2.body);
272
+ const win = getWindow(scrollableAncestor);
273
+ if (isBody) {
274
+ const frameElement = getFrameElement(win);
275
+ return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], frameElement && traverseIframes ? getOverflowAncestors(frameElement) : []);
276
+ }
277
+ return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));
278
+ }
279
+ function getFrameElement(win) {
280
+ return win.parent && Object.getPrototypeOf(win.parent) ? win.frameElement : null;
281
+ }
282
+ export {
283
+ getParentNode as A,
284
+ isLastTraversableNode as B,
285
+ isTableElement as C,
286
+ isContainingBlock as D,
287
+ getContainingBlock as E,
288
+ getNodeName as F,
289
+ isOverflowElement as G,
290
+ getNodeScroll as H,
291
+ getFrameElement as I,
292
+ floor as J,
293
+ isWebKit as K,
294
+ getAlignmentAxis as a,
295
+ getSide as b,
296
+ getAlignment as c,
297
+ clamp as d,
298
+ evaluate as e,
299
+ getOppositePlacement as f,
300
+ getSideAxis as g,
301
+ getExpandedPlacements as h,
302
+ getOppositeAxisPlacements as i,
303
+ getAlignmentSides as j,
304
+ max as k,
305
+ getAxisLength as l,
306
+ min as m,
307
+ getPaddingObject as n,
308
+ getOppositeAxis as o,
309
+ isElement as p,
310
+ getDocumentElement as q,
311
+ rectToClientRect as r,
312
+ sides as s,
313
+ getOverflowAncestors as t,
314
+ getComputedStyle as u,
315
+ isHTMLElement as v,
316
+ createCoords as w,
317
+ round as x,
318
+ getWindow as y,
319
+ isTopLayer as z
320
+ };
@@ -0,0 +1,6 @@
1
+ function clamp(value, [min, max]) {
2
+ return Math.min(max, Math.max(min, value));
3
+ }
4
+ export {
5
+ clamp as c
6
+ };
@@ -0,0 +1,11 @@
1
+ function composeEventHandlers(originalEventHandler, ourEventHandler, { checkForDefaultPrevented = true } = {}) {
2
+ return function handleEvent(event) {
3
+ originalEventHandler?.(event);
4
+ if (checkForDefaultPrevented === false || !event.defaultPrevented) {
5
+ return ourEventHandler?.(event);
6
+ }
7
+ };
8
+ }
9
+ export {
10
+ composeEventHandlers as c
11
+ };
@@ -0,0 +1,23 @@
1
+ import { r as reactExports, j as jsxRuntimeExports } from "../react.mjs";
2
+ import { P as Primitive } from "./react-primitive.mjs";
3
+ var NAME = "Arrow";
4
+ var Arrow = reactExports.forwardRef((props, forwardedRef) => {
5
+ const { children, width = 10, height = 5, ...arrowProps } = props;
6
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(
7
+ Primitive.svg,
8
+ {
9
+ ...arrowProps,
10
+ ref: forwardedRef,
11
+ width,
12
+ height,
13
+ viewBox: "0 0 30 10",
14
+ preserveAspectRatio: "none",
15
+ children: props.asChild ? children : /* @__PURE__ */ jsxRuntimeExports.jsx("polygon", { points: "0,0 30,0 15,10" })
16
+ }
17
+ );
18
+ });
19
+ Arrow.displayName = NAME;
20
+ var Root = Arrow;
21
+ export {
22
+ Root as R
23
+ };