cty-mui-core 1.0.37 → 1.0.39

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 (400) hide show
  1. package/components/audio-recorder.js +27 -0
  2. package/components/camera.js +128 -30
  3. package/components/circle.js +3 -3
  4. package/components/crop-image.js +1 -1
  5. package/components/cty-camera-photo.js +112 -37
  6. package/components/cty-canvas-board.js +1 -1
  7. package/components/cty-canvas-video.js +1 -1
  8. package/components/cty-cascader-view.js +3 -3
  9. package/components/cty-cascader.js +1 -1
  10. package/components/cty-count-down.js +2 -2
  11. package/components/cty-dropdown.js +4 -4
  12. package/components/cty-empty.js +1 -1
  13. package/components/cty-floating-bubble.js +1 -1
  14. package/components/cty-floating-panel.js +4 -4
  15. package/components/cty-image-upload.js +1 -1
  16. package/components/cty-index-bar.js +2 -2
  17. package/components/cty-keyboard.js +1 -1
  18. package/components/cty-loading.js +1 -1
  19. package/components/cty-media-capture.js +56 -4
  20. package/components/cty-notice-bar.js +1 -1
  21. package/components/cty-pdf-viewer.js +1 -1
  22. package/components/cty-permission-alert.d.ts +11 -0
  23. package/components/cty-permission-alert.js +6 -0
  24. package/components/cty-progress.js +1 -1
  25. package/components/cty-quick-access.js +1 -1
  26. package/components/cty-rate.js +1 -1
  27. package/components/cty-record.js +66 -9
  28. package/components/cty-segment-slides.js +1 -1
  29. package/components/cty-selector.js +1 -1
  30. package/components/cty-share-sheet.js +1 -1
  31. package/components/cty-side-panel.js +1 -1
  32. package/components/cty-stepper.js +10 -2
  33. package/components/cty-steps.js +1 -1
  34. package/components/cty-text-ellipsis.js +2 -2
  35. package/components/cty-title-bar.js +1 -1
  36. package/components/cty-tour.js +4 -4
  37. package/components/cty-tutorial.js +1 -1
  38. package/components/cty-video.js +2 -2
  39. package/components/cty-virtual-list.js +12 -7
  40. package/components/divider.js +2 -2
  41. package/components/icon.js +1 -1
  42. package/components/image-picker.js +69 -5
  43. package/components/image-viewer.js +10 -5
  44. package/components/index.js +65 -2
  45. package/components/nav-bar.js +1 -1
  46. package/components/overlay.js +1 -1
  47. package/components/permission-alert.js +84 -0
  48. package/components/permission-purpose.js +1 -1
  49. package/components/swipe-item.js +2 -2
  50. package/components/swipe.js +1 -1
  51. package/components/swiper.js +5 -1
  52. package/components/video-capture.js +28 -1
  53. package/dist/cjs/{audio-recorder-ChGIymnF.js → audio-recorder-D3rqlSLq.js} +27 -0
  54. package/dist/cjs/{camera-preview-CTbXcOZK.js → camera-preview-BylkRIcS.js} +29 -2
  55. package/dist/cjs/cty-alert_2.cjs.entry.js +26 -67
  56. package/dist/cjs/cty-camera-photo.cjs.entry.js +59 -8
  57. package/dist/cjs/cty-camera_2.cjs.entry.js +83 -11
  58. package/dist/cjs/cty-canvas-board.cjs.entry.js +1 -1
  59. package/dist/cjs/cty-canvas-video.cjs.entry.js +1 -1
  60. package/dist/cjs/cty-cascader-view.cjs.entry.js +3 -3
  61. package/dist/cjs/cty-cascader.cjs.entry.js +1 -1
  62. package/dist/cjs/cty-circle.cjs.entry.js +82 -0
  63. package/dist/cjs/cty-count-down.cjs.entry.js +2 -2
  64. package/dist/cjs/cty-divider.cjs.entry.js +2 -2
  65. package/dist/cjs/cty-dropdown.cjs.entry.js +4 -4
  66. package/dist/cjs/cty-empty.cjs.entry.js +1 -1
  67. package/dist/cjs/cty-floating-bubble.cjs.entry.js +1 -1
  68. package/dist/cjs/cty-floating-panel.cjs.entry.js +4 -4
  69. package/dist/cjs/cty-icon.cjs.entry.js +1 -1
  70. package/dist/cjs/cty-image-upload.cjs.entry.js +1 -1
  71. package/dist/cjs/cty-image-viewer_6.cjs.entry.js +15 -7
  72. package/dist/cjs/cty-index-bar.cjs.entry.js +2 -2
  73. package/dist/cjs/cty-keyboard.cjs.entry.js +1 -1
  74. package/dist/cjs/cty-loading.cjs.entry.js +1 -1
  75. package/dist/cjs/cty-media-capture.cjs.entry.js +33 -3
  76. package/dist/cjs/cty-mui.cjs.js +1 -1
  77. package/dist/cjs/cty-notice-bar.cjs.entry.js +1 -1
  78. package/dist/cjs/cty-overlay.cjs.entry.js +1 -1
  79. package/dist/cjs/cty-pdf-viewer.cjs.entry.js +1 -1
  80. package/dist/cjs/cty-permission-purpose.cjs.entry.js +1 -1
  81. package/dist/cjs/cty-progress.cjs.entry.js +1 -1
  82. package/dist/cjs/cty-quick-access.cjs.entry.js +1 -1
  83. package/dist/cjs/cty-rate.cjs.entry.js +1 -1
  84. package/dist/cjs/cty-record.cjs.entry.js +49 -2
  85. package/dist/cjs/cty-segment-slides.cjs.entry.js +1 -1
  86. package/dist/cjs/cty-selector.cjs.entry.js +1 -1
  87. package/dist/cjs/cty-share-sheet.cjs.entry.js +1 -1
  88. package/dist/cjs/cty-side-panel.cjs.entry.js +1 -1
  89. package/dist/cjs/cty-stepper.cjs.entry.js +9 -2
  90. package/dist/cjs/cty-steps.cjs.entry.js +1 -1
  91. package/dist/cjs/cty-swipe_2.cjs.entry.js +3 -3
  92. package/dist/cjs/cty-text-ellipsis.cjs.entry.js +2 -2
  93. package/dist/cjs/cty-title-bar.cjs.entry.js +1 -1
  94. package/dist/cjs/cty-tour.cjs.entry.js +4 -4
  95. package/dist/cjs/cty-tutorial.cjs.entry.js +1 -1
  96. package/dist/cjs/cty-video.cjs.entry.js +2 -2
  97. package/dist/cjs/cty-virtual-list.cjs.entry.js +11 -7
  98. package/dist/cjs/{image-picker-BoG8_gzp.js → image-picker-C9sdhsR_.js} +40 -3
  99. package/dist/cjs/index.cjs.js +68 -4
  100. package/dist/cjs/loader.cjs.js +1 -1
  101. package/dist/cjs/{video-capture-C-HjTI17.js → video-capture-BO4sLa1e.js} +28 -1
  102. package/dist/collection/collection-manifest.json +1 -0
  103. package/dist/collection/components/camera/camera.js +188 -9
  104. package/dist/collection/components/camera-photo/camera-photo.js +126 -8
  105. package/dist/collection/components/canvas-board/canvas-board.js +1 -1
  106. package/dist/collection/components/canvas-video/canvas-video.js +1 -1
  107. package/dist/collection/components/cascader/cascader.js +1 -1
  108. package/dist/collection/components/cascader-view/cascader-view.js +3 -3
  109. package/dist/collection/components/circle/circle.js +3 -3
  110. package/dist/collection/components/count-down/count-down.js +2 -2
  111. package/dist/collection/components/crop-image/crop-image.js +1 -1
  112. package/dist/collection/components/divider/divider.js +2 -2
  113. package/dist/collection/components/dropdown/dropdown.js +4 -4
  114. package/dist/collection/components/empty/empty.js +1 -1
  115. package/dist/collection/components/floating-bubble/floating-bubble.js +1 -1
  116. package/dist/collection/components/floating-panel/floating-panel.css +1 -0
  117. package/dist/collection/components/floating-panel/floating-panel.js +3 -3
  118. package/dist/collection/components/icon/icon.js +1 -1
  119. package/dist/collection/components/image-upload/image-upload.js +1 -1
  120. package/dist/collection/components/image-viewer/image-viewer.css +139 -2
  121. package/dist/collection/components/image-viewer/image-viewer.js +10 -5
  122. package/dist/collection/components/index-bar/index-bar.js +2 -2
  123. package/dist/collection/components/keyboard/keyboard.js +1 -1
  124. package/dist/collection/components/loading/loading.js +1 -1
  125. package/dist/collection/components/media-capture/media-capture.js +98 -3
  126. package/dist/collection/components/nav-bar/nav-bar.js +1 -1
  127. package/dist/collection/components/notice-bar/notice-bar.js +1 -1
  128. package/dist/collection/components/overlay/overlay.js +1 -1
  129. package/dist/collection/components/pdf-viewer/pdf-viewer.js +1 -1
  130. package/dist/collection/components/permission-alert/permission-alert.css +57 -0
  131. package/dist/collection/components/permission-alert/permission-alert.js +196 -0
  132. package/dist/collection/components/permission-purpose/permission-purpose.js +1 -1
  133. package/dist/collection/components/progress/progress.js +1 -1
  134. package/dist/collection/components/quick-access/quick-access.js +1 -1
  135. package/dist/collection/components/rate/rate.js +1 -1
  136. package/dist/collection/components/record/record.js +113 -1
  137. package/dist/collection/components/segment-slides/segment-slides.js +1 -1
  138. package/dist/collection/components/selector/selector.js +1 -1
  139. package/dist/collection/components/share-sheet/share-sheet.js +1 -1
  140. package/dist/collection/components/side-panel/side-panel.js +1 -1
  141. package/dist/collection/components/stepper/stepper.css +5 -2
  142. package/dist/collection/components/stepper/stepper.js +32 -1
  143. package/dist/collection/components/steps/steps.js +1 -1
  144. package/dist/collection/components/swipe/swipe.js +1 -1
  145. package/dist/collection/components/swipe-item/swipe-item.js +2 -2
  146. package/dist/collection/components/swiper/swiper.js +5 -1
  147. package/dist/collection/components/text-ellipsis/text-ellipsis.js +2 -2
  148. package/dist/collection/components/title-bar/title-bar.js +1 -1
  149. package/dist/collection/components/tour/tour.js +4 -4
  150. package/dist/collection/components/tutorial/tutorial.js +1 -1
  151. package/dist/collection/components/video/video.js +2 -2
  152. package/dist/collection/components/virtual-list/virtual-list.css +2 -5
  153. package/dist/collection/components/virtual-list/virtual-list.js +33 -6
  154. package/dist/collection/index.js +1 -0
  155. package/dist/collection/utils/native/audio-recorder.js +27 -0
  156. package/dist/collection/utils/native/camera-preview.js +29 -2
  157. package/dist/collection/utils/native/image-picker.js +40 -3
  158. package/dist/collection/utils/native/media-editor.js +62 -0
  159. package/dist/collection/utils/native/video-capture.js +28 -1
  160. package/dist/cty-mui/cty-mui.esm.js +1 -1
  161. package/dist/cty-mui/index.esm.js +1 -1
  162. package/dist/cty-mui/{p-a586fcb6.entry.js → p-005c9f17.entry.js} +1 -1
  163. package/dist/cty-mui/{p-9ba0f75c.entry.js → p-01a57e66.entry.js} +1 -1
  164. package/dist/cty-mui/{p-a8ada422.system.entry.js → p-0c4881aa.system.entry.js} +1 -1
  165. package/dist/cty-mui/{p-587210af.system.entry.js → p-1a3bf306.system.entry.js} +1 -1
  166. package/dist/cty-mui/{p-4f60b693.entry.js → p-1aca5f5b.entry.js} +1 -1
  167. package/dist/cty-mui/{p-475efd63.entry.js → p-1e4ee703.entry.js} +1 -1
  168. package/dist/cty-mui/{p-afc54cf3.entry.js → p-2005bf43.entry.js} +1 -1
  169. package/dist/cty-mui/{p-90f8d468.system.entry.js → p-20ce6b1f.system.entry.js} +1 -1
  170. package/dist/cty-mui/{p-c91ca631.system.entry.js → p-216d0332.system.entry.js} +1 -1
  171. package/dist/cty-mui/{p-e66d35a9.system.entry.js → p-222b8c9f.system.entry.js} +1 -1
  172. package/dist/cty-mui/{p-5ea1965a.system.entry.js → p-2236e06d.system.entry.js} +1 -1
  173. package/dist/cty-mui/p-27e63575.entry.js +1 -0
  174. package/dist/cty-mui/{p-ff973e68.system.entry.js → p-2b46cac8.system.entry.js} +1 -1
  175. package/dist/cty-mui/{p-d74dbc79.system.entry.js → p-398dc564.system.entry.js} +1 -1
  176. package/dist/cty-mui/{p-d62ba819.system.entry.js → p-3f47c7cc.system.entry.js} +1 -1
  177. package/dist/cty-mui/{p-8bfd28fc.entry.js → p-3fdb16af.entry.js} +1 -1
  178. package/dist/cty-mui/{p-2b0dc5e3.entry.js → p-4113a97c.entry.js} +1 -1
  179. package/dist/cty-mui/{p-49341ac0.system.entry.js → p-4377a67a.system.entry.js} +1 -1
  180. package/dist/cty-mui/{p-a5537cb3.system.entry.js → p-44748654.system.entry.js} +1 -1
  181. package/dist/cty-mui/p-46c45956.system.entry.js +1 -0
  182. package/dist/cty-mui/{p-f9f7ee85.entry.js → p-49712aa2.entry.js} +1 -1
  183. package/dist/cty-mui/{p-4890b69c.system.entry.js → p-49a6a0d2.system.entry.js} +1 -1
  184. package/dist/cty-mui/{p-5645d522.system.entry.js → p-4f53841f.system.entry.js} +1 -1
  185. package/dist/cty-mui/{p-b1f6e59c.entry.js → p-5087335d.entry.js} +1 -1
  186. package/dist/cty-mui/{p-d4915a3a.system.entry.js → p-520f708a.system.entry.js} +1 -1
  187. package/dist/cty-mui/p-5d4ba642.system.entry.js +1 -0
  188. package/dist/cty-mui/{p-ad85921c.entry.js → p-5d57fcbf.entry.js} +1 -1
  189. package/dist/cty-mui/{p-9d07466a.system.entry.js → p-5ec43731.system.entry.js} +1 -1
  190. package/dist/cty-mui/p-608ba84c.entry.js +1 -0
  191. package/dist/cty-mui/{p-cdee2447.system.entry.js → p-6179c262.system.entry.js} +1 -1
  192. package/dist/cty-mui/{p-55a730c1.system.entry.js → p-685dc602.system.entry.js} +1 -1
  193. package/dist/cty-mui/{p-5d59f92f.system.entry.js → p-688e3d13.system.entry.js} +1 -1
  194. package/dist/cty-mui/{p-7530dbf4.entry.js → p-6a2cde81.entry.js} +1 -1
  195. package/dist/cty-mui/{p-f4775bbd.system.entry.js → p-6acaf6b0.system.entry.js} +1 -1
  196. package/dist/cty-mui/p-6b00dff7.system.entry.js +1 -0
  197. package/dist/cty-mui/{p-3e894981.entry.js → p-6b90bc73.entry.js} +1 -1
  198. package/dist/cty-mui/p-6ff6ece0.entry.js +1 -0
  199. package/dist/cty-mui/{p-5029b2d1.entry.js → p-7067cc1e.entry.js} +1 -1
  200. package/dist/cty-mui/{p-a02134a3.entry.js → p-738694f5.entry.js} +1 -1
  201. package/dist/cty-mui/{p-c36ad14e.entry.js → p-79c493eb.entry.js} +1 -1
  202. package/dist/cty-mui/p-81a6cd2f.system.entry.js +1 -0
  203. package/dist/cty-mui/{p-019cfadb.entry.js → p-83b3627e.entry.js} +1 -1
  204. package/dist/cty-mui/p-83e63668.entry.js +1 -0
  205. package/dist/cty-mui/p-85a69c15.entry.js +1 -0
  206. package/dist/cty-mui/{p-edc23b12.system.entry.js → p-86fc18c6.system.entry.js} +1 -1
  207. package/dist/cty-mui/{p-71a51c66.system.entry.js → p-88f257ae.system.entry.js} +1 -1
  208. package/dist/cty-mui/p-8a3f8bbc.system.entry.js +1 -0
  209. package/dist/cty-mui/{p-844ef4f2.system.entry.js → p-933ae9d4.system.entry.js} +1 -1
  210. package/dist/cty-mui/{p-c2833f8f.entry.js → p-9a3a8e96.entry.js} +1 -1
  211. package/dist/cty-mui/p-B0tecevi.system.js +1 -0
  212. package/dist/cty-mui/p-BR2ny4zu.system.js +1 -0
  213. package/dist/cty-mui/p-Bkucjxe0.js +1 -0
  214. package/dist/cty-mui/p-Bntx5BKz.js +1 -0
  215. package/dist/cty-mui/p-CElxzE6f.system.js +1 -0
  216. package/dist/cty-mui/p-CPg00410.system.js +1 -0
  217. package/dist/cty-mui/p-CeJSms5W.js +1 -0
  218. package/dist/cty-mui/p-Cegbc1c7.system.js +1 -1
  219. package/dist/cty-mui/p-CnG0E7wf.js +1 -0
  220. package/dist/cty-mui/p-D5J8bYlQ.system.js +1 -0
  221. package/dist/cty-mui/{p-2518352c.system.entry.js → p-a0390733.system.entry.js} +1 -1
  222. package/dist/cty-mui/{p-36619007.entry.js → p-a0aec994.entry.js} +1 -1
  223. package/dist/cty-mui/{p-5528eb5e.entry.js → p-a2a4f620.entry.js} +1 -1
  224. package/dist/cty-mui/p-a337c7a9.system.entry.js +1 -0
  225. package/dist/cty-mui/{p-b00db557.system.entry.js → p-a68cdc7f.system.entry.js} +1 -1
  226. package/dist/cty-mui/{p-215219ca.entry.js → p-a77a236d.entry.js} +1 -1
  227. package/dist/cty-mui/{p-14d54127.system.entry.js → p-ae133756.system.entry.js} +1 -1
  228. package/dist/cty-mui/p-aeb79634.entry.js +1 -0
  229. package/dist/cty-mui/p-b295f647.entry.js +1 -0
  230. package/dist/cty-mui/{p-df2367ca.system.entry.js → p-b4ad5f38.system.entry.js} +1 -1
  231. package/dist/cty-mui/{p-99ce288e.entry.js → p-b6dfc8cc.entry.js} +1 -1
  232. package/dist/cty-mui/{p-97d899b3.entry.js → p-b8350f6b.entry.js} +1 -1
  233. package/dist/cty-mui/p-bfcd0ee8.entry.js +1 -0
  234. package/dist/cty-mui/{p-d0c16dfb.system.entry.js → p-c997e644.system.entry.js} +1 -1
  235. package/dist/cty-mui/{p-a88f7145.system.entry.js → p-cb2be37d.system.entry.js} +1 -1
  236. package/dist/cty-mui/p-ccc21f2e.entry.js +1 -0
  237. package/dist/cty-mui/{p-a4ec9006.entry.js → p-cd172ce5.entry.js} +1 -1
  238. package/dist/cty-mui/{p-ddd7a69a.system.entry.js → p-d030a500.system.entry.js} +1 -1
  239. package/dist/cty-mui/{p-d390049b.system.entry.js → p-d418bc6c.system.entry.js} +1 -1
  240. package/dist/cty-mui/{p-bd9c8e43.entry.js → p-d80da6a9.entry.js} +1 -1
  241. package/dist/cty-mui/{p-d94cdb9d.entry.js → p-d91dd1fd.entry.js} +1 -1
  242. package/dist/cty-mui/{p-3080e6c5.entry.js → p-d99e0f79.entry.js} +1 -1
  243. package/dist/cty-mui/{p-9cf3001f.system.entry.js → p-dd267090.system.entry.js} +1 -1
  244. package/dist/cty-mui/{p-3c8e24c4.system.entry.js → p-e0177323.system.entry.js} +1 -1
  245. package/dist/cty-mui/{p-b0056ff5.entry.js → p-e0bc62cf.entry.js} +1 -1
  246. package/dist/cty-mui/{p-cbd8842f.system.entry.js → p-e2ce5d7f.system.entry.js} +1 -1
  247. package/dist/cty-mui/{p-5a33becc.entry.js → p-e3653feb.entry.js} +1 -1
  248. package/dist/cty-mui/p-e3b5c1fc.system.entry.js +4 -0
  249. package/dist/cty-mui/{p-e55ab7ee.entry.js → p-e8f1c2e2.entry.js} +1 -1
  250. package/dist/cty-mui/{p-1c082713.entry.js → p-e92747c2.entry.js} +1 -1
  251. package/dist/cty-mui/{p-8e03fe9c.entry.js → p-ed751d9b.entry.js} +1 -1
  252. package/dist/cty-mui/{p-0e982b61.system.entry.js → p-eff6c534.system.entry.js} +1 -1
  253. package/dist/cty-mui/{p-5524f103.system.entry.js → p-f06ed732.system.entry.js} +1 -1
  254. package/dist/cty-mui/p-f3eca262.entry.js +5 -0
  255. package/dist/cty-mui/p-fbc7fe30.entry.js +1 -0
  256. package/dist/docs.json +780 -45
  257. package/dist/esm/{audio-recorder-CbuBJ-u7.js → audio-recorder-vTQ1Jf9u.js} +27 -0
  258. package/dist/esm/{camera-preview-SS7McUtz.js → camera-preview-Bntx5BKz.js} +29 -2
  259. package/dist/esm/cty-alert_2.entry.js +26 -67
  260. package/dist/esm/cty-camera-photo.entry.js +59 -8
  261. package/dist/esm/cty-camera_2.entry.js +83 -11
  262. package/dist/esm/cty-canvas-board.entry.js +1 -1
  263. package/dist/esm/cty-canvas-video.entry.js +1 -1
  264. package/dist/esm/cty-cascader-view.entry.js +3 -3
  265. package/dist/esm/cty-cascader.entry.js +1 -1
  266. package/dist/esm/cty-circle.entry.js +80 -0
  267. package/dist/esm/cty-count-down.entry.js +2 -2
  268. package/dist/esm/cty-divider.entry.js +2 -2
  269. package/dist/esm/cty-dropdown.entry.js +4 -4
  270. package/dist/esm/cty-empty.entry.js +1 -1
  271. package/dist/esm/cty-floating-bubble.entry.js +1 -1
  272. package/dist/esm/cty-floating-panel.entry.js +4 -4
  273. package/dist/esm/cty-icon.entry.js +1 -1
  274. package/dist/esm/cty-image-upload.entry.js +1 -1
  275. package/dist/esm/cty-image-viewer_6.entry.js +15 -7
  276. package/dist/esm/cty-index-bar.entry.js +2 -2
  277. package/dist/esm/cty-keyboard.entry.js +1 -1
  278. package/dist/esm/cty-loading.entry.js +1 -1
  279. package/dist/esm/cty-media-capture.entry.js +33 -3
  280. package/dist/esm/cty-mui.js +1 -1
  281. package/dist/esm/cty-notice-bar.entry.js +1 -1
  282. package/dist/esm/cty-overlay.entry.js +1 -1
  283. package/dist/esm/cty-pdf-viewer.entry.js +1 -1
  284. package/dist/esm/cty-permission-purpose.entry.js +1 -1
  285. package/dist/esm/cty-progress.entry.js +1 -1
  286. package/dist/esm/cty-quick-access.entry.js +1 -1
  287. package/dist/esm/cty-rate.entry.js +1 -1
  288. package/dist/esm/cty-record.entry.js +49 -2
  289. package/dist/esm/cty-segment-slides.entry.js +1 -1
  290. package/dist/esm/cty-selector.entry.js +1 -1
  291. package/dist/esm/cty-share-sheet.entry.js +1 -1
  292. package/dist/esm/cty-side-panel.entry.js +1 -1
  293. package/dist/esm/cty-stepper.entry.js +9 -2
  294. package/dist/esm/cty-steps.entry.js +1 -1
  295. package/dist/esm/cty-swipe_2.entry.js +3 -3
  296. package/dist/esm/cty-text-ellipsis.entry.js +2 -2
  297. package/dist/esm/cty-title-bar.entry.js +1 -1
  298. package/dist/esm/cty-tour.entry.js +4 -4
  299. package/dist/esm/cty-tutorial.entry.js +1 -1
  300. package/dist/esm/cty-video.entry.js +2 -2
  301. package/dist/esm/cty-virtual-list.entry.js +11 -7
  302. package/dist/esm/{image-picker-FShbNAm_.js → image-picker-0JHjPizE.js} +40 -3
  303. package/dist/esm/index.js +69 -6
  304. package/dist/esm/loader.js +1 -1
  305. package/dist/esm/{video-capture-B1wGDp4R.js → video-capture-B83C8hW9.js} +28 -1
  306. package/dist/esm-es5/audio-recorder-vTQ1Jf9u.js +1 -0
  307. package/dist/esm-es5/camera-preview-Bntx5BKz.js +1 -0
  308. package/dist/esm-es5/cty-alert_2.entry.js +1 -1
  309. package/dist/esm-es5/cty-camera-photo.entry.js +1 -1
  310. package/dist/esm-es5/cty-camera_2.entry.js +1 -1
  311. package/dist/esm-es5/cty-canvas-board.entry.js +1 -1
  312. package/dist/esm-es5/cty-canvas-video.entry.js +1 -1
  313. package/dist/esm-es5/cty-cascader-view.entry.js +1 -1
  314. package/dist/esm-es5/cty-cascader.entry.js +1 -1
  315. package/dist/esm-es5/cty-circle.entry.js +1 -0
  316. package/dist/esm-es5/cty-count-down.entry.js +1 -1
  317. package/dist/esm-es5/cty-divider.entry.js +1 -1
  318. package/dist/esm-es5/cty-dropdown.entry.js +1 -1
  319. package/dist/esm-es5/cty-empty.entry.js +1 -1
  320. package/dist/esm-es5/cty-floating-bubble.entry.js +1 -1
  321. package/dist/esm-es5/cty-floating-panel.entry.js +1 -1
  322. package/dist/esm-es5/cty-icon.entry.js +1 -1
  323. package/dist/esm-es5/cty-image-upload.entry.js +1 -1
  324. package/dist/esm-es5/cty-image-viewer_6.entry.js +2 -2
  325. package/dist/esm-es5/cty-index-bar.entry.js +1 -1
  326. package/dist/esm-es5/cty-keyboard.entry.js +1 -1
  327. package/dist/esm-es5/cty-loading.entry.js +1 -1
  328. package/dist/esm-es5/cty-media-capture.entry.js +1 -1
  329. package/dist/esm-es5/cty-mui.js +1 -1
  330. package/dist/esm-es5/cty-notice-bar.entry.js +1 -1
  331. package/dist/esm-es5/cty-overlay.entry.js +1 -1
  332. package/dist/esm-es5/cty-pdf-viewer.entry.js +1 -1
  333. package/dist/esm-es5/cty-permission-purpose.entry.js +1 -1
  334. package/dist/esm-es5/cty-progress.entry.js +1 -1
  335. package/dist/esm-es5/cty-quick-access.entry.js +1 -1
  336. package/dist/esm-es5/cty-rate.entry.js +1 -1
  337. package/dist/esm-es5/cty-record.entry.js +1 -1
  338. package/dist/esm-es5/cty-segment-slides.entry.js +1 -1
  339. package/dist/esm-es5/cty-selector.entry.js +1 -1
  340. package/dist/esm-es5/cty-share-sheet.entry.js +1 -1
  341. package/dist/esm-es5/cty-side-panel.entry.js +1 -1
  342. package/dist/esm-es5/cty-stepper.entry.js +1 -1
  343. package/dist/esm-es5/cty-steps.entry.js +1 -1
  344. package/dist/esm-es5/cty-swipe_2.entry.js +1 -1
  345. package/dist/esm-es5/cty-text-ellipsis.entry.js +1 -1
  346. package/dist/esm-es5/cty-title-bar.entry.js +1 -1
  347. package/dist/esm-es5/cty-tour.entry.js +1 -1
  348. package/dist/esm-es5/cty-tutorial.entry.js +1 -1
  349. package/dist/esm-es5/cty-video.entry.js +1 -1
  350. package/dist/esm-es5/cty-virtual-list.entry.js +1 -1
  351. package/dist/esm-es5/image-picker-0JHjPizE.js +1 -0
  352. package/dist/esm-es5/index.js +1 -1
  353. package/dist/esm-es5/loader.js +1 -1
  354. package/dist/esm-es5/video-capture-B83C8hW9.js +1 -0
  355. package/dist/types/components/camera/camera.d.ts +14 -1
  356. package/dist/types/components/camera-photo/camera-photo.d.ts +11 -1
  357. package/dist/types/components/image-viewer/image-viewer.d.ts +1 -0
  358. package/dist/types/components/media-capture/media-capture.d.ts +8 -0
  359. package/dist/types/components/permission-alert/permission-alert.d.ts +17 -0
  360. package/dist/types/components/record/record.d.ts +9 -0
  361. package/dist/types/components/stepper/stepper.d.ts +1 -0
  362. package/dist/types/components/swiper/swiper.d.ts +1 -0
  363. package/dist/types/components/virtual-list/virtual-list.d.ts +1 -1
  364. package/dist/types/components.d.ts +75 -2
  365. package/dist/types/index.d.ts +1 -0
  366. package/dist/types/utils/native/audio-recorder.d.ts +3 -0
  367. package/dist/types/utils/native/camera-preview.d.ts +9 -1
  368. package/dist/types/utils/native/image-picker.d.ts +8 -0
  369. package/dist/types/utils/native/media-editor.d.ts +45 -0
  370. package/dist/types/utils/native/video-capture.d.ts +3 -0
  371. package/package.json +2 -2
  372. package/dist/cty-mui/p-1078ee6a.system.entry.js +0 -1
  373. package/dist/cty-mui/p-1cb056b2.system.entry.js +0 -1
  374. package/dist/cty-mui/p-1d3aca02.entry.js +0 -1
  375. package/dist/cty-mui/p-2F5bjTGm.system.js +0 -1
  376. package/dist/cty-mui/p-3f54848b.entry.js +0 -1
  377. package/dist/cty-mui/p-4XVRwqXU.js +0 -1
  378. package/dist/cty-mui/p-62a9c160.entry.js +0 -1
  379. package/dist/cty-mui/p-68d73325.entry.js +0 -5
  380. package/dist/cty-mui/p-6dddba8f.system.entry.js +0 -1
  381. package/dist/cty-mui/p-751ca0a3.system.entry.js +0 -4
  382. package/dist/cty-mui/p-8b03016d.entry.js +0 -1
  383. package/dist/cty-mui/p-C6cVxtBr.system.js +0 -1
  384. package/dist/cty-mui/p-CcRtmdkf.system.js +0 -1
  385. package/dist/cty-mui/p-D0fcC0rL.js +0 -1
  386. package/dist/cty-mui/p-DTfCyY9u.system.js +0 -1
  387. package/dist/cty-mui/p-Dty0N6Ky.system.js +0 -1
  388. package/dist/cty-mui/p-SS7McUtz.js +0 -1
  389. package/dist/cty-mui/p-adc25955.system.entry.js +0 -1
  390. package/dist/cty-mui/p-c3bb2f2a.entry.js +0 -1
  391. package/dist/cty-mui/p-db2289f6.entry.js +0 -1
  392. package/dist/cty-mui/p-ea36cfac.entry.js +0 -1
  393. package/dist/cty-mui/p-f57da567.system.entry.js +0 -1
  394. package/dist/cty-mui/p-fd7e26fd.entry.js +0 -1
  395. package/dist/cty-mui/p-ff4436a4.entry.js +0 -1
  396. package/dist/cty-mui/p-fpbYSnt8.js +0 -1
  397. package/dist/esm-es5/audio-recorder-CbuBJ-u7.js +0 -1
  398. package/dist/esm-es5/camera-preview-SS7McUtz.js +0 -1
  399. package/dist/esm-es5/image-picker-FShbNAm_.js +0 -1
  400. package/dist/esm-es5/video-capture-B1wGDp4R.js +0 -1
