zcw-shared 2.25.0 → 2.27.0

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 (356) hide show
  1. package/README.md +73 -13
  2. package/dist/constants/agentAvatar3d.d.ts +15 -0
  3. package/dist/constants/agentAvatar3d.js +64 -0
  4. package/dist/constants/agentAvatar3d.js.map +1 -0
  5. package/dist/constants/agentAvatar3dModular.d.ts +34 -0
  6. package/dist/constants/agentAvatar3dModular.js +93 -0
  7. package/dist/constants/agentAvatar3dModular.js.map +1 -0
  8. package/dist/constants/agentPresence3dLabels.d.ts +11 -0
  9. package/dist/constants/agentPresence3dLabels.js +12 -0
  10. package/dist/constants/agentPresence3dLabels.js.map +1 -0
  11. package/dist/constants/aiApiRoutes.d.ts +8 -0
  12. package/dist/constants/aiApiRoutes.js +23 -0
  13. package/dist/constants/aiApiRoutes.js.map +1 -0
  14. package/dist/functions/ai/agentAvatar3dArkitMorph.d.ts +14 -0
  15. package/dist/functions/ai/agentAvatar3dArkitMorph.js +149 -0
  16. package/dist/functions/ai/agentAvatar3dArkitMorph.js.map +1 -0
  17. package/dist/functions/ai/agentAvatar3dCapabilities.d.ts +44 -0
  18. package/dist/functions/ai/agentAvatar3dCapabilities.js +121 -0
  19. package/dist/functions/ai/agentAvatar3dCapabilities.js.map +1 -0
  20. package/dist/functions/ai/agentAvatar3dFacePresets.d.ts +13 -0
  21. package/dist/functions/ai/agentAvatar3dFacePresets.js +79 -0
  22. package/dist/functions/ai/agentAvatar3dFacePresets.js.map +1 -0
  23. package/dist/functions/ai/agentAvatar3dMaterialTint.d.ts +7 -0
  24. package/dist/functions/ai/agentAvatar3dMaterialTint.js +45 -0
  25. package/dist/functions/ai/agentAvatar3dMaterialTint.js.map +1 -0
  26. package/dist/functions/ai/agentAvatar3dMorphCatalog.d.ts +18 -0
  27. package/dist/functions/ai/agentAvatar3dMorphCatalog.js +222 -0
  28. package/dist/functions/ai/agentAvatar3dMorphCatalog.js.map +1 -0
  29. package/dist/functions/ai/applyAiAgentAvatar3dFace.d.ts +23 -0
  30. package/dist/functions/ai/applyAiAgentAvatar3dFace.js +140 -0
  31. package/dist/functions/ai/applyAiAgentAvatar3dFace.js.map +1 -0
  32. package/dist/functions/ai/buildResolvedLlmToolsList.d.ts +0 -1
  33. package/dist/functions/ai/buildResolvedLlmToolsList.js +0 -1
  34. package/dist/functions/ai/buildResolvedLlmToolsList.js.map +1 -1
  35. package/dist/functions/ai/getEffectiveAvatar3dMorphWeights.d.ts +3 -0
  36. package/dist/functions/ai/getEffectiveAvatar3dMorphWeights.js +28 -0
  37. package/dist/functions/ai/getEffectiveAvatar3dMorphWeights.js.map +1 -0
  38. package/dist/functions/ai/normalizeAiAgentAvatar3d.d.ts +4 -0
  39. package/dist/functions/ai/normalizeAiAgentAvatar3d.js +57 -0
  40. package/dist/functions/ai/normalizeAiAgentAvatar3d.js.map +1 -0
  41. package/dist/functions/ai/normalizeAiAgentAvatar3dFace.d.ts +4 -0
  42. package/dist/functions/ai/normalizeAiAgentAvatar3dFace.js +84 -0
  43. package/dist/functions/ai/normalizeAiAgentAvatar3dFace.js.map +1 -0
  44. package/dist/functions/ai/normalizeAiAgentAvatar3dModular.d.ts +14 -0
  45. package/dist/functions/ai/normalizeAiAgentAvatar3dModular.js +92 -0
  46. package/dist/functions/ai/normalizeAiAgentAvatar3dModular.js.map +1 -0
  47. package/dist/functions/ai/proceduralHumanoidMorph.d.ts +5 -0
  48. package/dist/functions/ai/proceduralHumanoidMorph.js +9 -0
  49. package/dist/functions/ai/proceduralHumanoidMorph.js.map +1 -0
  50. package/dist/functions/ai/randomizeAgentAvatar3dAppearance.d.ts +9 -0
  51. package/dist/functions/ai/randomizeAgentAvatar3dAppearance.js +108 -0
  52. package/dist/functions/ai/randomizeAgentAvatar3dAppearance.js.map +1 -0
  53. package/dist/functions/ai/randomizeModularAvatar3dAppearance.d.ts +7 -0
  54. package/dist/functions/ai/randomizeModularAvatar3dAppearance.js +60 -0
  55. package/dist/functions/ai/randomizeModularAvatar3dAppearance.js.map +1 -0
  56. package/dist/functions/ai/resolveAvatar3dModular.d.ts +4 -0
  57. package/dist/functions/ai/resolveAvatar3dModular.js +22 -0
  58. package/dist/functions/ai/resolveAvatar3dModular.js.map +1 -0
  59. package/dist/functions/api/createApiClient.d.ts +1 -6
  60. package/dist/functions/api/createApiClient.js +1 -55
  61. package/dist/functions/api/createApiClient.js.map +1 -1
  62. package/dist/functions/api/createPublicAuthRequest.js +3 -1
  63. package/dist/functions/api/createPublicAuthRequest.js.map +1 -1
  64. package/dist/functions/array/filterListExcludingIds.d.ts +0 -1
  65. package/dist/functions/array/filterListExcludingIds.js +0 -1
  66. package/dist/functions/array/filterListExcludingIds.js.map +1 -1
  67. package/dist/functions/browser/readBrowserAppendToBodyDeps.d.ts +3 -0
  68. package/dist/functions/browser/readBrowserAppendToBodyDeps.js +8 -0
  69. package/dist/functions/browser/readBrowserAppendToBodyDeps.js.map +1 -0
  70. package/dist/functions/browser/readBrowserDetectDeps.d.ts +2 -0
  71. package/dist/functions/browser/readBrowserDetectDeps.js +8 -5
  72. package/dist/functions/browser/readBrowserDetectDeps.js.map +1 -1
  73. package/dist/functions/browser/readBrowserHost.d.ts +60 -0
  74. package/dist/functions/browser/readBrowserHost.js +98 -0
  75. package/dist/functions/browser/readBrowserHost.js.map +1 -0
  76. package/dist/functions/browser/readBrowserImageCompressDeps.d.ts +2 -0
  77. package/dist/functions/browser/readBrowserImageCompressDeps.js +20 -11
  78. package/dist/functions/browser/readBrowserImageCompressDeps.js.map +1 -1
  79. package/dist/functions/browser/readBrowserLassoSelectionEnvironment.d.ts +4 -0
  80. package/dist/functions/browser/readBrowserLassoSelectionEnvironment.js +23 -0
  81. package/dist/functions/browser/readBrowserLassoSelectionEnvironment.js.map +1 -0
  82. package/dist/functions/browser/readBrowserVueHookDeps.d.ts +14 -0
  83. package/dist/functions/browser/readBrowserVueHookDeps.js +103 -0
  84. package/dist/functions/browser/readBrowserVueHookDeps.js.map +1 -0
  85. package/dist/functions/browser/requireBrowserLocalStorage.d.ts +2 -1
  86. package/dist/functions/browser/requireBrowserLocalStorage.js +3 -6
  87. package/dist/functions/browser/requireBrowserLocalStorage.js.map +1 -1
  88. package/dist/functions/chat/chatAppearancePrefs.d.ts +6 -1
  89. package/dist/functions/chat/chatAppearancePrefs.js +6 -4
  90. package/dist/functions/chat/chatAppearancePrefs.js.map +1 -1
  91. package/dist/functions/chat/chatMorePageConfig.js +8 -0
  92. package/dist/functions/chat/chatMorePageConfig.js.map +1 -1
  93. package/dist/functions/chat/chatShellTabConfig.d.ts +4 -1
  94. package/dist/functions/chat/chatShellTabConfig.js +14 -2
  95. package/dist/functions/chat/chatShellTabConfig.js.map +1 -1
  96. package/dist/functions/chat/createBrowserChatAppearanceModeAccess.d.ts +2 -1
  97. package/dist/functions/chat/createBrowserChatAppearanceModeAccess.js +8 -11
  98. package/dist/functions/chat/createBrowserChatAppearanceModeAccess.js.map +1 -1
  99. package/dist/functions/chat/createBrowserChatDownloadDirectoryPrefAccess.d.ts +2 -1
  100. package/dist/functions/chat/createBrowserChatDownloadDirectoryPrefAccess.js +12 -12
  101. package/dist/functions/chat/createBrowserChatDownloadDirectoryPrefAccess.js.map +1 -1
  102. package/dist/functions/chat/createBrowserChatFileMessageLocalPathAccess.d.ts +2 -1
  103. package/dist/functions/chat/createBrowserChatFileMessageLocalPathAccess.js +7 -14
  104. package/dist/functions/chat/createBrowserChatFileMessageLocalPathAccess.js.map +1 -1
  105. package/dist/functions/chat/createBrowserChatRootFontSizeAccess.d.ts +2 -1
  106. package/dist/functions/chat/createBrowserChatRootFontSizeAccess.js +13 -13
  107. package/dist/functions/chat/createBrowserChatRootFontSizeAccess.js.map +1 -1
  108. package/dist/functions/cloudDisk/buildCloudDiskListTabResult.d.ts +2 -2
  109. package/dist/functions/cloudDisk/collectElementIdsInContentLassoBox.d.ts +1 -19
  110. package/dist/functions/cloudDisk/collectElementIdsInContentLassoBox.js +1 -34
  111. package/dist/functions/cloudDisk/collectElementIdsInContentLassoBox.js.map +1 -1
  112. package/dist/functions/cloudDisk/createBrowserCloudDiskPrivacyStorageAccess.d.ts +2 -1
  113. package/dist/functions/cloudDisk/createBrowserCloudDiskPrivacyStorageAccess.js +11 -19
  114. package/dist/functions/cloudDisk/createBrowserCloudDiskPrivacyStorageAccess.js.map +1 -1
  115. package/dist/functions/cloudDisk/createBrowserCloudDiskQuickAccessStorageAccess.d.ts +2 -1
  116. package/dist/functions/cloudDisk/createBrowserCloudDiskQuickAccessStorageAccess.js +7 -11
  117. package/dist/functions/cloudDisk/createBrowserCloudDiskQuickAccessStorageAccess.js.map +1 -1
  118. package/dist/functions/cloudDisk/extractCloudDiskPrivateFolderData.d.ts +3 -3
  119. package/dist/functions/cloudDisk/extractCloudDiskPrivateFolderData.js.map +1 -1
  120. package/dist/functions/cloudDisk/mapCloudDiskFileToNode.d.ts +2 -2
  121. package/dist/functions/cloudDisk/mapCloudDiskFileToNode.js.map +1 -1
  122. package/dist/functions/cloudDisk/sortCloudDiskNodes.js +4 -4
  123. package/dist/functions/cloudDisk/sortCloudDiskNodes.js.map +1 -1
  124. package/dist/functions/dom/appTheme.d.ts +10 -0
  125. package/dist/functions/dom/appTheme.js +11 -0
  126. package/dist/functions/dom/appTheme.js.map +1 -0
  127. package/dist/functions/dom/copyHtmlAndPlainToClipboard.d.ts +3 -1
  128. package/dist/functions/dom/copyHtmlAndPlainToClipboard.js +14 -10
  129. package/dist/functions/dom/copyHtmlAndPlainToClipboard.js.map +1 -1
  130. package/dist/functions/dom/copyTextToClipboard.d.ts +3 -1
  131. package/dist/functions/dom/copyTextToClipboard.js +5 -4
  132. package/dist/functions/dom/copyTextToClipboard.js.map +1 -1
  133. package/dist/functions/dom/createTooltipLongPressHandlers.d.ts +24 -0
  134. package/dist/functions/dom/createTooltipLongPressHandlers.js +84 -0
  135. package/dist/functions/dom/createTooltipLongPressHandlers.js.map +1 -0
  136. package/dist/functions/dom/domDocumentSelection.d.ts +4 -0
  137. package/dist/functions/dom/domDocumentSelection.js +39 -0
  138. package/dist/functions/dom/domDocumentSelection.js.map +1 -0
  139. package/dist/functions/dom/domSelectionInElement.d.ts +4 -3
  140. package/dist/functions/dom/domSelectionInElement.js +10 -10
  141. package/dist/functions/dom/domSelectionInElement.js.map +1 -1
  142. package/dist/functions/dom/fetchBlobFromUrl.d.ts +7 -1
  143. package/dist/functions/dom/fetchBlobFromUrl.js +7 -5
  144. package/dist/functions/dom/fetchBlobFromUrl.js.map +1 -1
  145. package/dist/functions/dom/fileDrag.d.ts +11 -0
  146. package/dist/functions/dom/fileDrag.js +14 -0
  147. package/dist/functions/dom/fileDrag.js.map +1 -0
  148. package/dist/functions/dom/imageBlobToPng.d.ts +5 -4
  149. package/dist/functions/dom/imageBlobToPng.js +23 -16
  150. package/dist/functions/dom/imageBlobToPng.js.map +1 -1
  151. package/dist/functions/dom/lassoSelection.d.ts +84 -0
  152. package/dist/functions/dom/lassoSelection.js +199 -0
  153. package/dist/functions/dom/lassoSelection.js.map +1 -0
  154. package/dist/functions/dom/readBrowserDomDeps.d.ts +41 -0
  155. package/dist/functions/dom/readBrowserDomDeps.js +65 -0
  156. package/dist/functions/dom/readBrowserDomDeps.js.map +1 -0
  157. package/dist/functions/dom/resolveOverlayTeleportParent.d.ts +7 -0
  158. package/dist/functions/dom/resolveOverlayTeleportParent.js +11 -0
  159. package/dist/functions/dom/resolveOverlayTeleportParent.js.map +1 -0
  160. package/dist/functions/dom/safeBrowserDom.d.ts +17 -0
  161. package/dist/functions/dom/safeBrowserDom.js +42 -0
  162. package/dist/functions/dom/safeBrowserDom.js.map +1 -0
  163. package/dist/functions/dom/writeImageBlobToClipboard.d.ts +5 -1
  164. package/dist/functions/dom/writeImageBlobToClipboard.js +8 -5
  165. package/dist/functions/dom/writeImageBlobToClipboard.js.map +1 -1
  166. package/dist/functions/download/createBrowserDownloadDepsFromGlobalThis.d.ts +2 -0
  167. package/dist/functions/download/createBrowserDownloadDepsFromGlobalThis.js +9 -10
  168. package/dist/functions/download/createBrowserDownloadDepsFromGlobalThis.js.map +1 -1
  169. package/dist/functions/file/isJpegImageFile.d.ts +0 -1
  170. package/dist/functions/file/isJpegImageFile.js +0 -1
  171. package/dist/functions/file/isJpegImageFile.js.map +1 -1
  172. package/dist/functions/im/assignChatConversationToWindowLocation.d.ts +5 -1
  173. package/dist/functions/im/assignChatConversationToWindowLocation.js +5 -4
  174. package/dist/functions/im/assignChatConversationToWindowLocation.js.map +1 -1
  175. package/dist/functions/im/copyUsingClonedRangesOrMessagePlainText.d.ts +5 -1
  176. package/dist/functions/im/copyUsingClonedRangesOrMessagePlainText.js +11 -8
  177. package/dist/functions/im/copyUsingClonedRangesOrMessagePlainText.js.map +1 -1
  178. package/dist/functions/im/executeCopyChatMessageContent.d.ts +4 -1
  179. package/dist/functions/im/executeCopyChatMessageContent.js +6 -3
  180. package/dist/functions/im/executeCopyChatMessageContent.js.map +1 -1
  181. package/dist/functions/im/forwardBundleItemToChatMessage.js +9 -7
  182. package/dist/functions/im/forwardBundleItemToChatMessage.js.map +1 -1
  183. package/dist/functions/im/imBubbleSelectionClipboard.d.ts +2 -1
  184. package/dist/functions/im/imBubbleSelectionClipboard.js +10 -11
  185. package/dist/functions/im/imBubbleSelectionClipboard.js.map +1 -1
  186. package/dist/functions/im/imChatMessageCopyPlain.js +2 -2
  187. package/dist/functions/im/imChatMessageCopyPlain.js.map +1 -1
  188. package/dist/functions/im/imChatMessagePagination.d.ts +0 -1
  189. package/dist/functions/im/imChatMessagePagination.js +0 -1
  190. package/dist/functions/im/imChatMessagePagination.js.map +1 -1
  191. package/dist/functions/im/imForwardBundleTitle.js +2 -2
  192. package/dist/functions/im/imForwardBundleTitle.js.map +1 -1
  193. package/dist/functions/im/imForwardSnapshot.js +2 -2
  194. package/dist/functions/im/imForwardSnapshot.js.map +1 -1
  195. package/dist/functions/im/imImagePixelExtra.d.ts +0 -1
  196. package/dist/functions/im/imImagePixelExtra.js +0 -1
  197. package/dist/functions/im/imImagePixelExtra.js.map +1 -1
  198. package/dist/functions/im/imMessageNormalize.d.ts +2 -2
  199. package/dist/functions/im/imOrchestrationTypes.d.ts +5 -0
  200. package/dist/functions/im/imOrchestrationTypes.js +2 -0
  201. package/dist/functions/im/imOrchestrationTypes.js.map +1 -0
  202. package/dist/functions/im/imOutboundMediaHelpers.d.ts +7 -1
  203. package/dist/functions/im/imOutboundMediaHelpers.js +15 -7
  204. package/dist/functions/im/imOutboundMediaHelpers.js.map +1 -1
  205. package/dist/functions/im/imPlaceholderSnippet.d.ts +1 -1
  206. package/dist/functions/im/imPlaceholderSnippet.js +1 -1
  207. package/dist/functions/im/imPlaceholderSnippet.js.map +1 -1
  208. package/dist/functions/im/index.d.ts +2 -2
  209. package/dist/functions/im/index.js +2 -2
  210. package/dist/functions/im/index.js.map +1 -1
  211. package/dist/functions/im/newImClientMessageIdFromBrowser.d.ts +4 -3
  212. package/dist/functions/im/newImClientMessageIdFromBrowser.js +7 -15
  213. package/dist/functions/im/newImClientMessageIdFromBrowser.js.map +1 -1
  214. package/dist/functions/number/clampIndex.d.ts +1 -0
  215. package/dist/functions/number/clampIndex.js +6 -0
  216. package/dist/functions/number/clampIndex.js.map +1 -0
  217. package/dist/functions/qiankun/bootstrapQiankunDomPatch.d.ts +1 -0
  218. package/dist/functions/qiankun/bootstrapQiankunDomPatch.js +165 -0
  219. package/dist/functions/qiankun/bootstrapQiankunDomPatch.js.map +1 -0
  220. package/dist/functions/qiankun/createQiankunVueApp.d.ts +2 -0
  221. package/dist/functions/qiankun/createQiankunVueApp.js +4 -1
  222. package/dist/functions/qiankun/createQiankunVueApp.js.map +1 -1
  223. package/dist/functions/release/capacitorOtaReleaseManifestFetch.d.ts +2 -1
  224. package/dist/functions/release/capacitorOtaReleaseManifestFetch.js +3 -2
  225. package/dist/functions/release/capacitorOtaReleaseManifestFetch.js.map +1 -1
  226. package/dist/functions/release/capacitorReleaseManifestFetch.d.ts +2 -1
  227. package/dist/functions/release/capacitorReleaseManifestFetch.js +3 -2
  228. package/dist/functions/release/capacitorReleaseManifestFetch.js.map +1 -1
  229. package/dist/functions/release/capacitorUpdateDefaults.d.ts +4 -0
  230. package/dist/functions/release/capacitorUpdateDefaults.js +10 -10
  231. package/dist/functions/release/capacitorUpdateDefaults.js.map +1 -1
  232. package/dist/functions/release/createCapacitorUpdateFetchDeps.js +13 -7
  233. package/dist/functions/release/createCapacitorUpdateFetchDeps.js.map +1 -1
  234. package/dist/functions/release/createReleaseManifestFetchDeps.d.ts +1 -2
  235. package/dist/functions/release/createReleaseManifestFetchDeps.js +5 -10
  236. package/dist/functions/release/createReleaseManifestFetchDeps.js.map +1 -1
  237. package/dist/functions/release/electronReleaseManifestFetch.d.ts +4 -1
  238. package/dist/functions/release/electronReleaseManifestFetch.js +12 -7
  239. package/dist/functions/release/electronReleaseManifestFetch.js.map +1 -1
  240. package/dist/functions/release/isCapacitorWebViewOnViteDevServer.js +4 -4
  241. package/dist/functions/release/isCapacitorWebViewOnViteDevServer.js.map +1 -1
  242. package/dist/functions/release/readBrowserReleaseDeps.d.ts +14 -0
  243. package/dist/functions/release/readBrowserReleaseDeps.js +19 -0
  244. package/dist/functions/release/readBrowserReleaseDeps.js.map +1 -0
  245. package/dist/functions/release/releaseUpdateDismissSession.d.ts +3 -2
  246. package/dist/functions/release/releaseUpdateDismissSession.js +10 -7
  247. package/dist/functions/release/releaseUpdateDismissSession.js.map +1 -1
  248. package/dist/functions/release/verifyHttpContentLength.d.ts +2 -0
  249. package/dist/functions/release/verifyHttpContentLength.js +4 -1
  250. package/dist/functions/release/verifyHttpContentLength.js.map +1 -1
  251. package/dist/functions/storage/createBrowserSessionStorageKit.d.ts +12 -0
  252. package/dist/functions/storage/createBrowserSessionStorageKit.js +16 -0
  253. package/dist/functions/storage/createBrowserSessionStorageKit.js.map +1 -0
  254. package/dist/functions/storage/createBrowserStringStorageKit.d.ts +12 -0
  255. package/dist/functions/storage/createBrowserStringStorageKit.js +14 -0
  256. package/dist/functions/storage/createBrowserStringStorageKit.js.map +1 -0
  257. package/dist/functions/vue-router/normalizeWebHistoryBase.d.ts +1 -0
  258. package/dist/functions/vue-router/normalizeWebHistoryBase.js +19 -0
  259. package/dist/functions/vue-router/normalizeWebHistoryBase.js.map +1 -0
  260. package/dist/functions/vue-router/pushInAppRoute.d.ts +6 -0
  261. package/dist/functions/vue-router/pushInAppRoute.js +13 -0
  262. package/dist/functions/vue-router/pushInAppRoute.js.map +1 -0
  263. package/dist/functions/wallet/createBrowserWalletPayPasswordSessionAccess.d.ts +2 -1
  264. package/dist/functions/wallet/createBrowserWalletPayPasswordSessionAccess.js +5 -9
  265. package/dist/functions/wallet/createBrowserWalletPayPasswordSessionAccess.js.map +1 -1
  266. package/dist/permissions/catalog.d.ts +6 -0
  267. package/dist/permissions/catalog.js +33 -0
  268. package/dist/permissions/catalog.js.map +1 -1
  269. package/dist/schemas/auth.schema.d.ts +11 -358
  270. package/dist/schemas/auth.schema.js +5 -35
  271. package/dist/schemas/auth.schema.js.map +1 -1
  272. package/dist/schemas/video.schema.d.ts +98 -156
  273. package/dist/schemas/video.schema.js +9 -13
  274. package/dist/schemas/video.schema.js.map +1 -1
  275. package/dist/vue-hooks/browser/useBrowserFileObjectUrlMap.d.ts +7 -0
  276. package/dist/vue-hooks/browser/useBrowserFileObjectUrlMap.js +7 -0
  277. package/dist/vue-hooks/browser/useBrowserFileObjectUrlMap.js.map +1 -0
  278. package/dist/vue-hooks/browser/useFileObjectUrlMap.d.ts +19 -0
  279. package/dist/vue-hooks/browser/useFileObjectUrlMap.js +46 -0
  280. package/dist/vue-hooks/browser/useFileObjectUrlMap.js.map +1 -0
  281. package/dist/vue-hooks/dom/useBrowserFocusVisible.d.ts +9 -0
  282. package/dist/vue-hooks/dom/useBrowserFocusVisible.js +8 -0
  283. package/dist/vue-hooks/dom/useBrowserFocusVisible.js.map +1 -0
  284. package/dist/vue-hooks/dom/useBrowserLassoSelection.d.ts +16 -0
  285. package/dist/vue-hooks/dom/useBrowserLassoSelection.js +7 -0
  286. package/dist/vue-hooks/dom/useBrowserLassoSelection.js.map +1 -0
  287. package/dist/vue-hooks/dom/useFocusVisible.d.ts +17 -0
  288. package/dist/vue-hooks/dom/useFocusVisible.js +53 -0
  289. package/dist/vue-hooks/dom/useFocusVisible.js.map +1 -0
  290. package/dist/vue-hooks/dom/useLassoSelection.d.ts +53 -0
  291. package/dist/vue-hooks/dom/useLassoSelection.js +245 -0
  292. package/dist/vue-hooks/dom/useLassoSelection.js.map +1 -0
  293. package/dist/vue-hooks/time/useBrowserDelayedTrue.d.ts +2 -0
  294. package/dist/vue-hooks/time/useBrowserDelayedTrue.js +7 -0
  295. package/dist/vue-hooks/time/useBrowserDelayedTrue.js.map +1 -0
  296. package/dist/vue-hooks/time/useDelayedTrue.d.ts +11 -0
  297. package/dist/vue-hooks/time/useDelayedTrue.js +29 -0
  298. package/dist/vue-hooks/time/useDelayedTrue.js.map +1 -0
  299. package/package.json +55 -2
  300. package/types/address.d.ts +4 -35
  301. package/types/ai-admin.d.ts +33 -0
  302. package/types/ai-agent.d.ts +43 -0
  303. package/types/ai-chat.d.ts +39 -23
  304. package/types/api-contract-helpers.d.ts +24 -0
  305. package/types/api-contract.d.ts +6 -0
  306. package/types/auth.d.ts +15 -27
  307. package/types/cloud-disk.d.ts +38 -50
  308. package/types/community.d.ts +7 -0
  309. package/types/component-material.d.ts +40 -0
  310. package/types/im-ai-agent.d.ts +1 -1
  311. package/types/im-api.d.ts +12 -8
  312. package/types/im-call.d.ts +4 -3
  313. package/types/lowcode.d.ts +26 -0
  314. package/types/music.d.ts +4 -30
  315. package/types/notification.d.ts +4 -34
  316. package/types/openapi.d.ts +25040 -0
  317. package/types/order.d.ts +5 -57
  318. package/types/org.d.ts +13 -0
  319. package/types/oss.d.ts +4 -23
  320. package/types/page-config.d.ts +14 -14
  321. package/types/payment.d.ts +10 -20
  322. package/types/performance.d.ts +4 -11
  323. package/types/product.d.ts +5 -37
  324. package/types/rbac.d.ts +10 -34
  325. package/types/recharge.d.ts +11 -0
  326. package/types/report.d.ts +7 -25
  327. package/types/review.d.ts +11 -13
  328. package/types/sticker-pack.d.ts +10 -25
  329. package/types/user.d.ts +11 -33
  330. package/types/video.d.ts +15 -66
  331. package/types/vue.d.ts +9 -1
  332. package/dist/functions/file/extractVideoCover.d.ts +0 -6
  333. package/dist/functions/file/extractVideoCover.js +0 -57
  334. package/dist/functions/file/extractVideoCover.js.map +0 -1
  335. package/dist/functions/im/imInlineContentTokens.d.ts +0 -49
  336. package/dist/functions/im/imInlineContentTokens.js +0 -185
  337. package/dist/functions/im/imInlineContentTokens.js.map +0 -1
  338. package/dist/functions/im/materializeUploadFileFromMediaBlobRecord.d.ts +0 -7
  339. package/dist/functions/im/materializeUploadFileFromMediaBlobRecord.js +0 -10
  340. package/dist/functions/im/materializeUploadFileFromMediaBlobRecord.js.map +0 -1
  341. package/dist/functions/im/parseImMentionSegments.d.ts +0 -19
  342. package/dist/functions/im/parseImMentionSegments.js +0 -92
  343. package/dist/functions/im/parseImMentionSegments.js.map +0 -1
  344. package/dist/functions/image/compressImageToWidth.d.ts +0 -12
  345. package/dist/functions/image/compressImageToWidth.js +0 -44
  346. package/dist/functions/image/compressImageToWidth.js.map +0 -1
  347. package/dist/functions/image/compressJpgToTargetSize.d.ts +0 -13
  348. package/dist/functions/image/compressJpgToTargetSize.js +0 -132
  349. package/dist/functions/image/compressJpgToTargetSize.js.map +0 -1
  350. package/dist/functions/image/compressToTargetSize.d.ts +0 -13
  351. package/dist/functions/image/compressToTargetSizeJpg.d.ts +0 -13
  352. package/dist/functions/image/compressToTargetSizeJpg.js +0 -132
  353. package/dist/functions/image/compressToTargetSizeJpg.js.map +0 -1
  354. package/dist/permissions/allPermissionCode.js.map +0 -1
  355. package/dist/permissions/definePermissionGroup.js.map +0 -1
  356. package/dist/permissions/groups.js.map +0 -1
@@ -0,0 +1,53 @@
1
+ let isKeyboardUser = false;
2
+ let mouseDownTime = 0;
3
+ let listenerCount = 0;
4
+ const handleKeyDown = (event) => {
5
+ if (event.key === 'Tab') {
6
+ isKeyboardUser = true;
7
+ }
8
+ };
9
+ const handleMouseDown = () => {
10
+ mouseDownTime = Date.now();
11
+ isKeyboardUser = false;
12
+ };
13
+ const handleTouchStart = () => {
14
+ isKeyboardUser = false;
15
+ };
16
+ export const shouldShowFocus = (event) => {
17
+ const timeSinceMouseDown = Date.now() - mouseDownTime;
18
+ if (timeSinceMouseDown < 100) {
19
+ return false;
20
+ }
21
+ return isKeyboardUser;
22
+ };
23
+ export function useFocusVisible(deps) {
24
+ const isFocusVisible = deps.vue.ref(false);
25
+ deps.vue.onMounted(() => {
26
+ if (listenerCount === 0) {
27
+ deps.document.addEventListener('keydown', handleKeyDown, true);
28
+ deps.document.addEventListener('mousedown', handleMouseDown, true);
29
+ deps.document.addEventListener('touchstart', handleTouchStart, true);
30
+ }
31
+ listenerCount++;
32
+ });
33
+ deps.vue.onUnmounted(() => {
34
+ listenerCount--;
35
+ if (listenerCount === 0) {
36
+ deps.document.removeEventListener('keydown', handleKeyDown, true);
37
+ deps.document.removeEventListener('mousedown', handleMouseDown, true);
38
+ deps.document.removeEventListener('touchstart', handleTouchStart, true);
39
+ }
40
+ });
41
+ const handleFocus = (event) => {
42
+ isFocusVisible.value = shouldShowFocus(event);
43
+ };
44
+ const handleBlur = () => {
45
+ isFocusVisible.value = false;
46
+ };
47
+ return {
48
+ isFocusVisible,
49
+ handleFocus,
50
+ handleBlur,
51
+ };
52
+ }
53
+ //# sourceMappingURL=useFocusVisible.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFocusVisible.js","sourceRoot":"","sources":["../../../src/vue-hooks/dom/useFocusVisible.ts"],"names":[],"mappings":"AASA,IAAI,cAAc,GAAG,KAAK,CAAA;AAC1B,IAAI,aAAa,GAAG,CAAC,CAAA;AACrB,IAAI,aAAa,GAAG,CAAC,CAAA;AAErB,MAAM,aAAa,GAAkB,CAAC,KAAK,EAAE,EAAE;IAC7C,IAAK,KAA0B,CAAC,GAAG,KAAK,KAAK,EAAE,CAAC;QAC9C,cAAc,GAAG,IAAI,CAAA;IACvB,CAAC;AACH,CAAC,CAAA;AAED,MAAM,eAAe,GAAkB,GAAG,EAAE;IAC1C,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IAC1B,cAAc,GAAG,KAAK,CAAA;AACxB,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAkB,GAAG,EAAE;IAC3C,cAAc,GAAG,KAAK,CAAA;AACxB,CAAC,CAAA;AAGD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAyB,EAAW,EAAE;IACpE,MAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa,CAAA;IACrD,IAAI,kBAAkB,GAAG,GAAG,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAA;IACd,CAAC;IACD,OAAO,cAAc,CAAA;AACvB,CAAC,CAAA;AAED,MAAM,UAAU,eAAe,CAAC,IAAyB;IACvD,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IAE1C,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;QACtB,IAAI,aAAa,KAAK,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAA;YAC9D,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,eAAe,EAAE,IAAI,CAAC,CAAA;YAClE,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,YAAY,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAA;QACtE,CAAC;QACD,aAAa,EAAE,CAAA;IACjB,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE;QACxB,aAAa,EAAE,CAAA;QACf,IAAI,aAAa,KAAK,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAA;YACjE,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,eAAe,EAAE,IAAI,CAAC,CAAA;YACrE,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAA;QACzE,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,MAAM,WAAW,GAAG,CAAC,KAAyB,EAAE,EAAE;QAChD,cAAc,CAAC,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,CAAA;IAC/C,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,cAAc,CAAC,KAAK,GAAG,KAAK,CAAA;IAC9B,CAAC,CAAA;IAED,OAAO;QACL,cAAc;QACd,WAAW;QACX,UAAU;KACX,CAAA;AACH,CAAC"}
@@ -0,0 +1,53 @@
1
+ import type { Ref } from 'vue';
2
+ import type { Document, HTMLElement } from '../../../references/dom.d';
3
+ import type { Window } from '../../../references/browser.d';
4
+ import type { VueCompositionAPI } from '../../../types/vue.d';
5
+ import { type LassoBoxRect } from '../../functions/dom/lassoSelection';
6
+ export type { LassoBoxRect };
7
+ export type LassoSelectable = {
8
+ id: string;
9
+ };
10
+ type LassoPointerEvent = {
11
+ button: number;
12
+ isPrimary: boolean;
13
+ pointerId: number;
14
+ clientX: number;
15
+ clientY: number;
16
+ currentTarget: unknown;
17
+ target: unknown;
18
+ };
19
+ export type UseLassoSelectionOptions<T extends LassoSelectable> = {
20
+ items: Ref<readonly T[]>;
21
+ dragToEnterSelectionEnabled: Ref<boolean>;
22
+ selectionEnabled: Ref<boolean>;
23
+ itemSelectable?: (item: T) => boolean;
24
+ rowIdAttribute?: string;
25
+ getViewport: () => unknown;
26
+ getRowCollectionRoot?: () => HTMLElement | null;
27
+ shouldSkipPointerDown?: (item: T | undefined, target: unknown) => boolean;
28
+ allowEmptyAreaPointerDown?: boolean;
29
+ dragEnterMinPx?: number;
30
+ onDragEnterSelection: (item: T) => void;
31
+ onSelectedIdsChange: (ids: string[]) => void;
32
+ };
33
+ export interface LassoSelectionEnvironment {
34
+ vue: Pick<Required<VueCompositionAPI>, 'ref'>;
35
+ window: Pick<Window, 'addEventListener' | 'removeEventListener' | 'requestAnimationFrame' | 'cancelAnimationFrame'>;
36
+ document: Pick<Document, 'addEventListener' | 'removeEventListener' | 'body'> & {
37
+ getSelection?: () => {
38
+ removeAllRanges(): void;
39
+ } | null;
40
+ body: {
41
+ style: {
42
+ userSelect: string;
43
+ };
44
+ };
45
+ };
46
+ queueMicrotask?: (callback: () => void) => void;
47
+ }
48
+ export declare function useLassoSelection<T extends LassoSelectable>(options: UseLassoSelectionOptions<T>, env: LassoSelectionEnvironment): {
49
+ lassoBox: Ref<LassoBoxRect | null, LassoBoxRect | null>;
50
+ onColumnPointerDownCapture: (e: LassoPointerEvent) => void;
51
+ consumeSuppressRowToggle: () => boolean;
52
+ dispose: () => void;
53
+ };
@@ -0,0 +1,245 @@
1
+ import { clientPointToContent, collectRowElByItemId, computeViewportEdgeScrollDelta, DEFAULT_DRAG_ENTER_MIN_PX, idsInClientLasso, isPrimaryPointer, lassoBoxInScrollContent, meetsDragEnterThreshold, pointerHitsInteractive, resolveLassoSeed, startContentPoint, strokeBounds, } from '../../functions/dom/lassoSelection.js';
2
+ export function useLassoSelection(options, env) {
3
+ const rowIdAttribute = options.rowIdAttribute ?? 'data-cw-lasso-row-id';
4
+ const dragEnterMinPx = options.dragEnterMinPx ?? DEFAULT_DRAG_ENTER_MIN_PX;
5
+ const lassoBox = env.vue.ref(null);
6
+ const scheduleMicrotask = env.queueMicrotask ?? ((cb) => void Promise.resolve().then(cb));
7
+ let session = null;
8
+ let suppressRowToggleForLassoEndPointerUp = false;
9
+ let lastPointerClientX = 0;
10
+ let lastPointerClientY = 0;
11
+ let edgeScrollRafId = null;
12
+ let selectStartBlockInstalled = false;
13
+ const onSelectStartBlock = (ev) => ev.preventDefault();
14
+ let savedBodyUserSelect = '';
15
+ function blockNativeSelection() {
16
+ try {
17
+ env.document.addEventListener('selectstart', onSelectStartBlock, true);
18
+ selectStartBlockInstalled = true;
19
+ savedBodyUserSelect = env.document.body.style.userSelect;
20
+ env.document.body.style.userSelect = 'none';
21
+ }
22
+ catch {
23
+ selectStartBlockInstalled = false;
24
+ }
25
+ }
26
+ function restoreNativeSelection() {
27
+ if (selectStartBlockInstalled) {
28
+ try {
29
+ env.document.removeEventListener('selectstart', onSelectStartBlock, true);
30
+ }
31
+ catch {
32
+ }
33
+ selectStartBlockInstalled = false;
34
+ }
35
+ try {
36
+ env.document.body.style.userSelect = savedBodyUserSelect;
37
+ }
38
+ catch {
39
+ }
40
+ }
41
+ function detachWindowListeners() {
42
+ env.window.removeEventListener('pointermove', onWindowPointerMove, true);
43
+ env.window.removeEventListener('pointerup', onWindowPointerEnd, true);
44
+ env.window.removeEventListener('pointercancel', onWindowPointerEnd, true);
45
+ }
46
+ function stopEdgeScrollLoop() {
47
+ if (edgeScrollRafId != null) {
48
+ env.window.cancelAnimationFrame(edgeScrollRafId);
49
+ edgeScrollRafId = null;
50
+ }
51
+ }
52
+ function refreshLassoBoxFromLastPointer() {
53
+ const s = session;
54
+ if (!s?.dragActive) {
55
+ lassoBox.value = null;
56
+ return;
57
+ }
58
+ const viewport = options.getViewport();
59
+ if (!viewport) {
60
+ lassoBox.value = null;
61
+ return;
62
+ }
63
+ const start = startContentPoint(s.startClientX, s.startClientY, s.startScrollLeft, s.startScrollTop, viewport);
64
+ const end = clientPointToContent(lastPointerClientX, lastPointerClientY, viewport);
65
+ lassoBox.value = lassoBoxInScrollContent(strokeBounds(start.x, start.y, end.x, end.y), viewport);
66
+ }
67
+ function edgeScrollFrame() {
68
+ edgeScrollRafId = null;
69
+ const s = session;
70
+ if (!s)
71
+ return;
72
+ const viewport = options.getViewport();
73
+ if (!viewport)
74
+ return;
75
+ const delta = computeViewportEdgeScrollDelta(lastPointerClientY, viewport);
76
+ if (delta !== 0) {
77
+ const viewportEl = viewport;
78
+ const maxTop = Math.max(0, viewportEl.scrollHeight - viewportEl.clientHeight);
79
+ viewportEl.scrollTop = Math.min(maxTop, Math.max(0, viewportEl.scrollTop + delta));
80
+ refreshLassoBoxFromLastPointer();
81
+ }
82
+ if (session && computeViewportEdgeScrollDelta(lastPointerClientY, viewport) !== 0) {
83
+ edgeScrollRafId = env.window.requestAnimationFrame(edgeScrollFrame);
84
+ }
85
+ }
86
+ function ensureEdgeScrollLoop() {
87
+ if (edgeScrollRafId == null) {
88
+ edgeScrollRafId = env.window.requestAnimationFrame(edgeScrollFrame);
89
+ }
90
+ }
91
+ function commitDragSelection(s) {
92
+ const viewport = options.getViewport();
93
+ options.onDragEnterSelection(s.seedItem);
94
+ if (!viewport) {
95
+ options.onSelectedIdsChange([]);
96
+ return;
97
+ }
98
+ const collectionRoot = (options.getRowCollectionRoot?.() ?? viewport);
99
+ if (collectionRoot) {
100
+ s.rowElByItemId = collectRowElByItemId(collectionRoot, rowIdAttribute);
101
+ }
102
+ options.onSelectedIdsChange(idsInClientLasso(options.items.value, s.rowElByItemId, s.startClientX, s.startClientY, lastPointerClientX, lastPointerClientY, options.itemSelectable));
103
+ }
104
+ function endSession() {
105
+ if (!session)
106
+ return;
107
+ const s = session;
108
+ const shouldCommit = s.dragActive && options.dragToEnterSelectionEnabled.value;
109
+ const suppressLassoEndClick = shouldCommit;
110
+ if (shouldCommit) {
111
+ commitDragSelection(s);
112
+ }
113
+ try {
114
+ if (s.captureEl.hasPointerCapture(s.pointerId)) {
115
+ s.captureEl.releasePointerCapture(s.pointerId);
116
+ }
117
+ }
118
+ catch {
119
+ }
120
+ detachWindowListeners();
121
+ stopEdgeScrollLoop();
122
+ restoreNativeSelection();
123
+ session = null;
124
+ lassoBox.value = null;
125
+ if (suppressLassoEndClick) {
126
+ suppressRowToggleForLassoEndPointerUp = true;
127
+ scheduleMicrotask(() => {
128
+ suppressRowToggleForLassoEndPointerUp = false;
129
+ });
130
+ }
131
+ }
132
+ function onWindowPointerEnd(e) {
133
+ if (!session || e.pointerId !== session.pointerId)
134
+ return;
135
+ endSession();
136
+ }
137
+ function onWindowPointerMove(e) {
138
+ if (!session || e.pointerId !== session.pointerId)
139
+ return;
140
+ if (!options.dragToEnterSelectionEnabled.value) {
141
+ endSession();
142
+ return;
143
+ }
144
+ lastPointerClientX = e.clientX;
145
+ lastPointerClientY = e.clientY;
146
+ const dx = e.clientX - session.startClientX;
147
+ const dy = e.clientY - session.startClientY;
148
+ env.document.getSelection?.()?.removeAllRanges();
149
+ if (!session.dragActive) {
150
+ if (!meetsDragEnterThreshold(dx, dy, dragEnterMinPx)) {
151
+ lassoBox.value = null;
152
+ ensureEdgeScrollLoop();
153
+ return;
154
+ }
155
+ session.dragActive = true;
156
+ try {
157
+ if (!session.captureEl.hasPointerCapture(session.pointerId)) {
158
+ session.captureEl.setPointerCapture(session.pointerId);
159
+ }
160
+ }
161
+ catch {
162
+ }
163
+ }
164
+ refreshLassoBoxFromLastPointer();
165
+ ensureEdgeScrollLoop();
166
+ }
167
+ function attachWindowListeners() {
168
+ env.window.addEventListener('pointermove', onWindowPointerMove, true);
169
+ env.window.addEventListener('pointerup', onWindowPointerEnd, true);
170
+ env.window.addEventListener('pointercancel', onWindowPointerEnd, true);
171
+ }
172
+ function shouldSkipDefaultPointerDown(item, target) {
173
+ if (options.shouldSkipPointerDown?.(item, target))
174
+ return true;
175
+ if (item && options.itemSelectable && !options.itemSelectable(item))
176
+ return true;
177
+ if (pointerHitsInteractive(target))
178
+ return true;
179
+ return false;
180
+ }
181
+ function onColumnPointerDownCapture(e) {
182
+ if (options.selectionEnabled.value || !options.dragToEnterSelectionEnabled.value) {
183
+ return;
184
+ }
185
+ if (!isPrimaryPointer(e))
186
+ return;
187
+ const col = e.currentTarget;
188
+ if (!col)
189
+ return;
190
+ const viewportEl = options.getViewport();
191
+ if (!viewportEl)
192
+ return;
193
+ const collectionRoot = (options.getRowCollectionRoot?.() ?? viewportEl);
194
+ const rowElByItemId = collectRowElByItemId(collectionRoot, rowIdAttribute);
195
+ if (rowElByItemId.size === 0)
196
+ return;
197
+ const resolved = resolveLassoSeed(options.items.value, rowElByItemId, rowIdAttribute, e.target, e.clientX, e.clientY);
198
+ let seedItem = resolved?.item ?? null;
199
+ if (!seedItem && options.allowEmptyAreaPointerDown) {
200
+ seedItem = options.items.value[0] ?? null;
201
+ }
202
+ if (!seedItem)
203
+ return;
204
+ if (resolved && shouldSkipDefaultPointerDown(resolved.item, e.target))
205
+ return;
206
+ if (!resolved &&
207
+ options.allowEmptyAreaPointerDown &&
208
+ shouldSkipDefaultPointerDown(seedItem, e.target)) {
209
+ return;
210
+ }
211
+ if (session)
212
+ endSession();
213
+ lastPointerClientX = e.clientX;
214
+ lastPointerClientY = e.clientY;
215
+ lassoBox.value = null;
216
+ const scrollViewport = viewportEl;
217
+ session = {
218
+ startClientX: e.clientX,
219
+ startClientY: e.clientY,
220
+ startScrollLeft: scrollViewport.scrollLeft,
221
+ startScrollTop: scrollViewport.scrollTop,
222
+ pointerId: e.pointerId,
223
+ seedItem,
224
+ dragActive: false,
225
+ captureEl: col,
226
+ rowElByItemId,
227
+ };
228
+ blockNativeSelection();
229
+ attachWindowListeners();
230
+ }
231
+ function consumeSuppressRowToggle() {
232
+ return suppressRowToggleForLassoEndPointerUp;
233
+ }
234
+ function dispose() {
235
+ stopEdgeScrollLoop();
236
+ endSession();
237
+ }
238
+ return {
239
+ lassoBox,
240
+ onColumnPointerDownCapture,
241
+ consumeSuppressRowToggle,
242
+ dispose,
243
+ };
244
+ }
245
+ //# sourceMappingURL=useLassoSelection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLassoSelection.js","sourceRoot":"","sources":["../../../src/vue-hooks/dom/useLassoSelection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { type Ref } from 'vue';
2
+ export declare function useBrowserDelayedTrue(source: Ref<boolean>, delayMs?: number): Ref<boolean, boolean>;
@@ -0,0 +1,7 @@
1
+ import { onUnmounted, ref, watch } from 'vue';
2
+ import { readBrowserDelayedTrueDeps } from '../../functions/browser/readBrowserVueHookDeps.js';
3
+ import { useDelayedTrue } from './useDelayedTrue.js';
4
+ export function useBrowserDelayedTrue(source, delayMs = 500) {
5
+ return useDelayedTrue(source, readBrowserDelayedTrueDeps({ ref, watch, onUnmounted }), delayMs);
6
+ }
7
+ //# sourceMappingURL=useBrowserDelayedTrue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useBrowserDelayedTrue.js","sourceRoot":"","sources":["../../../src/vue-hooks/time/useBrowserDelayedTrue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,KAAK,EAAY,MAAM,KAAK,CAAA;AACvD,OAAO,EAAE,0BAA0B,EAAE,MAAM,gDAAgD,CAAA;AAC3F,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,MAAM,UAAU,qBAAqB,CAAC,MAAoB,EAAE,OAAO,GAAG,GAAG;IACvE,OAAO,cAAc,CAAC,MAAM,EAAE,0BAA0B,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,EAAE,OAAO,CAAC,CAAA;AACjG,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { Ref } from 'vue';
2
+ import type { VueCompositionAPI } from '../../../types/vue.d';
3
+ import type { setTimeout, clearTimeout } from '../../../references/timer.d';
4
+ export interface UseDelayedTrueDeps {
5
+ vue: Pick<Required<VueCompositionAPI>, 'ref' | 'watch' | 'onUnmounted'>;
6
+ host: {
7
+ setTimeout: typeof setTimeout;
8
+ clearTimeout: typeof clearTimeout;
9
+ };
10
+ }
11
+ export declare function useDelayedTrue(source: Ref<boolean>, deps: UseDelayedTrueDeps, delayMs?: number): Ref<boolean, boolean>;
@@ -0,0 +1,29 @@
1
+ export function useDelayedTrue(source, deps, delayMs = 500) {
2
+ const delayed = deps.vue.ref(false);
3
+ let timer = null;
4
+ deps.vue.watch(source, (v) => {
5
+ if (timer != null) {
6
+ deps.host.clearTimeout(timer);
7
+ timer = null;
8
+ }
9
+ if (!v) {
10
+ delayed.value = false;
11
+ return;
12
+ }
13
+ if (delayMs <= 0) {
14
+ delayed.value = true;
15
+ return;
16
+ }
17
+ timer = deps.host.setTimeout(() => {
18
+ timer = null;
19
+ if (source.value)
20
+ delayed.value = true;
21
+ }, delayMs);
22
+ }, { immediate: true });
23
+ deps.vue.onUnmounted(() => {
24
+ if (timer != null)
25
+ deps.host.clearTimeout(timer);
26
+ });
27
+ return delayed;
28
+ }
29
+ //# sourceMappingURL=useDelayedTrue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDelayedTrue.js","sourceRoot":"","sources":["../../../src/vue-hooks/time/useDelayedTrue.ts"],"names":[],"mappings":"AAiBA,MAAM,UAAU,cAAc,CAC5B,MAAoB,EACpB,IAAwB,EACxB,OAAO,GAAG,GAAG;IAEb,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACnC,IAAI,KAAK,GAAmD,IAAI,CAAA;IAEhE,IAAI,CAAC,GAAG,CAAC,KAAK,CACZ,MAAM,EACN,CAAC,CAAC,EAAE,EAAE;QACJ,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;YAC7B,KAAK,GAAG,IAAI,CAAA;QACd,CAAC;QACD,IAAI,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,CAAC,KAAK,GAAG,KAAK,CAAA;YACrB,OAAM;QACR,CAAC;QACD,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC;YACjB,OAAO,CAAC,KAAK,GAAG,IAAI,CAAA;YACpB,OAAM;QACR,CAAC;QACD,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE;YAChC,KAAK,GAAG,IAAI,CAAA;YACZ,IAAI,MAAM,CAAC,KAAK;gBAAE,OAAO,CAAC,KAAK,GAAG,IAAI,CAAA;QACxC,CAAC,EAAE,OAAO,CAAC,CAAA;IACb,CAAC,EACD,EAAE,SAAS,EAAE,IAAI,EAAE,CACpB,CAAA;IAED,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE;QACxB,IAAI,KAAK,IAAI,IAAI;YAAE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IAClD,CAAC,CAAC,CAAA;IAEF,OAAO,OAAO,CAAA;AAChB,CAAC"}