@@ -1,6 +1,7 @@
1
1
  import type { ComponentInterface } from '../../stencil-public-runtime';
2
2
  import type { ResourceResult } from '../../interface';
3
3
  import { EventEmitter } from '../../stencil-public-runtime';
4
+ import { AlertButton } from '../../interface';
4
5
  export declare class MediaCapture implements ComponentInterface {
5
6
  el: HTMLCtyMediaCaptureElement;
6
7
  confirmText: string;
@@ -13,6 +14,9 @@ export declare class MediaCapture implements ComponentInterface {
13
14
  controls: boolean;
14
15
  poster: string;
15
16
  timeLimit: number;
17
+ permissionAlertTitle: string;
18
+ permissionAlertContent: string;
19
+ permissionAlertbuttons?: AlertButton[];
16
20
  ctyDismiss: EventEmitter<void>;
17
21
  ctyComplete: EventEmitter<ResourceResult>;
18
22
  ctyStart: EventEmitter<void>;
@@ -22,6 +26,8 @@ export declare class MediaCapture implements ComponentInterface {
22
26
  captureDuration: number;
23
27
  filePath: string;
24
28
  videoFileUrl: string;
29
+ hasPermission: boolean;
30
+ permissionAlertVisible: boolean;
25
31
  private videoEl;
26
32
  private originalBodyBackground;
27
33
  private _timer;
@@ -34,5 +40,7 @@ export declare class MediaCapture implements ComponentInterface {
34
40
  private doHeaderAction;
35
41
  private toggleVideo;
36
42
  private confirm;
43
+ private toOpenAppSetting;
44
+ private closePermissionAlert;
37
45
  render(): any;
38
46
  }
@@ -0,0 +1,17 @@
1
+ import { EventEmitter } from '../../stencil-public-runtime';
2
+ import type { ComponentInterface } from '../../stencil-public-runtime';
3
+ import { CTYSafeString } from "../../utils/sanitization/index";
4
+ import { AlertButton, AlertTapEventDetail } from '../../interface';
5
+ export declare class PermissionAlert implements ComponentInterface {
6
+ el: HTMLCtyPermissionAlertElement;
7
+ backdropDismiss: boolean;
8
+ title: string;
9
+ content: string | CTYSafeString;
10
+ closeable: boolean;
11
+ buttons: AlertButton[];
12
+ ctyDismiss: EventEmitter<void>;
13
+ ctyTap: EventEmitter<AlertTapEventDetail>;
14
+ _buttonClick(event: CustomEvent): void;
15
+ _dismiss(): void;
16
+ render(): any;
17
+ }
@@ -2,6 +2,7 @@ import type { ComponentInterface } from '../../stencil-public-runtime';
2
2
  import type { OverlayInterface } from "../../utils/overlays";
3
3
  import type { AnimationBuilder, FrameworkDelegate } from '@ionic/core';
4
4
  import { EventEmitter } from '../../stencil-public-runtime';
5
+ import { AlertButton } from '../../interface';
5
6
  export declare class Record implements ComponentInterface, OverlayInterface {
6
7
  private readonly delegateController;
7
8
  private readonly lockController;
@@ -29,6 +30,9 @@ export declare class Record implements ComponentInterface, OverlayInterface {
29
30
  minSeconds: number;
30
31
  circleColor: string;
31
32
  circleWidth: number | string;
33
+ permissionAlertTitle: string;
34
+ permissionAlertContent: string;
35
+ permissionAlertbuttons?: AlertButton[];
32
36
  root: string;
33
37
  animated: boolean;
34
38
  cssClass?: string | string[];
@@ -46,6 +50,8 @@ export declare class Record implements ComponentInterface, OverlayInterface {
46
50
  lasttime: number;
47
51
  countDownTimer: number;
48
52
  audioFile: string;
53
+ hasPermission: boolean;
54
+ permissionAlertVisible: boolean;
49
55
  showWarning: boolean;
50
56
  toastOptions: {
51
57
  isOpen: boolean;
@@ -63,6 +69,7 @@ export declare class Record implements ComponentInterface, OverlayInterface {
63
69
  resetRecordState(): Promise<void>;
64
70
  private restartRecording;
65
71
  private handleRecordAction;
72
+ private requestPermission;
66
73
  startRecord(): Promise<void>;
67
74
  stopRecording(): Promise<void>;
68
75
  private endRecord;
@@ -70,5 +77,7 @@ export declare class Record implements ComponentInterface, OverlayInterface {
70
77
  private handleCloseRecord;
71
78
  private countDown;
72
79
  private handleAlertAction;
80
+ private toOpenAppSetting;
81
+ private closePermissionAlert;
73
82
  render(): any;
74
83
  }
@@ -17,6 +17,7 @@ export declare class Stepper implements ComponentInterface {
17
17
  plusText: string;
18
18
  showPlus: boolean;
19
19
  disablePlus: boolean;
20
+ beforeChange: (value: number | string, step: number) => boolean | Promise<boolean>;
20
21
  ctyMinus: EventEmitter<number | string>;
21
22
  ctyPlus: EventEmitter<number | string>;
22
23
  ctyBlur: EventEmitter<{
@@ -22,6 +22,7 @@ export declare class Swiper implements ComponentInterface {
22
22
  bannersChanged(): void;
23
23
  componentWillLoad(): void;
24
24
  componentDidLoad(): void;
25
+ disconnectedCallback(): void;
25
26
  private slideChange;
26
27
  private slideClick;
27
28
  refreshSwiper(): Promise<void>;
@@ -6,11 +6,11 @@ export declare class VirtualList implements ComponentInterface {
6
6
  items: any[];
7
7
  direction: VirtualDirection;
8
8
  preloadItemCount: number;
9
+ itemRender?: (item: any, index: number) => HTMLElement | string;
9
10
  containerHeight?: number;
10
11
  itemKey?: string;
11
12
  ctyScroll: EventEmitter<void>;
12
13
  visibleItems: any[];
13
- private scrollContainerEl;
14
14
  private itemsContainerEl;
15
15
  private itemHeight;
16
16
  private itemPositions;
@@ -15,9 +15,9 @@ import { ArticleCardLayout } from "./components/article-card/article-card-interf
15
15
  import { BannerItem, BannerItemProps } from "./components/banner/banner-interface";
16
16
  import { CameraPreviewOptions } from "./utils/native/camera-preview";
17
17
  import { PhotoMode } from "./components/camera/camera-interface";
18
+ import { AlertButton as AlertButton1, AlertTapEventDetail as AlertTapEventDetail1, BannerItem as BannerItem1, BannerItemProps as BannerItemProps1, CameraPhotoOptions, CameraProps, ImageViewerOptions, ResourceResult as ResourceResult1 } from "./interface";
18
19
  import { CameraOptions, ImagePickerOptions, ResourceResult } from "./utils/native/image-picker";
19
20
  import { CameraPhotoOption } from "./components/camera-photo/camera-photo-interface";
20
- import { BannerItem as BannerItem1, BannerItemProps as BannerItemProps1, CameraPhotoOptions, CameraProps, ImageViewerOptions, ResourceResult as ResourceResult1 } from "./interface";
21
21
  import { lineCapType } from "./components/canvas-board/canvas-board-interface";
22
22
  import { VideoCommonCustomEventDetail, VideoCustomEventDetail, VideoItem, VideoItemProps, VideoStateDetail } from "./components/canvas-video/canvas-video-interface";
23
23
  import { CascaderOption, CascaderTypes } from "./components/cascader/cascader-interface";
@@ -52,9 +52,9 @@ export { ArticleCardLayout } from "./components/article-card/article-card-interf
52
52
  export { BannerItem, BannerItemProps } from "./components/banner/banner-interface";
53
53
  export { CameraPreviewOptions } from "./utils/native/camera-preview";
54
54
  export { PhotoMode } from "./components/camera/camera-interface";
55
+ export { AlertButton as AlertButton1, AlertTapEventDetail as AlertTapEventDetail1, BannerItem as BannerItem1, BannerItemProps as BannerItemProps1, CameraPhotoOptions, CameraProps, ImageViewerOptions, ResourceResult as ResourceResult1 } from "./interface";
55
56
  export { CameraOptions, ImagePickerOptions, ResourceResult } from "./utils/native/image-picker";
56
57
  export { CameraPhotoOption } from "./components/camera-photo/camera-photo-interface";
57
- export { BannerItem as BannerItem1, BannerItemProps as BannerItemProps1, CameraPhotoOptions, CameraProps, ImageViewerOptions, ResourceResult as ResourceResult1 } from "./interface";
58
58
  export { lineCapType } from "./components/canvas-board/canvas-board-interface";
59
59
  export { VideoCommonCustomEventDetail, VideoCustomEventDetail, VideoItem, VideoItemProps, VideoStateDetail } from "./components/canvas-video/canvas-video-interface";
60
60
  export { CascaderOption, CascaderTypes } from "./components/cascader/cascader-interface";
@@ -196,10 +196,14 @@ export namespace Components {
196
196
  "flipCamera": () => Promise<string>;
197
197
  "flipText": string;
198
198
  "height": number;
199
+ "includeThumb": boolean;
199
200
  "max": number;
200
201
  "mode": PhotoMode;
201
202
  "multipleText": string;
202
203
  "options": CameraPreviewOptions;
204
+ "permissionAlertContent": string;
205
+ "permissionAlertTitle": string;
206
+ "permissionAlertbuttons"?: AlertButton1[];
203
207
  "quality": number;
204
208
  "ratioChange": () => Promise<string>;
205
209
  "ratioText": string;
@@ -208,6 +212,7 @@ export namespace Components {
208
212
  "setZoom": (idx: number) => Promise<string>;
209
213
  "singleText": string;
210
214
  "takePhoto": () => Promise<ResourceResult | undefined>;
215
+ "thumbWidth": number;
211
216
  "title": string;
212
217
  "toggleFlash": () => Promise<string>;
213
218
  "touchZoom": boolean;
@@ -246,6 +251,9 @@ export namespace Components {
246
251
  "options": CameraPhotoOption[];
247
252
  "overlay": boolean;
248
253
  "overlayIndex": number;
254
+ "permissionAlertContent": string;
255
+ "permissionAlertTitle": string;
256
+ "permissionAlertbuttons"?: AlertButton1[];
249
257
  "permissionPurpose": boolean;
250
258
  "photoOption": CameraOptions | ImagePickerOptions;
251
259
  "present": () => Promise<void>;
@@ -478,6 +486,9 @@ export namespace Components {
478
486
  "controls": boolean;
479
487
  "loop": boolean;
480
488
  "options": Record<string, any>;
489
+ "permissionAlertContent": string;
490
+ "permissionAlertTitle": string;
491
+ "permissionAlertbuttons"?: AlertButton1[];
481
492
  "poster": string;
482
493
  "revocationIcon": string;
483
494
  "startVideoCapture": () => Promise<void>;
@@ -521,6 +532,13 @@ export namespace Components {
521
532
  "url": string;
522
533
  "viewerUrl": string;
523
534
  }
535
+ interface CtyPermissionAlert {
536
+ "backdropDismiss": boolean;
537
+ "buttons": AlertButton1[];
538
+ "closeable": boolean;
539
+ "content": string | CTYSafeString;
540
+ "title": string;
541
+ }
524
542
  interface CtyPermissionPurpose {
525
543
  "backdropDismiss": boolean;
526
544
  "description": string | CTYSafeString;
@@ -569,6 +587,9 @@ export namespace Components {
569
587
  "onDidDismiss": () => Promise<void>;
570
588
  "onWillDismiss": () => Promise<void>;
571
589
  "overlayIndex": number;
590
+ "permissionAlertContent": string;
591
+ "permissionAlertTitle": string;
592
+ "permissionAlertbuttons"?: AlertButton1[];
572
593
  "present": () => Promise<void>;
573
594
  "resetRecordState": () => Promise<void>;
574
595
  "root": string;
@@ -635,6 +656,7 @@ export namespace Components {
635
656
  interface CtyStep {
636
657
  }
637
658
  interface CtyStepper {
659
+ "beforeChange": (value: number | string, step: number) => boolean | Promise<boolean>;
638
660
  "disableInput": boolean;
639
661
  "disableMinus": boolean;
640
662
  "disablePlus": boolean;
@@ -806,6 +828,7 @@ export namespace Components {
806
828
  "containerHeight"?: number;
807
829
  "direction": VirtualDirection;
808
830
  "itemKey"?: string;
831
+ "itemRender"?: (item: any, index: number) => HTMLElement | string;
809
832
  "items": any[];
810
833
  "preloadItemCount": number;
811
834
  }
@@ -918,6 +941,10 @@ export interface CtyPdfViewerCustomEvent<T> extends CustomEvent<T> {
918
941
  detail: T;
919
942
  target: HTMLCtyPdfViewerElement;
920
943
  }
944
+ export interface CtyPermissionAlertCustomEvent<T> extends CustomEvent<T> {
945
+ detail: T;
946
+ target: HTMLCtyPermissionAlertElement;
947
+ }
921
948
  export interface CtyPermissionPurposeCustomEvent<T> extends CustomEvent<T> {
922
949
  detail: T;
923
950
  target: HTMLCtyPermissionPurposeElement;
@@ -1565,6 +1592,24 @@ declare global {
1565
1592
  prototype: HTMLCtyPdfViewerElement;
1566
1593
  new (): HTMLCtyPdfViewerElement;
1567
1594
  };
1595
+ interface HTMLCtyPermissionAlertElementEventMap {
1596
+ "ctyDismiss": void;
1597
+ "ctyTap": AlertTapEventDetail1;
1598
+ }
1599
+ interface HTMLCtyPermissionAlertElement extends Components.CtyPermissionAlert, HTMLStencilElement {
1600
+ addEventListener<K extends keyof HTMLCtyPermissionAlertElementEventMap>(type: K, listener: (this: HTMLCtyPermissionAlertElement, ev: CtyPermissionAlertCustomEvent<HTMLCtyPermissionAlertElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
1601
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1602
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1603
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
1604
+ removeEventListener<K extends keyof HTMLCtyPermissionAlertElementEventMap>(type: K, listener: (this: HTMLCtyPermissionAlertElement, ev: CtyPermissionAlertCustomEvent<HTMLCtyPermissionAlertElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
1605
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
1606
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
1607
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
1608
+ }
1609
+ var HTMLCtyPermissionAlertElement: {
1610
+ prototype: HTMLCtyPermissionAlertElement;
1611
+ new (): HTMLCtyPermissionAlertElement;
1612
+ };
1568
1613
  interface HTMLCtyPermissionPurposeElementEventMap {
1569
1614
  "ctyDismiss": void;
1570
1615
  }
@@ -1974,6 +2019,7 @@ declare global {
1974
2019
  "cty-notice-bar": HTMLCtyNoticeBarElement;
1975
2020
  "cty-overlay": HTMLCtyOverlayElement;
1976
2021
  "cty-pdf-viewer": HTMLCtyPdfViewerElement;
2022
+ "cty-permission-alert": HTMLCtyPermissionAlertElement;
1977
2023
  "cty-permission-purpose": HTMLCtyPermissionPurposeElement;
1978
2024
  "cty-progress": HTMLCtyProgressElement;
1979
2025
  "cty-quick-access": HTMLCtyQuickAccessElement;
@@ -2112,6 +2158,7 @@ declare namespace LocalJSX {
2112
2158
  "flashText"?: string;
2113
2159
  "flipText"?: string;
2114
2160
  "height"?: number;
2161
+ "includeThumb"?: boolean;
2115
2162
  "max"?: number;
2116
2163
  "mode"?: PhotoMode;
2117
2164
  "multipleText"?: string;
@@ -2119,11 +2166,15 @@ declare namespace LocalJSX {
2119
2166
  "onCtyDismiss"?: (event: CtyCameraCustomEvent<void>) => void;
2120
2167
  "onCtyTakePhoto"?: (event: CtyCameraCustomEvent<ResourceResult>) => void;
2121
2168
  "options"?: CameraPreviewOptions;
2169
+ "permissionAlertContent"?: string;
2170
+ "permissionAlertTitle"?: string;
2171
+ "permissionAlertbuttons"?: AlertButton1[];
2122
2172
  "quality"?: number;
2123
2173
  "ratioText"?: string;
2124
2174
  "ratios"?: string[];
2125
2175
  "safeArea"?: number;
2126
2176
  "singleText"?: string;
2177
+ "thumbWidth"?: number;
2127
2178
  "title"?: string;
2128
2179
  "touchZoom"?: boolean;
2129
2180
  "touchZoomProp"?: number;
@@ -2162,6 +2213,9 @@ declare namespace LocalJSX {
2162
2213
  "onCtyWillPresent"?: (event: CtyCameraPhotoCustomEvent<void>) => void;
2163
2214
  "options"?: CameraPhotoOption[];
2164
2215
  "overlay"?: boolean;
2216
+ "permissionAlertContent"?: string;
2217
+ "permissionAlertTitle"?: string;
2218
+ "permissionAlertbuttons"?: AlertButton1[];
2165
2219
  "permissionPurpose"?: boolean;
2166
2220
  "photoOption"?: CameraOptions | ImagePickerOptions;
2167
2221
  "root"?: string;
@@ -2421,6 +2475,9 @@ declare namespace LocalJSX {
2421
2475
  "onCtyStart"?: (event: CtyMediaCaptureCustomEvent<void>) => void;
2422
2476
  "onCtyStop"?: (event: CtyMediaCaptureCustomEvent<void>) => void;
2423
2477
  "options"?: Record<string, any>;
2478
+ "permissionAlertContent"?: string;
2479
+ "permissionAlertTitle"?: string;
2480
+ "permissionAlertbuttons"?: AlertButton1[];
2424
2481
  "poster"?: string;
2425
2482
  "revocationIcon"?: string;
2426
2483
  "timeLimit"?: number;
@@ -2464,6 +2521,15 @@ declare namespace LocalJSX {
2464
2521
  "url"?: string;
2465
2522
  "viewerUrl"?: string;
2466
2523
  }
2524
+ interface CtyPermissionAlert {
2525
+ "backdropDismiss"?: boolean;
2526
+ "buttons"?: AlertButton1[];
2527
+ "closeable"?: boolean;
2528
+ "content"?: string | CTYSafeString;
2529
+ "onCtyDismiss"?: (event: CtyPermissionAlertCustomEvent<void>) => void;
2530
+ "onCtyTap"?: (event: CtyPermissionAlertCustomEvent<AlertTapEventDetail1>) => void;
2531
+ "title"?: string;
2532
+ }
2467
2533
  interface CtyPermissionPurpose {
2468
2534
  "backdropDismiss"?: boolean;
2469
2535
  "description"?: string | CTYSafeString;
@@ -2520,6 +2586,9 @@ declare namespace LocalJSX {
2520
2586
  "onCtyRecording"?: (event: CtyRecordCustomEvent<void>) => void;
2521
2587
  "onCtyWillDismiss"?: (event: CtyRecordCustomEvent<void>) => void;
2522
2588
  "onCtyWillPresent"?: (event: CtyRecordCustomEvent<void>) => void;
2589
+ "permissionAlertContent"?: string;
2590
+ "permissionAlertTitle"?: string;
2591
+ "permissionAlertbuttons"?: AlertButton1[];
2523
2592
  "root"?: string;
2524
2593
  "trigger"?: string | undefined;
2525
2594
  }
@@ -2585,6 +2654,7 @@ declare namespace LocalJSX {
2585
2654
  interface CtyStep {
2586
2655
  }
2587
2656
  interface CtyStepper {
2657
+ "beforeChange"?: (value: number | string, step: number) => boolean | Promise<boolean>;
2588
2658
  "disableInput"?: boolean;
2589
2659
  "disableMinus"?: boolean;
2590
2660
  "disablePlus"?: boolean;
@@ -2761,6 +2831,7 @@ declare namespace LocalJSX {
2761
2831
  "containerHeight"?: number;
2762
2832
  "direction"?: VirtualDirection;
2763
2833
  "itemKey"?: string;
2834
+ "itemRender"?: (item: any, index: number) => HTMLElement | string;
2764
2835
  "items"?: any[];
2765
2836
  "onCtyScroll"?: (event: CtyVirtualListCustomEvent<void>) => void;
2766
2837
  "preloadItemCount"?: number;
@@ -2799,6 +2870,7 @@ declare namespace LocalJSX {
2799
2870
  "cty-notice-bar": CtyNoticeBar;
2800
2871
  "cty-overlay": CtyOverlay;
2801
2872
  "cty-pdf-viewer": CtyPdfViewer;
2873
+ "cty-permission-alert": CtyPermissionAlert;
2802
2874
  "cty-permission-purpose": CtyPermissionPurpose;
2803
2875
  "cty-progress": CtyProgress;
2804
2876
  "cty-quick-access": CtyQuickAccess;
@@ -2859,6 +2931,7 @@ declare module "@stencil/core" {
2859
2931
  "cty-notice-bar": LocalJSX.CtyNoticeBar & JSXBase.HTMLAttributes<HTMLCtyNoticeBarElement>;
2860
2932
  "cty-overlay": LocalJSX.CtyOverlay & JSXBase.HTMLAttributes<HTMLCtyOverlayElement>;
2861
2933
  "cty-pdf-viewer": LocalJSX.CtyPdfViewer & JSXBase.HTMLAttributes<HTMLCtyPdfViewerElement>;
2934
+ "cty-permission-alert": LocalJSX.CtyPermissionAlert & JSXBase.HTMLAttributes<HTMLCtyPermissionAlertElement>;
2862
2935
  "cty-permission-purpose": LocalJSX.CtyPermissionPurpose & JSXBase.HTMLAttributes<HTMLCtyPermissionPurposeElement>;
2863
2936
  "cty-progress": LocalJSX.CtyProgress & JSXBase.HTMLAttributes<HTMLCtyProgressElement>;
2864
2937
  "cty-quick-access": LocalJSX.CtyQuickAccess & JSXBase.HTMLAttributes<HTMLCtyQuickAccessElement>;
@@ -25,6 +25,7 @@ export { CTYDeviceInfo, deviceInfo } from './utils/native/device-info';
25
25
  export { ResourceResult, MediaSourceType, DocumentOptions, CameraOptions, CameraPopoverOptions, ImagePickerOptions, ImagePickerType, PictureOptions, CTYImagePicker, imagePicker } from './utils/native/image-picker';
26
26
  export { CTYKeyboard, keyboard } from './utils/native/keyboard';
27
27
  export { DownloadMediaType, DownloadOptions, LibraryMediaItem, ThumbnailOptions, CTYMediaDownloader, mediaDownloader } from './utils/native/media-downloader';
28
+ export { VideoTrsanferOptions, AudioTrsanferOptions, ThumbnailTrsanferOptions, CTYMediaEditor, mediaEditor } from './utils/native/media-editor';
28
29
  export { CTYNetwork, network } from './utils/native/network';
29
30
  export { WXPaymentOptions, CTYPayment, payment } from './utils/native/payment';
30
31
  export { CTYScreenOrientation, screenOrientation } from './utils/native/screen-orientation';
@@ -30,6 +30,9 @@ export declare class CTYAudioRecorder {
30
30
  private _stopNativeRecording;
31
31
  private _startWxRecording;
32
32
  private _stopWxRecording;
33
+ hasPermission(): Promise<boolean>;
34
+ requestPermission(): Promise<void>;
35
+ openAppSettings(): Promise<void>;
33
36
  uploadWxRecording(localId: string, tip?: UploadProgressTip): Promise<ServerId>;
34
37
  startRecording(options?: AudioRecordOptions): Promise<boolean>;
35
38
  stopRecording(): Promise<string>;
@@ -16,6 +16,9 @@ export interface CameraPreviewOptions {
16
16
  export declare class CTYCameraPreview {
17
17
  get cameraPreviewPlugin(): any;
18
18
  get isCameraPreviewAvailable(): boolean;
19
+ hasPermission(): Promise<boolean>;
20
+ requestPermission(): Promise<void>;
21
+ openAppSettings(): Promise<void>;
19
22
  startCamera(options: CameraPreviewOptions): Promise<string>;
20
23
  stopCamera(): Promise<string>;
21
24
  switchCamera(): Promise<string>;
@@ -23,7 +26,12 @@ export declare class CTYCameraPreview {
23
26
  width?: number;
24
27
  height?: number;
25
28
  quality?: number;
26
- }): Promise<string>;
29
+ includeThumb?: boolean;
30
+ thumbWidth?: number;
31
+ }): Promise<string | {
32
+ image: string;
33
+ thumbnail: string;
34
+ }>;
27
35
  takeSnapshot(options: {
28
36
  quality?: number;
29
37
  }): Promise<string>;
@@ -1,6 +1,7 @@
1
1
  export interface ResourceResult {
2
2
  url: string;
3
3
  data: string;
4
+ thumbnail?: string;
4
5
  }
5
6
  export declare enum MediaSourceType {
6
7
  PHOTOLIBRARY = "PHOTOLIBRARY",
@@ -132,6 +133,10 @@ export interface ImagePickerOptions {
132
133
  * Disable the iOS popover as seen on iPad
133
134
  */
134
135
  disable_popover?: boolean;
136
+ /**
137
+ * Return to original image and thumbnail {image: string; thumbnail: string}
138
+ */
139
+ includeThumb?: boolean;
135
140
  }
136
141
  export declare enum ImagePickerType {
137
142
  CAMERA = 0,
@@ -161,6 +166,9 @@ export declare class CTYImagePicker {
161
166
  private _chooseImage;
162
167
  private _capturePhoto;
163
168
  private _selectPictures;
169
+ hasPermission(): Promise<boolean>;
170
+ requestPermission(): Promise<boolean>;
171
+ openAppSettings(): Promise<void>;
164
172
  getPictures(options?: PictureOptions): Promise<ResourceResult[]>;
165
173
  selectDocument(options?: DocumentOptions): Promise<string>;
166
174
  }
@@ -0,0 +1,45 @@
1
+ export interface VideoTrsanferOptions {
2
+ outputFileName?: string;
3
+ outputFileType?: string;
4
+ optimizeForNetworkUse?: number;
5
+ saveToLibrary?: boolean;
6
+ deleteInputFile?: boolean;
7
+ maintainAspectRatio?: boolean;
8
+ width?: number;
9
+ height?: number;
10
+ videoBitrate?: number;
11
+ fps?: number;
12
+ audioChannels?: number;
13
+ audioSampleRate?: number;
14
+ audioBitrate?: number;
15
+ progress?: (info: number) => void;
16
+ }
17
+ export interface AudioTrsanferOptions {
18
+ outputFileName?: string;
19
+ outputFileType?: string;
20
+ optimizeForNetworkUse?: number;
21
+ saveToLibrary?: boolean;
22
+ deleteInputFile?: boolean;
23
+ audioChannels?: number;
24
+ audioSampleRate?: number;
25
+ audioBitrate?: number;
26
+ progress?: (info: number) => void;
27
+ }
28
+ export interface ThumbnailTrsanferOptions {
29
+ outputFileName?: string;
30
+ atTime?: number;
31
+ width?: number;
32
+ height?: number;
33
+ quality?: number;
34
+ }
35
+ export declare class CTYMediaEditor {
36
+ private get _mediaEditorPlugin();
37
+ get isMediaEditorAvailable(): boolean;
38
+ hasPermission(): Promise<boolean>;
39
+ requestPermission(): Promise<boolean>;
40
+ openAppSettings(): Promise<void>;
41
+ videoTrsanfer(file: string, options?: VideoTrsanferOptions): Promise<string>;
42
+ audioTrsanfer(file: string, options?: AudioTrsanferOptions): Promise<string>;
43
+ createThumbnail(file: string, options?: ThumbnailTrsanferOptions): Promise<string>;
44
+ }
45
+ export declare const mediaEditor: CTYMediaEditor;
@@ -2,6 +2,9 @@ import type { ResourceResult } from '../../interface';
2
2
  export declare class CTYVideoCapture {
3
3
  private get _videoCapturePlugin();
4
4
  get isVideoCaptureAvailable(): boolean;
5
+ hasPermission(): Promise<boolean>;
6
+ requestPermission(): Promise<boolean>;
7
+ openAppSettings(): Promise<void>;
5
8
  captureVideo(options: Record<string, any>): Promise<ResourceResult | null>;
6
9
  startVideoCapture(): Promise<void>;
7
10
  stopVideoCapture(): Promise<void>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cty-mui-core",
3
- "version": "1.0.37",
3
+ "version": "1.0.39",
4
4
  "description": "Stencil Component Starter",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.js",
@@ -19,7 +19,7 @@
19
19
  ],
20
20
  "dependencies": {
21
21
  "@ionic/core": "^7.8.6",
22
- "@stencil/core": "^4.31.0",
22
+ "@stencil/core": "4.31.0",
23
23
  "fs-extra": "^11.3.4",
24
24
  "ionicons": "^7.4.0",
25
25
  "rxjs": "^7.8.2",
@@ -1 +0,0 @@
1
- var __awaiter=this&&this.__awaiter||function(t,e,r,o){function i(t){return t instanceof r?t:new r((function(e){e(t)}))}return new(r||(r=Promise))((function(r,c){function s(t){try{a(o.next(t))}catch(t){c(t)}}function n(t){try{a(o["throw"](t))}catch(t){c(t)}}function a(t){t.done?r(t.value):i(t.value).then(s,n)}a((o=o.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var r={label:0,sent:function(){if(c[0]&1)throw c[1];return c[1]},trys:[],ops:[]},o,i,c,s;return s={next:n(0),throw:n(1),return:n(2)},typeof Symbol==="function"&&(s[Symbol.iterator]=function(){return this}),s;function n(t){return function(e){return a([t,e])}}function a(n){if(o)throw new TypeError("Generator is already executing.");while(s&&(s=0,n[0]&&(r=0)),r)try{if(o=1,i&&(c=n[0]&2?i["return"]:n[0]?i["throw"]||((c=i["return"])&&c.call(i),0):i.next)&&!(c=c.call(i,n[1])).done)return c;if(i=0,c)n=[n[0]&2,c.value];switch(n[0]){case 0:case 1:c=n;break;case 4:r.label++;return{value:n[1],done:false};case 5:r.label++;i=n[1];n=[0];continue;case 7:n=r.ops.pop();r.trys.pop();continue;default:if(!(c=r.trys,c=c.length>0&&c[c.length-1])&&(n[0]===6||n[0]===2)){r=0;continue}if(n[0]===3&&(!c||n[1]>c[0]&&n[1]<c[3])){r.label=n[1];break}if(n[0]===6&&r.label<c[1]){r.label=c[1];c=n;break}if(c&&r.label<c[2]){r.label=c[2];r.ops.push(n);break}if(c[2])r.ops.pop();r.trys.pop();continue}n=e.call(t,r)}catch(t){n=[6,t];i=0}finally{o=c=0}if(n[0]&5)throw n[1];return{value:n[0]?n[1]:void 0,done:true}}};System.register(["./p-BpC3ubr-.system.js","./p-BTWzFg6e.system.js","./p-DTfCyY9u.system.js","./p-DJ6AO4zz.system.js","./p-CMMoObqS.system.js","./p-cQwGvN5a.system.js","./p-FsCPkocx.system.js","./p-BWNXSNBe.system.js","./p-NPOR6IxC.system.js","./p-B6ewx4qT.system.js","./p-DvPCY95C.system.js","./p-D5YThY9F.system.js","./p-Ck01D6Xe.system.js","./p-CKjUa3W_.system.js"],(function(t){"use strict";var e,r,o,i,c,s,n,a,l,f,d,u,y,h,b,p,x,m,g,v;return{setters:[function(t){e=t.r;r=t.c;o=t.h;i=t.a;c=t.g},function(t){s=t.d},function(t){n=t.a},function(t){a=t.e;l=t.f;f=t.p;d=t.g;u=t.h;y=t.j;h=t.k},function(t){b=t.c},function(t){p=t.r},function(t){x=t.g;m=t.e;g=t.l},function(t){v=t.o},null,null,null,null,null,null],execute:function(){var w="*{-webkit-box-sizing:border-box;box-sizing:border-box}p,h1,h2,h3,h4,h5,h6{margin:0;padding:0}.cty-pos-rel{position:relative}.cty-pos-abs{position:absolute}.cty-pos-fix{position:fixed}.cty-pos-sti{position:-webkit-sticky;position:sticky}.cty-pos-cover{position:absolute;top:0;bottom:0;left:0;right:0}.cty-pos-l-t{position:absolute;left:0;top:0}.cty-pos-l-b{position:absolute;left:0;bottom:0}.cty-pos-r-t{position:absolute;right:0;top:0}.cty-pos-r-b{position:absolute;right:0;bottom:0}.cty-pos-100{position:absolute;left:0;top:0;width:100%;height:100%}.cty-pos-w100{position:absolute;left:0;width:100%}.cty-pos-h100{position:absolute;top:0;height:100%}.cty-pos-c{position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%)}.cty-pos-c-x{position:absolute;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.cty-pos-c-x-t{position:absolute;top:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.cty-pos-c-x-b{position:absolute;bottom:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.cty-pos-c-y{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.cty-pos-c-y-l{position:absolute;left:0;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.cty-pos-c-y-r{position:absolute;right:0;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.flex{display:-ms-flexbox;display:flex}.flex-wrap{display:-ms-flexbox;display:flex;-ms-flex-flow:wrap;flex-flow:wrap}.flex-align-start{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start}.flex-align-center{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.flex-align-end{display:-ms-flexbox;display:flex;-ms-flex-align:end;align-items:flex-end}.flex-justify-start{display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start}.flex-justify-center{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center}.flex-justify-end{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.flex-align-end-start{display:-ms-flexbox;display:flex;-ms-flex-align:end;align-items:flex-end;-ms-flex-pack:start;justify-content:flex-start}.flex-align-end-center{display:-ms-flexbox;display:flex;-ms-flex-align:end;align-items:flex-end;-ms-flex-pack:center;justify-content:center}.flex-align-end-end{display:-ms-flexbox;display:flex;-ms-flex-align:end;align-items:flex-end;-ms-flex-pack:end;justify-content:flex-end}.flex-center{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.flex-center-justify-end{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}.flex-between{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.flex-center-between{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.flex-column{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column}.flex-column-align-center{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-align:center;align-items:center}.flex-column-justify-center{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-pack:center;justify-content:center}.flex-column-center{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.flex-column-between{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-pack:justify;justify-content:space-between}.flex-column-center-between{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.cty-button-native{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;margin:0;padding:0;background:transparent;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;line-height:1;border:0;outline:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0;-webkit-box-shadow:none;box-shadow:none;cursor:pointer}ion-button{--background-activated:transparent;--background-focused:transparent;--background-hover:transparent;--box-shadow:none}ion-grid{padding:0}ion-row{padding:0}ion-col{padding:0}ion-item{--padding-bottom:0;--padding-end:0;--padding-start:0;--padding-top:0;--inner-padding-top:0;--inner-padding-start:0;--inner-padding-end:0;--inner-padding-bottom:0;--inner-border-width:0;--border-width:0;--min-height:0;--background:none;overflow:initial}ion-toast{--width:84%;--height:36px;--color:var(--cty-color-white);--background:rgba(0, 0, 0, 0.7);--border-radius:100px;line-height:1.2;font-size:var(--cty-font-size-base);text-align:center}.plt-hybrid .safe-area-bottom-border{-webkit-box-sizing:content-box;box-sizing:content-box;border-bottom:var(--ion-safe-area-bottom, 0) solid var(--cty-color-white)}.plt-hybrid .safe-area-bottom-border-color{-webkit-box-sizing:content-box;box-sizing:content-box;border-bottom:var(--ion-safe-area-bottom, 0) solid currentColor}.plt-hybrid .safe-area-bottom-padding{padding-bottom:var(--ion-safe-area-bottom, 0)}:host{--cty-record-overlay-position:fixed;--cty-record-overlay-z-index:10;--cty-record-overlay-background:var(--cty-overlay-color);--cty-record-overlay-width:100vw;--cty-record-overlay-height:100vh;--cty-record-border-radius:8px 8px 0 0;--cty-record-padding:20px;--cty-record-close-top:8px;--cty-record-close-right:8px;--cty-record-close-color:var(--cty-text-color-regular);--cty-record-close-size:26px;--cty-record-desc-color:#bfbfbf;--cty-record-desc-size:var(--cty-font-size-small);--cty-record-time-color:var(--cty-text-color-secondary);--cty-record-time-size:var(--cty-font-size-small);--cty-record-time-offset:10px 0;--cty-record-button-width:96px;--cty-record-button-height:96px;--cty-record-button-background:var(--cty-color-primary);--cty-record-button-offset:0 30px;--cty-record-button-shadow:0px 6px 15px 0px rgba(56, 54, 166, 0.35);--cty-record-button-icon-size:32px;--cty-record-button-icon-color:var(--cty-color-white);--cty-record-button-active-icon-color:var(--cty-color-primary);--cty-record-subbutton-width:56px;--cty-record-subbutton-height:56px;--cty-record-subbutton-color:#a6a6a6;--cty-record-subbutton-font-offset:10px 0 0;--cty-record-subbutton-font-size:var(--cty-font-size-small);--cty-record-subbutton-icon-size:24px;--cty-record-subbutton-icon-shadow:0 0 8px 2px #f8f8f8;--cty-record-init-color:var(--cty-color-primary);--cty-record-init-size:var(--cty-font-size-small);--cty-record-status-color:#a8a8a8;--cty-record-status-size:var(--cty-font-size-small);--cty-record-bottom-label-offset:12px 0;--cty-record-circle-color:#f0f0f0;line-height:1}:host(.overlay-hidden){display:none}cty-backdrop{position:var(--cty-record-overlay-position);z-index:var(--cty-record-overlay-z-index);background:var(--cty-record-overlay-background);width:var(--cty-record-overlay-width);height:var(--cty-record-overlay-height)}.cty-record{position:relative;width:100%;background:var(--cty-color-white);padding:var(--cty-record-padding);border-radius:var(--cty-record-border-radius)}.cty-record__close{position:absolute;right:var(--cty-record-close-right);top:var(--cty-record-close-top);font-size:var(--cty-record-close-size);color:var(--cty-record-close-color)}.cty-record__desc{font-size:var(--cty-record-desc-size);font-weight:500;color:var(--cty-record-desc-color);text-align:center}.cty-record__time{margin:var(--cty-record-time-offset);font-size:var(--cty-record-time-size);font-weight:500;color:var(--cty-record-time-color);text-align:center}.cty-record__button{width:var(--cty-record-button-width);height:var(--cty-record-button-height);background:var(--cty-record-button-background);margin:var(--cty-record-button-offset);border-radius:var(--cty-border-radius-circle);-webkit-box-shadow:var(--cty-record-button-shadow);box-shadow:var(--cty-record-button-shadow)}.cty-record__button cty-icon{color:var(--cty-record-button-icon-color);font-size:var(--cty-record-button-icon-size)}.cty-record__recording{position:relative;width:var(--cty-record-button-width);height:var(--cty-record-button-height);margin:var(--cty-record-button-offset);border-radius:var(--cty-border-radius-circle)}.cty-record__recording cty-icon{color:var(--cty-record-button-active-icon-color);font-size:var(--cty-record-button-icon-size)}cty-circle{position:absolute;top:0;left:0;--cty-circle-size:var(--cty-record-button-width);--cty-circle-color:var(--cty-record-circle-color)}.cty-record__redo span,.cty-record__yes span{margin:var(--cty-record-subbutton-font-offset);color:var(--cty-record-subbutton-color);font-size:var(--cty-record-subbutton-font-size)}.cty-record__redo cty-icon,.cty-record__yes cty-icon{display:-ms-flexbox;display:flex;width:var(--cty-record-subbutton-width);height:var(--cty-record-subbutton-height);border-radius:var(--cty-border-radius-circle);-webkit-box-shadow:var(--cty-record-subbutton-icon-shadow);box-shadow:var(--cty-record-subbutton-icon-shadow);color:var(--cty-record-subbutton-color);font-size:var(--cty-record-subbutton-icon-size)}.cty-record__send{margin:var(--cty-record-bottom-label-offset);font-size:var(--cty-record-init-size);font-weight:500;color:var(--cty-record-init-color);text-align:center}.cty-record__status{margin:var(--cty-record-bottom-label-offset);font-size:var(--cty-record-status-size);font-weight:500;color:var(--cty-record-status-color);text-align:center}cty-alert{--cty-alert-overlay-z-index:calc(var(--cty-record-overlay-z-index) + 1);--cty-alert-title-size:var(--cty-font-size-medium);--cty-alert-title-weight:bold;--cty-alert-content-align:center;--cty-alert-content-size:var(--cty-font-size-base);--cty-alert-translate-y:-8vh}.cty--record__alert-close{position:absolute;z-index:1;right:8px;top:12px;font-size:18px;color:var(--cty-text-color-regular);border-radius:var(--cty-border-radius-circle);border:1px solid var(--cty-text-color-white);width:24px;height:18px}";var k=t("cty_record",function(){function t(t){e(this,t);this.ctyRecordStart=r(this,"ctyRecordStart",7);this.ctyRecording=r(this,"ctyRecording",7);this.ctyRecordEnd=r(this,"ctyRecordEnd",7);this.ctyRecordComplete=r(this,"ctyRecordComplete",7);this.ctyDismiss=r(this,"ctyDismiss",7);this.didPresent=r(this,"ctyDidPresent",7);this.willPresent=r(this,"ctyWillPresent",7);this.willDismiss=r(this,"ctyWillDismiss",7);this.didDismiss=r(this,"ctyDidDismiss",7);this.delegateController=a(this);this.lockController=b();this.triggerController=l();this.presented=false;this.hasController=false;this.backdropDismiss=false;this.closeable=true;this.maxSeconds=60;this.minSeconds=1;this.circleColor="var(--cty-color-primary)";this.circleWidth=50;this.root="default";this.animated=false;this.recordDescription="点击开始录音";this.recordDuration="0s";this.recordState="";this.recorded=false;this.recording=false;this.auditioning=false;this.recordSecond=0;this.lasttime=0;this.countDownTimer=0;this.audioFile="";this.showWarning=false;this.toastOptions={isOpen:false,message:""}}t.prototype.triggerChanged=function(){var t=this,e=t.trigger,r=t.el,o=t.triggerController;if(e){o.addClickListener(r,e)}};t.prototype.connectedCallback=function(){var t=this;f(this.el);this.triggerChanged();this.resetRecordState();if(s.isMicroMessager){n.wxVoicePlayEnd().then((function(){t.auditioning=false;t.endRecord()})).catch((function(){}))}};t.prototype.disconnectedCallback=function(){this.triggerController.removeClickListener();this.presented&&d();try{if(s.isMicroMessager){n.stopAudio(this.audioFile)}}catch(t){}};t.prototype.componentDidLoad=function(){var t=this;!this.hasController&&p((function(){return t.present()}))};t.prototype.present=function(){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(e){switch(e.label){case 0:return[4,this.lockController.lock()];case 1:t=e.sent();return[4,this.delegateController.attachViewToDom(this.root)];case 2:e.sent();return[4,u(this,"recordEnter",(function(t){return m(t,".cty-record")}))];case 3:e.sent();t();return[2]}}))}))};t.prototype.dismiss=function(){return __awaiter(this,void 0,void 0,(function(){var t,e;return __generator(this,(function(r){switch(r.label){case 0:return[4,this.lockController.lock()];case 1:t=r.sent();return[4,y(this,"recordLeave",(function(t){return g(t,".cty-record")}))];case 2:e=r.sent();if(e){this.delegateController.removeViewFromDom()}t();return[2,e]}}))}))};t.prototype.onDidDismiss=function(){return h(this.el,"ctyDidDismiss")};t.prototype.onWillDismiss=function(){return h(this.el,"ctyWillDismiss")};t.prototype.resetRecordState=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){this.auditioning=false;this.recorded=false;this.recording=false;this.recordDescription="点击开始录音";this.recordDuration="0s";this.recordState="";return[2]}))}))};t.prototype.restartRecording=function(){this.startRecord()};t.prototype.handleRecordAction=function(){return __awaiter(this,void 0,void 0,(function(){var t,e,r,o;return __generator(this,(function(i){switch(i.label){case 0:t=(new Date).getTime();if(t-this.lasttime<=500){return[2]}if(!!this.recorded)return[3,1];this.startRecord();return[3,10];case 1:this.auditioning=!this.auditioning;if(!this.auditioning)return[3,6];this.recordDescription="点击结束试听";this.recordDuration="试听中";this.recordState="暂停";i.label=2;case 2:i.trys.push([2,4,,5]);return[4,n.playAudio(this.audioFile)];case 3:e=i.sent();if(e&&!s.isMicroMessager){this.endRecord()}return[3,5];case 4:r=i.sent();return[3,5];case 5:return[3,10];case 6:this.endRecord();i.label=7;case 7:i.trys.push([7,9,,10]);return[4,n.pauseAudio(this.audioFile)];case 8:i.sent();return[3,10];case 9:o=i.sent();return[3,10];case 10:return[2]}}))}))};t.prototype.startRecord=function(){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(e){switch(e.label){case 0:this.recordSecond=0;this.recording=true;this.recorded=false;this.auditioning=false;this.recordDescription="点击结束录音";this.recordDuration=this.recordSecond+"s";this.recordState="正在录音";this.recordStartTime=new Date;this.countDown();this.ctyRecordStart.emit();e.label=1;case 1:e.trys.push([1,3,,4]);return[4,n.startRecording()];case 2:e.sent();return[3,4];case 3:t=e.sent();return[3,4];case 4:return[2]}}))}))};t.prototype.stopRecording=function(){return __awaiter(this,void 0,void 0,(function(){var t,e;return __generator(this,(function(r){switch(r.label){case 0:clearTimeout(this.countDownTimer);this.recordEndTime=new Date;this.recordSecond=Math.min(Math.floor((+this.recordEndTime-+this.recordStartTime)/1e3),this.maxSeconds);this.recorded=true;this.recording=false;this.endRecord();r.label=1;case 1:r.trys.push([1,3,,4]);t=this;return[4,n.stopRecording()];case 2:t.audioFile=r.sent();return[3,4];case 3:e=r.sent();return[3,4];case 4:if(this.recordSecond<this.minSeconds){this.resetRecordState();this.toastOptions={isOpen:true,message:"时间太短"};return[2]}this.ctyRecordEnd.emit({file:this.audioFile,duration:this.recordSecond});return[2]}}))}))};t.prototype.endRecord=function(){this.recordDescription="点击试听录音";this.recordDuration="已录音"+this.recordSecond+"s";this.recordState="试听"};t.prototype.confirmRecording=function(){return __awaiter(this,void 0,void 0,(function(){var t;return __generator(this,(function(e){switch(e.label){case 0:e.trys.push([0,2,,3]);return[4,n.stopAudio(this.audioFile)];case 1:e.sent();return[3,3];case 2:t=e.sent();return[3,3];case 3:this.ctyRecordComplete.emit({file:this.audioFile,duration:this.recordSecond});return[2]}}))}))};t.prototype.handleCloseRecord=function(){if(this.auditioning){this.toastOptions={isOpen:true,message:"正在试听录音"};return}if(this.recording){this.toastOptions={isOpen:true,message:"正在录音"};return}if(!this.recorded){this.dismiss();return}this.showWarning=true};t.prototype.countDown=function(){var t=this;clearTimeout(this.countDownTimer);if(this.recordSecond<this.maxSeconds){this.countDownTimer=window.setTimeout((function(){t.recordSecond++;t.recordSecond=Math.min(t.maxSeconds,t.recordSecond);t.recordDuration=t.recordSecond+"s";t.countDown()}),1e3);this.ctyRecording.emit()}else{this.stopRecording()}};t.prototype.handleAlertAction=function(t){this.showWarning=false;if(t.detail.index==1){this.dismiss()}};t.prototype.render=function(){var t=this;return o(i,{key:"c4ba73a48a1bc147e056847d4ae46b203c44366c",class:Object.assign(Object.assign({},x(this.cssClass)),{"overlay-hidden cty-pos-cover":true}),style:{zIndex:"".concat(2e4+this.overlayIndex)}},o("cty-backdrop",{key:"7218fe22a46c4ac3c028e46494597f36cab4ebe8",position:"bottom",backdropDismiss:this.backdropDismiss,onCtyDismiss:function(){return t.dismiss()}},o("div",{key:"a87aec16b7b82b1bde78b687b925d7b48153391e",class:"cty-record safe-area-bottom-padding flex-center-column",onClick:function(t){return t.stopPropagation()}},o("slot",{key:"eccd57954f17e968d23ea94f75d8c3802366d691",name:"header"}),this.closeable&&o("div",{key:"cbbc613e735c0ac4e2cf135ada8d09eb54aa7d6d",class:"cty-record__close",onClick:function(){return t.handleCloseRecord()}},o("cty-icon",{key:"77a6c951b39ac67bf8379cbd2753fce83f59338e",name:v})),o("p",{key:"86ab24df51b170261d59b8f96a2965affc8c4f59",class:"cty-record__desc"},this.recordDescription),o("p",{key:"fde15e3b3250d5426067b2ee499fc352bb9aae27",class:"cty-record__time"},this.recordDuration),o("div",{key:"897f325e516653d08fe27a250b11a02158e9bd89",class:"cty-record__main flex-align-end-center"},this.recorded&&o("button",{key:"a364a0b36d7f783b722f610e55acf6a4fd68b52f",class:"cty-record__redo flex-column-center cty-button-native",onClick:function(){return t.restartRecording()}},o("cty-icon",{key:"3ae2d555119e0f4a6bd9108067cac53ede537cf6",name:"cty-redo",class:"flex-center"}),o("span",{key:"3174b87f43dec28f2360266f5d7d96265b35877e"},"重录")),!this.recording&&o("button",{key:"3613cd1f3efcaa231a1ec6ee98239df3cba5de8d",class:"cty-record__button cty-button-native",onClick:function(){return t.handleRecordAction()}},!this.auditioning&&!this.recorded&&o("cty-icon",{key:"ee0fe4426c826face420e41fbcfece92cd892861",name:"cty-record"}),this.auditioning&&this.recorded&&o("cty-icon",{key:"d58ce9dcc99395534e9413c0ef7f807421556b94",name:"cty-pause"}),!this.auditioning&&this.recorded&&o("cty-icon",{key:"76e18cbd690d36bae0bc7cf910aeeaf8bbfa1e46",name:"cty-play"})),this.recording&&o("div",{key:"c0fc560fc891395af022ffe392fb12a0bd03dbcc",class:"cty-record__recording flex-center",onClick:function(){return t.stopRecording()}},o("cty-circle",{key:"ad604f13d72f3817a43f5d1de4f869f0df888658",rate:this.recordSecond/this.maxSeconds*100,width:this.circleWidth,color:this.circleColor}),o("cty-icon",{key:"2f45c995452aab5a2de6c4854a13dc87594690cc",name:"cty-pause"})),this.recorded&&o("button",{key:"7b9075d36e6662ebc486d3303f4bb0d10eee63e5",class:"cty-record__yes flex-column-center cty-button-native",onClick:function(){return t.confirmRecording()}},o("cty-icon",{key:"f15efd03ccebc4162ef678788a1753fd776327ef",name:"cty-yes",class:"flex-center"}),o("span",{key:"62bcfd0bfab7c3786ec083c1648a4bf996c6ee84"},"确定"))),!this.auditioning&&!this.recorded&&!this.recording&&o("p",{key:"e03781ff170a57aad3a5d45a0ce5a42cefc13ba4",class:"cty-record__send"},"仅发送语音"),(this.auditioning||this.recorded||this.recording)&&o("p",{key:"656d9e3141991dc629df234e663b0134dc56296c",class:"cty-record__status"},this.recordState))),o("ion-toast",{key:"7ae66bbecd89e30b2ad8b0026558969244ad8ee2",isOpen:this.toastOptions.isOpen,message:this.toastOptions.message,duration:2e3,position:"middle",onIonToastWillDismiss:function(){return t.toastOptions.isOpen=false}}),this.showWarning&&o("cty-alert",{key:"128f2bb455c95c3822a963ae32c16f9074b828f3",title:"取消录音",content:"确定取消本条录音?",buttons:["取消","确定"],overlayIndex:1,onCtyTap:function(e){return t.handleAlertAction(e)}},o("button",{key:"36942f7899f78986cea3bd7844a66fa591267ab3",slot:"close",class:"cty--record__alert-close cty-button-native",onClick:function(){return t.showWarning=false}},o("cty-icon",{key:"f0ee3344beed11b83af7832ed23f28b329104ff8",name:"cty-close2"}))))};Object.defineProperty(t.prototype,"el",{get:function(){return c(this)},enumerable:false,configurable:true});Object.defineProperty(t,"watchers",{get:function(){return{trigger:["triggerChanged"]}},enumerable:false,configurable:true});return t}());k.style=w}}}));
@@ -1 +0,0 @@
1
- System.register(["./p-BpC3ubr-.system.js","./p-BqniUMS5.system.js","./p-DW5MHISD.system.js","./p-BWNXSNBe.system.js"],(function(e){"use strict";var t,n,i,l,s,f,a,o;return{setters:[function(e){t=e.r;n=e.c;i=e.h;l=e.a;s=e.g},function(e){f=e.b},function(e){a=e.c},function(e){o=e.m}],execute:function(){var c='*{-webkit-box-sizing:border-box;box-sizing:border-box}p,h1,h2,h3,h4,h5,h6{margin:0;padding:0}.flex{display:-ms-flexbox;display:flex}.flex-wrap{display:-ms-flexbox;display:flex;-ms-flex-flow:wrap;flex-flow:wrap}.flex-align-start{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start}.flex-align-center{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.flex-align-end{display:-ms-flexbox;display:flex;-ms-flex-align:end;align-items:flex-end}.flex-justify-start{display:-ms-flexbox;display:flex;-ms-flex-pack:start;justify-content:flex-start}.flex-justify-center{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center}.flex-justify-end{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end}.flex-align-end-start{display:-ms-flexbox;display:flex;-ms-flex-align:end;align-items:flex-end;-ms-flex-pack:start;justify-content:flex-start}.flex-align-end-center{display:-ms-flexbox;display:flex;-ms-flex-align:end;align-items:flex-end;-ms-flex-pack:center;justify-content:center}.flex-align-end-end{display:-ms-flexbox;display:flex;-ms-flex-align:end;align-items:flex-end;-ms-flex-pack:end;justify-content:flex-end}.flex-center{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.flex-center-justify-end{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}.flex-between{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}.flex-center-between{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.flex-column{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column}.flex-column-align-center{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-align:center;align-items:center}.flex-column-justify-center{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-pack:center;justify-content:center}.flex-column-center{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.flex-column-between{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-pack:justify;justify-content:space-between}.flex-column-center-between{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}:host{--cty-floating-panel-content-background:var(--cty-color-white);--cty-floating-panel-header-height:30px;--cty-floating-panel-bar-width:30px;--cty-floating-panel-bar-color:var(--cty-text-color-primary);position:fixed;z-index:10;bottom:0;left:0;width:100%;background-color:var(--cty-color-white);border-radius:var(--cty-border-radius-round) var(--cty-border-radius-round) 0 0;-webkit-transition-duration:0.3s;transition-duration:0.3s;-webkit-transition-timing-function:cubic-bezier(0.18, 0.89, 0.32, 1.28);transition-timing-function:cubic-bezier(0.18, 0.89, 0.32, 1.28)}:host::after{content:"";display:block;position:absolute;bottom:-100vh;height:100vh;width:100vw;background-color:inherit}.cty-floating-panel__header{width:100%;height:var(--cty-floating-panel-header-height);cursor:pointer}.cty-floating-panel__header-bar{font-size:var(--cty-floating-panel-bar-width);color:var(--cty-floating-panel-bar-color)}.cty-floating-panel__content{-ms-flex:1;flex:1;overflow-y:auto;width:100%;background:var(--cty-floating-panel-content-background)}';var r=e("cty_floating_panel",function(){function e(e){t(this,e);this.ctyHeightChange=n(this,"ctyHeightChange",7);this.anchors=[100,.6*window.innerHeight];this.contentDraggable=true;this.endAnchor=true;this.damp=.2;this.icon=o;this.height=0;this.lastY=0;this.lastHeight=0;this.isContentTouched=false;this.isDragStart=false;this.isDragMove=false;this.maxScroll=-1}Object.defineProperty(e.prototype,"boundary",{get:function(){return{min:this.anchors[0]===undefined?100:this.anchors[0],max:this.anchors.length>0?this.anchors[this.anchors.length-1]:window.innerHeight*.6}},enumerable:false,configurable:true});e.prototype.componentWillLoad=function(){this.height=this.anchors[0]};e.prototype.componentDidLoad=function(){this.height=a(this.anchors,this.height);this.el.style.height="".concat(this.boundary.max,"px");this.el.style.transform="translateY(calc(100% + ".concat(-this.height,"px))")};e.prototype.contentDraggableCheck=function(){return!this.contentDraggable&&this.isContentTouched};e.prototype.setContentTouched=function(e){this.isContentTouched=e};e.prototype.dragStart=function(e){this.isDragStart=true;this.lastY=f(e).y;this.lastHeight=-this.height;this.el.style.transitionProperty="none";this.maxScroll=-1};e.prototype.dragMove=function(e){var t=this,n=t.isDragStart,i=t.contentRef,l=t.maxScroll,s=t.boundary,a=t.lastHeight;if(this.contentDraggableCheck()||!n)return;var o=f(e).y;var c=o-this.lastY;var r=this.lastHeight+c;if(this.isContentTouched){var x=i.scrollTop;this.maxScroll=Math.max(l,x);if(-a<s.max){e.preventDefault();e.stopPropagation()}else if(!(x<=0&&c>0)||l>0){return}}this.isDragMove=true;this.height=-this.ease(r);this.el.style.transform="translateY(calc(100% + ".concat(-this.height,"px))")};e.prototype.dragEnd=function(){if(this.contentDraggableCheck()||!this.isDragMove||!this.isDragStart)return;this.isDragMove=false;this.isDragStart=false;this.maxScroll=-1;this.el.style.transitionProperty="transform";if(this.endAnchor||this.height<=this.boundary.min||this.height>=this.boundary.max){this.height=a(this.anchors,this.height);this.el.style.transform="translateY(calc(100% + ".concat(-this.height,"px))")}if(this.lastHeight!==this.height){this.ctyHeightChange.emit(this.height)}return true};e.prototype.ease=function(e){var t=Math.abs(e);var n=this.boundary,i=n.min,l=n.max;if(t>l){return-(l+(t-l)*this.damp)}if(t<i){return-(i-(i-t)*this.damp)}return e};e.prototype.render=function(){var e=this;return i(l,{key:"f2cf5536d268f54f0ec3683afabb99dc10459f52",class:"cty-floating-panel flex-column",onTouchStart:function(t){return e.dragStart(t)},onTouchMove:function(t){return e.dragMove(t)},onTouchEnd:function(){return e.dragEnd()},onMouseDown:function(t){return e.dragStart(t)},onMouseMove:function(t){return e.dragMove(t)},onMouseUp:function(){return e.dragEnd()}},i("div",{key:"00f3f71ee575b3205f1b6c6bc83e9a332a41600c",class:"cty-floating-panel__header flex-center",onTouchStart:function(){e.setContentTouched(false)},onMouseDown:function(){e.setContentTouched(false)}},i("slot",{key:"a2c0b49cdf13aefc8d82442e6ae4caae6ddb7bf1",name:"icon-start"}),this.icon&&i("cty-icon",{key:"33b43106ced47e3a46a0b4e34284ff042bcae596",class:"cty-floating-panel__header-bar",name:this.icon}),i("slot",{key:"185bcb4c5d3e3b1dd6b841ce89ffe5c478ca40f7",name:"icon-end"})),i("div",{key:"60791d76b61410d85f4e34601a47dd22bd8a5f1b",class:"cty-floating-panel__content",ref:function(t){return e.contentRef=t},onTouchStart:function(){e.setContentTouched(true)},onMouseDown:function(){e.setContentTouched(true)}},i("slot",{key:"d84ff597db9ec40cb588e306dbf6a87b658d0078"})))};Object.defineProperty(e.prototype,"el",{get:function(){return s(this)},enumerable:false,configurable:true});return e}());r.style=c}}}));
@@ -1 +0,0 @@
1
- import{r as t,c as o,h as a,a as i,g as e}from"./p-DBsZD0Dk.js";import{i as c}from"./p-D0fcC0rL.js";import{d as r,c as s}from"./p-Ys0pUf2z.js";import{e as h,f as p,p as n,g as y,h as l,j as m,k as d}from"./p-CTeeGenQ.js";import{c as g}from"./p-CaB1JJxy.js";import{r as b}from"./p-Bm1EyNNA.js";import{g as v,l as u,e as x}from"./p-CbxS1eTP.js";import"./p-CZI7sxie.js";import"./p-BqPoMbNS.js";import"./p-BqPNWsXF.js";import"./p-iD8sj4Mi.js";import"./p-B9QMksFp.js";import"./p-ZjP4CjeZ.js";import"./p-skPg8wu0.js";const f=class{constructor(a){t(this,a),this.ctyTapStart=o(this,"ctyTapStart",7),this.ctyTap=o(this,"ctyTap",7),this.ctyDismiss=o(this,"ctyDismiss",7),this.didPresent=o(this,"ctyDidPresent",7),this.willPresent=o(this,"ctyWillPresent",7),this.willDismiss=o(this,"ctyWillDismiss",7),this.didDismiss=o(this,"ctyDidDismiss",7),this.delegateController=h(this),this.lockController=g(),this.triggerController=p(),this.presented=!1,this.hasController=!1,this.backdropDismiss=!0,this.title="",this.closeable=!1,this.closeIcon="cty-close2",this.cancelText="取消",this.file=!0,this.count=1,this.photoOption={},this.options=[{text:"从手机相册选择",permissionDescription:"存储空间权限使用说明:<br/>用于访问图片、视频、音频文件",action:"album"},{text:"拍一张",permissionDescription:"相机权限使用说明:<br/>用于拍摄、录制视频等场景",action:"camera"}],this.clipPt="",this.clipCancelText="取消",this.clipCconfirmText="选取",this.clipImageWidth=750,this.clipImageBg="",this.clipMaxScale=2,this.clipMinScale=1,this.clipImageQuality=1,this.clipImageSuffix="jpeg",this.permissionPurpose=!0,this.root="default",this.animated=!1,this.overlay=!0,this.continuous=!1,this.cameraProps={},this.isMicroMessager=r.isMicroMessager,this.isIOS=r.isIos,this.allowEdit=!1,this.showCropImage=!1,this.clipImage="",this.imageSource={option:{action:""},imageList:[],index:0},this.showPermissionPurpose=!1,this.permissionDescription="",this.showCameraPreview=!1}triggerChanged(){const{trigger:t,el:o,triggerController:a}=this;t&&a.addClickListener(o,t)}connectedCallback(){n(this.el),this.triggerChanged()}disconnectedCallback(){this.triggerController.removeClickListener(),this.presented&&y()}componentDidLoad(){!this.hasController&&b((()=>this.present()))}componentWillLoad(){this.allowEdit=this.clipPt.indexOf(this.isMicroMessager?"W":this.isIOS?"I":"A")>=0&&!this.photoOption.allowEdit}async present(){const t=await this.lockController.lock();await this.delegateController.attachViewToDom(this.root),await l(this,"cameraPhotoEnter",(t=>x(t,".cty-camera-photo"))),t()}async dismiss(){const t=await this.lockController.lock(),o=await m(this,"cameraPhotoLeave",(t=>u(t,".cty-camera-photo")));return o&&this.delegateController.removeViewFromDom(),t(),o}onDidDismiss(){return d(this.el,"ctyDidDismiss")}onWillDismiss(){return d(this.el,"ctyWillDismiss")}async _buttonClick(t){t.stopPropagation();const{index:o}=t.detail,a=this.options[o];if(this.ctyTapStart.emit(o),"album"!=a.action&&"camera"!=a.action)return a.handler&&a.handler({option:a,imageList:[]}),void this.ctyTap.emit({index:o,imageList:[]});if(this.isIOS||this.isMicroMessager||await this.checkPermission(a.action||"",a.permissionDescription||""),this.continuous&&!this.isMicroMessager&&"camera"===a.action)return this.showCameraPreview=!0,void(this.imageSource={option:a,imageList:[],index:o});let i=[];try{const t={camera:"camera"===a.action,file:this.file,count:this.count,option:this.photoOption};i=await c.getPictures(t),this.showPermissionPurpose=!1}catch(t){this.showPermissionPurpose=!1}if(this.allowEdit&&("camera"===a.action||"album"===a.action&&1==this.count)&&i.length>0)return this.showCropImage=!0,this.clipImage=i[0].url,void(this.imageSource={option:a,imageList:i,index:o});a.handler&&a.handler({option:a,imageList:i}),this.ctyTap.emit({index:o,imageList:i})}continuousConfirm(t){const o=t.detail,{option:a,index:i}=this.imageSource;a.handler&&a.handler({option:a,imageList:o}),this.ctyTap.emit({index:i,imageList:o}),this.showCameraPreview=!1}checkPermission(t,o){return Promise.resolve().then((async()=>{if(this.permissionPurpose&&o)if(this.permissionDescription=o,"camera"!=t)if("album"!=t);else{const t=await s("READ_MEDIA_IMAGES"),o=await s("READ_EXTERNAL_STORAGE");!1===t&&!1===o&&(this.showPermissionPurpose=!0)}else!1===await s("CAMERA")&&(this.showPermissionPurpose=!0)})).catch((t=>void 0===t?null:t))}_doCropCancel(){this.showCropImage=!1;const{index:t}=this.imageSource;this._buttonClick({detail:{item:{},index:t}})}_doCropConfirm(t){const o=t.detail,{option:a,imageList:i,index:e}=this.imageSource;i[0]=o,this.showCropImage=!1,a.handler&&a.handler({option:a,imageList:i}),this.ctyTap.emit({index:e,imageList:i})}render(){return a(i,{key:"eea07b307cd18485730d5c3eadce68aaf8dc1b29",class:Object.assign(Object.assign({},v(this.cssClass)),{"overlay-hidden":!0,"cty-pos-cover":this.overlay}),style:{zIndex:`${2e4+this.overlayIndex}`}},a("cty-action-sheet",{key:"7efa3cb1bbcf392be95095f4aebec0f50281cce3",class:"cty-camera-photo",animated:!1,overlayIndex:1,backdropDismiss:this.backdropDismiss,title:this.title,closeable:this.closeable,closeIcon:this.closeIcon,cancelText:this.cancelText,options:this.options,onCtyDismiss:()=>this.dismiss(),onCtyTap:t=>this._buttonClick(t)}),this.showCropImage&&a("cty-backdrop",{key:"beb314ab8d1f1001bb6031f94d6cb3caa5d02e78",backdropDismiss:!1},a("cty-crop-image",{key:"898aa3f15eed3c289f3f543d07520bfc09c10640",url:this.clipImage,cancelText:this.clipCancelText,confirmText:this.clipCconfirmText,imageWidth:this.clipImageWidth,imageBackground:this.clipImageBg,maxScale:this.clipMaxScale,minScale:this.clipMinScale,suffix:this.clipImageSuffix,quality:this.clipImageQuality,onCtyCancel:()=>this._doCropCancel(),onCtyConfirm:t=>this._doCropConfirm(t)})),this.showPermissionPurpose&&a("cty-permission-purpose",{key:"556c162b22f867697445d72d30befd9c92a66985",description:this.permissionDescription}),this.continuous&&this.showCameraPreview&&a("cty-camera",Object.assign({key:"45d9311b5eea8abc67fbd62bcb4c6ad8177a9e4c"},this.cameraProps,{onCtyDismiss:()=>this.showCameraPreview=!1,onCtyConfirm:t=>this.continuousConfirm(t)})))}get el(){return e(this)}static get watchers(){return{trigger:["triggerChanged"]}}};f.style="*{-webkit-box-sizing:border-box;box-sizing:border-box}p,h1,h2,h3,h4,h5,h6{margin:0;padding:0}.cty-pos-rel{position:relative}.cty-pos-abs{position:absolute}.cty-pos-fix{position:fixed}.cty-pos-sti{position:-webkit-sticky;position:sticky}.cty-pos-cover{position:absolute;top:0;bottom:0;left:0;right:0}.cty-pos-l-t{position:absolute;left:0;top:0}.cty-pos-l-b{position:absolute;left:0;bottom:0}.cty-pos-r-t{position:absolute;right:0;top:0}.cty-pos-r-b{position:absolute;right:0;bottom:0}.cty-pos-100{position:absolute;left:0;top:0;width:100%;height:100%}.cty-pos-w100{position:absolute;left:0;width:100%}.cty-pos-h100{position:absolute;top:0;height:100%}.cty-pos-c{position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%)}.cty-pos-c-x{position:absolute;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.cty-pos-c-x-t{position:absolute;top:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.cty-pos-c-x-b{position:absolute;bottom:0;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%)}.cty-pos-c-y{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.cty-pos-c-y-l{position:absolute;left:0;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.cty-pos-c-y-r{position:absolute;right:0;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%)}:host{--cty-camera-photo-overlay-position:fixed;--cty-camera-photo-overlay-z-index:10;--cty-camera-photo-overlay-background:var(--cty-overlay-color);--cty-camera-photo-overlay-width:100vw;--cty-camera-photo-overlay-height:100vh;--cty-camera-photo-padding:0;--cty-camera-photo-border-radius:0;--cty-camera-photo-title-color:var(--cty-text-color-primary);--cty-camera-photo-title-size:var(--cty-font-size-medium);--cty-camera-photo-title-line-height:36px;--cty-camera-photo-title-weight:500;--cty-camera-photo-title-align:center;--cty-camera-photo-close-top:10px;--cty-camera-photo-close-right:10px;--cty-camera-photo-close-color:var(--cty-text-color-secondary);--cty-camera-photo-close-size:20px;--cty-camera-photo-option-padding-bottom:14px;--cty-camera-photo-option-padding-top:14px;--cty-camera-photo-option-text-align:center;--cty-camera-photo-option-text-color:var(--cty-text-color-primary);--cty-camera-photo-option-text-size:var(--cty-font-size-medium);--cty-camera-photo-option-text-line-height:22px;--cty-camera-photo-cancel-background:var(--cty-color-white);--cty-camera-photo-cancel-padding-top:0;--cty-camera-photo-cancel-padding-bottom:0;--cty-camera-photo-cancel-border:8px solid var(--cty-border-color-extra-light);--cty-camera-photo-cancel-color:var(--cty-text-color-primary);--cty-camera-photo-cancel-min-height:48px;--cty-camera-photo-cancel-size:var(--cty-font-size-medium);--cty-camera-photo-crop-width:100vw;--cty-camera-photo-crop-height:100vh;--cty-camera-photo-crop-background:var(--cty-color-black);--cty-camera-photo-crop-clip-height:100vw;--cty-camera-photo-crop-clip-width:100vw;--cty-camera-photo-crop-clip-background:var(--cty-overlay-color-dark);--cty-camera-photo-crop-clip-border:1px solid #767676;--cty-camera-photo-crop-buttons-padding:12px 0;--cty-camera-photo-crop-button-padding:0 12px;--cty-camera-photo-crop-button-color:var(--cty-text-color-white);--cty-camera-photo-crop-button-active-color:var(--cty-text-color-white);--cty-camera-photo-crop-button-size:var(--cty-font-size-base);--cty-camera-photo-crop-button-line-height:30px;--cty-camera-photo-crop-button-weight:400;--cty-camera-photo-crop-overlay-background:var(--cty-overlay-color);--cty-camera-photo-crop-overlay-z-index:999999;--cty-camera-photo-permission-purpose-overlay-background:transparent;--cty-camera-photo-permission-purpose-overlay-height:auto;--cty-camera-photo-permission-purpose-overlay-z-index:999999}:host(.overlay-hidden){display:none}cty-action-sheet{--cty-action-sheet-overlay-position:var(--cty-camera-photo-overlay-position);--cty-action-sheet-overlay-z-index:var(--cty-camera-photo-overlay-z-index);--cty-action-sheet-overlay-width:var(--cty-camera-photo-overlay-width);--cty-action-sheet-overlay-height:var(--cty-camera-photo-overlay-height);--cty-action-sheet-overlay-background:var(--cty-camera-photo-overlay-background);--cty-action-sheet-padding:var(--cty-camera-photo-padding);--cty-action-sheet-border-radius:var(--cty-camera-photo-border-radius);--cty-action-sheet-title-color:var(--cty-camera-photo-title-color);--cty-action-sheet-title-size:var(--cty-camera-photo-title-size);--cty-action-sheet-title-line-height:var(--cty-camera-photo-title-line-height);--cty-action-sheet-title-weight:var(--cty-camera-photo-title-weight);--cty-action-sheet-title-align:var(--cty-camera-photo-title-align);--cty-action-sheet-close-top:var(--cty-action-sheet-close-top);--cty-action-sheet-close-right:var(--cty-action-sheet-close-right);--cty-action-sheet-close-color:var(--cty-action-sheet-close-color);--cty-action-sheet-close-size:var(--cty-action-sheet-close-size);--cty-action-sheet-option-padding-bottom:var(--cty-camera-photo-option-padding-bottom);--cty-action-sheet-option-padding-top:var(--cty-camera-photo-option-padding-top);--cty-action-sheet-option-text-align:var(--cty-camera-photo-option-text-align);--cty-action-sheet-option-text-color:var(--cty-camera-photo-option-text-color);--cty-action-sheet-option-text-size:var(--cty-camera-photo-option-text-size);--cty-action-sheet-option-text-line-height:var(--cty-camera-photo-option-text-line-height);--cty-action-sheet-cancel-background:var(--cty-camera-photo-cancel-background);--cty-action-sheet-cancel-padding-top:var(--cty-camera-photo-cancel-padding-top);--cty-action-sheet-cancel-padding-bottom:var(--cty-camera-photo-cancel-padding-bottom);--cty-action-sheet-cancel-border:var(--cty-camera-photo-cancel-border);--cty-action-sheet-cancel-color:var(--cty-camera-photo-cancel-color);--cty-action-sheet-cancel-min-height:var(--cty-camera-photo-cancel-min-height);--cty-action-sheet-cancel-size:var(--cty-camera-photo-cancel-size)}cty-backdrop{z-index:var(--cty-camera-photo-crop-overlay-z-index);background:var(--cty-camera-photo-crop-overlay-background)}cty-crop-image{background:var(--cty-camera-photo-crop-background);width:var(--cty-camera-photo-crop-width);height:var(--cty-camera-photo-crop-height);--cty-crop-image-clip-width:var(--cty-camera-photo-crop-clip-width);--cty-crop-image-clip-height:var(--cty-camera-photo-crop-clip-height);--cty-crop-image-clip-background:var(--cty-camera-photo-crop-clip-background);--cty-crop-image-clip-border:var(--cty-camera-photo-crop-clip-border);--cty-crop-image-buttons-padding:var(--cty-camera-photo-crop-buttons-padding);--cty-crop-image-button-padding:var(--cty-camera-photo-crop-button-padding);--cty-crop-image-button-color:var(--cty-camera-photo-crop-button-color);--cty-crop-image-button-active-color:var(--cty-camera-photo-crop-button-active-color);--cty-crop-image-button-size:var(--cty-camera-photo-crop-button-size);--cty-crop-image-button-line-height:var(--cty-camera-photo-crop-button-line-height);--cty-crop-image-button-weight:var(--cty-camera-photo-crop-overlay-weight)}cty-permission-purpose{--cty-permission-purpose-overlay-background:var(--cty-camera-photo-permission-purpose-overlay-background);--cty-permission-purpose-overlay-height:var(--cty-camera-photo-permission-purpose-overlay-height);--cty-permission-purpose-overlay-z-index:var(--cty-camera-photo-permission-purpose-overlay-z-index)}";export{f as cty_camera_photo}